Registro público
Informe de salud del softwareesquema 0.27.0 · métricas 1.13.0 · 2026-07-30 06:39 UTC

AlexanderMattTurner / subfont

Command line tool to optimize your webfont loading. Aggressive subsetting based on your font use, self-hosting of Google fonts and preloading

JavaScript · TypeScriptMIT★ 2 estrellas⑂ 0 forksdesde mar 2026forkVer en GitHub ↗

AlexanderMattTurner/subfont tiene un índice de salud de 57 sobre 100, lo que lo sitúa en la banda Moderado. Su puntuación más alta es Vitality (82/100) y la más baja, Community & Adoption (24/100). Se actualizó por última vez hoy. 2 personas concentran la mayor parte del trabajo reciente.

57
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.

57
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

AlexanderMattTurnerOrganización
4 seguidores13 repositorios públicosdesde jun 2026

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

Ecosistemas de paquetes

Métricas por categoría

Vitalidad

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

82Bueno · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 0 días
14.5/36Cadencia de commits — 21/52 semanas con commits
18/18Volumen de commits — 643 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year643
human_commit_share0,98
days_since_last_push0
active_weeks_last_year21
Cómo se puntúa
16.2/27Publica versiones — 52 etiquetas de versión (sin releases de GitHub)
36/36Recencia de las versiones — última versión hace 8 días
27/27Cadencia de publicación — una versión cada ~6,7 días
0/10OpenSSF Scorecard: Signed-Releases — sin datos
Datos de entrada utilizados
releases_count52
latest_release_tagv1.11.7
releases_from_tags
days_since_latest_release8
mean_days_between_releases6,7
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?

24Crítico · 18% del índice global
Cómo se puntúa
0/60Estrellas — 2 estrellas
0/25Forks — 0 forks
0/15Observadores — 0 observadores
Datos de entrada utilizados
forks0
stars2
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
0/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_readmeno
has_licenseno
has_contributingno
has_issue_templateno
has_code_of_conductno
has_pull_request_templateno
Cómo se puntúa
46.9/80Descargas mensuales — 3296 descargas/mes en npm
0/20Dependientes en el registro — no lo informa este ecosistema
Datos de entrada utilizados
packages@turntrout/subfont
dependents
ecosystemsnpm
total_downloads
monthly_downloads3296
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?

65Moderado · 24% del índice global
Cómo se puntúa
25.2/54Factor bus — la mitad de los commits recae en 2 contribuyente(s)
12.3/22.5Distribución de commits — el principal contribuyente firma el 45% de los commits
13.5/13.5Amplitud de contribuyentes — 12 contribuyentes
10/10OpenSSF Scorecard: Contributors — project has 7 contributing companies or organizations
Datos de entrada utilizados
bus_factor2
contributors_sampled12
top_contributor_share0,454
Cómo se puntúa
0/46.8Resolución de issues — sin issues o sin datos
33.7/38.3Aceptación de PR — 149/169 PR decididos fusionados
0/15OpenSSF Scorecard: Code-Review — Found 0/12 approved changesets -- score normalized to 0
Datos de entrada utilizados
merged_prs149
open_issues0
closed_issues0
issue_closed_ratio
closed_unmerged_prs20
Excluidos de la puntuación (sin datos o no aplicable): Resolución de issues. Los pesos restantes se han renormalizado.
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
5/25Alcance del propietario — 4 seguidores de AlexanderMattTurner
8.7/25Trayectoria — 13 repos públicos, cuenta de ~0 años
Datos de entrada utilizados
followers4
owner_typeOrganization
is_verified
owner_loginAlexanderMattTurner
public_repos13
account_age_days58
Cómo se puntúa
25/25Publicado y resoluble — 1 paquete(s) en npm
35/35Recencia de publicación — última publicación hace 8 días
20/20Historial de versiones — 54 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packages@turntrout/subfont
ecosystemsnpm
any_deprecatedno
min_days_since_publish8

Calidad de Ingeniería

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

54Moderado · 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
6.4/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 13 out of 13 merged PRs checked by a CI test -- score normalized to 10
Datos de entrada utilizados
has_ci
has_tests
has_editorconfig
has_linter_config
has_precommit_configno
Cómo se puntúa
0/30README
0/25Directorio de documentación
0/15Sitio de documentación / página del proyecto
0/10Descripción del repositorio
0/10Topics
0/10Wiki
Datos de entrada utilizados
topics
has_wikino
homepage
has_readmeno
has_docs_dirno
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?

54Moderado · 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 — 13 out of 13 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/12 approved changesets -- score normalized to 0
2.5/2.5Contributors — project has 7 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — sin datos
4/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 8
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
0/7.5Vulnerabilities — 45 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate5
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
6.9/25Dependencias indirectas libres de avisos conocidos — 4 afectados: brace-expansion 1.1.16 (high 7.5), form-data 2.1.4 (high 7.5), html-minifier 4.0.0 (high 7.5), +1 más
27.4/40Sin avisos pendientes — 3 paquete(s) con avisos sin atender más allá de 90 días; el más antiguo publicado hace 1367 días
Datos de entrada utilizados
sourceosv
advisories5
affected_packages4
assessed_packages530
unassessed_packages0
affected_by_severityhigh 3, low 1
direct_affected_packages0
Se cotejó el cierre de dependencias en tiempo de ejecución de npm:@turntrout/subfont@1.11.7 —lo que arrastra la instalación del paquete publicado—: 530 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.

82Bueno · 0% del índice global
Cómo se puntúa
45/45Instrucciones para agentes — CLAUDE.md
0/15Documentación legible por máquinas (llms.txt)
40/40Historial de commits legible — 96 de 98 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share0,98
agent_instruction_filesCLAUDE.md
agent_instruction_max_bytes5753
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 — 22 de los últimos 100 commits con autoría o crédito de agente
8/8Mantenimiento automatizado — 2 de los últimos 100 commits son actualizaciones automáticas de dependencias
8/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 8
Datos de entrada utilizados
has_nixno
has_tests
lockfilespnpm-lock.yaml
has_dockerfileno
typed_languageno
bootstrap_files
has_devcontainerno
has_linter_config
typecheck_configstsconfig.json
agent_commit_share0,22
toolchain_manifests
dependency_bot_commit_share0,02
Cómo se puntúa
27/45Código verificable por tipos — JavaScript con configuración de verificación de tipos (tsconfig.json)
54.1/55Tamaños de archivo manejables — 2/116 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageJavaScript
largest_source_bytes81.339
source_files_sampled116
oversized_source_files2

Datos clave

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

Advertencias de recopilación de datos

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • Community profile unavailable

Más detalle

OpenSSF Scorecard 5.0 / 10
5.0agregado

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-30 06:39 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests13 out of 13 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/12 approved changesets -- score normalized to 0
10Contributorsproject has 7 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
n/dPackagingpackaging workflow not detected
8Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 8
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
0Vulnerabilities45 existing vulnerabilities detected
Dependencias directas 23
RegistroPaqueteRestricción de versiónManifiesto
npm@hookun/parse-animation-shorthand^0.1.5package.json
npm@puppeteer/browsers^2.0.0package.json
npmassetgraph^7.13.0package.json
npmcss-font-parser^2.0.0package.json
npmcss-font-weight-names^0.2.1package.json
npmcss-list-helpers^2.0.0package.json
npmfont-snapper^1.2.0package.json
npmfont-tracer^3.7.0package.json
npmfontverter^2.0.0package.json
npmharfbuzzjs^0.5.0package.json
npmjsdom^25.0.0package.json
npmlines-and-columns^1.1.6package.json
npmmemoizesync^1.1.1package.json
npmparse5^7.0.0package.json
npmpiscina^4.9.2package.json
npmpostcss^8.3.11package.json
npmpostcss-value-parser^4.0.2package.json
npmpretty-bytes^5.1.0package.json
npmpuppeteer-core^24.39.1package.json
npmsanitize-filename^1.6.4package.json
npmspecificity^0.4.1package.json
npmurltools^0.4.1package.json
npmyargs^17.7.2package.json
Todas las dependencias 1228

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

