Registro público
Informe de salud del softwareesquema 0.27.0 · métricas 1.13.0 · 2026-07-23 00:55 UTC

dcdpr / did-btcr2-js

TypeScriptMPL-2.0★ 2 estrellas⑂ 1 forkdesde abr 2025Ver en GitHub ↗

dcdpr/did-btcr2-js tiene un índice de salud de 55 sobre 100, lo que lo sitúa en la banda Moderado. Su puntuación más alta es Engineering Quality (67/100) y la más baja, Community & Adoption (43/100). Se actualizó por última vez hace 5 días. Una sola persona concentra la mayor parte del trabajo reciente.

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

55
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

dcdprCuenta personal
17 seguidores31 repositorios públicosdesde may 2017Digital Contract Design, LLC

Este repositorio pertenece a una cuenta personal. Un proyecto con un único propietario conlleva más riesgo de continuidad que uno respaldado por una organización.

Ecosistemas de paquetes

Métricas por categoría

Vitalidad

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

52Moderado · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 5 días
21.5/36Cadencia de commits — 31/52 semanas con commits
18/18Volumen de commits — 136 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year136
human_commit_share1
days_since_last_push5
active_weeks_last_year31
Cómo se puntúa
0/27Publica versiones — sin versiones publicadas
0/36Recencia de las versiones — sin versiones
0/27Cadencia de publicación — sin versiones
0/10OpenSSF Scorecard: Signed-Releases — sin datos
Datos de entrada utilizados
releases_count0
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?

43En riesgo · 18% del índice global
Cómo se puntúa
0/60Estrellas — 2 estrellas
0/25Forks — 1 forks
0/15Observadores — 1 observadores
Datos de entrada utilizados
forks1
stars2
watchers1
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
22.5/22.5Licencia — licencia reconocida (MPL-2.0)
18/18Guía CONTRIBUTING
0/13.5Código de conducta
0/7.2Plantilla de issues
0/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
has_contributing
has_issue_templateno
has_code_of_conductno
has_pull_request_templateno
Cómo se puntúa
57.7/80Descargas mensuales — 21.214 descargas/mes en npm
0/20Dependientes en el registro — no lo informa este ecosistema
Datos de entrada utilizados
packages@did-btcr2/api, @did-btcr2/cli, @did-btcr2/smt, @did-btcr2/common, @did-btcr2/method, @did-btcr2/bitcoin, @did-btcr2/keypair, @did-btcr2/aggregation
dependents
ecosystemsnpm
total_downloads
monthly_downloads21.214
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?

57Moderado · 24% del índice global
Cómo se puntúa
9/54Factor bus — la mitad de los commits recae en 1 contribuyente(s)
0/22.5Distribución de commits — el principal contribuyente firma el 100% de los commits
1.4/13.5Amplitud de contribuyentes — 1 contribuyentes
3/10OpenSSF Scorecard: Contributors — project has 1 contributing companies or organizations -- score normalized to 3
Datos de entrada utilizados
bus_factor1
contributors_sampled1
top_contributor_share1
Cómo se puntúa
46.8/46.8Resolución de issues — 100% de issues cerradas
33.9/38.3Aceptación de PR — 126/142 PR decididos fusionados
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Datos de entrada utilizados
merged_prs126
open_issues0
closed_issues4
issue_closed_ratio1
closed_unmerged_prs16
Cómo se puntúa
10/30Respaldo de la propiedad — cuenta personal (usuario)
0/20Dominio verificado — no aplicable a cuentas de usuario
9/25Alcance del propietario — 17 seguidores de dcdpr
23/25Trayectoria — 31 repos públicos, cuenta de ~9 años
Datos de entrada utilizados
followers17
owner_typeUser
is_verified
owner_logindcdpr
public_repos31
account_age_days3344
Excluidos de la puntuación (sin datos o no aplicable): Dominio verificado. Los pesos restantes se han renormalizado.
Cómo se puntúa
25/25Publicado y resoluble — 8 paquete(s) en npm
35/35Recencia de publicación — última publicación hace 5 días
20/20Historial de versiones — 55 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packages@did-btcr2/api, @did-btcr2/cli, @did-btcr2/smt, @did-btcr2/common, @did-btcr2/method, @did-btcr2/bitcoin, @did-btcr2/keypair, @did-btcr2/aggregation
ecosystemsnpm
any_deprecatedno
min_days_since_publish5

Calidad de Ingeniería

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

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

Documentación

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

Seguridad

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

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 — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/30 approved changesets -- score normalized to 0
0.8/2.5Contributors — project has 1 contributing companies or organizations -- score normalized to 3
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — sin datos
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — sin datos
6.8/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 29 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate4,3
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
0/25Dependencias indirectas libres de avisos conocidos — el conjunto transitivo no es separable de las dependencias de desarrollo y prueba en este alcance
0/40Sin avisos pendientes — ningún aviso tiene fecha de publicación
Datos de entrada utilizados
sourceosv
advisories48
affected_packages27
assessed_packages699
unassessed_packages67
affected_by_severitycritical 2, high 17, moderate 8
direct_affected_packages0
Excluidos de la puntuación (sin datos o no aplicable): Dependencias indirectas libres de avisos conocidos, Sin avisos pendientes. Los pesos restantes se han renormalizado. Se cotejaron 699 dependencias resueltas con OSV. 67 no pudieron evaluarse: sin versión resuelta, ecosistema no admitido o fuera de la lista de paquetes informada. Este repositorio no publica ningún paquete que el índice resuelva, por lo que se evaluó en su lugar el grafo de dependencias del repositorio. Ese grafo mezcla fijaciones de desarrollo y prueba con las dependencias distribuidas, de modo que solo se puntúan las dependencias declaradas en tiempo de ejecución; los hallazgos transitivos se informan como contexto y quedan excluidos de la puntuación. 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.

52Moderado · 0% del índice global
Cómo se puntúa
0/45Instrucciones para agentes — sin CLAUDE.md / AGENTS.md / reglas de editor
0/15Documentación legible por máquinas (llms.txt)
40/40Historial de commits legible — 82 de 100 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share0,82
agent_instruction_files
agent_instruction_max_bytes
Cómo se puntúa
0/18Arranque con un solo comando
22/22Pruebas automatizadas
0/11Configuración de lint / formato
11/11Verificación estática de tipos — packages/aggregation/lib/tsconfig.json, packages/aggregation/tests/tsconfig.json, packages/aggregation/tsconfig.json, packages/api/lib/tsconfig.json, packages/api/tests/tsconfig.json, packages/api/tsconfig.json, packages/bitcoin/lib/tsconfig.json, packages/bitcoin/tests/tsconfig.json, packages/bitcoin/tsconfig.json, packages/cli/lib/tsconfig.json, packages/cli/tests/tsconfig.json, packages/cli/tsconfig.json, packages/common/lib/tsconfig.json, packages/common/tests/tsconfig.json, packages/common/tsconfig.json, packages/cryptosuite/lib/tsconfig.json, packages/cryptosuite/tests/tsconfig.json, packages/cryptosuite/tsconfig.json, packages/key-manager/lib/tsconfig.json, packages/key-manager/tests/tsconfig.json, packages/key-manager/tsconfig.json, packages/keypair/lib/tsconfig.json, packages/keypair/tests/tsconfig.json, packages/keypair/tsconfig.json, packages/method/lib/tsconfig.json, packages/method/tests/tsconfig.json, packages/method/tsconfig.json, packages/smt/tests/tsconfig.json, packages/smt/tsconfig.json, tsconfig.json
10/10Entorno reproducible — lockfile
0/10Práctica demostrada con agentes — ningún commit con autoría de agente entre los últimos 100
0/8Mantenimiento automatizado — no se observan actualizaciones automáticas de dependencias
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Datos de entrada utilizados
has_nixno
has_tests
lockfilespnpm-lock.yaml
has_dockerfileno
typed_language
bootstrap_files
has_devcontainerno
has_linter_configno
typecheck_configspackages/aggregation/lib/tsconfig.json, packages/aggregation/tests/tsconfig.json, packages/aggregation/tsconfig.json, packages/api/lib/tsconfig.json, packages/api/tests/tsconfig.json, packages/api/tsconfig.json, packages/bitcoin/lib/tsconfig.json, packages/bitcoin/tests/tsconfig.json, packages/bitcoin/tsconfig.json, packages/cli/lib/tsconfig.json, packages/cli/tests/tsconfig.json, packages/cli/tsconfig.json, packages/common/lib/tsconfig.json, packages/common/tests/tsconfig.json, packages/common/tsconfig.json, packages/cryptosuite/lib/tsconfig.json, packages/cryptosuite/tests/tsconfig.json, packages/cryptosuite/tsconfig.json, packages/key-manager/lib/tsconfig.json, packages/key-manager/tests/tsconfig.json, packages/key-manager/tsconfig.json, packages/keypair/lib/tsconfig.json, packages/keypair/tests/tsconfig.json, packages/keypair/tsconfig.json, packages/method/lib/tsconfig.json, packages/method/tests/tsconfig.json, packages/method/tsconfig.json, packages/smt/tests/tsconfig.json, packages/smt/tsconfig.json, tsconfig.json
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
Cómo se puntúa
45/45Código verificable por tipos — TypeScript (tipado estático)
54.9/55Tamaños de archivo manejables — 1/387 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageTypeScript
largest_source_bytes80.252
source_files_sampled387
oversized_source_files1

Datos clave

2estrellas de GitHub
1contribuidores
136commits en los últimos 12 meses
5días desde el último push
0versiones publicadas
1factor 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
  • deps.dev does not index npm:@did-btcr2/api@0.18.0; advisories assessed against the repository dependency graph instead

Más detalle

OpenSSF Scorecard 4.3 / 10
4.3agregado

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-23 00:54 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
3Contributorsproject has 1 contributing companies or organizations -- score normalized to 3
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
n/dPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
n/dSigned-Releasesno releases found
9Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities29 existing vulnerabilities detected
Dependencias directas 61
RegistroPaqueteRestricción de versiónManifiesto
npm@did-btcr2/bitcoinworkspace:^packages/aggregation/package.json
npm@did-btcr2/commonworkspace:^packages/aggregation/package.json
npm@did-btcr2/cryptosuiteworkspace:^packages/aggregation/package.json
npm@did-btcr2/keypairworkspace:^packages/aggregation/package.json
npm@did-btcr2/smtworkspace:^packages/aggregation/package.json
npm@noble/curves^1.9.7packages/aggregation/package.json
npm@noble/hashes^1.8.0packages/aggregation/package.json
npm@scure/btc-signer^1.8.1packages/aggregation/package.json
npmnostr-tools^2.23.3packages/aggregation/package.json
npm@did-btcr2/bitcoinworkspace:^packages/api/package.json
npm@did-btcr2/commonworkspace:^packages/api/package.json
npm@did-btcr2/cryptosuiteworkspace:^packages/api/package.json
npm@did-btcr2/keypairworkspace:^packages/api/package.json
npm@did-btcr2/key-managerworkspace:^packages/api/package.json
npm@did-btcr2/methodworkspace:^packages/api/package.json
npm@web5/dids^1.2.0packages/api/package.json
npmmultiformats^13.3.1packages/api/package.json
npm@did-btcr2/commonworkspace:^packages/bitcoin/package.json
npm@scure/btc-signer^1.8.1packages/bitcoin/package.json
npm@did-btcr2/apiworkspace:^packages/cli/package.json
npm@did-btcr2/commonworkspace:^packages/cli/package.json
npm@did-btcr2/key-managerworkspace:^packages/cli/package.json
npm@did-btcr2/keypairworkspace:^packages/cli/package.json
npm@did-btcr2/methodworkspace:^packages/cli/package.json
npm@noble/ciphers^2.1.1packages/cli/package.json
npm@noble/hashes^2.0.1packages/cli/package.json
npm@scure/base^1.2.6packages/cli/package.json
npm@web5/dids^1.2.0packages/cli/package.json
npmcommander^13.1.0packages/cli/package.json
npm@noble/hashes^1.7.1packages/common/package.json
npm@scure/base^1.2.6packages/common/package.json
npmfast-json-patch^3.1.1packages/common/package.json
npmjson-canonicalize^1.0.6packages/common/package.json
npm@did-btcr2/commonworkspace:^packages/cryptosuite/package.json
npm@did-btcr2/keypairworkspace:^packages/cryptosuite/package.json
npm@noble/curves^1.8.1packages/cryptosuite/package.json
npm@noble/hashes^1.7.1packages/cryptosuite/package.json
npm@web5/dids^1.2.0packages/cryptosuite/package.json
npmmultiformats^13.3.2packages/cryptosuite/package.json
npm@did-btcr2/commonworkspace:^packages/key-manager/package.json
npm@did-btcr2/keypairworkspace:^packages/key-manager/package.json
npm@noble/curves^2.0.1packages/key-manager/package.json
npm@noble/hashes^2.0.1packages/key-manager/package.json
npm@did-btcr2/commonworkspace:^packages/keypair/package.json
npm@noble/curves^2.0.1packages/keypair/package.json
npm@noble/hashes^1.7.1packages/keypair/package.json
npm@scure/base^2.0.0packages/keypair/package.json
npm@scure/btc-signer^1.8.1packages/keypair/package.json
npm@did-btcr2/bitcoinworkspace:^packages/method/package.json
npm@did-btcr2/commonworkspace:^packages/method/package.json
npm@did-btcr2/cryptosuiteworkspace:^packages/method/package.json
npm@did-btcr2/keypairworkspace:^packages/method/package.json
npm@did-btcr2/smtworkspace:^packages/method/package.json
npm@noble/curves^1.9.7packages/method/package.json
npm@noble/hashes^1.8.0packages/method/package.json
npm@scure/base^1.2.6packages/method/package.json
npm@scure/btc-signer^1.8.1packages/method/package.json
npm@web5/dids^1.2.0packages/method/package.json
npm@noble/curves^2.0.1packages/smt/package.json
npm@noble/hashes^1.7.1packages/smt/package.json
npm@scure/base^1.2.6packages/smt/package.json
Todas las dependencias 766

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

