Registro público
Informe de salud del softwareesquema 0.27.0 · métricas 1.13.0 · 2026-07-26 04:27 UTC

reddoorla / reddoor-maintenance

TypeScriptMIT★ 0 estrellas⑂ 0 forksdesde may 2026Ver en GitHub ↗

reddoorla/reddoor-maintenance tiene un índice de salud de 59 sobre 100, lo que lo sitúa en la banda Moderado. Su puntuación más alta es Vitality (77/100) y la más baja, Community & Adoption (33/100). Se actualizó por última vez hace 1 día. Una sola persona concentra la mayor parte del trabajo reciente.

59
global / 100
Moderado

Índice de salud del software

Las métricas se agrupan en categorías ponderadas sobre una escala de 1 a 100. El resultado global parte de su media; cuando la evidencia pública activa la Política de Jurisdicciones de Alto Riesgo, la calificación se ajusta y recibe el límite 49 (En riesgo). Preparación para IA queda fuera.

59
Excelente85-100Ejemplar; cumple prácticamente todos los criterios evaluados
Bueno70-84Saludable; carencias menores
Moderado50-69Aceptable con carencias notables; se recomienda revisión
En riesgo30-49Debilidades significativas; su adopción exige cautela
Crítico1-29Problemas graves (proyecto abandonado, un solo mantenedor, sin higiene)
VitalidadComunidad yAdopciónSostenibilidady GobernanzaCalidad deIngenieríaSeguridadPreparaciónpara IA

Perfil de puntuación

Cada eje es una categoría. La forma importa más que la media: un proyecto sano llena toda la figura, mientras que un perfil de picos y cráteres indica que la fortaleza en una dimensión enmascara el riesgo en otra.

Titularidad

reddoorlaOrganización
1 seguidor19 repositorios públicosdesde may 2026

Este repositorio está respaldado por una organización: una custodia compartida y responsable que puede sobrevivir a cualquier mantenedor individual.

Ecosistemas de paquetes

RegistroPaqueteVersiónDescargas / mesVersionesÚltima publicación
npm@reddoorla/maintenance0.75.15142107hace 6 días

Métricas por categoría

Vitalidad

¿Está vivo el proyecto: se escribe código y se publican versiones?

77Bueno · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 1 días
6.9/36Cadencia de commits — 10/52 semanas con commits
18/18Volumen de commits — 563 commits en el último año
0/10OpenSSF Scorecard: Maintained — project was created within the last 90 days. Please review its contents carefully
Datos de entrada utilizados
commits_last_year563
human_commit_share1
days_since_last_push1
active_weeks_last_year10
Cómo se puntúa
27/27Publica versiones — 100 versiones publicadas
36/36Recencia de las versiones — última versión hace 6 días
27/27Cadencia de publicación — una versión cada ~2,1 días
0/10OpenSSF Scorecard: Signed-Releases — sin datos
Datos de entrada utilizados
releases_count100
latest_release_tagv0.75.1
releases_from_tagsno
days_since_latest_release6
mean_days_between_releases2,1
Excluidos de la puntuación (sin datos o no aplicable): OpenSSF Scorecard: Signed-Releases. Los pesos restantes se han renormalizado.

Comunidad y Adopción

¿Tiene el proyecto usuarios, descargas, atención y unas condiciones acogedoras para quienes contribuyen?

33En riesgo · 18% del índice global
Cómo se puntúa
0/60Estrellas — 0 estrellas
0/25Forks — 0 forks
0/15Observadores — 0 observadores
Datos de entrada utilizados
forks0
stars0
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
22.5/22.5Licencia — licencia reconocida (MIT)
0/18Guía CONTRIBUTING
0/13.5Código de conducta
0/7.2Plantilla de issues
0/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
has_contributingno
has_issue_templateno
has_code_of_conductno
has_pull_request_templateno
Cómo se puntúa
49.5/80Descargas mensuales — 5142 descargas/mes en npm
0/20Dependientes en el registro — no lo informa este ecosistema
Datos de entrada utilizados
packages@reddoorla/maintenance
dependents
ecosystemsnpm
total_downloads
monthly_downloads5142
Excluidos de la puntuación (sin datos o no aplicable): Dependientes en el registro. Los pesos restantes se han renormalizado.

Sostenibilidad y Gobernanza

¿Sobrevivirá el proyecto a sus personas: factor bus, capacidad de respuesta, quién lo respalda y mantenimiento del paquete?

55Moderado · 24% del índice global
Cómo se puntúa
9/54Factor bus — la mitad de los commits recae en 1 contribuyente(s)
0/22.5Distribución de commits — el principal contribuyente firma el 100% de los commits
1.4/13.5Amplitud de contribuyentes — 1 contribuyentes
0/10OpenSSF Scorecard: Contributors — project has 0 contributing companies or organizations -- score normalized to 0
Datos de entrada utilizados
bus_factor1
contributors_sampled1
top_contributor_share1
Cómo se puntúa
46.8/46.8Resolución de issues — 100% de issues cerradas
38.1/38.3Aceptación de PR — 455/457 PR decididos fusionados
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Datos de entrada utilizados
merged_prs455
open_issues0
closed_issues5
issue_closed_ratio1
closed_unmerged_prs2
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
2.2/25Alcance del propietario — 1 seguidores de reddoorla
9.8/25Trayectoria — 19 repos públicos, cuenta de ~0 años
Datos de entrada utilizados
followers1
owner_typeOrganization
is_verified
owner_loginreddoorla
public_repos19
account_age_days64
Cómo se puntúa
25/25Publicado y resoluble — 1 paquete(s) en npm
35/35Recencia de publicación — última publicación hace 6 días
20/20Historial de versiones — 107 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packages@reddoorla/maintenance
ecosystemsnpm
any_deprecatedno
min_days_since_publish6

Calidad de Ingeniería

¿Existen unas prácticas mínimas de ingeniería y documentación?

76Bueno · 20% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 8 flujo(s) de trabajo
24/24Pruebas presentes
16/16Configuración de linter — eslint.config.js
0/9.6Hooks de pre-commit
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
Datos de entrada utilizados
has_ci
has_tests
has_editorconfigno
has_linter_config
has_precommit_configno

Documentación

65Moderado
Cómo se puntúa
30/30README
25/25Directorio de documentación
0/15Sitio de documentación / página del proyecto
0/10Descripción del repositorio
0/10Topics
10/10Wiki
Datos de entrada utilizados
topics
has_wiki
homepage
has_readme
has_docs_dir
has_descriptionno

Seguridad

¿Son sólidas las prácticas visibles de seguridad y de cadena de suministro, sin exposición jurisdiccional de alto riesgo sin resolver?

46En riesgo · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/30 approved changesets -- score normalized to 0
0/2.5Contributors — project has 0 contributing companies or organizations -- score normalized to 0
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Licencia — license file detected
0/7.5Maintained — project was created within the last 90 days. Please review its contents carefully
0/5Packaging — sin datos
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — sin datos
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
4.5/7.5Vulnerabilities — 4 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate3,2
Excluidos de la puntuación (sin datos o no aplicable): packaging, signed_releases. Los pesos restantes se han renormalizado.
Cómo se puntúa
35/35Dependencias directas libres de avisos conocidos — ninguna dependencia directa tiene un aviso conocido
25/25Dependencias indirectas libres de avisos conocidos — ninguna dependencia indirecta tiene un aviso conocido
0/40Sin avisos pendientes — ningún aviso tiene fecha de publicación
Datos de entrada utilizados
sourceosv
advisories0
affected_packages0
assessed_packages153
unassessed_packages0
affected_by_severitynone
direct_affected_packages0
Excluidos de la puntuación (sin datos o no aplicable): Sin avisos pendientes. Los pesos restantes se han renormalizado. Se cotejó el cierre de dependencias en tiempo de ejecución de npm:@reddoorla/maintenance@0.75.1 —lo que arrastra la instalación del paquete publicado—: 153 paquetes. No se analiza la alcanzabilidad.

Preparación para IA

¿Hasta qué punto está el repositorio preparado para desarrollarse y mantenerse con agentes de codificación de IA? Es una insignia independiente y experimental — peso 0,0, de modo que se presenta por separado y no afecta a la puntuación de salud global.

59Moderado · 0% del índice global
Cómo se puntúa
0/45Instrucciones para agentes — sin CLAUDE.md / AGENTS.md / reglas de editor
0/15Documentación legible por máquinas (llms.txt)
40/40Historial de commits legible — 100 de 100 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share1
agent_instruction_files
agent_instruction_max_bytes
Cómo se puntúa
0/18Arranque con un solo comando
22/22Pruebas automatizadas
11/11Configuración de lint / formato — eslint.config.js
11/11Verificación estática de tipos — tsconfig.json
10/10Entorno reproducible — lockfile
10/10Práctica demostrada con agentes — 89 de los últimos 100 commits con autoría o crédito de agente
0/8Mantenimiento automatizado — no se observan actualizaciones automáticas de dependencias
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Datos de entrada utilizados
has_nixno
has_tests
lockfilespackage-lock.json, pnpm-lock.yaml
has_dockerfileno
typed_language
bootstrap_files
has_devcontainerno
has_linter_config
typecheck_configstsconfig.json
agent_commit_share0,89
toolchain_manifests
dependency_bot_commit_share0
Cómo se puntúa
45/45Código verificable por tipos — TypeScript (tipado estático)
55/55Tamaños de archivo manejables — 0/588 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageTypeScript
largest_source_bytes48.396
source_files_sampled588
oversized_source_files0
Cómo se puntúa
0/40Esquema de API (OpenAPI/GraphQL/proto)
0/20Servidor MCP
40/40Ejemplos ejecutables — recipes
Datos de entrada utilizados
example_dirsrecipes
has_mcp_signalno
api_schema_files

Datos clave

0estrellas de GitHub
1contribuidores
563commits en los últimos 12 meses
1días desde el último push
100versiones publicadas
1factor bus
0issues abiertas
npmecosistemas de paquetes

Más detalle

OpenSSF Scorecard 3.2 / 10
3.2agregado

Evaluación de seguridad independiente y agnóstica en cuanto a herramientas, procedente del proyecto de código abierto OpenSSF Scorecard. Cada comprobación premia una práctica de seguridad, no la herramienta de un proveedor concreto. Las comprobaciones que Scorecard no pudo determinar se marcan como n/d y se excluyen de la puntuación de seguridad (nunca se cuentan como cero).Scorecard v5.5.0 · 2026-07-26 04:27 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
0Contributorsproject has 0 contributing companies or organizations -- score normalized to 0
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
0Maintainedproject was created within the last 90 days. Please review its contents carefully
n/dPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
n/dSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
6Vulnerabilities4 existing vulnerabilities detected
Dependencias directas 14
RegistroPaqueteRestricción de versiónManifiesto
npm@axe-core/playwright^4.11.3package.json
npm@eslint/js^10.0.1package.json
npm@playwright/test^1.59.1package.json
npmcac^6.7.14package.json
npmeslint^10.3.0package.json
npmeslint-config-prettier^10.1.1package.json
npmeslint-plugin-svelte^3.1.0package.json
npmglobals^17.6.0package.json
npmlistr2^10.2.1package.json
npmnode-html-parser^9.0.0package.json
npmprettier^3.1.1package.json
npmprettier-plugin-svelte^3.2.6package.json
npmtinyglobby^0.2.10package.json
npmtypescript-eslint^8.59.1package.json
Todas las dependencias 976

Conjunto completo de dependencias resueltas según el grafo de dependencias de GitHub: 17 paquetes directos y 959 indirectos (transitivos). El cierre transitivo es completo cuando el repositorio incluye un lockfile.