RegistroPaqueteVersiónRelación
npm@hookun/parse-animation-shorthand0.1.5directa
npm@puppeteer/browsers2.13.0directa
npmassetgraph7.13.0directa
npmcss-font-parser2.0.1directa
npmcss-font-weight-names0.2.1directa
npmcss-list-helpers2.0.0directa
npmfont-snapper1.2.0directa
npmfont-tracer3.7.1directa
npmfontverter2.0.0directa
npmharfbuzzjs0.10.3directa
npmharfbuzzjs0.5.0directa
npmjsdom16.7.0directa
npmjsdom25.0.1directa
npmlines-and-columns1.2.4directa
npmmemoizesync1.1.1directa
npmparse56.0.1directa
npmparse57.3.0directa
npmpiscina4.9.3directa
npmpostcss7.0.39directa
npmpostcss8.5.18directa
npmpostcss8.5.5directa
npmpostcss-value-parser3.3.1directa
npmpostcss-value-parser4.2.0directa
npmpretty-bytes5.6.0directa
npmpuppeteer-core24.40.0directa
npmsanitize-filename1.6.4directa
npmspecificity0.4.1directa
npmurltools0.4.2directa
npmyargs15.4.1directa
npmyargs17.7.2directa
npmyargs18.0.0directa
npm@asamuzakjp/css-color3.2.0indirecta
npm@babel/code-frame7.12.11indirecta
npm@babel/code-frame7.29.0indirecta
npm@babel/code-frame7.29.7indirecta
npm@babel/compat-data7.29.0indirecta
npm@babel/core7.29.0indirecta
npm@babel/generator7.29.1indirecta
npm@babel/generator7.29.7indirecta
npm@babel/helper-annotate-as-pure7.29.7indirecta
npm@babel/helper-compilation-targets7.28.6indirecta
npm@babel/helper-create-class-features-plugin7.29.7indirecta
npm@babel/helper-globals7.28.0indirecta
npm@babel/helper-globals7.29.7indirecta
npm@babel/helper-member-expression-to-functions7.29.7indirecta
npm@babel/helper-module-imports7.28.6indirecta
npm@babel/helper-module-imports7.29.7indirecta
npm@babel/helper-module-transforms7.28.6indirecta
npm@babel/helper-module-transforms7.29.7indirecta
npm@babel/helper-optimise-call-expression7.29.7indirecta
npm@babel/helper-plugin-utils7.29.7indirecta
npm@babel/helper-replace-supers7.29.7indirecta
npm@babel/helper-skip-transparent-expression-wrappers7.29.7indirecta
npm@babel/helper-string-parser7.27.1indirecta
npm@babel/helper-string-parser7.29.7indirecta
npm@babel/helper-validator-identifier7.28.5indirecta
npm@babel/helper-validator-identifier7.29.7indirecta
npm@babel/helper-validator-option7.27.1indirecta
npm@babel/helpers7.29.2indirecta
npm@babel/highlight7.25.9indirecta
npm@babel/parser7.29.2indirecta
npm@babel/parser7.29.7indirecta
npm@babel/plugin-proposal-decorators7.29.7indirecta
npm@babel/plugin-syntax-decorators7.29.7indirecta
npm@babel/plugin-syntax-jsx7.29.7indirecta
npm@babel/plugin-syntax-typescript7.29.7indirecta
npm@babel/plugin-transform-destructuring7.29.7indirecta
npm@babel/plugin-transform-explicit-resource-management7.29.7indirecta
npm@babel/plugin-transform-modules-commonjs7.29.7indirecta
npm@babel/plugin-transform-typescript7.29.7indirecta
npm@babel/preset-typescript7.28.5indirecta
npm@babel/runtime7.29.2indirecta
npm@babel/template7.28.6indirecta
npm@babel/template7.29.7indirecta
npm@babel/traverse7.29.0indirecta
npm@babel/traverse7.29.7indirecta
npm@babel/types7.29.0indirecta
npm@babel/types7.29.7indirecta
npm@commitlint/cli21.0.2indirecta
npm@commitlint/config-conventional21.0.2indirecta
npm@commitlint/config-validator21.0.1indirecta
npm@commitlint/ensure21.0.1indirecta
npm@commitlint/execute-rule21.0.1indirecta
npm@commitlint/format21.0.1indirecta
npm@commitlint/is-ignored21.0.2indirecta
npm@commitlint/lint21.0.2indirecta
npm@commitlint/load21.0.2indirecta
npm@commitlint/message21.0.2indirecta
npm@commitlint/parse21.0.2indirecta
npm@commitlint/read21.0.2indirecta
npm@commitlint/resolve-extends21.0.1indirecta
npm@commitlint/rules21.0.2indirecta
npm@commitlint/to-lines21.0.1indirecta
npm@commitlint/top-level21.0.2indirecta
npm@commitlint/types21.0.1indirecta
npm@conventional-changelog/git-client2.7.0indirecta
npm@csstools/color-helpers5.1.0indirecta
npm@csstools/css-calc2.1.4indirecta
npm@csstools/css-color-parser3.1.0indirecta
npm@csstools/css-parser-algorithms3.0.5indirecta
npm@csstools/css-tokenizer3.0.4indirecta
npm@emnapi/core1.9.1indirecta
npm@emnapi/runtime1.9.1indirecta
npm@emnapi/wasi-threads1.2.0indirecta
npm@eslint-community/eslint-utils4.9.1indirecta
npm@eslint-community/regexpp4.12.2indirecta
npm@eslint/config-array0.21.2indirecta
npm@eslint/config-helpers0.4.2indirecta
npm@eslint/core0.17.0indirecta
npm@eslint/eslintrc0.4.3indirecta
npm@eslint/eslintrc3.3.5indirecta
npm@eslint/js9.39.4indirecta
npm@eslint/object-schema2.1.7indirecta
npm@eslint/plugin-kit0.4.1indirecta
npm@hapi/address2.1.4indirecta
npm@hapi/bourne1.3.2indirecta
npm@hapi/hoek8.5.1indirecta
npm@hapi/joi15.1.1indirecta
npm@hapi/topo3.1.6indirecta
npm@html-validate/stylish4.3.0indirecta
npm@humanfs/core0.19.1indirecta
npm@humanfs/node0.16.7indirecta
npm@humanwhocodes/config-array0.5.0indirecta
npm@humanwhocodes/gitignore-to-minimatch1.0.2indirecta
npm@humanwhocodes/module-importer1.0.1indirecta
npm@humanwhocodes/object-schema1.2.1indirecta
npm@humanwhocodes/retry0.4.3indirecta
npm@inquirer/ansi2.0.7indirecta
npm@inquirer/checkbox5.2.1indirecta
npm@inquirer/confirm6.1.1indirecta
npm@inquirer/core11.2.1indirecta
npm@inquirer/editor5.2.2indirecta
npm@inquirer/expand5.1.1indirecta
npm@inquirer/external-editor3.0.3indirecta
npm@inquirer/figures2.0.7indirecta
npm@inquirer/input5.1.2indirecta
npm@inquirer/number4.1.1indirecta
npm@inquirer/password5.1.1indirecta
npm@inquirer/prompts8.5.2indirecta
npm@inquirer/rawlist5.3.1indirecta
npm@inquirer/search4.2.1indirecta
npm@inquirer/select5.2.1indirecta
npm@inquirer/type4.0.7indirecta
npm@isaacs/cliui8.0.2indirecta
npm@istanbuljs/load-nyc-config1.1.0indirecta
npm@istanbuljs/schema0.1.3indirecta
npm@jridgewell/gen-mapping0.3.13indirecta
npm@jridgewell/remapping2.3.5indirecta
npm@jridgewell/resolve-uri3.1.2indirecta
npm@jridgewell/source-map0.3.11indirecta
npm@jridgewell/sourcemap-codec1.5.5indirecta
npm@jridgewell/trace-mapping0.3.31indirecta
npm@napi-rs/canvas0.1.97indirecta
npm@napi-rs/canvas-android-arm640.1.97indirecta
npm@napi-rs/canvas-darwin-arm640.1.97indirecta
npm@napi-rs/canvas-darwin-x640.1.97indirecta
npm@napi-rs/canvas-linux-arm-gnueabihf0.1.97indirecta
npm@napi-rs/canvas-linux-arm64-gnu0.1.97indirecta
npm@napi-rs/canvas-linux-arm64-musl0.1.97indirecta
npm@napi-rs/canvas-linux-riscv64-gnu0.1.97indirecta
npm@napi-rs/canvas-linux-x64-gnu0.1.97indirecta
npm@napi-rs/canvas-linux-x64-musl0.1.97indirecta
npm@napi-rs/canvas-win32-arm64-msvc0.1.97indirecta
npm@napi-rs/canvas-win32-x64-msvc0.1.97indirecta
npm@napi-rs/nice1.1.1indirecta
npm@napi-rs/nice-android-arm-eabi1.1.1indirecta
npm@napi-rs/nice-android-arm641.1.1indirecta
npm@napi-rs/nice-darwin-arm641.1.1indirecta
npm@napi-rs/nice-darwin-x641.1.1indirecta
npm@napi-rs/nice-freebsd-x641.1.1indirecta
npm@napi-rs/nice-linux-arm-gnueabihf1.1.1indirecta
npm@napi-rs/nice-linux-arm64-gnu1.1.1indirecta
npm@napi-rs/nice-linux-arm64-musl1.1.1indirecta
npm@napi-rs/nice-linux-ppc64-gnu1.1.1indirecta
npm@napi-rs/nice-linux-riscv64-gnu1.1.1indirecta
npm@napi-rs/nice-linux-s390x-gnu1.1.1indirecta
npm@napi-rs/nice-linux-x64-gnu1.1.1indirecta
npm@napi-rs/nice-linux-x64-musl1.1.1indirecta
npm@napi-rs/nice-openharmony-arm641.1.1indirecta
npm@napi-rs/nice-win32-arm64-msvc1.1.1indirecta
npm@napi-rs/nice-win32-ia32-msvc1.1.1indirecta
npm@napi-rs/nice-win32-x64-msvc1.1.1indirecta
npm@napi-rs/wasm-runtime0.2.12indirecta
npm@nolyfill/is-core-module1.0.39indirecta
npm@package-json/types0.0.12indirecta
npm@pkgjs/parseargs0.11.0indirecta
npm@rtsao/scc1.1.0indirecta
npm@sec-ant/readable-stream0.4.1indirecta
npm@sidvind/better-ajv-errors0.6.10indirecta
npm@sidvind/better-ajv-errors2.1.3indirecta
npm@simple-libs/child-process-utils1.0.2indirecta
npm@simple-libs/stream-utils1.2.0indirecta
npm@sindresorhus/merge-streams4.0.0indirecta
npm@sinonjs/commons3.0.1indirecta
npm@sinonjs/fake-timers13.0.5indirecta
npm@sinonjs/fake-timers15.1.1indirecta
npm@sinonjs/samsam8.0.3indirecta
npm@stryker-mutator/api9.6.1indirecta
npm@stryker-mutator/core9.6.1indirecta
npm@stryker-mutator/instrumenter9.6.1indirecta
npm@stryker-mutator/mocha-runner9.6.1indirecta
npm@stryker-mutator/util9.6.1indirecta
npm@stylistic/eslint-plugin2.11.0indirecta
npm@tootallnate/once1.1.2indirecta
npm@tootallnate/quickjs-emscripten0.23.0indirecta
npm@tybys/wasm-util0.10.1indirecta
npm@types/estree1.0.8indirecta
npm@types/jsdom28.0.1indirecta
npm@types/json-schema7.0.15indirecta
npm@types/json50.0.29indirecta
npm@types/node20.19.39indirecta
npm@types/normalize-package-data2.4.4indirecta
npm@types/tough-cookie4.0.5indirecta
npm@types/yargs17.0.35indirecta
npm@types/yargs-parser21.0.3indirecta
npm@types/yauzl2.10.3indirecta
npm@typescript-eslint/eslint-plugin8.59.0indirecta
npm@typescript-eslint/parser8.59.0indirecta
npm@typescript-eslint/project-service8.57.2indirecta
npm@typescript-eslint/project-service8.59.0indirecta
npm@typescript-eslint/scope-manager8.57.2indirecta
npm@typescript-eslint/scope-manager8.59.0indirecta
npm@typescript-eslint/tsconfig-utils8.57.2indirecta
npm@typescript-eslint/tsconfig-utils8.59.0indirecta
npm@typescript-eslint/type-utils8.59.0indirecta
npm@typescript-eslint/types8.57.2indirecta
npm@typescript-eslint/types8.59.0indirecta
npm@typescript-eslint/typescript-estree8.57.2indirecta
npm@typescript-eslint/typescript-estree8.59.0indirecta
npm@typescript-eslint/utils8.57.2indirecta
npm@typescript-eslint/utils8.59.0indirecta
npm@typescript-eslint/visitor-keys8.57.2indirecta
npm@typescript-eslint/visitor-keys8.59.0indirecta
npm@unrs/resolver-binding-android-arm-eabi1.11.1indirecta
npm@unrs/resolver-binding-android-arm641.11.1indirecta
npm@unrs/resolver-binding-darwin-arm641.11.1indirecta
npm@unrs/resolver-binding-darwin-x641.11.1indirecta
npm@unrs/resolver-binding-freebsd-x641.11.1indirecta
npm@unrs/resolver-binding-linux-arm-gnueabihf1.11.1indirecta
npm@unrs/resolver-binding-linux-arm-musleabihf1.11.1indirecta
npm@unrs/resolver-binding-linux-arm64-gnu1.11.1indirecta
npm@unrs/resolver-binding-linux-arm64-musl1.11.1indirecta
npm@unrs/resolver-binding-linux-ppc64-gnu1.11.1indirecta
npm@unrs/resolver-binding-linux-riscv64-gnu1.11.1indirecta
npm@unrs/resolver-binding-linux-riscv64-musl1.11.1indirecta
npm@unrs/resolver-binding-linux-s390x-gnu1.11.1indirecta
npm@unrs/resolver-binding-linux-x64-gnu1.11.1indirecta
npm@unrs/resolver-binding-linux-x64-musl1.11.1indirecta
npm@unrs/resolver-binding-wasm32-wasi1.11.1indirecta
npm@unrs/resolver-binding-win32-arm64-msvc1.11.1indirecta
npm@unrs/resolver-binding-win32-ia32-msvc1.11.1indirecta
npm@unrs/resolver-binding-win32-x64-msvc1.11.1indirecta
npmabab2.0.6indirecta
npmacorn7.4.1indirecta
npmacorn8.16.0indirecta
npmacorn-globals6.0.0indirecta
npmacorn-jsx5.3.2indirecta
npmacorn-walk7.2.0indirecta
npmagent-base6.0.2indirecta
npmagent-base7.1.4indirecta
npmaggregate-error3.1.0indirecta
npmajv6.14.0indirecta
npmajv8.18.0indirecta
npmangular-html-parser10.4.0indirecta
npmansi-colors4.1.3indirecta
npmansi-escapes4.3.2indirecta
npmansi-regex4.1.1indirecta
npmansi-regex5.0.1indirecta
npmansi-regex6.2.2indirecta
npmansi-styles2.0.0indirecta
npmansi-styles3.2.1indirecta
npmansi-styles4.3.0indirecta
npmansi-styles6.2.3indirecta
npmappend-transform2.0.0indirecta
npmarchy1.0.0indirecta
npmargparse1.0.10indirecta
npmargparse2.0.1indirecta
npmarray-buffer-byte-length1.0.2indirecta
npmarray-changes3.0.1indirecta
npmarray-changes-async3.0.1indirecta
npmarray-find-index1.0.2indirecta
npmarray-ify1.0.0indirecta
npmarray-includes3.1.9indirecta
npmarray.prototype.findlast1.2.5indirecta
npmarray.prototype.findlastindex1.2.6indirecta
npmarray.prototype.flat1.3.3indirecta
npmarray.prototype.flatmap1.3.3indirecta
npmarray.prototype.tosorted1.1.4indirecta
npmarraybuffer.prototype.slice1.0.4indirecta
npmarraydiff-async0.2.0indirecta
npmarraydiff-papandreou0.1.1-patch1indirecta
npmarrify1.0.1indirecta
npmast-types0.13.4indirecta
npmastral-regex1.0.0indirecta
npmastral-regex2.0.0indirecta
npmasync-function1.0.0indirecta
npmasynckit0.4.0indirecta
npmavailable-typed-arrays1.0.7indirecta
npmb4a1.8.0indirecta
npmbabel-extract-comments1.0.0indirecta
npmbabel-plugin-syntax-object-rest-spread6.13.0indirecta
npmbabel-plugin-transform-object-rest-spread6.26.0indirecta
npmbabel-runtime6.26.0indirecta
npmbabylon6.18.0indirecta
npmbalanced-match1.0.2indirecta
npmbalanced-match4.0.4indirecta
npmbare-events2.8.2indirecta
npmbare-fs4.5.6indirecta
npmbare-os3.8.0indirecta
npmbare-path3.0.0indirecta
npmbare-stream2.10.0indirecta
npmbare-url2.4.0indirecta
npmbaseline-browser-mapping2.10.10indirecta
npmbasic-ftp5.2.0indirecta
npmbetter-ajv-errors0.6.7indirecta
npmbluebird2.9.34indirecta
npmbluebird3.7.2indirecta
npmboolbase1.0.0indirecta
npmbrace-expansion1.1.12indirecta
npmbrace-expansion2.0.2indirecta
npmbrace-expansion5.0.5indirecta
npmbrowser-process-hrtime1.0.0indirecta
npmbrowser-stdout1.3.1indirecta
npmbrowserslist4.28.1indirecta
npmbuffer-crc320.2.13indirecta
npmbuffer-from1.1.2indirecta
npmbuiltins5.1.0indirecta
npmcaching-transform4.0.0indirecta
npmcall-bind1.0.8indirecta
npmcall-bind1.0.9indirecta
npmcall-bind-apply-helpers1.0.2indirecta
npmcall-bound1.0.4indirecta
npmcallsite1.0.0indirecta
npmcallsites3.1.0indirecta
npmcamel-case3.0.0indirecta
npmcamelcase4.1.0indirecta
npmcamelcase5.3.1indirecta
npmcamelcase6.3.0indirecta
npmcamelcase-keys4.2.0indirecta
npmcaniuse-api3.0.0indirecta
npmcaniuse-lite1.0.30001781indirecta
npmcapitalize2.0.4indirecta
npmchalk2.4.2indirecta
npmchalk4.1.2indirecta
npmchalk5.6.2indirecta
npmchance1.0.16indirecta
npmchance-generators3.5.3indirecta
npmcharacter-sets1.0.8indirecta
npmchardet0.7.0indirecta
npmchardet2.1.1indirecta
npmchokidar4.0.3indirecta
npmchromium-bidi14.0.0indirecta
npmclean-css4.2.4indirecta
npmclean-stack2.2.0indirecta
npmcli-cursor3.1.0indirecta
npmcli-width3.0.0indirecta
npmcli-width4.1.0indirecta
npmcliui6.0.0indirecta
npmcliui8.0.1indirecta
npmcliui9.0.1indirecta
npmcode-error-fragment0.0.230indirecta
npmcolor-convert1.9.3indirecta
npmcolor-convert2.0.1indirecta
npmcolor-diff0.1.7indirecta
npmcolor-name1.1.3indirecta
npmcolor-name1.1.4indirecta
npmcolord2.9.3indirecta
npmcombined-stream1.0.8indirecta
npmcombos0.2.0indirecta
npmcommander14.0.3indirecta
npmcommander2.20.3indirecta
npmcommander7.2.0indirecta
npmcomment-parser1.4.5indirecta
npmcommon-path-prefix1.0.0indirecta
npmcommon-tags1.8.2indirecta
npmcommondir1.0.1indirecta
npmcompare-func2.0.0indirecta
npmconcat-map0.0.1indirecta
npmconventional-changelog-angular8.3.1indirecta
npmconventional-changelog-conventionalcommits9.3.1indirecta
npmconventional-commits-parser6.4.0indirecta
npmconvert-source-map1.9.0indirecta
npmconvert-source-map2.0.0indirecta
npmcore-js2.6.12indirecta
npmcore-js3.49.0indirecta
npmcosmiconfig9.0.1indirecta
npmcosmiconfig-typescript-loader6.3.0indirecta
npmcounteraction1.3.2indirecta
npmcreateerror1.1.0indirecta
npmcreateerror1.2.0indirecta
npmcreateerror1.3.0indirecta
npmcross-spawn6.0.6indirecta
npmcross-spawn7.0.6indirecta
npmcss-declaration-sorter6.4.1indirecta
npmcss-font-parser-papandreou0.2.3-patch1indirecta
npmcss-generators0.2.3indirecta
npmcss-generators1.1.0indirecta
npmcss-select4.3.0indirecta
npmcss-syntax-parser1.5.1indirecta
npmcss-tree1.1.3indirecta
npmcss-unit-converter1.1.2indirecta
npmcss-what6.2.2indirecta
npmcssesc3.0.0indirecta
npmcssnano5.1.15indirecta
npmcssnano-preset-default5.2.14indirecta
npmcssnano-utils3.1.0indirecta
npmcsso4.2.0indirecta
npmcssom0.3.8indirecta
npmcssom0.4.4indirecta
npmcssstyle2.3.0indirecta
npmcssstyle4.6.0indirecta
npmcurrently-unhandled0.4.1indirecta
npmd1.0.2indirecta
npmdata-uri-to-buffer6.0.2indirecta
npmdata-urls1.1.0indirecta
npmdata-urls2.0.0indirecta
npmdata-urls5.0.0indirecta
npmdata-view-buffer1.0.2indirecta
npmdata-view-byte-length1.0.2indirecta
npmdata-view-byte-offset1.0.1indirecta
npmdebug3.2.7indirecta
npmdebug4.4.3indirecta
npmdecamelize1.2.0indirecta
npmdecamelize4.0.0indirecta
npmdecamelize-keys1.1.1indirecta
npmdecimal.js10.6.0indirecta
npmdeep-equal1.1.2indirecta
npmdeep-is0.1.4indirecta
npmdeepmerge4.3.1indirecta
npmdefault-require-extensions3.0.1indirecta
npmdefine-data-property1.1.4indirecta
npmdefine-properties1.2.1indirecta
npmdefined1.0.1indirecta
npmdegenerator5.0.1indirecta
npmdelayed-stream1.0.0indirecta
npmdes.js1.1.0indirecta
npmdetect-indent3.0.1indirecta
npmdetect-indent5.0.0indirecta
npmdevtools-protocol0.0.1581282indirecta
npmdiff4.0.2indirecta
npmdiff7.0.0indirecta
npmdiff-match-patch1.0.5indirecta
npmdnserrors2.1.2indirecta
npmdoctrine2.1.0indirecta
npmdoctrine3.0.0indirecta
npmdom-serializer1.4.1indirecta
npmdomelementtype2.3.0indirecta
npmdomexception2.0.1indirecta
npmdomhandler4.3.1indirecta
npmdomspace1.2.2indirecta
npmdomutils2.8.0indirecta
npmdot-prop5.3.0indirecta
npmdunder-proto1.0.1indirecta
npmeastasianwidth0.2.0indirecta
npmelectron-to-chromium1.5.322indirecta
npmemoji-regex10.6.0indirecta
npmemoji-regex7.0.3indirecta
npmemoji-regex8.0.0indirecta
npmemoji-regex9.2.2indirecta
npmend-of-stream1.4.5indirecta
npmenhanced-resolve5.20.1indirecta
npmenquirer2.4.1indirecta
npmentities2.2.0indirecta
npmentities6.0.1indirecta
npmenv-paths2.2.1indirecta
npmerror-ex1.3.4indirecta
npmes-abstract1.24.1indirecta
npmes-abstract1.24.2indirecta
npmes-abstract-get1.0.0indirecta
npmes-define-property1.0.1indirecta
npmes-errors1.3.0indirecta
npmes-iterator-helpers1.3.1indirecta
npmes-object-atoms1.1.1indirecta
npmes-object-atoms1.1.2indirecta
npmes-set-tostringtag2.1.0indirecta
npmes-shim-unscopables1.1.0indirecta
npmes-to-primitive1.3.0indirecta
npmes-to-primitive1.3.4indirecta
npmes-toolkit1.47.0indirecta
npmes5-ext0.10.64indirecta
npmes6-error4.1.1indirecta
npmes6-iterator2.0.3indirecta
npmes6-set0.1.6indirecta
npmes6-symbol3.1.4indirecta
npmesanimate1.1.1indirecta
npmescalade3.2.0indirecta
npmescape-string-regexp1.0.5indirecta
npmescape-string-regexp4.0.0indirecta
npmescodegen1.14.3indirecta
npmescodegen2.1.0indirecta
npmeslint6.8.0indirecta
npmeslint7.32.0indirecta
npmeslint9.39.4indirecta
npmeslint-compat-utils0.5.1indirecta
npmeslint-config-prettier10.1.8indirecta
npmeslint-import-context0.1.9indirecta
npmeslint-import-resolver-node0.3.9indirecta
npmeslint-import-resolver-typescript3.10.1indirecta
npmeslint-module-utils2.14.0indirecta
npmeslint-plugin-es4.1.0indirecta
npmeslint-plugin-es-x7.8.0indirecta
npmeslint-plugin-import2.32.0indirecta
npmeslint-plugin-import-x4.16.2indirecta
npmeslint-plugin-mocha10.5.0indirecta
npmeslint-plugin-n15.7.0indirecta
npmeslint-plugin-n17.24.0indirecta
npmeslint-plugin-promise7.2.1indirecta
npmeslint-plugin-react7.37.5indirecta
npmeslint-plugin-regexp3.1.0indirecta
npmeslint-scope5.1.1indirecta
npmeslint-scope8.4.0indirecta
npmeslint-utils1.4.3indirecta
npmeslint-utils2.1.0indirecta
npmeslint-utils3.0.0indirecta
npmeslint-visitor-keys1.3.0indirecta
npmeslint-visitor-keys2.1.0indirecta
npmeslint-visitor-keys3.4.3indirecta
npmeslint-visitor-keys4.2.1indirecta
npmeslint-visitor-keys5.0.1indirecta
npmesniff2.0.1indirecta
npmespree10.4.0indirecta
npmespree6.2.1indirecta
npmespree7.3.1indirecta
npmesprima4.0.1indirecta
npmespurify2.1.1indirecta
npmesquery1.7.0indirecta
npmesrecurse4.3.0indirecta
npmestraverse4.3.0indirecta
npmestraverse5.3.0indirecta
npmestraverse-fb1.3.2indirecta
npmesutils2.0.3indirecta
npmevent-emitter0.3.5indirecta
npmevents-universal1.0.1indirecta
npmexeca9.6.1indirecta
npmext1.7.0indirecta
npmextend3.0.2indirecta
npmexternal-editor3.1.0indirecta
npmextract-zip2.0.1indirecta
npmfast-deep-equal3.1.3indirecta
npmfast-fifo1.3.2indirecta
npmfast-json-stable-stringify2.1.0indirecta
npmfast-levenshtein2.0.6indirecta
npmfast-string-truncated-width3.0.3indirecta
npmfast-string-width3.0.2indirecta
npmfast-uri3.1.0indirecta
npmfast-wrap-ansi0.2.2indirecta
npmfd-slicer1.1.0indirecta
npmfdir6.5.0indirecta
npmfigures3.2.0indirecta
npmfigures6.1.0indirecta
npmfile-entry-cache5.0.1indirecta
npmfile-entry-cache6.0.1indirecta
npmfile-entry-cache8.0.0indirecta
npmfill-keys1.0.2indirecta
npmfind-cache-dir3.3.2indirecta
npmfind-up2.1.0indirecta
npmfind-up3.0.0indirecta
npmfind-up4.1.0indirecta
npmfind-up5.0.0indirecta
npmflat5.0.2indirecta
npmflat-cache2.0.1indirecta
npmflat-cache3.2.0indirecta
npmflat-cache4.0.1indirecta
npmflatted2.0.2indirecta
npmflatted3.4.2indirecta
npmfont-family-papandreou0.2.0-patch2indirecta
npmfor-each0.3.5indirecta
npmforeground-child2.0.0indirecta
npmforeground-child3.3.1indirecta
npmform-data2.1.4indirecta
npmform-data3.0.4indirecta
npmform-data4.0.5indirecta
npmfromentries1.3.2indirecta
npmfs-extra4.0.3indirecta
npmfs.realpath1.0.0indirecta
npmfunction-bind1.1.2indirecta
npmfunction.prototype.name1.1.8indirecta
npmfunction.prototype.name1.2.0indirecta
npmfunctional-red-black-tree1.0.1indirecta
npmfunctions-have-names1.2.3indirecta
npmgather-stream1.0.0indirecta
npmgenerator-function2.0.1indirecta
npmgensync1.0.0-beta.2indirecta
npmget-caller-file2.0.5indirecta
npmget-east-asian-width1.6.0indirecta
npmget-intrinsic1.3.0indirecta
npmget-own-enumerable-property-symbols3.0.2indirecta
npmget-package-type0.1.0indirecta
npmget-proto1.0.1indirecta
npmget-stdin4.0.1indirecta
npmget-stream5.2.0indirecta
npmget-stream9.0.1indirecta
npmget-symbol-description1.1.0indirecta
npmget-tsconfig4.13.7indirecta
npmget-uri6.0.5indirecta
npmgettemporaryfilepath1.0.1indirecta
npmgit-raw-commits5.0.1indirecta
npmglob10.5.0indirecta
npmglob13.0.6indirecta
npmglob7.2.3indirecta
npmglob-parent5.1.2indirecta
npmglob-parent6.0.2indirecta
npmglobal-directory5.0.0indirecta
npmglobals12.4.0indirecta
npmglobals13.24.0indirecta
npmglobals14.0.0indirecta
npmglobals15.15.0indirecta
npmglobals16.5.0indirecta
npmglobalthis1.0.4indirecta
npmglobrex0.1.2indirecta
npmgopd1.2.0indirecta
npmgraceful-fs4.2.11indirecta
npmgrapheme-splitter1.0.4indirecta
npmgreedy-interval-packer1.2.0indirecta
npmhas-bigints1.1.0indirecta
npmhas-flag3.0.0indirecta
npmhas-flag4.0.0indirecta
npmhas-property-descriptors1.0.2indirecta
npmhas-proto1.2.0indirecta
npmhas-symbols1.1.0indirecta
npmhas-tostringtag1.0.2indirecta
npmhasha5.2.2indirecta
npmhasown2.0.2indirecta
npmhasown2.0.4indirecta
npmhe1.2.0indirecta
npmhosted-git-info2.8.9indirecta
npmhtml-encoding-sniffer2.0.1indirecta
npmhtml-encoding-sniffer4.0.0indirecta
npmhtml-escaper2.0.2indirecta
npmhtml-generators1.1.0indirecta
npmhtml-minifier4.0.0indirecta
npmhtml-validate1.6.0indirecta
npmhtml-validate3.0.0indirecta
npmhtml-validate8.11.1indirecta
npmhttp-proxy-agent4.0.1indirecta
npmhttp-proxy-agent7.0.2indirecta
npmhttpception3.0.0indirecta
npmhttperrors2.0.1indirecta
npmhttperrors2.2.0indirecta
npmhttps-proxy-agent5.0.1indirecta
npmhttps-proxy-agent7.0.6indirecta
npmhuman-signals8.0.1indirecta
npmiconv-lite0.4.24indirecta
npmiconv-lite0.4.5indirecta
npmiconv-lite0.6.3indirecta
npmiconv-lite0.7.2indirecta
npmignore4.0.6indirecta
npmignore5.3.1indirecta
npmignore5.3.2indirecta
npmignore7.0.5indirecta
npmimageinfo1.0.4indirecta
npmimport-fresh3.3.1indirecta
npmimurmurhash0.1.4indirecta
npmindent-string3.2.0indirecta
npmindent-string4.0.0indirecta
npminflight1.0.6indirecta
npminherits2.0.4indirecta
npmini6.0.0indirecta
npminquirer7.3.3indirecta
npminternal-slot1.1.0indirecta
npmip-address10.1.0indirecta
npmis-arguments1.2.0indirecta
npmis-array-buffer3.0.5indirecta
npmis-arrayish0.2.1indirecta
npmis-async-function2.1.1indirecta
npmis-bigint1.1.0indirecta
npmis-boolean-object1.2.2indirecta
npmis-bun-module2.0.0indirecta
npmis-callable1.2.7indirecta
npmis-core-module2.16.1indirecta
npmis-core-module2.16.2indirecta
npmis-data-view1.0.2indirecta
npmis-date-object1.1.0indirecta
npmis-document.all1.0.0indirecta
npmis-extglob2.1.1indirecta
npmis-finalizationregistry1.1.1indirecta
npmis-finite1.1.0indirecta
npmis-fullwidth-code-point2.0.0indirecta
npmis-fullwidth-code-point3.0.0indirecta
npmis-generator-function1.1.2indirecta
npmis-glob4.0.3indirecta
npmis-map2.0.3indirecta
npmis-negative-zero2.0.3indirecta
npmis-number-object1.1.1indirecta
npmis-obj1.0.1indirecta
npmis-obj2.0.0indirecta
npmis-object1.0.2indirecta
npmis-path-inside3.0.3indirecta
npmis-plain-obj1.1.0indirecta
npmis-plain-obj2.1.0indirecta
npmis-plain-obj4.1.0indirecta
npmis-potential-custom-element-name1.0.1indirecta
npmis-regex1.2.1indirecta
npmis-regexp1.0.0indirecta
npmis-set2.0.3indirecta
npmis-shared-array-buffer1.0.4indirecta
npmis-stream1.1.0indirecta
npmis-stream2.0.1indirecta
npmis-stream4.0.1indirecta
npmis-string1.1.1indirecta
npmis-symbol1.1.1indirecta
npmis-typed-array1.1.15indirecta
npmis-typedarray1.0.0indirecta
npmis-unicode-supported0.1.0indirecta
npmis-unicode-supported2.1.0indirecta
npmis-weakmap2.0.2indirecta
npmis-weakref1.1.1indirecta
npmis-weakset2.0.4indirecta
npmis-windows1.0.2indirecta
npmisarray2.0.5indirecta
npmisexe2.0.0indirecta
npmiso-639-12.1.15indirecta
npmiso-639-13.1.5indirecta
npmistanbul-lib-coverage3.2.2indirecta
npmistanbul-lib-hook3.0.0indirecta
npmistanbul-lib-instrument4.0.3indirecta
npmistanbul-lib-processinfo2.0.3indirecta
npmistanbul-lib-report3.0.1indirecta
npmistanbul-lib-source-maps4.0.1indirecta
npmistanbul-reports3.2.0indirecta
npmiterator.prototype1.1.5indirecta
npmjackspeak3.4.3indirecta
npmjiti2.6.1indirecta
npmjs-md40.3.2indirecta
npmjs-tokens4.0.0indirecta
npmjs-yaml3.14.2indirecta
npmjs-yaml4.1.1indirecta
npmjsdoc-type-pratt-parser7.2.0indirecta
npmjsesc3.1.0indirecta
npmjson-buffer3.0.1indirecta
npmjson-merge-patch0.2.3indirecta
npmjson-merge-patch1.0.2indirecta
npmjson-parse-better-errors1.0.2indirecta
npmjson-parse-even-better-errors2.3.1indirecta
npmjson-rpc-2.01.7.1indirecta
npmjson-schema-traverse0.4.1indirecta
npmjson-schema-traverse1.0.0indirecta
npmjson-stable-stringify-without-jsonify1.0.1indirecta
npmjson-to-ast2.1.0indirecta
npmjson51.0.2indirecta
npmjson52.2.3indirecta
npmjsonfile4.0.0indirecta
npmjsonpointer4.1.0indirecta
npmjsx-ast-utils3.3.5indirecta
npmjust-extend6.2.0indirecta
npmkeyv4.5.4indirecta
npmkleur3.0.3indirecta
npmkleur4.1.5indirecta
npmleven3.1.0indirecta
npmlevn0.3.0indirecta
npmlevn0.4.1indirecta
npmlilconfig2.1.0indirecta
npmload-json-file4.0.0indirecta
npmlocate-path2.0.0indirecta
npmlocate-path3.0.0indirecta
npmlocate-path5.0.0indirecta
npmlocate-path6.0.0indirecta
npmlodash4.17.23indirecta
npmlodash._reinterpolate3.0.0indirecta
npmlodash.assign4.2.0indirecta
npmlodash.clone4.5.0indirecta
npmlodash.defaults4.2.0indirecta
npmlodash.flattendeep4.4.0indirecta
npmlodash.groupby4.6.0indirecta
npmlodash.memoize4.1.2indirecta
npmlodash.merge4.6.2indirecta
npmlodash.omit4.5.0indirecta
npmlodash.sortby4.7.0indirecta
npmlodash.template4.5.0indirecta
npmlodash.templatesettings4.2.0indirecta
npmlodash.truncate4.4.2indirecta
npmlodash.uniq4.5.0indirecta
npmlog-symbols4.1.0indirecta
npmloose-envify1.4.0indirecta
npmloud-rejection1.6.0indirecta
npmlower-case1.1.4indirecta
npmlru-cache10.4.3indirecta
npmlru-cache11.3.5indirecta
npmlru-cache2.3.1indirecta
npmlru-cache5.1.1indirecta
npmlru-cache7.18.3indirecta
npmmagicpen6.2.4indirecta
npmmagicpen-media1.5.2indirecta
npmmagicpen-media3.0.2indirecta
npmmagicpen-prism3.0.2indirecta
npmmake-dir3.1.0indirecta
npmmake-dir4.0.0indirecta
npmmap-obj1.0.1indirecta
npmmap-obj2.0.0indirecta
npmmarkdown-escape1.1.0indirecta
npmmath-intrinsics1.1.0indirecta
npmmdn-data2.0.14indirecta
npmmdn-data2.0.29indirecta
npmmdn-data-papandreou2.0.10-patch1indirecta
npmmeow13.2.0indirecta
npmmeow5.0.0indirecta
npmmerge-descriptors1.0.3indirecta
npmmessy6.17.0indirecta
npmmime2.6.0indirecta
npmmime-db1.52.0indirecta
npmmime-types2.1.35indirecta
npmmimic-fn2.1.0indirecta
npmminimalistic-assert1.0.1indirecta
npmminimatch10.2.4indirecta
npmminimatch3.1.5indirecta
npmminimatch9.0.9indirecta
npmminimist1.2.8indirecta
npmminimist-options3.0.2indirecta
npmminipass7.1.3indirecta
npmmitm-papandreou1.7.0-patch1indirecta
npmmitt3.0.1indirecta
npmmkdirp0.5.6indirecta
npmmocha11.7.5indirecta
npmmodule-not-found-error1.0.1indirecta
npmms2.1.3indirecta
npmmutation-server-protocol0.4.1indirecta
npmmutation-testing-elements3.7.3indirecta
npmmutation-testing-metrics3.7.3indirecta
npmmutation-testing-report-schema3.7.3indirecta
npmmute-stream0.0.8indirecta
npmmute-stream3.0.0indirecta
npmnanoid3.3.16indirecta
npmnapi-postinstall0.3.4indirecta
npmnatural-compare1.4.0indirecta
npmneostandard0.12.2indirecta
npmnetmask2.0.2indirecta
npmnext-tick1.1.0indirecta
npmnice-try1.0.5indirecta
npmnise6.1.4indirecta
npmno-case2.3.2indirecta
npmnode-exports-info1.6.0indirecta
npmnode-preload0.2.1indirecta
npmnode-releases2.0.36indirecta
npmnormalize-package-data2.5.0indirecta
npmnormalize-url6.1.0indirecta
npmnormalizeurl1.0.0indirecta
npmnpm-run-path6.0.0indirecta
npmnth-check2.1.1indirecta
npmnwsapi2.2.23indirecta
npmnyc15.1.0indirecta
npmobject-assign4.1.1indirecta
npmobject-inspect1.13.4indirecta
npmobject-is1.1.6indirecta
npmobject-keys1.1.1indirecta
npmobject.assign4.1.7indirecta
npmobject.entries1.1.9indirecta
npmobject.fromentries2.0.8indirecta
npmobject.groupby1.0.3indirecta
npmobject.values1.2.1indirecta
npmoffline-github-changelog1.7.0indirecta
npmonce1.4.0indirecta
npmonetime5.1.2indirecta
npmoptionator0.8.3indirecta
npmoptionator0.9.4indirecta
npmos-tmpdir1.0.2indirecta
npmown-keys1.0.1indirecta
npmown-keys1.0.2indirecta
npmp-limit1.3.0indirecta
npmp-limit2.3.0indirecta
npmp-limit3.1.0indirecta
npmp-locate2.0.0indirecta
npmp-locate3.0.0indirecta
npmp-locate4.1.0indirecta
npmp-locate5.0.0indirecta
npmp-map3.0.0indirecta
npmp-try1.0.0indirecta
npmp-try2.2.0indirecta
npmpac-proxy-agent7.2.0indirecta
npmpac-resolver7.0.1indirecta
npmpackage-hash4.0.0indirecta
npmpackage-json-from-dist1.0.1indirecta
npmpako1.0.11indirecta
npmparam-case2.1.1indirecta
npmparent-module1.0.1indirecta
npmparse-json4.0.0indirecta
npmparse-json5.2.0indirecta
npmparse-ms4.0.0indirecta
npmpasserror1.1.1indirecta
npmpath-exists3.0.0indirecta
npmpath-exists4.0.0indirecta
npmpath-is-absolute1.0.1indirecta
npmpath-key2.0.1indirecta
npmpath-key3.1.1indirecta
npmpath-key4.0.0indirecta
npmpath-parse1.0.7indirecta
npmpath-scurry1.11.1indirecta
npmpath-scurry2.0.2indirecta
npmpath-to-regexp8.3.0indirecta
npmpath-type3.0.0indirecta
npmpegjs0.10.0indirecta
npmpend1.2.0indirecta
npmpeowly1.3.3indirecta
npmperfectionist-dfd3.0.3indirecta
npmpicocolors0.2.1indirecta
npmpicocolors1.1.1indirecta
npmpicomatch4.0.4indirecta
npmpify3.0.0indirecta
npmpkg-dir4.2.0indirecta
npmpkg-up3.1.0indirecta
npmpossible-typed-array-names1.1.0indirecta
npmpostcss-calc8.2.4indirecta
npmpostcss-colormin5.3.1indirecta
npmpostcss-convert-values5.1.3indirecta
npmpostcss-discard-comments5.1.2indirecta
npmpostcss-discard-duplicates5.1.0indirecta
npmpostcss-discard-empty5.1.1indirecta
npmpostcss-discard-overridden5.1.0indirecta
npmpostcss-merge-longhand5.1.7indirecta
npmpostcss-merge-rules5.1.4indirecta
npmpostcss-minify-font-values5.1.0indirecta
npmpostcss-minify-gradients5.1.1indirecta
npmpostcss-minify-params5.1.4indirecta
npmpostcss-minify-selectors5.2.1indirecta
npmpostcss-normalize-charset5.1.0indirecta
npmpostcss-normalize-display-values5.1.0indirecta
npmpostcss-normalize-positions5.1.1indirecta
npmpostcss-normalize-repeat-style5.1.1indirecta
npmpostcss-normalize-string5.1.0indirecta
npmpostcss-normalize-timing-functions5.1.0indirecta
npmpostcss-normalize-unicode5.1.1indirecta
npmpostcss-normalize-url5.1.0indirecta
npmpostcss-normalize-whitespace5.1.1indirecta
npmpostcss-ordered-values5.1.3indirecta
npmpostcss-reduce-initial5.1.2indirecta
npmpostcss-reduce-transforms5.1.0indirecta
npmpostcss-scss4.0.9indirecta
npmpostcss-selector-parser6.1.2indirecta
npmpostcss-svgo5.1.0indirecta
npmpostcss-unique-selectors5.1.1indirecta
npmprelude-ls1.1.2indirecta
npmprelude-ls1.2.1indirecta
npmprettier3.8.1indirecta
npmpretty-ms9.3.0indirecta
npmprismjs1.30.0indirecta
npmprocess-on-spawn1.1.0indirecta
npmprogress2.0.3indirecta
npmprompts2.4.2indirecta
npmprop-types15.8.1indirecta
npmproxy-agent6.5.0indirecta
npmproxy-from-env1.1.0indirecta
npmproxyquire2.1.3indirecta
npmpsl1.15.0indirecta
npmpump3.0.4indirecta
npmpunycode2.3.1indirecta
npmpuppeteer24.40.0indirecta
npmqs6.15.0indirecta
npmqs6.15.1indirecta
npmquerystringify2.2.0indirecta
npmquick-lru1.1.0indirecta
npmquoted-printable1.0.0indirecta
npmrambda7.5.0indirecta
npmrandombytes2.1.0indirecta
npmreact-is16.13.1indirecta
npmread-file-stdin0.2.1indirecta
npmread-pkg3.0.0indirecta
npmread-pkg5.2.0indirecta
npmread-pkg-up3.0.0indirecta
npmread-pkg-up6.0.0indirecta
npmreaddirp4.1.2indirecta
npmredent2.0.0indirecta
npmreduce-css-calc2.1.8indirecta
npmrefa0.12.1indirecta
npmreflect.getprototypeof1.0.10indirecta
npmregenerator-runtime0.11.1indirecta
npmregexp-ast-analysis0.7.1indirecta
npmregexp.prototype.flags1.5.4indirecta
npmregexpp2.0.1indirecta
npmregexpp3.2.0indirecta
npmrelateurl0.2.7indirecta
npmrelease-zalgo1.0.0indirecta
npmrepeat-string1.6.1indirecta
npmrepeating1.1.3indirecta
npmrequire-directory2.1.1indirecta
npmrequire-from-string2.0.2indirecta
npmrequire-main-filename2.0.0indirecta
npmrequires-port1.0.0indirecta
npmresemblejs4.1.0indirecta
npmresolve1.22.11indirecta
npmresolve1.22.12indirecta
npmresolve2.0.0-next.6indirecta
npmresolve-from4.0.0indirecta
npmresolve-from5.0.0indirecta
npmresolve-pkg-maps1.0.0indirecta
npmrestore-cursor3.1.0indirecta
npmrfc20472.0.0indirecta
npmrfc22311.3.0indirecta
npmrimraf2.6.3indirecta
npmrimraf3.0.2indirecta
npmrimraf6.1.3indirecta
npmrrweb-cssom0.7.1indirecta
npmrrweb-cssom0.8.0indirecta
npmrun-async2.4.1indirecta
npmrxjs6.6.7indirecta
npmrxjs7.8.2indirecta
npmsafe-array-concat1.1.3indirecta
npmsafe-array-concat1.1.4indirecta
npmsafe-buffer5.2.1indirecta
npmsafe-push-apply1.0.0indirecta
npmsafe-regex-test1.1.0indirecta
npmsafer-buffer2.1.2indirecta
npmsax1.6.0indirecta
npmsaxes5.0.1indirecta
npmsaxes6.0.0indirecta
npmschemes1.4.0indirecta
npmscslre0.3.0indirecta
npmsemver5.7.2indirecta
npmsemver6.3.1indirecta
npmsemver7.7.4indirecta
npmserialize-javascript6.0.2indirecta
npmset-blocking2.0.0indirecta
npmset-function-length1.2.2indirecta
npmset-function-name2.0.2indirecta
npmset-proto1.0.0indirecta
npmshebang-command1.2.0indirecta
npmshebang-command2.0.0indirecta
npmshebang-regex1.0.0indirecta
npmshebang-regex3.0.0indirecta
npmside-channel1.1.0indirecta
npmside-channel-list1.0.0indirecta
npmside-channel-map1.0.1indirecta
npmside-channel-weakmap1.0.2indirecta
npmsift7.0.1indirecta
npmsignal-exit3.0.7indirecta
npmsignal-exit4.1.0indirecta
npmsinon19.0.5indirecta
npmsisteransi1.0.5indirecta
npmslice-ansi2.1.0indirecta
npmslice-ansi4.0.0indirecta
npmsmart-buffer4.2.0indirecta
npmsocketerrors0.3.0indirecta
npmsocks2.8.7indirecta
npmsocks-proxy-agent8.0.5indirecta
npmsource-map0.6.1indirecta
npmsource-map0.7.6indirecta
npmsource-map-js1.2.1indirecta
npmsource-map-support0.5.21indirecta
npmspawn-wrap2.0.0indirecta
npmspdx-correct3.2.0indirecta
npmspdx-exceptions2.5.0indirecta
npmspdx-expression-parse3.0.1indirecta
npmspdx-license-ids3.0.23indirecta
npmsprintf-js1.0.3indirecta
npmstable0.1.8indirecta
npmstable-hash0.0.5indirecta
npmstable-hash-x0.2.0indirecta
npmstop-iteration-iterator1.1.0indirecta
npmstreamx2.25.0indirecta
npmstring-width3.1.0indirecta
npmstring-width4.2.3indirecta
npmstring-width5.1.2indirecta
npmstring-width7.2.0indirecta
npmstring.prototype.matchall4.0.12indirecta
npmstring.prototype.repeat1.0.0indirecta
npmstring.prototype.trim1.2.10indirecta
npmstring.prototype.trim1.2.11indirecta
npmstring.prototype.trimend1.0.10indirecta
npmstring.prototype.trimend1.0.9indirecta
npmstring.prototype.trimstart1.0.8indirecta
npmstringify-object3.3.0indirecta
npmstrip-ansi5.2.0indirecta
npmstrip-ansi6.0.1indirecta
npmstrip-ansi7.2.0indirecta
npmstrip-bom3.0.0indirecta
npmstrip-bom4.0.0indirecta
npmstrip-comments1.0.2indirecta
npmstrip-final-newline4.0.0indirecta
npmstrip-indent2.0.0indirecta
npmstrip-json-comments3.1.1indirecta
npmstylehacks5.1.1indirecta
npmsubset-font2.5.0indirecta
npmsupports-color5.5.0indirecta
npmsupports-color7.2.0indirecta
npmsupports-color8.1.1indirecta
npmsupports-preserve-symlinks-flag1.0.0indirecta
npmsvgo2.8.2indirecta
npmsymbol-tree3.2.4indirecta
npmtable5.4.6indirecta
npmtable6.9.0indirecta
npmtapable2.3.2indirecta
npmtar-fs3.1.2indirecta
npmtar-stream3.1.8indirecta
npmteepee2.31.2indirecta
npmteex1.0.1indirecta
npmterser5.46.1indirecta
npmtest-exclude6.0.0indirecta
npmtext-decoder1.2.7indirecta
npmtext-table0.2.0indirecta
npmthrough2.3.8indirecta
npmtinyexec1.2.4indirecta
npmtinyglobby0.2.15indirecta
npmtldts6.1.86indirecta
npmtldts-core6.1.86indirecta
npmtmp0.0.33indirecta
npmtough-cookie4.1.4indirecta
npmtough-cookie5.1.2indirecta
npmtr461.0.1indirecta
npmtr462.1.0indirecta
npmtr465.1.1indirecta
npmtree-kill1.2.2indirecta
npmtrim-newlines2.0.0indirecta
npmtruncate-utf8-bytes1.0.2indirecta
npmts-api-utils2.5.0indirecta
npmts-declaration-location1.0.7indirecta
npmtsconfig-paths3.15.0indirecta
npmtslib1.14.1indirecta
npmtslib2.8.1indirecta
npmtunnel0.0.6indirecta
npmtype2.7.3indirecta
npmtype-check0.3.2indirecta
npmtype-check0.4.0indirecta
npmtype-detect4.0.8indirecta
npmtype-detect4.1.0indirecta
npmtype-fest0.20.2indirecta
npmtype-fest0.21.3indirecta
npmtype-fest0.5.2indirecta
npmtype-fest0.6.0indirecta
npmtype-fest0.8.1indirecta
npmtyped-array-buffer1.0.3indirecta
npmtyped-array-byte-length1.0.3indirecta
npmtyped-array-byte-offset1.0.4indirecta
npmtyped-array-length1.0.7indirecta
npmtyped-array-length1.0.8indirecta
npmtyped-inject5.0.0indirecta
npmtyped-query-selector2.12.1indirecta
npmtyped-rest-client2.3.1indirecta
npmtypedarray-to-buffer3.1.5indirecta
npmtypescript5.9.3indirecta
npmtypescript-eslint8.59.0indirecta
npmuglify-js3.19.3indirecta
npmukkonen1.4.0indirecta
npmunbox-primitive1.1.0indirecta
npmunderscore1.13.8indirecta
npmunderscore1.5.2indirecta
npmundici-types6.21.0indirecta
npmundici-types7.25.0indirecta
npmunexpected11.15.1indirecta
npmunexpected-bluebird2.9.34-longstack2indirecta
npmunexpected-check2.4.1indirecta
npmunexpected-messy8.2.1indirecta
npmunexpected-mitm12.4.0indirecta
npmunexpected-resemble5.0.1indirecta
npmunexpected-set2.0.1indirecta
npmunexpected-sinon10.11.2indirecta
npmunicorn-magic0.3.0indirecta
npmuniversalify0.1.2indirecta
npmuniversalify0.2.0indirecta
npmunrs-resolver1.11.1indirecta
npmupdate-browserslist-db1.2.3indirecta
npmupper-case1.1.3indirecta
npmuri-js4.4.1indirecta
npmurijs1.19.11indirecta
npmurl-parse1.5.10indirecta
npmutf82.1.2indirecta
npmutf8-byte-length1.0.5indirecta
npmutil-deprecate1.0.2indirecta
npmuuid8.3.2indirecta
npmv8-compile-cache2.4.0indirecta
npmvalidate-npm-package-license3.0.4indirecta
npmw3c-hr-time1.0.2indirecta
npmw3c-xmlserializer2.0.0indirecta
npmw3c-xmlserializer5.0.0indirecta
npmwawoff22.0.1indirecta
npmweapon-regex1.3.6indirecta
npmwebdriver-bidi-protocol0.4.1indirecta
npmwebidl-conversions4.0.2indirecta
npmwebidl-conversions5.0.0indirecta
npmwebidl-conversions6.1.0indirecta
npmwebidl-conversions7.0.0indirecta
npmwhatwg-encoding1.0.5indirecta
npmwhatwg-encoding3.1.1indirecta
npmwhatwg-mimetype2.3.0indirecta
npmwhatwg-mimetype4.0.0indirecta
npmwhatwg-url14.2.0indirecta
npmwhatwg-url7.1.0indirecta
npmwhatwg-url8.7.0indirecta
npmwhich1.3.1indirecta
npmwhich2.0.2indirecta
npmwhich-boxed-primitive1.1.1indirecta
npmwhich-builtin-type1.2.1indirecta
npmwhich-collection1.0.2indirecta
npmwhich-module2.0.1indirecta
npmwhich-typed-array1.1.20indirecta
npmwhich-typed-array1.1.22indirecta
npmwoff2sfnt-sfnt2woff1.0.0indirecta
npmword-wrap1.2.5indirecta
npmworkbox-background-sync4.3.1indirecta
npmworkbox-broadcast-update4.3.1indirecta
npmworkbox-build4.3.1indirecta
npmworkbox-cacheable-response4.3.1indirecta
npmworkbox-core4.3.1indirecta
npmworkbox-expiration4.3.1indirecta
npmworkbox-google-analytics4.3.1indirecta
npmworkbox-navigation-preload4.3.1indirecta
npmworkbox-precaching4.3.1indirecta
npmworkbox-range-requests4.3.1indirecta
npmworkbox-routing4.3.1indirecta
npmworkbox-strategies4.3.1indirecta
npmworkbox-streams4.3.1indirecta
npmworkbox-sw4.3.1indirecta
npmworkbox-window4.3.1indirecta
npmworkerpool9.3.4indirecta
npmwrap-ansi6.2.0indirecta
npmwrap-ansi7.0.0indirecta
npmwrap-ansi8.1.0indirecta
npmwrap-ansi9.0.2indirecta
npmwrappy1.0.2indirecta
npmwrite1.0.3indirecta
npmwrite-file-atomic3.0.3indirecta
npmwrite-file-stdout0.0.2indirecta
npmws7.5.10indirecta
npmws8.20.0indirecta
npmxml-name-validator3.0.0indirecta
npmxml-name-validator5.0.0indirecta
npmxmlchars2.2.0indirecta
npmy18n4.0.3indirecta
npmy18n5.0.8indirecta
npmyallist3.1.1indirecta
npmyaml1.10.3indirecta
npmyargs-parser10.1.0indirecta
npmyargs-parser18.1.3indirecta
npmyargs-parser21.1.1indirecta
npmyargs-parser22.0.0indirecta
npmyargs-unparser2.0.0indirecta
npmyauzl2.10.0indirecta
npmyocto-queue0.1.0indirecta
npmyoctocolors2.1.2indirecta
npmzod3.25.76indirecta
npmzod4.4.3indirecta
Avisos de dependencias 4

