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

moov-io / watchman

AML/CTF/KYC/OFAC Search of global watchlist and sanctions

GoApache-2.0★ 497 estrellas⑂ 129 forksdesde ene 2019Ver en GitHub ↗

moov-io/watchman tiene un índice de salud de 76 sobre 100, lo que lo sitúa en la banda Bueno. Su puntuación más alta es Vitality (91/100) y la más baja, AI Readiness (64/100). Se actualizó por última vez hoy. Una sola persona concentra la mayor parte del trabajo reciente.

76
global / 100
Bueno

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

76
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

moovOrganización
451 seguidores69 repositorios públicosdesde feb 2017

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

Ecosistemas de paquetes

RegistroPaqueteVersiónDescargas / mesVersionesÚltima publicación
Gogithub.com/moov-io/watchmanv0.65.1-156hace 1 día

Métricas por categoría

Vitalidad

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

91Excelente · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 0 días
27/36Cadencia de commits — 39/52 semanas con commits
18/18Volumen de commits — 433 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year433
human_commit_share0,71
days_since_last_push0
active_weeks_last_year39
Cómo se puntúa
27/27Publica versiones — 100 versiones publicadas
36/36Recencia de las versiones — última versión hace 1 días
27/27Cadencia de publicación — una versión cada ~18,8 días
0/10OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases.
Datos de entrada utilizados
releases_count100
latest_release_tagv0.65.1
releases_from_tagsno
days_since_latest_release1
mean_days_between_releases18,8

Comunidad y Adopción

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

73Bueno · 18% del índice global
Cómo se puntúa
43.7/60Estrellas — 497 estrellas
17.6/25Forks — 129 forks
6.2/15Observadores — 14 observadores
Datos de entrada utilizados
forks129
stars497
watchers14
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
22.5/22.5Licencia — licencia reconocida (Apache-2.0)
18/18Guía CONTRIBUTING
0/13.5Código de conducta
7.2/7.2Plantilla de issues
0/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
has_contributing
has_issue_template
has_code_of_conductno
has_pull_request_templateno

Sostenibilidad y Gobernanza

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

69Moderado · 24% del índice global
Cómo se puntúa
9/54Factor bus — la mitad de los commits recae en 1 contribuyente(s)
3.2/22.5Distribución de commits — el principal contribuyente firma el 86% de los commits
13.5/13.5Amplitud de contribuyentes — 34 contribuyentes
10/10OpenSSF Scorecard: Contributors — project has 7 contributing companies or organizations
Datos de entrada utilizados
bus_factor1
contributors_sampled34
top_contributor_share0,858
Cómo se puntúa
44.3/46.8Resolución de issues — 95% de issues cerradas
33/38.3Aceptación de PR — 521/604 PR decididos fusionados
1.5/15OpenSSF Scorecard: Code-Review — Found 3/21 approved changesets -- score normalized to 1
Datos de entrada utilizados
merged_prs521
open_issues9
closed_issues165
issue_closed_ratio0,948
closed_unmerged_prs83
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
19.1/25Alcance del propietario — 451 seguidores de moov-io
25/25Trayectoria — 69 repos públicos, cuenta de ~9 años
Datos de entrada utilizados
followers451
owner_typeOrganization
is_verified
owner_loginmoov-io
public_repos69
account_age_days3438
Cómo se puntúa
25/25Publicado y resoluble — 1 paquete(s) en go
35/35Recencia de publicación — última publicación hace 1 días
20/20Historial de versiones — 156 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packagesgithub.com/moov-io/watchman
ecosystemsgo
any_deprecatedno
min_days_since_publish1

Calidad de Ingeniería

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

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

Documentación

90Excelente
Cómo se puntúa
30/30README
25/25Directorio de documentación
15/15Sitio de documentación / página del proyecto — https://moov-io.github.io/watchman/
10/10Descripción del repositorio
10/10Topics — 12 topics
0/10Wiki
Datos de entrada utilizados
topicsofac, kyc, cip, bis-denied-persons, sanctions, aml, ctf, bis, csl, sectoral-sanctions-identifications, dpl, sanction-lists
has_wikino
homepagehttps://moov-io.github.io/watchman/
has_readme
has_docs_dir
has_description

Seguridad

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

70Bueno · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
2.2/2.5CI-Tests — 18 out of 20 merged PRs checked by a CI test -- score normalized to 9
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0.8/7.5Code-Review — Found 3/21 approved changesets -- score normalized to 1
2.5/2.5Contributors — project has 7 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
5/5Fuzzing — project is fuzzed
2.5/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
4/5SAST — SAST tool is not run on all commits -- score normalized to 8
5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
6.8/7.5Vulnerabilities — 1 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated18
scorecard_versionv5.5.0
checks_inconclusive0
scorecard_aggregate6,3
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
advisories1
affected_packages1
assessed_packages251
unassessed_packages0
affected_by_severityunknown 1
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 251 dependencias resueltas con OSV. 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.

64Moderado · 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)
36.8/40Historial de commits legible — 49 de 71 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share0,69
agent_instruction_files
agent_instruction_max_bytes
Cómo se puntúa
18/18Arranque con un solo comando — makefile
22/22Pruebas automatizadas
0/11Configuración de lint / formato
11/11Verificación estática de tipos — Go (tipado estático)
10/10Entorno reproducible — Dockerfile, lockfile
2/10Práctica demostrada con agentes — 1 de los últimos 100 commits con autoría o crédito de agente
8/8Mantenimiento automatizado — 29 de los últimos 100 commits son 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
lockfilesGemfile.lock, go.sum
has_dockerfile
typed_language
bootstrap_filesmakefile
has_devcontainerno
has_linter_configno
typecheck_configs
agent_commit_share0,01
toolchain_manifestsgo.mod
dependency_bot_commit_share0,29
Cómo se puntúa
45/45Código verificable por tipos — Go (tipado estático)
54.5/55Tamaños de archivo manejables — 3/303 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageGo
largest_source_bytes428.670
source_files_sampled303
oversized_source_files3
Cómo se puntúa
0/40Esquema de API (OpenAPI/GraphQL/proto)
20/20Servidor MCP
40/40Ejemplos ejecutables — examples
Datos de entrada utilizados
example_dirsexamples
has_mcp_signal
api_schema_files

Datos clave

497estrellas de GitHub
34contribuidores
433commits en los últimos 12 meses
0días desde el último push
100versiones publicadas
1factor bus
9issues abiertas
Go, RubyGemsecosistemas de paquetes

Advertencias de recopilación de datos

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

Más detalle

Historial de estrellas y forks 0 ★ / 129 ⇿
0Estrellas
129Forks
99Versiones

Cuándo se añadió cada estrella y fork, recopilado de GitHub y agrupado por día. El crecimiento acumulado se sitúa justo encima de las adiciones diarias que lo componen, de modo que ambos se leen en conjunto: la acumulación orgánica sostenida no se parece en nada a un pico abrupto y efímero. Cuando esa diferencia es medible, se informa como autenticidad del crecimiento.

025507510012515012832019-012022-102026-07
Mayor 0Menor 30Parche 54

Cada punto abarca 7 días.

OpenSSF Scorecard 6.3 / 10
6.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-30 19:03 UTC

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
9CI-Tests18 out of 20 merged PRs checked by a CI test -- score normalized to 9
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
1Code-ReviewFound 3/21 approved changesets -- score normalized to 1
10Contributorsproject has 7 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
10Fuzzingproject is fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
8SASTSAST tool is not run on all commits -- score normalized to 8
10Security-Policysecurity policy file detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
9Vulnerabilities1 existing vulnerabilities detected
Dependencias directas 28
RegistroPaqueteRestricción de versiónManifiesto
Gofyne.io/fyne/v2v2.8.0go.mod
Gogithub.com/OpenRouterTeam/go-sdkv0.7.10go.mod
Gogithub.com/abadojack/whatlanggov1.0.1go.mod
Gogithub.com/adamdecaf/mergev0.2.2go.mod
Gogithub.com/antchfx/htmlqueryv1.3.6go.mod
Gogithub.com/bbalet/stopwordsv1.0.0go.mod
Gogithub.com/ccoveille/go-safecast/v2v2.0.1go.mod
Gogithub.com/dongri/phonenumberv0.1.12go.mod
Gogithub.com/gorilla/muxv1.8.1go.mod
Gogithub.com/hashicorp/go-retryablehttpv0.7.8go.mod
Gogithub.com/hashicorp/golang-lru/v2v2.0.7go.mod
Gogithub.com/jmoiron/sqlxv1.4.0go.mod
Gogithub.com/modelcontextprotocol/go-sdkv1.7.0go.mod
Gogithub.com/moov-io/basev0.61.3go.mod
Gogithub.com/moov-io/gopostalv0.1.2go.mod
Gogithub.com/moov-io/iso3166v0.4.0go.mod
Gogithub.com/pariz/gountriesv0.1.6go.mod
Gogithub.com/stretchr/testifyv1.11.1go.mod
Gogithub.com/urfave/cli/v3v3.10.1go.mod
Gogithub.com/vmihailenco/msgpack/v5v5.4.1go.mod
Gogithub.com/xrash/smetricsv0.0.0-20250705151800-55b8f293f342go.mod
Gogo.opentelemetry.io/otelv1.44.0go.mod
Gogo.opentelemetry.io/otel/tracev1.44.0go.mod
Gogo.uber.org/automaxprocsv1.6.0go.mod
Gogolang.org/x/netv0.57.0go.mod
Gogolang.org/x/syncv0.22.0go.mod
Gogolang.org/x/textv0.40.0go.mod
Gogolang.org/x/timev0.15.0go.mod
Todas las dependencias 251

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