RegistroPaqueteVersiónRelación
npm@noble/ciphers0.5.3directa
npm@noble/ciphers2.1.1directa
npm@noble/ciphers^2.1.1directa
npm@noble/curves1.3.0directa
npm@noble/curves1.9.7directa
npm@noble/curves2.0.1directa
npm@noble/curves^1.8.1directa
npm@noble/curves^1.9.7directa
npm@noble/curves^2.0.1directa
npm@noble/hashes1.3.3directa
npm@noble/hashes1.4.0directa
npm@noble/hashes1.8.0directa
npm@noble/hashes2.0.1directa
npm@noble/hashes^1.7.1directa
npm@noble/hashes^1.8.0directa
npm@noble/hashes^2.0.1directa
npm@scure/base1.2.6directa
npm@scure/base2.0.0directa
npm@scure/base^1.2.6directa
npm@scure/base^2.0.0directa
npm@scure/btc-signer1.8.1directa
npm@scure/btc-signer^1.8.1directa
npm@web5/dids1.2.0directa
npm@web5/dids^1.2.0directa
npmcommander13.1.0directa
npmcommander4.1.1directa
npmcommander^13.1.0directa
npmfast-json-patch3.1.1directa
npmfast-json-patch^3.1.1directa
npmjson-canonicalize1.2.0directa
npmjson-canonicalize^1.0.6directa
npmmultiformats12.1.3directa
npmmultiformats13.1.0directa
npmmultiformats13.4.1directa
npmmultiformats13.4.2directa
npmmultiformats^13.3.1directa
npmmultiformats^13.3.2directa
npmmultiformats^13.4.2directa
npmnostr-tools2.23.3directa
npmnostr-tools^2.23.3directa
npm@babel/runtime7.28.4indirecta
npm@bcoe/v8-coverage1.0.2indirecta
npm@changesets/apply-release-plan7.0.13indirecta
npm@changesets/assemble-release-plan6.0.9indirecta
npm@changesets/changelog-git0.2.1indirecta
npm@changesets/changelog-github0.5.1indirecta
npm@changesets/cli2.29.7indirecta
npm@changesets/config3.1.1indirecta
npm@changesets/errors0.2.0indirecta
npm@changesets/get-dependents-graph2.1.3indirecta
npm@changesets/get-github-info0.6.0indirecta
npm@changesets/get-release-plan4.0.13indirecta
npm@changesets/get-version-range-type0.4.0indirecta
npm@changesets/git3.0.4indirecta
npm@changesets/logger0.1.1indirecta
npm@changesets/parse0.4.1indirecta
npm@changesets/pre2.0.2indirecta
npm@changesets/read0.6.5indirecta
npm@changesets/should-skip-package0.1.2indirecta
npm@changesets/types4.1.0indirecta
npm@changesets/types6.1.0indirecta
npm@changesets/write0.4.0indirecta
npm@decentralized-identity/ion-sdk1.0.4indirecta
npm@dnsquery/dns-packet6.1.1indirecta
npm@esbuild/aix-ppc640.24.2indirecta
npm@esbuild/aix-ppc640.25.9indirecta
npm@esbuild/aix-ppc640.27.0indirecta
npm@esbuild/android-arm0.24.2indirecta
npm@esbuild/android-arm0.25.9indirecta
npm@esbuild/android-arm0.27.0indirecta
npm@esbuild/android-arm640.24.2indirecta
npm@esbuild/android-arm640.25.9indirecta
npm@esbuild/android-arm640.27.0indirecta
npm@esbuild/android-x640.24.2indirecta
npm@esbuild/android-x640.25.9indirecta
npm@esbuild/android-x640.27.0indirecta
npm@esbuild/darwin-arm640.24.2indirecta
npm@esbuild/darwin-arm640.25.9indirecta
npm@esbuild/darwin-arm640.27.0indirecta
npm@esbuild/darwin-x640.24.2indirecta
npm@esbuild/darwin-x640.25.9indirecta
npm@esbuild/darwin-x640.27.0indirecta
npm@esbuild/freebsd-arm640.24.2indirecta
npm@esbuild/freebsd-arm640.25.9indirecta
npm@esbuild/freebsd-arm640.27.0indirecta
npm@esbuild/freebsd-x640.24.2indirecta
npm@esbuild/freebsd-x640.25.9indirecta
npm@esbuild/freebsd-x640.27.0indirecta
npm@esbuild/linux-arm0.24.2indirecta
npm@esbuild/linux-arm0.25.9indirecta
npm@esbuild/linux-arm0.27.0indirecta
npm@esbuild/linux-arm640.24.2indirecta
npm@esbuild/linux-arm640.25.9indirecta
npm@esbuild/linux-arm640.27.0indirecta
npm@esbuild/linux-ia320.24.2indirecta
npm@esbuild/linux-ia320.25.9indirecta
npm@esbuild/linux-ia320.27.0indirecta
npm@esbuild/linux-loong640.24.2indirecta
npm@esbuild/linux-loong640.25.9indirecta
npm@esbuild/linux-loong640.27.0indirecta
npm@esbuild/linux-mips64el0.24.2indirecta
npm@esbuild/linux-mips64el0.25.9indirecta
npm@esbuild/linux-mips64el0.27.0indirecta
npm@esbuild/linux-ppc640.24.2indirecta
npm@esbuild/linux-ppc640.25.9indirecta
npm@esbuild/linux-ppc640.27.0indirecta
npm@esbuild/linux-riscv640.24.2indirecta
npm@esbuild/linux-riscv640.25.9indirecta
npm@esbuild/linux-riscv640.27.0indirecta
npm@esbuild/linux-s390x0.24.2indirecta
npm@esbuild/linux-s390x0.25.9indirecta
npm@esbuild/linux-s390x0.27.0indirecta
npm@esbuild/linux-x640.24.2indirecta
npm@esbuild/linux-x640.25.9indirecta
npm@esbuild/linux-x640.27.0indirecta
npm@esbuild/netbsd-arm640.24.2indirecta
npm@esbuild/netbsd-arm640.25.9indirecta
npm@esbuild/netbsd-arm640.27.0indirecta
npm@esbuild/netbsd-x640.24.2indirecta
npm@esbuild/netbsd-x640.25.9indirecta
npm@esbuild/netbsd-x640.27.0indirecta
npm@esbuild/openbsd-arm640.24.2indirecta
npm@esbuild/openbsd-arm640.25.9indirecta
npm@esbuild/openbsd-arm640.27.0indirecta
npm@esbuild/openbsd-x640.24.2indirecta
npm@esbuild/openbsd-x640.25.9indirecta
npm@esbuild/openbsd-x640.27.0indirecta
npm@esbuild/openharmony-arm640.25.9indirecta
npm@esbuild/openharmony-arm640.27.0indirecta
npm@esbuild/sunos-x640.24.2indirecta
npm@esbuild/sunos-x640.25.9indirecta
npm@esbuild/sunos-x640.27.0indirecta
npm@esbuild/win32-arm640.24.2indirecta
npm@esbuild/win32-arm640.25.9indirecta
npm@esbuild/win32-arm640.27.0indirecta
npm@esbuild/win32-ia320.24.2indirecta
npm@esbuild/win32-ia320.25.9indirecta
npm@esbuild/win32-ia320.27.0indirecta
npm@esbuild/win32-x640.24.2indirecta
npm@esbuild/win32-x640.25.9indirecta
npm@esbuild/win32-x640.27.0indirecta
npm@eslint-community/eslint-utils4.9.0indirecta
npm@eslint-community/eslint-utils4.9.1indirecta
npm@eslint-community/regexpp4.12.1indirecta
npm@eslint-community/regexpp4.12.2indirecta
npm@eslint/config-array0.21.0indirecta
npm@eslint/config-array0.21.2indirecta
npm@eslint/config-helpers0.3.1indirecta
npm@eslint/config-helpers0.4.2indirecta
npm@eslint/core0.15.2indirecta
npm@eslint/core0.17.0indirecta
npm@eslint/eslintrc3.3.1indirecta
npm@eslint/eslintrc3.3.5indirecta
npm@eslint/js9.35.0indirecta
npm@eslint/js9.39.4indirecta
npm@eslint/js^9.20.0indirecta
npm@eslint/js^9.21.0indirecta
npm@eslint/js^9.22.0indirecta
npm@eslint/js^9.39.4indirecta
npm@eslint/object-schema2.1.6indirecta
npm@eslint/object-schema2.1.7indirecta
npm@eslint/plugin-kit0.3.5indirecta
npm@eslint/plugin-kit0.4.1indirecta
npm@gerrit0/mini-shiki3.12.2indirecta
npm@humanfs/core0.19.1indirecta
npm@humanfs/node0.16.7indirecta
npm@humanwhocodes/module-importer1.0.1indirecta
npm@humanwhocodes/retry0.4.3indirecta
npm@inquirer/external-editor1.0.2indirecta
npm@isaacs/cliui8.0.2indirecta
npm@isaacs/ttlcache1.4.1indirecta
npm@istanbuljs/schema0.1.3indirecta
npm@jridgewell/gen-mapping0.3.13indirecta
npm@jridgewell/resolve-uri3.1.2indirecta
npm@jridgewell/sourcemap-codec1.5.5indirecta
npm@jridgewell/trace-mapping0.3.31indirecta
npm@leichtgewicht/ip-codec2.0.5indirecta
npm@manypkg/find-root1.1.0indirecta
npm@manypkg/get-packages1.1.3indirecta
npm@noble/ed255192.3.0indirecta
npm@noble/secp256k12.3.0indirecta
npm@nodelib/fs.scandir2.1.5indirecta
npm@nodelib/fs.stat2.0.5indirecta
npm@nodelib/fs.walk1.2.8indirecta
npm@pkgjs/parseargs0.11.0indirecta
npm@rollup/rollup-android-arm-eabi4.50.2indirecta
npm@rollup/rollup-android-arm644.50.2indirecta
npm@rollup/rollup-darwin-arm644.50.2indirecta
npm@rollup/rollup-darwin-x644.50.2indirecta
npm@rollup/rollup-freebsd-arm644.50.2indirecta
npm@rollup/rollup-freebsd-x644.50.2indirecta
npm@rollup/rollup-linux-arm-gnueabihf4.50.2indirecta
npm@rollup/rollup-linux-arm-musleabihf4.50.2indirecta
npm@rollup/rollup-linux-arm64-gnu4.50.2indirecta
npm@rollup/rollup-linux-arm64-musl4.50.2indirecta
npm@rollup/rollup-linux-loong64-gnu4.50.2indirecta
npm@rollup/rollup-linux-ppc64-gnu4.50.2indirecta
npm@rollup/rollup-linux-riscv64-gnu4.50.2indirecta
npm@rollup/rollup-linux-riscv64-musl4.50.2indirecta
npm@rollup/rollup-linux-s390x-gnu4.50.2indirecta
npm@rollup/rollup-linux-x64-gnu4.50.2indirecta
npm@rollup/rollup-linux-x64-musl4.50.2indirecta
npm@rollup/rollup-openharmony-arm644.50.2indirecta
npm@rollup/rollup-win32-arm64-msvc4.50.2indirecta
npm@rollup/rollup-win32-ia32-msvc4.50.2indirecta
npm@rollup/rollup-win32-x64-msvc4.50.2indirecta
npm@scure/bip321.7.0indirecta
npm@scure/bip322.0.1indirecta
npm@scure/bip392.0.1indirecta
npm@shikijs/engine-oniguruma3.12.2indirecta
npm@shikijs/langs3.12.2indirecta
npm@shikijs/themes3.12.2indirecta
npm@shikijs/types3.12.2indirecta
npm@shikijs/vscode-textmate10.0.2indirecta
npm@sindresorhus/is4.6.0indirecta
npm@types/chai5.2.2indirecta
npm@types/chai5.2.3indirecta
npm@types/chai^5.0.1indirecta
npm@types/chai^5.2.3indirecta
npm@types/chai-as-promised8.0.2indirecta
npm@types/chai-as-promised^8.0.1indirecta
npm@types/deep-eql4.0.2indirecta
npm@types/estree1.0.8indirecta
npm@types/hast3.0.4indirecta
npm@types/istanbul-lib-coverage2.0.6indirecta
npm@types/json-schema7.0.15indirecta
npm@types/mocha10.0.10indirecta
npm@types/mocha^10.0.10indirecta
npm@types/mocha^10.0.9indirecta
npm@types/node12.20.55indirecta
npm@types/node22.18.4indirecta
npm@types/node25.5.0indirecta
npm@types/node^22.13.4indirecta
npm@types/node^22.13.8indirecta
npm@types/node^22.18.4indirecta
npm@types/node^22.5.4indirecta
npm@types/node^25.5.0indirecta
npm@types/unist3.0.3indirecta
npm@typescript-eslint/eslint-plugin8.44.0indirecta
npm@typescript-eslint/eslint-plugin8.58.0indirecta
npm@typescript-eslint/eslint-plugin^8.24.1indirecta
npm@typescript-eslint/eslint-plugin^8.25.0indirecta
npm@typescript-eslint/eslint-plugin^8.5.0indirecta
npm@typescript-eslint/eslint-plugin^8.58.0indirecta
npm@typescript-eslint/parser8.44.0indirecta
npm@typescript-eslint/parser8.58.0indirecta
npm@typescript-eslint/parser^8.24.1indirecta
npm@typescript-eslint/parser^8.25.0indirecta
npm@typescript-eslint/parser^8.5.0indirecta
npm@typescript-eslint/parser^8.58.0indirecta
npm@typescript-eslint/project-service8.44.0indirecta
npm@typescript-eslint/project-service8.58.0indirecta
npm@typescript-eslint/scope-manager8.44.0indirecta
npm@typescript-eslint/scope-manager8.58.0indirecta
npm@typescript-eslint/tsconfig-utils8.44.0indirecta
npm@typescript-eslint/tsconfig-utils8.58.0indirecta
npm@typescript-eslint/type-utils8.44.0indirecta
npm@typescript-eslint/type-utils8.58.0indirecta
npm@typescript-eslint/types8.44.0indirecta
npm@typescript-eslint/types8.58.0indirecta
npm@typescript-eslint/typescript-estree8.44.0indirecta
npm@typescript-eslint/typescript-estree8.58.0indirecta
npm@typescript-eslint/utils8.44.0indirecta
npm@typescript-eslint/utils8.58.0indirecta
npm@typescript-eslint/visitor-keys8.44.0indirecta
npm@typescript-eslint/visitor-keys8.58.0indirecta
npm@web5/common1.1.0indirecta
npm@web5/crypto1.0.6indirecta
npmabort-controller3.0.0indirecta
npmabstract-level1.0.4indirecta
npmacorn8.16.0indirecta
npmacorn-jsx5.3.2indirecta
npmajv6.12.6indirecta
npmajv6.14.0indirecta
npmansi-colors4.1.3indirecta
npmansi-escapes6.2.1indirecta
npmansi-regex5.0.1indirecta
npmansi-regex6.2.2indirecta
npmansi-styles4.3.0indirecta
npmansi-styles6.2.3indirecta
npmany-promise1.3.0indirecta
npmanymatch3.1.3indirecta
npmargparse1.0.10indirecta
npmargparse2.0.1indirecta
npmarray-union2.1.0indirecta
npmasn1.js4.10.1indirecta
npmassert2.1.0indirecta
npmassertion-error2.0.1indirecta
npmaudit-ci7.1.0indirecta
npmavailable-typed-arrays1.0.7indirecta
npmbalanced-match1.0.2indirecta
npmbalanced-match4.0.4indirecta
npmbase64-arraybuffer1.0.2indirecta
npmbase64-js1.5.1indirecta
npmbencode4.0.0indirecta
npmbetter-path-resolve1.0.0indirecta
npmbinary-extensions2.3.0indirecta
npmbn.js4.12.2indirecta
npmbn.js5.2.2indirecta
npmbrace-expansion1.1.12indirecta
npmbrace-expansion1.1.13indirecta
npmbrace-expansion2.0.2indirecta
npmbrace-expansion5.0.5indirecta
npmbraces3.0.3indirecta
npmbrorand1.1.0indirecta
npmbrowser-level1.0.1indirecta
npmbrowser-resolve2.0.0indirecta
npmbrowser-stdout1.3.1indirecta
npmbrowserify-aes1.2.0indirecta
npmbrowserify-cipher1.0.1indirecta
npmbrowserify-des1.0.2indirecta
npmbrowserify-rsa4.1.1indirecta
npmbrowserify-sign4.2.3indirecta
npmbrowserify-zlib0.2.0indirecta
npmbuffer5.7.1indirecta
npmbuffer6.0.3indirecta
npmbuffer-xor1.0.3indirecta
npmbuiltin-status-codes3.0.0indirecta
npmbundle-require5.1.0indirecta
npmc810.1.3indirecta
npmc8^10.1.2indirecta
npmc8^10.1.3indirecta
npmcac6.7.14indirecta
npmcall-bind1.0.8indirecta
npmcall-bind-apply-helpers1.0.2indirecta
npmcall-bound1.0.4indirecta
npmcallsites3.1.0indirecta
npmcamelcase6.3.0indirecta
npmcanonicalize2.1.0indirecta
npmcatering2.1.1indirecta
npmchai5.3.3indirecta
npmchai^5.1.2indirecta
npmchai^5.2.0indirecta
npmchai^5.3.3indirecta
npmchai-as-promised8.0.2indirecta
npmchai-as-promised^8.0.0indirecta
npmchai-as-promised^8.0.1indirecta
npmchalk4.1.2indirecta
npmchar-regex1.0.2indirecta
npmchardet2.1.0indirecta
npmcheck-error2.1.1indirecta
npmchokidar3.6.0indirecta
npmchokidar4.0.3indirecta
npmci-info3.9.0indirecta
npmcipher-base1.0.6indirecta
npmclassic-level1.4.1indirecta
npmcliui7.0.4indirecta
npmcliui8.0.1indirecta
npmcolor-convert2.0.1indirecta
npmcolor-name1.1.4indirecta
npmcolors1.4.0indirecta
npmconcat-map0.0.1indirecta
npmconfbox0.1.8indirecta
npmconsola3.4.2indirecta
npmconsole-browserify1.2.0indirecta
npmconstants-browserify1.0.0indirecta
npmconvert-source-map2.0.0indirecta
npmcore-util-is1.0.3indirecta
npmcreate-ecdh4.0.4indirecta
npmcreate-hash1.1.3indirecta
npmcreate-hash1.2.0indirecta
npmcreate-hmac1.1.7indirecta
npmcreate-require1.1.1indirecta
npmcross-spawn7.0.6indirecta
npmcrypto-browserify3.12.1indirecta
npmdataloader1.4.0indirecta
npmdebug4.4.3indirecta
npmdecamelize4.0.0indirecta
npmdeep-eql5.0.2indirecta
npmdeep-is0.1.4indirecta
npmdefine-data-property1.1.4indirecta
npmdefine-properties1.2.1indirecta
npmdes.js1.1.0indirecta
npmdetect-indent6.1.0indirecta
npmdiff5.2.0indirecta
npmdiff7.0.0indirecta
npmdiffie-hellman5.0.3indirecta
npmdir-glob3.0.1indirecta
npmdomain-browser4.22.0indirecta
npmdotenv8.6.0indirecta
npmdunder-proto1.0.1indirecta
npmduplexer0.1.2indirecta
npmeastasianwidth0.2.0indirecta
npmelliptic6.6.1indirecta
npmemoji-regex8.0.0indirecta
npmemoji-regex9.2.2indirecta
npmemojilib2.4.0indirecta
npmenquirer2.4.1indirecta
npmentities4.5.0indirecta
npmes-define-property1.0.1indirecta
npmes-errors1.3.0indirecta
npmes-object-atoms1.1.1indirecta
npmesbuild0.24.2indirecta
npmesbuild0.25.9indirecta
npmesbuild0.27.0indirecta
npmesbuild^0.24.2indirecta
npmesbuild^0.25.0indirecta
npmescalade3.2.0indirecta
npmescape-string-regexp4.0.0indirecta
npmeslint9.35.0indirecta
npmeslint9.39.4indirecta
npmeslint^9.14.0indirecta
npmeslint^9.20.1indirecta
npmeslint^9.21.0indirecta
npmeslint^9.39.4indirecta
npmeslint-plugin-mocha10.5.0indirecta
npmeslint-plugin-mocha^10.5.0indirecta
npmeslint-scope8.4.0indirecta
npmeslint-utils3.0.0indirecta
npmeslint-visitor-keys2.1.0indirecta
npmeslint-visitor-keys3.4.3indirecta
npmeslint-visitor-keys4.2.1indirecta
npmeslint-visitor-keys5.0.1indirecta
npmespree10.4.0indirecta
npmesprima4.0.1indirecta
npmesquery1.6.0indirecta
npmesquery1.7.0indirecta
npmesrecurse4.3.0indirecta
npmestraverse5.3.0indirecta
npmesutils2.0.3indirecta
npmevent-stream4.0.1indirecta
npmevent-target-shim5.0.1indirecta
npmevents3.3.0indirecta
npmevp_bytestokey1.0.3indirecta
npmextendable-error0.1.7indirecta
npmfast-deep-equal3.1.3indirecta
npmfast-glob3.3.3indirecta
npmfast-json-stable-stringify2.1.0indirecta
npmfast-levenshtein2.0.6indirecta
npmfastq1.19.1indirecta
npmfdir6.5.0indirecta
npmfile-entry-cache8.0.0indirecta
npmfill-range7.1.1indirecta
npmfind-up4.1.0indirecta
npmfind-up5.0.0indirecta
npmfix-dts-default-cjs-exports1.0.1indirecta
npmflat5.0.2indirecta
npmflat-cache4.0.1indirecta
npmflatted3.3.3indirecta
npmfor-each0.3.5indirecta
npmforeground-child3.3.1indirecta
npmfrom0.1.7indirecta
npmfs-extra7.0.1indirecta
npmfs-extra8.1.0indirecta
npmfs.realpath1.0.0indirecta
npmfsevents2.3.3indirecta
npmfunction-bind1.1.2indirecta
npmgar1.0.4indirecta
npmget-caller-file2.0.5indirecta
npmget-folder-size4.0.0indirecta
npmget-intrinsic1.3.0indirecta
npmget-proto1.0.1indirecta
npmglob10.4.5indirecta
npmglob11.0.3indirecta
npmglob13.0.6indirecta
npmglob8.1.0indirecta
npmglob-parent5.1.2indirecta
npmglob-parent6.0.2indirecta
npmglobals13.24.0indirecta
npmglobals14.0.0indirecta
npmglobals15.15.0indirecta
npmglobals16.4.0indirecta
npmglobals^15.11.0indirecta
npmglobals^15.15.0indirecta
npmglobals^16.0.0indirecta
npmglobby11.1.0indirecta
npmgopd1.2.0indirecta
npmgraceful-fs4.2.11indirecta
npmgraphemer1.4.0indirecta
npmhas-flag4.0.0indirecta
npmhas-property-descriptors1.0.2indirecta
npmhas-symbols1.1.0indirecta
npmhas-tostringtag1.0.2indirecta
npmhash-base2.0.2indirecta
npmhash-base3.0.5indirecta
npmhash.js1.1.7indirecta
npmhasown2.0.2indirecta
npmhe1.2.0indirecta
npmhmac-drbg1.0.1indirecta
npmhtml-escaper2.0.2indirecta
npmhttps-browserify1.0.0indirecta
npmhuman-id4.1.1indirecta
npmiconv-lite0.7.0indirecta
npmieee7541.2.1indirecta
npmignore5.3.2indirecta
npmignore7.0.5indirecta
npmimport-fresh3.3.1indirecta
npmimurmurhash0.1.4indirecta
npminflight1.0.6indirecta
npminherits2.0.4indirecta
npmis-arguments1.2.0indirecta
npmis-binary-path2.1.0indirecta
npmis-buffer2.0.5indirecta
npmis-callable1.2.7indirecta
npmis-core-module2.16.1indirecta
npmis-extglob2.1.1indirecta
npmis-fullwidth-code-point3.0.0indirecta
npmis-generator-function1.1.0indirecta
npmis-glob4.0.3indirecta
npmis-nan1.3.2indirecta
npmis-number7.0.0indirecta
npmis-plain-obj2.1.0indirecta
npmis-regex1.2.1indirecta
npmis-subdir1.2.0indirecta
npmis-typed-array1.1.15indirecta
npmis-unicode-supported0.1.0indirecta
npmis-windows1.0.2indirecta
npmisarray1.0.0indirecta
npmisarray2.0.5indirecta
npmisexe2.0.0indirecta
npmisomorphic-timers-promises1.0.1indirecta
npmistanbul-lib-coverage3.2.2indirecta
npmistanbul-lib-report3.0.1indirecta
npmistanbul-reports3.2.0indirecta
npmjackspeak3.4.3indirecta
npmjackspeak4.1.1indirecta
npmjju1.4.0indirecta
npmjoycon3.1.1indirecta
npmjs-yaml3.14.2indirecta
npmjs-yaml4.1.0indirecta
npmjs-yaml4.1.1indirecta
npmjson-buffer3.0.1indirecta
npmjson-schema-traverse0.4.1indirecta
npmjson-stable-stringify-without-jsonify1.0.1indirecta
npmjsonfile4.0.0indirecta
npmjsonparse1.3.1indirecta
npmjsonstream-next3.0.0indirecta
npmkeyv4.5.4indirecta
npmlevel8.0.1indirecta
npmlevel-supports4.0.1indirecta
npmlevel-transcoder1.0.1indirecta
npmlevn0.4.1indirecta
npmlilconfig3.1.3indirecta
npmlines-and-columns1.2.4indirecta
npmlinkify-it5.0.0indirecta
npmload-tsconfig0.2.5indirecta
npmlocate-path5.0.0indirecta
npmlocate-path6.0.0indirecta
npmlodash.merge4.6.2indirecta
npmlodash.startcase4.4.0indirecta
npmlog-symbols4.1.0indirecta
npmloupe3.2.1indirecta
npmlru-cache10.4.3indirecta
npmlru-cache11.2.1indirecta
npmlru-cache11.2.7indirecta
npmlunr2.3.9indirecta
npmmagic-string0.30.19indirecta
npmmake-dir4.0.0indirecta
npmmap-stream0.0.7indirecta
npmmarkdown-it14.1.0indirecta
npmmath-intrinsics1.1.0indirecta
npmmd5.js1.3.5indirecta
npmmdurl2.0.0indirecta
npmmerge21.4.1indirecta
npmmicro-packed0.7.3indirecta
npmmicromatch4.0.8indirecta
npmmiller-rabin4.0.1indirecta
npmminimalistic-assert1.0.1indirecta
npmminimalistic-crypto-utils1.0.1indirecta
npmminimatch10.2.5indirecta
npmminimatch3.1.2indirecta
npmminimatch3.1.5indirecta
npmminimatch5.1.6indirecta
npmminimatch9.0.5indirecta
npmminipass7.1.2indirecta
npmminipass7.1.3indirecta
npmmlly1.8.0indirecta
npmmocha10.8.2indirecta
npmmocha11.7.2indirecta
npmmocha^10.8.2indirecta
npmmocha^11.1.0indirecta
npmmodule-error1.0.2indirecta
npmmri1.2.0indirecta
npmms2.1.3indirecta
npmmz2.7.0indirecta
npmnapi-macros2.2.2indirecta
npmnatural-compare1.4.0indirecta
npmnode-emoji2.2.0indirecta
npmnode-fetch2.7.0indirecta
npmnode-gyp-build4.8.4indirecta
npmnode-stdlib-browser1.3.1indirecta
npmnode-stdlib-browser^1.3.1indirecta
npmnormalize-path3.0.0indirecta
npmnostr-wasm0.1.0indirecta
npmnpkill0.12.2indirecta
npmobject-assign4.1.1indirecta
npmobject-inspect1.13.4indirecta
npmobject-is1.1.6indirecta
npmobject-keys1.1.1indirecta
npmobject.assign4.1.7indirecta
npmonce1.4.0indirecta
npmopen-file-explorer1.0.2indirecta
npmoptionator0.9.4indirecta
npmos-browserify0.3.0indirecta
npmoutdent0.5.0indirecta
npmp-filter2.1.0indirecta
npmp-limit2.3.0indirecta
npmp-limit3.1.0indirecta
npmp-locate4.1.0indirecta
npmp-locate5.0.0indirecta
npmp-map2.1.0indirecta
npmp-try2.2.0indirecta
npmpackage-json-from-dist1.0.1indirecta
npmpackage-manager-detector0.2.11indirecta
npmpako1.0.11indirecta
npmparent-module1.0.1indirecta
npmparse-asn15.1.7indirecta
npmpath-browserify1.0.1indirecta
npmpath-exists4.0.0indirecta
npmpath-key3.1.1indirecta
npmpath-parse1.0.7indirecta
npmpath-scurry1.11.1indirecta
npmpath-scurry2.0.0indirecta
npmpath-scurry2.0.2indirecta
npmpath-type4.0.0indirecta
npmpathe2.0.3indirecta
npmpathval2.0.1indirecta
npmpause-stream0.0.11indirecta
npmpbkdf23.1.3indirecta
npmpicocolors1.1.1indirecta
npmpicomatch2.3.1indirecta
npmpicomatch4.0.3indirecta
npmpify4.0.1indirecta
npmpirates4.0.7indirecta
npmpkg-dir5.0.0indirecta
npmpkg-types1.3.1indirecta
npmpossible-typed-array-names1.1.0indirecta
npmpostcss-load-config6.0.1indirecta
npmprelude-ls1.2.1indirecta
npmprettier2.8.8indirecta
npmprocess0.11.10indirecta
npmprocess-nextick-args2.0.1indirecta
npmpublic-encrypt4.0.3indirecta
npmpunycode1.4.1indirecta
npmpunycode2.3.1indirecta
npmpunycode.js2.3.1indirecta
npmqs6.14.0indirecta
npmquansync0.2.11indirecta
npmquerystring-es30.2.1indirecta
npmqueue-microtask1.2.3indirecta
npmrambda7.5.0indirecta
npmrandombytes2.1.0indirecta
npmrandomfill1.0.4indirecta
npmread-yaml-file1.1.0indirecta
npmreadable-stream2.3.8indirecta
npmreadable-stream3.6.2indirecta
npmreadable-stream4.5.2indirecta
npmreaddirp3.6.0indirecta
npmreaddirp4.1.2indirecta
npmreadline-transform1.0.0indirecta
npmrequire-directory2.1.1indirecta
npmresolve1.22.10indirecta
npmresolve-from4.0.0indirecta
npmresolve-from5.0.0indirecta
npmreusify1.1.0indirecta
npmrimraf6.0.1indirecta
npmrimraf6.1.3indirecta
npmrimraf^6.0.1indirecta
npmrimraf^6.1.3indirecta
npmripemd1602.0.1indirecta
npmripemd1602.0.2indirecta
npmrollup4.50.2indirecta
npmrun-parallel1.2.0indirecta
npmrun-parallel-limit1.1.0indirecta
npmrxjs7.8.2indirecta
npmsafe-buffer5.1.2indirecta
npmsafe-buffer5.2.1indirecta
npmsafe-regex-test1.1.0indirecta
npmsafer-buffer2.1.2indirecta
npmsemver7.7.2indirecta
npmsemver7.7.4indirecta
npmserialize-javascript6.0.2indirecta
npmset-function-length1.2.2indirecta
npmsetimmediate1.0.5indirecta
npmsha.js2.4.12indirecta
npmshebang-command2.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
npmsignal-exit4.1.0indirecta
npmskin-tone2.0.0indirecta
npmslash3.0.0indirecta
npmsource-map0.7.6indirecta
npmspawndamnit3.0.1indirecta
npmsplit1.0.1indirecta
npmsprintf-js1.0.3indirecta
npmstream-browserify3.0.0indirecta
npmstream-combiner0.2.2indirecta
npmstream-http3.2.0indirecta
npmstring-width4.2.3indirecta
npmstring-width5.1.2indirecta
npmstring_decoder1.1.1indirecta
npmstring_decoder1.3.0indirecta
npmstrip-ansi6.0.1indirecta
npmstrip-ansi7.1.2indirecta
npmstrip-bom3.0.0indirecta
npmstrip-json-comments3.1.1indirecta
npmsucrase3.35.1indirecta
npmsupports-color7.2.0indirecta
npmsupports-color8.1.1indirecta
npmsupports-preserve-symlinks-flag1.0.0indirecta
npmterm-size2.2.1indirecta
npmtest-exclude7.0.1indirecta
npmthenify3.3.1indirecta
npmthenify-all1.6.0indirecta
npmthrough2.3.8indirecta
npmthrough24.0.2indirecta
npmtimers-browserify2.0.12indirecta
npmtinyexec0.3.2indirecta
npmtinyglobby0.2.15indirecta
npmto-buffer1.2.1indirecta
npmto-regex-range5.0.1indirecta
npmtr460.0.3indirecta
npmtree-kill1.2.2indirecta
npmts-api-utils2.1.0indirecta
npmts-api-utils2.5.0indirecta
npmts-interface-checker0.1.13indirecta
npmtslib2.8.1indirecta
npmtsup8.5.1indirecta
npmtsup^8.5.1indirecta
npmtty-browserify0.0.1indirecta
npmtype-check0.4.0indirecta
npmtype-fest0.20.2indirecta
npmtyped-array-buffer1.0.3indirecta
npmtypedoc0.28.13indirecta
npmtypescript5.7.3indirecta
npmtypescript5.9.3indirecta
npmtypescript^5.6.2indirecta
npmtypescript^5.7.3indirecta
npmtypescript^5.9.3indirecta
npmtypescript~5.7.3indirecta
npmuc.micro2.1.0indirecta
npmufo1.6.1indirecta
npmuint8-util2.2.5indirecta
npmundici-types6.21.0indirecta
npmundici-types7.18.2indirecta
npmunicode-emoji-modifier-base1.0.0indirecta
npmuniversalify0.1.2indirecta
npmuri-js4.4.1indirecta
npmurl0.11.4indirecta
npmutf8-codec1.0.0indirecta
npmutil0.12.5indirecta
npmutil-deprecate1.0.2indirecta
npmv8-to-istanbul9.3.0indirecta
npmvm-browserify1.1.2indirecta
npmwebidl-conversions3.0.1indirecta
npmwhatwg-url5.0.0indirecta
npmwhich2.0.2indirecta
npmwhich-typed-array1.1.19indirecta
npmword-wrap1.2.5indirecta
npmworkerpool6.5.1indirecta
npmworkerpool9.3.4indirecta
npmwrap-ansi7.0.0indirecta
npmwrap-ansi8.1.0indirecta
npmwrappy1.0.2indirecta
npmxtend4.0.2indirecta
npmy18n5.0.8indirecta
npmyaml2.8.3indirecta
npmyargs16.2.0indirecta
npmyargs17.7.2indirecta
npmyargs-parser20.2.9indirecta
npmyargs-parser21.1.1indirecta
npmyargs-unparser2.0.0indirecta
npmyocto-queue0.1.0indirecta
Avisos de dependencias 27