RegistroPaqueteVersiónRelación
npm@axe-core/playwright4.11.3directa
npm@eslint/js10.0.1directa
npm@playwright/test1.60.0directa
npmcac6.7.14directa
npmeslint10.4.0directa
npmeslint-config-prettier10.1.8directa
npmeslint-plugin-svelte3.17.1directa
npmglobals16.5.0directa
npmglobals17.6.0directa
npmlistr210.2.1directa
npmnode-html-parser9.0.0directa
npmprettier2.8.8directa
npmprettier3.8.3directa
npmprettier-plugin-svelte3.5.2directa
npmtinyglobby0.2.16directa
npmtinyglobby0.2.17directa
npmtypescript-eslint8.59.4directa
npm@babel/helper-string-parser7.29.7indirecta
npm@babel/helper-validator-identifier7.29.7indirecta
npm@babel/parser7.29.7indirecta
npm@babel/runtime7.29.2indirecta
npm@babel/types7.29.7indirecta
npm@bcoe/v8-coverage1.0.2indirecta
npm@changesets/apply-release-plan7.1.1indirecta
npm@changesets/assemble-release-plan6.0.10indirecta
npm@changesets/changelog-git0.2.1indirecta
npm@changesets/cli2.31.0indirecta
npm@changesets/config3.1.4indirecta
npm@changesets/errors0.2.0indirecta
npm@changesets/get-dependents-graph2.1.4indirecta
npm@changesets/get-release-plan4.0.16indirecta
npm@changesets/get-version-range-type0.4.0indirecta
npm@changesets/git3.0.4indirecta
npm@changesets/logger0.1.1indirecta
npm@changesets/parse0.4.3indirecta
npm@changesets/pre2.0.2indirecta
npm@changesets/read0.6.7indirecta
npm@changesets/should-skip-package0.1.2indirecta
npm@changesets/types4.1.0indirecta
npm@changesets/types6.1.0indirecta
npm@changesets/write0.4.0indirecta
npm@emnapi/core1.11.1indirecta
npm@emnapi/runtime1.11.1indirecta
npm@emnapi/runtime1.11.2indirecta
npm@emnapi/wasi-threads1.2.2indirecta
npm@esbuild/aix-ppc640.28.1indirecta
npm@esbuild/android-arm0.28.1indirecta
npm@esbuild/android-arm640.28.1indirecta
npm@esbuild/android-x640.28.1indirecta
npm@esbuild/darwin-arm640.28.1indirecta
npm@esbuild/darwin-x640.28.1indirecta
npm@esbuild/freebsd-arm640.28.1indirecta
npm@esbuild/freebsd-x640.28.1indirecta
npm@esbuild/linux-arm0.28.1indirecta
npm@esbuild/linux-arm640.28.1indirecta
npm@esbuild/linux-ia320.28.1indirecta
npm@esbuild/linux-loong640.28.1indirecta
npm@esbuild/linux-mips64el0.28.1indirecta
npm@esbuild/linux-ppc640.28.1indirecta
npm@esbuild/linux-riscv640.28.1indirecta
npm@esbuild/linux-s390x0.28.1indirecta
npm@esbuild/linux-x640.28.1indirecta
npm@esbuild/netbsd-arm640.28.1indirecta
npm@esbuild/netbsd-x640.28.1indirecta
npm@esbuild/openbsd-arm640.28.1indirecta
npm@esbuild/openbsd-x640.28.1indirecta
npm@esbuild/openharmony-arm640.28.1indirecta
npm@esbuild/sunos-x640.28.1indirecta
npm@esbuild/win32-arm640.28.1indirecta
npm@esbuild/win32-ia320.28.1indirecta
npm@esbuild/win32-x640.28.1indirecta
npm@eslint-community/eslint-utils4.9.1indirecta
npm@eslint-community/regexpp4.12.2indirecta
npm@eslint/config-array0.23.5indirecta
npm@eslint/config-helpers0.6.0indirecta
npm@eslint/core1.2.1indirecta
npm@eslint/object-schema3.0.5indirecta
npm@eslint/plugin-kit0.7.1indirecta
npm@formatjs/ecma402-abstract2.3.6indirecta
npm@formatjs/fast-memoize2.2.7indirecta
npm@formatjs/icu-messageformat-parser2.11.4indirecta
npm@formatjs/icu-skeleton-parser1.8.16indirecta
npm@formatjs/intl-localematcher0.6.2indirecta
npm@google-analytics/data6.1.0indirecta
npm@grpc/grpc-js1.14.4indirecta
npm@grpc/proto-loader0.8.1indirecta
npm@humanfs/core0.19.2indirecta
npm@humanfs/node0.16.8indirecta
npm@humanfs/types0.15.0indirecta
npm@humanwhocodes/module-importer1.0.1indirecta
npm@humanwhocodes/retry0.4.3indirecta
npm@img/colour1.1.0indirecta
npm@img/sharp-darwin-arm640.35.3indirecta
npm@img/sharp-darwin-x640.35.3indirecta
npm@img/sharp-freebsd-wasm320.35.3indirecta
npm@img/sharp-libvips-darwin-arm641.3.2indirecta
npm@img/sharp-libvips-darwin-x641.3.2indirecta
npm@img/sharp-libvips-linux-arm1.3.2indirecta
npm@img/sharp-libvips-linux-arm641.3.2indirecta
npm@img/sharp-libvips-linux-ppc641.3.2indirecta
npm@img/sharp-libvips-linux-riscv641.3.2indirecta
npm@img/sharp-libvips-linux-s390x1.3.2indirecta
npm@img/sharp-libvips-linux-x641.3.2indirecta
npm@img/sharp-libvips-linuxmusl-arm641.3.2indirecta
npm@img/sharp-libvips-linuxmusl-x641.3.2indirecta
npm@img/sharp-linux-arm0.35.3indirecta
npm@img/sharp-linux-arm640.35.3indirecta
npm@img/sharp-linux-ppc640.35.3indirecta
npm@img/sharp-linux-riscv640.35.3indirecta
npm@img/sharp-linux-s390x0.35.3indirecta
npm@img/sharp-linux-x640.35.3indirecta
npm@img/sharp-linuxmusl-arm640.35.3indirecta
npm@img/sharp-linuxmusl-x640.35.3indirecta
npm@img/sharp-wasm320.35.3indirecta
npm@img/sharp-webcontainers-wasm320.35.3indirecta
npm@img/sharp-win32-arm640.35.3indirecta
npm@img/sharp-win32-ia320.35.3indirecta
npm@img/sharp-win32-x640.35.3indirecta
npm@inquirer/external-editor1.0.3indirecta
npm@isaacs/cliui8.0.2indirecta
npm@jridgewell/gen-mapping0.3.13indirecta
npm@jridgewell/remapping2.3.5indirecta
npm@jridgewell/resolve-uri3.1.2indirecta
npm@jridgewell/sourcemap-codec1.5.5indirecta
npm@jridgewell/trace-mapping0.3.31indirecta
npm@js-sdsl/ordered-map4.4.2indirecta
npm@lhci/cli0.15.1indirecta
npm@lhci/utils0.15.1indirecta
npm@libsql/client0.8.1indirecta
npm@libsql/core0.8.1indirecta
npm@libsql/darwin-arm640.3.19indirecta
npm@libsql/darwin-x640.3.19indirecta
npm@libsql/hrana-client0.6.2indirecta
npm@libsql/isomorphic-fetch0.2.5indirecta
npm@libsql/isomorphic-ws0.1.5indirecta
npm@libsql/kysely-libsql0.4.1indirecta
npm@libsql/linux-arm64-gnu0.3.19indirecta
npm@libsql/linux-arm64-musl0.3.19indirecta
npm@libsql/linux-x64-gnu0.3.19indirecta
npm@libsql/linux-x64-musl0.3.19indirecta
npm@libsql/win32-x64-msvc0.3.19indirecta
npm@manypkg/find-root1.1.0indirecta
npm@manypkg/get-packages1.1.3indirecta
npm@napi-rs/wasm-runtime1.1.6indirecta
npm@neon-rs/load0.0.4indirecta
npm@netlify/functions5.2.2indirecta
npm@netlify/types2.7.0indirecta
npm@nodelib/fs.scandir2.1.5indirecta
npm@nodelib/fs.stat2.0.5indirecta
npm@nodelib/fs.walk1.2.8indirecta
npm@one-ini/wasm0.1.1indirecta
npm@oxc-project/types0.139.0indirecta
npm@paulirish/trace_engine0.0.53indirecta
npm@pkgjs/parseargs0.11.0indirecta
npm@polka/url1.0.0-next.29indirecta
npm@prismicio/client7.21.8indirecta
npm@prismicio/migrate0.0.2indirecta
npm@protobufjs/aspromise1.1.2indirecta
npm@protobufjs/base641.1.2indirecta
npm@protobufjs/codegen2.0.5indirecta
npm@protobufjs/eventemitter1.1.1indirecta
npm@protobufjs/fetch1.1.1indirecta
npm@protobufjs/float1.0.2indirecta
npm@protobufjs/path1.1.2indirecta
npm@protobufjs/pool1.1.0indirecta
npm@protobufjs/utf81.1.1indirecta
npm@puppeteer/browsers2.13.2indirecta
npm@react-email/render1.1.2indirecta
npm@rolldown/binding-android-arm641.1.5indirecta
npm@rolldown/binding-darwin-arm641.1.5indirecta
npm@rolldown/binding-darwin-x641.1.5indirecta
npm@rolldown/binding-freebsd-x641.1.5indirecta
npm@rolldown/binding-linux-arm-gnueabihf1.1.5indirecta
npm@rolldown/binding-linux-arm64-gnu1.1.5indirecta
npm@rolldown/binding-linux-arm64-musl1.1.5indirecta
npm@rolldown/binding-linux-ppc64-gnu1.1.5indirecta
npm@rolldown/binding-linux-s390x-gnu1.1.5indirecta
npm@rolldown/binding-linux-x64-gnu1.1.5indirecta
npm@rolldown/binding-linux-x64-musl1.1.5indirecta
npm@rolldown/binding-openharmony-arm641.1.5indirecta
npm@rolldown/binding-wasm32-wasi1.1.5indirecta
npm@rolldown/binding-win32-arm64-msvc1.1.5indirecta
npm@rolldown/binding-win32-x64-msvc1.1.5indirecta
npm@rolldown/pluginutils1.0.1indirecta
npm@rollup/rollup-android-arm-eabi4.60.4indirecta
npm@rollup/rollup-android-arm644.60.4indirecta
npm@rollup/rollup-darwin-arm644.60.4indirecta
npm@rollup/rollup-darwin-x644.60.4indirecta
npm@rollup/rollup-freebsd-arm644.60.4indirecta
npm@rollup/rollup-freebsd-x644.60.4indirecta
npm@rollup/rollup-linux-arm-gnueabihf4.60.4indirecta
npm@rollup/rollup-linux-arm-musleabihf4.60.4indirecta
npm@rollup/rollup-linux-arm64-gnu4.60.4indirecta
npm@rollup/rollup-linux-arm64-musl4.60.4indirecta
npm@rollup/rollup-linux-loong64-gnu4.60.4indirecta
npm@rollup/rollup-linux-loong64-musl4.60.4indirecta
npm@rollup/rollup-linux-ppc64-gnu4.60.4indirecta
npm@rollup/rollup-linux-ppc64-musl4.60.4indirecta
npm@rollup/rollup-linux-riscv64-gnu4.60.4indirecta
npm@rollup/rollup-linux-riscv64-musl4.60.4indirecta
npm@rollup/rollup-linux-s390x-gnu4.60.4indirecta
npm@rollup/rollup-linux-x64-gnu4.60.4indirecta
npm@rollup/rollup-linux-x64-musl4.60.4indirecta
npm@rollup/rollup-openbsd-x644.60.4indirecta
npm@rollup/rollup-openharmony-arm644.60.4indirecta
npm@rollup/rollup-win32-arm64-msvc4.60.4indirecta
npm@rollup/rollup-win32-ia32-msvc4.60.4indirecta
npm@rollup/rollup-win32-x64-gnu4.60.4indirecta
npm@rollup/rollup-win32-x64-msvc4.60.4indirecta
npm@selderee/plugin-htmlparser20.11.0indirecta
npm@sentry-internal/tracing7.120.4indirecta
npm@sentry/core7.120.4indirecta
npm@sentry/integrations7.120.4indirecta
npm@sentry/node7.120.4indirecta
npm@sentry/types7.120.4indirecta
npm@sentry/utils7.120.4indirecta
npm@stablelib/base641.0.1indirecta
npm@standard-schema/spec1.1.0indirecta
npm@sveltejs/acorn-typescript1.0.10indirecta
npm@sveltejs/acorn-typescript1.0.11indirecta
npm@sveltejs/kit2.70.1indirecta
npm@sveltejs/vite-plugin-svelte7.1.2indirecta
npm@tootallnate/quickjs-emscripten0.23.0indirecta
npm@tybys/wasm-util0.10.3indirecta
npm@types/chai5.2.3indirecta
npm@types/cookie0.6.0indirecta
npm@types/deep-eql4.0.2indirecta
npm@types/esrecurse4.3.1indirecta
npm@types/estree1.0.8indirecta
npm@types/estree1.0.9indirecta
npm@types/hast3.0.4indirecta
npm@types/json-schema7.0.15indirecta
npm@types/mdast4.0.4indirecta
npm@types/mjml4.7.4indirecta
npm@types/mjml-core5.0.0indirecta
npm@types/node12.20.55indirecta
npm@types/node22.19.19indirecta
npm@types/trusted-types2.0.7indirecta
npm@types/unist3.0.3indirecta
npm@types/ws8.18.1indirecta
npm@types/yauzl2.10.3indirecta
npm@typescript-eslint/eslint-plugin8.59.4indirecta
npm@typescript-eslint/parser8.59.4indirecta
npm@typescript-eslint/project-service8.59.4indirecta
npm@typescript-eslint/scope-manager8.59.4indirecta
npm@typescript-eslint/tsconfig-utils8.59.4indirecta
npm@typescript-eslint/type-utils8.59.4indirecta
npm@typescript-eslint/types8.59.4indirecta
npm@typescript-eslint/typescript-estree8.59.4indirecta
npm@typescript-eslint/utils8.59.4indirecta
npm@typescript-eslint/visitor-keys8.59.4indirecta
npm@ungap/structured-clone1.3.2indirecta
npm@vitest/coverage-v84.1.8indirecta
npm@vitest/expect4.1.8indirecta
npm@vitest/mocker4.1.8indirecta
npm@vitest/pretty-format4.1.8indirecta
npm@vitest/runner4.1.8indirecta
npm@vitest/snapshot4.1.8indirecta
npm@vitest/spy4.1.8indirecta
npm@vitest/utils4.1.8indirecta
npmabbrev2.0.0indirecta
npmabort-controller3.0.0indirecta
npmabortcontroller-polyfill1.7.8indirecta
npmaccepts1.3.8indirecta
npmacorn8.16.0indirecta
npmacorn8.17.0indirecta
npmacorn-jsx5.3.2indirecta
npmagent-base7.1.4indirecta
npmairtable0.12.2indirecta
npmajv6.15.0indirecta
npmansi-colors4.1.3indirecta
npmansi-escapes3.2.0indirecta
npmansi-escapes7.3.0indirecta
npmansi-regex3.0.1indirecta
npmansi-regex4.1.1indirecta
npmansi-regex5.0.1indirecta
npmansi-regex6.2.2indirecta
npmansi-styles3.2.1indirecta
npmansi-styles4.3.0indirecta
npmansi-styles6.2.3indirecta
npmany-promise1.3.0indirecta
npmanymatch3.1.3indirecta
npmargparse1.0.10indirecta
npmargparse2.0.1indirecta
npmaria-query5.3.1indirecta
npmarray-flatten1.1.1indirecta
npmarray-union2.1.0indirecta
npmassertion-error2.0.1indirecta
npmast-types0.13.4indirecta
npmast-v8-to-istanbul1.0.4indirecta
npmaxe-core4.11.4indirecta
npmaxobject-query4.1.0indirecta
npmb4a1.8.1indirecta
npmbail2.0.2indirecta
npmbalanced-match1.0.2indirecta
npmbalanced-match4.0.4indirecta
npmbare-events2.8.3indirecta
npmbare-fs4.7.1indirecta
npmbare-os3.9.1indirecta
npmbare-path3.0.0indirecta
npmbare-stream2.13.1indirecta
npmbare-url2.4.3indirecta
npmbase64-js1.5.1indirecta
npmbasic-ftp5.3.1indirecta
npmbcp-47-match2.0.3indirecta
npmbetter-path-resolve1.0.0indirecta
npmbignumber.js9.3.1indirecta
npmbinary-extensions2.3.0indirecta
npmbody-parser1.20.5indirecta
npmboolbase1.0.0indirecta
npmbrace-expansion1.1.16indirecta
npmbrace-expansion2.1.2indirecta
npmbrace-expansion5.0.8indirecta
npmbraces3.0.3indirecta
npmbuffer-crc320.2.13indirecta
npmbuffer-equal-constant-time1.0.1indirecta
npmbundle-require5.1.0indirecta
npmbytes3.1.2indirecta
npmcall-bind-apply-helpers1.0.2indirecta
npmcall-bound1.0.4indirecta
npmcamel-case3.0.0indirecta
npmcamelcase5.3.1indirecta
npmccount2.0.1indirecta
npmchai6.2.2indirecta
npmchalk2.4.2indirecta
npmcharacter-entities-html42.1.0indirecta
npmcharacter-entities-legacy3.0.0indirecta
npmchardet0.7.0indirecta
npmchardet2.1.1indirecta
npmcheerio1.0.0-rc.12indirecta
npmcheerio-select2.1.0indirecta
npmchokidar3.6.0indirecta
npmchokidar4.0.3indirecta
npmchrome-launcher0.13.4indirecta
npmchrome-launcher1.2.1indirecta
npmchromium-bidi14.0.0indirecta
npmclean-css4.2.4indirecta
npmcli-cursor2.1.0indirecta
npmcli-cursor5.0.0indirecta
npmcli-truncate5.2.0indirecta
npmcli-width2.2.1indirecta
npmcliui6.0.0indirecta
npmcliui8.0.1indirecta
npmclsx2.1.1indirecta
npmcolor-convert1.9.3indirecta
npmcolor-convert2.0.1indirecta
npmcolor-name1.1.3indirecta
npmcolor-name1.1.4indirecta
npmcomma-separated-tokens2.0.3indirecta
npmcommander10.0.1indirecta
npmcommander2.20.3indirecta
npmcommander4.1.1indirecta
npmcommander6.2.1indirecta
npmcompressible2.0.18indirecta
npmcompression1.8.1indirecta
npmconcat-map0.0.1indirecta
npmconfbox0.1.8indirecta
npmconfig-chain1.1.13indirecta
npmconfigstore5.0.1indirecta
npmconsola3.4.2indirecta
npmcontent-disposition0.5.4indirecta
npmcontent-type1.0.5indirecta
npmconvert-source-map2.0.0indirecta
npmcookie0.7.2indirecta
npmcookie-signature1.0.7indirecta
npmcross-spawn7.0.6indirecta
npmcrypto-random-string2.0.0indirecta
npmcsp_evaluator1.1.5indirecta
npmcss-select5.2.2indirecta
npmcss-selector-parser3.3.0indirecta
npmcss-what6.2.2indirecta
npmcssesc3.0.0indirecta
npmdata-uri-to-buffer4.0.1indirecta
npmdata-uri-to-buffer6.0.2indirecta
npmdebug2.6.9indirecta
npmdebug4.4.3indirecta
npmdecamelize1.2.0indirecta
npmdecimal.js10.6.0indirecta
npmdeep-is0.1.4indirecta
npmdeepmerge4.3.1indirecta
npmdefine-lazy-prop2.0.0indirecta
npmdegenerator5.0.1indirecta
npmdepd2.0.0indirecta
npmdequal2.0.3indirecta
npmdestroy1.2.0indirecta
npmdetect-indent6.1.0indirecta
npmdetect-libc2.0.2indirecta
npmdetect-libc2.1.2indirecta
npmdetect-node2.1.0indirecta
npmdevalue5.8.1indirecta
npmdevalue5.8.2indirecta
npmdevlop1.1.0indirecta
npmdevtools-protocol0.0.1467305indirecta
npmdevtools-protocol0.0.1608973indirecta
npmdir-glob3.0.1indirecta
npmdirection2.0.1indirecta
npmdom-serializer1.4.1indirecta
npmdom-serializer2.0.0indirecta
npmdomelementtype2.3.0indirecta
npmdomhandler3.3.0indirecta
npmdomhandler4.3.1indirecta
npmdomhandler5.0.3indirecta
npmdomutils2.8.0indirecta
npmdomutils3.2.2indirecta
npmdot-prop5.3.0indirecta
npmdunder-proto1.0.1indirecta
npmduplexify4.1.3indirecta
npmeastasianwidth0.2.0indirecta
npmecdsa-sig-formatter1.0.11indirecta
npmeditorconfig1.0.7indirecta
npmee-first1.1.1indirecta
npmemoji-regex10.6.0indirecta
npmemoji-regex8.0.0indirecta
npmemoji-regex9.2.2indirecta
npmencodeurl2.0.0indirecta
npmend-of-stream1.4.5indirecta
npmenquirer2.4.1indirecta
npmentities2.2.0indirecta
npmentities4.5.0indirecta
npmentities6.0.1indirecta
npmentities8.0.0indirecta
npmenvironment1.1.0indirecta
npmes-define-property1.0.1indirecta
npmes-errors1.3.0indirecta
npmes-module-lexer2.1.0indirecta
npmes-object-atoms1.1.1indirecta
npmesbuild0.28.1indirecta
npmescalade3.2.0indirecta
npmescape-goat3.0.0indirecta
npmescape-html1.0.3indirecta
npmescape-string-regexp1.0.5indirecta
npmescape-string-regexp4.0.0indirecta
npmescodegen2.1.0indirecta
npmeslint-scope8.4.0indirecta
npmeslint-scope9.1.2indirecta
npmeslint-visitor-keys3.4.3indirecta
npmeslint-visitor-keys4.2.1indirecta
npmeslint-visitor-keys5.0.1indirecta
npmesm-env1.2.2indirecta
npmespree10.4.0indirecta
npmespree11.2.0indirecta
npmesprima4.0.1indirecta
npmesquery1.7.0indirecta
npmesrap2.3.0indirecta
npmesrecurse4.3.0indirecta
npmestraverse5.3.0indirecta
npmestree-walker3.0.3indirecta
npmesutils2.0.3indirecta
npmetag1.8.1indirecta
npmevent-target-shim5.0.1indirecta
npmeventemitter35.0.4indirecta
npmevents-universal1.0.1indirecta
npmexpect-type1.3.0indirecta
npmexpress4.22.2indirecta
npmextend3.0.2indirecta
npmextendable-error0.1.7indirecta
npmexternal-editor3.1.0indirecta
npmextract-zip2.0.1indirecta
npmfast-deep-equal2.0.1indirecta
npmfast-deep-equal3.1.3indirecta
npmfast-fifo1.3.2indirecta
npmfast-glob3.3.3indirecta
npmfast-json-stable-stringify2.1.0indirecta
npmfast-levenshtein2.0.6indirecta
npmfast-sha2561.3.0indirecta
npmfastq1.20.1indirecta
npmfd-slicer1.1.0indirecta
npmfdir6.5.0indirecta
npmfetch-blob3.2.0indirecta
npmfigures2.0.0indirecta
npmfile-entry-cache8.0.0indirecta
npmfill-range7.1.1indirecta
npmfinalhandler1.3.2indirecta
npmfind-up4.1.0indirecta
npmfind-up5.0.0indirecta
npmfix-dts-default-cjs-exports1.0.1indirecta
npmflat-cache4.0.1indirecta
npmflatted3.4.2indirecta
npmforeground-child3.3.1indirecta
npmformdata-polyfill4.0.10indirecta
npmforwarded0.2.0indirecta
npmfresh0.5.2indirecta
npmfs-extra7.0.1indirecta
npmfs-extra8.1.0indirecta
npmfs.realpath1.0.0indirecta
npmfsevents2.3.2indirecta
npmfsevents2.3.3indirecta
npmfunction-bind1.1.2indirecta
npmgaxios7.1.4indirecta
npmgcp-metadata8.1.2indirecta
npmget-caller-file2.0.5indirecta
npmget-east-asian-width1.6.0indirecta
npmget-intrinsic1.3.0indirecta
npmget-proto1.0.1indirecta
npmget-stream5.2.0indirecta
npmget-uri6.0.5indirecta
npmglob10.5.0indirecta
npmglob7.2.3indirecta
npmglob-parent5.1.2indirecta
npmglob-parent6.0.2indirecta
npmglobby11.1.0indirecta
npmgoogle-auth-library10.6.2indirecta
npmgoogle-gax5.0.6indirecta
npmgoogle-logging-utils1.1.3indirecta
npmgopd1.2.0indirecta
npmgraceful-fs4.2.11indirecta
npmhas-flag3.0.0indirecta
npmhas-flag4.0.0indirecta
npmhas-symbols1.1.0indirecta
npmhasown2.0.3indirecta
npmhast1.0.0indirecta
npmhast-util-embedded3.0.0indirecta
npmhast-util-from-html2.0.3indirecta
npmhast-util-from-parse58.0.3indirecta
npmhast-util-has-property3.0.0indirecta
npmhast-util-is-element3.0.0indirecta
npmhast-util-minify-whitespace1.0.1indirecta
npmhast-util-parse-selector4.0.0indirecta
npmhast-util-select6.0.4indirecta
npmhast-util-to-html9.0.5indirecta
npmhast-util-to-string3.0.1indirecta
npmhast-util-whitespace3.0.0indirecta
npmhastscript9.0.1indirecta
npmhe1.2.0indirecta
npmhtml-escaper2.0.2indirecta
npmhtml-minifier4.0.0indirecta
npmhtml-to-text9.0.5indirecta
npmhtml-void-elements3.0.0indirecta
npmhtmlparser25.0.1indirecta
npmhtmlparser28.0.2indirecta
npmhtmlparser29.1.0indirecta
npmhttp-errors2.0.1indirecta
npmhttp-link-header1.1.3indirecta
npmhttp-proxy-agent7.0.2indirecta
npmhttps-proxy-agent7.0.6indirecta
npmhuman-id4.1.3indirecta
npmiconv-lite0.4.24indirecta
npmiconv-lite0.7.2indirecta
npmignore5.3.2indirecta
npmignore7.0.5indirecta
npmimage-ssim0.2.0indirecta
npmimgix-url-builder0.0.6indirecta
npmimmediate3.0.6indirecta
npmimurmurhash0.1.4indirecta
npminflight1.0.6indirecta
npminherits2.0.4indirecta
npmini1.3.8indirecta
npminquirer6.5.2indirecta
npmintl-messageformat10.7.18indirecta
npmip-address10.2.0indirecta
npmipaddr.js1.9.1indirecta
npmis-binary-path2.1.0indirecta
npmis-docker2.2.1indirecta
npmis-extglob2.1.1indirecta
npmis-fullwidth-code-point2.0.0indirecta
npmis-fullwidth-code-point3.0.0indirecta
npmis-fullwidth-code-point5.1.0indirecta
npmis-glob4.0.3indirecta
npmis-number7.0.0indirecta
npmis-obj2.0.0indirecta
npmis-plain-obj4.1.0indirecta
npmis-reference3.0.3indirecta
npmis-subdir1.2.0indirecta
npmis-typedarray1.0.0indirecta
npmis-windows1.0.2indirecta
npmis-wsl2.2.0indirecta
npmisexe2.0.0indirecta
npmisomorphic-fetch3.0.0indirecta
npmistanbul-lib-coverage3.2.2indirecta
npmistanbul-lib-report3.0.1indirecta
npmistanbul-reports3.2.0indirecta
npmjackspeak3.4.3indirecta
npmjoycon3.1.1indirecta
npmjpeg-js0.4.4indirecta
npmjs-base643.7.8indirecta
npmjs-beautify1.15.4indirecta
npmjs-cookie3.0.7indirecta
npmjs-library-detector6.7.0indirecta
npmjs-tokens10.0.0indirecta
npmjs-yaml3.15.0indirecta
npmjs-yaml4.3.0indirecta
npmjson-bigint1.0.0indirecta
npmjson-buffer3.0.1indirecta
npmjson-schema-traverse0.4.1indirecta
npmjson-stable-stringify-without-jsonify1.0.1indirecta
npmjsonfile4.0.0indirecta
npmjuice10.0.1indirecta
npmjwa2.0.1indirecta
npmjws4.0.1indirecta
npmkeyv4.5.4indirecta
npmkleur4.1.5indirecta
npmknown-css-properties0.37.0indirecta
npmkysely0.29.2indirecta
npmleac0.6.0indirecta
npmlegacy-javascript0.0.1indirecta
npmlevn0.4.1indirecta
npmlibsql0.3.19indirecta
npmlie3.1.1indirecta
npmlighthouse12.6.1indirecta
npmlighthouse-logger1.2.0indirecta
npmlighthouse-logger2.0.2indirecta
npmlighthouse-stack-packs1.12.2indirecta
npmlightningcss1.33.0indirecta
npmlightningcss-android-arm641.33.0indirecta
npmlightningcss-darwin-arm641.33.0indirecta
npmlightningcss-darwin-x641.33.0indirecta
npmlightningcss-freebsd-x641.33.0indirecta
npmlightningcss-linux-arm-gnueabihf1.33.0indirecta
npmlightningcss-linux-arm64-gnu1.33.0indirecta
npmlightningcss-linux-arm64-musl1.33.0indirecta
npmlightningcss-linux-x64-gnu1.33.0indirecta
npmlightningcss-linux-x64-musl1.33.0indirecta
npmlightningcss-win32-arm64-msvc1.33.0indirecta
npmlightningcss-win32-x64-msvc1.33.0indirecta
npmlilconfig2.1.0indirecta
npmlilconfig3.1.3indirecta
npmlines-and-columns1.2.4indirecta
npmload-tsconfig0.2.5indirecta
npmlocalforage1.10.0indirecta
npmlocate-character3.0.0indirecta
npmlocate-path5.0.0indirecta
npmlocate-path6.0.0indirecta
npmlodash4.18.1indirecta
npmlodash-es4.18.1indirecta
npmlodash.camelcase4.3.0indirecta
npmlodash.startcase4.4.0indirecta
npmlog-update6.1.0indirecta
npmlong5.3.2indirecta
npmlookup-closest-locale6.2.0indirecta
npmlower-case1.1.4indirecta
npmlru-cache10.4.3indirecta
npmlru-cache7.18.3indirecta
npmmagic-string0.30.21indirecta
npmmagicast0.5.3indirecta
npmmake-dir3.1.0indirecta
npmmake-dir4.0.0indirecta
npmmarky1.3.0indirecta
npmmath-intrinsics1.1.0indirecta
npmmdast-util-to-hast13.2.1indirecta
npmmedia-typer0.3.0indirecta
npmmensch0.3.4indirecta
npmmerge-descriptors1.0.3indirecta
npmmerge21.4.1indirecta
npmmetaviewport-parser0.3.0indirecta
npmmethods1.1.2indirecta
npmmicromark-util-character2.1.1indirecta
npmmicromark-util-encode2.0.1indirecta
npmmicromark-util-sanitize-uri2.0.1indirecta
npmmicromark-util-symbol2.0.1indirecta
npmmicromark-util-types2.0.2indirecta
npmmicromatch4.0.8indirecta
npmmime1.6.0indirecta
npmmime2.6.0indirecta
npmmime-db1.52.0indirecta
npmmime-db1.54.0indirecta
npmmime-types2.1.35indirecta
npmmimic-fn1.2.0indirecta
npmmimic-function5.0.1indirecta
npmminimatch10.2.5indirecta
npmminimatch3.1.5indirecta
npmminimatch9.0.9indirecta
npmminimist1.2.8indirecta
npmminipass7.1.3indirecta
npmmitt3.0.1indirecta
npmmjml4.18.0indirecta
npmmjml-accordion4.18.0indirecta
npmmjml-body4.18.0indirecta
npmmjml-button4.18.0indirecta
npmmjml-carousel4.18.0indirecta
npmmjml-cli4.18.0indirecta
npmmjml-column4.18.0indirecta
npmmjml-core4.18.0indirecta
npmmjml-divider4.18.0indirecta
npmmjml-group4.18.0indirecta
npmmjml-head4.18.0indirecta
npmmjml-head-attributes4.18.0indirecta
npmmjml-head-breakpoint4.18.0indirecta
npmmjml-head-font4.18.0indirecta
npmmjml-head-html-attributes4.18.0indirecta
npmmjml-head-preview4.18.0indirecta
npmmjml-head-style4.18.0indirecta
npmmjml-head-title4.18.0indirecta
npmmjml-hero4.18.0indirecta
npmmjml-image4.18.0indirecta
npmmjml-migrate4.18.0indirecta
npmmjml-navbar4.18.0indirecta
npmmjml-parser-xml4.18.0indirecta
npmmjml-preset-core4.18.0indirecta
npmmjml-raw4.18.0indirecta
npmmjml-section4.18.0indirecta
npmmjml-social4.18.0indirecta
npmmjml-spacer4.18.0indirecta
npmmjml-table4.18.0indirecta
npmmjml-text4.18.0indirecta
npmmjml-validator4.18.0indirecta
npmmjml-wrapper4.18.0indirecta
npmmkdirp0.5.6indirecta
npmmlly1.8.2indirecta
npmmri1.2.0indirecta
npmmrmime2.0.1indirecta
npmms2.0.0indirecta
npmms2.1.3indirecta
npmmute-stream0.0.7indirecta
npmmz2.7.0indirecta
npmnanoid3.3.16indirecta
npmnatural-compare1.4.0indirecta
npmnegotiator0.6.3indirecta
npmnegotiator0.6.4indirecta
npmnetmask2.1.1indirecta
npmno-case2.3.2indirecta
npmnode-domexception1.0.0indirecta
npmnode-fetch2.7.0indirecta
npmnode-fetch3.3.2indirecta
npmnopt7.2.1indirecta
npmnormalize-path3.0.0indirecta
npmnth-check2.1.1indirecta
npmobject-assign4.1.1indirecta
npmobject-hash3.0.0indirecta
npmobject-inspect1.13.4indirecta
npmobug2.1.1indirecta
npmobug2.1.4indirecta
npmon-finished2.4.1indirecta
npmon-headers1.1.0indirecta
npmonce1.4.0indirecta
npmonetime2.0.1indirecta
npmonetime7.0.0indirecta
npmopen7.4.2indirecta
npmopen8.4.2indirecta
npmoptionator0.9.4indirecta
npmoutdent0.5.0indirecta
npmp-filter2.1.0indirecta
npmp-limit2.3.0indirecta
npmp-limit3.1.0indirecta
npmp-locate4.1.0indirecta
npmp-locate5.0.0indirecta
npmp-map2.1.0indirecta
npmp-try2.2.0indirecta
npmpac-proxy-agent7.2.0indirecta
npmpac-resolver7.0.1indirecta
npmpackage-json-from-dist1.0.1indirecta
npmpackage-manager-detector0.2.11indirecta
npmparam-case2.1.1indirecta
npmparse-cache-control1.0.1indirecta
npmparse57.3.0indirecta
npmparse5-htmlparser2-tree-adapter7.1.0indirecta
npmparseley0.12.1indirecta
npmparseurl1.3.3indirecta
npmpath-exists4.0.0indirecta
npmpath-is-absolute1.0.1indirecta
npmpath-key3.1.1indirecta
npmpath-scurry1.11.1indirecta
npmpath-to-regexp0.1.13indirecta
npmpath-type4.0.0indirecta
npmpathe2.0.3indirecta
npmpeberminta0.9.0indirecta
npmpend1.2.0indirecta
npmpicocolors1.1.1indirecta
npmpicomatch2.3.2indirecta
npmpicomatch4.0.4indirecta
npmpicomatch4.0.5indirecta
npmpify4.0.1indirecta
npmpirates4.0.7indirecta
npmpkg-types1.3.1indirecta
npmplaywright1.60.0indirecta
npmplaywright-core1.60.0indirecta
npmpostcss8.5.23indirecta
npmpostcss-load-config3.1.4indirecta
npmpostcss-load-config6.0.1indirecta
npmpostcss-safe-parser7.0.1indirecta
npmpostcss-scss4.0.9indirecta
npmpostcss-selector-parser7.1.1indirecta
npmprelude-ls1.2.1indirecta
npmprogress2.0.3indirecta
npmpromise-limit2.7.0indirecta
npmproperty-information7.2.0indirecta
npmproto-list1.2.4indirecta
npmproto3-json-serializer3.0.4indirecta
npmprotobufjs7.6.5indirecta
npmproxy-addr2.0.7indirecta
npmproxy-agent6.5.0indirecta
npmproxy-from-env1.1.0indirecta
npmpump3.0.4indirecta
npmpunycode2.3.1indirecta
npmpuppeteer-core24.43.1indirecta
npmqs6.15.2indirecta
npmquansync0.2.11indirecta
npmqueue-microtask1.2.3indirecta
npmrange-parser1.2.1indirecta
npmraw-body2.5.3indirecta
npmreact19.2.6indirecta
npmreact-dom19.2.6indirecta
npmreact-promise-suspense0.3.4indirecta
npmread-yaml-file1.1.0indirecta
npmreadable-stream3.6.2indirecta
npmreaddirp3.6.0indirecta
npmreaddirp4.1.2indirecta
npmrehype-minify-whitespace6.0.2indirecta
npmrehype-parse9.0.1indirecta
npmrelateurl0.2.7indirecta
npmrequire-directory2.1.1indirecta
npmrequire-main-filename2.0.0indirecta
npmresend4.8.0indirecta
npmresolve-from5.0.0indirecta
npmrestore-cursor2.0.0indirecta
npmrestore-cursor5.1.0indirecta
npmretry-request8.0.2indirecta
npmreusify1.1.0indirecta
npmrfdc1.4.1indirecta
npmrimraf3.0.2indirecta
npmrimraf5.0.10indirecta
npmrobots-parser3.0.1indirecta
npmrolldown1.1.5indirecta
npmrollup4.60.4indirecta
npmrun-async2.4.1indirecta
npmrun-parallel1.2.0indirecta
npmrxjs6.6.7indirecta
npmsafe-buffer5.2.1indirecta
npmsafer-buffer2.1.2indirecta
npmscheduler0.27.0indirecta
npmselderee0.11.0indirecta
npmsemver5.7.2indirecta
npmsemver6.3.1indirecta
npmsemver7.8.0indirecta
npmsemver7.8.5indirecta
npmsend0.19.2indirecta
npmserve-static1.16.3indirecta
npmset-blocking2.0.0indirecta
npmset-cookie-parser3.1.0indirecta
npmsetprototypeof1.2.0indirecta
npmsharp0.35.3indirecta
npmshebang-command2.0.0indirecta
npmshebang-regex3.0.0indirecta
npmside-channel1.1.0indirecta
npmside-channel-list1.0.1indirecta
npmside-channel-map1.0.1indirecta
npmside-channel-weakmap1.0.2indirecta
npmsiginfo2.0.0indirecta
npmsignal-exit3.0.7indirecta
npmsignal-exit4.1.0indirecta
npmsirv3.0.2indirecta
npmslash3.0.0indirecta
npmslice-ansi7.1.2indirecta
npmslice-ansi8.0.0indirecta
npmslick1.12.2indirecta
npmsmart-buffer4.2.0indirecta
npmsocks2.8.9indirecta
npmsocks-proxy-agent8.0.5indirecta
npmsource-map0.6.1indirecta
npmsource-map0.7.6indirecta
npmsource-map-js1.2.1indirecta
npmspace-separated-tokens2.0.2indirecta
npmspawndamnit3.0.1indirecta
npmspeedline-core1.4.3indirecta
npmsprintf-js1.0.3indirecta
npmstackback0.0.2indirecta
npmstandardwebhooks1.0.0indirecta
npmstatuses2.0.2indirecta
npmstd-env4.1.0indirecta
npmstream-events1.0.5indirecta
npmstream-shift1.0.3indirecta
npmstreamx2.25.0indirecta
npmstring-width2.1.1indirecta
npmstring-width4.2.3indirecta
npmstring-width5.1.2indirecta
npmstring-width7.2.0indirecta
npmstring-width8.2.1indirecta
npmstring_decoder1.3.0indirecta
npmstringify-entities4.0.4indirecta
npmstrip-ansi4.0.0indirecta
npmstrip-ansi5.2.0indirecta
npmstrip-ansi6.0.1indirecta
npmstrip-ansi7.2.0indirecta
npmstrip-bom3.0.0indirecta
npmstubs3.0.0indirecta
npmsucrase3.35.1indirecta
npmsupports-color5.5.0indirecta
npmsupports-color7.2.0indirecta
npmsvelte5.55.9indirecta
npmsvelte-eslint-parser1.6.1indirecta
npmsvix1.94.0indirecta
npmtar-fs3.1.2indirecta
npmtar-stream3.2.0indirecta
npmteeny-request10.1.2indirecta
npmteex1.0.1indirecta
npmterm-size2.2.1indirecta
npmtext-decoder1.2.7indirecta
npmthenify3.3.1indirecta
npmthenify-all1.6.0indirecta
npmthird-party-web0.26.7indirecta
npmthird-party-web0.29.2indirecta
npmthrough2.3.8indirecta
npmtinybench2.9.0indirecta
npmtinyexec0.3.2indirecta
npmtinyexec1.1.2indirecta
npmtinyrainbow3.1.0indirecta
npmtldts-core6.1.86indirecta
npmtldts-icann6.1.86indirecta
npmtmp0.2.7indirecta
npmto-regex-range5.0.1indirecta
npmtoidentifier1.0.1indirecta
npmtotalist3.0.1indirecta
npmtr460.0.3indirecta
npmtree-kill1.2.2indirecta
npmtrim-lines3.0.1indirecta
npmtrough2.2.0indirecta
npmts-api-utils2.5.0indirecta
npmts-interface-checker0.1.13indirecta
npmtslib1.14.1indirecta
npmtslib2.8.1indirecta
npmtsup8.5.1indirecta
npmtsx4.22.3indirecta
npmtype-check0.4.0indirecta
npmtype-is1.6.18indirecta
npmtyped-query-selector2.12.2indirecta
npmtypedarray-to-buffer3.1.5indirecta
npmtypescript6.0.3indirecta
npmufo1.6.4indirecta
npmuglify-js3.19.3indirecta
npmundici-types6.21.0indirecta
npmunified11.0.5indirecta
npmunique-string2.0.0indirecta
npmunist-util-is6.0.1indirecta
npmunist-util-position5.0.0indirecta
npmunist-util-remove4.0.0indirecta
npmunist-util-stringify-position4.0.0indirecta
npmunist-util-visit5.1.0indirecta
npmunist-util-visit-parents6.0.2indirecta
npmuniversalify0.1.2indirecta
npmunpipe1.0.0indirecta
npmupper-case1.1.3indirecta
npmuri-js4.4.1indirecta
npmutil-deprecate1.0.2indirecta
npmutils-merge1.0.1indirecta
npmuuid14.0.1indirecta
npmvalid-data-url3.0.1indirecta
npmvary1.1.2indirecta
npmvfile6.0.3indirecta
npmvfile-location5.0.3indirecta
npmvfile-message4.0.3indirecta
npmvite8.1.0indirecta
npmvitefu1.1.3indirecta
npmvitest4.1.8indirecta
npmweb-namespaces2.0.1indirecta
npmweb-resource-inliner6.0.1indirecta
npmweb-streams-polyfill3.3.3indirecta
npmwebdriver-bidi-protocol0.4.1indirecta
npmwebidl-conversions3.0.1indirecta
npmwhatwg-fetch3.6.20indirecta
npmwhatwg-url5.0.0indirecta
npmwhich2.0.2indirecta
npmwhich-module2.0.1indirecta
npmwhy-is-node-running2.3.0indirecta
npmword-wrap1.2.5indirecta
npmwrap-ansi10.0.0indirecta
npmwrap-ansi6.2.0indirecta
npmwrap-ansi7.0.0indirecta
npmwrap-ansi8.1.0indirecta
npmwrap-ansi9.0.2indirecta
npmwrappy1.0.2indirecta
npmwrite-file-atomic3.0.3indirecta
npmws7.5.11indirecta
npmws8.21.0indirecta
npmxdg-basedir4.0.0indirecta
npmy18n4.0.3indirecta
npmy18n5.0.8indirecta
npmyaml1.10.3indirecta
npmyargs15.4.1indirecta
npmyargs17.7.2indirecta
npmyargs-parser13.1.2indirecta
npmyargs-parser18.1.3indirecta
npmyargs-parser21.1.1indirecta
npmyauzl2.10.0indirecta
npmyocto-queue0.1.0indirecta
npmzimmerframe1.1.4indirecta
npmzod3.25.76indirecta
npmzwitch2.0.4indirecta
Avisos de dependencias 0