RegistroPaqueteVersiónRelación
Gofyne.io/fyne/v2v2.8.0directa
Gogithub.com/abadojack/whatlanggov1.0.1directa
Gogithub.com/adamdecaf/mergev0.2.2directa
Gogithub.com/antchfx/htmlqueryv1.3.6directa
Gogithub.com/bbalet/stopwordsv1.0.0directa
Gogithub.com/ccoveille/go-safecast/v2v2.0.1directa
Gogithub.com/dongri/phonenumberv0.1.12directa
Gogithub.com/gorilla/muxv1.8.1directa
Gogithub.com/hashicorp/go-retryablehttpv0.7.8directa
Gogithub.com/hashicorp/golang-lru/v2v2.0.7directa
Gogithub.com/jmoiron/sqlxv1.4.0directa
Gogithub.com/modelcontextprotocol/go-sdkv1.7.0directa
Gogithub.com/moov-io/basev0.61.3directa
Gogithub.com/moov-io/gopostalv0.1.2directa
Gogithub.com/moov-io/iso3166v0.4.0directa
Gogithub.com/openrouterteam/go-sdkv0.7.10directa
Gogithub.com/pariz/gountriesv0.1.6directa
Gogithub.com/stretchr/testifyv1.11.1directa
Gogithub.com/urfave/cli/v3v3.10.1directa
Gogithub.com/vmihailenco/msgpack/v5v5.4.1directa
Gogithub.com/xrash/smetricsv0.0.0-20250705151800-55b8f293f342directa
Gogo.opentelemetry.io/otelv1.44.0directa
Gogo.opentelemetry.io/otel/tracev1.44.0directa
Gogo.uber.org/automaxprocsv1.6.0directa
Gogolang.org/x/netv0.57.0directa
Gogolang.org/x/syncv0.22.0directa
Gogolang.org/x/textv0.40.0directa
Gogolang.org/x/timev0.15.0directa
Gocel.dev/exprv0.25.1indirecta
Gocloud.google.com/gov0.123.0indirecta
Gocloud.google.com/go/alloydbv1.26.0indirecta
Gocloud.google.com/go/alloydbconnv1.18.3indirecta
Gocloud.google.com/go/authv0.20.0indirecta
Gocloud.google.com/go/auth/oauth2adaptv0.2.8indirecta
Gocloud.google.com/go/compute/metadatav0.9.0indirecta
Gocloud.google.com/go/iamv1.11.0indirecta
Gocloud.google.com/go/longrunningv0.13.0indirecta
Gocloud.google.com/go/monitoringv1.29.0indirecta
Gocloud.google.com/go/spannerv1.91.0indirecta
Gofilippo.io/edwards25519v1.2.0indirecta
Gofyne.io/systrayv1.12.2indirecta
Gogithub.com/antchfx/xpathv1.3.6indirecta
Gogithub.com/anthonynsimon/bildv0.14.0indirecta
Gogithub.com/beorn7/perksv1.0.1indirecta
Gogithub.com/burntsushi/tomlv1.6.0indirecta
Gogithub.com/cenkalti/backoff/v5v5.0.3indirecta
Gogithub.com/cespare/xxhash/v2v2.3.0indirecta
Gogithub.com/clipperhouse/uax29/v2v2.2.0indirecta
Gogithub.com/cncf/xds/gov0.0.0-20260202195803-dba9d589def2indirecta
Gogithub.com/davecgh/go-spewv1.1.2-0.20180830191138-d8f796af33ccindirecta
Gogithub.com/envoyproxy/go-control-plane/envoyv1.37.0indirecta
Gogithub.com/envoyproxy/protoc-gen-validatev1.3.3indirecta
Gogithub.com/felixge/httpsnoopv1.0.4indirecta
Gogithub.com/fredbi/uriv1.1.1indirecta
Gogithub.com/fsnotify/fsnotifyv1.10.1indirecta
Gogithub.com/fyne-io/gl-jsv0.2.1-0.20260315212741-029c47fd27e8indirecta
Gogithub.com/fyne-io/glfw-jsv0.4.0indirecta
Gogithub.com/fyne-io/imagev0.1.1indirecta
Gogithub.com/fyne-io/oksvgv0.2.0indirecta
Gogithub.com/go-gl/glv0.0.0-20260331235117-4566fea9a276indirecta
Gogithub.com/go-gl/glfw/v3.4/glfwv0.1.0-pre.1.0.20260707082822-2a407d02d01aindirecta
Gogithub.com/go-jose/go-jose/v4v4.1.4indirecta
Gogithub.com/go-kit/kitv0.13.0indirecta
Gogithub.com/go-kit/logv0.2.1indirecta
Gogithub.com/go-logfmt/logfmtv0.6.1indirecta
Gogithub.com/go-logr/logrv1.4.3indirecta
Gogithub.com/go-logr/stdrv1.2.2indirecta
Gogithub.com/go-sql-driver/mysqlv1.10.0indirecta
Gogithub.com/go-text/renderv0.2.1indirecta
Gogithub.com/go-text/typesettingv0.3.4indirecta
Gogithub.com/go-viper/mapstructure/v2v2.5.0indirecta
Gogithub.com/gobuffalo/herev0.6.7indirecta
Gogithub.com/godbus/dbus/v5v5.2.2indirecta
Gogithub.com/golang-migrate/migrate/v4v4.19.1indirecta
Gogithub.com/golang/groupcachev0.0.0-20241129210726-2c02b8208cf8indirecta
Gogithub.com/google/jsonschema-gov0.4.3indirecta
Gogithub.com/google/s2a-gov0.1.9indirecta
Gogithub.com/google/uuidv1.6.0indirecta
Gogithub.com/googleapis/enterprise-certificate-proxyv0.3.15indirecta
Gogithub.com/googleapis/gax-go/v2v2.22.0indirecta
Gogithub.com/googleapis/go-sql-spannerv1.25.1indirecta
Gogithub.com/googlecloudplatform/grpc-gcp-go/grpcgcpv1.6.0indirecta
Gogithub.com/googlecloudplatform/opentelemetry-operations-go/detectors/gcpv1.32.0indirecta
Gogithub.com/googlecloudplatform/opentelemetry-operations-go/exporter/metricv0.56.0indirecta
Gogithub.com/googlecloudplatform/opentelemetry-operations-go/internal/resourcemappingv0.56.0indirecta
Gogithub.com/grpc-ecosystem/grpc-gateway/v2v2.29.0indirecta
Gogithub.com/hack-pad/go-indexeddbv0.3.2indirecta
Gogithub.com/hack-pad/safejsv0.1.0indirecta
Gogithub.com/hashicorp/go-cleanhttpv0.5.2indirecta
Gogithub.com/igrmk/treemap/v2v2.0.1indirecta
Gogithub.com/jackc/pgpassfilev1.0.0indirecta
Gogithub.com/jackc/pgservicefilev0.0.0-20240606120523-5a60cdf6a761indirecta
Gogithub.com/jackc/pgx/v5v5.9.2indirecta
Gogithub.com/jackc/puddle/v2v2.2.2indirecta
Gogithub.com/jeandeaual/go-localev0.0.0-20250612000132-0ef82f21eadeindirecta
Gogithub.com/jsummers/gobmpv0.0.0-20230614200233-a9de23ed2e25indirecta
Gogithub.com/lib/pqv1.12.3indirecta
Gogithub.com/markbates/pkgerv0.17.1indirecta
Gogithub.com/mattn/go-runewidthv0.0.24indirecta
Gogithub.com/munnerz/goautonegv0.0.0-20191010083416-a7dc8b61c822indirecta
Gogithub.com/nfnt/resizev0.0.0-20180221191011-83c6a9932646indirecta
Gogithub.com/nicksnyder/go-i18n/v2v2.5.1indirecta
Gogithub.com/pelletier/go-toml/v2v2.3.1indirecta
Gogithub.com/planetscale/vtprotobufv0.6.1-0.20240319094008-0393e58bdf10indirecta
Gogithub.com/pmezard/go-difflibv1.0.1-0.20181226105442-5d4384ee4fb2indirecta
Gogithub.com/prometheus/client_golangv1.23.2indirecta
Gogithub.com/prometheus/client_modelv0.6.2indirecta
Gogithub.com/prometheus/commonv0.67.5indirecta
Gogithub.com/prometheus/procfsv0.20.1indirecta
Gogithub.com/rickar/cal/v2v2.1.27indirecta
Gogithub.com/rymdport/portalv0.4.2indirecta
Gogithub.com/sagikazarmark/locaferov0.12.0indirecta
Gogithub.com/segmentio/asmv1.1.3indirecta
Gogithub.com/segmentio/encodingv0.5.4indirecta
Gogithub.com/spf13/aferov1.15.0indirecta
Gogithub.com/spf13/castv1.10.0indirecta
Gogithub.com/spf13/pflagv1.0.10indirecta
Gogithub.com/spf13/viperv1.21.0indirecta
Gogithub.com/spiffe/go-spiffe/v2v2.6.0indirecta
Gogithub.com/spyzhov/ajsonv0.9.6indirecta
Gogithub.com/srwiley/oksvgv0.0.0-20221011165216-be6e8873101cindirecta
Gogithub.com/srwiley/rasterxv0.0.0-20220730225603-2ab79fcdd4efindirecta
Gogithub.com/subosito/gotenvv1.6.0indirecta
Gogithub.com/vmihailenco/tagparser/v2v2.0.0indirecta
Gogithub.com/yosida95/uritemplate/v3v3.0.2indirecta
Gogithub.com/yuin/goldmarkv1.8.2indirecta
Gogo.opencensus.iov0.24.0indirecta
Gogo.opentelemetry.io/auto/sdkv1.2.1indirecta
Gogo.opentelemetry.io/contrib/detectors/gcpv1.43.0indirecta
Gogo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpcv0.68.0indirecta
Gogo.opentelemetry.io/contrib/instrumentation/net/http/otelhttpv0.68.0indirecta
Gogo.opentelemetry.io/otel/exporters/otlp/otlptracev1.43.0indirecta
Gogo.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpcv1.43.0indirecta
Gogo.opentelemetry.io/otel/exporters/stdout/stdouttracev1.43.0indirecta
Gogo.opentelemetry.io/otel/metricv1.44.0indirecta
Gogo.opentelemetry.io/otel/sdkv1.43.0indirecta
Gogo.opentelemetry.io/otel/sdk/metricv1.43.0indirecta
Gogo.opentelemetry.io/proto/otlpv1.10.0indirecta
Gogo.yaml.in/yaml/v2v2.4.4indirecta
Gogo.yaml.in/yaml/v3v3.0.4indirecta
Gogolang.org/x/cryptov0.54.0indirecta
Gogolang.org/x/expv0.0.0-20260112195511-716be5621a96indirecta
Gogolang.org/x/imagev0.43.0indirecta
Gogolang.org/x/oauth2v0.36.0indirecta
Gogolang.org/x/sysv0.47.0indirecta
Gogoogle.golang.org/apiv0.278.0indirecta
Gogoogle.golang.org/genprotov0.0.0-20260504160031-60b97b32f348indirecta
Gogoogle.golang.org/genproto/googleapis/apiv0.0.0-20260504160031-60b97b32f348indirecta
Gogoogle.golang.org/genproto/googleapis/rpcv0.0.0-20260511170946-3700d4141b60indirecta
Gogoogle.golang.org/grpcv1.82.1indirecta
Gogoogle.golang.org/protobufv1.36.11indirecta
Gogopkg.in/yaml.v2v2.4.0indirecta
Gogopkg.in/yaml.v3v3.0.1indirecta
RubyGemsactivesupport7.2.3.1indirecta
RubyGemsaddressable2.9.0indirecta
RubyGemsbase640.3.0indirecta
RubyGemsbenchmark0.5.0indirecta
RubyGemsbigdecimal4.0.1indirecta
RubyGemsbulma-clean-theme0.14.0indirecta
RubyGemscoffee-script2.4.1indirecta
RubyGemscoffee-script-source1.12.2indirecta
RubyGemscolorator1.1.0indirecta
RubyGemscommonmarker0.23.10indirecta
RubyGemsconcurrent-ruby1.3.8indirecta
RubyGemsconnection_pool3.0.2indirecta
RubyGemscsv3.3.5indirecta
RubyGemsdnsruby1.72.2indirecta
RubyGemsdrb2.2.3indirecta
RubyGemsem-websocket0.5.3indirecta
RubyGemsethon0.16.0indirecta
RubyGemseventmachine1.2.7indirecta
RubyGemsexecjs2.9.1indirecta
RubyGemsfaraday2.14.3indirecta
RubyGemsfaraday-net_http3.4.4indirecta
RubyGemsffi1.17.4indirecta
RubyGemsforwardable-extended2.6.0indirecta
RubyGemsgemoji4.1.0indirecta
RubyGemsgithub-pages232indirecta
RubyGemsgithub-pages-health-check1.18.2indirecta
RubyGemshtml-pipeline2.14.3indirecta
RubyGemshttp_parser.rb0.8.1indirecta
RubyGemsi18n1.15.2indirecta
RubyGemsjekyll3.10.0indirecta
RubyGemsjekyll-avatar0.8.0indirecta
RubyGemsjekyll-coffeescript1.2.2indirecta
RubyGemsjekyll-commonmark1.4.0indirecta
RubyGemsjekyll-commonmark-ghpages0.5.1indirecta
RubyGemsjekyll-default-layout0.1.5indirecta
RubyGemsjekyll-feed0.17.0indirecta
RubyGemsjekyll-gist1.5.0indirecta
RubyGemsjekyll-github-metadata2.16.1indirecta
RubyGemsjekyll-include-cache0.2.1indirecta
RubyGemsjekyll-mentions1.6.0indirecta
RubyGemsjekyll-optional-front-matter0.3.2indirecta
RubyGemsjekyll-paginate1.1.0indirecta
RubyGemsjekyll-readme-index0.3.0indirecta
RubyGemsjekyll-redirect-from0.16.0indirecta
RubyGemsjekyll-relative-links0.6.1indirecta
RubyGemsjekyll-remote-theme0.4.3indirecta
RubyGemsjekyll-sass-converter1.5.2indirecta
RubyGemsjekyll-seo-tag2.8.0indirecta
RubyGemsjekyll-sitemap1.4.0indirecta
RubyGemsjekyll-swiss1.0.0indirecta
RubyGemsjekyll-theme-architect0.2.0indirecta
RubyGemsjekyll-theme-cayman0.2.0indirecta
RubyGemsjekyll-theme-dinky0.2.0indirecta
RubyGemsjekyll-theme-hacker0.2.0indirecta
RubyGemsjekyll-theme-leap-day0.2.0indirecta
RubyGemsjekyll-theme-merlot0.2.0indirecta
RubyGemsjekyll-theme-midnight0.2.0indirecta
RubyGemsjekyll-theme-minimal0.2.0indirecta
RubyGemsjekyll-theme-modernist0.2.0indirecta
RubyGemsjekyll-theme-primer0.6.0indirecta
RubyGemsjekyll-theme-slate0.2.0indirecta
RubyGemsjekyll-theme-tactile0.2.0indirecta
RubyGemsjekyll-theme-time-machine0.2.0indirecta
RubyGemsjekyll-titles-from-headings0.5.3indirecta
RubyGemsjekyll-watch2.2.1indirecta
RubyGemsjemoji0.13.0indirecta
RubyGemsjson2.20.0indirecta
RubyGemskramdown2.4.0indirecta
RubyGemskramdown-parser-gfm1.1.0indirecta
RubyGemsliquid4.0.4indirecta
RubyGemslisten3.10.0indirecta
RubyGemslogger1.7.0indirecta
RubyGemsmercenary0.3.6indirecta
RubyGemsminima2.5.1indirecta
RubyGemsminitest5.27.0indirecta
RubyGemsnet-http0.9.1indirecta
RubyGemsnokogiri1.19.4indirecta
RubyGemsoctokit4.25.1indirecta
RubyGemspathutil0.16.2indirecta
RubyGemspublic_suffix5.1.1indirecta
RubyGemsracc1.8.1indirecta
RubyGemsrb-fsevent0.11.2indirecta
RubyGemsrb-inotify0.11.1indirecta
RubyGemsrexml3.4.4indirecta
RubyGemsrouge3.30.0indirecta
RubyGemsrubyzip2.3.2indirecta
RubyGemssafe_yaml1.0.5indirecta
RubyGemssass3.7.4indirecta
RubyGemssass-listen4.0.0indirecta
RubyGemssawyer0.9.2indirecta
RubyGemssecurerandom0.4.1indirecta
RubyGemssimpleidn0.2.3indirecta
RubyGemsterminal-table1.8.0indirecta
RubyGemstyphoeus1.4.1indirecta
RubyGemstzinfo2.0.6indirecta
RubyGemsunicode-display_width1.8.0indirecta
RubyGemsuri1.1.1indirecta
RubyGemswebrick1.9.2indirecta
Avisos de dependencias 1