Este repositorio no publica ningún paquete que el índice resuelva, así que se evaluó su propio grafo de dependencias — 699 paquetes, que incluyen también fijaciones de desarrollo y prueba que nunca se distribuyen: 27 tienen avisos conocidos, de los cuales 0 son directas. 67 no pudieron evaluarse: sin versión resuelta, ecosistema no admitido, o fuera de la lista de paquetes informada.

PaqueteVersiónRelaciónGravedadAvisosCorregido en
flatted3.3.3indirectacrítica23.4.2
rollup4.50.2indirectacrítica14.59.0
brace-expansion1.1.12indirectaalta25.0.7
brace-expansion1.1.13indirectaalta15.0.7
brace-expansion2.0.2indirectaalta25.0.7
brace-expansion5.0.5indirectaalta25.0.7
elliptic6.6.1indirectaalta1
glob10.4.5indirectaalta111.1.0
glob11.0.3indirectaalta111.1.0
js-yaml3.14.2indirectaalta24.3.0
js-yaml4.1.0indirectaalta34.3.0
js-yaml4.1.1indirectaalta24.3.0
linkify-it5.0.0indirectaalta25.0.2
minimatch3.1.2indirectaalta310.2.3
minimatch5.1.6indirectaalta310.2.3
minimatch9.0.5indirectaalta310.2.3
picomatch2.3.1indirectaalta24.0.4
picomatch4.0.3indirectaalta24.0.4
serialize-javascript6.0.2indirectaalta27.0.5
ajv6.12.6indirectamoderada18.18.0
bn.js4.12.2indirectamoderada15.2.3
bn.js5.2.2indirectamoderada15.2.3
diff5.2.0indirectamoderada18.0.3
diff7.0.0indirectamoderada18.0.3
esbuild0.24.2indirectamoderada10.25.0
markdown-it14.1.0indirectamoderada214.2.0
qs6.14.0indirectamoderada36.15.2

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