Instalar npm:@reddoorla/maintenance@0.75.1 arrastra 153 paquetes, directos y transitivos: 0 tienen avisos conocidos, de los cuales 0 son dependencias directas.

Ningún aviso conocido afecta a las dependencias evaluadas.

Un aviso significa que la versión registrada en el grafo de dependencias cae dentro del rango afectado de un aviso. No se analiza la alcanzabilidad, y el grafo incluye fijaciones de desarrollo y prueba: un hallazgo puede referirse al utillaje y no al software distribuido.

Informe JSON sin procesar legible por máquina
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 5776,
      "has_wiki": true,
      "homepage": null,
      "languages": {
        "HTML": 66687,
        "JavaScript": 41127,
        "TypeScript": 3532035
      },
      "pushed_at": "2026-07-25T03:35:43Z",
      "created_at": "2026-05-20T19:09:42Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-25T03:35:48Z",
      "description": null,
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript"
      ]
    },
    "owner": {
      "blog": null,
      "name": null,
      "type": "Organization",
      "login": "reddoorla",
      "company": null,
      "location": null,
      "followers": 1,
      "avatar_url": "https://avatars.githubusercontent.com/u/287058736?v=4",
      "created_at": "2026-05-22T18:58:51Z",
      "is_verified": null,
      "public_repos": 19,
      "account_age_days": 64
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.75.1",
          "kind": "patch",
          "published_at": "2026-07-20T04:13:36Z"
        },
        {
          "tag": "v0.75.0",
          "kind": "minor",
          "published_at": "2026-07-17T20:02:34Z"
        },
        {
          "tag": "v0.74.0",
          "kind": "minor",
          "published_at": "2026-07-17T18:34:32Z"
        },
        {
          "tag": "v0.72.0",
          "kind": "minor",
          "published_at": "2026-07-15T17:45:37Z"
        },
        {
          "tag": "v0.71.0",
          "kind": "minor",
          "published_at": "2026-07-14T16:46:20Z"
        },
        {
          "tag": "v0.69.0",
          "kind": "minor",
          "published_at": "2026-07-06T01:07:17Z"
        },
        {
          "tag": "v0.68.0",
          "kind": "minor",
          "published_at": "2026-07-05T17:42:29Z"
        },
        {
          "tag": "v0.67.0",
          "kind": "minor",
          "published_at": "2026-07-02T18:09:35Z"
        },
        {
          "tag": "v0.66.0",
          "kind": "minor",
          "published_at": "2026-06-30T23:52:32Z"
        },
        {
          "tag": "v0.65.3",
          "kind": "patch",
          "published_at": "2026-06-30T23:27:03Z"
        },
        {
          "tag": "v0.65.1",
          "kind": "patch",
          "published_at": "2026-06-30T22:12:45Z"
        },
        {
          "tag": "v0.65.0",
          "kind": "minor",
          "published_at": "2026-06-30T04:08:39Z"
        },
        {
          "tag": "v0.64.0",
          "kind": "minor",
          "published_at": "2026-06-29T22:25:56Z"
        },
        {
          "tag": "v0.63.0",
          "kind": "minor",
          "published_at": "2026-06-29T17:06:32Z"
        },
        {
          "tag": "v0.62.1",
          "kind": "patch",
          "published_at": "2026-06-26T21:15:36Z"
        },
        {
          "tag": "v0.62.0",
          "kind": "minor",
          "published_at": "2026-06-26T05:02:48Z"
        },
        {
          "tag": "v0.61.0",
          "kind": "minor",
          "published_at": "2026-06-25T21:41:31Z"
        },
        {
          "tag": "v0.60.1",
          "kind": "patch",
          "published_at": "2026-06-25T02:35:23Z"
        },
        {
          "tag": "v0.60.0",
          "kind": "minor",
          "published_at": "2026-06-25T00:37:53Z"
        },
        {
          "tag": "v0.59.0",
          "kind": "minor",
          "published_at": "2026-06-24T18:06:36Z"
        },
        {
          "tag": "v0.58.0",
          "kind": "minor",
          "published_at": "2026-06-24T05:04:03Z"
        },
        {
          "tag": "v0.57.0",
          "kind": "minor",
          "published_at": "2026-06-24T01:59:38Z"
        },
        {
          "tag": "v0.56.0",
          "kind": "minor",
          "published_at": "2026-06-23T23:47:18Z"
        },
        {
          "tag": "v0.55.0",
          "kind": "minor",
          "published_at": "2026-06-23T21:38:55Z"
        },
        {
          "tag": "v0.54.4",
          "kind": "patch",
          "published_at": "2026-06-23T19:38:16Z"
        },
        {
          "tag": "v0.54.3",
          "kind": "patch",
          "published_at": "2026-06-23T18:49:04Z"
        },
        {
          "tag": "v0.54.2",
          "kind": "patch",
          "published_at": "2026-06-23T18:04:51Z"
        },
        {
          "tag": "v0.54.1",
          "kind": "patch",
          "published_at": "2026-06-23T17:25:51Z"
        },
        {
          "tag": "v0.54.0",
          "kind": "minor",
          "published_at": "2026-06-23T16:37:48Z"
        },
        {
          "tag": "v0.53.0",
          "kind": "minor",
          "published_at": "2026-06-22T23:12:09Z"
        },
        {
          "tag": "v0.52.0",
          "kind": "minor",
          "published_at": "2026-06-22T22:24:17Z"
        },
        {
          "tag": "v0.51.0",
          "kind": "minor",
          "published_at": "2026-06-22T20:45:07Z"
        },
        {
          "tag": "v0.50.0",
          "kind": "minor",
          "published_at": "2026-06-19T18:52:50Z"
        },
        {
          "tag": "v0.49.0",
          "kind": "minor",
          "published_at": "2026-06-18T22:50:46Z"
        },
        {
          "tag": "v0.47.0",
          "kind": "minor",
          "published_at": "2026-06-18T17:05:54Z"
        },
        {
          "tag": "v0.46.0",
          "kind": "minor",
          "published_at": "2026-06-18T01:36:51Z"
        },
        {
          "tag": "v0.45.0",
          "kind": "minor",
          "published_at": "2026-06-18T01:23:32Z"
        },
        {
          "tag": "v0.44.0",
          "kind": "minor",
          "published_at": "2026-06-17T23:12:59Z"
        },
        {
          "tag": "v0.43.0",
          "kind": "minor",
          "published_at": "2026-06-17T22:18:57Z"
        },
        {
          "tag": "v0.42.0",
          "kind": "minor",
          "published_at": "2026-06-17T18:35:49Z"
        },
        {
          "tag": "v0.41.0",
          "kind": "minor",
          "published_at": "2026-06-17T06:32:57Z"
        },
        {
          "tag": "v0.40.0",
          "kind": "minor",
          "published_at": "2026-06-16T16:29:07Z"
        },
        {
          "tag": "v0.39.0",
          "kind": "minor",
          "published_at": "2026-06-15T21:06:58Z"
        },
        {
          "tag": "v0.37.0",
          "kind": "minor",
          "published_at": "2026-06-15T19:47:03Z"
        },
        {
          "tag": "v0.36.1",
          "kind": "patch",
          "published_at": "2026-06-15T18:07:55Z"
        },
        {
          "tag": "v0.36.0",
          "kind": "minor",
          "published_at": "2026-06-15T17:45:33Z"
        },
        {
          "tag": "v0.35.0",
          "kind": "minor",
          "published_at": "2026-06-15T15:19:55Z"
        },
        {
          "tag": "v0.34.0",
          "kind": "minor",
          "published_at": "2026-06-14T23:13:31Z"
        },
        {
          "tag": "v0.33.0",
          "kind": "minor",
          "published_at": "2026-06-12T20:34:33Z"
        },
        {
          "tag": "v0.32.0",
          "kind": "minor",
          "published_at": "2026-06-11T23:05:25Z"
        },
        {
          "tag": "v0.31.0",
          "kind": "minor",
          "published_at": "2026-06-11T17:12:12Z"
        },
        {
          "tag": "v0.30.0",
          "kind": "minor",
          "published_at": "2026-06-10T21:18:26Z"
        },
        {
          "tag": "v0.29.0",
          "kind": "minor",
          "published_at": "2026-06-09T02:37:45Z"
        },
        {
          "tag": "v0.28.0",
          "kind": "minor",
          "published_at": "2026-06-08T21:12:18Z"
        },
        {
          "tag": "v0.27.2",
          "kind": "patch",
          "published_at": "2026-06-08T18:01:08Z"
        },
        {
          "tag": "v0.27.1",
          "kind": "patch",
          "published_at": "2026-06-04T16:46:01Z"
        },
        {
          "tag": "v0.27.0",
          "kind": "minor",
          "published_at": "2026-06-03T23:55:11Z"
        },
        {
          "tag": "v0.26.1",
          "kind": "patch",
          "published_at": "2026-06-03T23:26:04Z"
        },
        {
          "tag": "v0.26.0",
          "kind": "minor",
          "published_at": "2026-06-03T22:48:00Z"
        },
        {
          "tag": "v0.25.0",
          "kind": "minor",
          "published_at": "2026-06-03T20:48:35Z"
        },
        {
          "tag": "v0.24.0",
          "kind": "minor",
          "published_at": "2026-06-03T19:49:21Z"
        },
        {
          "tag": "v0.23.0",
          "kind": "minor",
          "published_at": "2026-06-03T19:16:54Z"
        },
        {
          "tag": "v0.22.0",
          "kind": "minor",
          "published_at": "2026-06-02T20:38:16Z"
        },
        {
          "tag": "v0.21.0",
          "kind": "minor",
          "published_at": "2026-06-02T18:39:16Z"
        },
        {
          "tag": "v0.20.0",
          "kind": "minor",
          "published_at": "2026-06-02T18:33:50Z"
        },
        {
          "tag": "v0.19.0",
          "kind": "minor",
          "published_at": "2026-06-02T17:29:56Z"
        },
        {
          "tag": "v0.18.1",
          "kind": "patch",
          "published_at": "2026-06-02T00:57:59Z"
        },
        {
          "tag": "v0.18.0",
          "kind": "minor",
          "published_at": "2026-06-01T22:14:25Z"
        },
        {
          "tag": "v0.17.1",
          "kind": "patch",
          "published_at": "2026-06-01T21:58:00Z"
        },
        {
          "tag": "v0.17.0",
          "kind": "minor",
          "published_at": "2026-05-29T19:17:05Z"
        },
        {
          "tag": "v0.16.0",
          "kind": "minor",
          "published_at": "2026-05-29T00:49:42Z"
        },
        {
          "tag": "v0.15.0",
          "kind": "minor",
          "published_at": "2026-05-29T00:40:53Z"
        },
        {
          "tag": "v0.14.0",
          "kind": "minor",
          "published_at": "2026-05-29T00:09:27Z"
        },
        {
          "tag": "v0.13.0",
          "kind": "minor",
          "published_at": "2026-05-28T22:51:53Z"
        },
        {
          "tag": "v0.12.1",
          "kind": "patch",
          "published_at": "2026-05-28T22:40:50Z"
        },
        {
          "tag": "v0.12.0",
          "kind": "minor",
          "published_at": "2026-05-28T22:05:32Z"
        },
        {
          "tag": "v0.11.2",
          "kind": "patch",
          "published_at": "2026-05-28T21:20:43Z"
        },
        {
          "tag": "v0.11.1",
          "kind": "patch",
          "published_at": "2026-05-28T21:01:09Z"
        },
        {
          "tag": "v0.11.0",
          "kind": "minor",
          "published_at": "2026-05-28T20:46:05Z"
        },
        {
          "tag": "v0.10.7",
          "kind": "patch",
          "published_at": "2026-05-28T19:53:48Z"
        },
        {
          "tag": "v0.10.6",
          "kind": "patch",
          "published_at": "2026-05-28T19:33:00Z"
        },
        {
          "tag": "v0.10.5",
          "kind": "patch",
          "published_at": "2026-05-28T18:50:05Z"
        },
        {
          "tag": "v0.10.4",
          "kind": "patch",
          "published_at": "2026-05-28T17:31:40Z"
        },
        {
          "tag": "v0.10.3",
          "kind": "patch",
          "published_at": "2026-05-27T22:21:32Z"
        },
        {
          "tag": "v0.10.2",
          "kind": "patch",
          "published_at": "2026-05-27T21:58:43Z"
        },
        {
          "tag": "v0.10.1",
          "kind": "patch",
          "published_at": "2026-05-27T21:36:49Z"
        },
        {
          "tag": "v0.10.0",
          "kind": "minor",
          "published_at": "2026-05-27T21:19:11Z"
        },
        {
          "tag": "v0.9.0",
          "kind": "minor",
          "published_at": "2026-05-27T19:44:36Z"
        },
        {
          "tag": "v0.8.0",
          "kind": "minor",
          "published_at": "2026-05-27T19:06:20Z"
        },
        {
          "tag": "v0.7.0",
          "kind": "minor",
          "published_at": "2026-05-27T17:40:25Z"
        },
        {
          "tag": "v0.6.8",
          "kind": "patch",
          "published_at": "2026-05-26T21:34:45Z"
        },
        {
          "tag": "v0.6.7",
          "kind": "patch",
          "published_at": "2026-05-26T21:09:04Z"
        },
        {
          "tag": "v0.6.6",
          "kind": "patch",
          "published_at": "2026-05-26T19:26:06Z"
        },
        {
          "tag": "v0.6.5",
          "kind": "patch",
          "published_at": "2026-05-26T18:51:56Z"
        },
        {
          "tag": "v0.6.4",
          "kind": "patch",
          "published_at": "2026-05-26T18:36:26Z"
        },
        {
          "tag": "v0.6.3",
          "kind": "patch",
          "published_at": "2026-05-26T18:08:08Z"
        },
        {
          "tag": "v0.6.2",
          "kind": "patch",
          "published_at": "2026-05-22T18:54:35Z"
        },
        {
          "tag": "v0.6.1",
          "kind": "patch",
          "published_at": "2026-05-22T04:43:26Z"
        },
        {
          "tag": "v0.6.0",
          "kind": "minor",
          "published_at": "2026-05-21T21:28:57Z"
        },
        {
          "tag": "v0.5.0",
          "kind": "minor",
          "published_at": "2026-05-21T20:44:29Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "467c81d7a1c4422dc5d61556d96e525ad69be462",
          "body": "* feat(blux): freeze map-placeholder transform (strip dead Google-Map DOM)\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n* feat(blux): freeze slider-pin transform (pin caslider to slide 1)\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n* feat(blux): run map-placeholder + slide\n[…]\nixture is unchanged.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): frozen render v2 — map placeholder + slider pin (#463)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-25T03:35:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "24b3d62ecb8c36ccbb93e18b8a08a9fbca2eb247",
          "body": "…on) (#462)\n\n* feat(blux-freeze): slot + token contract types\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n* feat(blux-freeze): settle (layout hydration) + tokenize text nodes\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n* feat(blux-freeze): deterministic image bake + share\n[…]\n no behavior change.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): frozen-page freeze + migrate (pixel-faithful Blux migrati…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-25T00:34:54Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4a1eeb94d754c0f4a99aaa1be158a46b1e04b03e",
          "body": "release-health.yml compared npm `latest` to main's package.json version and\nnothing else. That is structurally blind to a release workflow failing while\nnpm and main agree on the version — and that blind spot has now bitten three\ntimes, most starkly 2026-07-20..24: npm 12 changed `npm info --json` t\n[…]\nt returns `success` for main now and `failure` for the 2026-07-20..24 window.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(ci): alarm on release-workflow redness, not just npm drift (#461)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T21:06:36Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "3b3d2a32d56bd3d9179f151c341bf8ca5e6a73c9",
          "body": "Dependabot filed these on its re-scan after #459 merged; all are fresh\ndisclosures (the postcss advisory published 16:24Z today), not regressions\nfrom that PR.\n\n- postcss <=8.5.17 → 8.5.23 (GHSA-r28c-9q8g-f849, high, CVSS 7.5). Runtime\n  scope. `sourceMappingURL` auto-loading path-traverses out of t\n[…]\nist green\nincluding `loadBundledImages` and sharp's native binding at 0.35.3.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(deps): clear the 7 advisories disclosed 2026-07-24 (#460)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T20:41:37Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "499a123bda249d20eaeead1bd337a2d6d53568bf",
          "body": "…n CVE (#459)\n\n* fix(ci): pin release npm to 11.x — npm 12 breaks changesets publish detection\n\nnpm 12 changed `npm info <pkg> --json` to return an ARRAY of packuments\ninstead of a single object, dropping the top-level `versions` field.\n@changesets/cli reads exactly that field in getUnpublishedPacka\n[…]\nCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: unbreak the release workflow (npm 12) + clear the brace-expansio…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T20:29:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f8e3922a04858aaf1dc3f869aab5ae5ea30c0702",
          "body": "…solvable) (#458)\n\n* feat(blux): imgTag — url-based <img> for subgrid image media\n\n* feat(blux): emit subgrid image media as image_embed, not a nested Image field\n\n* test(blux): regen the-pointe golden + breadth for subgrid image_embed\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>",
          "is_bot": false,
          "headline": "feat(blux): emit subgrid image media as image_embed (Migration-API-re…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T19:15:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "775fe75469cc1e69a4a7d5e209f18bae42817665",
          "body": "…only (#457)\n\nbandVisual() emitted the full band-visual field set (content_padding,\ncontent_padding_mobile, text_align, column_width, column_side, heading_role +\nthe core min_height/max_content_width/vertical_align) for ALL four band\nslices. But only the blux_grid/blux_section models (and renders) d\n[…]\ned). New unit test asserts\ngallery+carousel drop the flow fields while keeping the core.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): scope band-visual emit — gallery/carousel get core fields …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T18:47:11Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "829a997421f7436eed74523ee36215b4bbe5f1b1",
          "body": "…#456)\n\nlookupDocIds built its uid→id map with no document-type predicate, so a\nrepo holding the same uid under two types (a cloned starter's page:home and\nthe migration's catalog_page:home) collapsed to one last-writer-wins entry.\nAn \"already exists\" update then PUT the doc's data onto the wrong-ty\n[…]\nalog_page pair (wrong doc ordered\nlast) and asserts the PUT targets the catalog_page id.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): key the migrate update-lookup by type+uid, not uid alone (…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T18:17:50Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f9f9cd4f4b2340a363fc2d7a19c05e02c494feed",
          "body": "Two coupled parts on the catalog EMIT pipeline:\n\nPart 1 — the migration now OWNS + pushes a `catalog_page` custom type. A\ncloned starter ships its own `page` type (the /new-site flow's), not the\nmigration's, so the migration must define the type its documents use. New\nmodule `catalog-page-type.ts` e\n[…]\n 4dd6c119…, that image\nin plan.assets, meta_description omitted (its description is \"\").\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): give migrated catalog pages a real SEO tab (#455)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T18:05:30Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "31151077093978e31104ac12b489414aaa81e219",
          "body": "… (#454)\n\nThe catalog pipeline emitted type \"page\", but the whole downstream stack\n(migrated Prismic repos + the starter render routing's getPageDoc) keys on\n\"catalog_page\" — the migration-owned page type, distinct from the template's\nown page type. Introduce a CATALOG_PAGE_TYPE constant used by emi\n[…]\nt; update the\ncatalog-doc-type test assertions + golden. Legacy band pipeline untouched.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): emit catalog_page (not page) as the migrated document type…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T17:06:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8ad571f49ed839c7890e38161582bad2c234cd2f",
          "body": "…css (#453)\n\n* fix(blux): sanitize cell body_html at the emit boundary\n\nbody_html is rendered via {@html} on the starter side but was the one such\nsink not sanitized, on the mistaken belief sanitizeHtml strips the class.\nIt does not — sanitizeHtml is a scalpel (strips <script>/on*=/javascript:\nonly,\n[…]\now carries the runtime :root mirror too and\nno future writer can drift. emit/catalog output byte-identical (command\ntests unchanged).\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>",
          "is_bot": false,
          "headline": "fix(blux): emit hardening — sanitize body_html + single-source theme.…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T15:58:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "633e24724651e7664b7fee360f7b24bf42d01348",
          "body": "…ext) (#452)\n\n* feat(blux-catalog): catalog spec types (Section skeleton)\n\n* feat(blux-catalog): bandToCatalogSection classifier\n\n* feat(blux-catalog): catalogSpecToPlanSlice + buildCatalogPlan\n\n* feat(blux-catalog): CLI 'catalog' action (plan-only, no sidecar)\n\nCo-Authored-By: Claude Opus 4.8 <nore\n[…]\n), concatenated\ninto theme.css. Enables the gate's role->font-size assertion.\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>",
          "is_bot": false,
          "headline": "feat(blux): Blux catalog → Prismic emit pipeline (+ role-aware cell t…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T06:13:55Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6ef2a0a25f12dafbc5eceb7da38e4ebdc71b53a8",
          "body": "…t once (#448)\n\nAn apex-configured Airtable url that 301s to www (Vineyard, 2026-07-17)\nmakes EVERY probed route pay a redirect hop; under the audit's own probe\nburst that hop tipped two heavy gallery pages over the nav timeout and\nflagged a healthy site \"no response\". Fixing the Airtable url worked\n[…]\netch).\n\nVerified: lint, typecheck, full suite (2983 passing, 10 new), build +\ntest:dist.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(audit): probe the canonical host — follow the base URL's redirec…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-20T16:50:57Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8b879ec7c41f8baa351951dc080d76813cb8a3f2",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#446)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-20T04:07:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0a591a10461a5d99f263266cd59b4a54db9e10b9",
          "body": "Clone-template hygiene (starter PR #75) removes agency process docs from\nthe public template every client site clones. The new-site-workflow pair\nis still-referenced fleet process — the new-site skill hands off to the\nworkflow spec — so it moves here, the fleet-process home, rather than\ninto git his\n[…]\nrries an adoption note; content otherwise\nverbatim from starter origin/main (plan re-wrapped by this repo's\nprettier).\n\nDocs-only: no changeset.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: adopt new-site-workflow plan+spec from reddoor-starter (#447)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-20T01:32:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "34f0f7eb78e66d609eff258e8b9620d8fa19f658",
          "body": "…ain> on mobile (#445)\n\nThe sweep only caught the erpfunds.com blank-page outage because the desktop check\nrequires a visible <main>. Two gaps let the class slip: the mobile check asserted only\n200 + no-console-error + no-overflow (a blank page passes all three), and nothing\ndetected an unsubstitute\n[…]\n a visible <main> on the mobile checks\ntoo. TDD: summarizeBrowser + browserAudit tests; full suite + typecheck + dist smoke green.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(browser-audit): flag unsubstituted %sveltekit tokens + require <m…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-19T00:48:32Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6fbafe971a2679e8e9838b47c569e12f706614f2",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#444)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T19:56:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9fd165aff63f20298c5f5a2663b16270e398feab",
          "body": "…ducts feed (#442)\n\nA Blux \"products\" feed drives a detail page per record (/products/<slug>) from\na Handlebars template the static export drops. Rebuild the catalog\ndeterministically at convert time:\n\n- Canonical categories: the raw feed is dirty (whitespace/case variants + the\n  typos \"Upholstrere\n[…]\nalizeProducts (+15 tests); exposes extFor from feed-grid for the\nshared image-ext logic. Data foundation for the /products/[slug] detail route.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit products.json — cleaned product catalog from the pro…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T18:47:16Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b93eece8cfbacb390e737f131489649434902bd5",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#443)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T18:28:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "99f1a5612698b7845892593a031ef0e027e7933b",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#407)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T16:40:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e9dd401b4862914d31bb50a740dae45193304588",
          "body": "…inked) (#441)\n\n* feat(blux): emit site-config.json (nav dropdowns + footer)\n\nThe page-focused convert dropped the site chrome. buildSiteConfig parses the\nexport's NESTED navigation tree (top items with optional dropdown children +\nthe resolved logo url) and the footer (enabled social networks + the\n[…]\nxactly the Footer's renderable\n  set and added reddit for parity.\n\n+4 tests.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit site-config.json — nav dropdowns + footer (socials l…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T16:39:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9929699e2a56084b25aea57857ed920f81f111d8",
          "body": "…(#440)\n\nA full-page hero slide is stack[media, title, body] — the title was the\ncaption but the body (the project location / design credits) was silently\ndropped. carouselSlides now captures the first non-blank body/subtitle after\nthe title as a subcaption; the emit threads it to the page-doc item\n\n[…]\nroven on composition: the home hero shows \"Headquarters\" over \"Ontario,\nCalifornia\", \"MAR MONTE HOTEL\" over its design/procurement credits, etc.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): a hero carousel slide carries its secondary caption line …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T07:20:57Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7d94803bb1f5762d249b55c202eb1a1c14b65279",
          "body": "Gallery/portfolio tiles rendered at their natural (tall, varied) height with\nthe caption in a row below. The original crops each tile to\nsourceConfig.mediaRatio (4:3) and overlays the caption ON the image\n(layout: behind, overlay: true) — so a tile is only as tall as its image.\n\n- Media gains cropRa\n[…]\n5698px -> 12036px (live 11087), band 2\n3702px (live 3644) — uniform 4:3 cards like the original. Render change lands\nin the starter. 2939 tests.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): feed-grid tile cropping + overlay captions (#439)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T06:55:53Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "0b6734837d9acf5951ca925b18e943a6e5a103ea",
          "body": "A .caslider whose slides are stack[media, title, location] (image + a heading\n+ a secondary body line) was rejected by the exact stack[media, heading] slide\nmatch and fell through to the faithful Grid — rendering all N slides stacked\nfull-width. Composition's home hero was 18 slides tall (~18000px) \n[…]\ne\nawaits a caption-model extension.\n\nProven on composition: home band 0 now Carousel(18) at 80vh (~800px in dev),\nnot an 18000px stack of tiles.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): classify a full-page hero slider as a Carousel (#438)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T05:31:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9327af29300666e33ed3ebcf719f1e4d9c389ae1",
          "body": "A fresh full review (the first was cut short by a session limit) found six\ntile-fidelity gaps vs live. Five were real and are fixed; one — a \"code-point\"\ntitle sort — was refuted by the export's own sort JS (it uses localeCompare,\nwhich the original code already matched), so that one stayed.\n\n- Tag \n[…]\non: gallery 132 -> 139 images with captions, interior band\n100 -> 107 (= live), zero double-escapes, zero token leaks, urls resolve.\n2935 tests.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): feed-tile fidelity from a full adversarial review (#437)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T04:40:41Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7fec1477aa931632f803497b51af5fc8675c8926",
          "body": "…s CI (#436)\n\nrelease.yml already passed RENOVATE_TOKEN to the changesets action (fixing PR\nauthorship), but actions/checkout still configured git with the default\nGITHUB_TOKEN — so the bot-branch PUSH used GITHUB_TOKEN, which is\nrecursion-guarded (no push event) and makes the pull_request runs trig\n[…]\nse/main branch so the required build check goes green without an\nadmin approving each release. Publishing still uses npm OIDC (id-token: write).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci(release): checkout with RENOVATE_TOKEN so the version-PR push fire…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T04:05:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c1a75ce7a0b73caceb27441fdf83703ee3f7152a",
          "body": "The Version Packages PR's required `build` check has been stuck in\n\"action_required\" on every re-push: its pull_request runs (authored by\nRENOVATE_TOKEN, see release.yml) are gated behind manual approval, so the\nrelease could only merge after an admin approved each run. A push event is not\nsubject t\n[…]\n on the same\nSHA, so adding the bot branch to push.branches lets the release PR go green on\nits own. No package behavior change (workflow-only).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: run ci.yml on the changeset-release/main bot branch via push (#435)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T03:57:53Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1899030ab066ff95952b7988e2d2facd0806a2ea",
          "body": "* feat(blux): materialize feed-grid tiles from records\n\nGallery/portfolio grids render their tiles CLIENT-SIDE from feed records —\nthe static export ships only the display:none {{…}} template (dropped last\nround), so those bands converted empty. convertSite now rebuilds the visible\ntiles DETERMINIST\n[…]\nnded\nunverified); I evaluated all three against the code and export directly.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): materialize feed-grid tiles from records (#434)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T03:49:49Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "257888ead06b6291004be1f4725eafdcf0626783",
          "body": "* feat(blux): whole-site multi-page convert — every page through the faithful-grid pipeline\n\nPreviously only index.html got the faithful treatment; inner pages existed\nsolely as the archetype path's low-confidence block guesses. Now:\n\n- normalizePages derives each page's routing path (source `url` w\n[…]\nth.\n\nAdversarial-review catch (the migrate path is creds-gated, so untested).\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): whole-site multi-page convert + feed-template drop (#432)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T23:43:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "fdc984318fc19e3611d1bbc3b0ecbd493d606845",
          "body": "…le chips, site-page alarms, validity fixes (#433)\n\n* feat(dash): digest spam telemetry, contact-only unread count, turnstile chips, site-page alarms, validity fixes\n\n(a) A \"Submissions (24h)\" telemetry section in the nightly digest — new leads vs\nnewsletter/rsvp signups vs auto-filtered spam, per-s\n[…]\narity test stays as a\nbehavioral cross-check that the two entry points agree.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(dash): digest spam telemetry, contact-only unread count, turnsti…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T23:31:23Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ae03d9b8bb776a34fd5a4833290db8ad3670e0a8",
          "body": "…-fix counter reset (#431)\n\nThree cockpit-honesty fixes:\n\n1. Pre-launch mute pierce: a \"launch period\" site still mutes expected\n   pre-launch conditions (early/absent Lighthouse, errored deploy,\n   Renovate/analytics warnings), but a genuine alarm — any critical-severity\n   item, or default-branch \n[…]\n. Increments keep\n   their active + repo-backed filters. Adds a base? injection seam\n   (runDigest pattern) so the clean-fleet path is testable.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(cockpit): pre-launch mute honesty, legacy-status visibility, auto…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T23:19:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7c75ca9c8b2a9c757adaa636cc4503e47be42009",
          "body": "…ks and the link checker (#430)\n\n* fix(audits): extend WAF-challenge honesty to crossbrowser/mobile checks and the link checker\n\n#428 taught the browser sweep to re-verify route reachability with a plain\nfetch before a fail persists, but the very same challenge still poisoned the\nother verdicts: a 4\n[…]\ncused\nevery run — accepted as undecidable with today's signals. Comment-only.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(audits): extend WAF-challenge honesty to crossbrowser/mobile chec…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T23:15:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9012b897a59925440fe4a11f46791ff32592e257",
          "body": "…ers, FlexHeight column fill (#429)\n\n* feat(blux): capture the nested block-in-cell — min-height, background layer, valign\n\nA grid cell holding a FULL Blux block pins its box with inline min-height\n(80vh/800px/90vh on the-tower bands 1/3/5), paints it via an abs-fill\nblock-background-layer (a gradie\n[…]\nable); slice\nclassifications across all 12 Desktop exports identical to main.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): nested block-in-cell capture — min-height, background lay…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T22:22:29Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7d065b948ef707d6f568cb8bc6ef7d5d73492abe",
          "body": "…k-seen on /submissions (#426)\n\n104 rows sit status='new' (oldest 2026-06-15); ~20 are outreach spam that\nTODAY'S classifier would bucket — they arrived before the 2026-07-15 tuning\nand there was no retro re-score, and the operator had no bulk action (104\none-by-one clicks).\n\n- `submissions rescore`\n[…]\naths share one guarantee: only status='new' rows are ever touched —\n  spam and operator-triaged rows are immune (guards live in the db helpers).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(submissions): re-score CLI for the pre-tuning backlog + bulk mar…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T21:45:30Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c00920cbdc93710bec55150246025574ba19a0c6",
          "body": "…ing + cockpit alarm (#427)\n\nThe Espada failure mode: apm@espada-pm.com bounced 4 of the last 8 lead\nnotifications and NOTHING alarmed — notifyStatus 'sent' only means Resend\naccepted the email.\n\n- resend-webhook: a bounce/complaint event's email id is checked against\n  submissions' resend_message_i\n[…]\nw shows a visible red\n  'notify bounced' chip on the summary line (the #419 visible-not-tooltip\n  rule) plus 'bounced' in the Notify detail row.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(forms): bounced lead notifications become visible — webhook mapp…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T21:02:49Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "797a5f1bd48637f90cc54c67713458602c105b22",
          "body": "…ty + honest titles-meta (#428)\n\nThe 2026-07-16 sweeps failed Titles & Meta on 10 of 11 live sites and\nUptime Reachable on MSOT/Sonder/Reddoor while every URL answered 200 to\na plain fetch. Live reproduction against reddoorla.com showed the root\ncause: Netlify's bot protection serves 403 challenge i\n[…]\n passes and titleMeta fails HONESTLY (6 pages\nmissing meta descriptions + /process serving the About title — real\ncontent findings, each named).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(audits): stop the browser sweep crying wolf — verified reachabili…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T20:48:28Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8e7f6eb95c1919996e61b8960cafc9a0c59fb89e",
          "body": "…er-caught sprays + full-bucket facets (#425)\n\nPass-2 adversarial review fixes (3 confirmed findings):\n\n- Duplicate scan exempts same-sender same-site matches: a genuine visitor\n  resending an identical message was silently bucketed AND the delivered\n  original retro-flipped — an active lead vanishe\n[…]\ne\n  rollout runbook directs the operator to judge the canary from it).\n\nDuplicateMatch now carries siteId+email for the exemption.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms/dashboard): genuine-resubmit exemption + retro for classifi…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T05:56:34Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "809ea23005ff8448fd09ede23708e0cca6c641b2",
          "body": "…e (#424)\n\nThree captures from the final live-diff pass over the-pointe:\n\n- A LONE width-constrained cell (grid-2-r60 in a bare grid container) keeps\n  its row: the token IS the content column's width. Flattening it to a stack\n  rendered bands 9/11's 60% column full-width (headings 42% oversized).\n-\n[…]\nnderline }`: an\n  inline-block box does not inherit an ancestor's text-decoration, so the\n  affordance vanished when `.ib` landed.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): lone width-token rows, valignmiddle hint, .links underlin…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T05:37:01Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6a5807eb3f7af2cc4f6b08eaadda868428d1beaa",
          "body": "…-property flag (#423)\n\nBatch 4 close-out of the 2026-07-15 adversarial-review findings:\n\n- Guardrail: /health's forms.turnstile (read nightly, previously dropped) now\n  persists as the 'Turnstile widget' Airtable field; requireTurnstile + fresh\n  widget-fail raises a CRITICAL cockpit/digest attenti\n[…]\neryMissed's \"set an explicit Search\n  query\" which permanently silenced the missing-property case. Separate --due\n  summary lines.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat: Require-Turnstile guardrail + solved-hostname check + honest no…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T05:02:48Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c758fff9fc6e2dac90d446a0dc0523563263a569",
          "body": "Converted trees carry the raw anchors verbatim (class=\"ib middle buttonsN\"),\nso without the declared skins a button renders as a bare link — the-pointe's\n\"Burbank Incentives\" ran 13px short of the original's padded, bottom-ruled\nbutton.\n\nThemeIR.buttonStyles captures each styles.buttons entry (value\n[…]\nover/:active) and\nthe .ib inline-block base (an inline anchor would ignore the skin's vertical\npadding) to both theme.css outputs.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit the export's button skins (styles.buttons) (#422)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T04:52:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "a3f167b819e01ba02a5598adaa39daca74c95390",
          "body": "…gh the peel (#421)\n\nLive Blux contains each grid cell's block margins (a block-content clearfix\nblocks the collapse) and insets cells via their containers' inline padding —\nband 11's lone heading sits in a 20px/30px padded cell the flatten silently\ndropped, leaving the band 122px shorter than the o\n[…]\nes not\nflip to Grid. Golden shapes churn accordingly (bands 1/3/5/6/9-12); the\nvalidate golden still reports zero layout findings.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): preserve grid-cell containment + cell-level padding throu…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T00:43:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c19cb804503ac493e36295df815df98fe513ff75",
          "body": "…n + retroactive re-bucket (#420)\n\nLive analysis showed the biggest residual spam classes evade per-message\ncontent scoring: template sprays with per-site substitution (the live\ndog-harness spray differed ONLY in greeting; SEO sprays swap the target\ndomain per site), the same sender blasting multipl\n[…]\near-dupe pair (a\nname-substituted \"Trusted Virtual Team\" spray at Jaccard 0.970); no\ngenuine message pairs collide under the shipped thresholds.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(forms): cross-site repeat-sender + near-duplicate spray detectio…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T00:39:02Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f7bda7999622dd5e8630b76f8ff22f0b5bf0e7cc",
          "body": "…e spam reasons, facets, honest per-site counts (#419)\n\nThe operator just enabled Require Turnstile on the canary site and must\nwatch its spam_auto bucket for a week to confirm zero real leads get\ncaught. Three confirmed review findings made that impossible from the\ndashboard:\n\n- spam_reason only su\n[…]\nry metric with the very rows under watch. Delivered now excludes\n  both statuses and a new \"Auto-filtered\" row counts spam_auto in the\n  window.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(dashboard): make the requireTurnstile canary reviewable — visibl…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T00:38:33Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "99c2aae204c06680a1ee8764572971e57e8aee2f",
          "body": "…418)\n\nBlux's vertical rhythm between stacked blocks lives in the text styles' own\nmargins (Grid Titles / Caption Body etc. declare \"10px 0\"), collapsing in\nnormal flow. The emitted .txt-role-textN rules hardcoded margin: 0, which\nflattened that rhythm — the render papered over it with a uniform sta\n[…]\nlues), emitThemeCss\nemits --text-textN--margin, and emitRolesCss applies\nmargin: var(--text-textN--margin, 0) — flush stays flush.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): carry text-style block margins into the role utilities (#…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T00:11:41Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "e972d5fb60272f1e8e3ffb543e90584fe02d1c78",
          "body": "…e miss corpus (#417)\n\nOperator policy: fleet sites are niche and rank top for their own names;\nclients wanting SEO help ask directly — SEO-topic content through the public\nform is near-always solicitation. Overblock accepted, spam_auto recoverable.\n\n- Seller keyword weight 25->30 (cap 90): two soli\n[…]\new: marked-spam recall 8/20 -> 19/20; 16 more unmarked\nspam rows bucket (all hand-verified solicitation); zero genuine leads flip.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(forms): aggressive SEO/solicitation filtering tuned from the liv…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T23:50:40Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c84f1a12134daa9b84b1a159b42a6299de60683f",
          "body": "…n (#416)\n\nThe Blux clickMap widget switches the area below the map between N sibling\ncontent panels, one per toggle — on the-pointe, the address grid plus three\ndisplay:none logo strips the convert already parses (as white cards since the\ncard capture). Without a marker the render would stack all N\n[…]\ncated-map Grid bands. MapToggle.panelIndex already carried\nthe toggle→panel order, so this completes the linkage the render needs.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): mark the map widget's toggle-panel row in the presentatio…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T23:37:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1166187538a9bd7f53bd3611ca8a85cf659d4b04",
          "body": "…d it at convert time (#414)\n\nEvery Blux export declares its favicon as a bare media uuid in\nsettings.favicon whose CDN url appears only in the rendered\n<link rel=\"icon\"> tags — the uuid is routinely absent from the media\ndict. assembleIR now resolves it from the scraped urlMap onto\nSiteIR.meta.favi\n[…]\ntwork blip\nnever fails an otherwise-offline convert, and convertExport stays\npure. Either outcome is named in the convert summary.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): capture the export favicon (settings.favicon) and downloa…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T23:37:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "fb4b3c6ed62ebe5b6668426e3b20f5c795c55621",
          "body": "…rdening (#415)\n\nReview-pass fixes (adversarially verified, live-data-replayed):\n\n- Gibberish rule: >=5-consonant-run (y as consonant) fired on 3,138 dictionary\n  words (psychology, worthwhile, nightclubs) — +35 gibberish + one pasted link\n  silently bucketed whole genuine-lead verticals. Now run >=\n[…]\nomment corrected (described pre-#412 semantics) and now\n  records the rollout precondition (deployed package must forward tokens).\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): stop the classifier silently bucketing genuine leads + ha…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T23:26:08Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ea45e71de78b8b82dc9e4643830bb04fe50fbeb4",
          "body": "…ckground (#413)\n\nA Blux card's `.blocksN` fill carries the background-color while its\n`.blocksNcontainer` carries the content inset (e.g. padding: 100px 4% 80px).\nThe layout-wrapper peel dropped the padding, so a restored card rendered with\nits fill hugging the text — the-pointe band 3's white stat\n[…]\nmap, so no change there.\n\nFixes band 3's stats card and its band-14 listing cards (both now carry padding\nin the golden manifest).\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): capture a card wrapper's content padding alongside its ba…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T22:35:06Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "0d543e8e074beddc6e9c42c34673503696ae05c4",
          "body": "…e-body velocity (#412)\n\nTwo ingest-time spam defenses for the direct-POST outreach flood the content\nclassifier can't reliably catch. Both bucket to the recoverable spam_auto status.\n\n- verifyTurnstile gains an \"absent\" outcome (secret configured but no token\n  forwarded). A real browser rendering \n[…]\nter forms skipped, bodies\n  under 40 chars ignored, no-op when already spam. Best-effort — a lookup failure\n  never blocks a lead.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): block missing-token submissions on gated sites + duplicat…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T22:29:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7864bfe038017116846b60b1d5603f8bccb6d462",
          "body": "…ws (#411)\n\n* feat(blux): capture peeled card-wrapper background-color onto grid rows\n\nThe grid parser peels pure-layout wrapper divs (`.blocks0` with no grid token)\nto reach structural content — dropping any inline `background-color` they carry.\nSo a Blux \"card\" (a `.blocks0` with a white backgroun\n[…]\ng band 3's white stats card survives the rewrite.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): capture peeled card-wrapper background-color onto grid ro…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T21:58:46Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5009135ea4e4092551783664682f5faed29db18b",
          "body": "…d 100->60 (#410)\n\nLive data showed spam_auto=0 across 127 recent submissions while ~1-in-4\ndelivered messages were spam. Add multi-word cold-outreach/SEO keyword phrases,\na consecutive-consonant-run gibberish signal (real words never exceed 4 in a\nrow; latin-only so native-script names are untouche\n[…]\necision signals bite. Measured 8/20 marked spam now bucketed (was\n0/20) + unmarked inbox spam, 0 false positives on genuine leads.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): catch cold-outreach/gibberish/bare-domain spam + threshol…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T21:35:27Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1709b8d3c8f471eb67b79b706949574a7224a752",
          "body": "… discoverability (#409)\n\nReplace the three hardcoded accept-string branches in assignTier with a\nstructured-candidate list + one generic matcher, keyed on stable accept-key\naliases (netlify/no-domain/etc.) instead of volatile reason text. Surface the\nprimary accept token on each watch chip for disc\n[…]\nse tolerate both Multiple-Select arrays and delimited\nlong-text. Acceptance stays watch-only (below the attention short-circuits).\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(cockpit): generic accept-key matcher for watch conditions + chip…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T21:12:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5cab8224c15b9f60838b8c942c787dae9c7c6b44",
          "body": "…default misses (#408)\n\n* feat(reports): default Search Console query to site name + flag name-default misses\n\nBrand search presence enrichment previously ran only when an operator hand-entered\na `Search query` on the Websites row. Now `fetchSearch` runs for any analytics-enrolled\nsite (GA4 property\n[…]\nore: changeset for search-query site-name default\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(reports): default Search Console query to site name + flag name-…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T19:15:50Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8152804e0635bbbc97cbbda2868d9be16b41b9c7",
          "body": "… (#406)\n\n* docs(blux): export-defaults plan — class-default padding, text-style deviations, media alignment\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blux): capture band blockClass + text-leaf style deviations\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blu\n[…]\nnthropic.com>\n\n* test(blux): lock copy-never-mutate on shared styleFor record\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit export class-default padding + text-style deviations…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T17:41:30Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "fc3ca065423146bfdf6c79b06c13855d48527427",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#402)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T17:40:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0b9c57ce5dbdc1cef8fa30b5923ea59ffb83841b",
          "body": "…ecover 3 morning reports (#405)\n\n* fix(forms): guard createIngestAction buildPayload — throw becomes fail(400), not a 500\n\nA site mapping like form.get(\"email\")!.toString() throws on an absent\nfield; endpoint.ts already wrapped buildPayload for exactly this, the\naction path didn't. Mirrors the endp\n[…]\n <noreply@anthropic.com>\n\n* docs(journal): log #405 — LOW sweep\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "chore: LOW sweep — forms/audit/dashboard hardening, env-doc drift + r…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T16:50:05Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "a3b48735d7e7370bff5376b3e5805234d9806be5",
          "body": "…ccount runbook (#403)\n\n* feat(reports): GA/Search impersonation-subject failover list\n\nGA_SUBJECT now accepts a comma-separated list of Workspace subjects\ntried in order (single address unchanged as the degenerate case).\nBoth the GA Data client and the Search Console client fall through to\nthe next\n[…]\nboth mixed\norderings through the real fetchSearchPresence path.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(reports): GA/Search impersonation-subject failover list + role-a…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T16:44:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "2ab91f6125993c32af31bc2f736b0d4a454fdead",
          "body": "… (toFrequency) (#401)\n\n* fix(reports): unrecognized-frequency guard moves to the read boundary (toFrequency)\n\ntoFrequency silently coerced any non-exact Airtable frequency value to\n\"None\" at mapRow time — BEFORE due.ts's '⚠ unrecognized frequency' warn\n(added in #197 precisely to stop a silent unsc\n[…]\nxactly once (adversarial\nreview of #401, test-hygiene finding).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(reports): unrecognized-frequency guard moves to the read boundary…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T16:39:42Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4c4a036bc218831088231168576c424e1dac5680",
          "body": "…5, promotional-phrase verticals, glued-URL counting (#404)\n\n* fix(forms): classifier false-positive tuning — non-Latin body-only +25, promotional-phrase verticals, glued-URL counting\n\nMEDIUM-4: non-Latin script scores on the message body only (a native-script\nname is not a spam signal) and the weig\n[…]\nal-phrasing loop so a\nsingle-phrase regression is identifiable.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): classifier false-positive tuning — non-Latin body-only +2…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T16:26:41Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "76d39a16ad100406494ac72089d60553f82d6a03",
          "body": "…ight 70→50 (#400)\n\n* fix(forms): map benign Turnstile error-codes to unverifiable; fail weight 70→50\n\nCloudflare returns success:false with error-codes [\"timeout-or-duplicate\"]\nfor a token that merely expired (300s TTL — a human filling a long form) or\nwas re-submitted (double-click / back-then-res\n[…]\nc.com>\n\n* docs(journal): log PR #400 (Turnstile benign error-codes fail-open)\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): map benign Turnstile error-codes to unverifiable; fail we…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T22:54:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "bcb1682c73aeb6c9d062c2da43b33e95aa46984b",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#397)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T16:41:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b08b740c57239faff34a6161e893dbec4d448aab",
          "body": "…jml alert (#399)\n\nws <7.5.11 and 8.x <8.21.0 (memory-exhaustion DoS, via lighthouse/@lhci and\nlibsql/puppeteer-core), js-yaml 3.x <3.15.0 (merge-key DoS backport), and\nprotobufjs <=7.6.2 (GHSA-f38q-mgvj-vph7) get capped pnpm overrides. mjml's\nmj-include traversal has no 4.x patch — GHSA ignored + Dependabot alert\ndismissed tolerable_risk (only repo-committed templates are compiled).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "chore(security): pin ws/js-yaml/protobufjs dev-transitives; dismiss m…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T08:06:16Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "d3a3caf1aa62298089cfea70d0344441e4e8df78",
          "body": "… captions (#398)\n\n* feat(blux): parse .caslider slider marker + media min-height\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n* feat(blux): CarouselSpec + slider-row classification\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n* feat(blux): Carouse\n[…]\ne blockPlainText behavior (entities decoded, hard breaks kept).\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): Carousel slice type — slider bands emit slides + editable…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T07:55:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "259392bf5be2e47e628e2e2d16a7ce594088e1e5",
          "body": "…/maintenance (#396)\n\nThe release workflow has failed on every push to main since the changesets\naccumulated: `changeset version` errors with \"Found changeset X for package\nreddoor-maintenance which is not in the workspace\" — 10 changesets (all the Blux\nones + the smoke-port one) declared the pre-or\n[…]\norla/maintenance → minor). Once this lands on main the\nrelease workflow's version step succeeds and opens the Version Packages PR.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(changeset): correct package name reddoor-maintenance → @reddoorla…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T04:09:23Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "64e3e099d272a2005844e62830e6cd06cc284b60",
          "body": "… casliders (#395)\n\n* fix(blux): recover captions nested inside a media holder + drop empty casliders\n\nTwo coupled parser fixes for the band-8 archetype (a captioned image slider):\n\n- Media-leaf caption capture (A): Blux slider tiles nest the slide caption\n  (block-title/body/subtitle) INSIDE the .c\n[…]\no-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n* chore(blux): prettier-format the band8 changeset\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): recover captions nested inside a media holder + drop empty…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T02:45:54Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7e876e5e366f22759f2eaa41c8ad881b1e87bce7",
          "body": "…s, map (#394)\n\nSeven additive faithfulness fixes surfaced by auditing the emit output against\nthe real the-pointe export; none touch the core media-leaf/wrapper-peel path:\n\n- Band backgrounds carry background-size (auto/contain) + non-center\n  background-position (readBgSizing) — corner accents sto\n[…]\nxtract-map, convert, presentation. Unit tests +\ngolden updated; the convert-golden stub resolver now mirrors the real passthrough.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): emit fidelity pass — backgrounds, video, title roles, font…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T02:15:52Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "511b815ae6bd2fc655c49fdd0a579c1f076ad033",
          "body": "Blux's grid token `grid-1-s40` / `grid-any-s20` encodes the grid's inter-cell\nspacing (matching `data-spacing`), with the column count in `data-columns`. The\nparser stored that `s` value as `sized` and the render layer treated it as a\nwidth percent — so a single-column stat list (`grid-1-s40`, four \n[…]\nencodes.\nGolden convert snapshot updated (band 3/10 tokens); token + classify + validate\ntests updated to the corrected semantics.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): parse grid -s<N> as spacing, not cell width (#393)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-13T21:19:36Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "d3c32edd826fc820b3d4bfbff772ebb77f33bd34",
          "body": "…il capture (#387)\n\n(1) The site→central ingest call had NO timeout: a central function hung\nmid-deploy left the visitor's submit awaiting until Netlify killed the\nsite function at its 10s sync limit — a broken response instead of the\nfriendly error copy (espada's 2026-07-10 form-e2e warns surfaced \n[…]\nut it (local browser + raw-POST repros all pass; the\nfailure is runner-environment-specific, so the probe itself must name\nthe server response).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): 8s abort budget on submitToIngest + form-e2e failure deta…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-13T18:08:42Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ef63b0fe44cf4ff377d27fb3908445eea77ef8c5",
          "body": "… (#392)\n\n* feat(blux): faithful-grid emit — media sizing, hard breaks, CTA links\n\nBackport three faithful-to-export extractions the emit pipeline was\ndropping, so future Blux sites inherit them instead of per-site hand-edits:\n\n- Media intrinsic width/aspect/fit off the foreground image holder\n  (in\n[…]\nand subtitle newline robustness. 2475 tests pass.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): faithful-grid emit — media sizing, hard breaks, CTA links…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-13T17:42:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f88ad2101a1d160d9abb92e4c0771c6e3f1d76aa",
          "body": "… (#391)\n\nParser captures a <video>'s CDN base from its src so mediaCdnUrl rebuilds the url offline — a video no longer depends on site.json listing the asset (restores convert's offline invariant). the-pointe converts FAITHFUL offline; no golden churn.",
          "is_bot": false,
          "headline": "fix(blux): resolve <video> media offline via its src-derived CDN base…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-12T06:04:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e5039288017dc64529b65c36c1728032858a65b0",
          "body": "…n gate (#390)\n\nOffline fidelity gate: validateLayout diffs the classified SliceSpec[] (source answer key) vs the emitted presentation manifest, naming band/media/map drift. blux convert appends a fidelity report (exits 0); blux validate gates (exits 1 on findings). Shared convertExport; grid-validate golden pins the-pointe → 0 findings.",
          "is_bot": false,
          "headline": "feat(blux): faithful-grid plan 6 — offline layout-signature validatio…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-12T05:54:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e38cf9dea78edd705679c7cc4362a8f64e9b38b",
          "body": "…tation manifest + Prismic-host media) (#389)\n\n* docs(blux): plan 5 — grid emit paths (page doc + presentation manifest + map)\n\n* docs(blux): plan 5 — Prismic-host media (two-phase convert+migrate rewrite)\n\n* fix(blux/grid): data-exec embeds survive as raw leaves (map mount peel)\n\n* feat(blux/grid):\n[…]\nblux/emit): share mediaUrl resolver; golden contiguity tripwire; changeset\n\n* chore(blux): prettier-format plan-5 files\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): faithful-grid plan 5 — grid emit paths (page doc + presen…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-11T23:28:47Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b087dc70f5d240712040f8b9baa941fb4f566e5d",
          "body": "…e (faithful-grid plan 4A) (#388)\n\n* docs(blux): plan 4 — extract-map + LocationMap (+ sanitized map-band fixture)\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blux): extract-map — map config from the rendered initMap script\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n[…]\nx): extract-map review hardening — anchored visibility probe, no toggle holes\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): extract-map stage — map config + real isMapMount predicat…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-11T14:56:40Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "722198eaafa911c6593bacf5c1df4eb9178f2df2",
          "body": "…mit] (#385)\n\nreddoor-website's contact form submits via <input type=\"submit\"> — a\ncompletely standard control the probe's button-only locator never\nmatched, so its first enrolled run burned the 30s click timeout and\nrecorded a false Form E2E OK = fail. Widen the locator to both variants.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(form-e2e): click input[type=submit] too, not only button[type=sub…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-11T00:00:37Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "94073af6268b01448530ec7c9607f0f0c8dd74ff",
          "body": "…lan 2) (#384)\n\n* docs(blux): plan 2 — band classifier + widget router\n\n* feat(blux): SliceSpec IR for the grid band classifier (plan 2)\n\n* feat(blux): node-inspection helpers for band classification\n\n* docs(blux): prettier-format plan 2\n\n* feat(blux): classifyBand skeleton + Grid fallback + barrel \n[…]\n <noreply@anthropic.com>\n\n* docs: changeset for blux band classifier (plan 2)\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): band classifier + widget router — Band[] → SliceSpec[] (p…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T07:16:08Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f1d7d1c31321e4eb96408e57fd6962b06701a24c",
          "body": "…r (#383)\n\nThe live runner now refuses to submit to any site whose /health does not\ndeclare forms.testMode: true (strict boolean, fail-closed on unreachable/\nnon-2xx/unparseable) — a new testModeUndeclared outcome maps to a plain\nskip with no details, preserving the prior verdict (distinct from the\n\n[…]\n same FLEET_WRITE_SUMMARY gate + tracking-\nissue alerting as fleet-smoke. Refresh the audit's stale Tasks-5+6\ncomments (both landed 2026-07-08).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(form-e2e): /health declaration preflight + nightly fleet produce…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T02:02:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4dfbec0087c7934854d097d85d85c8ad3e7d899b",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#363)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T01:26:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fe36b984634725424749959beeea27464421baaa",
          "body": "… fallback (#380)\n\nThe recipe's routes manifest hardcoded hydrationMarker: \"footer\". On a\nbespoke site whose Svelte source never renders a literal <footer> element\n(a capital-F <Footer /> component tag proves nothing), that marker false-\nfails EVERY route check — exactly how la-homelessness-initiati\n[…]\nhe recipe notes.\nNo svelte files at all → no signal → starter default, so the template's\nbyte-fidelity invariant holds for starter-shaped sites.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(smoke-suite): detect the hydration marker — footer → main → body…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T01:25:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c899f67893cd8618ca5741f1ce577d798397d0be",
          "body": "…#381)\n\n* feat(smoke-suite): detect the hydration marker — footer → main → body fallback\n\nThe recipe's routes manifest hardcoded hydrationMarker: \"footer\". On a\nbespoke site whose Svelte source never renders a literal <footer> element\n(a capital-F <Footer /> component tag proves nothing), that marke\n[…]\nself\nso every re-exporter inherits the R1.1 binding on its next package bump.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(configs): shared playwright-a11y base honors REDDOOR_SMOKE_PORT (…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T01:04:25Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "58f0b665fa0561fec1958eca02a16b5833a4e1ee",
          "body": "… (#379)\n\nThe smoke audit built its failure summary from stderr.slice(0,200), but\nPlaywright writes its failing-test list (which test, expected vs received)\nto stdout — so the nightly fleet-smoke run captured only a `[WebServer] npm\nwarn …` line and hid what actually broke. Add summarizeSmokeFailure\n[…]\nad + the \"N\nfailed\" tally from stdout (ANSI-stripped, capped at 300 chars), falling\nback to stderr only when stdout carried no reporter output.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(smoke): surface the real Playwright failure, not stderr npm noise…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T22:44:31Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "46b0387a13061d32582e14b84f4c790e04478be0",
          "body": "…(plan 1) (#378)\n\n* docs(blux): plan 1 — grid-tree parser (rendered index.html → Band[])\n\nRecovered plan doc onto a clean isolated worktree branch after concurrent\nfleet-health work thrashed the main working directory's HEAD. Spec already\nlanded on main; this restores the implementation plan.\n\nCo-Au\n[…]\ner-format grid module; ignore html golden fixture\n\n* docs(blux): clarify forward-declared widget + Band.index semantics\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): grid-tree parser — rendered index.html → faithful Band[] …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T21:43:32Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "52c19807456b65654198649b446a5ae7c414d646",
          "body": "…kpit) (#377)\n\nA site typed \"launch period\" is PRE-LIVE prep (Status flips to \"maintenance\" at\ngo-live via a Launch report), but it was enrolled in both \"this site is live\"\nclassifiers, so a not-yet-live site (e.g. alamo-anatomy) was audited as production\n(deploy/domain/uptime/CMS fail → red), draft\n[…]\nou\" feed, and counted as pre-launch (not healthy/broken) in the verdict.\n\nVerified: pnpm test (234 files / 2297 tests), typecheck + lint clean.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: pre-launch sites no longer alarm (audits, report scheduling, coc…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T21:43:05Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7d1e33e6fe544b55f9b302f8943a92a299cfbc09",
          "body": "…l (#376)\n\nAdds the missing producer so the Report Health Gate's Testing (Interactions &\nAnimations) check stops being override-only: a nightly workflow runs the `smoke`\naudit fleet-wide and writes Smoke OK / Last Smoke At to Airtable.\n\nTwo parts:\n\n1. Fix the smoke audit's install gap (REQUIRED — wi\n[…]\nthe gate stays green during\n   rollout.\n\nVerified: pnpm test (233 files / 2290 tests, incl. 3 new smoke install tests),\ntypecheck + lint clean.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(smoke): nightly fleet-smoke producer for the Smoke OK gate signa…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T21:43:02Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "689b8a2ac304d6666e6723a56eb05355c72a8df0",
          "body": "…nds (#375)\n\nOnly `audit` forwarded `opts.workdir` into resolveSites; the eight fleet recipe\ncommands (health-endpoint, smoke-suite, svelte-codemods, init, bump-deps,\nconvert-to-pnpm, sync-configs, upgrade) dropped it. resolveSites consumes workdir\nonly on the `--fleet airtable` branch (site.path = \n[…]\n each\ncommand forwards workdir, and that it's omitted when not supplied.\n\nVerified: pnpm test (234 files / 2296 tests), typecheck + lint clean.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(cli): forward --workdir to resolveSites in all fleet recipe comma…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T21:42:48Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4f83cbc867f424deb366515c0a4d38b64d8eb69c",
          "body": "…vitest (#374)\n\nThe fleet-smoke batch red'd on 10 of 11 sites: the recipe added\n`test: \"vitest run\"` (and `test:unit`) unconditionally, but the shared CI runs\nthe `test` script when present, so sites without vitest failed with\n`vitest: not found`. Only alamo-anatomy (which has vitest) passed.\n\nGate \n[…]\nwright entry point the future fleet-smoke workflow will run).\n\nNew test covers the vitest-less site. Full suite green (233 files / 2287 tests).\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(recipes): smoke-suite adds vitest scripts only when the site has …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T20:00:42Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c05ac473acace7723c6dc135892f0a3454d38821",
          "body": "…g (#373)\n\nThe fleet /health rollout showed a single hardcoded template style reds the CI\nformat check on sites whose prettier config differs (quotes/tabs/printWidth).\nhealth-endpoint (#372) fixed this inline; smoke-suite writes several files and\nhad the same latent bug. Extract the shared `formatWi\n[…]\nose — never an operator\n  file it left untouched — before committing.\n\nVerified: pnpm test (233 files / 2286 tests), typecheck, lint all green.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(recipes): format smoke-suite output to each site's prettier confi…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T19:37:47Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "398fb367842fba14616cbe4c5fea03904c9899e3",
          "body": "…Prismic variant) (#372)\n\n* docs(blux): spec — faithful grid slices (replaces archetype page mapping)\n\nReplan the design phase: parse the Blux rendered index.html into a recursive\ngrid tree, classify each band by grid signature to pattern slices with a generic\nrecursive Grid fallback, and route map/\n[…]\nstarter is one), and the Prismic-path\ntests assert against it.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(recipes): make health-endpoint fleet-robust (site prettier + non-…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T19:26:46Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "45b35238c8ba51ea26f75aa983a4d832db2ca998",
          "body": "…Health Gate real signal fleet-wide (#371)\n\n* docs(recipes): spec — fleet /health + smoke rollout (two recipes)\n\nDesign for propagating the starter's /health endpoint and smoke suite onto\nthe existing fleet so the Report Health Gate has real signal fleet-wide.\nTwo idempotent, heterogeneity-resilient\n[…]\n and\nfor the noop-from-apply path that still surfaces the config flag note.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(recipes): fleet /health + smoke-suite rollout — give the Report …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T17:53:23Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7c80dd8a3d4d2a78b92e9f8347baa8351925b5e7",
          "body": "…gate (#370)\n\n* docs(reports): spec — auto-tick coverage extension (6 of 7 manual items)\n\nEvidence sources for Deploy, Tested-After-Updates, Uptime, Page Titles &\nMeta, Form Functionality, and CMS Checked, following the existing fail-safe\naudit->Airtable->evidence pattern. Honest proxy ticks (note s\n[…]\n174 tests, coverage above floors,\ntypecheck/eslint/build/test:dist all pass.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(reports): Report Health Gate — checklist becomes a site-CI send …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T17:50:21Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "32c92bbb8e602131f56c811cd5b31e45702144f5",
          "body": "…#369)\n\n* feat(blux): emit the .txt-role utility layer into theme.css\n\nblux emit now appends one `.txt-role-textN :is(h1…h6,p)` rule per text role\ndirectly after the @theme block, built from the IR's text styles. A converted\nsite imports the emitted theme.css and gets both the role tokens and the\nut\n[…]\n163 tests, typecheck, build, test:dist all green.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit .txt-role utilities + blux validate coverage check (…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T08:34:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f265d2ee718eb6c38035f01931136e4a399d18e5",
          "body": "…me.css + styles manifest (#368)\n\n* feat(blux): parse export style data — text roles + block styles → theme.css + styles manifest\n\nThe design pass was reverse-engineering fonts and layout from screenshots\nwhile the export carried the answers as data. normalizeTheme now parses the\nreal styles.text sh\n[…]\nchable path —\narchetype/normalize never emit collection_list — so left as-is.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): parse export style data — text roles + block styles → the…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T00:15:02Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ab664c1c340565a2ff073c26b01b9cf9b8c2aa53",
          "body": "…config (#367)\n\n* fix(blux): display text lives in title/body — _title/_body are style config\n\nBlux stores a block's display text in title/body; the underscore twins are\nper-element style objects where class:\"disable\" (or the bare string\n\"disable\") hides the element on the rendered site. The normali\n[…]\ns-list token, numeric text\ncoerced instead of dropped, migrated text trimmed.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): display text lives in title/body — _title/_body are style …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T17:50:45Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "58f62eb51f2f1752b0030fd50dbe545adf2024ed",
          "body": "The kept-as-grid path also dropped a container's own content: a\nmedia_text-shaped section carrying one flat-leaf child was 'kept' as a\nsection_grid, whose primary has no media/body slot. Containers are now\nkeepable only when their own content is at most a heading; childless\ncontainers with media/body are rewritten to media_text/rich_text.\nFound in the thePointe acceptance loop: 7 images still missing after #365.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): containers with their own media/body always explode (#366)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T05:08:08Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "06b9c99e7152f3ffbc3bc8fa6f4034c26663734d",
          "body": "… foreground images (#365)\n\nAcceptance-run finding on thePointe: 8 real images vanished vs the naive\nwalker's used-set. Two causes — (1) a media_text-shaped section that happens\nto carry children is archetyped 'grid' and exploding it emitted only the\nheading, dropping its own media/body; (2) a hero \n[…]\nll own content (media_text when they carry media, rich_text\notherwise), and heroes with two images emit a sibling media_text for the\nforeground.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): exploded containers keep their own content; heroes surface…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T05:02:37Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "749d47217a5491f6e0201bfc39d72044eb9dfc6d",
          "body": "…#364)\n\n* docs(blux): Plan 4 — emit/runner hardening from the Pointe live run\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blux): HTML-level rich-text coercion helpers\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blux): coerce rich text to slice-model block rest\n[…]\nn markers\n- probe: CDN hosts shared with assets.ts; mime-aware ext candidates\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): Plan 4 — emit/runner hardening from the Pointe live run (…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T04:54:21Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "95e7aa338510048f83c9ed974ced093f34ae70c1",
          "body": "Finishes Plan 3's remaining task and gives the pipeline a CLI surface:\n\n- blux emit <exportDir>: site.json + rendered HTML -> assembleIR ->\n  migration-plan.json, customtypes/*.json, theme.css, review-manifest.json,\n  ir.json + a diagnostics summary. Deterministic, offline.\n- blux migrate <outDir|pl\n[…]\nean; consumers never resolve them).\n- run-migration.ts excluded from the coverage graph (live I/O; the plan it\n  consumes is fully unit-tested).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): blux CLI (emit + migrate) + gated live Prismic runner (#362)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T03:20:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c46cace15934846cecac5c8d056b2891378ca990",
          "body": "… (#361)\n\nDeterministic pure builders (no Prismic deps): emitThemeCss (IR → Tailwind v4\n@theme), buildCustomType (feed → repeatable custom-type schema), sectionToSlice\n(IR section → Prismic slice shape matching the Plan-1 models), buildMigrationPlan\n(custom types + page docs with slices + collection\n[…]\nion/createAsset/htmlAsRichText/writeClient.migrate) is documented in\nthe plan and deferred to the creds-gated import step (keeps this dep-free).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit stage — IR → Prismic migration plan + theme + review…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-06T07:42:15Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "d64d62bccfaede1c4560542a452476e6586475c6",
          "body": "…360)\n\n* docs(blux): Plan 2 — deterministic pipeline core\n\n* feat(blux): deterministic pipeline core — Blux export → Content IR\n\nparse → normalize (+ archetype mapping) + model-collections + resolve-assets\n(pure CDN-url layer) → assembleIR, all pure/deterministic. Blux feeds become\nrepeatable Custom\n[…]\nre +\nedge cases; asserts deep-equal on re-run. No network in the tested path.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): deterministic pipeline core (Blux export → Content IR) (#…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-06T07:19:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b0b1a338ad4fd96d9c49a3328e86f9ded600a29b",
          "body": "* docs(blux): design spec for reusable Blux→stack conversion pipeline\n\nIR-mediated, deterministic (no-AI) pipeline: parse → normalize +\nmodel-collections → Content IR → emit-prismic (page docs + Custom Types\nfrom Blux feeds + CDN→Prismic asset upload) + emit-theme → review gallery.\nBlux feeds (18 ac\n[…]\n Fable 5 <noreply@anthropic.com>\n\n* docs(blux): record Plan 1 execution notes + deviations\n\n* docs(blux): prettier-format spec + plan\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(blux): conversion pipeline design spec + Plan 1 (#359)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-06T06:55:54Z",
          "body_truncated": true,
          "is_coding_agent": true
        }
      ],
      "releases_count": 100,
      "commits_last_year": 563,
      "latest_release_at": "2026-07-20T04:13:36Z",
      "latest_release_tag": "v0.75.1",
      "releases_from_tags": false,
      "days_since_last_push": 1,
      "active_weeks_last_year": 10,
      "days_since_latest_release": 6,
      "mean_days_between_releases": 2.1
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": false,
      "has_contributing": false,
      "health_percentage": 25,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "@reddoorla/maintenance",
          "exists": true,
          "license": "MIT",
          "keywords": [],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reddoorla/maintenance",
          "is_deprecated": false,
          "latest_version": "0.75.1",
          "repository_url": "https://github.com/reddoorla/reddoor-maintenance",
          "versions_count": 107,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 5142,
          "first_published_at": "2026-05-21T04:54:34.852000Z",
          "latest_published_at": "2026-07-20T04:13:34.611000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 6
        }
      ]
    },
    "popularity": {
      "forks": 0,
      "stars": 0,
      "watchers": 0,
      "fork_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_forks": 0
      },
      "star_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_stars": 0,
        "collected_at": null
      },
      "open_issues_and_prs": 1
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "recipes"
      ],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 48396,
      "source_files_sampled": 588,
      "oversized_source_files": 0,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 153,
        "malicious_count": 0,
        "assessed_package": "npm:@reddoorla/maintenance@0.75.1",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "@axe-core/playwright",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.11.3"
        },
        {
          "name": "@eslint/js",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.0.1"
        },
        {
          "name": "@playwright/test",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.59.1"
        },
        {
          "name": "cac",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.7.14"
        },
        {
          "name": "eslint",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.3.0"
        },
        {
          "name": "eslint-config-prettier",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.1.1"
        },
        {
          "name": "eslint-plugin-svelte",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.1.0"
        },
        {
          "name": "globals",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^17.6.0"
        },
        {
          "name": "listr2",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.2.1"
        },
        {
          "name": "node-html-parser",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^9.0.0"
        },
        {
          "name": "prettier",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.1.1"
        },
        {
          "name": "prettier-plugin-svelte",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.2.6"
        },
        {
          "name": "tinyglobby",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.10"
        },
        {
          "name": "typescript-eslint",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.59.1"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@axe-core/playwright",
            "direct": true,
            "version": "4.11.3",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": true,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@playwright/test",
            "direct": true,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": true,
            "version": "6.7.14",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": true,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-config-prettier",
            "direct": true,
            "version": "10.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-svelte",
            "direct": true,
            "version": "3.17.1",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": true,
            "version": "16.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": true,
            "version": "17.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "listr2",
            "direct": true,
            "version": "10.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-html-parser",
            "direct": true,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": true,
            "version": "2.8.8",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": true,
            "version": "3.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "prettier-plugin-svelte",
            "direct": true,
            "version": "3.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": true,
            "version": "0.2.16",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": true,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-eslint",
            "direct": true,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@bcoe/v8-coverage",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/apply-release-plan",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/assemble-release-plan",
            "direct": false,
            "version": "6.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/changelog-git",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/cli",
            "direct": false,
            "version": "2.31.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/config",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/errors",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-dependents-graph",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-release-plan",
            "direct": false,
            "version": "4.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-version-range-type",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/git",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/logger",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/parse",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/pre",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/read",
            "direct": false,
            "version": "0.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/should-skip-package",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/write",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.2",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.23.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/ecma402-abstract",
            "direct": false,
            "version": "2.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/fast-memoize",
            "direct": false,
            "version": "2.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/icu-messageformat-parser",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/icu-skeleton-parser",
            "direct": false,
            "version": "1.8.16",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/intl-localematcher",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "@google-analytics/data",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@grpc/grpc-js",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "npm"
          },
          {
            "name": "@grpc/proto-loader",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/core",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/node",
            "direct": false,
            "version": "0.16.8",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/types",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/colour",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-freebsd-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-ppc64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-riscv64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-s390x",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-ppc64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-riscv64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-s390x",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-webcontainers-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-ia32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/external-editor",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/cliui",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@js-sdsl/ordered-map",
            "direct": false,
            "version": "4.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@lhci/cli",
            "direct": false,
            "version": "0.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "@lhci/utils",
            "direct": false,
            "version": "0.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/client",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/core",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/darwin-arm64",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/darwin-x64",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/hrana-client",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/isomorphic-fetch",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/isomorphic-ws",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/kysely-libsql",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/linux-arm64-gnu",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/linux-arm64-musl",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/linux-x64-gnu",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/linux-x64-musl",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/win32-x64-msvc",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/find-root",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/get-packages",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@neon-rs/load",
            "direct": false,
            "version": "0.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@netlify/functions",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@netlify/types",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@one-ini/wasm",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "@paulirish/trace_engine",
            "direct": false,
            "version": "0.0.53",
            "ecosystem": "npm"
          },
          {
            "name": "@pkgjs/parseargs",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@polka/url",
            "direct": false,
            "version": "1.0.0-next.29",
            "ecosystem": "npm"
          },
          {
            "name": "@prismicio/client",
            "direct": false,
            "version": "7.21.8",
            "ecosystem": "npm"
          },
          {
            "name": "@prismicio/migrate",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/aspromise",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/base64",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/codegen",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/eventemitter",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/fetch",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/float",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/path",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/pool",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/utf8",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@puppeteer/browsers",
            "direct": false,
            "version": "2.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@react-email/render",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@selderee/plugin-htmlparser2",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry-internal/tracing",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/core",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/integrations",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/node",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/types",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/utils",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@stablelib/base64",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@standard-schema/spec",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sveltejs/acorn-typescript",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@sveltejs/acorn-typescript",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@sveltejs/kit",
            "direct": false,
            "version": "2.70.1",
            "ecosystem": "npm"
          },
          {
            "name": "@sveltejs/vite-plugin-svelte",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tootallnate/quickjs-emscripten",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/cookie",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/esrecurse",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mjml",
            "direct": false,
            "version": "4.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mjml-core",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "12.20.55",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "22.19.19",
            "ecosystem": "npm"
          },
          {
            "name": "@types/trusted-types",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ws",
            "direct": false,
            "version": "8.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yauzl",
            "direct": false,
            "version": "2.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/coverage-v8",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "abbrev",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "abort-controller",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "abortcontroller-polyfill",
            "direct": false,
            "version": "1.7.8",
            "ecosystem": "npm"
          },
          {
            "name": "accepts",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "airtable",
            "direct": false,
            "version": "0.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-colors",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "6.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "any-promise",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "aria-query",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-flatten",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-union",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ast-types",
            "direct": false,
            "version": "0.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "ast-v8-to-istanbul",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "axe-core",
            "direct": false,
            "version": "4.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "axobject-query",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "b4a",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "bare-events",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "bare-fs",
            "direct": false,
            "version": "4.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "bare-os",
            "direct": false,
            "version": "3.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "bare-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bare-stream",
            "direct": false,
            "version": "2.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "bare-url",
            "direct": false,
            "version": "2.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "basic-ftp",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "bcp-47-match",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "better-path-resolve",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bignumber.js",
            "direct": false,
            "version": "9.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.5",
            "ecosystem": "npm"
          },
          {
            "name": "boolbase",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-crc32",
            "direct": false,
            "version": "0.2.13",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-equal-constant-time",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "bundle-require",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind-apply-helpers",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bound",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "camel-case",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "cheerio",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "cheerio-select",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "chrome-launcher",
            "direct": false,
            "version": "0.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "chrome-launcher",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "chromium-bidi",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "clean-css",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "cli-cursor",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-cursor",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-truncate",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-width",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "1.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "2.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "compressible",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "npm"
          },
          {
            "name": "compression",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "config-chain",
            "direct": false,
            "version": "1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "configstore",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "consola",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "content-disposition",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "content-type",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "cookie-signature",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "crypto-random-string",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "csp_evaluator",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "css-select",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "css-selector-parser",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-what",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "data-uri-to-buffer",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "data-uri-to-buffer",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "2.6.9",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "deepmerge",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "define-lazy-prop",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "degenerator",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "depd",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "destroy",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "devalue",
            "direct": false,
            "version": "5.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "devalue",
            "direct": false,
            "version": "5.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "devtools-protocol",
            "direct": false,
            "version": "0.0.1467305",
            "ecosystem": "npm"
          },
          {
            "name": "devtools-protocol",
            "direct": false,
            "version": "0.0.1608973",
            "ecosystem": "npm"
          },
          {
            "name": "dir-glob",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "direction",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "domelementtype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "dot-prop",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "duplexify",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "eastasianwidth",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ecdsa-sig-formatter",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "editorconfig",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "ee-first",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "9.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "encodeurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "enquirer",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "environment",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-define-property",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-errors",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-goat",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-html",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escodegen",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "9.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esm-env",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "11.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrap",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "etag",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "event-target-shim",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "events-universal",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "express",
            "direct": false,
            "version": "4.22.2",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "extendable-error",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "external-editor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "extract-zip",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-fifo",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fast-sha256",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "fd-slicer",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "fetch-blob",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "figures",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "finalhandler",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fix-dts-default-cjs-exports",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "foreground-child",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "formdata-polyfill",
            "direct": false,
            "version": "4.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "forwarded",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "fresh",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gaxios",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "gcp-metadata",
            "direct": false,
            "version": "8.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-east-asian-width",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-uri",
            "direct": false,
            "version": "6.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "globby",
            "direct": false,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "google-auth-library",
            "direct": false,
            "version": "10.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "google-gax",
            "direct": false,
            "version": "5.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "google-logging-utils",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-embedded",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-html",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-parse5",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-has-property",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-is-element",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-minify-whitespace",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-parse-selector",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-select",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-html",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-string",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hastscript",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "he",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "html-minifier",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-to-text",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "html-void-elements",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "htmlparser2",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "htmlparser2",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "htmlparser2",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-errors",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-link-header",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-agent",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "human-id",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "image-ssim",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "imgix-url-builder",
            "direct": false,
            "version": "0.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "immediate",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "ini",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "inquirer",
            "direct": false,
            "version": "6.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "intl-messageformat",
            "direct": false,
            "version": "10.7.18",
            "ecosystem": "npm"
          },
          {
            "name": "ip-address",
            "direct": false,
            "version": "10.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ipaddr.js",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-docker",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-obj",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-reference",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-subdir",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-typedarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-windows",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-wsl",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isomorphic-fetch",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-coverage",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-report",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-reports",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "jackspeak",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "joycon",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jpeg-js",
            "direct": false,
            "version": "0.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "js-base64",
            "direct": false,
            "version": "3.7.8",
            "ecosystem": "npm"
          },
          {
            "name": "js-beautify",
            "direct": false,
            "version": "1.15.4",
            "ecosystem": "npm"
          },
          {
            "name": "js-cookie",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "js-library-detector",
            "direct": false,
            "version": "6.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-bigint",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "juice",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jwa",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jws",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "kleur",
            "direct": false,
            "version": "4.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "known-css-properties",
            "direct": false,
            "version": "0.37.0",
            "ecosystem": "npm"
          },
          {
            "name": "kysely",
            "direct": false,
            "version": "0.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "leac",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "legacy-javascript",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "libsql",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "lie",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lighthouse",
            "direct": false,
            "version": "12.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "lighthouse-logger",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lighthouse-logger",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "lighthouse-stack-packs",
            "direct": false,
            "version": "1.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "load-tsconfig",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "localforage",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-character",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash-es",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.camelcase",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.startcase",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "log-update",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "long",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "lookup-closest-locale",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lower-case",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "10.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "7.18.3",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "magicast",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "marky",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "media-typer",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "mensch",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "merge-descriptors",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "metaviewport-parser",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "methods",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.54.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-fn",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-function",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mitt",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mjml",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-accordion",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-body",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-button",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-carousel",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-cli",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-column",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-core",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-divider",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-group",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-attributes",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-breakpoint",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-font",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-html-attributes",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-preview",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-style",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-title",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-hero",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-image",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-migrate",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-navbar",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-parser-xml",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-preset-core",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-raw",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-section",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-social",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-spacer",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-table",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-text",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-validator",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-wrapper",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "mlly",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "mri",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mrmime",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mute-stream",
            "direct": false,
            "version": "0.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "mz",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.16",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "netmask",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "no-case",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-domexception",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "nopt",
            "direct": false,
            "version": "7.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nth-check",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-hash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "object-inspect",
            "direct": false,
            "version": "1.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "on-finished",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "on-headers",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "open",
            "direct": false,
            "version": "7.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "open",
            "direct": false,
            "version": "8.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "outdent",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-filter",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-map",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pac-proxy-agent",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pac-resolver",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "package-json-from-dist",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "package-manager-detector",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "param-case",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-cache-control",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5-htmlparser2-tree-adapter",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "parseley",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "parseurl",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-to-regexp",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "peberminta",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "pend",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pirates",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.23",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-safe-parser",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-scss",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "progress",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "promise-limit",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "proto-list",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "proto3-json-serializer",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "protobufjs",
            "direct": false,
            "version": "7.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-addr",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-agent",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-from-env",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "pump",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "puppeteer-core",
            "direct": false,
            "version": "24.43.1",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.2",
            "ecosystem": "npm"
          },
          {
            "name": "quansync",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "range-parser",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "raw-body",
            "direct": false,
            "version": "2.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": false,
            "version": "19.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": false,
            "version": "19.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "react-promise-suspense",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "read-yaml-file",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-minify-whitespace",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-parse",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "relateurl",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-main-filename",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resend",
            "direct": false,
            "version": "4.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "retry-request",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rfdc",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "5.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "robots-parser",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "run-async",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "rxjs",
            "direct": false,
            "version": "6.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "selderee",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "5.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "send",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "serve-static",
            "direct": false,
            "version": "1.16.3",
            "ecosystem": "npm"
          },
          {
            "name": "set-blocking",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "set-cookie-parser",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "setprototypeof",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "sharp",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-list",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-map",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-weakmap",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "siginfo",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "sirv",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "slash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "slice-ansi",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "slice-ansi",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "slick",
            "direct": false,
            "version": "1.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "smart-buffer",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "socks",
            "direct": false,
            "version": "2.8.9",
            "ecosystem": "npm"
          },
          {
            "name": "socks-proxy-agent",
            "direct": false,
            "version": "8.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "spawndamnit",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "speedline-core",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "stackback",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "standardwebhooks",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "statuses",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "stream-events",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "stream-shift",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "streamx",
            "direct": false,
            "version": "2.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "8.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "stubs",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "sucrase",
            "direct": false,
            "version": "3.35.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "5.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "svelte",
            "direct": false,
            "version": "5.55.9",
            "ecosystem": "npm"
          },
          {
            "name": "svelte-eslint-parser",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "svix",
            "direct": false,
            "version": "1.94.0",
            "ecosystem": "npm"
          },
          {
            "name": "tar-fs",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tar-stream",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "teeny-request",
            "direct": false,
            "version": "10.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "teex",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "term-size",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "text-decoder",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "thenify",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "thenify-all",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "third-party-web",
            "direct": false,
            "version": "0.26.7",
            "ecosystem": "npm"
          },
          {
            "name": "third-party-web",
            "direct": false,
            "version": "0.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "through",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-core",
            "direct": false,
            "version": "6.1.86",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-icann",
            "direct": false,
            "version": "6.1.86",
            "ecosystem": "npm"
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "toidentifier",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "totalist",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "tree-kill",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-interface-checker",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsup",
            "direct": false,
            "version": "8.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "4.22.3",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-is",
            "direct": false,
            "version": "1.6.18",
            "ecosystem": "npm"
          },
          {
            "name": "typed-query-selector",
            "direct": false,
            "version": "2.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "typedarray-to-buffer",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ufo",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "uglify-js",
            "direct": false,
            "version": "3.19.3",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": false,
            "version": "11.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "unique-string",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-remove",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "unpipe",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "upper-case",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "utils-merge",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "14.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "valid-data-url",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vary",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-location",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "vitefu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "web-namespaces",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "web-resource-inliner",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "web-streams-polyfill",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "webdriver-bidi-protocol",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-fetch",
            "direct": false,
            "version": "3.6.20",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-module",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "why-is-node-running",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "9.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "write-file-atomic",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "7.5.11",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "xdg-basedir",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "1.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "15.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "17.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "13.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "18.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "21.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yauzl",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "zimmerframe",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "3.25.76",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 976,
        "direct_count": 17,
        "indirect_count": 959
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 1,
        "merged_prs": 455,
        "open_issues": 0,
        "closed_ratio": 1,
        "closed_issues": 5,
        "closed_unmerged_prs": 2
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "tucksravin",
          "commits": 474,
          "avatar_url": "https://avatars.githubusercontent.com/u/43099664?v=4"
        }
      ],
      "contributors_sampled": 1,
      "top_contributor_share": 1
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "ci.yml",
        "daily-reports.yml",
        "fleet-form-e2e.yml",
        "fleet-lighthouse.yml",
        "fleet-security.yml",
        "fleet-smoke.yml",
        "release-health.yml",
        "release.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "eslint.config.js"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "package-lock.json",
        "pnpm-lock.yaml"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 3,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 0,
            "reason": "project has 0 contributing companies or organizations -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 0,
            "reason": "project was created within the last 90 days. Please review its contents carefully",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 6,
            "reason": "4 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "467c81d7a1c4422dc5d61556d96e525ad69be462",
        "ran_at": "2026-07-26T04:27:02Z",
        "aggregate_score": 3.2,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-25T15:41:55Z",
      "oldest_open_prs": [
        {
          "number": 451,
          "created_at": "2026-07-22T22:20:33Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-25T03:35:44Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/reddoorla/reddoor-maintenance",
    "host": "github.com",
    "name": "reddoor-maintenance",
    "owner": "reddoorla"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 59,
      "inputs": {
        "security": 46,
        "vitality": 77,
        "community": 33,
        "governance": 55,
        "engineering": 76
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 77,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "commits_last_year": 563,
              "human_commit_share": 1,
              "days_since_last_push": 1,
              "active_weeks_last_year": 10
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "10/52 weeks with commits",
                "points": 6.9,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 10
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "563 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 563
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "v0.75.1",
              "releases_from_tags": false,
              "days_since_latest_release": 6,
              "mean_days_between_releases": 2.1
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 6 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~2.1 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 2.1
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 33,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 0,
              "stars": 0,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "0 stars",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "0 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 50,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "moderate",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 62,
            "inputs": {
              "packages": [
                "@reddoorla/maintenance"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 5142
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "5,142 downloads/month across npm",
                "points": 49.5,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 5142,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 55,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 10,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 1,
              "top_contributor_share": 1
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 100% of commits",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "1 contributors",
                "points": 1.4,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "excellent",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "merged_prs": 455,
              "open_issues": 0,
              "closed_issues": 5,
              "issue_closed_ratio": 1,
              "closed_unmerged_prs": 2
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "100% of issues closed",
                "points": 46.8,
                "status": "met",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "455/457 decided PRs merged",
                "points": 38.1,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 455,
                      "decided": 457
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 42,
            "inputs": {
              "followers": 1,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "reddoorla",
              "public_repos": 19,
              "account_age_days": 64
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "1 followers of reddoorla",
                "points": 2.2,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 1,
                      "login": "reddoorla"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "19 public repos, account ~0 yr old",
                "points": 9.8,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 19
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "@reddoorla/maintenance"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 6
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 6 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "107 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 107
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 76,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "8 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 8
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": "eslint.config.js",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.js"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "moderate",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 65,
            "inputs": {
              "topics": [],
              "has_wiki": true,
              "homepage": null,
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 46,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 32,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 3.2
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "4 existing vulnerabilities detected",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the npm:@reddoorla/maintenance@0.75.1 runtime dependency closure — what installing the published package pulls in — 153 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "npm:@reddoorla/maintenance@0.75.1",
                  "assessed": 153
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 0,
              "affected_packages": 0,
              "assessed_packages": 153,
              "unassessed_packages": 0,
              "affected_by_severity": "none",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "no indirect dependency carries a known advisory",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "no_indirect_advisories",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 153,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 1
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 59,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 1,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "100 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 100,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 64,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "package-lock.json",
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "tsconfig.json"
              ],
              "agent_commit_share": 0.89,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": "eslint.config.js",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.js"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "89 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 89,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 48396,
              "source_files_sampled": 588,
              "oversized_source_files": 0
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "0/588 source files over 60KB",
                "points": 55,
                "status": "met",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 588,
                      "oversized": 0
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "recipes"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "recipes",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "recipes"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [],
  "report_type": "repository",
  "generated_at": "2026-07-26T04:27:18.001633Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/r/reddoorla/reddoor-maintenance.svg",
  "full_name": "reddoorla/reddoor-maintenance",
  "license_state": "standard",
  "license_spdx": "MIT"
}

Las puntuaciones son señales, no garantías. Reflejan prácticas públicamente visibles en GitHub; no son una auditoría de código ni una garantía de seguridad.

Los datos ausentes se excluyen y los pesos se renormalizan; nunca se puntúan como cero. La metodología es versionada y abierta: métricas v1.13.0, esquema v0.27.0 — metodología completa · wiki de métricas.

Cómo se sitúa un resultado dentro del registro general: estadísticas agregadasnpm.