Este repositorio no publica ningún paquete que el índice resuelva, así que se evaluó su propio grafo de dependencias — 251 paquetes, que incluyen también fijaciones de desarrollo y prueba que nunca se distribuyen: 1 tienen avisos conocidos, de los cuales 0 son directas.

PaqueteVersiónRelaciónGravedadAvisosCorregido en
golang.org/x/cryptov0.54.0indirectadesconocida1

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": [
        "ofac",
        "kyc",
        "cip",
        "bis-denied-persons",
        "sanctions",
        "aml",
        "ctf",
        "bis",
        "csl",
        "sectoral-sanctions-identifications",
        "dpl",
        "sanction-lists"
      ],
      "is_fork": false,
      "size_kb": 51639,
      "has_wiki": false,
      "homepage": "https://moov-io.github.io/watchman/",
      "languages": {
        "Go": 1228545,
        "Makefile": 5257,
        "Dockerfile": 2620
      },
      "pushed_at": "2026-07-30T05:39:08Z",
      "created_at": "2019-01-02T20:22:14Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-30T05:39:10Z",
      "description": "AML/CTF/KYC/OFAC Search of global watchlist and sanctions",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "master",
      "license_spdx_raw": "Apache-2.0",
      "primary_language": "Go",
      "significant_languages": [
        "Go"
      ]
    },
    "owner": {
      "blog": "moov.io",
      "name": "moov",
      "type": "Organization",
      "login": "moov-io",
      "company": null,
      "location": "Golden, CO",
      "followers": 451,
      "avatar_url": "https://avatars.githubusercontent.com/u/26097026?v=4",
      "created_at": "2017-02-28T20:09:31Z",
      "is_verified": null,
      "public_repos": 69,
      "account_age_days": 3438
    },
    "license": {
      "state": "standard",
      "spdx_id": "Apache-2.0",
      "raw_spdx": "Apache-2.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.65.1",
          "kind": "patch",
          "published_at": "2026-07-29T17:29:12Z"
        },
        {
          "tag": "v0.65.0",
          "kind": "minor",
          "published_at": "2026-07-20T22:23:25Z"
        },
        {
          "tag": "v0.64.0",
          "kind": "minor",
          "published_at": "2026-07-09T17:08:24Z"
        },
        {
          "tag": "v0.63.3",
          "kind": "patch",
          "published_at": "2026-06-05T14:09:37Z"
        },
        {
          "tag": "v0.63.2",
          "kind": "patch",
          "published_at": "2026-06-05T14:58:53Z"
        },
        {
          "tag": "v0.63.1",
          "kind": "patch",
          "published_at": "2026-06-03T21:10:37Z"
        },
        {
          "tag": "v0.63.0",
          "kind": "minor",
          "published_at": "2026-06-02T16:01:45Z"
        },
        {
          "tag": "v0.62.0",
          "kind": "minor",
          "published_at": "2026-05-26T20:18:26Z"
        },
        {
          "tag": "v0.61.1",
          "kind": "patch",
          "published_at": "2026-03-02T17:44:46Z"
        },
        {
          "tag": "v0.59.2",
          "kind": "patch",
          "published_at": "2026-02-10T16:11:00Z"
        },
        {
          "tag": "v0.58.1",
          "kind": "patch",
          "published_at": "2026-02-04T19:30:32Z"
        },
        {
          "tag": "v0.58.0",
          "kind": "minor",
          "published_at": "2026-01-02T23:53:10Z"
        },
        {
          "tag": "v0.57.0",
          "kind": "minor",
          "published_at": "2025-12-24T21:40:42Z"
        },
        {
          "tag": "v0.56.1",
          "kind": "patch",
          "published_at": "2025-12-22T15:43:11Z"
        },
        {
          "tag": "v0.56.0",
          "kind": "minor",
          "published_at": "2025-12-19T18:46:53Z"
        },
        {
          "tag": "v0.55.1",
          "kind": "patch",
          "published_at": "2025-12-11T23:11:59Z"
        },
        {
          "tag": "v0.55.0",
          "kind": "minor",
          "published_at": "2025-12-11T21:48:53Z"
        },
        {
          "tag": "v0.54.4",
          "kind": "patch",
          "published_at": "2025-10-13T17:37:52Z"
        },
        {
          "tag": "v0.54.2",
          "kind": "patch",
          "published_at": "2025-10-01T18:43:28Z"
        },
        {
          "tag": "v0.54.1",
          "kind": "patch",
          "published_at": "2025-08-25T17:11:14Z"
        },
        {
          "tag": "v0.54.0",
          "kind": "minor",
          "published_at": "2025-06-26T14:12:25Z"
        },
        {
          "tag": "v0.53.1",
          "kind": "patch",
          "published_at": "2025-06-24T19:37:03Z"
        },
        {
          "tag": "v0.53.0",
          "kind": "minor",
          "published_at": "2025-06-23T20:43:58Z"
        },
        {
          "tag": "v0.52.3",
          "kind": "patch",
          "published_at": "2025-06-11T21:13:17Z"
        },
        {
          "tag": "v0.52.2",
          "kind": "patch",
          "published_at": "2025-06-02T19:40:50Z"
        },
        {
          "tag": "v0.52.1",
          "kind": "patch",
          "published_at": "2025-05-19T14:49:21Z"
        },
        {
          "tag": "v0.52.0",
          "kind": "minor",
          "published_at": "2025-05-16T22:35:19Z"
        },
        {
          "tag": "v0.51.2",
          "kind": "patch",
          "published_at": "2025-04-10T19:59:09Z"
        },
        {
          "tag": "v0.50.10",
          "kind": "patch",
          "published_at": "2025-02-19T15:01:18Z"
        },
        {
          "tag": "v0.50.9",
          "kind": "patch",
          "published_at": "2025-02-18T21:44:52Z"
        },
        {
          "tag": "v0.50.8",
          "kind": "patch",
          "published_at": "2025-02-18T20:19:14Z"
        },
        {
          "tag": "v0.50.7",
          "kind": "patch",
          "published_at": "2025-02-17T22:54:59Z"
        },
        {
          "tag": "v0.50.6",
          "kind": "patch",
          "published_at": "2025-02-14T21:13:25Z"
        },
        {
          "tag": "v0.50.5",
          "kind": "patch",
          "published_at": "2025-02-13T23:33:15Z"
        },
        {
          "tag": "v0.50.4",
          "kind": "patch",
          "published_at": "2025-02-11T21:12:20Z"
        },
        {
          "tag": "v0.50.3",
          "kind": "patch",
          "published_at": "2025-02-11T14:43:45Z"
        },
        {
          "tag": "v0.50.2",
          "kind": "patch",
          "published_at": "2025-02-10T19:44:19Z"
        },
        {
          "tag": "v0.50.1",
          "kind": "patch",
          "published_at": "2025-02-10T18:41:40Z"
        },
        {
          "tag": "v0.50.0",
          "kind": "minor",
          "published_at": "2025-02-07T17:04:52Z"
        },
        {
          "tag": "v0.31.3",
          "kind": "patch",
          "published_at": "2025-01-13T20:28:04Z"
        },
        {
          "tag": "v0.31.2",
          "kind": "patch",
          "published_at": "2025-01-13T18:47:36Z"
        },
        {
          "tag": "v0.31.0",
          "kind": "minor",
          "published_at": "2024-11-21T20:55:04Z"
        },
        {
          "tag": "v0.30.0",
          "kind": "minor",
          "published_at": "2024-10-24T21:04:09Z"
        },
        {
          "tag": "v0.29.2",
          "kind": "patch",
          "published_at": "2024-10-23T15:46:47Z"
        },
        {
          "tag": "v0.29.1",
          "kind": "patch",
          "published_at": "2024-10-07T16:06:17Z"
        },
        {
          "tag": "v0.28.2",
          "kind": "patch",
          "published_at": "2024-03-12T23:34:35Z"
        },
        {
          "tag": "v0.28.1",
          "kind": "patch",
          "published_at": "2024-03-12T13:40:35Z"
        },
        {
          "tag": "v0.28.0",
          "kind": "minor",
          "published_at": "2024-01-29T22:30:04Z"
        },
        {
          "tag": "v0.27.0",
          "kind": "minor",
          "published_at": "2023-12-14T16:49:54Z"
        },
        {
          "tag": "v0.26.1",
          "kind": "patch",
          "published_at": "2023-11-20T17:07:39Z"
        },
        {
          "tag": "v0.25.0",
          "kind": "minor",
          "published_at": "2023-11-15T16:32:12Z"
        },
        {
          "tag": "v0.24.2",
          "kind": "patch",
          "published_at": "2023-04-03T16:41:23Z"
        },
        {
          "tag": "v0.24.1",
          "kind": "patch",
          "published_at": "2023-02-16T18:55:23Z"
        },
        {
          "tag": "v0.24.0",
          "kind": "minor",
          "published_at": "2023-02-02T20:55:38Z"
        },
        {
          "tag": "v0.24.0-m4",
          "kind": "prerelease",
          "published_at": "2022-12-13T23:21:08Z"
        },
        {
          "tag": "v0.24.0-m3",
          "kind": "prerelease",
          "published_at": "2022-11-30T20:42:21Z"
        },
        {
          "tag": "v0.24.0-m1",
          "kind": "prerelease",
          "published_at": "2022-11-16T20:48:21Z"
        },
        {
          "tag": "v0.23.1",
          "kind": "patch",
          "published_at": "2022-10-17T17:52:32Z"
        },
        {
          "tag": "v0.23.0",
          "kind": "minor",
          "published_at": "2022-09-08T13:37:32Z"
        },
        {
          "tag": "v0.22.0",
          "kind": "minor",
          "published_at": "2022-07-21T20:16:53Z"
        },
        {
          "tag": "v0.22.0-rc1",
          "kind": "prerelease",
          "published_at": "2022-07-08T20:16:06Z"
        },
        {
          "tag": "v0.21.5",
          "kind": "patch",
          "published_at": "2022-04-04T14:00:23Z"
        },
        {
          "tag": "v0.21.4",
          "kind": "patch",
          "published_at": "2022-03-05T00:32:51Z"
        },
        {
          "tag": "v0.21.3",
          "kind": "patch",
          "published_at": "2021-11-10T18:45:31Z"
        },
        {
          "tag": "v0.21.2",
          "kind": "patch",
          "published_at": "2021-11-09T18:23:37Z"
        },
        {
          "tag": "v0.21.1",
          "kind": "patch",
          "published_at": "2021-10-04T21:21:27Z"
        },
        {
          "tag": "v0.21.0",
          "kind": "minor",
          "published_at": "2021-09-29T23:58:58Z"
        },
        {
          "tag": "v0.20.0",
          "kind": "minor",
          "published_at": "2021-09-29T23:59:23Z"
        },
        {
          "tag": "v0.20.0-dev1",
          "kind": "prerelease",
          "published_at": "2021-08-27T17:01:08Z"
        },
        {
          "tag": "v0.19.2",
          "kind": "patch",
          "published_at": "2021-07-21T18:58:59Z"
        },
        {
          "tag": "v0.19.1",
          "kind": "patch",
          "published_at": "2021-07-16T16:59:24Z"
        },
        {
          "tag": "v0.19.0",
          "kind": "minor",
          "published_at": "2021-06-10T15:41:10Z"
        },
        {
          "tag": "v0.18.2",
          "kind": "patch",
          "published_at": "2021-06-01T19:01:54Z"
        },
        {
          "tag": "v0.18.1",
          "kind": "patch",
          "published_at": "2021-05-20T16:53:48Z"
        },
        {
          "tag": "v0.18.0",
          "kind": "minor",
          "published_at": "2021-04-29T21:29:45Z"
        },
        {
          "tag": "v0.17.1",
          "kind": "patch",
          "published_at": "2021-02-23T23:46:27Z"
        },
        {
          "tag": "v0.17.0",
          "kind": "minor",
          "published_at": "2021-02-05T22:55:09Z"
        },
        {
          "tag": "v0.16.2",
          "kind": "patch",
          "published_at": "2021-02-02T20:54:22Z"
        },
        {
          "tag": "v0.16.0",
          "kind": "minor",
          "published_at": "2021-01-23T02:34:43Z"
        },
        {
          "tag": "v0.15.3",
          "kind": "patch",
          "published_at": "2020-10-28T21:27:49Z"
        },
        {
          "tag": "v0.15.2",
          "kind": "patch",
          "published_at": "2020-10-28T18:49:37Z"
        },
        {
          "tag": "v0.15.1",
          "kind": "patch",
          "published_at": "2020-10-06T03:00:31Z"
        },
        {
          "tag": "v0.15.0",
          "kind": "minor",
          "published_at": "2020-09-09T18:36:30Z"
        },
        {
          "tag": "v0.14.3",
          "kind": "patch",
          "published_at": "2020-09-01T20:45:23Z"
        },
        {
          "tag": "v0.15.0-rc1",
          "kind": "prerelease",
          "published_at": "2020-07-31T16:01:57Z"
        },
        {
          "tag": "v0.14.2",
          "kind": "patch",
          "published_at": "2020-07-09T17:14:39Z"
        },
        {
          "tag": "v0.14.2-dev",
          "kind": "prerelease",
          "published_at": "2020-07-09T16:49:37Z"
        },
        {
          "tag": "v0.14.0",
          "kind": "minor",
          "published_at": "2020-04-14T20:51:23Z"
        },
        {
          "tag": "v0.14.0-rc3",
          "kind": "prerelease",
          "published_at": "2020-03-06T20:20:33Z"
        },
        {
          "tag": "v0.13.2",
          "kind": "patch",
          "published_at": "2020-03-03T20:06:18Z"
        },
        {
          "tag": "v0.13.1",
          "kind": "patch",
          "published_at": "2020-01-28T18:18:10Z"
        },
        {
          "tag": "v0.13.0",
          "kind": "minor",
          "published_at": "2019-12-20T17:59:48Z"
        },
        {
          "tag": "v0.13.0-rc6",
          "kind": "prerelease",
          "published_at": "2019-12-09T23:47:51Z"
        },
        {
          "tag": "v0.13.0-rc5",
          "kind": "prerelease",
          "published_at": "2019-12-06T22:47:47Z"
        },
        {
          "tag": "v0.13.0-rc4",
          "kind": "prerelease",
          "published_at": "2019-12-05T20:33:19Z"
        },
        {
          "tag": "v0.13.0-rc3",
          "kind": "prerelease",
          "published_at": "2019-11-25T20:35:22Z"
        },
        {
          "tag": "v0.13.0-rc2",
          "kind": "prerelease",
          "published_at": "2019-11-25T19:08:14Z"
        },
        {
          "tag": "v0.13.0-rc1",
          "kind": "prerelease",
          "published_at": "2019-11-22T17:55:59Z"
        },
        {
          "tag": "v0.12.0",
          "kind": "minor",
          "published_at": "2019-11-12T20:23:46Z"
        },
        {
          "tag": "v0.12.0-rc3",
          "kind": "prerelease",
          "published_at": "2019-11-12T18:44:50Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "842fb167acd79b7f49bc8a28e65258d12b9970f4",
          "body": "…(#788)\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update module github.com/openrouterteam/go-sdk to v0.7.10 …",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-30T05:39:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e8b8f46d765e75043df746011cb172811f9825d5",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update all (#785)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-29T17:02:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d9d5e3ac1c1e06e2fdfa9bdcf6c03106cbe3e301",
          "body": "A failed periodic download was pushed onto the process error channel and\nshut down the server, even after a successful startup load. Log the\nfailure, keep the previous index, and retry on the next interval instead.",
          "is_bot": false,
          "headline": "fix: keep serving data when scheduled refresh fails (#787)",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-07-29T17:02:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "835a3bdd67f2790e8c32446d81fc961070669beb",
          "body": "Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.81.1 to 1.82.1.\n- [Release notes](https://github.com/grpc/grpc-go/releases)\n- [Commits](https://github.com/grpc/grpc-go/compare/v1.81.1...v1.82.1)\n\n---\nupdated-dependencies:\n- dependency-name: google.golang.org/grpc\n  dependency-version: 1.82.1\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "build(deps): bump google.golang.org/grpc from 1.81.1 to 1.82.1 (#781)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-29T16:26:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4fb1b77379aa3aa1076264d4c85114e520aacffc",
          "body": "…#784)\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update module github.com/openrouterteam/go-sdk to v0.6.2 (…",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-26T09:31:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "88b46eb7c0c9c80e214f9a685f408e1e0c02124e",
          "body": "…#783)\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update module github.com/openrouterteam/go-sdk to v0.6.0 (…",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-25T05:33:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7ce4508015be867b0538d5941e71a6c5d00707cb",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update all (#782)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-23T05:16:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "be150c272ba2fc9be006d1f1d66259ca76593834",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update all (#780)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-22T04:29:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f404c0837367ede267f67e7868f5bb3e8b4eea97",
          "body": "…f0cf6b90c2e6f9ca8330ab1ab42ff717c94b",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for da2a…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-07-21T14:14:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "da2af0cf6b90c2e6f9ca8330ab1ab42ff717c94b",
          "body": "retryablehttp and net/http *url.Error embed the full request URL\n(including query parameters) in error text. Search queries often carry\nPII, so use a custom ErrorHandler that drops the URI and peel *url.Error\ndown to its underlying cause before wrapping.",
          "is_bot": false,
          "headline": "fix(search): omit request URI from client search errors (#778)",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-07-20T22:00:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2d18195a4a50435144b948d9404feb5a17c4b241",
          "body": "…s (#779)\n\n* perf(stringscore): hoist scoring feature flags off the hot path\n\nCache DISABLE_PHONETIC_FILTERING, USE_SOUNDEX_MATCHING, and\nSOUNDEX_BOOST_WEIGHT in atomics loaded at init (ReloadEnvConfig)\ninstead of calling os.Getenv on every Jaro-Winkler comparison.\n\n* perf(search): cut similarity al\n[…]\n crypto-only exact path, exact-ID short-circuit, single-worker\nscoring, and updated concurrency/indexing details across Performance,\nIndexing, Config, methodology, Search, intro, overview, and README.",
          "is_bot": false,
          "headline": "perf: candidate index, admission control, and hot-path allocation cut…",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-07-20T21:34:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "83f2492e74dee7d4f5aa61af75d78cbe9b43f627",
          "body": "* fix(deps): update all\n\n* fix: support Fyne v2.8 Wayland build and update Gemfile.lock\n\nFyne v2.8 enables Wayland by default via glfw, which requires\nlibwayland-dev and libxkbcommon-dev on Linux CI. Also update\ndocs/Gemfile.lock for bulma-clean-theme 0.14.0 after Renovate's\nartifact update failed on an old Bundler/Ruby combo.\n\n---------\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>\nCo-authored-by: Adam Shannon <adamkshannon@gmail.com>",
          "is_bot": true,
          "headline": "fix(deps): update all (#776)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-20T18:53:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a9756eb1a6bd1daf0a92378a264148dd20905fb",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update all (#777)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-20T18:26:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f88fcbf2c0948bf8bf8c073be548250fd84a59f0",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update all (#765)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-09T16:52:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "61bc9bb6175ab559d46959ac3e5a2c994b21f6f5",
          "body": null,
          "is_bot": false,
          "headline": "chore: gofmt",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-07-09T16:18:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f449657b26937a81e09f2f625dc32255827a3832",
          "body": null,
          "is_bot": false,
          "headline": "build: update deps",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-07-09T16:18:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "47d13d47b6015edecefbedf3c49194e29ae8ff24",
          "body": "* feat: Allow data to be refreshed via an API call\n\nWe are currently implementing watchman for some tooling internally and\nwe need to be able to keep multiple instances of watchman in pretty\ntight sync with each other as well as running it behind a sidecar\nprocess. In order do this I wanted to intro\n[…]\nd down (having watchman listen for SIGHUP instead).\n\n* chore: Cleaning up from code review\n\n* chore: simplify download/refresh handler\n\n---------\n\nCo-authored-by: Adam Shannon <adamkshannon@gmail.com>",
          "is_bot": false,
          "headline": "feat: Allow data to be refreshed via an API call (#771)",
          "author_name": "Elliot Courant",
          "author_login": "elliotcourant",
          "committed_at": "2026-07-09T16:17:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9239f2e49e05f73ce6e6656733282293682eeee2",
          "body": "…9265ed780973332dcf4a347f020304acaf",
          "is_bot": false,
          "headline": "add moov-io/watchman OFAC Benchmarks (go) benchmark result for 3d12fb…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-07-09T15:31:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d12fb9265ed780973332dcf4a347f020304acaf",
          "body": "…9780bfd8bfd43ac787cb8d61e7b067cc3c92",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for 3504…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-07-09T15:31:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "35049780bfd8bfd43ac787cb8d61e7b067cc3c92",
          "body": null,
          "is_bot": false,
          "headline": "chore: updating golang.org/x/image",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-07-08T16:09:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "082bfaf4580f7c6d0ed63d444f178a32202c4906",
          "body": "* Fix download us tel test and update mapper and reader file\n\n* chore: code review cleanup\n\n---------\n\nCo-authored-by: Adam Shannon <adamkshannon@gmail.com>",
          "is_bot": false,
          "headline": "Fix download us tel test and update mapper and reader file (#774)",
          "author_name": "Lex",
          "author_login": "cacheflow",
          "committed_at": "2026-07-08T16:08:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3dabcb19e48f1e539f179cdac0668aa3cbe2b66f",
          "body": "…eb510113307944cbefe3bf103def1ffbd71a",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for abe3…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-07-07T14:57:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "abe3eb510113307944cbefe3bf103def1ffbd71a",
          "body": "We are running a mixture of arm64 and amd64 linux servers so this is\njust a nicety to be able to pull from the github releases rather than\nneeding to compile from scratch. We aren't currently using a container\nruntime so this makes it easier for us.",
          "is_bot": false,
          "headline": "build: Compile for linux/arm64 as well (#772)",
          "author_name": "Elliot Courant",
          "author_login": "elliotcourant",
          "committed_at": "2026-07-06T21:32:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f7b8e5b819e06fed64892641c2917aaefc164981",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update all (#766)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-06T21:31:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "755f79b3485a431190fa16047d98d36f09356164",
          "body": "Bumps [concurrent-ruby](https://github.com/ruby-concurrency/concurrent-ruby) from 1.3.6 to 1.3.7.\n- [Release notes](https://github.com/ruby-concurrency/concurrent-ruby/releases)\n- [Changelog](https://github.com/ruby-concurrency/concurrent-ruby/blob/master/CHANGELOG.md)\n- [Commits](https://github.com\n[…]\nuby\n  dependency-version: 1.3.7\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "build(deps): bump concurrent-ruby from 1.3.6 to 1.3.7 in /docs (#770)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-06T21:31:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6e5b7b2b56d62a4ad8c162f76aa781d320e83277",
          "body": "Bumps [faraday](https://github.com/lostisland/faraday) from 2.14.2 to 2.14.3.\n- [Release notes](https://github.com/lostisland/faraday/releases)\n- [Changelog](https://github.com/lostisland/faraday/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/lostisland/faraday/compare/v2.14.2...v2.14.3)\n\n--\n[…]\nay\n  dependency-version: 2.14.3\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "build(deps-dev): bump faraday from 2.14.2 to 2.14.3 in /docs (#769)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-06T21:31:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7a8119b2ceeb240a0e07e5c9954f86f329d75b34",
          "body": "Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.19.3 to 1.19.4.\n- [Release notes](https://github.com/sparklemotion/nokogiri/releases)\n- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.19\n[…]\nri\n  dependency-version: 1.19.4\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "build(deps-dev): bump nokogiri from 1.19.3 to 1.19.4 in /docs (#768)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-06T21:30:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e9fc58367c1696a2d857a733e44873d2a3931ac3",
          "body": "…7d510fd35b6b097c50b4870cf2f54800cc93",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for d561…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-06-05T15:25:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d5617d510fd35b6b097c50b4870cf2f54800cc93",
          "body": null,
          "is_bot": false,
          "headline": "build: switch release workflow",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-05T13:57:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "18d7d58f92fab4105a759aa92d49291dff9a778c",
          "body": null,
          "is_bot": false,
          "headline": "build: keep matrix steps going regardless of sibling errors",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-04T19:53:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3e0ec5c2f3716a28469e821fa6e4bae74413d72f",
          "body": null,
          "is_bot": false,
          "headline": "cmd/server: simplify libpostalWarm",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-04T19:28:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "33ccac933016cee3aa3e85bd0350bc3f850592bf",
          "body": "The libpostal warm-up and the initial OFAC/list data load are independent\nand among the heaviest startup steps, but currently run sequentially. Run\nthe warm-up concurrently with the data load on multi-CPU hosts and join it\nbefore the HTTP server serves. Single-CPU hosts keep the original inline path.\n\nCo-authored-by: akamick86 <12109250+akamick86@users.noreply.github.com>",
          "is_bot": false,
          "headline": "perf: warm up libpostal concurrently with the initial data load (#763)",
          "author_name": "akamick86",
          "author_login": "akamick86",
          "committed_at": "2026-06-04T19:25:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8c74e2ff9c97e5b8cab2be52ad1c388aab403fe2",
          "body": "…2dbe5d38c70bf982946ec142cf0789ad9b",
          "is_bot": false,
          "headline": "add moov-io/watchman OFAC Benchmarks (go) benchmark result for 5aeece…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-06-04T15:37:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5aeece2dbe5d38c70bf982946ec142cf0789ad9b",
          "body": "…6721424d7fab9f00153f037a9a6eb552e4c4",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for ed3b…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-06-04T15:37:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ed3b6721424d7fab9f00153f037a9a6eb552e4c4",
          "body": null,
          "is_bot": false,
          "headline": "docs: update memory usage of libpostal",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-04T14:29:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5fe63978034207636463df6f1746f5e19a3c0fbb",
          "body": null,
          "is_bot": false,
          "headline": "docs: close paren",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-03T22:27:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9a3f9ca8579a2ea0817f814af23622c3e09f6051",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update all (#761)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-03T20:24:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "53dfcac4020b4a94f77df0e7cceca61052fb56c4",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update all (#760)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-03T15:38:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "87874628fef9119a81c99255b01379937e3123ba",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update all (#759)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-03T14:50:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "705f0691b07428de9c78d203932960f9f6debb67",
          "body": null,
          "is_bot": false,
          "headline": "build: correctly set libpostal build tags",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-03T13:58:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2b96e95ba04fab4c8255ccb2f1d4ea4e2898a9fc",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update all (#757)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-03T13:42:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d4bf4b6b804778e43b3aa93beffcf6f744a69bd8",
          "body": "Fixes: https://github.com/moov-io/watchman/issues/756",
          "is_bot": false,
          "headline": "fix: init libpostal before accepting requests (#758)",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-03T13:42:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0345eb3f4ad70112327a34734fe207c3f41fc63",
          "body": "…432ee311687659c0942e12ffe4c2d2604622",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for f8a9…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-06-02T16:52:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f8a9432ee311687659c0942e12ffe4c2d2604622",
          "body": null,
          "is_bot": false,
          "headline": "docs: fix examples",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-02T15:31:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7dfaec936ccedbde41883b4c78552f73d50465dd",
          "body": null,
          "is_bot": false,
          "headline": "fix: read Query in SearchResponse",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-02T15:29:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e8b09dbdbfb217491252a4722fd749ae4b44dd94",
          "body": null,
          "is_bot": false,
          "headline": "docs: misc improvements",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-06-02T15:29:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "02a8e972e08bd40fae80abf7989e205a2cf42b61",
          "body": "* prompt: add IgnoredDownloadErrors config to suppress per-list download failures\n\nOperators can now mark specific source lists as non-fatal during RefreshAll\nvia the IgnoredDownloadErrors YAML field or IGNORED_DOWNLOAD_ERRORS env var\n(comma-separated, same format as IncludedLists).\n\n- download.Conf\n[…]\nSENZING_CONCURRENT_DOWNLOADS\n\n---------\n\nCo-authored-by: agent-pipeline <pipeline@moov.io>\nCo-authored-by: Claude Opus 4.6 <noreply@anthropic.com>\nCo-authored-by: Adam Shannon <adamkshannon@gmail.com>",
          "is_bot": false,
          "headline": "feat(download): watchman ignored download errors (#748)",
          "author_name": "Benjamin Ross",
          "author_login": "bpross",
          "committed_at": "2026-06-02T14:33:52Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9a55f441aebb45d24815920e58b4b86671a4d31b",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(config): migrate config renovate.json (#754)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-02T13:32:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "338d2c2b6c972f74a5d2dfc72daa8e951c07d5f9",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update all (#751)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-02T13:20:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "161ab69ac20f4504354cfc263113af1dbe542c38",
          "body": "…fc1121079c574358a20c82f128f294d972",
          "is_bot": false,
          "headline": "add moov-io/watchman OFAC Benchmarks (go) benchmark result for 757a44…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-05-30T14:01:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "757a44fc1121079c574358a20c82f128f294d972",
          "body": "…ea5a2e04b27c832aae0064d9d5fc306fbce2",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for 4248…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-05-30T14:01:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4248ea5a2e04b27c832aae0064d9d5fc306fbce2",
          "body": null,
          "is_bot": false,
          "headline": "Add test to ensure governmentIDPatterns markers are lowercase ASCII",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-29T19:38:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca327793994077f7153ad8e23a3f9a7fb51c3332",
          "body": "…(#753)\n\nNormalizing an entity calls whatlanggo.Detect on every name and alternate\nname to choose a stopword list. Profiling the OFAC list build showed that\nsingle call is roughly three quarters of the entity preparation time, and it\nruns once per name while indexing every source at startup and on r\n[…]\n 1.12s   (-57%)\n    bytes                       987Mi -> 487Mi   (-51%)\n    allocations                 7.45M -> 3.94M   (-47%)\n\nCo-authored-by: akamick86 <12109250+akamick86@users.noreply.github.com>",
          "is_bot": false,
          "headline": "perf: skip language detection when it cannot change stopword removal …",
          "author_name": "akamick86",
          "author_login": "akamick86",
          "committed_at": "2026-05-29T19:01:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "96a4c0a5c13b04e193c926b3ae3605a26cad1c1d",
          "body": "… (#752)\n\nparseGovernmentIDs runs every government ID regex against every OFAC\nremark while grouping SDNs into entities. That is roughly twenty\ncase-insensitive regexes per remark, and it shows up as one of the\nheavier steps when the OFAC list is prepared at startup.\n\nEach pattern is anchored on a f\n[…]\nurrent OFAC SDN data (about 19k records), single core:\n\n    parseGovernmentIDs   649ms -> 154ms   (-76%, allocations unchanged)\n\nCo-authored-by: akamick86 <12109250+akamick86@users.noreply.github.com>",
          "is_bot": false,
          "headline": "perf: skip non-matching OFAC government ID regexes during preparation…",
          "author_name": "akamick86",
          "author_login": "akamick86",
          "committed_at": "2026-05-29T18:59:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "055aa87c4bd08e1d5cade020cc42dd7c51fd76e2",
          "body": "…293bc8f9da5666007964efe1adfe64193a",
          "is_bot": false,
          "headline": "add moov-io/watchman OFAC Benchmarks (go) benchmark result for f1b07b…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-05-29T16:06:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f1b07b293bc8f9da5666007964efe1adfe64193a",
          "body": "…57df02292e076e30afeb99d649c239211d21",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for 38bc…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-05-29T16:06:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "38bc57df02292e076e30afeb99d649c239211d21",
          "body": "* address: switch to moov-io/gopostal (with concurrent access)\n\n* build: setup tests using libpostal\n\n* chore: update moov-io/gopostal",
          "is_bot": false,
          "headline": "address: switch to moov-io/gopostal (#750)",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-28T17:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5159977c42f00ed576e64c46d10a8463806402bb",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update opentelemetry-go monorepo to v1.44.0 (#749)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-28T02:56:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d5606660aa0b3f0b28de847dd859c611184e4e3",
          "body": null,
          "is_bot": false,
          "headline": "docs: ToC for source lists and persistence",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-27T18:42:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c0301d71c291a147b2f5ea29c05ecd2cf4172b96",
          "body": null,
          "is_bot": false,
          "headline": "docs: mention watchman-cache",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-27T18:36:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ea565937bf86af3df926d5450211721b1ed17ffb",
          "body": "…e35cb23c297aecdbf907c61ab4871e343de1",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for 985d…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-05-27T16:08:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "985de35cb23c297aecdbf907c61ab4871e343de1",
          "body": null,
          "is_bot": false,
          "headline": "chore: fmt",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-26T19:53:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ffa223c7b329412ec18e41aaa10193f3b58986da",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update all (#747)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-26T19:52:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9c580bd54d07b0aa27d75a5a6c5a5aa5e83c2774",
          "body": null,
          "is_bot": false,
          "headline": "test: latest value updates",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-26T19:51:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "73b8d7141363495ca51377978028b78a7077215a",
          "body": null,
          "is_bot": false,
          "headline": "chore: remove commercial libraries",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-26T19:49:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f5a37a2d89f5cd91940c6bb8ab40ab2235cc3735",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(deps): update all (#746)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-22T13:51:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "19f37147355b66ee65ed48d0dcf7abd30e0cf21b",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update all (#745)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-21T21:34:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5166a5608ed080898e63e489741bdfc673498559",
          "body": "Bumps [faraday](https://github.com/lostisland/faraday) from 2.14.1 to 2.14.2.\n- [Release notes](https://github.com/lostisland/faraday/releases)\n- [Changelog](https://github.com/lostisland/faraday/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/lostisland/faraday/compare/v2.14.1...v2.14.2)\n\n--\n[…]\nay\n  dependency-version: 2.14.2\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "build(deps-dev): bump faraday from 2.14.1 to 2.14.2 in /docs (#744)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-21T21:34:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b9eeb2b44758e4e51919fc378f1521c73f659e4d",
          "body": "…rithm\n\nstringscore: add Soundex phonetic matching algorithm",
          "is_bot": false,
          "headline": "Merge pull request #743 from SamOluwadamilare300/feature/soundex-algo…",
          "author_name": "Sam O. Afolabi",
          "author_login": "samofolabi",
          "committed_at": "2026-05-21T21:33:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9e99d895b40b1c9de3e4e292551becf0580bf307",
          "body": null,
          "is_bot": false,
          "headline": "docs: openapi improvements (thanks grok build)",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-21T20:29:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6e1a13e493a2afd309e5d4607fe14e439561cee4",
          "body": "…7d620d97e4a3137ec9c7d9d4e45f00186e15",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for 8ab8…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-05-16T13:53:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8ab87d620d97e4a3137ec9c7d9d4e45f00186e15",
          "body": "fix(deps): update all",
          "is_bot": false,
          "headline": "Merge pull request #738 from moov-io/renovate/all",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-15T15:14:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "54594e902b8588cb38922ac28e5d5ea5adf92c2f",
          "body": null,
          "is_bot": true,
          "headline": "fix(deps): update all",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-15T15:13:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6e59735eca8af6d2f60b0eefeb550c675def16a8",
          "body": "…-1.19.3\n\nbuild(deps-dev): bump nokogiri from 1.19.1 to 1.19.3 in /docs",
          "is_bot": false,
          "headline": "Merge pull request #741 from moov-io/dependabot/bundler/docs/nokogiri…",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-15T15:11:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9a34f1f1a9253125955e5e9fd921abd155e14a48",
          "body": "fix(docs): Updating API spec",
          "is_bot": false,
          "headline": "Merge pull request #742 from elliotcourant/fix/update-api-spec",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-15T15:06:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "48c8a1e0f834cb69877f58f0108c0d1c98b174c6",
          "body": "Query params are now well defined rather than hand waved into a single\nparam.",
          "is_bot": false,
          "headline": "fix: Resolving first gemini comment",
          "author_name": "Elliot Courant",
          "author_login": "elliotcourant",
          "committed_at": "2026-05-11T21:34:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ccb002442882474fe78a835372cf7bb69b1f002e",
          "body": "The API spec seems to have drifted a bit over time and I didnt find\nanything for auto generating the file from code? I did use AI to help\ncompose and double check a lot of these changes though:\n\n- renamed `Entity.source` to `sourceList` and `Entity.type` to\n  `entityType`\n- added `GET /v2/export/{fi\n[…]\nce, government ID, affiliation, sanctions\n  info, historical info)\n- documented format and gov_type query params\n- date fields are date-time instead of just date because of how go\n  marshals time.Time",
          "is_bot": false,
          "headline": "fix(docs): Updating API spec",
          "author_name": "Elliot Courant",
          "author_login": "elliotcourant",
          "committed_at": "2026-05-11T21:21:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "642825ef23e805f88fe6f713f89eeaa6383b235b",
          "body": "Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.19.1 to 1.19.3.\n- [Release notes](https://github.com/sparklemotion/nokogiri/releases)\n- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.19.1...v1.19.3)\n\n---\nupdated-dependencies:\n- dependency-name: nokogiri\n  dependency-version: 1.19.3\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
          "is_bot": true,
          "headline": "build(deps-dev): bump nokogiri from 1.19.1 to 1.19.3 in /docs",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-08T11:32:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d0a362b806ae6201d234f5866fa8a5a43ab72a7",
          "body": "…e0569e84db762b67ddd504a1c9f7597a49",
          "is_bot": false,
          "headline": "add moov-io/watchman OFAC Benchmarks (go) benchmark result for 061527…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-05-02T13:43:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "061527e0569e84db762b67ddd504a1c9f7597a49",
          "body": "…3cb1adb51fbcb6d441352f714f6ed876c666",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for fe02…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-05-02T13:43:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fe023cb1adb51fbcb6d441352f714f6ed876c666",
          "body": "…nt-identity-stamped-responses\n\nfeat(mcp): stamp agent identity into search_entities responses",
          "is_bot": false,
          "headline": "Merge pull request #739 from MorganaFuture/MorganaFuture/feat/mcp-age…",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-05-01T16:49:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6ed132b3dcc43d587875e5c0b9055cf850cfe8ea",
          "body": "Wire up agentFromContext (previously dead code) to log the requesting\nagent for audit trails and include AgentContext in the response envelope.\nAdd includeDetails flag to expose field-level SimilarityScore breakdowns.",
          "is_bot": false,
          "headline": "feat(mcp): stamp agent identity into search_entities responses",
          "author_name": "MorganaFuture",
          "author_login": "MorganaFuture",
          "committed_at": "2026-05-01T16:36:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1c52198b11dd87fd5bee6d0dffe8bd7d6c53cf02",
          "body": "…3a2b960775c89968cb5affdf7b3c7a56c9ff",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for d6cc…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-04-29T14:27:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d6cc3a2b960775c89968cb5affdf7b3c7a56c9ff",
          "body": null,
          "is_bot": false,
          "headline": "build: install curl for a health check",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-28T22:40:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0b09d460f7fd73768e933dc98e25fb9824368710",
          "body": "…7807117e45ac16f1fc8590eda3fbbbcec0c2",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for aefe…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-04-24T14:02:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aefe7807117e45ac16f1fc8590eda3fbbbcec0c2",
          "body": "chore(deps): update all",
          "is_bot": false,
          "headline": "Merge pull request #737 from moov-io/renovate/all",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-23T14:30:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8bd60b1c867afd3edd1fab2eb848f56a4bdf7ed9",
          "body": "…/jackc/pgx/v5-5.9.2\n\nbuild(deps): bump github.com/jackc/pgx/v5 from 5.9.0 to 5.9.2",
          "is_bot": false,
          "headline": "Merge pull request #736 from moov-io/dependabot/go_modules/github.com…",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-23T14:30:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "63ac40e5fb41ba1e787c5f385541a3af0f03001a",
          "body": "…a8f1274b161721143810953cc184184934",
          "is_bot": false,
          "headline": "add moov-io/watchman OFAC Benchmarks (go) benchmark result for cc4318…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-04-23T14:07:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cc4318a8f1274b161721143810953cc184184934",
          "body": "…c45ab8eb7cd97b453259e0232fcfad65e40e",
          "is_bot": false,
          "headline": "add moov-io/watchman Common Benchmarks (go) benchmark result for 19bc…",
          "author_name": "github-action-benchmark",
          "author_login": null,
          "committed_at": "2026-04-23T14:07:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d25cb4d42b66ce88ee9515306fb666260bf5fae2",
          "body": null,
          "is_bot": true,
          "headline": "chore(deps): update all",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-04-23T05:34:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "19bcc45ab8eb7cd97b453259e0232fcfad65e40e",
          "body": null,
          "is_bot": false,
          "headline": "docs: clarify PostalPool warning",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T22:31:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f74fe32d61a24c2f27b76824b2ac2ab6c50d47e4",
          "body": null,
          "is_bot": false,
          "headline": "docs: caution around PostalPool usage",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T22:28:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fccd25a412f3019780987a6f6e77d16afd1e0e1e",
          "body": null,
          "is_bot": false,
          "headline": "docs: include page for libpostal",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T22:24:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b7423eb117ee4ccaefeaa8ec8e011f6de41fa958",
          "body": "Bumps [github.com/jackc/pgx/v5](https://github.com/jackc/pgx) from 5.9.0 to 5.9.2.\n- [Changelog](https://github.com/jackc/pgx/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/jackc/pgx/compare/v5.9.0...v5.9.2)\n\n---\nupdated-dependencies:\n- dependency-name: github.com/jackc/pgx/v5\n  dependency-version: 5.9.2\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
          "is_bot": true,
          "headline": "build(deps): bump github.com/jackc/pgx/v5 from 5.9.0 to 5.9.2",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-04-22T22:18:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c8c37449d2db431e45b5809daf4a0e8b8dd658bd",
          "body": null,
          "is_bot": false,
          "headline": "docs: point to included lists config",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T22:15:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3ddad3e60c2b05351c0e418106e2b25dd1d55520",
          "body": null,
          "is_bot": false,
          "headline": "docs: update list options",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T22:13:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dbcc659772327005d8c012fc65b60fde9f812a74",
          "body": null,
          "is_bot": false,
          "headline": "docs: fix indent for MCP config",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T22:10:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "217cb2e74857f3b39319711df5d4e8bface33378",
          "body": null,
          "is_bot": false,
          "headline": "docs: call out OpenSanctions and Senzing",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T22:07:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f1f87a9d56b378a3f9d332b322bd6563d6b06dfa",
          "body": null,
          "is_bot": false,
          "headline": "docs: improve MCP/MCPS sections",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T22:06:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5f0cdf07de6a8df3e56919d7fbb71c4a2f5826b4",
          "body": null,
          "is_bot": false,
          "headline": "chore: tidy deps",
          "author_name": "Adam Shannon",
          "author_login": "adamdecaf",
          "committed_at": "2026-04-22T21:43:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 433,
      "latest_release_at": "2026-07-29T17:29:12Z",
      "latest_release_tag": "v0.65.1",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 39,
      "days_since_latest_release": 1,
      "mean_days_between_releases": 18.8
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 62,
      "has_issue_template": true,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "github.com/moov-io/watchman",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/moov-io/watchman",
          "is_deprecated": false,
          "latest_version": "v0.65.1",
          "repository_url": "https://github.com/moov-io/watchman",
          "versions_count": 156,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-29T17:02:34Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 1
        }
      ]
    },
    "popularity": {
      "forks": 129,
      "stars": 497,
      "watchers": 14,
      "fork_history": {
        "days": [
          {
            "date": "2019-01-03",
            "count": 1
          },
          {
            "date": "2019-01-08",
            "count": 1
          },
          {
            "date": "2019-05-14",
            "count": 1
          },
          {
            "date": "2019-06-28",
            "count": 1
          },
          {
            "date": "2019-07-30",
            "count": 1
          },
          {
            "date": "2019-08-06",
            "count": 1
          },
          {
            "date": "2019-09-06",
            "count": 1
          },
          {
            "date": "2019-09-28",
            "count": 1
          },
          {
            "date": "2019-10-01",
            "count": 1
          },
          {
            "date": "2019-10-05",
            "count": 1
          },
          {
            "date": "2019-12-02",
            "count": 1
          },
          {
            "date": "2020-03-10",
            "count": 1
          },
          {
            "date": "2020-03-30",
            "count": 1
          },
          {
            "date": "2020-08-06",
            "count": 1
          },
          {
            "date": "2020-08-12",
            "count": 1
          },
          {
            "date": "2020-08-28",
            "count": 2
          },
          {
            "date": "2020-09-16",
            "count": 1
          },
          {
            "date": "2020-09-22",
            "count": 1
          },
          {
            "date": "2020-09-30",
            "count": 2
          },
          {
            "date": "2020-10-05",
            "count": 1
          },
          {
            "date": "2020-11-04",
            "count": 1
          },
          {
            "date": "2020-11-06",
            "count": 1
          },
          {
            "date": "2020-11-23",
            "count": 1
          },
          {
            "date": "2020-12-05",
            "count": 1
          },
          {
            "date": "2020-12-07",
            "count": 1
          },
          {
            "date": "2021-01-19",
            "count": 1
          },
          {
            "date": "2021-02-09",
            "count": 2
          },
          {
            "date": "2021-04-30",
            "count": 1
          },
          {
            "date": "2021-05-04",
            "count": 1
          },
          {
            "date": "2021-09-15",
            "count": 1
          },
          {
            "date": "2021-11-09",
            "count": 1
          },
          {
            "date": "2021-11-16",
            "count": 1
          },
          {
            "date": "2021-12-02",
            "count": 1
          },
          {
            "date": "2021-12-22",
            "count": 1
          },
          {
            "date": "2022-03-20",
            "count": 1
          },
          {
            "date": "2022-05-24",
            "count": 1
          },
          {
            "date": "2022-06-02",
            "count": 1
          },
          {
            "date": "2022-06-03",
            "count": 1
          },
          {
            "date": "2022-06-07",
            "count": 1
          },
          {
            "date": "2022-06-18",
            "count": 1
          },
          {
            "date": "2022-07-10",
            "count": 1
          },
          {
            "date": "2022-07-12",
            "count": 1
          },
          {
            "date": "2022-08-19",
            "count": 1
          },
          {
            "date": "2022-11-08",
            "count": 1
          },
          {
            "date": "2022-12-09",
            "count": 1
          },
          {
            "date": "2023-02-26",
            "count": 1
          },
          {
            "date": "2023-03-29",
            "count": 1
          },
          {
            "date": "2023-06-22",
            "count": 1
          },
          {
            "date": "2023-06-25",
            "count": 1
          },
          {
            "date": "2023-06-30",
            "count": 1
          },
          {
            "date": "2023-08-19",
            "count": 1
          },
          {
            "date": "2023-08-27",
            "count": 1
          },
          {
            "date": "2023-09-06",
            "count": 1
          },
          {
            "date": "2023-09-12",
            "count": 1
          },
          {
            "date": "2023-09-13",
            "count": 1
          },
          {
            "date": "2023-09-23",
            "count": 1
          },
          {
            "date": "2023-11-01",
            "count": 1
          },
          {
            "date": "2023-11-08",
            "count": 1
          },
          {
            "date": "2023-11-09",
            "count": 1
          },
          {
            "date": "2023-11-30",
            "count": 1
          },
          {
            "date": "2023-12-06",
            "count": 1
          },
          {
            "date": "2023-12-07",
            "count": 1
          },
          {
            "date": "2023-12-29",
            "count": 1
          },
          {
            "date": "2024-01-15",
            "count": 1
          },
          {
            "date": "2024-02-08",
            "count": 1
          },
          {
            "date": "2024-02-28",
            "count": 1
          },
          {
            "date": "2024-03-06",
            "count": 1
          },
          {
            "date": "2024-03-07",
            "count": 1
          },
          {
            "date": "2024-03-19",
            "count": 1
          },
          {
            "date": "2024-05-10",
            "count": 1
          },
          {
            "date": "2024-05-14",
            "count": 1
          },
          {
            "date": "2024-06-26",
            "count": 1
          },
          {
            "date": "2024-08-03",
            "count": 1
          },
          {
            "date": "2024-08-31",
            "count": 1
          },
          {
            "date": "2024-09-19",
            "count": 1
          },
          {
            "date": "2024-11-15",
            "count": 1
          },
          {
            "date": "2024-11-28",
            "count": 1
          },
          {
            "date": "2024-12-07",
            "count": 1
          },
          {
            "date": "2024-12-15",
            "count": 1
          },
          {
            "date": "2025-01-29",
            "count": 1
          },
          {
            "date": "2025-02-15",
            "count": 1
          },
          {
            "date": "2025-03-01",
            "count": 1
          },
          {
            "date": "2025-03-03",
            "count": 1
          },
          {
            "date": "2025-03-16",
            "count": 1
          },
          {
            "date": "2025-04-08",
            "count": 1
          },
          {
            "date": "2025-05-05",
            "count": 1
          },
          {
            "date": "2025-05-28",
            "count": 1
          },
          {
            "date": "2025-07-10",
            "count": 1
          },
          {
            "date": "2025-07-29",
            "count": 1
          },
          {
            "date": "2025-08-01",
            "count": 1
          },
          {
            "date": "2025-08-28",
            "count": 1
          },
          {
            "date": "2025-09-07",
            "count": 1
          },
          {
            "date": "2025-09-27",
            "count": 1
          },
          {
            "date": "2025-10-01",
            "count": 1
          },
          {
            "date": "2025-10-09",
            "count": 1
          },
          {
            "date": "2025-10-30",
            "count": 1
          },
          {
            "date": "2025-11-16",
            "count": 1
          },
          {
            "date": "2025-11-17",
            "count": 1
          },
          {
            "date": "2025-11-20",
            "count": 2
          },
          {
            "date": "2025-12-01",
            "count": 1
          },
          {
            "date": "2025-12-09",
            "count": 1
          },
          {
            "date": "2025-12-10",
            "count": 1
          },
          {
            "date": "2025-12-12",
            "count": 1
          },
          {
            "date": "2025-12-23",
            "count": 1
          },
          {
            "date": "2026-01-24",
            "count": 1
          },
          {
            "date": "2026-02-02",
            "count": 1
          },
          {
            "date": "2026-02-04",
            "count": 1
          },
          {
            "date": "2026-02-05",
            "count": 1
          },
          {
            "date": "2026-02-22",
            "count": 1
          },
          {
            "date": "2026-02-23",
            "count": 1
          },
          {
            "date": "2026-02-24",
            "count": 1
          },
          {
            "date": "2026-03-06",
            "count": 1
          },
          {
            "date": "2026-04-02",
            "count": 1
          },
          {
            "date": "2026-04-28",
            "count": 1
          },
          {
            "date": "2026-04-30",
            "count": 1
          },
          {
            "date": "2026-05-04",
            "count": 1
          },
          {
            "date": "2026-05-11",
            "count": 1
          },
          {
            "date": "2026-05-12",
            "count": 1
          },
          {
            "date": "2026-05-26",
            "count": 1
          },
          {
            "date": "2026-05-29",
            "count": 1
          },
          {
            "date": "2026-06-10",
            "count": 1
          },
          {
            "date": "2026-06-21",
            "count": 1
          },
          {
            "date": "2026-07-25",
            "count": 1
          },
          {
            "date": "2026-07-28",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 128,
        "total_forks": 129
      },
      "star_history": null,
      "open_issues_and_prs": 11
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": true,
      "bootstrap_files": [
        "makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [
        "go.mod"
      ],
      "largest_source_bytes": 428670,
      "source_files_sampled": 303,
      "oversized_source_files": 3,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "docs/Gemfile",
        "go.mod"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.54.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5932"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 22
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "unknown": 1
        },
        "advisory_count": 1,
        "affected_count": 1,
        "assessed_count": 251,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "go",
        "rubygems"
      ],
      "dependencies": [
        {
          "name": "fyne.io/fyne/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.8.0"
        },
        {
          "name": "github.com/OpenRouterTeam/go-sdk",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.7.10"
        },
        {
          "name": "github.com/abadojack/whatlanggo",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.0.1"
        },
        {
          "name": "github.com/adamdecaf/merge",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.2"
        },
        {
          "name": "github.com/antchfx/htmlquery",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.3.6"
        },
        {
          "name": "github.com/bbalet/stopwords",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.0.0"
        },
        {
          "name": "github.com/ccoveille/go-safecast/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.1"
        },
        {
          "name": "github.com/dongri/phonenumber",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.1.12"
        },
        {
          "name": "github.com/gorilla/mux",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.8.1"
        },
        {
          "name": "github.com/hashicorp/go-retryablehttp",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.7.8"
        },
        {
          "name": "github.com/hashicorp/golang-lru/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.7"
        },
        {
          "name": "github.com/jmoiron/sqlx",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.4.0"
        },
        {
          "name": "github.com/modelcontextprotocol/go-sdk",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.7.0"
        },
        {
          "name": "github.com/moov-io/base",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.61.3"
        },
        {
          "name": "github.com/moov-io/gopostal",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.1.2"
        },
        {
          "name": "github.com/moov-io/iso3166",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.4.0"
        },
        {
          "name": "github.com/pariz/gountries",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.1.6"
        },
        {
          "name": "github.com/stretchr/testify",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.11.1"
        },
        {
          "name": "github.com/urfave/cli/v3",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.10.1"
        },
        {
          "name": "github.com/vmihailenco/msgpack/v5",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v5.4.1"
        },
        {
          "name": "github.com/xrash/smetrics",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20250705151800-55b8f293f342"
        },
        {
          "name": "go.opentelemetry.io/otel",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.44.0"
        },
        {
          "name": "go.opentelemetry.io/otel/trace",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.44.0"
        },
        {
          "name": "go.uber.org/automaxprocs",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        },
        {
          "name": "golang.org/x/net",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.57.0"
        },
        {
          "name": "golang.org/x/sync",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.22.0"
        },
        {
          "name": "golang.org/x/text",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.40.0"
        },
        {
          "name": "golang.org/x/time",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.15.0"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "fyne.io/fyne/v2",
            "direct": true,
            "version": "v2.8.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/abadojack/whatlanggo",
            "direct": true,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/adamdecaf/merge",
            "direct": true,
            "version": "v0.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/antchfx/htmlquery",
            "direct": true,
            "version": "v1.3.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bbalet/stopwords",
            "direct": true,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ccoveille/go-safecast/v2",
            "direct": true,
            "version": "v2.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/dongri/phonenumber",
            "direct": true,
            "version": "v0.1.12",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gorilla/mux",
            "direct": true,
            "version": "v1.8.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hashicorp/go-retryablehttp",
            "direct": true,
            "version": "v0.7.8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hashicorp/golang-lru/v2",
            "direct": true,
            "version": "v2.0.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jmoiron/sqlx",
            "direct": true,
            "version": "v1.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/modelcontextprotocol/go-sdk",
            "direct": true,
            "version": "v1.7.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/moov-io/base",
            "direct": true,
            "version": "v0.61.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/moov-io/gopostal",
            "direct": true,
            "version": "v0.1.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/moov-io/iso3166",
            "direct": true,
            "version": "v0.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/openrouterteam/go-sdk",
            "direct": true,
            "version": "v0.7.10",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pariz/gountries",
            "direct": true,
            "version": "v0.1.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/stretchr/testify",
            "direct": true,
            "version": "v1.11.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/urfave/cli/v3",
            "direct": true,
            "version": "v3.10.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/vmihailenco/msgpack/v5",
            "direct": true,
            "version": "v5.4.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/xrash/smetrics",
            "direct": true,
            "version": "v0.0.0-20250705151800-55b8f293f342",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel",
            "direct": true,
            "version": "v1.44.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/trace",
            "direct": true,
            "version": "v1.44.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/automaxprocs",
            "direct": true,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": true,
            "version": "v0.57.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": true,
            "version": "v0.22.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": true,
            "version": "v0.40.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/time",
            "direct": true,
            "version": "v0.15.0",
            "ecosystem": "go"
          },
          {
            "name": "cel.dev/expr",
            "direct": false,
            "version": "v0.25.1",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go",
            "direct": false,
            "version": "v0.123.0",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/alloydb",
            "direct": false,
            "version": "v1.26.0",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/alloydbconn",
            "direct": false,
            "version": "v1.18.3",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/auth",
            "direct": false,
            "version": "v0.20.0",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/auth/oauth2adapt",
            "direct": false,
            "version": "v0.2.8",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/compute/metadata",
            "direct": false,
            "version": "v0.9.0",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/iam",
            "direct": false,
            "version": "v1.11.0",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/longrunning",
            "direct": false,
            "version": "v0.13.0",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/monitoring",
            "direct": false,
            "version": "v1.29.0",
            "ecosystem": "go"
          },
          {
            "name": "cloud.google.com/go/spanner",
            "direct": false,
            "version": "v1.91.0",
            "ecosystem": "go"
          },
          {
            "name": "filippo.io/edwards25519",
            "direct": false,
            "version": "v1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "fyne.io/systray",
            "direct": false,
            "version": "v1.12.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/antchfx/xpath",
            "direct": false,
            "version": "v1.3.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/anthonynsimon/bild",
            "direct": false,
            "version": "v0.14.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/beorn7/perks",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/burntsushi/toml",
            "direct": false,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cenkalti/backoff/v5",
            "direct": false,
            "version": "v5.0.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cespare/xxhash/v2",
            "direct": false,
            "version": "v2.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/clipperhouse/uax29/v2",
            "direct": false,
            "version": "v2.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cncf/xds/go",
            "direct": false,
            "version": "v0.0.0-20260202195803-dba9d589def2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/davecgh/go-spew",
            "direct": false,
            "version": "v1.1.2-0.20180830191138-d8f796af33cc",
            "ecosystem": "go"
          },
          {
            "name": "github.com/envoyproxy/go-control-plane/envoy",
            "direct": false,
            "version": "v1.37.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/envoyproxy/protoc-gen-validate",
            "direct": false,
            "version": "v1.3.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/felixge/httpsnoop",
            "direct": false,
            "version": "v1.0.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fredbi/uri",
            "direct": false,
            "version": "v1.1.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fsnotify/fsnotify",
            "direct": false,
            "version": "v1.10.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fyne-io/gl-js",
            "direct": false,
            "version": "v0.2.1-0.20260315212741-029c47fd27e8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fyne-io/glfw-js",
            "direct": false,
            "version": "v0.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fyne-io/image",
            "direct": false,
            "version": "v0.1.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fyne-io/oksvg",
            "direct": false,
            "version": "v0.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-gl/gl",
            "direct": false,
            "version": "v0.0.0-20260331235117-4566fea9a276",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-gl/glfw/v3.4/glfw",
            "direct": false,
            "version": "v0.1.0-pre.1.0.20260707082822-2a407d02d01a",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-jose/go-jose/v4",
            "direct": false,
            "version": "v4.1.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-kit/kit",
            "direct": false,
            "version": "v0.13.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-kit/log",
            "direct": false,
            "version": "v0.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-logfmt/logfmt",
            "direct": false,
            "version": "v0.6.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-logr/logr",
            "direct": false,
            "version": "v1.4.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-logr/stdr",
            "direct": false,
            "version": "v1.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-sql-driver/mysql",
            "direct": false,
            "version": "v1.10.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-text/render",
            "direct": false,
            "version": "v0.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-text/typesetting",
            "direct": false,
            "version": "v0.3.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-viper/mapstructure/v2",
            "direct": false,
            "version": "v2.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gobuffalo/here",
            "direct": false,
            "version": "v0.6.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/godbus/dbus/v5",
            "direct": false,
            "version": "v5.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/golang-migrate/migrate/v4",
            "direct": false,
            "version": "v4.19.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/golang/groupcache",
            "direct": false,
            "version": "v0.0.0-20241129210726-2c02b8208cf8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/jsonschema-go",
            "direct": false,
            "version": "v0.4.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/s2a-go",
            "direct": false,
            "version": "v0.1.9",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/uuid",
            "direct": false,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/googleapis/enterprise-certificate-proxy",
            "direct": false,
            "version": "v0.3.15",
            "ecosystem": "go"
          },
          {
            "name": "github.com/googleapis/gax-go/v2",
            "direct": false,
            "version": "v2.22.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/googleapis/go-sql-spanner",
            "direct": false,
            "version": "v1.25.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/googlecloudplatform/grpc-gcp-go/grpcgcp",
            "direct": false,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/googlecloudplatform/opentelemetry-operations-go/detectors/gcp",
            "direct": false,
            "version": "v1.32.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/googlecloudplatform/opentelemetry-operations-go/exporter/metric",
            "direct": false,
            "version": "v0.56.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/googlecloudplatform/opentelemetry-operations-go/internal/resourcemapping",
            "direct": false,
            "version": "v0.56.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/grpc-ecosystem/grpc-gateway/v2",
            "direct": false,
            "version": "v2.29.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hack-pad/go-indexeddb",
            "direct": false,
            "version": "v0.3.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hack-pad/safejs",
            "direct": false,
            "version": "v0.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hashicorp/go-cleanhttp",
            "direct": false,
            "version": "v0.5.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/igrmk/treemap/v2",
            "direct": false,
            "version": "v2.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/pgpassfile",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/pgservicefile",
            "direct": false,
            "version": "v0.0.0-20240606120523-5a60cdf6a761",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/pgx/v5",
            "direct": false,
            "version": "v5.9.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/puddle/v2",
            "direct": false,
            "version": "v2.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jeandeaual/go-locale",
            "direct": false,
            "version": "v0.0.0-20250612000132-0ef82f21eade",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jsummers/gobmp",
            "direct": false,
            "version": "v0.0.0-20230614200233-a9de23ed2e25",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lib/pq",
            "direct": false,
            "version": "v1.12.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/markbates/pkger",
            "direct": false,
            "version": "v0.17.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-runewidth",
            "direct": false,
            "version": "v0.0.24",
            "ecosystem": "go"
          },
          {
            "name": "github.com/munnerz/goautoneg",
            "direct": false,
            "version": "v0.0.0-20191010083416-a7dc8b61c822",
            "ecosystem": "go"
          },
          {
            "name": "github.com/nfnt/resize",
            "direct": false,
            "version": "v0.0.0-20180221191011-83c6a9932646",
            "ecosystem": "go"
          },
          {
            "name": "github.com/nicksnyder/go-i18n/v2",
            "direct": false,
            "version": "v2.5.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pelletier/go-toml/v2",
            "direct": false,
            "version": "v2.3.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/planetscale/vtprotobuf",
            "direct": false,
            "version": "v0.6.1-0.20240319094008-0393e58bdf10",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pmezard/go-difflib",
            "direct": false,
            "version": "v1.0.1-0.20181226105442-5d4384ee4fb2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/client_golang",
            "direct": false,
            "version": "v1.23.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/client_model",
            "direct": false,
            "version": "v0.6.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/common",
            "direct": false,
            "version": "v0.67.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/procfs",
            "direct": false,
            "version": "v0.20.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rickar/cal/v2",
            "direct": false,
            "version": "v2.1.27",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rymdport/portal",
            "direct": false,
            "version": "v0.4.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagikazarmark/locafero",
            "direct": false,
            "version": "v0.12.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/segmentio/asm",
            "direct": false,
            "version": "v1.1.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/segmentio/encoding",
            "direct": false,
            "version": "v0.5.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spf13/afero",
            "direct": false,
            "version": "v1.15.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spf13/cast",
            "direct": false,
            "version": "v1.10.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spf13/pflag",
            "direct": false,
            "version": "v1.0.10",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spf13/viper",
            "direct": false,
            "version": "v1.21.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spiffe/go-spiffe/v2",
            "direct": false,
            "version": "v2.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spyzhov/ajson",
            "direct": false,
            "version": "v0.9.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/srwiley/oksvg",
            "direct": false,
            "version": "v0.0.0-20221011165216-be6e8873101c",
            "ecosystem": "go"
          },
          {
            "name": "github.com/srwiley/rasterx",
            "direct": false,
            "version": "v0.0.0-20220730225603-2ab79fcdd4ef",
            "ecosystem": "go"
          },
          {
            "name": "github.com/subosito/gotenv",
            "direct": false,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/vmihailenco/tagparser/v2",
            "direct": false,
            "version": "v2.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/yosida95/uritemplate/v3",
            "direct": false,
            "version": "v3.0.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/yuin/goldmark",
            "direct": false,
            "version": "v1.8.2",
            "ecosystem": "go"
          },
          {
            "name": "go.opencensus.io",
            "direct": false,
            "version": "v0.24.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/auto/sdk",
            "direct": false,
            "version": "v1.2.1",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/contrib/detectors/gcp",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc",
            "direct": false,
            "version": "v0.68.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",
            "direct": false,
            "version": "v0.68.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/exporters/stdout/stdouttrace",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/metric",
            "direct": false,
            "version": "v1.44.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/sdk",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/sdk/metric",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/proto/otlp",
            "direct": false,
            "version": "v1.10.0",
            "ecosystem": "go"
          },
          {
            "name": "go.yaml.in/yaml/v2",
            "direct": false,
            "version": "v2.4.4",
            "ecosystem": "go"
          },
          {
            "name": "go.yaml.in/yaml/v3",
            "direct": false,
            "version": "v3.0.4",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.54.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/exp",
            "direct": false,
            "version": "v0.0.0-20260112195511-716be5621a96",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/image",
            "direct": false,
            "version": "v0.43.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/oauth2",
            "direct": false,
            "version": "v0.36.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.47.0",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/api",
            "direct": false,
            "version": "v0.278.0",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/genproto",
            "direct": false,
            "version": "v0.0.0-20260504160031-60b97b32f348",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/genproto/googleapis/api",
            "direct": false,
            "version": "v0.0.0-20260504160031-60b97b32f348",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/genproto/googleapis/rpc",
            "direct": false,
            "version": "v0.0.0-20260511170946-3700d4141b60",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/grpc",
            "direct": false,
            "version": "v1.82.1",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": false,
            "version": "v1.36.11",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/yaml.v2",
            "direct": false,
            "version": "v2.4.0",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/yaml.v3",
            "direct": false,
            "version": "v3.0.1",
            "ecosystem": "go"
          },
          {
            "name": "activesupport",
            "direct": false,
            "version": "7.2.3.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "addressable",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "base64",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "benchmark",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "bigdecimal",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "bulma-clean-theme",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "coffee-script",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "coffee-script-source",
            "direct": false,
            "version": "1.12.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "colorator",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "commonmarker",
            "direct": false,
            "version": "0.23.10",
            "ecosystem": "rubygems"
          },
          {
            "name": "concurrent-ruby",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "rubygems"
          },
          {
            "name": "connection_pool",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "csv",
            "direct": false,
            "version": "3.3.5",
            "ecosystem": "rubygems"
          },
          {
            "name": "dnsruby",
            "direct": false,
            "version": "1.72.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "drb",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "rubygems"
          },
          {
            "name": "em-websocket",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "rubygems"
          },
          {
            "name": "ethon",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "eventmachine",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "rubygems"
          },
          {
            "name": "execjs",
            "direct": false,
            "version": "2.9.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "faraday",
            "direct": false,
            "version": "2.14.3",
            "ecosystem": "rubygems"
          },
          {
            "name": "faraday-net_http",
            "direct": false,
            "version": "3.4.4",
            "ecosystem": "rubygems"
          },
          {
            "name": "ffi",
            "direct": false,
            "version": "1.17.4",
            "ecosystem": "rubygems"
          },
          {
            "name": "forwardable-extended",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "gemoji",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "github-pages",
            "direct": false,
            "version": "232",
            "ecosystem": "rubygems"
          },
          {
            "name": "github-pages-health-check",
            "direct": false,
            "version": "1.18.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "html-pipeline",
            "direct": false,
            "version": "2.14.3",
            "ecosystem": "rubygems"
          },
          {
            "name": "http_parser.rb",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "i18n",
            "direct": false,
            "version": "1.15.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll",
            "direct": false,
            "version": "3.10.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-avatar",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-coffeescript",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-commonmark",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-commonmark-ghpages",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-default-layout",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-feed",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-gist",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-github-metadata",
            "direct": false,
            "version": "2.16.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-include-cache",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-mentions",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-optional-front-matter",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-paginate",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-readme-index",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-redirect-from",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-relative-links",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-remote-theme",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-sass-converter",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-seo-tag",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-sitemap",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-swiss",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-architect",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-cayman",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-dinky",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-hacker",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-leap-day",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-merlot",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-midnight",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-minimal",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-modernist",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-primer",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-slate",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-tactile",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-theme-time-machine",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-titles-from-headings",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "rubygems"
          },
          {
            "name": "jekyll-watch",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "jemoji",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "json",
            "direct": false,
            "version": "2.20.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "kramdown",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "kramdown-parser-gfm",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "liquid",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "rubygems"
          },
          {
            "name": "listen",
            "direct": false,
            "version": "3.10.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "logger",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "mercenary",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "rubygems"
          },
          {
            "name": "minima",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "minitest",
            "direct": false,
            "version": "5.27.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "net-http",
            "direct": false,
            "version": "0.9.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "nokogiri",
            "direct": false,
            "version": "1.19.4",
            "ecosystem": "rubygems"
          },
          {
            "name": "octokit",
            "direct": false,
            "version": "4.25.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "pathutil",
            "direct": false,
            "version": "0.16.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "public_suffix",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "racc",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "rb-fsevent",
            "direct": false,
            "version": "0.11.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "rb-inotify",
            "direct": false,
            "version": "0.11.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "rexml",
            "direct": false,
            "version": "3.4.4",
            "ecosystem": "rubygems"
          },
          {
            "name": "rouge",
            "direct": false,
            "version": "3.30.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "rubyzip",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "safe_yaml",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "rubygems"
          },
          {
            "name": "sass",
            "direct": false,
            "version": "3.7.4",
            "ecosystem": "rubygems"
          },
          {
            "name": "sass-listen",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "sawyer",
            "direct": false,
            "version": "0.9.2",
            "ecosystem": "rubygems"
          },
          {
            "name": "securerandom",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "simpleidn",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "rubygems"
          },
          {
            "name": "terminal-table",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "typhoeus",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "tzinfo",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "rubygems"
          },
          {
            "name": "unicode-display_width",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "uri",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "rubygems"
          },
          {
            "name": "webrick",
            "direct": false,
            "version": "1.9.2",
            "ecosystem": "rubygems"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 251,
        "direct_count": 28,
        "indirect_count": 223
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 2,
        "merged_prs": 521,
        "open_issues": 9,
        "closed_ratio": 0.948,
        "closed_issues": 165,
        "closed_unmerged_prs": 83
      },
      "bus_factor": 1,
      "bot_contributors": 2,
      "top_contributors": [
        {
          "type": "User",
          "login": "adamdecaf",
          "commits": 1989,
          "avatar_url": "https://avatars.githubusercontent.com/u/120951?v=4"
        },
        {
          "type": "User",
          "login": "renovate-bot",
          "commits": 81,
          "avatar_url": "https://avatars.githubusercontent.com/u/25180681?v=4"
        },
        {
          "type": "User",
          "login": "diginicho",
          "commits": 64,
          "avatar_url": "https://avatars.githubusercontent.com/u/115033755?v=4"
        },
        {
          "type": "User",
          "login": "ckelly-digicert",
          "commits": 45,
          "avatar_url": "https://avatars.githubusercontent.com/u/38888550?v=4"
        },
        {
          "type": "User",
          "login": "bkmoovio",
          "commits": 21,
          "avatar_url": "https://avatars.githubusercontent.com/u/38044577?v=4"
        },
        {
          "type": "User",
          "login": "MorganaFuture",
          "commits": 17,
          "avatar_url": "https://avatars.githubusercontent.com/u/103630661?v=4"
        },
        {
          "type": "User",
          "login": "fhwrdh",
          "commits": 15,
          "avatar_url": "https://avatars.githubusercontent.com/u/144337?v=4"
        },
        {
          "type": "User",
          "login": "nlakritz",
          "commits": 12,
          "avatar_url": "https://avatars.githubusercontent.com/u/20115216?v=4"
        },
        {
          "type": "User",
          "login": "razashariff",
          "commits": 9,
          "avatar_url": "https://avatars.githubusercontent.com/u/36504271?v=4"
        },
        {
          "type": "User",
          "login": "tomdaffurn",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/1435885?v=4"
        }
      ],
      "contributors_sampled": 34,
      "top_contributor_share": 0.858
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "bench.yml",
        "fuzz.yml",
        "go.yml",
        "release.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "Gemfile.lock",
        "go.sum"
      ],
      "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": 0,
            "reason": "branch protection not enabled on development/release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 9,
            "reason": "18 out of 20 merged PRs checked by a CI test -- score normalized to 9",
            "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": 1,
            "reason": "Found 3/21 approved changesets -- score normalized to 1",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 7 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 10,
            "reason": "project is 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 4 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": 10,
            "reason": "packaging workflow 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": 8,
            "reason": "SAST tool is not run on all commits -- score normalized to 8",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 0,
            "reason": "Project has not signed or included provenance with any releases.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 9,
            "reason": "1 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "842fb167acd79b7f49bc8a28e65258d12b9970f4",
        "ran_at": "2026-07-30T19:03:40Z",
        "aggregate_score": 6.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-30T14:23:52Z",
      "oldest_open_prs": [
        {
          "number": 654,
          "created_at": "2025-07-02T15:28:31Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 786,
          "created_at": "2026-07-28T01:58:21Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-30T05:39:02Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 162,
          "created_at": "2019-10-15T01:21:58Z",
          "last_comment_at": "2019-10-15T01:22:49Z",
          "last_comment_author": "adamdecaf"
        },
        {
          "number": 188,
          "created_at": "2019-12-01T00:18:06Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 247,
          "created_at": "2020-03-02T21:01:40Z",
          "last_comment_at": "2020-03-02T21:02:55Z",
          "last_comment_author": "adamdecaf"
        },
        {
          "number": 307,
          "created_at": "2020-10-19T20:31:52Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 373,
          "created_at": "2021-08-30T09:42:32Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 486,
          "created_at": "2023-04-03T13:27:37Z",
          "last_comment_at": "2024-07-18T03:34:00Z",
          "last_comment_author": "elovelan"
        },
        {
          "number": 589,
          "created_at": "2025-02-07T22:48:06Z",
          "last_comment_at": "2026-07-07T17:06:39Z",
          "last_comment_author": "adamdecaf"
        },
        {
          "number": 595,
          "created_at": "2025-02-15T03:08:26Z",
          "last_comment_at": "2026-02-18T20:06:51Z",
          "last_comment_author": "adamdecaf"
        },
        {
          "number": 611,
          "created_at": "2025-03-14T22:17:48Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/moov-io/watchman",
    "host": "github.com",
    "name": "watchman",
    "owner": "moov-io"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 76,
      "inputs": {
        "security": 70,
        "vitality": 91,
        "community": 73,
        "governance": 69,
        "engineering": 76
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 91,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 91,
            "inputs": {
              "commits_last_year": 433,
              "human_commit_share": 0.71,
              "days_since_last_push": 0,
              "active_weeks_last_year": 39
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "39/52 weeks with commits",
                "points": 27,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 39
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "433 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 433
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "v0.65.1",
              "releases_from_tags": false,
              "days_since_latest_release": 1,
              "mean_days_between_releases": 18.8
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~18.8 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 18.8
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "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": 1,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 1 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "good",
        "name": "Community & Adoption",
        "value": 73,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "moderate",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 68,
            "inputs": {
              "forks": 129,
              "stars": 497,
              "watchers": 14,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "497 stars",
                "points": 43.7,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 497
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "129 forks",
                "points": 17.6,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 129
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "14 watchers",
                "points": 6.2,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 14
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 78,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": true,
              "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 (Apache-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "Apache-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": 7.2,
                "status": "met",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 69,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 36,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 34,
              "top_contributor_share": 0.858
            },
            "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 86% of commits",
                "points": 3.2,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 86
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "34 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 34
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 7 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 79,
            "inputs": {
              "merged_prs": 521,
              "open_issues": 9,
              "closed_issues": 165,
              "issue_closed_ratio": 0.948,
              "closed_unmerged_prs": 83
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "95% of issues closed",
                "points": 44.3,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 95
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "521/604 decided PRs merged",
                "points": 33,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 521,
                      "decided": 604
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 3/21 approved changesets -- score normalized to 1",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 74,
            "inputs": {
              "followers": 451,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "moov-io",
              "public_repos": 69,
              "account_age_days": 3438
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "451 followers of moov-io",
                "points": 19.1,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 451,
                      "login": "moov-io"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "69 public repos, account ~9 yr old",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 69
                    }
                  },
                  {
                    "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": [
                "github.com/moov-io/watchman"
              ],
              "ecosystems": "go",
              "any_deprecated": false,
              "min_days_since_publish": 1
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on go",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "go"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 1 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "156 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 156
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 76,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "moderate",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 66,
            "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": "4 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "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": "18 out of 20 merged PRs checked by a CI test -- score normalized to 9",
                "points": 18,
                "status": "partial",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "ofac",
                "kyc",
                "cip",
                "bis-denied-persons",
                "sanctions",
                "aml",
                "ctf",
                "bis",
                "csl",
                "sectoral-sanctions-identifications",
                "dpl",
                "sanction-lists"
              ],
              "has_wiki": false,
              "homepage": "https://moov-io.github.io/watchman/",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "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": "https://moov-io.github.io/watchman/",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "12 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 12
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "good",
        "name": "Security",
        "value": 70,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": null,
            "notes": [],
            "value": 63,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 18,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 0,
              "scorecard_aggregate": 6.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 not enabled on development/release branches",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "18 out of 20 merged PRs checked by a CI test -- score normalized to 9",
                "points": 2.2,
                "status": "partial",
                "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 3/21 approved changesets -- score normalized to 1",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 7 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is fuzzed",
                "points": 5,
                "status": "met",
                "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 4 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 detected",
                "points": 5,
                "status": "met",
                "details": [],
                "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 8",
                "points": 4,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "1 existing vulnerabilities detected",
                "points": 6.8,
                "status": "partial",
                "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 251 resolved dependencies against OSV. 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": 251
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 1,
              "affected_packages": 1,
              "assessed_packages": 251,
              "unassessed_packages": 0,
              "affected_by_severity": "unknown 1",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "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": 251,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 4
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 64,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 37,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.69,
              "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": "49 of 71 human commits state their intent (structured subject or explanatory body)",
                "points": 36.8,
                "status": "partial",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 49,
                      "sampled": 71
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 71,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "Gemfile.lock",
                "go.sum"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [
                "makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [],
              "agent_commit_share": 0.01,
              "toolchain_manifests": [
                "go.mod"
              ],
              "dependency_bot_commit_share": 0.29
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "makefile"
                    }
                  }
                ],
                "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": "Go (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "1 of the last 100 commits agent-authored or agent-credited",
                "points": 2,
                "status": "partial",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 1,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "29 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 29,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 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": "Go",
              "largest_source_bytes": 428670,
              "source_files_sampled": 303,
              "oversized_source_files": 3
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Go (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "3/303 source files over 60KB",
                "points": 54.5,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 303,
                      "oversized": 3
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "moderate",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": true,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-30T19:04:12.272416Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/moov-io/watchman.svg",
  "full_name": "moov-io/watchman",
  "license_state": "standard",
  "license_spdx": "Apache-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 agregadasGo.