Informe JSON sin procesar legible por máquina
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 7423,
      "has_wiki": true,
      "homepage": null,
      "languages": {
        "Shell": 5494,
        "JavaScript": 21970,
        "TypeScript": 2402696
      },
      "pushed_at": "2026-07-17T17:36:36Z",
      "created_at": "2025-04-04T20:58:27Z",
      "owner_type": "User",
      "updated_at": "2026-07-17T17:37:15Z",
      "description": null,
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MPL-2.0",
      "default_branch": "main",
      "license_spdx_raw": "MPL-2.0",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript"
      ]
    },
    "owner": {
      "blog": "https://contract.design/",
      "name": null,
      "type": "User",
      "login": "dcdpr",
      "company": "Digital Contract Design, LLC",
      "location": null,
      "followers": 17,
      "avatar_url": "https://avatars.githubusercontent.com/u/28972357?v=4",
      "created_at": "2017-05-26T03:57:50Z",
      "is_verified": null,
      "public_repos": 31,
      "account_age_days": 3344
    },
    "license": {
      "state": "standard",
      "spdx_id": "MPL-2.0",
      "raw_spdx": "MPL-2.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [],
      "recent_commits": [
        {
          "oid": "584a0d0702d46157b650ec579b4e4557da0ef23a",
          "body": "* chore(release): common 9.2.0, method 0.55.0, aggregation 0.5.0, api 0.18.0, cli 0.18.1\n* ci(lint): ban bare built-in errors in six core packages src\n* fix(method): appendix missing didDocument throws DidDocumentError\n* fix(api): deactivate passes NotImplementedError type positionally\n* feat(aggreg\n[…]\nhort-fail, inbox-capacity, abort errors\n* feat(common): throw MethodError w/ type codes; add NotImplementedError to DidMethodError\n* docs(adr): 085 typed-error policy; smt exempt; api/bitcoin/cli next",
          "is_bot": false,
          "headline": "typed errors across core packages, enforced by lint",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-17T17:36:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7db5ca3596ed576a872b65b50c08b3489ec2db32",
          "body": "* ci: seed ci-badges from any branch; main republishes only on change\n* docs(adr): 084 publish policy amendments\n* fix(scripts): badge textLength = measured Verdana width, 5px padding",
          "is_bot": false,
          "headline": "fix coverage badge glyph spacing + smarter badge publishing",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-17T15:10:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "363fe78466272b4f526db709ead8aabffff0660c",
          "body": "* docs(adr): 084 CI-published coverage badge, supersedes 064 in part\n* feat(method/lib): wallet send; wallet fund addr; wallet list Network type\n* ci: publish badge/report to ci-badges branch on every main run",
          "is_bot": false,
          "headline": "publish coverage badge from CI + generic dev-wallet send",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-17T14:39:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6828da395eeb5a5626d6d787db39b8538373d662",
          "body": "* test(api): lib/e2e-full-lifecycle.ts create/update/deactivate e2e\n* docs(api): DEMO.md walkthrough; README runtime note + DEMO link",
          "is_bot": false,
          "headline": "add an api full-lifecycle demo doc + runnable e2e script",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-15T17:37:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1473ece7ab18a7eca759707a8689223a8b240aa4",
          "body": "* chore(release): bump api 0.17.0, cli 0.18.0\n* test(cli,api): quickstart matrix, create/update hint gating, network presets\n* feat(api): NETWORK_PRESETS + explorerTxUrl/explorerAddressUrl/faucetUrl\n* feat(cli): quickstart command, init -n, create funding hint, update/deactivate link\n* docs(adr): 082 network presets, 083 quickstart",
          "is_bot": false,
          "headline": "add quickstart, per-network presets, and faucet/explorer link hints",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-15T15:24:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "69a785a8b18d89fbd6628ce984dc8d95c43e8b79",
          "body": "* docs(adr): 081 session unlock agent\n* feat(cli): keystore unlock/lock; TTL passphrase cache; mainnet gate\n* test(cli): session state machine, unlock/lock, passphrase, mainnet gate\n* chore(release): bump cli 0.17.0",
          "is_bot": false,
          "headline": "cli keystore session unlock agent",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-14T20:46:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5fe1a231ae902af8671966f225a0da46ef19a78c",
          "body": "* chore(release): bump cli 0.16.0\n* test(cli): paths, keystore lifecycle, state cmds, mainnet refuse, multibyte backspace, malform-conf\n* feat(cli): unify home dir; opt env/flag overrides; keystore command; confirmed+verified keystore passphrase\n* docs(adr): 079 state dir + 080 keystore lifecycle",
          "is_bot": false,
          "headline": "single-home CLI state + keystore lifecycle with dev keystores",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-09T13:23:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "35ad761762be269b71f4dc275995a88214efe4fe",
          "body": "* chore(release): bump cli 0.15.0, bitcoin 0.9.0, api 0.16.1\n* test(cli,bitcoin): +110 cli tests, RPC wallet/header tests\n* feat(bitcoin): wire RpcConfig wallet+headers, drop allowDefaultWallet; profile identity (ADR 078)\n* feat(cli): config correctness, I/O knobs, introspection, secret handling (ADRs 074-077)\n* docs(adr): 074-078 Accepted; cli README config surface",
          "is_bot": false,
          "headline": "user-config CLI BTC/CAS I/O: correctness, introspection, secrets",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-08T15:44:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9a999d6cf84896987b6b56f88bae3d9af4152d86",
          "body": "* chore(release): bump api 0.16.0, cli 0.14.0\n* test(api,cli): opt-in policy grid, rpcUrl wiring, flag validation\n* fix(api): publishToCas defaults 'never'; 'auto' never blocks\n* feat(cli): --cas-rpc-url + --publish-to-cas (default 'never')\n* docs(adr): add ADR 072 (cli writable-CAS) + 073 (CAS opt-in)",
          "is_bot": false,
          "headline": "make CAS publication opt-in; add cli writable-CAS config",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-07T20:36:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7c5e2260dfc8f37b743dd2ae58af71414246e2e7",
          "body": "* chore(release): bump method 0.54.0, api 0.15.0, cli 0.13.0\n* test(method,api,cli): broadcast shapes, CAS ordering + pre-spend aborts, policy grid, roundtrips\n* feat(method): broadcastSignal returns BroadcastResult; casPublish pre tx broadcast; Updater.announce options + result\n* feat(cli): update/\n[…]\ni): publishToCas + CasExecutor/CasApi + enriched DidUpdateResult + broadcastOptions passthrough\n* docs(adr): add ADR 070 (BroadcastResult + CAS-first ordering) and ADR 071 (api CAS publication policy)",
          "is_bot": false,
          "headline": "wire CAS-first publication through the update path",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-07T17:42:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3753705e87a100459bd8bd473f9a61334d84a85c",
          "body": "* chore(release): bump api 0.14.0, cli 0.12.18\n* feat(api): structural BlockstoreCasExecutor + IpfsRpcCasExecutor w/ local CID verification\n* test(api): cas-api.spec.ts unit suite (executors, config priority, timeout)\n* chore(ci): audit gate critical -> high, prod-scoped; drop helia allowlist entry\n* docs(adr): add ADR 069 (fetch-based CAS executors, drop helia)",
          "is_bot": false,
          "headline": "drop helia for fetch-based CAS executors",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-07T15:55:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0337774dc4f7e8ec2d62eacdcb2799f11e189be5",
          "body": "* chore(release): bump method 0.53.0, api 0.13.12, cli 0.12.17\n* test(method): versionTime x dupe traces, targetVersionId guards, provide() boundary rejection\n* fix(method): confirm dupes before versionTime early-return, guard dupe-conf history\n* docs(adr): add ADR 068 (versionTime dupe eval, guarded dupe conf)",
          "is_bot": false,
          "headline": "resolve versionTime correctly w/ dupe updates histories",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-06T21:06:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "73ad8345c52d8282d5744c739c0f4ad7582e4791",
          "body": "* chore(release): bump method 0.52.0, api 0.13.11, cli 0.12.16\n* test(method): duplicate traces, cross-round + multi-beacon duplicates, false-duplicate guard\n* fix(method): confirm duplicate updates sans-version inflation + update-hash history corruption\n* docs(adr): add ADR 067 (resolver duplicate confirmation)",
          "is_bot": false,
          "headline": "resolve DIDs with duplicate update history",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-06T16:17:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a80fa6a804e8e391e01eb4b2b17c671707877ea9",
          "body": null,
          "is_bot": false,
          "headline": "test(method): cover Resolver.provide() idempotency and dedup",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-02T23:17:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e9f19a285a695c0e78e5c831f93be126b9ed116e",
          "body": "* test(aggregation): demonstrate x1 over the nostr e2e\n* docs(adr): correct ADR 066 nostr-symmetry claim",
          "is_bot": false,
          "headline": "cover x1 over the nostr transport e2e and correct ADR 066",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-02T22:20:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7cafa4a16cf85a4bab4e8caa366e70b90b5048b6",
          "body": "* chore(release): method 0.51.0, aggregation 0.4.0, api 0.13.10, cli 0.12.15\n* test: x1 sender-resolver unit tests + HTTP bootstrap/binding/DoS + full mixed k1+x1 cohort\n* feat(method): genesis-aware resolveBtcr2SenderPk + getAggregationCommunicationKey\n* feat(aggregation): genesis on opt-in + bootstrap + maxBodyBytes\n* docs(adr): add ADR 066 (trustless x1 transport authentication)",
          "is_bot": false,
          "headline": "authenticate x1 DIDs on the aggregation HTTP transport",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-02T21:34:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8086b7caef7ce8ae2fc843a0b6ae614b3b12ceee",
          "body": "* chore(deps): prune extraneous deps and demote lib-only deps to devDependencies\n* chore(build): minify browser bundles (~59% smaller)\n* ci: add FOSS in-repo coverage reporting and a dependency-audit gate\n* chore: adopt changesets for per-package changelogs",
          "is_bot": false,
          "headline": "prune deps, minify bundles, add coverage/audit CI and changesets",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-02T17:01:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b8b258809c4959942c846d2d3c561166407d087",
          "body": "* docs: sync package READMEs and CLI demo\n* chore: prune unused deps and fix cli config/error-string vestiges",
          "is_bot": false,
          "headline": "clean up monorepo docs and dependencies",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-01T21:10:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "84039a84397aad925fc8013ea0a7f7dce87bddb7",
          "body": "* chore(release): bump method 0.50.0, api 0.13.9, cli 0.12.14\n* test(method): cover selectSpendableUtxo confirmation/dust filters, ordering, and error cases\n* fix(method): select confirmed, non-dust beacon UTXOs deepest-first and deterministically\n* docs(adr): add ADR 063 (beacon UTXO selection hardening)",
          "is_bot": false,
          "headline": "harden beacon UTXO selection to confirmed, non-dust, deepest-first",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-07-01T14:47:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3709d21b3bd7af15b763b1d9433378d6b8aa461f",
          "body": "* chore(release): bump method 0.49.0, api 0.13.8, cli 0.12.13\n* fix(method): harden Identifier encode/decode and reject forged btcr2_version\n* docs(adr): add ADR 062 (identifier encoding/decoding hardening)",
          "is_bot": false,
          "headline": "harden did:btcr2 identifier encode/decode and reject forged versions",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-30T20:57:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1547545c91a7096cde9602ddd9df2bb955d7203c",
          "body": "* chore(release): bump method 0.48.0, api 0.13.7, cli 0.12.12\n* test(method): cover resolver versionId/versionTime/deactivated early-returns\n* refactor(method): remove the unused public Document wrapper class\n* docs(adr): add ADR 061 (remove dead Document class)",
          "is_bot": false,
          "headline": "remove unused Document class and add resolver early-return tests",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-30T16:19:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eda7dadf45b7f9d1692c90dcba337d29fe4fff15",
          "body": "* chore(release): bump method 0.47.0, api 0.13.6, cli 0.12.11\n* fix(method): persist version counter and update-hash history across resolver discovery rounds\n* docs(adr): add ADR 060 (cross-round resolver version continuity)",
          "is_bot": false,
          "headline": "resolve DID histories whose updates span beacon-discovery rounds",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-29T21:11:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d43b78ac54e2f5ceda80b1285f615cba246ee39d",
          "body": "* chore(release): bump method 0.46.0, api 0.13.5, cli 0.12.10\n* fix(method): default beacon discovery to unbounded with an opt-in maxDiscoveryRounds cap\n* docs(adr): add ADR 059 (unbounded beacon-discovery default, opt-in cap)",
          "is_bot": false,
          "headline": "stop fixed beacon-discovery round limit on resolve",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-29T18:19:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "070c8bf91a92ad35125c2e21044e0abeffac99e9",
          "body": "* chore(release): bump method 0.45.0, api 0.13.4, cli 0.12.9\n* refactor(method): remove dead Helia CAS path, drop helia deps, demote multiformats to dev\n* docs(adr): add ADR 058 (remove legacy Helia CAS read path, shrink bundle)",
          "is_bot": false,
          "headline": "remove legacy Helia and shrink method bundle",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-29T14:06:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9794acd10f2d277f54f25057b3a5ec9f2e1abb2f",
          "body": "* chore(release): bump method 0.44.0, api 0.13.3, cli 0.12.8\n* feat(method): extensible @context + uniform Multikey verification-method enforcement\n* docs(adr): add ADR 057 (extensible @context + uniform Multikey enforcement)",
          "is_bot": false,
          "headline": "harden DID document validation",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-28T22:23:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ea783e1cfb040f0c66a8da50ea7af3df7fb02525",
          "body": "* chore(release): bump method 0.43.0, api 0.13.2, cli 0.12.7\n* feat(method): strict OP_RETURN beacon signal parsing + CAS hash-chain regression\n* docs(adr): add ADR 056 (beacon signal-format validation + CAS hash chain)",
          "is_bot": false,
          "headline": "harden beacon signal discovery against malformed OP_RETURN outputs",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-28T14:40:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "04723d1820674dac72854cba2c78689ceec8713f",
          "body": "* chore(release): bump method 0.42.0, api 0.13.1, cli 0.12.6\n* feat(method): validate provide() payloads and bound resolver discovery rounds\n* docs(adr): add ADR 055 (harden the resolver provide() trust boundary)",
          "is_bot": false,
          "headline": "harden the resolver provide() trust boundary",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-27T19:37:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "954b38fbf694c5f9afa5459c6d6a872864fd9aa1",
          "body": "* chore(release): bump cryptosuite 9.0.0, method 0.41.0, api 0.13.0, aggregation 0.3.0, cli 0.12.5\n* refactor(cryptosuite)!: make the Data Integrity suite generic; move btcr2 update types to method\n* docs(adr): add ADR 054 (make the bip340-jcs-2025 cryptosuite method-agnostic)",
          "is_bot": false,
          "headline": "make the bip340-jcs-2025 cryptosuite method-agnostic",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-27T15:59:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "94f9211b11d2b890b5fa0ce61ad4b23702ae6ef7",
          "body": "* chore(release): bump bitcoin 0.8.0, api 0.12.0, method 0.40.2, cli 0.12.4\n* refactor(bitcoin)!: move per-network service defaults from the transport to the api SDK\n* docs(adr): add ADR 053 (Bitcoin service defaults belong to the SDK, not the transport)",
          "is_bot": false,
          "headline": "move Bitcoin service defaults from the transport to the SDK",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-27T14:32:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e77ec381f03afdf3e197d1f6b43bee97e448b418",
          "body": "* chore(release): bump cli 0.12.3\n* fix(cli): serialize keystore mutations behind a cross-process lock with reload-merge\n* docs(adr): add ADR 052 (cross-process file locking for the CLI keystore)",
          "is_bot": false,
          "headline": "lock the CLI keystore across processes to prevent lost-update key loss",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-27T13:41:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "27c3751cf4dbab0abe99405f94c303f97d401f53",
          "body": "* chore(release): bump method 0.40.1, api 0.11.1, cli 0.12.2\n* fix(method): verify the signing key matches the named verification method in Updater.sign\n* docs(adr): add ADR 051 (verify signing key matches verification method in Updater.sign)",
          "is_bot": false,
          "headline": "fail fast when a DID update is signed with a non-matching key",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-27T01:34:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "48c74992c4d7bbac1620a165a379859c8a4cc55f",
          "body": "* chore(release): bump aggregation 0.2.0, method 0.40.0, cli 0.12.1\n* fix(cli): resolve a key by exact name before fingerprint prefix\n* refactor(method): drop aggregation dep; relocate aggregation tests and demos to the package\n* refactor(aggregation): split into core/participant/service subpath entry points\n* docs(adr): add ADR 050 for aggregation with subpath exports core, participant, service",
          "is_bot": false,
          "headline": "split and decouple aggregation packages",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-26T20:34:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41009b1d0b25fda7f0945ab0a56beb570b7e4980",
          "body": "* chore(release): bump api 0.11.0, cli 0.12.0\n* feat(cli): default keypair generation and existing-key reuse in create\n* feat(api): re-export GenesisDocument for genesis-document construction\n* docs(adr): add ADR 049 (CLI default keypair generation in create)",
          "is_bot": false,
          "headline": "generate a keypair by default in the CLI create command",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-26T01:32:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e53a426ace3d261b49412a724c101f955529f05f",
          "body": "* chore(release): bump key-manager 0.7.0, api 0.10.0, cli 0.11.0\n* feat(cli): config, profile, and completion command groups\n* feat(cli): key command group and keystore-backed update/deactivate signing\n* feat(cli): keystore-aware api factory with lazy secret materialization\n* feat(key-manager): add \n[…]\nomic writes and lazy passphrase\n* feat(cli): add encrypted keystore secret envelope (argon2id + XChaCha20-Poly1305)\n* docs(adr): add ADR 047 (CLI encrypted keystore) and 048 (CLI config/profile model)",
          "is_bot": false,
          "headline": "add encrypted keystore + key mgmt, config, and signing",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-25T19:49:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8c3556f27a68c0d13d0b40fcadd14ccb841fe0a4",
          "body": "* chore(release): aggregation 0.1.0, bitcoin 0.7.0 and method 0.39.0\n* refactor: extract aggregation subsystem into @did-btcr2/aggregation\n* refactor: decouple aggregation from method ahead of package extraction\n* docs(adr): add ADR 046 extract aggregation package",
          "is_bot": false,
          "headline": "extract aggregation into @did-btcr2/aggregation",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-25T13:39:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3670ddcae44e68555618b700d0202f4994f2f47a",
          "body": "* chore(release): bump method 0.38.0\n* feat(method): caller-supplied beacon change address and analytical aggregation fees\n* docs(adr): add ADR 044 (beacon change output) and 045 (analytical-vsize aggregation fees)",
          "is_bot": false,
          "headline": "opt-in beacon change addresses and dynamic aggregation fees",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-24T19:01:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d272921b995b946010d567f4c7db8ba0715c9b46",
          "body": "… non-inclusion\n\n* feat(method)!: fault-tolerant aggregate beacon output with CSV recovery\n* docs(adr): add aggregate-beacon ADRs 041-042 and strip non-ASCII punctuation repo-wide\n* feat(method)!: cooperative non-inclusion data layer for aggregate beacons\n* feat(method)!: k-of-n script-path fallback for aggregate beacons\n* docs(adr): add ADR 043 k-of-n fallback signing protocol\n* chore(release): bump api 0.9.3, cli 0.10.3 for method 0.37.0 dep-uptake",
          "is_bot": false,
          "headline": "fault-tolerant aggregate beacons with k-of-n fallback and cooperative…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-24T15:32:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d3918357a9c6f7840982ca173403bc4c8da90c1f",
          "body": "* feat(method): multi-cohort aggregation service runner\n* docs(adr): add ADR 040 multi-cohort aggregation service runner\n* chore(release): bump method 0.36.1",
          "is_bot": false,
          "headline": "multiplex aggregation cohorts through single service runner",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-22T21:29:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5b149b5a29b9417908a802c64b000ae554c4be2e",
          "body": "* docs(adr): add ADR 039 cohort condition model (advertise-only economics)\n* feat(method)!: model the seven aggregation cohort conditions from the spec\n* docs(adr): add ADR 039 cohort condition model\n* chore(release): bump method 0.36.0, api 0.9.2, cli 0.10.2",
          "is_bot": false,
          "headline": "adopt the cohort-condition model for aggregate beacons",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-22T15:19:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6860cfff9969ba6e7a3f42a305329d35d9bcc50a",
          "body": "* docs: add ADR 038 MuSig2 key custody (bounded, zeroized secrets)\n* feat(method)!: bound and zeroize MuSig2 secrets at the participant boundary\n* fix(method): derive cohort beacon address for the cohort network, not always mainnet\n* chore(release): bump method 0.35.0, keypair 0.13.1, api 0.9.1, cli 0.10.1",
          "is_bot": false,
          "headline": "bound MuSig2 key custody and fix cohort beacon networks",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-21T16:56:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "946c709eb43aeb1b0ee6f711cf6cfc23ff3f6322",
          "body": "* docs: add ADR 037 two-axis beacon model and SinglePartyBeacon rename\n* refactor(beacon): rename Beacon to SinglePartyBeacon, cover BeaconFactory\n* feat(aggregation): InMemoryTransport + AggregationRunner.solo (cohort of one)\n* chore: bump method 0.34.0, api 0.9.0, cli 0.10.0",
          "is_bot": false,
          "headline": "Establish two-axis beacon model: single-party + aggregation",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-20T16:19:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0d9522ef52ad34d125d9f21dbff80a9e0e91ed2b",
          "body": "* fix: linting errors in method/lib scripts\n* docs: align all package READMEs with code, add license + install notes\n* chore: bump smt 0.3.0, method 0.33.0, api 0.8.0, cli 0.9.0 for zero-hash SMT break\n* chore: allowBuilds in pnpm-workspace.yml\n* docs: add 035 SMT base64url wire format, 036 zero-has\n[…]\ntml\n* feat(method): test scenario to vector pipeline\n* fix(smt)!: encode SMT proofs as base64url no-pad, add cohort scenario artifacts\n* feat(method): add scenario orchestrator and test-network wallet",
          "is_bot": false,
          "headline": "spec-conformant SMT + live mutinynet test-vector pipeline",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-06-18T18:50:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e657c2de49d20ac3bc96d62b108fe2c7126f5ba7",
          "body": null,
          "is_bot": false,
          "headline": "docs: rewrite stub README.md files for all 9 packages",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-05-22T20:56:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dcb0e3f12289ff943ee6334de8b6c1d7b31b60b6",
          "body": "…H/P2TR beacons\n\nReplaces raw KeyBytes plumbing through the update path with a Signer\nabstraction (ecdsa | bip340 | bip341), renames @did-btcr2/kms to\n@did-btcr2/key-manager, and adds P2PKH/P2WPKH/P2TR singleton beacon\ndispatch with per-kind vsize and pre-broadcast pubkey/address match.\n\nBREAKING CHANGE: cryptosuite SchnorrMultikey is Schnorr-only;\nkey-manager package renamed; api requires a Signer on the update path.",
          "is_bot": false,
          "headline": "refactor(signer)!: rename kms to key-manager, unify Signer, add P2WPK…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-05-22T17:18:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "89b8e696f962f53ddddad1fe03433a5002cf69fd",
          "body": "DOCUMENTATION\n* Add 32 ADRs under docs/adr/ in chronological order, capturing decisions from inception\n  (2025-02-19) through HTTP transport stack (2026-04-22), each with context, alternatives,\n  rationale, consequences, trade-offs, and originating-commit link\n* Decisions span foundation (monorepo +\n[…]\nle pnpm test step in .github/workflows/ci.yml after build:tests; bump\n  packages/smt/.mocharc.json timeout from 5s to 30s for the size=10000 SMT cases that\n  exceeded the default on shared CI hardware",
          "is_bot": false,
          "headline": "Backfill ADRs, restructure contributor docs, and enable test suite in CI",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-28T22:17:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fb3a3f0b07c2c01d0fd5d97e6dacbcbe42c655c1",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/method@0.30.0\n\nMETHOD\n* Add HttpClientTransport + sans-I/O HttpServerTransport with framework-agnostic\n  handleRequest/handleSse primitives, both implementing the existing Transport\n  interface. TransportFactory extended with a discriminated TransportConfig\n  union for \n[…]\nough (wire protocol, signed envelope,\n  SSE auth, __bytes convention, config options, demo pointer); update\n  docs/aggregation.md and README.md to treat Nostr and HTTP as co-equal\n  transport choices.",
          "is_bot": false,
          "headline": "Add HTTP/REST transport alongside Nostr for did:btcr2 aggregation",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-23T20:31:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "86e2f2b8e2dcf1e4f95f860dc773fa1deabc772e",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/bitcoin@0.6.0\n* @did-btcr2/method@0.29.0\n\nBITCOIN (BREAKING)\n* Replace bitcoinjs-lib with @scure/btc-signer throughout; drop tiny-secp256k1\n* Rewrite network.ts to use @scure/btc-signer BTC_NETWORK\n* Update connection.ts to carry @scure/btc-signer network metadata\n* Rem\n[…]\nspecs\n* Remove leftover console.log from AggregationService.finalizeKeygen\n* Update docs/aggregation.md with the new config surface, observed relay behavior, extension points, and verification pattern",
          "is_bot": false,
          "headline": "Drop bitcoinjs-lib, rewrite PSBT construction, harden aggregation",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-20T22:23:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d82a13f1e413afe824650707d23b94c488bc31b2",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/method@0.28.0\n\nMETHOD\n* Add Updater sans-I/O state machine — write-path counterpart to Resolver\n* Phases: Construct → Sign (NeedSigningKey) → Fund (NeedFunding) → Broadcast (NeedBroadcast) → Complete\n* Expose static utility methods (construct, sign, announce) for direct\n[…]\nFunding handler checks UTXOs via BitcoinConnection, throws if unfunded\n* NeedBroadcast handler establishes beacon via BeaconFactory and broadcasts\n* Add UpdateBuilder fluent API for ergonomic chaining",
          "is_bot": false,
          "headline": "Add sans-I/O Updater state machine for DID update path",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-13T22:27:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bb8aee71b5907820542610697415051d718d15e9",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/method@0.27.0\n* @did-btcr2/smt@0.2.4\n\nMETHOD (BREAKING)\n* Implement SMTBeacon processSignals() with Merkle inclusion verification (spec §7.2.e.1)\n* Implement SMTBeacon broadcastSignal() for single-party update path\n* Add NeedSMTProof DataNeed type to Resolver with provi\n[…]\ns (shared, per-actor, multi-process)\n* Restructure method package docs (README, beacon-system-overview, aggregation guide)\n\nSMT\n* Fix hashesEqual JSDoc comment (equalBytes, not crypto.timingSafeEqual)",
          "is_bot": false,
          "headline": "Complete beacon system: SMT beacon, aggregation rewrite, Nostr transport",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-13T20:14:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "14e2473ec8c02bca0fffe0c4048cd0a51970b75c",
          "body": null,
          "is_bot": false,
          "headline": "Remove section-divider comments from bitcoin and method packages",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-10T22:27:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8fe140407280c597361689a7b0af7411ccf698b4",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/api@0.5.0\n* @did-btcr2/cli@0.6.0\n\nAPI\n* Add HttpGatewayCasExecutor for read-only CAS via IPFS trustless gateway\n* Add gateway option to CasConfig (priority: executor > helia > gateway)\n* Default CAS to public IPFS gateway (ipfs.io) when no cas config provided\n* Add conf\n[…]\nasGateway through full config chain to HttpGatewayCasExecutor\n* Fix tsconfig: add lib ES2022 + types node for Node-only CLI package\n* Rewrite README with usage examples, config reference, and defaults",
          "is_bot": false,
          "headline": "Lazy API construction, layered config, CAS HTTP gateway",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-10T22:19:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d696365c8538a34f08108f9ded83d715c230e242",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/common@9.0.0\n* @did-btcr2/method@0.26.0\n* @did-btcr2/api@0.4.0\n* @did-btcr2/cli@0.5.3\n\nCOMMON (BREAKING)\n* Rename base64url encoding to base64urlnopad in CanonicalizationEncoding type\n* Add canonicalHashBytes() — returns raw SHA-256 bytes without encoding\n* Fix decode()\n[…]\ntead of string\n* Convert hex DataNeed hashes to bytes before passing to CAS executor\n* Add decode import for hex→bytes conversion in resolver loop\n\nCLI\n* Bump version for transitive dependency updates",
          "is_bot": false,
          "headline": "Eliminate unnecessary hash encoding, byte comparisons for interop",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-09T20:46:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6de3849d5e1bd4c90dfdb48e68a0d70659396c21",
          "body": "PACKAGE VERSIONS\n(none — documentation change only, no publishing impact)\n\nMONOREPO\n* Delete docs/.vitepress/ VitePress setup, docs/packages/ (~440 committed auto-generated files), and empty stub pages (change-log, configuration, getting-started,\nindex, installation, packages, usage, diagrams)\n* Rem\n[…]\nnces\n\n@did-btcr2/method\n* Fix broken {@link Resolve} reference in BeaconSignalDiscovery TSDoc (class was renamed to Resolver)\n* Fix Appendix.getVerificationMethods TSDoc @param name to match signature",
          "is_bot": false,
          "headline": "Replace VitePress with TypeDoc unified contributor docs site",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-09T13:55:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c336165fa6203a7ab9d6f0939169e62e3cee22a2",
          "body": "  PACKAGE VERSIONS\n  * @did-btcr2/common@8.0.2\n  * @did-btcr2/keypair@0.11.4\n  * @did-btcr2/cryptosuite@6.0.6\n  * @did-btcr2/bitcoin@0.5.3\n  * @did-btcr2/kms@0.4.2\n  * @did-btcr2/smt@0.2.3\n  * @did-btcr2/method@0.25.4\n  * @did-btcr2/api@0.3.2\n  * @did-btcr2/cli@0.5.2\n\n  ROOT\n  * Introduce tsconfig.b\n[…]\nuild:browser\n\n  @did-btcr2/cli\n  * Add tsup.config.ts for CJS library entry (bin/btcr2.ts stays ESM-only since it uses import.meta.url)\n  * Restore main, require export condition, and build:cjs script",
          "is_bot": false,
          "headline": "tsconfig normalization, verbatim type imports, tsup CJS",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-08T21:06:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a6d9019ccb3556f8ea43dbc40b34081a20b7be1b",
          "body": "* Add \"private\": true to root package.json to prevent publishing the monorepo as a package\n* Replace workspace:* with workspace:^ across all inter-package dependencies so npm resolves compatible ranges instead of exact versions pinned at publish time",
          "is_bot": false,
          "headline": "Fix monorepo root publish and use workspace:^ for semver ranges",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-04-01T15:09:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e4ea5e76161dbe33f890256b31d16d0c8a3c84d5",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/method@0.25.2\n\nMETHOD\n* Not removing BIP21 \"bitcoin:\" URI before signal-discovery indexer call",
          "is_bot": false,
          "headline": "Fix bug in method Resolver",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-31T15:17:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "19818d06bd158003921cd3bd78fedbabd0db9f5d",
          "body": "…natives\n\nPACKAGE VERSIONS\n* @did-btcr2/smt@0.2.1\n* @did-btcr2/keypair@0.11.2\n* @did-btcr2/cryptosuite@6.0.4\n* @did-btcr2/method@0.25.1\n* @did-btcr2/bitcoin@0.5.1\n\nSMT\n* Replace node:crypto createHash with @noble/hashes sha256\n* Replace node:crypto timingSafeEqual with @noble/curves equalBytes\n* Rep\n[…]\non/aggregation files\n* Remove tiny-secp256k1 from dependencies\n* Remove alias-ecc esbuild plugin (no longer needed)\n\nBITCOIN\n* Move tiny-secp256k1 from dependencies to devDependencies (unused in src/)",
          "is_bot": false,
          "headline": "Browser compatibility: replace Node.js APIs with cross-platform alter…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-30T19:07:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "77a551b473d5ea18f43bded91a379b8bdf574f7a",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/keypair@0.11.1\n* @did-btcr2/cryptosuite@6.0.3\n\nKEYPAIR\n* Replace crypto.timingSafeEqual with @noble/curves equalBytes\n* Replace crypto.getRandomValues with @noble/hashes randomBytes\n* Update package description\n\nCRYPTOSUITE\n* Replace crypto.randomBytes with @noble/hashes randomBytes\n* Update package description",
          "is_bot": false,
          "headline": "Replace Node.js crypto with @noble/* for browser compatibility",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-30T15:40:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0fe4e3257a3062c124d0bff1c2a1f2e306ed6fe4",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/smt@0.2.0\n\nSMT (BREAKING)\n* Replace Merkle-Sum tree with Optimized Sparse Merkle Tree per the did:btcr2 spec\n* Add OptimizedSMT class with converge bitmap proofs and depth-byte padding\n* Add SMTProof class with isValid(), isValidBatch(), JSON and binary serialization\n* \n[…]\n(branch.ts, leaf.ts, smt.ts, factory.ts, hashing.ts, utils.ts)\n* Remove lib/test-ms-smt.ts\n* Add 211 tests across 6 spec files (99.31% coverage)\n* Add README with install, usage, and API documentation",
          "is_bot": false,
          "headline": "Replace @did-btcr2/smt Merkle-Sum tree with Optimized Sparse Merkle Tree",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-27T20:59:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e65b16136dd1e5a494481a250138fc265a4e8005",
          "body": "…ctor\n\nPACKAGE VERSIONS\n* @did-btcr2/common@8.0.0\n* @did-btcr2/method@0.25.0\n* @did-btcr2/api@0.3.0\n* @did-btcr2/cli@0.5.0\n\nCOMMON (BREAKING)\n* Default canonicalHash encoding to base64url, rename encodeHash/decodeHash to encode/decode\n\nMETHOD (BREAKING)\n* Add Resolver sans-I/O state machine with 5 p\n[…]\nDI interface with direct DidBtcr2Api usage\n* Add @did-btcr2/api dependency, resolve command uses api.resolveDid()\n* Extract network from DID via Identifier.decode() (remove --network flag for resolve)",
          "is_bot": false,
          "headline": "Sans-I/O Resolver state machine, CAS beacon, API file split, CLI refa…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-27T14:52:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5a9fbe5d102b14ef96f78d35ba6705014ab62efc",
          "body": "… migration, and API cleanup\n\nSecurity:\n- Add destroy() for secret key zeroization\n- Use crypto.timingSafeEqual() for all key comparisons\n- Defensive-copy input Uint8Arrays in constructors\n- Safe toJSON() on both classes (redacted); new exportJSON() for explicit secret export\n- toString() and inspec\n[…]\nmps: common 6.0.0→7.0.0, keypair 0.10.1→0.11.0,\nmethod 0.24.0→0.24.1, api 0.2.1→0.2.2, cryptosuite 6.0.1→6.0.2\n\nDependencies: +@noble/curves ^2.0.1, +@scure/base ^2.0.0,\n-tiny-secp256k1, -multiformats",
          "is_bot": false,
          "headline": "Refactor @did-btcr2/keypair to v0.11.0 with security hardening, noble…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-20T21:34:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "11477d39090499ceebff141ad4837263b2bc7029",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/common@6.0.0\n* @did-btcr2/bitcoin@0.5.0\n* @did-btcr2/keypair@0.10.1\n* @did-btcr2/cryptosuite@6.0.1\n* @did-btcr2/method@0.24.0\n\nCOMMON (BREAKING)\n* Refactor Canonicalization class to standalone functions (canonicalize, hash, encodeHash, decodeHash, canonicalHash)\n* Repla\n[…]\n submodule compatibility\n* Replace inline test vector data with did-btcr2-test-suite git submodule\n* Update README with full fund/announce workflow and remove obsolete -- separator from all usage docs",
          "is_bot": false,
          "headline": "Refactor common, fix JCS bug, add base64url, and overhaul test vectors",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-20T15:50:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3d5135ebe4c4fc38f85eddc397984b68869bb739",
          "body": "…eactivate implementation\n\nPACKAGE VERSIONS\n* @did-btcr2/cli@0.4.0\n\nCLI (BREAKING)\n* Split god class DidBtcr2Cli into per-command modules (create, resolve, update, deactivate)\n* Add MethodOperations dependency injection — constructor accepts ops interface, defaults to DidBtcr2 statics\n* Fix update c\n[…]\nly\n* Delete malformed LICENSE file (GitHub API JSON blob, not license text)\n* Replace all test monkey-patching with DI via createMockOps()\n* Add output.spec.ts, version.spec.ts; remove command.spec.ts",
          "is_bot": false,
          "headline": "Refactor @did-btcr2/cli to v0.4.0 with per-command modules, DI, and d…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-17T15:18:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "656de39f2060abfc91d1f5b96fddb2fa8e47e0c7",
          "body": "…, and interface cleanup\n\nPACKAGE VERSIONS\n* @did-btcr2/kms@0.4.0\n\nKMS PACKAGE (BREAKING)\n* Add signing scheme option ({ scheme: 'schnorr' | 'ecdsa' }) to sign() and verify()\n* Replace raw KeyBytes storage with structured KeyEntry (secretKey?, publicKey, tags?)\n* Support public-key-only (watch-only)\n[…]\n ImportKeyOptions, GenerateKeyOptions in KeyManagerApi\n\nMETHOD PACKAGE\n* Replace Signer import with inline PSBT signer object in SingletonBeacon\n* Remove @did-btcr2/kms dependency (no longer imported)",
          "is_bot": false,
          "headline": "Refactor @did-btcr2/kms to v0.4.0 with dual signing, KeyEntry storage…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-13T21:12:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "190de07e1e0a7631374d4e1114213b1ab6280601",
          "body": "…ross packages\n\nPACKAGE VERSIONS\n* @did-btcr2/bitcoin@0.4.0\n* @did-btcr2/api@0.3.0\n* @did-btcr2/common@5.0.0\n* @did-btcr2/cryptosuite@6.0.0\n* @did-btcr2/keypair@0.10.0\n* @did-btcr2/kms@0.3.0\n* @did-btcr2/method@0.23.0\n\nBITCOIN PACKAGE (sans-I/O rewrite)\n* Add HttpExecutor abstraction for testable HT\n[…]\nuire explicit bitcoin driver in resolve/update — remove silent env-var initialization\n* Remove console.error leak in did-btcr2.ts error handling\n* Preserve error chains with { cause } in thrown errors",
          "is_bot": false,
          "headline": "Sans-I/O architecture, API facade rewrite, and toJSON() convention ac…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-12T18:12:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b47b92f06609e2a1c5bafa9dbf6994bb23e68d34",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/method@0.22.0\n* @did-btcr2/api@0.2.1\n* @did-btcr2/cli@0.3.1\n* @did-btcr2/common@4.0.1\n* @did-btcr2/keypair@0.9.1\n\nTEST VECTOR GENERATOR\n* Add generate-vector.ts with stepped workflow for creating did:btcr2 test vectors (create → update → resolve)\n* Add list command for \n[…]\nize()\n\nCLEANUP\n* Remove obsolete test vector data files for bitcoin, mutinynet, signet, testnet3, testnet4\n* Remove old monolithic q5pkyr20 test vector data\n* Update README with full CLI documentation",
          "is_bot": false,
          "headline": "Add test vector generator CLI with supporting fixes across packages",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-09T22:17:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7b6eb9850615e5120cd1369a998347265069d55f",
          "body": "PACKAGE VERSIONS\n* @did-btcr2/common@4.0.0\n* @did-btcr2/cryptosuite@5.1.0\n* @did-btcr2/method@0.21.0\n\nRESOLVE FLOW\n* Fix forced empty string to versionTime resulting in early return\n* Canonicalize and hash updatedDocument, not currentDocument in Resolve flow\n* Remove dead drivers: {} from resolution\n[…]\nentifier.spec.ts and encode-identifier.spec.ts\n\nCLEANUP\n* Remove unused imports and dead code paths\n* Remove old one-time test scripts and rename remaining lib/ files\n* Remove outdated DID placeholder",
          "is_bot": false,
          "headline": "Refactor resolve flow, canonicalization, and test infrastructure",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-03-05T21:16:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2f56b5c9432ebe8f2230c8182c78e5e0be2b64e0",
          "body": "…did:btcr2 v0.2 specification\n\nPACKAGE VERSIONS\n- @did-btcr2/api@0.2.0\n- @did-btcr2/cli@0.3.0\n- @did-btcr2/cryptosuite@5.0.0\n- @did-btcr2/keypair@0.9.0\n- @did-btcr2/kms@0.2.0\n- @did-btcr2/method@0.20.0\n\nBREAKING CHANGES — Naming & Terminology\n- Rename BTCR2SignedUpdate → SignedBTCR2Update, BTCR2Unsi\n[…]\netKey, Entropy, W3C_ZCAP_V1, etc.)\n- Remove debug console.log statements from singleton beacon\n- Remove dead code paths in singleton broadcastSignal\n- Clean up imports, comments, and naming throughout",
          "is_bot": false,
          "headline": "Refactor method/update flow, beacon architecture and package APIs to …",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-02-19T23:19:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fd33387cd9800e50864a7a8fc1f90379414f345b",
          "body": "PACKAGE VERSIONS\n- @did-btcr2/api@0.1.1\n- @did-btcr2/bitcoin@0.3.4\n- @did-btcr2/cli@0.2.0\n- @did-btcr2/common@3.1.0\n- @did-btcr2/cryptosuite@4.0.0\n- @did-btcr2/keypair@0.8.0\n- @did-btcr2/method@0.19.0\n\nBREAKING CHANGES - Naming & Terminology\n- Rename Read → Resolve throughout codebase\n- Rename ident\n[…]\ntypes, and imports\n- Add specific error types to identifier module\n- Fix minor syntax issues in cryptosuite DIP\n\nKNOWN ISSUES\n- Update operation needs triage (currently not working for build purposes)",
          "is_bot": false,
          "headline": "Refactor method implementation against did:btcr2 v0.2 specification",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-02-11T21:20:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5578915665e2c64c77cbe39f52a0b2232a4ff79c",
          "body": "PACKAGE VERSIONS\n- @did-btcr2/api@0.1.1\n- @did-btcr2/bitcoin@0.3.4\n- @did-btcr2/cli@0.2.0\n- @did-btcr2/common@3.1.0\n- @did-btcr2/cryptosuite@4.0.0\n- @did-btcr2/keypair@0.8.0\n- @did-btcr2/method@0.19.0\n\nBREAKING CHANGES - Naming & Terminology\n- Rename Read → Resolve throughout codebase\n- Rename ident\n[…]\ntypes, and imports\n- Add specific error types to identifier module\n- Fix minor syntax issues in cryptosuite DIP\n\nKNOWN ISSUES\n- Update operation needs triage (currently not working for build purposes)",
          "is_bot": false,
          "headline": "Refactor method implementation against did:btcr2 v0.2 specification",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2026-02-11T21:04:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "27e0066ebd75a519cb68eb3d6cb8c21aee4af61f",
          "body": " - Eliminate exts.ts and refactor into separate utility classes\n - Refactor canonicalization to be more performant\n - Minor refactors to types, interfaces, constants, logger and index\n - Rename patch to json-patch and fix errors in \"apply\" method\n - Improving security and performance using GPT-5.1-C\n[…]\no expected schema\n - Update aggnostr test to reflect current impl\n - Remove unnecessary modifiers from nostr adapter and coordinator\n - Add TODOs for later development of aggregation\n - Bump to v3.0.0",
          "is_bot": false,
          "headline": "@did-btcr2/common@3.0.0 - Refactoring and testing improvements",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-12-31T17:53:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9eb1a9108a59011d275451f20eab2c541d598919",
          "body": "- Breakout tests for errors, helpers, cli, command\n- Refactor cli and put error into separate file\n- Refactor cli and command for composability - Rewrite tests to increase passing\n- Adding one-off scripts to lib/\n- Move bin.ts to bin/btcr2.ts\n- Remove global exitoverride, add checks for help errors \n[…]\ntch/case on action and default error\n- Fix tests > 90% coverage\n- Add one-off test for resolve w/out opts\n- Add tests to cover final outstanding code lines\n- Fix lint for CI/CD\n- Bump version to 0.1.2",
          "is_bot": false,
          "headline": "@did-btcr2/cli@0.1.2 - Adding tests to the cli package",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-12-15T22:41:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b6f9c58f74ef07d5942c9d991650fc58b82fe259",
          "body": "- Separate CLI class and executable\n- Make Btcr2Cli class non-default export\n- Move exec to bin.ts\n- Bump version to 0.1.1 and point bin to bin.js",
          "is_bot": false,
          "headline": "did-btcr2/cli@0.1.1",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-12-09T15:17:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7e69d260109088c6a8b2ad1ce38aaf2df556ddd0",
          "body": "- Adding tests to @did-btcr2/bitcoin\n- Convert \"private _\" to proper \"#\" syntax\n- Add createSession method to musig2.ts\n- Remove extraneous console.log\n- Update method names to use \"#\" for private methods\n- Refactor initialize to return static instance\n- Add mapRpcCodeToHttp function and adjust hand\n[…]\ne guard function to rpc interface\n- Add cases to json-rpc, rest-client, rpc-client and utilities tests\n- Remove unnecessary init from BitcoinRpcClientConfig\n- Bump version to 0.3.3 in prep for publish",
          "is_bot": false,
          "headline": "did-btcr2/bitcoin@0.3.3",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-12-08T19:44:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e062e34b66dde2e095bfb29fd81bf4cb75c42907",
          "body": "- Fix method resolve tests\n- Replace mempool.holdings with mempool.space\n- Replace await promise.all...map with for loops\n- Include initialDocument in external test data",
          "is_bot": false,
          "headline": "@did-btcr2/method@0.18.1",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-12-02T16:32:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11d34ef8ca94797b253c360137381ace10bafbdb",
          "body": "- Aligning private class var syntax to convention\n- Change \"private readonly _\" to \"readonly #\"",
          "is_bot": false,
          "headline": "@did-btcr2/keypair@0.7.2",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-12-02T16:32:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "da96090de0f07c343d46db05cb31600ca4e32ec1",
          "body": "- Replace mempool.holdings with mempool.space\n- Replace await promise.all...map with for loops\n- Include initialDocument in external test data\n- Bump @did-btcr2/method to v0.18.1",
          "is_bot": false,
          "headline": "Fix method resolve tests",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-12-02T15:55:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "be7769dc1093538cd30824a5643879d88c7f6d9d",
          "body": "- Replace mempool.holdings with mempool.space\n- Replace await promise.all...map with for loops\n- Include initialDocument in external test data",
          "is_bot": false,
          "headline": "Fix method resolve tests",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-12-02T15:46:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "62fbc89685b85775d1294165184954d381fc22ea",
          "body": "- Build out initial CLI functionality\n- Align main and resolve conflicts\n- Remove cli/bin and add cli.ts\n- Revert tsup build in favor of bare tsconfig / tsc build\n- Hardcode version number, needs manual updating\n- Add argument check and conversion for CLI command \"create\"\n- Print results to terminal\n[…]\ng options or path to a JSON file to \"create\" command\n- Add logic for CLI command \"update\"\n- Rename CRUD to Command and Command to Btcr2Command\n- Add update command line flags and type checking on args",
          "is_bot": false,
          "headline": "@did-btcr2/cli@0.1.0",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-11-24T20:00:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "48f9a37f3a84dea95c74c5ee1add0d31eea187e3",
          "body": "- remove ns/ folder\n- edit eslint config file\n- edit CODEOWNERS\n- remove docker/ folder\n- bump root version",
          "is_bot": false,
          "headline": "did-btcr2-js@3.0.10",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-11-12T20:08:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1539e710b2973413a4a518da641b66c4077c4e24",
          "body": "- Adding new aggregation codebase from beacon-aggregation branch\n- Branch beacon-aggregation drifted too far from main to be easily reconcilable\n- Renamed and reorganized many files in the method/src/core/beacon/aggregation\n- Added comms and service adapters + factories\n- Added various tests to meth\n[…]\n: add missing type KeyIdentifier for KMS & add export statements for new method code\n- Version bumps: @did-btcr2/bitcoin@0.3.2, @did-btcr2/common@2.2.2, @did-btcr2/kms@0.1.1,  @did-btcr2/method@0.18.0",
          "is_bot": false,
          "headline": "Fixing beacon-aggregation branch",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-11-12T19:58:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0893492611ecbc224b1001205a57f0ca23323ebb",
          "body": "    - Initialize KMS package and migrate key-manager into new module\n    - Implement core KMS functionality for storing and retrieving DIDs and key pairs\n    - Add comprehensive tests, including unit tests for KMS and key operations\n    - Update keypair logic to support sign/verify on Secret and Pub\n[…]\nlistKeys, etc.)\n    - Break out package into separate files, add kms test cases and remove unneeded deps\n    - Increase kms, store and signer coverage, add sign-verify script and fix public verify bug",
          "is_bot": false,
          "headline": "@did-btcr2/kms@0.1.0",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-11-07T00:25:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "32806dedb867c3a9b102845dce89bc91a0a1e1dc",
          "body": "- New documentation to website\n- Moved mermaid diagrams to root\n- Added mermaid to vitepress",
          "is_bot": false,
          "headline": "did-btcr2-js@3.0.9",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-10-28T20:31:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "45e868e77429684eedee32909a2a898ebf5f277f",
          "body": null,
          "is_bot": false,
          "headline": "did-btcr2-js@3.0.8 - remove codecov",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-10-09T21:45:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "00aea39cf932dffdce270a75ef8967ee981e021a",
          "body": null,
          "is_bot": false,
          "headline": "@did-btcr2/method@0.17.2 - move lib/btcr2 scripts in outer folder",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-10-09T21:43:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1016186659eb7229a6595c0671d73b90ef6a47bb",
          "body": null,
          "is_bot": false,
          "headline": "@did-btcr2/keypair@0.7.1 - add .hex to keypair",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-10-09T21:42:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "22822ec00c6003f313354ca30a58947b4b8248e9",
          "body": null,
          "is_bot": false,
          "headline": "did-btcr2-js@3.0.7 - update README",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-29T19:34:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0d2af1a2e5fc3adf8467697562f39dd39d7c44d1",
          "body": null,
          "is_bot": false,
          "headline": "did-btcr2-js@3.0.6 - update vitepress config; add new deps to lock",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-26T15:43:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "74b517ece7e40712ffbace85f51fd0f91bfe39bd",
          "body": null,
          "is_bot": false,
          "headline": "@did-btcr2/api@0.1.0 - initialize base API class",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-26T15:43:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cfed9f84cd6a6430267f7774da8a8f4962813cd4",
          "body": "…ey.create",
          "is_bot": false,
          "headline": "@did-btcr2/method@0.17.1 - update returns SignalsMetadata; use multik…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-26T15:43:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3f68c41b6e9aa25675c72a20dc08134725b8c65b",
          "body": "…ze to .create",
          "is_bot": false,
          "headline": "@did-btcr2/cryptosuite@3.2.1 - rename static method multikey.initiali…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-26T15:43:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "87c8d87fdc57c052a09f6a7bbd539ecede85c1fb",
          "body": null,
          "is_bot": false,
          "headline": "@did-btcr2/common@2.2.1 - add NotImplementedError",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-26T15:43:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7409686fbdab411982392e224ed11eeaec7eff3c",
          "body": null,
          "is_bot": false,
          "headline": "did-btcr2-js@3.0.5 - edit vp config; update GH action",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-25T18:31:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "64ee02a9df7102f36fe5eadf278a486f8ed1b7f8",
          "body": "…id-doc; fix tests",
          "is_bot": false,
          "headline": "@did-btcr2/method@0.17.0 - refactor due to kp changes; additions to d…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-25T18:31:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "51b2db010d0540c4faa1e2b21f5b77e9b61a7973",
          "body": null,
          "is_bot": false,
          "headline": "@did-btcr2/keypair@0.7.0 - computePk returns object; fix tests",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-25T18:31:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a92668b7c0d4b218c286517c3ad0df506304b38e",
          "body": "…net to bitcoin",
          "is_bot": false,
          "headline": "@did-btcr2/bitcoin@0.3.1 - fix console.error in json-rpc; rename main…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-25T18:31:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dfa34d7cb6f6664acbd64dd1580038c4e464ed77",
          "body": null,
          "is_bot": false,
          "headline": "fix gh action",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-19T22:30:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "af28b8bf80909976990ff4068c2664b289639959",
          "body": "…n to bip340",
          "is_bot": false,
          "headline": "@did-btcr2/keypair@0.6.0 - new class names and methods to better alig…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-19T22:30:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "90b48b334f550c0cbcd9923edfe67105c39b16ec",
          "body": "…t to new keypair code",
          "is_bot": false,
          "headline": "common@2.2.0, bitcoin@0.3.0, cryptosuite@3.2.0, method@0.16.0 - adjus…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-19T22:30:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "adb907d73b81965dbb7d5b77cefb8a6c53e64a55",
          "body": "…over btc1 naming",
          "is_bot": false,
          "headline": " @did-btcr2/cli@0.2.0 + @did-btcr2/method@0.15.1 - fixes various left…",
          "author_name": "jintekc",
          "author_login": "jintekc",
          "committed_at": "2025-09-19T19:53:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 0,
      "commits_last_year": 136,
      "latest_release_at": null,
      "latest_release_tag": null,
      "releases_from_tags": false,
      "days_since_last_push": 5,
      "active_weeks_last_year": 31,
      "days_since_latest_release": null,
      "mean_days_between_releases": null
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": false,
      "has_contributing": true,
      "health_percentage": 42,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "@did-btcr2/api",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "did",
            "dids",
            "decentralized identity",
            "decentralized identifiers",
            "did method",
            "did:btcr2",
            "btcr2",
            "api"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@did-btcr2/api",
          "is_deprecated": false,
          "latest_version": "0.18.0",
          "repository_url": "https://github.com/dcdpr/did-btcr2-js",
          "versions_count": 38,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 4933,
          "first_published_at": "2025-09-26T15:45:12.044000Z",
          "latest_published_at": "2026-07-17T17:38:43.656000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        },
        {
          "name": "@did-btcr2/cli",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "did",
            "dids",
            "decentralized identity",
            "decentralized identifiers",
            "did method",
            "did:btcr2",
            "bitcoin",
            "cli"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@did-btcr2/cli",
          "is_deprecated": false,
          "latest_version": "0.18.1",
          "repository_url": "https://github.com/dcdpr/did-btcr2-js",
          "versions_count": 43,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 5147,
          "first_published_at": "2025-11-24T20:01:37.581000Z",
          "latest_published_at": "2026-07-17T17:38:49.506000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        },
        {
          "name": "@did-btcr2/smt",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "did",
            "dids",
            "decentralized identity",
            "decentralized identifiers",
            "did method",
            "did:btcr2",
            "bitcoin",
            "sparse merkle tree",
            "smt"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@did-btcr2/smt",
          "is_deprecated": false,
          "latest_version": "0.3.0",
          "repository_url": "https://github.com/dcdpr/did-btcr2-js",
          "versions_count": 6,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1005,
          "first_published_at": "2026-03-27T21:02:18.139000Z",
          "latest_published_at": "2026-06-18T22:32:28.628000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 34
        },
        {
          "name": "@did-btcr2/common",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@did-btcr2/common",
          "is_deprecated": false,
          "latest_version": "9.2.0",
          "repository_url": "https://github.com/dcdpr/did-btcr2-js",
          "versions_count": 19,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1097,
          "first_published_at": "2025-09-11T21:44:56.209000Z",
          "latest_published_at": "2026-07-17T17:38:25.951000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        },
        {
          "name": "@did-btcr2/method",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "did",
            "dids",
            "decentralized identity",
            "decentralized identifiers",
            "did method",
            "did:btcr2",
            "bitcoin"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@did-btcr2/method",
          "is_deprecated": false,
          "latest_version": "0.55.0",
          "repository_url": "https://github.com/dcdpr/did-btcr2-js",
          "versions_count": 55,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 5250,
          "first_published_at": "2025-09-12T20:42:28.196000Z",
          "latest_published_at": "2026-07-17T17:38:32.038000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        },
        {
          "name": "@did-btcr2/bitcoin",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "did",
            "dids",
            "decentralized identity",
            "decentralized identifiers",
            "did method",
            "did:btcr2",
            "bitcoin",
            "bitcoin core",
            "bitcoin rpc",
            "bitcoin rest",
            "btc"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@did-btcr2/bitcoin",
          "is_deprecated": false,
          "latest_version": "0.9.0",
          "repository_url": "https://github.com/dcdpr/did-btcr2-js",
          "versions_count": 19,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1461,
          "first_published_at": "2025-09-16T18:46:45.158000Z",
          "latest_published_at": "2026-07-08T15:45:36.811000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 14
        },
        {
          "name": "@did-btcr2/keypair",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "did",
            "dids",
            "decentralized identity",
            "decentralized identifiers",
            "did method",
            "did:btcr2",
            "bitcoin",
            "schnorr",
            "schnorr signatures",
            "secp256k1",
            "secp256k1 key pair",
            "cryptosuite",
            "bip340",
            "bip340 key pair"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@did-btcr2/keypair",
          "is_deprecated": false,
          "latest_version": "0.13.1",
          "repository_url": "https://github.com/dcdpr/did-btcr2-js",
          "versions_count": 16,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1120,
          "first_published_at": "2025-09-12T19:25:56.243000Z",
          "latest_published_at": "2026-06-21T16:57:45.960000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 31
        },
        {
          "name": "@did-btcr2/aggregation",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "did",
            "dids",
            "decentralized identity",
            "decentralized identifiers",
            "did method",
            "did:btcr2",
            "bitcoin",
            "aggregate beacon",
            "aggregation",
            "musig2",
            "bip327",
            "nostr",
            "cohort"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@did-btcr2/aggregation",
          "is_deprecated": false,
          "latest_version": "0.5.0",
          "repository_url": "https://github.com/dcdpr/did-btcr2-js",
          "versions_count": 6,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1201,
          "first_published_at": "2026-06-25T13:40:09.474000Z",
          "latest_published_at": "2026-07-17T17:38:38.018000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        }
      ]
    },
    "popularity": {
      "forks": 1,
      "stars": 2,
      "watchers": 1,
      "fork_history": {
        "days": [
          {
            "date": "2025-05-05",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 1,
        "total_forks": 1
      },
      "star_history": null,
      "open_issues_and_prs": 0
    },
    "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": [
        "packages/aggregation/lib/tsconfig.json",
        "packages/aggregation/tests/tsconfig.json",
        "packages/aggregation/tsconfig.json",
        "packages/api/lib/tsconfig.json",
        "packages/api/tests/tsconfig.json",
        "packages/api/tsconfig.json",
        "packages/bitcoin/lib/tsconfig.json",
        "packages/bitcoin/tests/tsconfig.json",
        "packages/bitcoin/tsconfig.json",
        "packages/cli/lib/tsconfig.json",
        "packages/cli/tests/tsconfig.json",
        "packages/cli/tsconfig.json",
        "packages/common/lib/tsconfig.json",
        "packages/common/tests/tsconfig.json",
        "packages/common/tsconfig.json",
        "packages/cryptosuite/lib/tsconfig.json",
        "packages/cryptosuite/tests/tsconfig.json",
        "packages/cryptosuite/tsconfig.json",
        "packages/key-manager/lib/tsconfig.json",
        "packages/key-manager/tests/tsconfig.json",
        "packages/key-manager/tsconfig.json",
        "packages/keypair/lib/tsconfig.json",
        "packages/keypair/tests/tsconfig.json",
        "packages/keypair/tsconfig.json",
        "packages/method/lib/tsconfig.json",
        "packages/method/tests/tsconfig.json",
        "packages/method/tsconfig.json",
        "packages/smt/tests/tsconfig.json",
        "packages/smt/tsconfig.json",
        "tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 80252,
      "source_files_sampled": 387,
      "oversized_source_files": 1,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "flatted",
            "direct": false,
            "version": "3.3.3",
            "severity": "critical",
            "ecosystem": "npm",
            "cvss_score": 9.8,
            "advisory_ids": [
              "GHSA-25h7-pfq9-p65f",
              "GHSA-rf6f-7fwh-wjgh"
            ],
            "fixed_version": "3.4.2",
            "advisory_count": 2,
            "oldest_advisory_days": 131
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.50.2",
            "severity": "critical",
            "ecosystem": "npm",
            "cvss_score": 9.1,
            "advisory_ids": [
              "GHSA-mw96-cpmx-2vgc"
            ],
            "fixed_version": "4.59.0",
            "advisory_count": 1,
            "oldest_advisory_days": 147
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.12",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp",
              "GHSA-f886-m6hf-6m8v"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 2,
            "oldest_advisory_days": 118
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.13",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 1,
            "oldest_advisory_days": 2
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.0.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp",
              "GHSA-f886-m6hf-6m8v"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 2,
            "oldest_advisory_days": 118
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.5",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp",
              "GHSA-jxxr-4gwj-5jf2"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 2,
            "oldest_advisory_days": 65
          },
          {
            "name": "elliptic",
            "direct": false,
            "version": "6.6.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.3,
            "advisory_ids": [
              "GHSA-848j-6mx2-7j84"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 195
          },
          {
            "name": "glob",
            "direct": false,
            "version": "10.4.5",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-5j98-mcp5-4vw2"
            ],
            "fixed_version": "11.1.0",
            "advisory_count": 1,
            "oldest_advisory_days": 247
          },
          {
            "name": "glob",
            "direct": false,
            "version": "11.0.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-5j98-mcp5-4vw2"
            ],
            "fixed_version": "11.1.0",
            "advisory_count": 1,
            "oldest_advisory_days": 247
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.14.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m",
              "GHSA-h67p-54hq-rp68"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 2,
            "oldest_advisory_days": 37
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m",
              "GHSA-h67p-54hq-rp68",
              "GHSA-mh29-5h37-fv8m"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 3,
            "oldest_advisory_days": 250
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m",
              "GHSA-h67p-54hq-rp68"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 2,
            "oldest_advisory_days": 37
          },
          {
            "name": "linkify-it",
            "direct": false,
            "version": "5.0.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-22p9-wv53-3rq4",
              "GHSA-v245-v573-v5vm"
            ],
            "fixed_version": "5.0.2",
            "advisory_count": 2,
            "oldest_advisory_days": 26
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-23c5-xmqv-rm74",
              "GHSA-3ppc-4f35-3m26",
              "GHSA-7r86-cg39-jmmj"
            ],
            "fixed_version": "10.2.3",
            "advisory_count": 3,
            "oldest_advisory_days": 154
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "5.1.6",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-23c5-xmqv-rm74",
              "GHSA-3ppc-4f35-3m26",
              "GHSA-7r86-cg39-jmmj"
            ],
            "fixed_version": "10.2.3",
            "advisory_count": 3,
            "oldest_advisory_days": 154
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.5",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-23c5-xmqv-rm74",
              "GHSA-3ppc-4f35-3m26",
              "GHSA-7r86-cg39-jmmj"
            ],
            "fixed_version": "10.2.3",
            "advisory_count": 3,
            "oldest_advisory_days": 154
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3v7f-55p6-f55p",
              "GHSA-c2c7-rcm5-vvqj"
            ],
            "fixed_version": "4.0.4",
            "advisory_count": 2,
            "oldest_advisory_days": 119
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3v7f-55p6-f55p",
              "GHSA-c2c7-rcm5-vvqj"
            ],
            "fixed_version": "4.0.4",
            "advisory_count": 2,
            "oldest_advisory_days": 119
          },
          {
            "name": "serialize-javascript",
            "direct": false,
            "version": "6.0.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 8.1,
            "advisory_ids": [
              "GHSA-5c6j-r48x-rmvq",
              "GHSA-qj8w-gfj5-8c6v"
            ],
            "fixed_version": "7.0.5",
            "advisory_count": 2,
            "oldest_advisory_days": 144
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.12.6",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-2g4f-4pwh-qvx6"
            ],
            "fixed_version": "8.18.0",
            "advisory_count": 1,
            "oldest_advisory_days": 161
          },
          {
            "name": "bn.js",
            "direct": false,
            "version": "4.12.2",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-378v-28hj-76wf"
            ],
            "fixed_version": "5.2.3",
            "advisory_count": 1,
            "oldest_advisory_days": 152
          },
          {
            "name": "bn.js",
            "direct": false,
            "version": "5.2.2",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-378v-28hj-76wf"
            ],
            "fixed_version": "5.2.3",
            "advisory_count": 1,
            "oldest_advisory_days": 152
          },
          {
            "name": "diff",
            "direct": false,
            "version": "5.2.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-73rr-hh4g-fpgx"
            ],
            "fixed_version": "8.0.3",
            "advisory_count": 1,
            "oldest_advisory_days": 189
          },
          {
            "name": "diff",
            "direct": false,
            "version": "7.0.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-73rr-hh4g-fpgx"
            ],
            "fixed_version": "8.0.3",
            "advisory_count": 1,
            "oldest_advisory_days": 189
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.24.2",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-67mh-4wv8-2f99"
            ],
            "fixed_version": "0.25.0",
            "advisory_count": 1,
            "oldest_advisory_days": 527
          },
          {
            "name": "markdown-it",
            "direct": false,
            "version": "14.1.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-38c4-r59v-3vqw",
              "GHSA-6v5v-wf23-fmfq"
            ],
            "fixed_version": "14.2.0",
            "advisory_count": 2,
            "oldest_advisory_days": 160
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.14.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-6rw7-vpxm-498p",
              "GHSA-q8mj-m7cp-5q26",
              "GHSA-w7fw-mjwx-w883"
            ],
            "fixed_version": "6.15.2",
            "advisory_count": 3,
            "oldest_advisory_days": 204
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "high": 17,
          "critical": 2,
          "moderate": 8
        },
        "advisory_count": 48,
        "affected_count": 27,
        "assessed_count": 699,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 67,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "@did-btcr2/bitcoin",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/common",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/cryptosuite",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/keypair",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/smt",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@noble/curves",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.9.7"
        },
        {
          "name": "@noble/hashes",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.8.0"
        },
        {
          "name": "@scure/btc-signer",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.8.1"
        },
        {
          "name": "nostr-tools",
          "manifest": "packages/aggregation/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.23.3"
        },
        {
          "name": "@did-btcr2/bitcoin",
          "manifest": "packages/api/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/common",
          "manifest": "packages/api/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/cryptosuite",
          "manifest": "packages/api/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/keypair",
          "manifest": "packages/api/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/key-manager",
          "manifest": "packages/api/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/method",
          "manifest": "packages/api/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@web5/dids",
          "manifest": "packages/api/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.0"
        },
        {
          "name": "multiformats",
          "manifest": "packages/api/package.json",
          "ecosystem": "npm",
          "version_constraint": "^13.3.1"
        },
        {
          "name": "@did-btcr2/common",
          "manifest": "packages/bitcoin/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@scure/btc-signer",
          "manifest": "packages/bitcoin/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.8.1"
        },
        {
          "name": "@did-btcr2/api",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/common",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/key-manager",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/keypair",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/method",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@noble/ciphers",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.1"
        },
        {
          "name": "@noble/hashes",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.1"
        },
        {
          "name": "@scure/base",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.6"
        },
        {
          "name": "@web5/dids",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.0"
        },
        {
          "name": "commander",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "^13.1.0"
        },
        {
          "name": "@noble/hashes",
          "manifest": "packages/common/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.7.1"
        },
        {
          "name": "@scure/base",
          "manifest": "packages/common/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.6"
        },
        {
          "name": "fast-json-patch",
          "manifest": "packages/common/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.1.1"
        },
        {
          "name": "json-canonicalize",
          "manifest": "packages/common/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.0.6"
        },
        {
          "name": "@did-btcr2/common",
          "manifest": "packages/cryptosuite/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/keypair",
          "manifest": "packages/cryptosuite/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@noble/curves",
          "manifest": "packages/cryptosuite/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.8.1"
        },
        {
          "name": "@noble/hashes",
          "manifest": "packages/cryptosuite/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.7.1"
        },
        {
          "name": "@web5/dids",
          "manifest": "packages/cryptosuite/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.0"
        },
        {
          "name": "multiformats",
          "manifest": "packages/cryptosuite/package.json",
          "ecosystem": "npm",
          "version_constraint": "^13.3.2"
        },
        {
          "name": "@did-btcr2/common",
          "manifest": "packages/key-manager/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/keypair",
          "manifest": "packages/key-manager/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@noble/curves",
          "manifest": "packages/key-manager/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.1"
        },
        {
          "name": "@noble/hashes",
          "manifest": "packages/key-manager/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.1"
        },
        {
          "name": "@did-btcr2/common",
          "manifest": "packages/keypair/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@noble/curves",
          "manifest": "packages/keypair/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.1"
        },
        {
          "name": "@noble/hashes",
          "manifest": "packages/keypair/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.7.1"
        },
        {
          "name": "@scure/base",
          "manifest": "packages/keypair/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0"
        },
        {
          "name": "@scure/btc-signer",
          "manifest": "packages/keypair/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.8.1"
        },
        {
          "name": "@did-btcr2/bitcoin",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/common",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/cryptosuite",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/keypair",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@did-btcr2/smt",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@noble/curves",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.9.7"
        },
        {
          "name": "@noble/hashes",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.8.0"
        },
        {
          "name": "@scure/base",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.6"
        },
        {
          "name": "@scure/btc-signer",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.8.1"
        },
        {
          "name": "@web5/dids",
          "manifest": "packages/method/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.0"
        },
        {
          "name": "@noble/curves",
          "manifest": "packages/smt/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.1"
        },
        {
          "name": "@noble/hashes",
          "manifest": "packages/smt/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.7.1"
        },
        {
          "name": "@scure/base",
          "manifest": "packages/smt/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.6"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@noble/ciphers",
            "direct": true,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/ciphers",
            "direct": true,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/ciphers",
            "direct": true,
            "version": "^2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/curves",
            "direct": true,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/curves",
            "direct": true,
            "version": "1.9.7",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/curves",
            "direct": true,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/curves",
            "direct": true,
            "version": "^1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/curves",
            "direct": true,
            "version": "^1.9.7",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/curves",
            "direct": true,
            "version": "^2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": true,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": true,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": true,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": true,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": true,
            "version": "^1.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": true,
            "version": "^1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": true,
            "version": "^2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/base",
            "direct": true,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/base",
            "direct": true,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/base",
            "direct": true,
            "version": "^1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/base",
            "direct": true,
            "version": "^2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/btc-signer",
            "direct": true,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/btc-signer",
            "direct": true,
            "version": "^1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@web5/dids",
            "direct": true,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@web5/dids",
            "direct": true,
            "version": "^1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "13.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "^13.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-patch",
            "direct": true,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-patch",
            "direct": true,
            "version": "^3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-canonicalize",
            "direct": true,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-canonicalize",
            "direct": true,
            "version": "^1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "multiformats",
            "direct": true,
            "version": "12.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "multiformats",
            "direct": true,
            "version": "13.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "multiformats",
            "direct": true,
            "version": "13.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "multiformats",
            "direct": true,
            "version": "13.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "multiformats",
            "direct": true,
            "version": "^13.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "multiformats",
            "direct": true,
            "version": "^13.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "multiformats",
            "direct": true,
            "version": "^13.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "nostr-tools",
            "direct": true,
            "version": "2.23.3",
            "ecosystem": "npm"
          },
          {
            "name": "nostr-tools",
            "direct": true,
            "version": "^2.23.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.28.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bcoe/v8-coverage",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/apply-release-plan",
            "direct": false,
            "version": "7.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/assemble-release-plan",
            "direct": false,
            "version": "6.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/changelog-git",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/changelog-github",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/cli",
            "direct": false,
            "version": "2.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/config",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/errors",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-dependents-graph",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-github-info",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-release-plan",
            "direct": false,
            "version": "4.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-version-range-type",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/git",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/logger",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/parse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/pre",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/read",
            "direct": false,
            "version": "0.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/should-skip-package",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/write",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@decentralized-identity/ion-sdk",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@dnsquery/dns-packet",
            "direct": false,
            "version": "6.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.9.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.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.21.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "0.15.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/eslintrc",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/eslintrc",
            "direct": false,
            "version": "3.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "9.35.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "9.39.4",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "^9.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "^9.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "^9.22.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "^9.39.4",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "2.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "2.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@gerrit0/mini-shiki",
            "direct": false,
            "version": "3.12.2",
            "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/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/external-editor",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/cliui",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/ttlcache",
            "direct": false,
            "version": "1.4.1",
            "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/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@leichtgewicht/ip-codec",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/find-root",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/get-packages",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/ed25519",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/secp256k1",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@pkgjs/parseargs",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/bip32",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/bip32",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@scure/bip39",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-oniguruma",
            "direct": false,
            "version": "3.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/langs",
            "direct": false,
            "version": "3.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/themes",
            "direct": false,
            "version": "3.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/types",
            "direct": false,
            "version": "3.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/vscode-textmate",
            "direct": false,
            "version": "10.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@sindresorhus/is",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "^5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "^5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai-as-promised",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai-as-promised",
            "direct": false,
            "version": "^8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/istanbul-lib-coverage",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mocha",
            "direct": false,
            "version": "10.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mocha",
            "direct": false,
            "version": "^10.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mocha",
            "direct": false,
            "version": "^10.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "12.20.55",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "22.18.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "25.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^22.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^22.13.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^22.18.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^22.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^25.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "^8.24.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "^8.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "^8.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "^8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "^8.24.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "^8.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "^8.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "^8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@web5/common",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@web5/crypto",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "abort-controller",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "abstract-level",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.12.6",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-colors",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "6.2.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": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "6.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "any-promise",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-union",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "asn1.js",
            "direct": false,
            "version": "4.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "assert",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "audit-ci",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "available-typed-arrays",
            "direct": false,
            "version": "1.0.7",
            "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": "base64-arraybuffer",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "bencode",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "better-path-resolve",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "bn.js",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "bn.js",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.13",
            "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": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "brorand",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "browser-level",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "browser-resolve",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "browser-stdout",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-aes",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-cipher",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-des",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-rsa",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-sign",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-zlib",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "5.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-xor",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "builtin-status-codes",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bundle-require",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "c8",
            "direct": false,
            "version": "10.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "c8",
            "direct": false,
            "version": "^10.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "c8",
            "direct": false,
            "version": "^10.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": false,
            "version": "6.7.14",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind",
            "direct": false,
            "version": "1.0.8",
            "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": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "canonicalize",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "catering",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "5.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "^5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "^5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "^5.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "chai-as-promised",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "chai-as-promised",
            "direct": false,
            "version": "^8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "chai-as-promised",
            "direct": false,
            "version": "^8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "char-regex",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "check-error",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ci-info",
            "direct": false,
            "version": "3.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "cipher-base",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "classic-level",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "7.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "colors",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "consola",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "console-browserify",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "constants-browserify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "core-util-is",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "create-ecdh",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "create-hash",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "create-hash",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "create-hmac",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "create-require",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "crypto-browserify",
            "direct": false,
            "version": "3.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "dataloader",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-eql",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "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": "des.js",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "diffie-hellman",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "dir-glob",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "domain-browser",
            "direct": false,
            "version": "4.22.0",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "8.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "duplexer",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "eastasianwidth",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "elliptic",
            "direct": false,
            "version": "6.6.1",
            "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": "emojilib",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "enquirer",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "4.5.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-object-atoms",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.25.9",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "^0.24.2",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "^0.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "9.35.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "9.39.4",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "^9.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "^9.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "^9.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "^9.39.4",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-mocha",
            "direct": false,
            "version": "10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-mocha",
            "direct": false,
            "version": "^10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-utils",
            "direct": false,
            "version": "3.0.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": "espree",
            "direct": false,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.6.0",
            "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": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "event-stream",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "event-target-shim",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "events",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "evp_bytestokey",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "extendable-error",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fix-dts-default-cjs-exports",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flat",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "for-each",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "foreground-child",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "from",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gar",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-folder-size",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "10.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "11.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "13.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "8.1.0",
            "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": "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.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "^15.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "^15.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "^16.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "globby",
            "direct": false,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "graphemer",
            "direct": false,
            "version": "1.4.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-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-tostringtag",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hash-base",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hash-base",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "hash.js",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "he",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "hmac-drbg",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "https-browserify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "human-id",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "ieee754",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-arguments",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-buffer",
            "direct": false,
            "version": "2.0.5",
            "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-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-generator-function",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-nan",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-regex",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-subdir",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-typed-array",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "is-unicode-supported",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-windows",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isomorphic-timers-promises",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-coverage",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-report",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-reports",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "jackspeak",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "jackspeak",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jju",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "joycon",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.14.2",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsonparse",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonstream-next",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "level",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "level-supports",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "level-transcoder",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "linkify-it",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "load-tsconfig",
            "direct": false,
            "version": "0.2.5",
            "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.merge",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.startcase",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "log-symbols",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "loupe",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "10.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "lunr",
            "direct": false,
            "version": "2.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.19",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "map-stream",
            "direct": false,
            "version": "0.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-it",
            "direct": false,
            "version": "14.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "md5.js",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "mdurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "micro-packed",
            "direct": false,
            "version": "0.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "miller-rabin",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimalistic-assert",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimalistic-crypto-utils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "5.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mlly",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "mocha",
            "direct": false,
            "version": "10.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "mocha",
            "direct": false,
            "version": "11.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "mocha",
            "direct": false,
            "version": "^10.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "mocha",
            "direct": false,
            "version": "^11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "module-error",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mri",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mz",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "napi-macros",
            "direct": false,
            "version": "2.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-emoji",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-gyp-build",
            "direct": false,
            "version": "4.8.4",
            "ecosystem": "npm"
          },
          {
            "name": "node-stdlib-browser",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-stdlib-browser",
            "direct": false,
            "version": "^1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nostr-wasm",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "npkill",
            "direct": false,
            "version": "0.12.2",
            "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": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "open-file-explorer",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "os-browserify",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "outdent",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-filter",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-map",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "package-json-from-dist",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "package-manager-detector",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-asn1",
            "direct": false,
            "version": "5.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-browserify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "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.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "pathval",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pause-stream",
            "direct": false,
            "version": "0.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "pbkdf2",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pirates",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-dir",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "possible-typed-array-names",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "2.8.8",
            "ecosystem": "npm"
          },
          {
            "name": "process",
            "direct": false,
            "version": "0.11.10",
            "ecosystem": "npm"
          },
          {
            "name": "process-nextick-args",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "public-encrypt",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "punycode.js",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "quansync",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "querystring-es3",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "rambda",
            "direct": false,
            "version": "7.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "randombytes",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "randomfill",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "read-yaml-file",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "4.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "readline-transform",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.10",
            "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": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "6.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "^6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "^6.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ripemd160",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ripemd160",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.50.2",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel-limit",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rxjs",
            "direct": false,
            "version": "7.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "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": "semver",
            "direct": false,
            "version": "7.7.2",
            "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-function-length",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "setimmediate",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "sha.js",
            "direct": false,
            "version": "2.4.12",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-list",
            "direct": false,
            "version": "1.0.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": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "skin-tone",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "slash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "spawndamnit",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "split",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "stream-browserify",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "stream-combiner",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "stream-http",
            "direct": false,
            "version": "3.2.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_decoder",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "sucrase",
            "direct": false,
            "version": "3.35.1",
            "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": "term-size",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "test-exclude",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "thenify",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "thenify-all",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "through",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "through2",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "timers-browserify",
            "direct": false,
            "version": "2.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.15",
            "ecosystem": "npm"
          },
          {
            "name": "to-buffer",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "tree-kill",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-interface-checker",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsup",
            "direct": false,
            "version": "8.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsup",
            "direct": false,
            "version": "^8.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "tty-browserify",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-buffer",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typedoc",
            "direct": false,
            "version": "0.28.13",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^5.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^5.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "~5.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "uc.micro",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ufo",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "uint8-util",
            "direct": false,
            "version": "2.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.18.2",
            "ecosystem": "npm"
          },
          {
            "name": "unicode-emoji-modifier-base",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "url",
            "direct": false,
            "version": "0.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "utf8-codec",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "util",
            "direct": false,
            "version": "0.12.5",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "v8-to-istanbul",
            "direct": false,
            "version": "9.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "vm-browserify",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-typed-array",
            "direct": false,
            "version": "1.1.19",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "workerpool",
            "direct": false,
            "version": "6.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "workerpool",
            "direct": false,
            "version": "9.3.4",
            "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": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "xtend",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "16.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "17.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "20.2.9",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "21.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-unparser",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 766,
        "direct_count": 40,
        "indirect_count": 726
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 0,
        "merged_prs": 126,
        "open_issues": 0,
        "closed_ratio": 1,
        "closed_issues": 4,
        "closed_unmerged_prs": 16
      },
      "bus_factor": 1,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "jintekc",
          "commits": 179,
          "avatar_url": "https://avatars.githubusercontent.com/u/191409983?v=4"
        }
      ],
      "contributors_sampled": 1,
      "top_contributor_share": 1
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "ci.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "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": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 3,
            "reason": "project has 1 contributing companies or organizations -- score normalized to 3",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 1 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": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 9,
            "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": "29 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "584a0d0702d46157b650ec579b4e4557da0ef23a",
        "ran_at": "2026-07-23T00:54:51Z",
        "aggregate_score": 4.3,
        "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-17T17:40:55Z",
      "oldest_open_prs": [],
      "last_merged_pr_at": "2026-07-17T17:36:34Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/dcdpr/did-btcr2-js",
    "host": "github.com",
    "name": "did-btcr2-js",
    "owner": "dcdpr"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 55,
      "inputs": {
        "security": 54,
        "vitality": 52,
        "community": 43,
        "governance": 57,
        "engineering": 67
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "moderate",
        "name": "Vitality",
        "value": 52,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 86,
            "inputs": {
              "commits_last_year": 136,
              "human_commit_share": 1,
              "days_since_last_push": 5,
              "active_weeks_last_year": 31
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 5 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "31/52 weeks with commits",
                "points": 21.5,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 31
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "136 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 136
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "critical",
            "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": 1,
            "inputs": {
              "releases_count": 0
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "no releases published",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases_published",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "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": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 5,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 5 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 43,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 1,
              "stars": 2,
              "watchers": 1,
              "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": "1 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "1 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 70,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MPL-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MPL-2.0"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "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": "good",
            "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": 72,
            "inputs": {
              "packages": [
                "@did-btcr2/api",
                "@did-btcr2/cli",
                "@did-btcr2/smt",
                "@did-btcr2/common",
                "@did-btcr2/method",
                "@did-btcr2/bitcoin",
                "@did-btcr2/keypair",
                "@did-btcr2/aggregation"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 21214
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "21,214 downloads/month across npm",
                "points": 57.7,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 21214,
                      "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": 57,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 13,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 1,
              "top_contributor_share": 1
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 100% of commits",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "1 contributors",
                "points": 1.4,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "merged_prs": 126,
              "open_issues": 0,
              "closed_issues": 4,
              "issue_closed_ratio": 1,
              "closed_unmerged_prs": 16
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "100% of issues closed",
                "points": 46.8,
                "status": "met",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "126/142 decided PRs merged",
                "points": 33.9,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 126,
                      "decided": 142
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "verified_domain"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 52,
            "inputs": {
              "followers": 17,
              "owner_type": "User",
              "is_verified": null,
              "owner_login": "dcdpr",
              "public_repos": 31,
              "account_age_days": 3344
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "personal (user) account",
                "points": 10,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_personal",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": "not applicable to user accounts",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_applicable_to_user_accounts",
                    "params": {}
                  }
                ],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "17 followers of dcdpr",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 17,
                      "login": "dcdpr"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "31 public repos, account ~9 yr old",
                "points": 23,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 31
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 9
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "@did-btcr2/api",
                "@did-btcr2/cli",
                "@did-btcr2/smt",
                "@did-btcr2/common",
                "@did-btcr2/method",
                "@did-btcr2/bitcoin",
                "@did-btcr2/keypair",
                "@did-btcr2/aggregation"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 5
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "8 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 8,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 5 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "55 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 55
                    }
                  }
                ],
                "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": 67,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "moderate",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 68,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "1 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "moderate",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 65,
            "inputs": {
              "topics": [],
              "has_wiki": true,
              "homepage": null,
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 54,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 43,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 4.3
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 1 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 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 6.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "29 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 699 resolved dependencies against OSV; 67 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories",
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 699
                }
              },
              {
                "code": "advisories_unassessed",
                "params": {
                  "count": 67
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 48,
              "affected_packages": 27,
              "assessed_packages": 699,
              "unassessed_packages": 67,
              "affected_by_severity": "critical 2, high 17, moderate 8",
              "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": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 699,
              "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
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 52,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.82,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "82 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 82,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "at_risk",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 43,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [
                "packages/aggregation/lib/tsconfig.json",
                "packages/aggregation/tests/tsconfig.json",
                "packages/aggregation/tsconfig.json",
                "packages/api/lib/tsconfig.json",
                "packages/api/tests/tsconfig.json",
                "packages/api/tsconfig.json",
                "packages/bitcoin/lib/tsconfig.json",
                "packages/bitcoin/tests/tsconfig.json",
                "packages/bitcoin/tsconfig.json",
                "packages/cli/lib/tsconfig.json",
                "packages/cli/tests/tsconfig.json",
                "packages/cli/tsconfig.json",
                "packages/common/lib/tsconfig.json",
                "packages/common/tests/tsconfig.json",
                "packages/common/tsconfig.json",
                "packages/cryptosuite/lib/tsconfig.json",
                "packages/cryptosuite/tests/tsconfig.json",
                "packages/cryptosuite/tsconfig.json",
                "packages/key-manager/lib/tsconfig.json",
                "packages/key-manager/tests/tsconfig.json",
                "packages/key-manager/tsconfig.json",
                "packages/keypair/lib/tsconfig.json",
                "packages/keypair/tests/tsconfig.json",
                "packages/keypair/tsconfig.json",
                "packages/method/lib/tsconfig.json",
                "packages/method/tests/tsconfig.json",
                "packages/method/tsconfig.json",
                "packages/smt/tests/tsconfig.json",
                "packages/smt/tsconfig.json",
                "tsconfig.json"
              ],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "packages/aggregation/lib/tsconfig.json, packages/aggregation/tests/tsconfig.json, packages/aggregation/tsconfig.json, packages/api/lib/tsconfig.json, packages/api/tests/tsconfig.json, packages/api/tsconfig.json, packages/bitcoin/lib/tsconfig.json, packages/bitcoin/tests/tsconfig.json, packages/bitcoin/tsconfig.json, packages/cli/lib/tsconfig.json, packages/cli/tests/tsconfig.json, packages/cli/tsconfig.json, packages/common/lib/tsconfig.json, packages/common/tests/tsconfig.json, packages/common/tsconfig.json, packages/cryptosuite/lib/tsconfig.json, packages/cryptosuite/tests/tsconfig.json, packages/cryptosuite/tsconfig.json, packages/key-manager/lib/tsconfig.json, packages/key-manager/tests/tsconfig.json, packages/key-manager/tsconfig.json, packages/keypair/lib/tsconfig.json, packages/keypair/tests/tsconfig.json, packages/keypair/tsconfig.json, packages/method/lib/tsconfig.json, packages/method/tests/tsconfig.json, packages/method/tsconfig.json, packages/smt/tests/tsconfig.json, packages/smt/tsconfig.json, tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "packages/aggregation/lib/tsconfig.json, packages/aggregation/tests/tsconfig.json, packages/aggregation/tsconfig.json, packages/api/lib/tsconfig.json, packages/api/tests/tsconfig.json, packages/api/tsconfig.json, packages/bitcoin/lib/tsconfig.json, packages/bitcoin/tests/tsconfig.json, packages/bitcoin/tsconfig.json, packages/cli/lib/tsconfig.json, packages/cli/tests/tsconfig.json, packages/cli/tsconfig.json, packages/common/lib/tsconfig.json, packages/common/tests/tsconfig.json, packages/common/tsconfig.json, packages/cryptosuite/lib/tsconfig.json, packages/cryptosuite/tests/tsconfig.json, packages/cryptosuite/tsconfig.json, packages/key-manager/lib/tsconfig.json, packages/key-manager/tests/tsconfig.json, packages/key-manager/tsconfig.json, packages/keypair/lib/tsconfig.json, packages/keypair/tests/tsconfig.json, packages/keypair/tsconfig.json, packages/method/lib/tsconfig.json, packages/method/tests/tsconfig.json, packages/method/tsconfig.json, packages/smt/tests/tsconfig.json, packages/smt/tsconfig.json, 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": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 80252,
              "source_files_sampled": 387,
              "oversized_source_files": 1
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "1/387 source files over 60KB",
                "points": 54.9,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 387,
                      "oversized": 1
                    }
                  }
                ],
                "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",
    "deps.dev does not index npm:@did-btcr2/api@0.18.0; advisories assessed against the repository dependency graph instead"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-23T00:55:05.623353Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/d/dcdpr/did-btcr2-js.svg",
  "full_name": "dcdpr/did-btcr2-js",
  "license_state": "standard",
  "license_spdx": "MPL-2.0"
}

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.