Instalar npm:@turntrout/subfont@1.11.7 arrastra 530 paquetes, directos y transitivos: 4 tienen avisos conocidos, de los cuales 0 son dependencias directas.

PaqueteVersiónRelaciónGravedadAvisosCorregido en
brace-expansion1.1.16indirectaalta15.0.8
form-data2.1.4indirectaalta24.0.6
html-minifier4.0.0indirectaalta1
@tootallnate/once1.1.2indirectabaja13.0.1

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": true,
      "size_kb": 7741,
      "has_wiki": false,
      "homepage": null,
      "languages": {
        "HTML": 1165,
        "Shell": 30848,
        "Python": 6698,
        "JavaScript": 562238,
        "TypeScript": 349470
      },
      "pushed_at": "2026-07-29T19:56:09Z",
      "created_at": "2026-03-10T15:21:37Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-29T19:54:51Z",
      "description": "Command line tool to optimize your webfont loading. Aggressive subsetting based on your font use, self-hosting of Google fonts and preloading",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "master",
      "license_spdx_raw": "MIT",
      "primary_language": "JavaScript",
      "significant_languages": [
        "JavaScript",
        "TypeScript"
      ]
    },
    "owner": {
      "blog": null,
      "name": null,
      "type": "Organization",
      "login": "AlexanderMattTurner",
      "company": null,
      "location": null,
      "followers": 4,
      "avatar_url": "https://avatars.githubusercontent.com/u/289737770?v=4",
      "created_at": "2026-06-01T15:25:24Z",
      "is_verified": null,
      "public_repos": 13,
      "account_age_days": 58
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": false
    },
    "activity": {
      "releases": [
        {
          "tag": "v1.11.7",
          "kind": "patch",
          "published_at": "2026-07-21T16:32:24Z"
        },
        {
          "tag": "v1.11.6",
          "kind": "patch",
          "published_at": "2026-07-21T16:29:25Z"
        },
        {
          "tag": "v1.11.5",
          "kind": "patch",
          "published_at": "2026-07-21T15:46:33Z"
        },
        {
          "tag": "v1.11.4",
          "kind": "patch",
          "published_at": "2026-07-19T21:13:07Z"
        },
        {
          "tag": "v1.11.2",
          "kind": "patch",
          "published_at": "2026-07-19T20:53:25Z"
        },
        {
          "tag": "v1.11.1",
          "kind": "patch",
          "published_at": "2026-06-01T00:01:58Z"
        },
        {
          "tag": "v1.11.0",
          "kind": "minor",
          "published_at": "2026-05-22T15:37:27Z"
        },
        {
          "tag": "v1.10.8",
          "kind": "patch",
          "published_at": "2026-05-22T04:53:58Z"
        },
        {
          "tag": "v1.10.7",
          "kind": "patch",
          "published_at": "2026-05-22T03:01:22Z"
        },
        {
          "tag": "v1.10.6",
          "kind": "patch",
          "published_at": "2026-05-22T02:59:26Z"
        },
        {
          "tag": "v1.10.5",
          "kind": "patch",
          "published_at": "2026-05-20T03:59:23Z"
        },
        {
          "tag": "v1.10.4",
          "kind": "patch",
          "published_at": "2026-05-18T15:26:04Z"
        },
        {
          "tag": "v1.10.3",
          "kind": "patch",
          "published_at": "2026-05-18T06:41:43Z"
        },
        {
          "tag": "v1.10.2",
          "kind": "patch",
          "published_at": "2026-05-17T23:12:06Z"
        },
        {
          "tag": "v1.10.1",
          "kind": "patch",
          "published_at": "2026-05-17T22:50:36Z"
        },
        {
          "tag": "v1.10.0",
          "kind": "minor",
          "published_at": "2026-05-17T20:42:22Z"
        },
        {
          "tag": "v1.9.14",
          "kind": "patch",
          "published_at": "2026-05-17T18:15:23Z"
        },
        {
          "tag": "v1.9.13",
          "kind": "patch",
          "published_at": "2026-05-10T20:58:44Z"
        },
        {
          "tag": "v1.9.12",
          "kind": "patch",
          "published_at": "2026-05-10T20:58:19Z"
        },
        {
          "tag": "v1.9.11",
          "kind": "patch",
          "published_at": "2026-05-10T20:47:55Z"
        },
        {
          "tag": "v1.9.10",
          "kind": "patch",
          "published_at": "2026-05-10T20:25:29Z"
        },
        {
          "tag": "v1.9.9",
          "kind": "patch",
          "published_at": "2026-05-10T20:07:23Z"
        },
        {
          "tag": "v1.9.8",
          "kind": "patch",
          "published_at": "2026-05-10T19:29:16Z"
        },
        {
          "tag": "v1.9.7",
          "kind": "patch",
          "published_at": "2026-05-08T05:56:20Z"
        },
        {
          "tag": "v1.9.6",
          "kind": "patch",
          "published_at": "2026-05-07T17:55:10Z"
        },
        {
          "tag": "v1.9.5",
          "kind": "patch",
          "published_at": "2026-05-07T04:34:36Z"
        },
        {
          "tag": "v1.9.4",
          "kind": "patch",
          "published_at": "2026-05-06T19:41:18Z"
        },
        {
          "tag": "v1.9.3",
          "kind": "patch",
          "published_at": "2026-05-06T19:40:00Z"
        },
        {
          "tag": "v1.9.2",
          "kind": "patch",
          "published_at": "2026-05-06T19:26:38Z"
        },
        {
          "tag": "v1.9.1",
          "kind": "patch",
          "published_at": "2026-05-06T19:25:47Z"
        },
        {
          "tag": "v1.9.0",
          "kind": "minor",
          "published_at": "2026-05-05T17:43:02Z"
        },
        {
          "tag": "v1.8.3",
          "kind": "patch",
          "published_at": "2026-05-04T18:33:07Z"
        },
        {
          "tag": "v1.8.2",
          "kind": "patch",
          "published_at": "2026-05-04T17:48:55Z"
        },
        {
          "tag": "v1.8.1",
          "kind": "patch",
          "published_at": "2026-05-04T16:35:54Z"
        },
        {
          "tag": "v1.8.0",
          "kind": "minor",
          "published_at": "2026-05-03T05:49:07Z"
        },
        {
          "tag": "v1.7.1",
          "kind": "patch",
          "published_at": "2026-04-25T19:50:34Z"
        },
        {
          "tag": "v1.7.0",
          "kind": "minor",
          "published_at": "2026-04-25T02:41:39Z"
        },
        {
          "tag": "v1.6.0",
          "kind": "minor",
          "published_at": "2026-04-19T17:09:49Z"
        },
        {
          "tag": "v1.5.1",
          "kind": "patch",
          "published_at": "2026-04-18T03:01:00Z"
        },
        {
          "tag": "v1.5.0",
          "kind": "minor",
          "published_at": "2026-04-17T20:45:07Z"
        },
        {
          "tag": "v1.4.0",
          "kind": "minor",
          "published_at": "2026-04-17T20:13:49Z"
        },
        {
          "tag": "v1.3.3",
          "kind": "patch",
          "published_at": "2026-04-17T17:53:27Z"
        },
        {
          "tag": "v1.3.2",
          "kind": "patch",
          "published_at": "2026-04-16T19:03:26Z"
        },
        {
          "tag": "v1.3.1",
          "kind": "patch",
          "published_at": "2026-04-16T17:33:46Z"
        },
        {
          "tag": "v1.3.0",
          "kind": "minor",
          "published_at": "2026-04-16T04:33:56Z"
        },
        {
          "tag": "v1.2.0",
          "kind": "minor",
          "published_at": "2026-04-16T00:47:15Z"
        },
        {
          "tag": "v1.1.0",
          "kind": "minor",
          "published_at": "2026-04-15T21:58:39Z"
        },
        {
          "tag": "v1.0.5",
          "kind": "patch",
          "published_at": "2026-04-15T05:09:36Z"
        },
        {
          "tag": "v1.0.4",
          "kind": "patch",
          "published_at": "2026-04-14T17:30:22Z"
        },
        {
          "tag": "v1.0.3",
          "kind": "patch",
          "published_at": "2026-04-12T22:59:59Z"
        },
        {
          "tag": "v1.0.2",
          "kind": "patch",
          "published_at": "2026-04-12T19:13:39Z"
        },
        {
          "tag": "v1.0.1",
          "kind": "patch",
          "published_at": "2026-04-12T17:00:24Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "bd18ac39f6c14ce7eac7b79239b800f3e56b9cca",
          "body": "Bumps [postcss](https://github.com/postcss/postcss) from 8.5.8 to 8.5.18.\n- [Release notes](https://github.com/postcss/postcss/releases)\n- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/postcss/postcss/compare/8.5.8...8.5.18)\n\n---\nupdated-depend\n[…]\nndency-version: 8.5.18\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "build(deps): bump postcss from 8.5.8 to 8.5.18 (#170)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-29T19:54:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b81ce5c05a9919f681fa41ed780f74146736f1c2",
          "body": "…force-merge-qtv3bi\n\nci: use TEMPLATE_SYNC_TOKEN_ORG as the primary template-sync token",
          "is_bot": false,
          "headline": "Merge pull request #168 from AlexanderMattTurner/claude/templatesync-…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-21T16:32:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "550ce924c5d061bedea61e9983387d7c4f9186eb",
          "body": null,
          "is_bot": false,
          "headline": "ci: use TEMPLATE_SYNC_TOKEN_ORG as the primary template-sync token",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-21T16:31:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "61b9fc6f354283ebd6bfa21fd07b8cfa24f127ea",
          "body": "…force-merge-qtv3bi\n\nci: add TEMPLATE_SYNC_TOKEN_ORG as template-sync token fallback",
          "is_bot": false,
          "headline": "Merge pull request #167 from AlexanderMattTurner/claude/templatesync-…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-21T16:29:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d2648d6b37dabfe400f518f204b53b80b6bec792",
          "body": null,
          "is_bot": false,
          "headline": "ci: add TEMPLATE_SYNC_TOKEN_ORG as template-sync token fallback",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-21T16:27:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8a5a1d2796085f2f2bbae5d01574cbe29b8128b7",
          "body": "…force-merge-qtv3bi\n\nci: fix template-sync self-overwrite crash",
          "is_bot": false,
          "headline": "Merge pull request #166 from AlexanderMattTurner/claude/templatesync-…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-21T15:46:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2c40fee6b44e57a2bbaf2880213ff540ca0f98de",
          "body": null,
          "is_bot": false,
          "headline": "ci: re-exec template-sync from immutable copy to survive self-overwrite",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-21T15:44:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d7f0a186dd6a8a19f362bc063c5db74d3ae51456",
          "body": "Co-authored-by: Claude <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: run template sync daily instead of weekly (#165)",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-19T21:13:07Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "d07aecc6218afd9a94f0fc8e80c4c2a94df1a2e4",
          "body": "Co-authored-by: Claude <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: notify on Sync from Template workflow failures (#164)",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-19T21:11:06Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "12e7d3298ab2c69d5a6666e06f58c4e94835cd77",
          "body": "…-publish-failures-6dt0ca\n\nfix(ci): make releases resilient to token and Claude-API failures",
          "is_bot": false,
          "headline": "Merge pull request #163 from AlexanderMattTurner/claude/version-bumps…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-19T20:53:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e8a202dd1d836bd5217d1b7f7f1ee81859ed86a1",
          "body": "The workflow referenced secrets.ANTHROPIC_API_KEY, which held a stale key\nand returned HTTP 401. The valid key is stored under\nGH_ACTION_ANTHROPIC_API_KEY; source it from there.",
          "is_bot": false,
          "headline": "fix(ci): read the Claude key from GH_ACTION_ANTHROPIC_API_KEY",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-19T20:53:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2dd515bfd56ee425812da77a7bba0a4f57ac4130",
          "body": "Two release blockers:\n1. The Checkout step used the default GITHUB_TOKEN, which is not a bypass\n   actor for main's required-status-checks ruleset, so version-bump.sh\n   could not push the vX.Y.Z tag. Use TEMPLATE_SYNC_TOKEN_ORG (the org PAT\n   registered as a bypass actor), falling back to GITHUB_T\n[…]\nrelease even\n   though the header promised graceful degradation. Fall back to a local\n   Conventional-Commits bump (feat/! -> minor, else patch) on a missing\n   key, an outage, or an invalid response.",
          "is_bot": false,
          "headline": "fix(ci): make releases resilient to token and Claude-API failures",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-19T20:42:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5cb7d39e9f3d419365c27c04a1e89d8c77ec6db9",
          "body": "…4kwp\n\nFast-path font attribution: correctness fixes + performance hardening",
          "is_bot": false,
          "headline": "Merge pull request #162 from AlexanderMattTurner/claude/great-bohr-o1…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-19T17:25:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e19972f1d9d6553fa29ae3f4a4bc08a887e08c8a",
          "body": "Several correctness and robustness fixes surfaced by an audit:\n\n- collectTextsByPage: the fast-path family-applicability analysis fed raw\n  rule values to `parseFontFamily`, which returns [] for a `font:`\n  shorthand (getCssRulesByProperty stores it in the font-family bucket\n  with prop 'font'). A w\n[…]\nFamiliesInValue` and case-insensitive `auto`\nin `parseFontWeightRange`.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01Wo27pkktvRY6Ru12AUQeZe",
          "is_bot": false,
          "headline": "fix: recover `font:` shorthand families in fast-path attribution",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-19T16:21:05Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "90eb98140b48526d0d9a11de73861fa41eea471f",
          "body": "…wn01\n\nfix: fallback-CSS emission bugs and font-weight/stretch range parsing, with security & cache test coverage",
          "is_bot": false,
          "headline": "Merge pull request #160 from AlexanderMattTurner/claude/great-bohr-ak…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-16T07:03:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "81b906098232ffb3db7f4693e14c5ea3d79ddbc2",
          "body": "…y-cjdsvi\n\nperf: eliminate quadratic asset-type queries and unlock the tracing fast path on multi-face sites",
          "is_bot": false,
          "headline": "Merge pull request #161 from AlexanderMattTurner/claude/gifted-farada…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-16T07:02:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2545215ecd8b840c3edbe5336b2265454d5e7f2b",
          "body": "Splitting on raw combinator/whitespace characters fractured attribute\nselectors like [class~='fancy'] or quoted values containing spaces,\nyielding unsatisfiable gate tokens that silently withheld a page's gated\ntext from its subset. Compounds are now split with bracket-, quote-, and\nparen-awareness;\n[…]\ne token predicate shared by\nfamilyAppliesToPage and pageTextForFamilies.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01PZZfFyF9CNiPPE5qcYT9zw",
          "is_bot": false,
          "headline": "fix: keep attribute selectors intact when splitting selector compounds",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-15T22:08:26Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1285885272863e2cb35e2515da23c77227ea3334",
          "body": "Token-gated families now receive the textContent of elements matched by\nthe gating rule's sanitized full selector (combinator context preserved;\npseudo-elements and dynamic-state pseudo-classes stripped, which only\nwidens the match) instead of a subject-compound approximation. On a\n405-page corpus t\n[…]\ngs fast-path subset output within 1.4% of the\nall-pages-traced baseline.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01PZZfFyF9CNiPPE5qcYT9zw",
          "is_bot": false,
          "headline": "perf: scope attributed page text with full-selector context",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-15T21:54:57Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b7db034281fcc16a91f29a734b7ce95bd1dce42d",
          "body": "Restructure the attribute-selector regex so optional whitespace can't\nbacktrack super-linearly, and type queried elements as TextBearingElement\ninstead of unknown.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01PZZfFyF9CNiPPE5qcYT9zw",
          "is_bot": false,
          "headline": "style: satisfy lint on attribute-gate regex and element typing",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-15T21:05:03Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "1d3c3b8dcc202a80cad36952a67c47053cf96652",
          "body": "The unseen-variant guard almost never admitted a page on sites that\ndeclare many decorative/situational faces (dropcap initials, theme\nitalics, math fonts): the group representative renders few of them, so\nevery page fell back to a full trace. Several compounding fixes let\npages prove an unseen vari\n[…]\naces' subsets from absorbing every attributed\npage's full character set.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01PZZfFyF9CNiPPE5qcYT9zw",
          "is_bot": false,
          "headline": "perf: unlock fast-path attribution on real-world multi-face sites",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-15T21:02:12Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "162f5b1440ea4b141d96f090736eef824228a6f6",
          "body": "…st path\n\nThree wall-clock fixes for large multi-page sites (405-page corpus,\n~23-minute CI runs):\n\n- findAssets({ type: ... }) reads Asset#type on every asset; on\n  never-loaded placeholder assets that triggers an uncacheable\n  O(assets + relations) incoming-relation scan per access. The page\n  que\n[…]\nets that only differ in a font: declaration can't share a CSS\ngroup key.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01PZZfFyF9CNiPPE5qcYT9zw",
          "is_bot": false,
          "headline": "perf: eliminate quadratic asset-type queries and widen the tracing fa…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-15T17:40:13Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "e46bffa56db88500f24fadb7f7681499b5b5803a",
          "body": "Follow-up to the threshold ratchet: keep the documented numbers in\nCLAUDE.md consistent with the enforced values.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_012HspJKQngy5qUZYZurQHBu",
          "is_bot": false,
          "headline": "docs: sync CLAUDE.md coverage thresholds with .nycrc.json",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-13T00:40:19Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "c9ae003578b69aee68f68fcc4fd7c942ee711ec8",
          "body": "…olds\n\n- Add unit tests for HeadlessBrowser's request interceptor: the security\n  boundary (in-graph 200/404, file: continue under root, accessdenied on\n  ../ and percent-encoded traversal, accessdenied for file: under a\n  remote root, failed for off-origin http) had no coverage — the handler\n  was \n[…]\n  so a real regression fails CI instead of sliding under the old floor.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_012HspJKQngy5qUZYZurQHBu",
          "is_bot": false,
          "headline": "test: cover request gating & cache integrity, ratchet coverage thresh…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-13T00:34:10Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "027fbf6211f7f46aefd788e0f8dab4b5bd3d1c40",
          "body": "parseFontWeightRange/parseFontStretchRange split the descriptor on\n/\\s+/ without trimming first, so a leading or trailing space (e.g.\n\" 100 900\") produced an empty leading token -> parseFloat(\"\") = NaN ->\nthe whole valid range was discarded and it silently fell back to\n[400,400] / [100,100] with a w\n[…]\nkens\nbefore parsing, and trim the \"auto\" keyword guard for consistency.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_012HspJKQngy5qUZYZurQHBu",
          "is_bot": false,
          "headline": "fix(font-face): parse whitespace-padded font-weight/stretch ranges",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-13T00:34:01Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "2f99e27d2e4b7d88e6e5b5d64ad1a198c24fd9fa",
          "body": "Two latent bugs in the fallback/self-hosted CSS emission path:\n\n- asyncLoadStyleRelationWithFallback fired the inline-loader minify() as\n  void with no await or catch. Every other minify() in the file is\n  awaited; leaving this one detached risked an unhandled rejection\n  (fatal under Node's default\n[…]\ne.\n  Moved the loop after minify(), matching getOrCreateSubsetCssAsset.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_012HspJKQngy5qUZYZurQHBu",
          "is_bot": false,
          "headline": "fix(subset): await fallback CSS minify and set hrefType post-minify",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-13T00:33:56Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "3926392578d3c5553228695ecf14dceac24dc7f2",
          "body": "* feat(ci): notify via ntfy when a build or publish workflow fails\n\nAdd the shared notify-ntfy composite action and a workflow_run listener that pings the GH_NTFY_SUBJECT topic when the publish workflow fails outside a PR. No-op when the secret is unset.\n\n* fix(ci): make notify-ntfy.sh shellharden-clean\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: notify via ntfy when a build or publish workflow fails (#159)",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-11T05:11:33Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "9b9434b3b66e5f3bf4da92a8264f57b854574b8e",
          "body": "…t-fixes\n\nfix(ci): repair security scan setup and harden workflow automation",
          "is_bot": false,
          "headline": "Merge pull request #158 from AlexanderMattTurner/claude/workflow-audi…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-09T23:26:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "381ab1949b36cd38081b5718497de459559f03f2",
          "body": "- security-vulnerability-scan: point setup step at the real ./.github/actions/setup composite (setup-base-env never existed) and drop the unsupported setup-python input; strengthen untrusted-data fencing in the Claude prompt, narrow --allowedTools, and drop unused issues:write scope\n- auto-version: \n[…]\nrequirements\n- phone-home: add set -euo pipefail to the curl | tar gitleaks install\n- version-bump: derive the push target from GITHUB_REF_NAME (detached-HEAD safe), falling back to git for local runs",
          "is_bot": false,
          "headline": "fix(ci): repair security scan setup, harden workflow automation",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-09T23:20:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bcc37f83f03083c075264982053d9f67b0ecd96d",
          "body": "…nance-repo-url\n\nfix(release): repoint repository URLs to the publishing owner for npm provenance",
          "is_bot": false,
          "headline": "Merge pull request #157 from AlexanderMattTurner/claude/fix-npm-prove…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-09T22:53:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1dc253ff903b2c00657b8a1d29856b4cf91cda6a",
          "body": "… provenance",
          "is_bot": false,
          "headline": "fix(release): repoint repository URLs to the publishing owner for npm…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-09T21:32:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e4e25cb4e0433e34eb71f034184fcd4b880aee5b",
          "body": "…ation-version-bugs-ik8wif\n\nfix(release): disable automated major version bumps",
          "is_bot": false,
          "headline": "Merge pull request #156 from AlexanderMattTurner/claude/release-autom…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-09T21:17:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "07b649f124c315401efecc450cce2402420af2d4",
          "body": null,
          "is_bot": false,
          "headline": "fix(release): disable automated major version bumps",
          "author_name": "Claude",
          "author_login": null,
          "committed_at": "2026-07-09T20:50:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "75e2903d0178e5e56759d2aeb4970b3e0efc9e5f",
          "body": "…plate-sync-org-gonhgs\n\nci: use TEMPLATE_SYNC_ORG variable for template repo owner",
          "is_bot": false,
          "headline": "Merge pull request #155 from AlexanderMattTurner/claude/workflows-tem…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-08T20:43:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3049e21617d90e7ef84d5b236f1ee50f7d3ab617",
          "body": "Replace the hardcoded 'alexander-turner' org in TEMPLATE_REPO with\n${{ vars.TEMPLATE_SYNC_ORG || 'alexander-turner' }} so forks in another\norg can redirect template-sync/phone-home without editing every workflow.\nBehavior is unchanged when the variable is unset.",
          "is_bot": false,
          "headline": "ci: use TEMPLATE_SYNC_ORG variable for template repo owner",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-08T20:41:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c7bb65205bbd6f5c51a2d696ff39ff69642d1e43",
          "body": "Bumps [piscina](https://github.com/piscinajs/piscina) from 4.9.2 to 4.9.3.\n- [Release notes](https://github.com/piscinajs/piscina/releases)\n- [Changelog](https://github.com/piscinajs/piscina/blob/v4.9.3/CHANGELOG.md)\n- [Commits](https://github.com/piscinajs/piscina/compare/v4.9.2...v4.9.3)\n\n---\nupda\n[…]\nendency-version: 4.9.3\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "build(deps): bump piscina from 4.9.2 to 4.9.3 (#154)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-06T02:56:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "06b80e0296c2ded45f1efe05ef141c99977d9ee9",
          "body": "…plate-sync-fix-77r2bc\n\nchore: sync from template repository",
          "is_bot": false,
          "headline": "Merge pull request #152 from AlexanderMattTurner/claude/propagate-tem…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-06T02:54:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "47f65dd9feeae33fc960623b5b321ba017552336",
          "body": "…gsu8\n\nfix: correct CSS parsing/generation bugs in font helpers",
          "is_bot": false,
          "headline": "Merge pull request #153 from AlexanderMattTurner/claude/great-bohr-2c…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-06T02:53:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "549fcf02e99436d45aa32b0846705691d2392408",
          "body": "Four correctness bugs in the CSS-parsing and CSS-generation helpers that\nproduced invalid CSS or silently dropped data on untested inputs:\n\n- extractReferencedCustomPropertyNames only scanned top-level value nodes,\n  so var() nested in calc()/rgb()/a var() fallback was missed, dropping\n  custom-prop\n[…]\negression tests for every fixed path. No change to subset output bytes.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01LJVSP8w5SM8FC7wY43vYwa",
          "is_bot": false,
          "headline": "fix: correct CSS parsing/generation bugs in font helpers",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-06T00:22:03Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6310291055c47a3b69dbfffd0c9c7c40c062045b",
          "body": "phone-home-extract.js: convert an unnamed capture group to named, and\nremove the \\s*$ lookahead alternative that overlapped [\\s\\S]*? and\ntriggered eslint-plugin-regexp's super-linear-backtracking check\n(trailing whitespace is trimmed anyway, so the lookahead just needs to\nmatch end-of-string). Also \n[…]\ndiscarded.\n\npromote-changelog.mjs: replace a string concatenation with a single\ntemplate literal (prefer-template).\n\nReformatted with prettier (also caught pre-existing drift in\nphone-home-submit.js).",
          "is_bot": false,
          "headline": "fix(ci): resolve eslint findings in synced template scripts",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-04T00:23:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b3ed269ef4f2b90d16e8d30b1496681093e25e66",
          "body": "Propagates the latest claude-automation-template, including the\ntemplate-sync symlink-handling fix. session-setup.sh conflict resolved:\nadopted the template's emit_export-based GH_REPO block and new\nweb-session permissions block, kept the local robust dependency-install\nlogic.",
          "is_bot": false,
          "headline": "chore: sync from template repository (f3de29b)",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-03T23:23:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eb4b2a4f267b306a1c8587ae180a3ba012e361c1",
          "body": "* ci: pin GitHub Actions to commit SHAs\n\nMutable version tags (@v4, @v2) let a compromised maintainer silently\nreplace code that runs in CI. Pin every third-party action to its\nresolved commit SHA with a version comment.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>\n\n* docs(pr): auto-crea\n[…]\n to be asked, and replace the skill's\nask-example with the same auto-create default.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: pin GitHub Actions to SHAs; docs(pr): auto-create PRs (#151)",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-07-01T17:40:36Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "fc826cf15b129b93d19b42e10340638ffe70466e",
          "body": "…bmYG\n\nfix: concurrency cap bug, lint hardening, error chaining, test coverage",
          "is_bot": false,
          "headline": "Merge pull request #139 from alexander-turner/claude/ecstatic-volta-W…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-29T22:17:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0938855b44efa59705e4354729feb169311740cc",
          "body": "…-visibility-3p2c2r\n\nchore(package): add font-subsetting keywords for npm discoverability",
          "is_bot": false,
          "headline": "Merge pull request #150 from alexander-turner/claude/seo-contribution…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-29T22:17:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5882bd79d287acfb119d830bbc09034758096a25",
          "body": null,
          "is_bot": false,
          "headline": "chore(package): add font-subsetting keywords for npm discoverability",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-29T19:24:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "75cd46073735c486edceca6c909905d63a8fd8b2",
          "body": "Co-authored-by: Claude <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: run template sync weekly instead of daily (#149)",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-23T03:23:45Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "0fed4de710feadcc3b2902e7f5adfb53bb2867e9",
          "body": "Co-authored-by: Claude <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: remove @claude workflow (#148)",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-23T03:12:15Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "4dc9baae3bf7acb60098097e0a41a57a46b33b9d",
          "body": "fix: harden concurrency/pool lifecycle and clean up repo hygiene",
          "is_bot": false,
          "headline": "Merge pull request #147 from alexander-turner/claude/great-bohr-3dyq2v",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-21T16:26:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "901b45151314c79143cb68103415860ace56b0f3",
          "body": "CI installs with --frozen-lockfile, which rejected the lockfile because the\ncoveralls removal in package.json was not reflected in pnpm-lock.yaml. Drop\ncoveralls and its now-unreferenced transitive subtree from the lockfile.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_018SdXLx2TaBHLofmL27MZ9T",
          "is_bot": false,
          "headline": "build: update pnpm-lock.yaml after removing coveralls devDependency",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-21T16:23:52Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "a65a6b68438f18e512cd59a0f3fa22bc6034facc",
          "body": "The existing \"stop pulling after a rejection\" test used concurrency 1, so it\nexercised the throw exiting a lone runner — not the `stopped` flag that stops\nsibling runners. Add a concurrency-2 test where one runner rejects while a slow\nsibling holds the other slot, asserting (after the slow task sett\n[…]\no\nfurther items were pulled. Verified to fail when the flag is removed.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_018SdXLx2TaBHLofmL27MZ9T",
          "is_bot": false,
          "headline": "test: cover the sibling-stop path of runWithConcurrency's fail-fast flag",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-21T16:22:32Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "a38824eb6147aa029bff147dc79735954b5b6268",
          "body": "Robustness fixes:\n- runWithConcurrency: stop pulling new items once a task rejects. The\n  previous runner loop kept dispatching work after a sibling failed, so\n  under --dynamic a failed/aborted trace left other runners opening fresh\n  puppeteer tabs after the caller had moved on to closing the brow\n[…]\nding the CLAUDE.md\n  workflow references to the README benchmark table.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_018SdXLx2TaBHLofmL27MZ9T",
          "is_bot": false,
          "headline": "fix: harden concurrency/pool lifecycle and clean up repo hygiene",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-21T16:15:25Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6c6f37be7ba36fbf5d11350d61e4c21c2334dd7f",
          "body": "- tsconfig.json: keep master's node16 module/moduleResolution (supersedes node10)\n- test/piscinaRunWithTimeout.js: keep master's real-Piscina integration tests (supersedes sinon mocks)",
          "is_bot": false,
          "headline": "fix: resolve merge conflicts with master",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-17T16:21:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8d2cf07d16ab0c8e4018d7b89b42aca9c3481be8",
          "body": "feat: support cancelling runs via AbortSignal",
          "is_bot": false,
          "headline": "Merge pull request #146 from alexander-turner/claude/great-bohr-ck8ygl",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-17T16:18:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "17684b2f50d098d6cd1fac0100514c4a8444b354",
          "body": "Address self-review of the AbortSignal work:\n\n- Drop the custom abortReasonToError wrapper and route every cancellation\n  check through the native AbortSignal.throwIfAborted() / reject(reason).\n  Previously a non-Error abort reason surfaced as a synthetic AbortError when\n  caught inside subsetFontWi\n[…]\nback (proving no strand) rather than\n  just that some instance is busy.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01UbhH4k1YmSWeJtha1XK1JH",
          "is_bot": false,
          "headline": "refactor: unify abort semantics and harden cancellation tests",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-17T16:15:13Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b11f82c05a9c812ae13af5fa88b208c0d31b0c8e",
          "body": "subfont threads an AbortSignal through tracing and subsetting internally,\nand the worker pools honour it, but it was unreachable: the public API had\nno `signal` option, `acquireInstance` ignored aborts (a saturated WASM pool\ncould hang a cancelled call for up to 120s), the non-woff2 path ignored the\n[…]\ninery (via\n  test-only pool handles) and public-API cancellation tests.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01UbhH4k1YmSWeJtha1XK1JH",
          "is_bot": false,
          "headline": "feat: support cancelling runs via AbortSignal",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-17T16:04:01Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "2b691399688afa6441234c3fe9e82482494d38e8",
          "body": "…-39lfw5\n\nAdd comprehensive test coverage and fuzzing infrastructure",
          "is_bot": false,
          "headline": "Merge pull request #145 from alexander-turner/claude/determined-allen…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-12T00:47:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3145cc4bbc4c9ebc2c2c0df0f3eb7919405f1edb",
          "body": "Plain unexpected@11 treats Set-vs-Set 'to equal'/'to satisfy' as\nvacuously true (expect(new Set(['a']), 'to equal', new Set(['b']))\npasses), so every Set assertion in featureTagExtraction.js and the two\nin fontFeatureHelpers.js asserted nothing. Cloning expect with\nunexpected-set enforces real comparison; all 104 affected tests still\npass, confirming the expected values were already correct.\n\nhttps://claude.ai/code/session_01MWcM1YH9TEfULuuGXGwwbL",
          "is_bot": false,
          "headline": "test: wire unexpected-set into files comparing Set expectations",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-11T22:45:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "afa33c8144ea2b4de515fe374ca7bfa2c54ee480",
          "body": "https://claude.ai/code/session_01MWcM1YH9TEfULuuGXGwwbL",
          "is_bot": false,
          "headline": "test: include property-based tests in the Stryker run",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-11T21:39:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a354b86766d9cd5dbd971ddf8fb391d59a5c4d47",
          "body": "Pins WASM pool init/retry/waiter-queue/release semantics via fresh\nmodule instances (proxyquire), fvar axis pinning and range expansion,\nNFC/NFD codepoint loops, glyphId retention, scriptTags gating, woff2\nworker routing in sfntCache, and dropMathTable gating against a\nsynthesized corrupt MATH table.\n\nhttps://claude.ai/code/session_01MWcM1YH9TEfULuuGXGwwbL",
          "is_bot": false,
          "headline": "test: kill surviving mutants in subsetFontWithGlyphs and sfntCache",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-11T21:34:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "00680cd6eff20ff97f6b0fcefc09fc8780469201",
          "body": "…pers\n\nPins fingerprint delimiter collisions, @namespace parsing anchors,\npredicate sorting/reuse, list-style/animation/transition shorthand\ngating, font shorthand inline-style handling, @font-face declaration\nhrefType save/restore, exact @font-face stylesheet output including\ncodepoint intersection, unused-variant some-vs-every filter semantics,\nand font weight/stretch range token parsing.\n\nhttps://claude.ai/code/session_01MWcM1YH9TEfULuuGXGwwbL",
          "is_bot": false,
          "headline": "test: kill surviving mutants in getCssRulesByProperty and fontFaceHel…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-11T21:33:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "92c80a34bbe6b4643bd8340d7f8a16387cded0f2",
          "body": "Pins behavior flagged by Stryker mutation testing: all 64 fallback GSUB\nfeature tags in collectFeatureGlyphIds (per-tag shaping loop), the\naddIndexedTags boundaries and alternates regexes in fontFeatureHelpers,\nital/slnt axis mapping and numAxesReduced boundaries in variationAxes,\nhidden-input and a\n[…]\nhis unexpected@11 setup treats\nSet-vs-Set 'to equal'/'to satisfy' as always passing, so Set contents\nare now asserted via sorted spread arrays.\n\nhttps://claude.ai/code/session_01MWcM1YH9TEfULuuGXGwwbL",
          "is_bot": false,
          "headline": "test: kill surviving mutants in feature, axes, and text modules",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-11T21:27:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b1103ef5a4926e55a1a89934266e738bff0a3033",
          "body": "Ports the fuzz-harness properties (unicode-range round-trip, unquote\nround-trip, escapeJsStringLiteral tri-context eval, stripLocalTokens\nidempotence, injectSubsetDefinitions no-match identity, and yield-shape\nchecks) into test/propertyBased.js via unexpected-check so they run in\nCI. Also fixes the \n[…]\nss to use lowercase\nmap keys — the lookup is webfontNameMap[name.toLowerCase()], so the old\n'Open Sans' key never exercised the injection path.\n\nhttps://claude.ai/code/session_01MWcM1YH9TEfULuuGXGwwbL",
          "is_bot": false,
          "headline": "test: add property-based tests to the mocha suite",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-11T21:20:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9317202739204ac2c22dfbc0efc228a6d1844b21",
          "body": "Stryker showed every edge of the cp === 0 / cp > 0x10ffff / surrogate\nrange guard survived mutation. Locks in raw-source passthrough for \\0,\n\\110000, \\d800, \\dfff and decoding for U+10FFFF, U+D7FF, U+E000,\nraising unquote.js mutation score from 73% to 89%.\n\nhttps://claude.ai/code/session_01MWcM1YH9TEfULuuGXGwwbL",
          "is_bot": false,
          "headline": "test(unquote): pin codepoint boundaries of the hex-escape guard",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-11T21:07:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "973ab58936840ebcccfdcd7be5cf46fe1824a19f",
          "body": "Mutation testing (pnpm run mutation) targets the compiled lib/ modules\nthat have fast unit tests; the puppeteer integration suites are excluded\nso scores are a lower bound. Fuzz harnesses (pnpm run fuzz) cover the\npure CSS-value parsers with property checks and the harfbuzz WASM\nsubsetting path with byte-corrupted font inputs.\n\nhttps://claude.ai/code/session_01MWcM1YH9TEfULuuGXGwwbL",
          "is_bot": false,
          "headline": "test: add Stryker mutation testing and seeded fuzz harnesses",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-11T21:07:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "157dff3c9be53b924f9a976adb6404c7b8bd6af5",
          "body": "Optimize fast-path font attribution with family-aware selector gating",
          "is_bot": false,
          "headline": "Merge pull request #143 from alexander-turner/claude/epic-feynman-q2bqka",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-10T18:16:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b1a5a64e35e77a1630736f4322cf89e22e02a84",
          "body": "…-q2bqka\n\n# Conflicts:\n#\tsrc/fontFeatureHelpers.ts\n#\tsrc/unquote.ts",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/master' into claude/epic-feynman…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-10T18:14:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "62a80217b865feae238abd4b0071ce72ce48b6b2",
          "body": "Replace all index-based regex group access (m[1], m[2], ...) with named\ncapture groups read via m.groups, and convert grouping-only captures to\nnon-capturing groups. Enable the ESLint `prefer-named-capture-group` rule so\nnew index-based regex matches are rejected.\n\n- collectPageTokens / subjectRequi\n[…]\nrty\n  url unwrap, unquote CSS-escape regex: named groups.\n- tests (multiPageIntegration, subfont): named groups / non-capturing\n  alternations.\n\nhttps://claude.ai/code/session_01G8a2ziyDGg11BRtDFE27Tj",
          "is_bot": false,
          "headline": "Use named regex capture groups; enforce with prefer-named-capture-group",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-10T18:09:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b248d7732c7efe5196338945db175b356d24b574",
          "body": "…rt-m03eze\n\nNormalize regex patterns to use case-insensitive flag",
          "is_bot": false,
          "headline": "Merge pull request #144 from alexander-turner/claude/optimistic-lampo…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-10T18:04:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c8ebf402752366805d373e4cdd439f47495aab55",
          "body": "Introduces eslint-plugin-regexp (flat/recommended) to catch unsafe or\nredundant regex patterns at lint time. Fixes all 10 errors and 1 warning\nit raised:\n\n- Replace [a-z0-9_] / [a-zA-Z0-9_] with \\w where equivalent\n- Collapse [a-zA-Z...] pairs to [a-z...] + i flag (regexp/use-ignore-case)\n- Fix ReDo\n[…]\n\n- Replace empty alternative (|) in NAMESPACE_SELECTOR_RE with ? and\n  update the === '' guard to === undefined to preserve no-prefix behaviour\n\nhttps://claude.ai/code/session_01TRAEZHTTt1jG8AFpYe9c8n",
          "is_bot": false,
          "headline": "chore(lint): add eslint-plugin-regexp and fix all flagged regex issues",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-10T18:02:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2fa7295f698129d55cd1d7e0384144f595d28f03",
          "body": "- HeadlessBrowser: compute callerDisabledSandbox once and pass it into\n  defaultSandboxArgs instead of scanning extraArgs twice; simplify the\n  sandbox-already-off guard.\n- collectTextsByPage: parse each propsKey's font-family at most once in\n  attributeFastPathPages (was re-parsed per page), read h\n[…]\nsubsetGeneration: drop the magic-byte list comment that duplicated\n  KNOWN_FONT_MAGIC's own annotations.\n\nNo behavior change; full suite green.\n\nhttps://claude.ai/code/session_01G8a2ziyDGg11BRtDFE27Tj",
          "is_bot": false,
          "headline": "Simplify review findings: dedup sandbox check, hoist font-family parse",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-10T17:51:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bf435e3191fee21c2dc52441bafa60ac8a024c0c",
          "body": "…eview\n\nCorrectness:\n- subsetFontWithGlyphs: also add raw-text codepoints (not just NFC/NFD) so\n  Unicode singletons (U+2126 OHM, U+212A KELVIN, U+212B ANGSTROM) survive\n  subsetting instead of normalizing away and rendering tofu; guard the WASM\n  malloc return before writing to the heap.\n- subsetGe\n[…]\nSUBSET_CACHE_VERSION, refresh the README optimization table, and add\nregression tests for singleton retention and family-scoped fast-path text.\n\nhttps://claude.ai/code/session_01G8a2ziyDGg11BRtDFE27Tj",
          "is_bot": false,
          "headline": "Fix correctness, security, and efficiency findings from core-module r…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-10T17:43:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cd530fde56b023adf4e8a66931af312bc58c4284",
          "body": "Add commitlint configuration and update TypeScript module settings",
          "is_bot": false,
          "headline": "Merge pull request #142 from alexander-turner/claude/tender-gates-1tyufr",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-08T22:57:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "58d594191816eafb0806e05c2e3bb7d723f1fa8a",
          "body": "My earlier rewrite gutted pre-existing setup logic (tool installs, gh repo\ndetection, puppeteer path search, retry-counter reset, uv sync) that\nwasn't mine to remove. Restore the script unchanged; the intended scope\nwas only my own additions.",
          "is_bot": false,
          "headline": "revert: restore session-setup.sh to its original form",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-08T22:46:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "967307c26ba712ffac6fdfb9171d73f915fe63fa",
          "body": "Drop the optional tool installs (webi shfmt/gh/jq, apt shellcheck), gh\nrepo/auth detection, uv/python sync, the npm fallback, and the install\nverification scaffolding. The hook now does only what's needed for tests\nand linters to run: ensure pnpm, enable the git hooks, point puppeteer at\nthe contain\n[…]\nChromium, and run `pnpm install` with\nretry. 213 lines -> 33.\n\nRevert the verify_ci.py missing-node_modules guard — with setup\ninstalling deps reliably, the Stop hook doesn't need an install fallback.",
          "is_bot": false,
          "headline": "refactor: slim session-setup.sh down to a reliable dependency install",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-08T22:44:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ef7f7593b9d9e1624b95f768df2036fed2e1869a",
          "body": "tsconfig: switch module/moduleResolution from \"commonjs\"/\"node\" to\n\"node16\"/\"node16\". The old \"node\" (node10) resolution is deprecated and\nerrors under TypeScript 7.0. Emitted output stays CommonJS (package.json\nhas no \"type\": \"module\"), so runtime behavior is unchanged.\n\nsession-setup.sh: retry the\n[…]\neferenced by\n.hooks/commit-msg but absent) and install @commitlint/cli +\n@commitlint/config-conventional so the hook resolves them locally. The\ncommit-msg hook previously failed on every local commit.",
          "is_bot": false,
          "headline": "fix: migrate tsconfig off deprecated node10 resolution; repair dev setup",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-08T22:06:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "11054819f38ab6e8f2c5a92618866398346a1e9d",
          "body": "…qLSO\n\nfix: make subset disk-cache writes atomic to prevent torn reads",
          "is_bot": false,
          "headline": "Merge pull request #141 from alexander-turner/claude/ecstatic-volta-i…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-08T04:04:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "20d23110c0dce3e2f4d4917184a682de2e3655b2",
          "body": "SubsetDiskCache.set() wrote entries with a plain fs.writeFile, which\ntruncates the destination before streaming the new bytes. A concurrent\nreader sharing the same persistent --cache directory (e.g. parallel\nsubfont invocations in CI, the cache feature's primary use case) could\nreadFile a half-writt\n[…]\ned.\n\nAdds a regression test that fails under the old non-atomic write:\nconcurrent reads during overwrite must always see one complete buffer or\nthe other, and no .tmp scratch files may be left behind.",
          "is_bot": false,
          "headline": "fix: make subset disk-cache writes atomic to prevent torn reads",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-06-08T04:01:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a589070a1887652e16914e4da86007a608543ddb",
          "body": "…5eUI\n\nfix: codebase audit — efficiency, deduplication, coverage, and correctness",
          "is_bot": false,
          "headline": "Merge pull request #140 from alexander-turner/claude/ecstatic-volta-4…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-06-01T00:01:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "514164add44705f6cff17ea3db9a53dbf2353455",
          "body": "https://claude.ai/code/session_01Q2177V2bNwqPnHzrEvxGVP",
          "is_bot": false,
          "headline": "fix: rename promise parameter to satisfy promise/param-names lint rule",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-31T16:31:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "04cadf1dfcc8db787538e0db2a72378c541e2cf8",
          "body": "- Add concurrent deduplication test for PromiseWeakCache (verifies\n  that two getOrCreate calls for the same key share one promise)\n- Clear leaked 2-second abort timer in piscinaRunWithTimeout test\n\nhttps://claude.ai/code/session_01Q2177V2bNwqPnHzrEvxGVP",
          "is_bot": false,
          "headline": "fix: address pass-2 critique findings",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-31T16:29:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4e0d6695de5f40cd0dd8c72a8f0341abfadb11a6",
          "body": "- Rename misleading \"concurrent replacement\" test to match what it\n  actually tests (cache re-population after eviction)\n- Widen timing gap in timeout-vs-signal race test (100ms → 2s) to\n  prevent CI flakes on slow runners\n- Add default parameter for echoWorker delayMs to make intent explicit\n\nhttps://claude.ai/code/session_01Q2177V2bNwqPnHzrEvxGVP",
          "is_bot": false,
          "headline": "fix: address critique findings on test naming and timing",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-31T16:26:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5ad0467c59a6aed7d264f12b1cc7f83ef2115df4",
          "body": "Verify that when both the watchdog timeout and user abort signal fire,\nthe timeout error takes priority (first abort wins).\n\nhttps://claude.ai/code/session_01Q2177V2bNwqPnHzrEvxGVP",
          "is_bot": false,
          "headline": "test: add timeout+signal race test for piscinaRunWithTimeout",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-31T16:21:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3cc33ad40d0f5296d195ad1172adf577308f32f3",
          "body": "If factory() throws synchronously instead of returning a rejected\npromise, the original code would throw a TypeError trying to call\n.catch() on undefined. Wrap the factory call in try/catch and return\na rejected promise for the synchronous error case, without caching\nthe failure.\n\nhttps://claude.ai/code/session_01Q2177V2bNwqPnHzrEvxGVP",
          "is_bot": false,
          "headline": "fix: handle synchronous factory exceptions in PromiseWeakCache",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-31T16:18:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e5a369a5aef6ce6330bee2fc527e44099e97216e",
          "body": "getMaxConcurrency is used as the hardware-based \"safe limit\" for the\n--concurrency warning message. Capping it at MAX_POOL_SIZE conflates\nthe physical constraint (memory/CPU) with the software cap, making the\nwarning less informative. Pool consumers already cap independently.\n\nhttps://claude.ai/code/session_01Q2177V2bNwqPnHzrEvxGVP",
          "is_bot": false,
          "headline": "revert: keep getMaxConcurrency uncapped by MAX_POOL_SIZE",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-31T16:17:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ba4e535103854292616edce334a42ae2740761f4",
          "body": "- Collapse 6 chained .replace() calls in escapeJsStringLiteral into a\n  single-pass regex with a lookup map (O(6n) → O(n))\n- Cap getMaxConcurrency() at MAX_POOL_SIZE so its return value is\n  consistent with all pool consumers that already cap independently\n- Add aria-description to extractable attri\n[…]\nallowing\n  when debug mode is off\n- Add missing test coverage for piscinaRunWithTimeout (timeout, abort\n  signal, cleanup) and PromiseWeakCache\n\nhttps://claude.ai/code/session_01Q2177V2bNwqPnHzrEvxGVP",
          "is_bot": false,
          "headline": "fix: address code quality issues found in codebase audit",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-31T16:16:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "aaa009735659ff145ac6e503b243b6ba10074647",
          "body": "…tsconfig deprecation\n\n- getMaxConcurrency() now caps at MAX_POOL_SIZE so the --concurrency\n  warning accurately reflects pool limits instead of reporting uncapped\n  CPU counts\n- Enable @typescript-eslint/no-misused-promises to catch async functions\n  passed where sync callbacks are expected\n- Use E\n[…]\nthTimeout (timeout/abort/cleanup),\n  wrapAssetGraphError, and initialValueByProp\n- Fix tsconfig moduleResolution deprecation: \"node\" → \"node10\"\n\nhttps://claude.ai/code/session_01S6x94Pnobrp7wDsohtS3YF",
          "is_bot": false,
          "headline": "fix: concurrency cap, lint hardening, error chaining, test coverage, …",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-24T17:28:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fc027e329a496e94130efca61f448ec4185b9f99",
          "body": "…diYb\n\nfix: add no-floating-promises lint rule, fix violations, remove async-main-wrap",
          "is_bot": false,
          "headline": "Merge pull request #138 from alexander-turner/claude/ecstatic-volta-q…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-05-22T15:37:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d57b9073b083de299165f1670bb1783d6401825e",
          "body": "- cli.ts: catch parameter was typed as Error but rejection values can\n  be anything; use unknown with instanceof guards\n- HeadlessBrowser.ts: hoist noop closure to method scope to avoid\n  per-request allocation\n\nhttps://claude.ai/code/session_01JcZP8DszsGRXF9fQhjptcX",
          "is_bot": false,
          "headline": "fix: use unknown catch type in CLI, hoist noop outside request handler",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T06:09:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "08cf0ff88df8d2ee90a8ed5b9acae77cfc68fcba",
          "body": "- Remove dead ErrorWithCustomOutput type from cli.ts\n- Add .catch(swallow) to puppeteer request handlers in\n  HeadlessBrowser.ts — void alone leaves rejections unhandled since\n  page.on callbacks are synchronous\n- Restore debug gate on WASM warmup warning to avoid noisy stderr\n  in normal operation\n- Add explanatory comment on headlessBrowser.close() catch (best-effort\n  cleanup, primary error takes precedence)\n\nhttps://claude.ai/code/session_01JcZP8DszsGRXF9fQhjptcX",
          "is_bot": false,
          "headline": "fix: address critique findings on floating-promises PR",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T06:00:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41829e2704e837e62083344ca5fd0ff5e5268a94",
          "body": "…sync-main-wrap dep\n\n- Add @typescript-eslint/no-floating-promises to ESLint config with\n  type-aware parsing — catches unhandled promise rejections at lint time\n- Fix 4 floating promises in HeadlessBrowser.ts (puppeteer request\n  handlers) and 1 in subsetFonts.ts (JS asset minify call)\n- Mark inten\n[…]\nser.close() in finally block to swallow rejection\n- Always log WASM warmup failures (was debug-only, making silent\n  failures hard to diagnose)\n\nhttps://claude.ai/code/session_01JcZP8DszsGRXF9fQhjptcX",
          "is_bot": false,
          "headline": "fix: add no-floating-promises lint rule, fix bugs it caught, remove a…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T05:54:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "56c2f18e38490d1a8c82460f7f85d82e26ab60c5",
          "body": "Add AbortSignal support for cancellable subset generation",
          "is_bot": false,
          "headline": "Merge pull request #137 from alexander-turner/claude/signal-subset-phase",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-05-22T05:36:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7534c8cb8778434988851fb7ff8eee93e44b91ea",
          "body": "The existing mocked test in subsetGeneration only proved the option got\nforwarded — it didn't exercise the real subsetFontWithGlyphs →\nconvertInWorker bridge. Add an integration-style test that runs a real\nwoff2 subset against a pre-aborted signal to confirm the worker-pool\nrejection actually propagates out.",
          "is_bot": false,
          "headline": "test: cover the AbortSignal bridge through subsetFontWithGlyphs",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T05:28:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "54113ad944ce525ae77ade1a9bb8351dee02953f",
          "body": "Plumbs signal? from SubsetFontsOptions through getSubsetsForFontUsage,\nqueueAllSubsets, and subsetFontWithGlyphs into the woff2 worker pool\nconvert() call. A Ctrl-C during woff2 compression of a large run now\ncancels in-flight worker tasks immediately instead of waiting for the\n120s watchdog. The synchronous harfbuzz WASM loop and fontverter\nfallback path stay unchanged — neither can be interrupted mid-call.",
          "is_bot": false,
          "headline": "feat: thread AbortSignal into subset generation phase",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T05:25:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a65f0a0c2ccde60b34f6108ea283093dc69b95f8",
          "body": "…cleanups\n\nFix font range parsing, escape U+2028/U+2029, improve CLI flags",
          "is_bot": false,
          "headline": "Merge pull request #135 from alexander-turner/claude/subfont-low-med-…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-05-22T05:00:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f4fa34eaace9977571e7c14e4f22061b637bf751",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' into claude/subfont-low-med-cleanups",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-05-22T04:58:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fb406cdd3278b229062b47d8185e8dd2b0d36aa1",
          "body": "…rsers-Z5Mfq\n\nReplace regex-based HTML parsing with parse5 for robustness",
          "is_bot": false,
          "headline": "Merge pull request #136 from alexander-turner/claude/subfont-regex-pa…",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-05-22T04:57:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bf4debb985867c795649301f18a517ea3693f5ce",
          "body": "refactor: replace hand-rolled worker pools with piscina",
          "is_bot": false,
          "headline": "Merge pull request #134 from alexander-turner/claude/piscina-migration",
          "author_name": "Alex Turner",
          "author_login": "alexander-turner",
          "committed_at": "2026-05-22T04:53:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "642417b7d805f7f69f2ef47a924815f7b0a06c58",
          "body": "- Bump SUBSET_CACHE_VERSION (6 → 7) because parseFontWeightRange now\n  resolves \"bold\" → [700, 700] (was [400, 400] under the parseFloat-\n  only path). For any @font-face declaring `font-weight: bold` the\n  wght-axis clamp range changes, which can change variable-font\n  subset bytes deterministicall\n[…]\negression test for the mixed numeric+keyword behaviour\n  (\"400 bold\" → [400, 700]) so the keyword-resolution side-effect of\n  routing through normalizeFontPropertyValue is intentional and\n  locked in.",
          "is_bot": false,
          "headline": "fix: address self-critique findings on low/med cleanups",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T04:52:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c63e865f03bf0dd1d815fbcd7be97f1e9ee9ca37",
          "body": "Seven small fixes flagged in the previous code-review pass.\n\n- fontFaceHelpers: parseFontWeightRange / parseFontStretchRange take an\n  optional warn callback so malformed @font-face range descriptors\n  surface as assetGraph warnings instead of silently degrading to\n  [400, 400] / [100, 100]. Wired u\n[…]\nine comment.\n\nValidation: pnpm run build && pnpm test (811 passing, lint clean).\nNo SUBSET_CACHE_VERSION bump — none of these changes alter the bytes\nproduced by the subsetter for the same input text.",
          "is_bot": false,
          "headline": "refactor: address low/medium-severity cleanup findings",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T04:45:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bde2e74f2447f65100802622e8ed407837719440",
          "body": "The catch handler used to check `if (timeoutErr) throw timeoutErr`\nbefore considering the user signal. If the user signal fired first\n(racing the watchdog) but the watchdog still ran in parallel and set\n`timeoutErr`, the user got back a \"timed out\" error instead of their\nown cancellation reason.\n\nSw\n[…]\net the\nsignal's reason; that's what surfaces in the AbortError. Add a\nregression test that arms a 60s watchdog and aborts the user signal\nmid-flight — the result must carry the user-initiated message.",
          "is_bot": false,
          "headline": "fix: prefer user reason over watchdog when both abort triggers fire",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T04:16:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cb828b3c6678f92b785fd7c5b93900b5e4ccad65",
          "body": "…bort reason)\n\n- init() now dispatches one no-op trace per worker so jsdom/postcss\n  require cost is paid in the init phase instead of leaking into the\n  first real trace batch (where it confuses subTimings).\n- fontConverter destroy/convert race: convert() awaits an in-flight\n  _destroyPromise befor\n[…]\n  stack instead of piscina's AbortError wrapper.\n\nTests: new \"warm workers eagerly in init()\" assertion, abort-reason\nsurfacing assertions, and a \"should not double-spawn\" race test for\nfontConverter.",
          "is_bot": false,
          "headline": "fix: address piscina migration critique (init warmup, destroy race, a…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-05-22T04:10:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 52,
      "commits_last_year": 643,
      "latest_release_at": "2026-07-21T16:32:24Z",
      "latest_release_tag": "v1.11.7",
      "releases_from_tags": true,
      "days_since_last_push": 0,
      "active_weeks_last_year": 21,
      "days_since_latest_release": 8,
      "mean_days_between_releases": 6.7
    },
    "community": {
      "has_readme": false,
      "has_license": false,
      "has_description": false,
      "has_contributing": false,
      "health_percentage": null,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "@turntrout/subfont",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "google",
            "font",
            "fonts",
            "webfont",
            "webfonts",
            "subset",
            "subsetting",
            "commandline",
            "cli",
            "automation",
            "woff",
            "woff2",
            "preload",
            "font-subsetting",
            "variable-fonts",
            "harfbuzz",
            "google-fonts",
            "web-performance",
            "typescript"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@turntrout/subfont",
          "is_deprecated": false,
          "latest_version": "1.11.7",
          "repository_url": "https://github.com/AlexanderMattTurner/subfont",
          "versions_count": 54,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 3296,
          "first_published_at": "2026-04-08T03:24:39.995000Z",
          "latest_published_at": "2026-07-21T16:34:37.713000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 8
        }
      ]
    },
    "popularity": {
      "forks": 0,
      "stars": 2,
      "watchers": 0,
      "fork_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_forks": 0
      },
      "star_history": null,
      "open_issues_and_prs": 2
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "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": 81339,
      "source_files_sampled": 116,
      "oversized_source_files": 2,
      "agent_instruction_files": [
        "CLAUDE.md"
      ],
      "agent_instruction_max_bytes": 5753
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-mh99-v99m-4gvg"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 1,
            "oldest_advisory_days": 5
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "2.1.4",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-fjxv-7rqg-78g4",
              "GHSA-hmw2-7cc7-3qxx"
            ],
            "fixed_version": "4.0.6",
            "advisory_count": 2,
            "oldest_advisory_days": 373
          },
          {
            "name": "html-minifier",
            "direct": false,
            "version": "4.0.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-pfq8-rq6v-vf5m"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 1367
          },
          {
            "name": "@tootallnate/once",
            "direct": false,
            "version": "1.1.2",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 3.3,
            "advisory_ids": [
              "GHSA-vpq2-c234-7xj6"
            ],
            "fixed_version": "3.0.1",
            "advisory_count": 1,
            "oldest_advisory_days": 149
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 1,
          "high": 3
        },
        "advisory_count": 5,
        "affected_count": 4,
        "assessed_count": 530,
        "malicious_count": 0,
        "assessed_package": "npm:@turntrout/subfont@1.11.7",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "@hookun/parse-animation-shorthand",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.1.5"
        },
        {
          "name": "@puppeteer/browsers",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0"
        },
        {
          "name": "assetgraph",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^7.13.0"
        },
        {
          "name": "css-font-parser",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0"
        },
        {
          "name": "css-font-weight-names",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.1"
        },
        {
          "name": "css-list-helpers",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0"
        },
        {
          "name": "font-snapper",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.0"
        },
        {
          "name": "font-tracer",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.7.0"
        },
        {
          "name": "fontverter",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0"
        },
        {
          "name": "harfbuzzjs",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.5.0"
        },
        {
          "name": "jsdom",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^25.0.0"
        },
        {
          "name": "lines-and-columns",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.6"
        },
        {
          "name": "memoizesync",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.1"
        },
        {
          "name": "parse5",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^7.0.0"
        },
        {
          "name": "piscina",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.9.2"
        },
        {
          "name": "postcss",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.3.11"
        },
        {
          "name": "postcss-value-parser",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.0.2"
        },
        {
          "name": "pretty-bytes",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.1.0"
        },
        {
          "name": "puppeteer-core",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^24.39.1"
        },
        {
          "name": "sanitize-filename",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.6.4"
        },
        {
          "name": "specificity",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.4.1"
        },
        {
          "name": "urltools",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.4.1"
        },
        {
          "name": "yargs",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^17.7.2"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@hookun/parse-animation-shorthand",
            "direct": true,
            "version": "0.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@puppeteer/browsers",
            "direct": true,
            "version": "2.13.0",
            "ecosystem": "npm"
          },
          {
            "name": "assetgraph",
            "direct": true,
            "version": "7.13.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-font-parser",
            "direct": true,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-font-weight-names",
            "direct": true,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-list-helpers",
            "direct": true,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "font-snapper",
            "direct": true,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "font-tracer",
            "direct": true,
            "version": "3.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "fontverter",
            "direct": true,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "harfbuzzjs",
            "direct": true,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "harfbuzzjs",
            "direct": true,
            "version": "0.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": true,
            "version": "16.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": true,
            "version": "25.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": true,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "memoizesync",
            "direct": true,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": true,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": true,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "piscina",
            "direct": true,
            "version": "4.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": true,
            "version": "7.0.39",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": true,
            "version": "8.5.18",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": true,
            "version": "8.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-value-parser",
            "direct": true,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-value-parser",
            "direct": true,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pretty-bytes",
            "direct": true,
            "version": "5.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "puppeteer-core",
            "direct": true,
            "version": "24.40.0",
            "ecosystem": "npm"
          },
          {
            "name": "sanitize-filename",
            "direct": true,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "specificity",
            "direct": true,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "urltools",
            "direct": true,
            "version": "0.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": true,
            "version": "15.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": true,
            "version": "17.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": true,
            "version": "18.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/css-color",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.12.11",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-annotate-as-pure",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-create-class-features-plugin",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-member-expression-to-functions",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-optimise-call-expression",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-plugin-utils",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-replace-supers",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-skip-transparent-expression-wrappers",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/highlight",
            "direct": false,
            "version": "7.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-proposal-decorators",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-decorators",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-jsx",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-typescript",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-destructuring",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-explicit-resource-management",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-modules-commonjs",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-typescript",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/preset-typescript",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/cli",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/config-conventional",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/config-validator",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/ensure",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/execute-rule",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/format",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/is-ignored",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/lint",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/load",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/message",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/parse",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/read",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/resolve-extends",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/rules",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/to-lines",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/top-level",
            "direct": false,
            "version": "21.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/types",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@conventional-changelog/git-client",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/color-helpers",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-calc",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-color-parser",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-parser-algorithms",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-tokenizer",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.0",
            "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.21.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/eslintrc",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/eslintrc",
            "direct": false,
            "version": "3.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "9.39.4",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "2.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@hapi/address",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@hapi/bourne",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@hapi/hoek",
            "direct": false,
            "version": "8.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@hapi/joi",
            "direct": false,
            "version": "15.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@hapi/topo",
            "direct": false,
            "version": "3.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@html-validate/stylish",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/core",
            "direct": false,
            "version": "0.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/node",
            "direct": false,
            "version": "0.16.7",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/config-array",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/gitignore-to-minimatch",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/object-schema",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/ansi",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/checkbox",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/confirm",
            "direct": false,
            "version": "6.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/core",
            "direct": false,
            "version": "11.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/editor",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/expand",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/external-editor",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/figures",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/input",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/number",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/password",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/prompts",
            "direct": false,
            "version": "8.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/rawlist",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/search",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/select",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/type",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/cliui",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@istanbuljs/load-nyc-config",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@istanbuljs/schema",
            "direct": false,
            "version": "0.1.3",
            "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/source-map",
            "direct": false,
            "version": "0.3.11",
            "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": "@napi-rs/canvas",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-android-arm64",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-darwin-arm64",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-darwin-x64",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-arm-gnueabihf",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-arm64-gnu",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-arm64-musl",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-riscv64-gnu",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-x64-gnu",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-x64-musl",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-win32-arm64-msvc",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-win32-x64-msvc",
            "direct": false,
            "version": "0.1.97",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-android-arm-eabi",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-android-arm64",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-darwin-arm64",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-darwin-x64",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-freebsd-x64",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-linux-arm64-musl",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-linux-riscv64-gnu",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-linux-x64-gnu",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-linux-x64-musl",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-openharmony-arm64",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-win32-ia32-msvc",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/nice-win32-x64-msvc",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "0.2.12",
            "ecosystem": "npm"
          },
          {
            "name": "@nolyfill/is-core-module",
            "direct": false,
            "version": "1.0.39",
            "ecosystem": "npm"
          },
          {
            "name": "@package-json/types",
            "direct": false,
            "version": "0.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "@pkgjs/parseargs",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rtsao/scc",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sec-ant/readable-stream",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@sidvind/better-ajv-errors",
            "direct": false,
            "version": "0.6.10",
            "ecosystem": "npm"
          },
          {
            "name": "@sidvind/better-ajv-errors",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@simple-libs/child-process-utils",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@simple-libs/stream-utils",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sindresorhus/merge-streams",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sinonjs/commons",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@sinonjs/fake-timers",
            "direct": false,
            "version": "13.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@sinonjs/fake-timers",
            "direct": false,
            "version": "15.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@sinonjs/samsam",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@stryker-mutator/api",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "@stryker-mutator/core",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "@stryker-mutator/instrumenter",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "@stryker-mutator/mocha-runner",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "@stryker-mutator/util",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "@stylistic/eslint-plugin",
            "direct": false,
            "version": "2.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tootallnate/once",
            "direct": false,
            "version": "1.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.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/jsdom",
            "direct": false,
            "version": "28.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json5",
            "direct": false,
            "version": "0.0.29",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "20.19.39",
            "ecosystem": "npm"
          },
          {
            "name": "@types/normalize-package-data",
            "direct": false,
            "version": "2.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/tough-cookie",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yargs",
            "direct": false,
            "version": "17.0.35",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yargs-parser",
            "direct": false,
            "version": "21.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yauzl",
            "direct": false,
            "version": "2.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-android-arm-eabi",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-android-arm64",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-darwin-arm64",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-darwin-x64",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-freebsd-x64",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-arm-musleabihf",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-arm64-musl",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-riscv64-gnu",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-riscv64-musl",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-x64-gnu",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-linux-x64-musl",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-wasm32-wasi",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-win32-ia32-msvc",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@unrs/resolver-binding-win32-x64-msvc",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "abab",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "7.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-globals",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-walk",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "aggregate-error",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "8.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "angular-html-parser",
            "direct": false,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-colors",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "4.3.2",
            "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": "2.0.0",
            "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": "append-transform",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "archy",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-buffer-byte-length",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "array-changes",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-changes-async",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-find-index",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "array-ify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "array-includes",
            "direct": false,
            "version": "3.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.findlast",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.findlastindex",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.flat",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.flatmap",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.tosorted",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "arraybuffer.prototype.slice",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "arraydiff-async",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "arraydiff-papandreou",
            "direct": false,
            "version": "0.1.1-patch1",
            "ecosystem": "npm"
          },
          {
            "name": "arrify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ast-types",
            "direct": false,
            "version": "0.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "astral-regex",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "astral-regex",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "async-function",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "asynckit",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "available-typed-arrays",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "b4a",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "babel-extract-comments",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-syntax-object-rest-spread",
            "direct": false,
            "version": "6.13.0",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-transform-object-rest-spread",
            "direct": false,
            "version": "6.26.0",
            "ecosystem": "npm"
          },
          {
            "name": "babel-runtime",
            "direct": false,
            "version": "6.26.0",
            "ecosystem": "npm"
          },
          {
            "name": "babylon",
            "direct": false,
            "version": "6.18.0",
            "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.2",
            "ecosystem": "npm"
          },
          {
            "name": "bare-fs",
            "direct": false,
            "version": "4.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "bare-os",
            "direct": false,
            "version": "3.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "bare-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bare-stream",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "bare-url",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.10",
            "ecosystem": "npm"
          },
          {
            "name": "basic-ftp",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "better-ajv-errors",
            "direct": false,
            "version": "0.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "bluebird",
            "direct": false,
            "version": "2.9.34",
            "ecosystem": "npm"
          },
          {
            "name": "bluebird",
            "direct": false,
            "version": "3.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "boolbase",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "browser-process-hrtime",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "browser-stdout",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-crc32",
            "direct": false,
            "version": "0.2.13",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-from",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "builtins",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "caching-transform",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind",
            "direct": false,
            "version": "1.0.9",
            "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": "callsite",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "camel-case",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase-keys",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-api",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001781",
            "ecosystem": "npm"
          },
          {
            "name": "capitalize",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "5.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "chance",
            "direct": false,
            "version": "1.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "chance-generators",
            "direct": false,
            "version": "3.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "character-sets",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "4.0.3",
            "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": "clean-stack",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-cursor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-width",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-width",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "code-error-fragment",
            "direct": false,
            "version": "0.0.230",
            "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-diff",
            "direct": false,
            "version": "0.1.7",
            "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": "colord",
            "direct": false,
            "version": "2.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "combined-stream",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "combos",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "14.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "2.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "comment-parser",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "common-path-prefix",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "common-tags",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "commondir",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "compare-func",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-angular",
            "direct": false,
            "version": "8.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-conventionalcommits",
            "direct": false,
            "version": "9.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-commits-parser",
            "direct": false,
            "version": "6.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "core-js",
            "direct": false,
            "version": "2.6.12",
            "ecosystem": "npm"
          },
          {
            "name": "core-js",
            "direct": false,
            "version": "3.49.0",
            "ecosystem": "npm"
          },
          {
            "name": "cosmiconfig",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "cosmiconfig-typescript-loader",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "counteraction",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "createerror",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "createerror",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "createerror",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "6.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "css-declaration-sorter",
            "direct": false,
            "version": "6.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-font-parser-papandreou",
            "direct": false,
            "version": "0.2.3-patch1",
            "ecosystem": "npm"
          },
          {
            "name": "css-generators",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "css-generators",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-select",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-syntax-parser",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "css-unit-converter",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "css-what",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cssnano",
            "direct": false,
            "version": "5.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "cssnano-preset-default",
            "direct": false,
            "version": "5.2.14",
            "ecosystem": "npm"
          },
          {
            "name": "cssnano-utils",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "csso",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "cssom",
            "direct": false,
            "version": "0.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "cssom",
            "direct": false,
            "version": "0.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "cssstyle",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "cssstyle",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "currently-unhandled",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "d",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "data-uri-to-buffer",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "data-urls",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "data-urls",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "data-urls",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-buffer",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-byte-length",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-byte-offset",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "3.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize-keys",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-equal",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "deepmerge",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "default-require-extensions",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "define-data-property",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "define-properties",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "defined",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "degenerator",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "delayed-stream",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "des.js",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "devtools-protocol",
            "direct": false,
            "version": "0.0.1581282",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "diff-match-patch",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "dnserrors",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "doctrine",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "doctrine",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "domelementtype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domexception",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "domspace",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "2.8.0",
            "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": "eastasianwidth",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.322",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "7.0.3",
            "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": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.20.1",
            "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": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "env-paths",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "error-ex",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "es-abstract",
            "direct": false,
            "version": "1.24.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-abstract",
            "direct": false,
            "version": "1.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "es-abstract-get",
            "direct": false,
            "version": "1.0.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-iterator-helpers",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "es-set-tostringtag",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-shim-unscopables",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-to-primitive",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-to-primitive",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "es-toolkit",
            "direct": false,
            "version": "1.47.0",
            "ecosystem": "npm"
          },
          {
            "name": "es5-ext",
            "direct": false,
            "version": "0.10.64",
            "ecosystem": "npm"
          },
          {
            "name": "es6-error",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "es6-iterator",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "es6-set",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "es6-symbol",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "esanimate",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "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": "1.14.3",
            "ecosystem": "npm"
          },
          {
            "name": "escodegen",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "6.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "7.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "9.39.4",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-compat-utils",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-config-prettier",
            "direct": false,
            "version": "10.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-import-context",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-import-resolver-node",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-import-resolver-typescript",
            "direct": false,
            "version": "3.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-module-utils",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-es",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-es-x",
            "direct": false,
            "version": "7.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-import",
            "direct": false,
            "version": "2.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-import-x",
            "direct": false,
            "version": "4.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-mocha",
            "direct": false,
            "version": "10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-n",
            "direct": false,
            "version": "15.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-n",
            "direct": false,
            "version": "17.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-promise",
            "direct": false,
            "version": "7.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-react",
            "direct": false,
            "version": "7.37.5",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-regexp",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-utils",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-utils",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-utils",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "2.1.0",
            "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": "esniff",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "7.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "espurify",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse-fb",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "event-emitter",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "events-universal",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "execa",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "ext",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "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": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-fifo",
            "direct": false,
            "version": "1.3.2",
            "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-string-truncated-width",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-string-width",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-wrap-ansi",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "fd-slicer",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "figures",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "figures",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fill-keys",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-cache-dir",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "3.0.0",
            "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": "flat",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "font-family-papandreou",
            "direct": false,
            "version": "0.2.0-patch2",
            "ecosystem": "npm"
          },
          {
            "name": "for-each",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "foreground-child",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "foreground-child",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "fromentries",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "function.prototype.name",
            "direct": false,
            "version": "1.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "function.prototype.name",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "functional-red-black-tree",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "functions-have-names",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "gather-stream",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "generator-function",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.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-own-enumerable-property-symbols",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-package-type",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-stdin",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-symbol-description",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-tsconfig",
            "direct": false,
            "version": "4.13.7",
            "ecosystem": "npm"
          },
          {
            "name": "get-uri",
            "direct": false,
            "version": "6.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "gettemporaryfilepath",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "git-raw-commits",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "13.0.6",
            "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": "global-directory",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "12.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "13.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "15.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "16.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "globalthis",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "globrex",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "grapheme-splitter",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "greedy-interval-packer",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-bigints",
            "direct": false,
            "version": "1.1.0",
            "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-property-descriptors",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "has-proto",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-tostringtag",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hasha",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "he",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "hosted-git-info",
            "direct": false,
            "version": "2.8.9",
            "ecosystem": "npm"
          },
          {
            "name": "html-encoding-sniffer",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "html-encoding-sniffer",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "html-generators",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-minifier",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-validate",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-validate",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-validate",
            "direct": false,
            "version": "8.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-agent",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-agent",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "httpception",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "httperrors",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "httperrors",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "human-signals",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "4.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "imageinfo",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "indent-string",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "indent-string",
            "direct": false,
            "version": "4.0.0",
            "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": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "inquirer",
            "direct": false,
            "version": "7.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "internal-slot",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ip-address",
            "direct": false,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-arguments",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-array-buffer",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "is-arrayish",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-async-function",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-bigint",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-boolean-object",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-bun-module",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-callable",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.16.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-data-view",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-date-object",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-document.all",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-finalizationregistry",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-finite",
            "direct": false,
            "version": "1.1.0",
            "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-generator-function",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-map",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-negative-zero",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-number-object",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-obj",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-obj",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-object",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-path-inside",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-potential-custom-element-name",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-regex",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-regexp",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-set",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-shared-array-buffer",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-stream",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-stream",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-stream",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-string",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-symbol",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-typed-array",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "is-typedarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-unicode-supported",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-unicode-supported",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakmap",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakref",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakset",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-windows",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "iso-639-1",
            "direct": false,
            "version": "2.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "iso-639-1",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-coverage",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-hook",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-instrument",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-processinfo",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-report",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-source-maps",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-reports",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "iterator.prototype",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "jackspeak",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-md4",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.14.2",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsdoc-type-pratt-parser",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-merge-patch",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "json-merge-patch",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-better-errors",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-rpc-2.0",
            "direct": false,
            "version": "1.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-to-ast",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsonpointer",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsx-ast-utils",
            "direct": false,
            "version": "3.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "just-extend",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "kleur",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "kleur",
            "direct": false,
            "version": "4.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "leven",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "load-json-file",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "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.17.23",
            "ecosystem": "npm"
          },
          {
            "name": "lodash._reinterpolate",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.assign",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.clone",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.defaults",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.flattendeep",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.groupby",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.memoize",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.merge",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.omit",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.sortby",
            "direct": false,
            "version": "4.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.template",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.templatesettings",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.truncate",
            "direct": false,
            "version": "4.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.uniq",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "log-symbols",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "loose-envify",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "loud-rejection",
            "direct": false,
            "version": "1.6.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": "11.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "7.18.3",
            "ecosystem": "npm"
          },
          {
            "name": "magicpen",
            "direct": false,
            "version": "6.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "magicpen-media",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "magicpen-media",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "magicpen-prism",
            "direct": false,
            "version": "3.0.2",
            "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": "map-obj",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "map-obj",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-escape",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.0.29",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data-papandreou",
            "direct": false,
            "version": "2.0.10-patch1",
            "ecosystem": "npm"
          },
          {
            "name": "meow",
            "direct": false,
            "version": "13.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "meow",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge-descriptors",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "messy",
            "direct": false,
            "version": "6.17.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-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-fn",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "minimalistic-assert",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.4",
            "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": "minimist-options",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mitm-papandreou",
            "direct": false,
            "version": "1.7.0-patch1",
            "ecosystem": "npm"
          },
          {
            "name": "mitt",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "mocha",
            "direct": false,
            "version": "11.7.5",
            "ecosystem": "npm"
          },
          {
            "name": "module-not-found-error",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mutation-server-protocol",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "mutation-testing-elements",
            "direct": false,
            "version": "3.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "mutation-testing-metrics",
            "direct": false,
            "version": "3.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "mutation-testing-report-schema",
            "direct": false,
            "version": "3.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "mute-stream",
            "direct": false,
            "version": "0.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mute-stream",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.16",
            "ecosystem": "npm"
          },
          {
            "name": "napi-postinstall",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "neostandard",
            "direct": false,
            "version": "0.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "netmask",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "next-tick",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "nice-try",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "nise",
            "direct": false,
            "version": "6.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "no-case",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-exports-info",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-preload",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.36",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-package-data",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-url",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "normalizeurl",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "npm-run-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nth-check",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "nwsapi",
            "direct": false,
            "version": "2.2.23",
            "ecosystem": "npm"
          },
          {
            "name": "nyc",
            "direct": false,
            "version": "15.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-inspect",
            "direct": false,
            "version": "1.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "object-is",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "object-keys",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object.assign",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "object.entries",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "object.fromentries",
            "direct": false,
            "version": "2.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "object.groupby",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "object.values",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "offline-github-changelog",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "os-tmpdir",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "own-keys",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "own-keys",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "1.3.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": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "3.0.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": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "1.0.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-hash",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "package-json-from-dist",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "param-case",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-json",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse-json",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse-ms",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "passerror",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "3.0.0",
            "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": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-parse",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "path-to-regexp",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pegjs",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "pend",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "peowly",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "perfectionist-dfd",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-dir",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-up",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "possible-typed-array-names",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-calc",
            "direct": false,
            "version": "8.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-colormin",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-convert-values",
            "direct": false,
            "version": "5.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-comments",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-duplicates",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-empty",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-overridden",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-merge-longhand",
            "direct": false,
            "version": "5.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-merge-rules",
            "direct": false,
            "version": "5.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-minify-font-values",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-minify-gradients",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-minify-params",
            "direct": false,
            "version": "5.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-minify-selectors",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-charset",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-display-values",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-positions",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-repeat-style",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-string",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-timing-functions",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-unicode",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-url",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-whitespace",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-ordered-values",
            "direct": false,
            "version": "5.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-reduce-initial",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-reduce-transforms",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-scss",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "6.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-svgo",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-unique-selectors",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "3.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "pretty-ms",
            "direct": false,
            "version": "9.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "prismjs",
            "direct": false,
            "version": "1.30.0",
            "ecosystem": "npm"
          },
          {
            "name": "process-on-spawn",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "progress",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "prompts",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "prop-types",
            "direct": false,
            "version": "15.8.1",
            "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": "proxyquire",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "psl",
            "direct": false,
            "version": "1.15.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",
            "direct": false,
            "version": "24.40.0",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "querystringify",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "quick-lru",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "quoted-printable",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rambda",
            "direct": false,
            "version": "7.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "randombytes",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-is",
            "direct": false,
            "version": "16.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "read-file-stdin",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "read-pkg",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "read-pkg",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "read-pkg-up",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "read-pkg-up",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "redent",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "reduce-css-calc",
            "direct": false,
            "version": "2.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "refa",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "reflect.getprototypeof",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "regenerator-runtime",
            "direct": false,
            "version": "0.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "regexp-ast-analysis",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "regexp.prototype.flags",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "regexpp",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "regexpp",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "relateurl",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "release-zalgo",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "repeat-string",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "repeating",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "require-main-filename",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "requires-port",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resemblejs",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.11",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.12",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "2.0.0-next.6",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-pkg-maps",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rfc2047",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rfc2231",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "6.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "rrweb-cssom",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "rrweb-cssom",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "run-async",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "rxjs",
            "direct": false,
            "version": "6.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "rxjs",
            "direct": false,
            "version": "7.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-array-concat",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "safe-array-concat",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safe-push-apply",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "safe-regex-test",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "sax",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "saxes",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "saxes",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "schemes",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "scslre",
            "direct": false,
            "version": "0.3.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.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "serialize-javascript",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-blocking",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "set-function-length",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-function-name",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-proto",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "1.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.0",
            "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": "sift",
            "direct": false,
            "version": "7.0.1",
            "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": "sinon",
            "direct": false,
            "version": "19.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "sisteransi",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "slice-ansi",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "slice-ansi",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "smart-buffer",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "socketerrors",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "socks",
            "direct": false,
            "version": "2.8.7",
            "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": "source-map-support",
            "direct": false,
            "version": "0.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "spawn-wrap",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-correct",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-exceptions",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-expression-parse",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-license-ids",
            "direct": false,
            "version": "3.0.23",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "stable",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "stable-hash",
            "direct": false,
            "version": "0.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "stable-hash-x",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "stop-iteration-iterator",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "streamx",
            "direct": false,
            "version": "2.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "3.1.0",
            "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.prototype.matchall",
            "direct": false,
            "version": "4.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.repeat",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trim",
            "direct": false,
            "version": "1.2.10",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trim",
            "direct": false,
            "version": "1.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trimend",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trimend",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trimstart",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-object",
            "direct": false,
            "version": "3.3.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": "strip-bom",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-comments",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "strip-final-newline",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-indent",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "stylehacks",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "subset-font",
            "direct": false,
            "version": "2.5.0",
            "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": "supports-color",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-preserve-symlinks-flag",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "svgo",
            "direct": false,
            "version": "2.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "symbol-tree",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "table",
            "direct": false,
            "version": "5.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "table",
            "direct": false,
            "version": "6.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "tar-fs",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tar-stream",
            "direct": false,
            "version": "3.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "teepee",
            "direct": false,
            "version": "2.31.2",
            "ecosystem": "npm"
          },
          {
            "name": "teex",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "terser",
            "direct": false,
            "version": "5.46.1",
            "ecosystem": "npm"
          },
          {
            "name": "test-exclude",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "text-decoder",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "text-table",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "through",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.15",
            "ecosystem": "npm"
          },
          {
            "name": "tldts",
            "direct": false,
            "version": "6.1.86",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-core",
            "direct": false,
            "version": "6.1.86",
            "ecosystem": "npm"
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.0.33",
            "ecosystem": "npm"
          },
          {
            "name": "tough-cookie",
            "direct": false,
            "version": "4.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "tough-cookie",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "tree-kill",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "trim-newlines",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "truncate-utf8-bytes",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-declaration-location",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "tsconfig-paths",
            "direct": false,
            "version": "3.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tunnel",
            "direct": false,
            "version": "0.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "type",
            "direct": false,
            "version": "2.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-detect",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "type-detect",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-buffer",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-byte-length",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-byte-offset",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-length",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-length",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "typed-inject",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "typed-query-selector",
            "direct": false,
            "version": "2.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "typed-rest-client",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "typedarray-to-buffer",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-eslint",
            "direct": false,
            "version": "8.59.0",
            "ecosystem": "npm"
          },
          {
            "name": "uglify-js",
            "direct": false,
            "version": "3.19.3",
            "ecosystem": "npm"
          },
          {
            "name": "ukkonen",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "unbox-primitive",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "underscore",
            "direct": false,
            "version": "1.13.8",
            "ecosystem": "npm"
          },
          {
            "name": "underscore",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "unexpected",
            "direct": false,
            "version": "11.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "unexpected-bluebird",
            "direct": false,
            "version": "2.9.34-longstack2",
            "ecosystem": "npm"
          },
          {
            "name": "unexpected-check",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "unexpected-messy",
            "direct": false,
            "version": "8.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "unexpected-mitm",
            "direct": false,
            "version": "12.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "unexpected-resemble",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unexpected-set",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unexpected-sinon",
            "direct": false,
            "version": "10.11.2",
            "ecosystem": "npm"
          },
          {
            "name": "unicorn-magic",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "unrs-resolver",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "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": "urijs",
            "direct": false,
            "version": "1.19.11",
            "ecosystem": "npm"
          },
          {
            "name": "url-parse",
            "direct": false,
            "version": "1.5.10",
            "ecosystem": "npm"
          },
          {
            "name": "utf8",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "utf8-byte-length",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "8.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "v8-compile-cache",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "validate-npm-package-license",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-hr-time",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-xmlserializer",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-xmlserializer",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wawoff2",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "weapon-regex",
            "direct": false,
            "version": "1.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "webdriver-bidi-protocol",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-encoding",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-encoding",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "14.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "8.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-boxed-primitive",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "which-builtin-type",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "which-collection",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-module",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "which-typed-array",
            "direct": false,
            "version": "1.1.20",
            "ecosystem": "npm"
          },
          {
            "name": "which-typed-array",
            "direct": false,
            "version": "1.1.22",
            "ecosystem": "npm"
          },
          {
            "name": "woff2sfnt-sfnt2woff",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-background-sync",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-broadcast-update",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-build",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-cacheable-response",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-core",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-expiration",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-google-analytics",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-navigation-preload",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-precaching",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-range-requests",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-routing",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-strategies",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-streams",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-sw",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workbox-window",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "workerpool",
            "direct": false,
            "version": "9.3.4",
            "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",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "write-file-atomic",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "write-file-stdout",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "7.5.10",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "xml-name-validator",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "xml-name-validator",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "xmlchars",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "1.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "10.1.0",
            "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": "yargs-parser",
            "direct": false,
            "version": "22.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-unparser",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yauzl",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "yoctocolors",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "3.25.76",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 1228,
        "direct_count": 31,
        "indirect_count": 1197
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 2,
        "merged_prs": 149,
        "open_issues": 0,
        "closed_ratio": null,
        "closed_issues": 0,
        "closed_unmerged_prs": 20
      },
      "bus_factor": 2,
      "bot_contributors": 2,
      "top_contributors": [
        {
          "type": "User",
          "login": "papandreou",
          "commits": 612,
          "avatar_url": "https://avatars.githubusercontent.com/u/373545?v=4"
        },
        {
          "type": "User",
          "login": "claude",
          "commits": 459,
          "avatar_url": "https://avatars.githubusercontent.com/u/81847?v=4"
        },
        {
          "type": "User",
          "login": "alexander-turner",
          "commits": 158,
          "avatar_url": "https://avatars.githubusercontent.com/u/3458070?v=4"
        },
        {
          "type": "User",
          "login": "Munter",
          "commits": 108,
          "avatar_url": "https://avatars.githubusercontent.com/u/331790?v=4"
        },
        {
          "type": "User",
          "login": "palindrom615",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/10936496?v=4"
        },
        {
          "type": "User",
          "login": "JesseFarebro",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/1377567?v=4"
        },
        {
          "type": "User",
          "login": "bjrn",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/151166?v=4"
        },
        {
          "type": "User",
          "login": "AlanBreck",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/1199820?v=4"
        },
        {
          "type": "User",
          "login": "nlemoine",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/2526939?v=4"
        },
        {
          "type": "User",
          "login": "peterbe",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/26739?v=4"
        }
      ],
      "contributors_sampled": 12,
      "top_contributor_share": 0.454
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "auto-version.yml",
        "build-publish-notify.yaml",
        "ci.yml",
        "claude.yaml",
        "dependabot-auto-merge.yaml",
        "phone-home.yaml",
        "security-vulnerability-scan.yaml",
        "template-sync.yaml"
      ],
      "has_docs_dir": false,
      "linter_configs": [
        "eslint.config.js"
      ],
      "has_editorconfig": true,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "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": "13 out of 13 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/12 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 7 contributing companies or organizations",
            "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": 10,
            "reason": "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": 10,
            "reason": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
            "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": 8,
            "reason": "dependency not pinned by hash detected -- score normalized to 8",
            "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": 0,
            "reason": "45 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "bd18ac39f6c14ce7eac7b79239b800f3e56b9cca",
        "ran_at": "2026-07-30T06:39:07Z",
        "aggregate_score": 5,
        "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-29T19:55:53Z",
      "oldest_open_prs": [
        {
          "number": 169,
          "created_at": "2026-07-22T11:05:36Z",
          "last_comment_at": "2026-07-29T11:22:51Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 171,
          "created_at": "2026-07-29T19:56:09Z",
          "last_comment_at": "2026-07-29T19:56:26Z",
          "last_comment_author": "github-actions"
        }
      ],
      "last_merged_pr_at": "2026-07-29T19:54:47Z",
      "ci_last_conclusion": "FAILURE",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/AlexanderMattTurner/subfont",
    "host": "github.com",
    "name": "subfont",
    "owner": "AlexanderMattTurner"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 57,
      "inputs": {
        "security": 54,
        "vitality": 82,
        "community": 24,
        "governance": 65,
        "engineering": 54
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 82,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 78,
            "inputs": {
              "commits_last_year": 643,
              "human_commit_share": 0.98,
              "days_since_last_push": 0,
              "active_weeks_last_year": 21
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "21/52 weeks with commits",
                "points": 14.5,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 21
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "643 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 643
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "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": 88,
            "inputs": {
              "releases_count": 52,
              "latest_release_tag": "v1.11.7",
              "releases_from_tags": true,
              "days_since_latest_release": 8,
              "mean_days_between_releases": 6.7
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "52 version tags (no GitHub releases)",
                "points": 16.2,
                "status": "partial",
                "details": [
                  {
                    "code": "version_tags_no_releases",
                    "params": {
                      "count": 52
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 8 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 8
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~6.7 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 6.7
                    }
                  }
                ],
                "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": "critical",
        "name": "Community & Adoption",
        "value": 24,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 0,
              "stars": 2,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "2 stars",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "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": "critical",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 25,
            "inputs": {
              "has_readme": false,
              "has_license": false,
              "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": 0,
                "status": "missed",
                "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": 59,
            "inputs": {
              "packages": [
                "@turntrout/subfont"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 3296
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "3,296 downloads/month across npm",
                "points": 46.9,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 3296,
                      "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": 65,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "moderate",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "bus_factor": 2,
              "contributors_sampled": 12,
              "top_contributor_share": 0.454
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "2 contributor(s) cover half of all commits",
                "points": 25.2,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 45% of commits",
                "points": 12.3,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 45
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "12 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 12
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 7 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "moderate",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Issue resolution. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "issue_resolution"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 63,
            "inputs": {
              "merged_prs": 149,
              "open_issues": 0,
              "closed_issues": 0,
              "issue_closed_ratio": null,
              "closed_unmerged_prs": 20
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "no issues or no data",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_issues_or_data",
                    "params": {}
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "149/169 decided PRs merged",
                "points": 33.7,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 149,
                      "decided": 169
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/12 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": 44,
            "inputs": {
              "followers": 4,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "AlexanderMattTurner",
              "public_repos": 13,
              "account_age_days": 58
            },
            "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": "4 followers of AlexanderMattTurner",
                "points": 5,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 4,
                      "login": "AlexanderMattTurner"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "13 public repos, account ~0 yr old",
                "points": 8.7,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 13
                    }
                  },
                  {
                    "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": [
                "@turntrout/subfont"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 8
            },
            "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 8 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 8
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "54 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 54
                    }
                  }
                ],
                "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": "moderate",
        "name": "Engineering Quality",
        "value": 54,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "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": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "13 out of 13 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "critical",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "topics": [],
              "has_wiki": false,
              "homepage": null,
              "has_readme": false,
              "has_docs_dir": false,
              "has_description": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 0,
                "status": "missed",
                "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": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 54,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "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": 50,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 5
            },
            "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": "13 out of 13 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/12 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 7 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "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": "update tool detected",
                "points": 7.5,
                "status": "met",
                "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": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "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 8",
                "points": 4,
                "status": "partial",
                "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": "45 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "moderate",
            "name": "Dependency advisories",
            "note": "Matched the npm:@turntrout/subfont@1.11.7 runtime dependency closure — what installing the published package pulls in — 530 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "npm:@turntrout/subfont@1.11.7",
                  "assessed": 530
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 69,
            "inputs": {
              "source": "osv",
              "advisories": 5,
              "affected_packages": 4,
              "assessed_packages": 530,
              "unassessed_packages": 0,
              "affected_by_severity": "high 3, low 1",
              "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": "4 affected: brace-expansion 1.1.16 (high 7.5), form-data 2.1.4 (high 7.5), html-minifier 4.0.0 (high 7.5), +1 more",
                "points": 6.9,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 4,
                      "packages": "brace-expansion 1.1.16 (high 7.5), form-data 2.1.4 (high 7.5), html-minifier 4.0.0 (high 7.5)"
                    }
                  },
                  {
                    "code": "advisories_affected_more",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "3 advisory-carrying package(s) unaddressed past 90 days; oldest published 1367 days ago",
                "points": 27.4,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_stale",
                    "params": {
                      "days": 90,
                      "count": 3,
                      "oldest": 1367
                    }
                  }
                ],
                "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": 530,
              "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": 16
            },
            "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": "good",
        "name": "AI Readiness",
        "value": 82,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.98,
              "agent_instruction_files": [
                "CLAUDE.md"
              ],
              "agent_instruction_max_bytes": 5753
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "CLAUDE.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "CLAUDE.md"
                    }
                  }
                ],
                "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": "96 of 98 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 96,
                      "sampled": 98
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": false,
              "typed_language": false,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "tsconfig.json"
              ],
              "agent_commit_share": 0.22,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0.02
            },
            "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": "22 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 22,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "2 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 2,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 8",
                "points": 8,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "good",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "primary_language": "JavaScript",
              "largest_source_bytes": 81339,
              "source_files_sampled": 116,
              "oversized_source_files": 2
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "JavaScript with type-check config (tsconfig.json)",
                "points": 27,
                "status": "partial",
                "details": [
                  {
                    "code": "typecheck_config_language",
                    "params": {
                      "files": "tsconfig.json",
                      "language": "JavaScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "2/116 source files over 60KB",
                "points": 54.1,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 116,
                      "oversized": 2
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "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": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "Community profile unavailable"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-30T06:39:28.270798Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/a/AlexanderMattTurner/subfont.svg",
  "full_name": "AlexanderMattTurner/subfont",
  "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.