Öffentliches Register
Software-GesundheitsberichtSchema 0.26.0 · Metriken 1.13.0 · 2026-07-22 03:49 UTC

agent-receipts / obsigna

Agent Receipts — cryptographically signed audit trails for AI agent actions. Protocol spec, SDKs (Go, TypeScript, Python), and MCP proxy.

Go · Python · MDXApache-2.0★ 20 Sterne⑂ 3 Forksseit Apr. 2026Auf GitHub ansehen ↗

agent-receipts/obsigna erreicht einen Gesundheitsindex von 69 von 100 und liegt damit im Bereich Mittel. Am stärksten schneidet es bei Engineering Quality (90/100) ab, am schwächsten bei Community & Adoption (48/100). Zuletzt vor 1 Tag aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

69
gesamt / 100
Mittel

Software-Gesundheitsindex

Metriken werden auf einer Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr Mittel; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze 49 (Gefährdet). AI Readiness liegt außerhalb.

69
Exzellent85-100Vorbildlich; erfüllt im Wesentlichen alle geprüften Kriterien
Gut70-84Gesund; geringfügige Lücken
Mittel50-69Akzeptabel mit deutlichen Lücken; Überprüfung empfohlen
Gefährdet30-49Erhebliche Schwächen; eine Übernahme erfordert Vorsicht
Kritisch1-29Schwerwiegende Probleme (aufgegeben, nur ein Maintainer, keine Hygiene)
VitalitätCommunity &VerbreitungNachhaltigkeit &GovernanceEngineering-QualitätSicherheitAI Readiness

Bewertungsprofil

Jede Achse ist eine Kategorie. Die Form zählt mehr als der Durchschnitt — ein gesundes Projekt füllt die gesamte Fläche, während ein Profil aus Spitzen und Kratern bedeutet, dass Stärke in einer Dimension Risiken in einer anderen verdeckt.

Eigentümerschaft

Agent ReceiptsOrganisation
11 Follower9 öffentliche Reposseit Apr. 2026

Dieses Repository wird von einer Organisation getragen — geteilte, rechenschaftspflichtige Trägerschaft, die jeden einzelnen Maintainer überdauern kann.

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlicht
Goobsigna.dev/hookv0.30.0-18vor 4 Tagen
Goobsigna.dev/daemonv0.30.0-29vor 4 Tagen
Goobsigna.dev/collectorv0.30.0-3vor 4 Tagen
Goobsigna.dev/mcp-proxyv0.30.0-40vor 4 Tagen

Metriken nach Kategorie

Vitalität

Lebt das Projekt — wird Code geschrieben und werden Releases ausgeliefert?

81Gut · 22 % des Gesamtindex
Wie die Bewertung erfolgt
36/36Push-Aktualität — letzter Push vor 1 Tagen
11.1/36Commit-Rhythmus — 16/52 Wochen mit Commits
18/18Commit-Volumen — 1.212 Commits im letzten Jahr
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Verwendete Eingangsdaten
commits_last_year1.212
human_commit_share0,73
days_since_last_push1
active_weeks_last_year16
Wie die Bewertung erfolgt
27/27Liefert Releases aus — 100 Releases veröffentlicht
36/36Release-Aktualität — letztes Release vor 4 Tagen
27/27Release-Rhythmus — ein Release etwa alle 2,7 Tage
0/10OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases.
Verwendete Eingangsdaten
releases_count100
latest_release_tagobsigna/v0.30.0
releases_from_tagsnein
days_since_latest_release4
mean_days_between_releases2,7

Community & Verbreitung

Hat das Projekt Nutzer, Downloads, Aufmerksamkeit und ein einladendes Umfeld für Beitragende?

48Gefährdet · 18 % des Gesamtindex
Wie die Bewertung erfolgt
20.7/60Stars — 20 Stars
2.5/25Forks — 3 Forks
0/15Watcher — 0 Watcher
Verwendete Eingangsdaten
forks3
stars20
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonbelow_threshold
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenz — anerkannte Lizenz (Apache-2.0)
18/18CONTRIBUTING-Leitfaden
0/13.5Verhaltenskodex
0/7.2Issue-Vorlage
6.3/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
has_contributingja
has_issue_templatenein
has_code_of_conductnein
has_pull_request_templateja

Nachhaltigkeit & Governance

Überdauert das Projekt die Menschen, die es tragen — Bus-Faktor, Reaktionsfähigkeit, Trägerschaft und Paketpflege?

58Mittel · 24 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor — 1 Beitragende decken die Hälfte aller Commits ab
0/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 100 % der Commits
1.4/13.5Breite der Beitragenden — 1 Beitragende
10/10OpenSSF Scorecard: Contributors — project has 3 contributing companies or organizations -- score normalized to 10
Verwendete Eingangsdaten
bus_factor1
contributors_sampled1
top_contributor_share1
Wie die Bewertung erfolgt
42.9/46.8Issue-Lösungsquote — 92 % der Issues geschlossen
37.1/38.3PR-Annahme — 681/702 entschiedene PRs gemergt
0/15OpenSSF Scorecard: Code-Review — Found 0/11 approved changesets -- score normalized to 0
Verwendete Eingangsdaten
merged_prs681
open_issues23
closed_issues259
issue_closed_ratio0,918
closed_unmerged_prs21
Wie die Bewertung erfolgt
30/30Organisatorische Trägerschaft — im Besitz einer Organisation
0/20Verifizierte Domain
7.8/25Reichweite des Inhabers — 11 Follower von agent-receipts
7.9/25Kontohistorie — 9 öffentliche Repos, Kontoalter ca. 0 Jahre
Verwendete Eingangsdaten
followers11
owner_typeOrganization
is_verified
owner_loginagent-receipts
public_repos9
account_age_days111

Paketpflege

100Exzellent
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar — 4 Paket(e) auf go
35/35Veröffentlichungsaktualität — letzte Veröffentlichung vor 4 Tagen
20/20Versionshistorie — 40 veröffentlichte Versionen
20/20Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagesobsigna.dev/hook, obsigna.dev/daemon, obsigna.dev/collector, obsigna.dev/mcp-proxy
ecosystemsgo
any_deprecatednein
min_days_since_publish4

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

90Exzellent · 20 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows — 30 Workflow(s)
24/24Tests vorhanden
16/16Linter-Konfiguration — biome.json, ruff.toml
0/9.6Pre-Commit-Hooks
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfignein
has_linter_configja
has_precommit_confignein

Dokumentation

100Exzellent
Wie die Bewertung erfolgt
30/30README
25/25Dokumentationsverzeichnis
15/15Dokumentations-/Homepage-Site — https://agentreceipts.ai
10/10Repository-Beschreibung
10/10Topics — 16 Topics
10/10Wiki
Verwendete Eingangsdaten
topicsai, ai-agents, audit, cryptography, ed25519, golang, mcp, model-context-protocol, python, receipts, security, typescript, verifiable-credentials, w3c-vc, agent-receipts, obsigna
has_wikija
homepagehttps://agentreceipts.ai
has_readmeja
has_docs_dirja
has_descriptionja

Sicherheit

Sind die sichtbaren Sicherheits- und Lieferkettenpraktiken belastbar, ohne ungeklärte Exposition gegenüber Hochrisikojurisdiktionen?

66Mittel · 16 % des Gesamtindex
Wie die Bewertung erfolgt
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/11 approved changesets -- score normalized to 0
2.5/2.5Contributors — project has 3 contributing companies or organizations -- score normalized to 10
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Lizenz — license file detected
7.5/7.5Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
4/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 8
4.5/5SAST — SAST tool detected but not run on all commits
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
0/7.5Vulnerabilities — 21 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated18
scorecard_versionv5.5.0
checks_inconclusive0
scorecard_aggregate5,8
Wie die Bewertung erfolgt
35/35Direkte Abhängigkeiten ohne bekannte Advisories — keine direkte Abhängigkeit trägt ein bekanntes Advisory
0/25Indirekte Abhängigkeiten ohne bekannte Advisories — transitive Menge in diesem Bereich nicht von Entwicklungs- und Test-Abhängigkeiten trennbar
0/40Keine offenen Advisories — kein Advisory trägt ein Veröffentlichungsdatum
Verwendete Eingangsdaten
sourceosv
advisories2
affected_packages2
assessed_packages904
unassessed_packages0
affected_by_severitylow 1, unknown 1
direct_affected_packages0
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Indirekte Abhängigkeiten ohne bekannte Advisories, Keine offenen Advisories. Die verbleibenden Gewichte wurden renormalisiert. 904 aufgelöste Abhängigkeiten wurden mit OSV abgeglichen. Dieses Repository veröffentlicht kein Paket, das der Index auflöst; bewertet wurde daher der Abhängigkeitsgraph des Repositorys. Dieser Graph vermischt Entwicklungs- und Test-Pins mit ausgelieferten Abhängigkeiten, daher werden nur die deklarierten Laufzeit-Abhängigkeiten bewertet; transitive Befunde werden als Kontext ausgewiesen und fließen nicht in die Bewertung ein. Erreichbarkeit wird nicht analysiert.

AI Readiness

Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Ein unabhängiges, experimentelles Badge — Gewicht 0,0, es wird eigenständig ausgewiesen und verändert den Gesamt-Gesundheitswert nicht.

84Gut · 0 % des Gesamtindex
Wie die Bewertung erfolgt
45/45Agentenanweisungen — .github/instructions/general.instructions.md, .github/instructions/go.instructions.md, .github/instructions/python.instructions.md, .github/instructions/typescript.instructions.md, AGENTS.md, CLAUDE.md, hook/AGENTS.md, integrations/opencode-plugin/AGENTS.md, mcp-proxy/AGENTS.md, mcp-proxy/CLAUDE.md, scripts/byte_identity/AGENTS.md, scripts/conformance_matrix/AGENTS.md, scripts/daemon_protocol/AGENTS.md, scripts/formal_spec_pins/AGENTS.md, scripts/readme_snippets/AGENTS.md, scripts/release_verify/AGENTS.md, scripts/schema_conformance/AGENTS.md, scripts/usage_signal/AGENTS.md, sdk/go/AGENTS.md, sdk/go/CLAUDE.md, sdk/go/aws/AGENTS.md, sdk/py/AGENTS.md, sdk/py/CLAUDE.md, sdk/ts-aws/AGENTS.md, sdk/ts/AGENTS.md, site/AGENTS.md, spec/AGENTS.md, web-verifier/AGENTS.md
15/15Maschinenlesbare Doku (llms.txt) — llms.txt vorhanden
40/40Lesbare Commit-Historie — 73 von 73 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtja
legible_history_share1
agent_instruction_files.github/instructions/general.instructions.md, .github/instructions/go.instructions.md, .github/instructions/python.instructions.md, .github/instructions/typescript.instructions.md, AGENTS.md, CLAUDE.md, hook/AGENTS.md, integrations/opencode-plugin/AGENTS.md, mcp-proxy/AGENTS.md, mcp-proxy/CLAUDE.md, scripts/byte_identity/AGENTS.md, scripts/conformance_matrix/AGENTS.md, scripts/daemon_protocol/AGENTS.md, scripts/formal_spec_pins/AGENTS.md, scripts/readme_snippets/AGENTS.md, scripts/release_verify/AGENTS.md, scripts/schema_conformance/AGENTS.md, scripts/usage_signal/AGENTS.md, sdk/go/AGENTS.md, sdk/go/CLAUDE.md, sdk/go/aws/AGENTS.md, sdk/py/AGENTS.md, sdk/py/CLAUDE.md, sdk/ts-aws/AGENTS.md, sdk/ts/AGENTS.md, site/AGENTS.md, spec/AGENTS.md, web-verifier/AGENTS.md
agent_instruction_max_bytes7.472
Wie die Bewertung erfolgt
12.6/18Bootstrap mit einem Befehl — collector/go.mod, cross-sdk-tests/go.mod, daemon/go.mod (Toolchain-Konvention, kein Task-Runner)
22/22Automatisierte Tests
11/11Lint-/Format-Konfiguration — biome.json, ruff.toml
11/11Statische Typprüfung — integrations/opencode-plugin/tsconfig.json, sdk/py/src/obsigna/py.typed, sdk/ts-aws/tsconfig.json, sdk/ts/tsconfig.json, site-obsigna/tsconfig.json, site/tsconfig.json
10/10Reproduzierbare Umgebung — lockfile
0/10Belegte Agentenpraxis — keine von Agenten verfassten Commits unter den letzten 100
8/8Automatisierte Wartung — 27 der letzten 100 Commits sind automatisierte Abhängigkeits-Updates
8/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 8
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfilesgo.sum, pnpm-lock.yaml, uv.lock
has_dockerfilenein
typed_languageja
bootstrap_files
has_devcontainernein
has_linter_configja
typecheck_configsintegrations/opencode-plugin/tsconfig.json, sdk/py/src/obsigna/py.typed, sdk/ts-aws/tsconfig.json, sdk/ts/tsconfig.json, site-obsigna/tsconfig.json, site/tsconfig.json
agent_commit_share0
toolchain_manifestscollector/go.mod, cross-sdk-tests/go.mod, daemon/go.mod, dist/sdk-go-deprecation/go.mod, hook/go.mod, mcp-proxy/go.mod, sdk/go/aws/go.mod, sdk/go/go.mod, web-verifier/go.mod
dependency_bot_commit_share0,27
Wie die Bewertung erfolgt
45/45Typprüfbarer Code — Go (statisch typisiert)
54.9/55Handhabbare Dateigrößen — 1/449 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languageGo
largest_source_bytes80.971
source_files_sampled449
oversized_source_files1
Wie die Bewertung erfolgt
0/40API-Schema (OpenAPI/GraphQL/proto)
0/20MCP-Server
40/40Lauffähige Beispiele — examples
Verwendete Eingangsdaten
example_dirsexamples
has_mcp_signalnein
api_schema_files

Eckdaten

20GitHub-Sterne
1Mitwirkende
1.212Commits, letzte 12 Monate
1Tage seit letztem Push
100Releases
1Bus-Faktor
23offene Issues
Go, npmPaket-Ökosysteme

Warnungen zur Datenerhebung

  • Could not fetch go package 'obsigna.dev/web-verifier' from its registry
  • Could not fetch go package 'obsigna.dev/cross-sdk-tests' from its registry

Weitere Details

Stern- und Fork-Verlauf 20 ★ / 3 ⇿
20Sterne
3Forks
71Releases

Wann jeder Stern und Fork hinzugefügt wurde, von GitHub erfasst und nach Tagen gruppiert. Das kumulierte Wachstum steht direkt über den täglichen Zugängen, aus denen es besteht, sodass beide gegeneinander lesbar sind: stetiger organischer Zuwachs sieht ganz anders aus als ein abrupter, kurzlebiger Ausschlag. Wo dieser Unterschied messbar ist, wird er als Wachstumsauthentizität ausgewiesen.

04812162020342026-042026-052026-06
Major 0Minor 0Patch 0
OpenSSF Scorecard 5.8 / 10
5.8Gesamtwert

Unabhängige, werkzeugneutrale Sicherheitsbewertung durch das quelloffene OpenSSF Scorecard. Jede Prüfung honoriert eine Sicherheits-Praxis, nicht das Werkzeug eines bestimmten Anbieters. Prüfungen, die Scorecard nicht ermitteln konnte, sind mit k. A. markiert und vom Sicherheitswert ausgeschlossen (nie als null gezählt).Scorecard v5.5.0 · 2026-07-22 03:49 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/11 approved changesets -- score normalized to 0
10Contributorsproject has 3 contributing companies or organizations -- score normalized to 10
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
8Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 8
9SASTSAST tool detected but not run on all commits
10Security-Policysecurity policy file detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities21 existing vulnerabilities detected
Direkte Abhängigkeiten 24
RegistryPaketVersionsvorgabeManifest
Gomodernc.org/sqlitev1.52.0collector/go.mod
Goobsigna.dev/sdk/gov0.22.0collector/go.mod
Gogithub.com/santhosh-tekuri/jsonschema/v5v5.3.1cross-sdk-tests/go.mod
Gogithub.com/tetratelabs/wazerov1.12.0cross-sdk-tests/go.mod
Gogithub.com/BurntSushi/tomlv1.6.0daemon/go.mod
Gogolang.org/x/sysv0.45.0daemon/go.mod
Gogopkg.in/yaml.v3v3.0.1daemon/go.mod
Gomodernc.org/sqlitev1.53.0daemon/go.mod
Goobsigna.dev/sdk/gov0.24.0daemon/go.mod
Goobsigna.dev/sdk/gov0.24.0hook/go.mod
Gogithub.com/google/uuidv1.6.0mcp-proxy/go.mod
Gogopkg.in/yaml.v3v3.0.1mcp-proxy/go.mod
Goobsigna.dev/daemonv0.30.0mcp-proxy/go.mod
Goobsigna.dev/sdk/gov0.24.0mcp-proxy/go.mod
npm@astrojs/sitemap^3.7site-obsigna/package.json
npm@astrojs/starlight^0.41site-obsigna/package.json
npmastro^7site-obsigna/package.json
npmsharp^0.35site-obsigna/package.json
npmstarlight-theme-flexoki^0.2.2site-obsigna/package.json
npm@astrojs/sitemap^3.7site/package.json
npm@astrojs/starlight^0.41site/package.json
npmastro^7site/package.json
npmsharp^0.35site/package.json
npmstarlight-theme-flexoki^0.2.2site/package.json
Alle Abhängigkeiten 904

Vollständig aufgelöster Abhängigkeitssatz aus dem GitHub-Abhängigkeitsgraphen: 18 direkte und 886 indirekte (transitive) Pakete. Die transitive Hülle ist vollständig, wenn das Repository eine Lockfile eincheckt.

RegistryPaketVersionBeziehung
Gogithub.com/burntsushi/tomlv1.6.0direkt
Gogithub.com/google/uuidv1.6.0direkt
Gogithub.com/santhosh-tekuri/jsonschema/v5v5.3.1direkt
Gogithub.com/tetratelabs/wazerov1.12.0direkt
Gogolang.org/x/sysv0.45.0direkt
Gogolang.org/x/sysv0.46.0direkt
Gogopkg.in/yaml.v3v3.0.1direkt
Gomodernc.org/sqlitev1.52.0direkt
Gomodernc.org/sqlitev1.53.0direkt
Gomodernc.org/sqlitev1.54.0direkt
Goobsigna.dev/daemonv0.30.0direkt
Goobsigna.dev/sdk/gov0.22.0direkt
Goobsigna.dev/sdk/gov0.24.0direkt
npm@astrojs/sitemap3.7.3direkt
npm@astrojs/starlight0.41.3direkt
npmastro7.1.1direkt
npmsharp0.35.3direkt
npmstarlight-theme-flexoki0.2.2direkt
Gogithub.com/aws/aws-sdk-go-v2v1.41.7indirekt
Gogithub.com/aws/aws-sdk-go-v2/configv1.32.18indirekt
Gogithub.com/aws/aws-sdk-go-v2/credentialsv1.19.17indirekt
Gogithub.com/aws/aws-sdk-go-v2/feature/ec2/imdsv1.18.23indirekt
Gogithub.com/aws/aws-sdk-go-v2/internal/configsourcesv1.4.23indirekt
Gogithub.com/aws/aws-sdk-go-v2/internal/endpoints/v2v2.7.23indirekt
Gogithub.com/aws/aws-sdk-go-v2/internal/v4av1.4.24indirekt
Gogithub.com/aws/aws-sdk-go-v2/service/internal/accept-encodingv1.13.9indirekt
Gogithub.com/aws/aws-sdk-go-v2/service/internal/presigned-urlv1.13.23indirekt
Gogithub.com/aws/aws-sdk-go-v2/service/kmsv1.52.0indirekt
Gogithub.com/aws/aws-sdk-go-v2/service/signinv1.0.11indirekt
Gogithub.com/aws/aws-sdk-go-v2/service/ssov1.30.17indirekt
Gogithub.com/aws/aws-sdk-go-v2/service/ssooidcv1.36.0indirekt
Gogithub.com/aws/aws-sdk-go-v2/service/stsv1.42.1indirekt
Gogithub.com/aws/smithy-gov1.25.1indirekt
Gogithub.com/cloudflare/circlv1.6.3indirekt
Gogithub.com/cloudflare/circlv1.6.4indirekt
Gogithub.com/dustin/go-humanizev1.0.1indirekt
Gogithub.com/mattn/go-isattyv0.0.20indirekt
Gogithub.com/ncruces/go-strftimev1.0.0indirekt
Gogithub.com/remyoudompheng/bigfftv0.0.0-20230129092748-24d4a6f8daecindirekt
Gogolang.org/x/cryptov0.52.0indirekt
Gomodernc.org/libcv1.72.3indirekt
Gomodernc.org/libcv1.73.4indirekt
Gomodernc.org/libcv1.74.1indirekt
Gomodernc.org/mathutilv1.7.1indirekt
Gomodernc.org/memoryv1.11.0indirekt
npm@antfu/install-pkg1.1.0indirekt
npm@astrojs/compiler-binding0.3.1indirekt
npm@astrojs/compiler-binding-darwin-arm640.3.1indirekt
npm@astrojs/compiler-binding-darwin-x640.3.1indirekt
npm@astrojs/compiler-binding-linux-arm64-gnu0.3.1indirekt
npm@astrojs/compiler-binding-linux-arm64-musl0.3.1indirekt
npm@astrojs/compiler-binding-linux-x64-gnu0.3.1indirekt
npm@astrojs/compiler-binding-linux-x64-musl0.3.1indirekt
npm@astrojs/compiler-binding-wasm32-wasi0.3.1indirekt
npm@astrojs/compiler-binding-win32-arm64-msvc0.3.1indirekt
npm@astrojs/compiler-binding-win32-x64-msvc0.3.1indirekt
npm@astrojs/compiler-rs0.3.1indirekt
npm@astrojs/internal-helpers0.10.1indirekt
npm@astrojs/markdown-remark7.2.1indirekt
npm@astrojs/markdown-satteri0.3.3indirekt
npm@astrojs/markdown-satteri0.3.4indirekt
npm@astrojs/mdx7.0.2indirekt
npm@astrojs/prism4.0.2indirekt
npm@astrojs/telemetry3.3.3indirekt
npm@aws-crypto/crc325.2.0indirekt
npm@aws-crypto/sha256-browser5.2.0indirekt
npm@aws-crypto/sha256-js5.2.0indirekt
npm@aws-crypto/supports-web-crypto5.2.0indirekt
npm@aws-crypto/util5.2.0indirekt
npm@aws-sdk/client-kms3.1055.0indirekt
npm@aws-sdk/core3.974.14indirekt
npm@aws-sdk/credential-provider-env3.972.40indirekt
npm@aws-sdk/credential-provider-http3.972.42indirekt
npm@aws-sdk/credential-provider-ini3.972.44indirekt
npm@aws-sdk/credential-provider-login3.972.44indirekt
npm@aws-sdk/credential-provider-node3.972.45indirekt
npm@aws-sdk/credential-provider-process3.972.40indirekt
npm@aws-sdk/credential-provider-sso3.972.44indirekt
npm@aws-sdk/credential-provider-web-identity3.972.44indirekt
npm@aws-sdk/nested-clients3.997.12indirekt
npm@aws-sdk/signature-v4-multi-region3.996.29indirekt
npm@aws-sdk/token-providers3.1054.0indirekt
npm@aws-sdk/types3.973.9indirekt
npm@aws-sdk/util-locate-window3.965.5indirekt
npm@aws-sdk/xml-builder3.972.26indirekt
npm@aws/lambda-invoke-store0.2.4indirekt
npm@babel/helper-string-parser7.29.7indirekt
npm@babel/helper-validator-identifier7.29.7indirekt
npm@babel/parser7.29.7indirekt
npm@babel/types7.29.7indirekt
npm@biomejs/biome2.4.16indirekt
npm@biomejs/biome2.5.4indirekt
npm@biomejs/cli-darwin-arm642.4.16indirekt
npm@biomejs/cli-darwin-arm642.5.4indirekt
npm@biomejs/cli-darwin-x642.4.16indirekt
npm@biomejs/cli-darwin-x642.5.4indirekt
npm@biomejs/cli-linux-arm642.4.16indirekt
npm@biomejs/cli-linux-arm642.5.4indirekt
npm@biomejs/cli-linux-arm64-musl2.4.16indirekt
npm@biomejs/cli-linux-arm64-musl2.5.4indirekt
npm@biomejs/cli-linux-x642.4.16indirekt
npm@biomejs/cli-linux-x642.5.4indirekt
npm@biomejs/cli-linux-x64-musl2.4.16indirekt
npm@biomejs/cli-linux-x64-musl2.5.4indirekt
npm@biomejs/cli-win32-arm642.4.16indirekt
npm@biomejs/cli-win32-arm642.5.4indirekt
npm@biomejs/cli-win32-x642.4.16indirekt
npm@biomejs/cli-win32-x642.5.4indirekt
npm@braintree/sanitize-url7.1.2indirekt
npm@bruits/satteri-darwin-arm640.9.4indirekt
npm@bruits/satteri-darwin-arm640.9.5indirekt
npm@bruits/satteri-darwin-x640.9.4indirekt
npm@bruits/satteri-darwin-x640.9.5indirekt
npm@bruits/satteri-linux-arm64-gnu0.9.4indirekt
npm@bruits/satteri-linux-arm64-gnu0.9.5indirekt
npm@bruits/satteri-linux-arm64-musl0.9.4indirekt
npm@bruits/satteri-linux-arm64-musl0.9.5indirekt
npm@bruits/satteri-linux-x64-gnu0.9.4indirekt
npm@bruits/satteri-linux-x64-gnu0.9.5indirekt
npm@bruits/satteri-linux-x64-musl0.9.4indirekt
npm@bruits/satteri-linux-x64-musl0.9.5indirekt
npm@bruits/satteri-wasm32-wasi0.9.4indirekt
npm@bruits/satteri-wasm32-wasi0.9.5indirekt
npm@bruits/satteri-win32-arm64-msvc0.9.4indirekt
npm@bruits/satteri-win32-arm64-msvc0.9.5indirekt
npm@bruits/satteri-win32-x64-msvc0.9.4indirekt
npm@bruits/satteri-win32-x64-msvc0.9.5indirekt
npm@capsizecss/unpack4.0.1indirekt
npm@chevrotain/types11.1.2indirekt
npm@clack/core1.4.3indirekt
npm@clack/prompts1.7.0indirekt
npm@ctrl/tinycolor4.2.0indirekt
npm@emnapi/core1.10.0indirekt
npm@emnapi/core1.11.1indirekt
npm@emnapi/runtime1.10.0indirekt
npm@emnapi/runtime1.11.1indirekt
npm@emnapi/runtime1.11.2indirekt
npm@emnapi/wasi-threads1.2.1indirekt
npm@emnapi/wasi-threads1.2.2indirekt
npm@esbuild/aix-ppc640.28.1indirekt
npm@esbuild/android-arm0.28.1indirekt
npm@esbuild/android-arm640.28.1indirekt
npm@esbuild/android-x640.28.1indirekt
npm@esbuild/darwin-arm640.28.1indirekt
npm@esbuild/darwin-x640.28.1indirekt
npm@esbuild/freebsd-arm640.28.1indirekt
npm@esbuild/freebsd-x640.28.1indirekt
npm@esbuild/linux-arm0.28.1indirekt
npm@esbuild/linux-arm640.28.1indirekt
npm@esbuild/linux-ia320.28.1indirekt
npm@esbuild/linux-loong640.28.1indirekt
npm@esbuild/linux-mips64el0.28.1indirekt
npm@esbuild/linux-ppc640.28.1indirekt
npm@esbuild/linux-riscv640.28.1indirekt
npm@esbuild/linux-s390x0.28.1indirekt
npm@esbuild/linux-x640.28.1indirekt
npm@esbuild/netbsd-arm640.28.1indirekt
npm@esbuild/netbsd-x640.28.1indirekt
npm@esbuild/openbsd-arm640.28.1indirekt
npm@esbuild/openbsd-x640.28.1indirekt
npm@esbuild/openharmony-arm640.28.1indirekt
npm@esbuild/sunos-x640.28.1indirekt
npm@esbuild/win32-arm640.28.1indirekt
npm@esbuild/win32-ia320.28.1indirekt
npm@esbuild/win32-x640.28.1indirekt
npm@expressive-code/core0.44.0indirekt
npm@expressive-code/plugin-frames0.44.0indirekt
npm@expressive-code/plugin-shiki0.44.0indirekt
npm@expressive-code/plugin-text-markers0.44.0indirekt
npm@fortawesome/fontawesome-free6.7.2indirekt
npm@iconify/types2.0.0indirekt
npm@iconify/utils3.1.1indirekt
npm@iconify/utils3.1.3indirekt
npm@img/colour1.1.0indirekt
npm@img/sharp-darwin-arm640.35.3indirekt
npm@img/sharp-darwin-x640.35.3indirekt
npm@img/sharp-freebsd-wasm320.35.3indirekt
npm@img/sharp-libvips-darwin-arm641.3.2indirekt
npm@img/sharp-libvips-darwin-x641.3.2indirekt
npm@img/sharp-libvips-linux-arm1.3.2indirekt
npm@img/sharp-libvips-linux-arm641.3.2indirekt
npm@img/sharp-libvips-linux-ppc641.3.2indirekt
npm@img/sharp-libvips-linux-riscv641.3.2indirekt
npm@img/sharp-libvips-linux-s390x1.3.2indirekt
npm@img/sharp-libvips-linux-x641.3.2indirekt
npm@img/sharp-libvips-linuxmusl-arm641.3.2indirekt
npm@img/sharp-libvips-linuxmusl-x641.3.2indirekt
npm@img/sharp-linux-arm0.35.3indirekt
npm@img/sharp-linux-arm640.35.3indirekt
npm@img/sharp-linux-ppc640.35.3indirekt
npm@img/sharp-linux-riscv640.35.3indirekt
npm@img/sharp-linux-s390x0.35.3indirekt
npm@img/sharp-linux-x640.35.3indirekt
npm@img/sharp-linuxmusl-arm640.35.3indirekt
npm@img/sharp-linuxmusl-x640.35.3indirekt
npm@img/sharp-wasm320.35.3indirekt
npm@img/sharp-webcontainers-wasm320.35.3indirekt
npm@img/sharp-win32-arm640.35.3indirekt
npm@img/sharp-win32-ia320.35.3indirekt
npm@img/sharp-win32-x640.35.3indirekt
npm@jridgewell/sourcemap-codec1.5.5indirekt
npm@mdx-js/mdx3.1.1indirekt
npm@mermaid-js/parser1.1.1indirekt
npm@msgpackr-extract/msgpackr-extract-darwin-arm643.0.4indirekt
npm@msgpackr-extract/msgpackr-extract-darwin-x643.0.4indirekt
npm@msgpackr-extract/msgpackr-extract-linux-arm3.0.4indirekt
npm@msgpackr-extract/msgpackr-extract-linux-arm643.0.4indirekt
npm@msgpackr-extract/msgpackr-extract-linux-x643.0.4indirekt
npm@msgpackr-extract/msgpackr-extract-win32-x643.0.4indirekt
npm@napi-rs/wasm-runtime1.1.4indirekt
npm@napi-rs/wasm-runtime1.1.5indirekt
npm@napi-rs/wasm-runtime1.1.6indirekt
npm@nodable/entities2.1.0indirekt
npm@obsigna/sdk-ts0.16.0indirekt
npm@opencode-ai/plugin1.16.2indirekt
npm@opencode-ai/sdk1.16.2indirekt
npm@oslojs/encoding1.1.0indirekt
npm@oxc-project/types0.133.0indirekt
npm@oxc-project/types0.139.0indirekt
npm@pagefind/darwin-arm641.5.2indirekt
npm@pagefind/darwin-x641.5.2indirekt
npm@pagefind/default-ui1.5.2indirekt
npm@pagefind/freebsd-x641.5.2indirekt
npm@pagefind/linux-arm641.5.2indirekt
npm@pagefind/linux-x641.5.2indirekt
npm@pagefind/windows-arm641.5.2indirekt
npm@pagefind/windows-x641.5.2indirekt
npm@rolldown/binding-android-arm641.0.3indirekt
npm@rolldown/binding-android-arm641.1.5indirekt
npm@rolldown/binding-darwin-arm641.0.3indirekt
npm@rolldown/binding-darwin-arm641.1.5indirekt
npm@rolldown/binding-darwin-x641.0.3indirekt
npm@rolldown/binding-darwin-x641.1.5indirekt
npm@rolldown/binding-freebsd-x641.0.3indirekt
npm@rolldown/binding-freebsd-x641.1.5indirekt
npm@rolldown/binding-linux-arm-gnueabihf1.0.3indirekt
npm@rolldown/binding-linux-arm-gnueabihf1.1.5indirekt
npm@rolldown/binding-linux-arm64-gnu1.0.3indirekt
npm@rolldown/binding-linux-arm64-gnu1.1.5indirekt
npm@rolldown/binding-linux-arm64-musl1.0.3indirekt
npm@rolldown/binding-linux-arm64-musl1.1.5indirekt
npm@rolldown/binding-linux-ppc64-gnu1.0.3indirekt
npm@rolldown/binding-linux-ppc64-gnu1.1.5indirekt
npm@rolldown/binding-linux-s390x-gnu1.0.3indirekt
npm@rolldown/binding-linux-s390x-gnu1.1.5indirekt
npm@rolldown/binding-linux-x64-gnu1.0.3indirekt
npm@rolldown/binding-linux-x64-gnu1.1.5indirekt
npm@rolldown/binding-linux-x64-musl1.0.3indirekt
npm@rolldown/binding-linux-x64-musl1.1.5indirekt
npm@rolldown/binding-openharmony-arm641.0.3indirekt
npm@rolldown/binding-openharmony-arm641.1.5indirekt
npm@rolldown/binding-wasm32-wasi1.0.3indirekt
npm@rolldown/binding-wasm32-wasi1.1.5indirekt
npm@rolldown/binding-win32-arm64-msvc1.0.3indirekt
npm@rolldown/binding-win32-arm64-msvc1.1.5indirekt
npm@rolldown/binding-win32-x64-msvc1.0.3indirekt
npm@rolldown/binding-win32-x64-msvc1.1.5indirekt
npm@rolldown/pluginutils1.0.1indirekt
npm@rollup/pluginutils5.4.0indirekt
npm@rollup/rollup-android-arm-eabi4.62.0indirekt
npm@rollup/rollup-android-arm644.62.0indirekt
npm@rollup/rollup-darwin-arm644.62.0indirekt
npm@rollup/rollup-darwin-x644.62.0indirekt
npm@rollup/rollup-freebsd-arm644.62.0indirekt
npm@rollup/rollup-freebsd-x644.62.0indirekt
npm@rollup/rollup-linux-arm-gnueabihf4.62.0indirekt
npm@rollup/rollup-linux-arm-musleabihf4.62.0indirekt
npm@rollup/rollup-linux-arm64-gnu4.62.0indirekt
npm@rollup/rollup-linux-arm64-musl4.62.0indirekt
npm@rollup/rollup-linux-loong64-gnu4.62.0indirekt
npm@rollup/rollup-linux-loong64-musl4.62.0indirekt
npm@rollup/rollup-linux-ppc64-gnu4.62.0indirekt
npm@rollup/rollup-linux-ppc64-musl4.62.0indirekt
npm@rollup/rollup-linux-riscv64-gnu4.62.0indirekt
npm@rollup/rollup-linux-riscv64-musl4.62.0indirekt
npm@rollup/rollup-linux-s390x-gnu4.62.0indirekt
npm@rollup/rollup-linux-x64-gnu4.62.0indirekt
npm@rollup/rollup-linux-x64-musl4.62.0indirekt
npm@rollup/rollup-openbsd-x644.62.0indirekt
npm@rollup/rollup-openharmony-arm644.62.0indirekt
npm@rollup/rollup-win32-arm64-msvc4.62.0indirekt
npm@rollup/rollup-win32-ia32-msvc4.62.0indirekt
npm@rollup/rollup-win32-x64-gnu4.62.0indirekt
npm@rollup/rollup-win32-x64-msvc4.62.0indirekt
npm@shikijs/core4.3.1indirekt
npm@shikijs/engine-javascript4.3.1indirekt
npm@shikijs/engine-oniguruma4.3.1indirekt
npm@shikijs/langs4.3.1indirekt
npm@shikijs/primitive4.3.1indirekt
npm@shikijs/themes4.3.1indirekt
npm@shikijs/types4.3.1indirekt
npm@shikijs/vscode-textmate10.0.2indirekt
npm@smithy/core3.24.5indirekt
npm@smithy/credential-provider-imds4.3.5indirekt
npm@smithy/fetch-http-handler5.4.5indirekt
npm@smithy/is-array-buffer2.2.0indirekt
npm@smithy/node-http-handler4.7.5indirekt
npm@smithy/signature-v45.4.5indirekt
npm@smithy/types4.14.2indirekt
npm@smithy/util-buffer-from2.2.0indirekt
npm@smithy/util-utf82.3.0indirekt
npm@standard-schema/spec1.1.0indirekt
npm@tybys/wasm-util0.10.2indirekt
npm@tybys/wasm-util0.10.3indirekt
npm@types/chai5.2.3indirekt
npm@types/d37.4.3indirekt
npm@types/d3-array3.2.2indirekt
npm@types/d3-axis3.0.6indirekt
npm@types/d3-brush3.0.6indirekt
npm@types/d3-chord3.0.6indirekt
npm@types/d3-color3.1.3indirekt
npm@types/d3-contour3.0.6indirekt
npm@types/d3-delaunay6.0.4indirekt
npm@types/d3-dispatch3.0.7indirekt
npm@types/d3-drag3.0.7indirekt
npm@types/d3-dsv3.0.7indirekt
npm@types/d3-ease3.0.2indirekt
npm@types/d3-fetch3.0.7indirekt
npm@types/d3-force3.0.10indirekt
npm@types/d3-format3.0.4indirekt
npm@types/d3-geo3.1.0indirekt
npm@types/d3-hierarchy3.1.7indirekt
npm@types/d3-interpolate3.0.4indirekt
npm@types/d3-path3.1.1indirekt
npm@types/d3-polygon3.0.2indirekt
npm@types/d3-quadtree3.0.6indirekt
npm@types/d3-random3.0.3indirekt
npm@types/d3-scale4.0.9indirekt
npm@types/d3-scale-chromatic3.1.0indirekt
npm@types/d3-selection3.0.11indirekt
npm@types/d3-shape3.1.8indirekt
npm@types/d3-time3.0.4indirekt
npm@types/d3-time-format4.0.3indirekt
npm@types/d3-timer3.0.2indirekt
npm@types/d3-transition3.0.9indirekt
npm@types/d3-zoom3.0.8indirekt
npm@types/debug4.1.13indirekt
npm@types/deep-eql4.0.2indirekt
npm@types/estree1.0.9indirekt
npm@types/estree-jsx1.0.5indirekt
npm@types/geojson7946.0.16indirekt
npm@types/hast3.0.4indirekt
npm@types/hast3.0.5indirekt
npm@types/js-yaml4.0.9indirekt
npm@types/mdast4.0.4indirekt
npm@types/mdx2.0.14indirekt
npm@types/ms2.1.0indirekt
npm@types/nlcst2.0.3indirekt
npm@types/node24.13.1indirekt
npm@types/node24.13.2indirekt
npm@types/node25.9.1indirekt
npm@types/node25.9.2indirekt
npm@types/node26.1.1indirekt
npm@types/sax1.2.7indirekt
npm@types/trusted-types2.0.7indirekt
npm@types/unist2.0.11indirekt
npm@types/unist3.0.3indirekt
npm@typescript/typescript-aix-ppc647.0.2indirekt
npm@typescript/typescript-darwin-arm647.0.2indirekt
npm@typescript/typescript-darwin-x647.0.2indirekt
npm@typescript/typescript-freebsd-arm647.0.2indirekt
npm@typescript/typescript-freebsd-x647.0.2indirekt
npm@typescript/typescript-linux-arm7.0.2indirekt
npm@typescript/typescript-linux-arm647.0.2indirekt
npm@typescript/typescript-linux-loong647.0.2indirekt
npm@typescript/typescript-linux-mips64el7.0.2indirekt
npm@typescript/typescript-linux-ppc647.0.2indirekt
npm@typescript/typescript-linux-riscv647.0.2indirekt
npm@typescript/typescript-linux-s390x7.0.2indirekt
npm@typescript/typescript-linux-x647.0.2indirekt
npm@typescript/typescript-netbsd-arm647.0.2indirekt
npm@typescript/typescript-netbsd-x647.0.2indirekt
npm@typescript/typescript-openbsd-arm647.0.2indirekt
npm@typescript/typescript-openbsd-x647.0.2indirekt
npm@typescript/typescript-sunos-x647.0.2indirekt
npm@typescript/typescript-win32-arm647.0.2indirekt
npm@typescript/typescript-win32-x647.0.2indirekt
npm@ungap/structured-clone1.3.2indirekt
npm@upsetjs/venn.js2.0.0indirekt
npm@vitest/expect4.1.10indirekt
npm@vitest/expect4.1.7indirekt
npm@vitest/expect4.1.8indirekt
npm@vitest/mocker4.1.10indirekt
npm@vitest/mocker4.1.7indirekt
npm@vitest/mocker4.1.8indirekt
npm@vitest/pretty-format4.1.10indirekt
npm@vitest/pretty-format4.1.7indirekt
npm@vitest/pretty-format4.1.8indirekt
npm@vitest/runner4.1.10indirekt
npm@vitest/runner4.1.7indirekt
npm@vitest/runner4.1.8indirekt
npm@vitest/snapshot4.1.10indirekt
npm@vitest/snapshot4.1.7indirekt
npm@vitest/snapshot4.1.8indirekt
npm@vitest/spy4.1.10indirekt
npm@vitest/spy4.1.7indirekt
npm@vitest/spy4.1.8indirekt
npm@vitest/utils4.1.10indirekt
npm@vitest/utils4.1.7indirekt
npm@vitest/utils4.1.8indirekt
npmacorn8.17.0indirekt
npmacorn-jsx5.3.2indirekt
npmam-i-vibing0.4.0indirekt
npmanymatch3.1.3indirekt
npmarg5.0.2indirekt
npmargparse2.0.1indirekt
npmaria-query5.3.2indirekt
npmarray-iterate2.0.1indirekt
npmassertion-error2.0.1indirekt
npmastring1.9.0indirekt
npmastro-expressive-code0.44.0indirekt
npmaxobject-query4.1.0indirekt
npmbail2.0.2indirekt
npmbcp-472.1.1indirekt
npmbcp-47-match2.0.3indirekt
npmboolbase1.0.0indirekt
npmbowser2.14.1indirekt
npmccount2.0.1indirekt
npmchai6.2.2indirekt
npmcharacter-entities2.0.2indirekt
npmcharacter-entities-html42.1.0indirekt
npmcharacter-entities-legacy3.0.0indirekt
npmcharacter-reference-invalid2.0.1indirekt
npmchokidar5.0.0indirekt
npmci-info4.4.0indirekt
npmclsx2.1.1indirekt
npmcollapse-white-space2.1.0indirekt
npmcomma-separated-tokens2.0.3indirekt
npmcommander11.1.0indirekt
npmcommander7.2.0indirekt
npmcommander8.3.0indirekt
npmcommon-ancestor-path2.0.0indirekt
npmconfbox0.1.8indirekt
npmconvert-source-map2.0.0indirekt
npmcookie1.1.1indirekt
npmcookie-es1.2.3indirekt
npmcose-base1.0.3indirekt
npmcose-base2.2.0indirekt
npmcross-spawn7.0.6indirekt
npmcrossws0.3.5indirekt
npmcss-select5.2.2indirekt
npmcss-selector-parser3.3.0indirekt
npmcss-tree2.2.1indirekt
npmcss-tree3.2.1indirekt
npmcss-what6.2.2indirekt
npmcssesc3.0.0indirekt
npmcsso5.0.5indirekt
npmcytoscape3.33.2indirekt
npmcytoscape3.34.0indirekt
npmcytoscape-cose-bilkent4.1.0indirekt
npmcytoscape-fcose2.2.0indirekt
npmd37.9.0indirekt
npmd3-array2.12.1indirekt
npmd3-array3.2.4indirekt
npmd3-axis3.0.0indirekt
npmd3-brush3.0.0indirekt
npmd3-chord3.0.1indirekt
npmd3-color3.1.0indirekt
npmd3-contour4.0.2indirekt
npmd3-delaunay6.0.4indirekt
npmd3-dispatch3.0.1indirekt
npmd3-drag3.0.0indirekt
npmd3-dsv3.0.1indirekt
npmd3-ease3.0.1indirekt
npmd3-fetch3.0.1indirekt
npmd3-force3.0.0indirekt
npmd3-format3.1.2indirekt
npmd3-geo3.1.1indirekt
npmd3-hierarchy3.1.2indirekt
npmd3-interpolate3.0.1indirekt
npmd3-path1.0.9indirekt
npmd3-path3.1.0indirekt
npmd3-polygon3.0.1indirekt
npmd3-quadtree3.0.1indirekt
npmd3-random3.0.1indirekt
npmd3-sankey0.12.3indirekt
npmd3-scale4.0.2indirekt
npmd3-scale-chromatic3.1.0indirekt
npmd3-selection3.0.0indirekt
npmd3-shape1.3.7indirekt
npmd3-shape3.2.0indirekt
npmd3-time3.1.0indirekt
npmd3-time-format4.1.0indirekt
npmd3-timer3.0.1indirekt
npmd3-transition3.0.1indirekt
npmd3-zoom3.0.0indirekt
npmdagre-d3-es7.0.14indirekt
npmdayjs1.11.20indirekt
npmdayjs1.11.21indirekt
npmdebug4.4.3indirekt
npmdecode-named-character-reference1.3.0indirekt
npmdefu6.1.7indirekt
npmdelaunator5.1.0indirekt
npmdequal2.0.3indirekt
npmdestr2.0.5indirekt
npmdetect-libc2.1.2indirekt
npmdevalue5.8.1indirekt
npmdevlop1.1.0indirekt
npmdiff8.0.4indirekt
npmdirection2.0.1indirekt
npmdom-serializer2.0.0indirekt
npmdomelementtype2.3.0indirekt
npmdomhandler5.0.3indirekt
npmdompurify3.4.11indirekt
npmdomutils3.2.2indirekt
npmdset3.1.4indirekt
npmeffect4.0.0-beta.74indirekt
npmentities4.5.0indirekt
npmentities6.0.1indirekt
npmes-module-lexer2.1.0indirekt
npmes-module-lexer2.3.0indirekt
npmes-module-lexer2.3.1indirekt
npmes-toolkit1.46.1indirekt
npmes-toolkit1.47.1indirekt
npmesast-util-from-estree2.0.0indirekt
npmesast-util-from-js2.0.1indirekt
npmesbuild0.28.1indirekt
npmescape-string-regexp5.0.0indirekt
npmestree-util-attach-comments3.0.0indirekt
npmestree-util-build-jsx3.0.1indirekt
npmestree-util-is-identifier-name3.0.0indirekt
npmestree-util-scope1.0.0indirekt
npmestree-util-to-js2.0.0indirekt
npmestree-util-visit2.0.0indirekt
npmestree-walker2.0.2indirekt
npmestree-walker3.0.3indirekt
npmeventemitter35.0.4indirekt
npmexpect-type1.3.0indirekt
npmexpect-type1.4.0indirekt
npmexpressive-code0.44.0indirekt
npmextend3.0.2indirekt
npmfast-check4.8.0indirekt
npmfast-string-truncated-width3.0.3indirekt
npmfast-string-width3.0.2indirekt
npmfast-wrap-ansi0.2.2indirekt
npmfast-xml-builder1.2.0indirekt
npmfast-xml-parser5.7.3indirekt
npmfdir6.5.0indirekt
npmfind-my-way-ts0.1.6indirekt
npmflattie1.1.1indirekt
npmfontace0.4.1indirekt
npmfontkitten1.0.3indirekt
npmfsevents2.3.2indirekt
npmfsevents2.3.3indirekt
npmget-tsconfig5.0.0-beta.4indirekt
npmgithub-slugger2.0.0indirekt
npmh31.15.11indirekt
npmhachure-fill0.5.2indirekt
npmhast-util-embedded3.0.0indirekt
npmhast-util-format1.1.0indirekt
npmhast-util-from-dom5.0.1indirekt
npmhast-util-from-html2.0.3indirekt
npmhast-util-from-html-isomorphic2.0.0indirekt
npmhast-util-from-parse58.0.3indirekt
npmhast-util-has-property3.0.0indirekt
npmhast-util-is-body-ok-link3.0.1indirekt
npmhast-util-is-element3.0.0indirekt
npmhast-util-minify-whitespace1.0.1indirekt
npmhast-util-parse-selector4.0.0indirekt
npmhast-util-phrasing3.0.1indirekt
npmhast-util-raw9.1.0indirekt
npmhast-util-select6.0.4indirekt
npmhast-util-to-estree3.1.3indirekt
npmhast-util-to-html9.0.5indirekt
npmhast-util-to-jsx-runtime2.3.6indirekt
npmhast-util-to-parse58.0.1indirekt
npmhast-util-to-string3.0.1indirekt
npmhast-util-to-text4.0.2indirekt
npmhast-util-whitespace3.0.0indirekt
npmhastscript9.0.1indirekt
npmhtml-escaper3.0.3indirekt
npmhtml-void-elements3.0.0indirekt
npmhtml-whitespace-sensitive-tag-names3.0.1indirekt
npmhttp-cache-semantics4.2.0indirekt
npmi18next26.3.4indirekt
npmiconv-lite0.6.3indirekt
npmimport-meta-resolve4.2.0indirekt
npmini7.0.0indirekt
npminline-style-parser0.2.7indirekt
npminternmap1.0.1indirekt
npminternmap2.0.3indirekt
npmiron-webcrypto1.2.1indirekt
npmis-alphabetical2.0.1indirekt
npmis-alphanumerical2.0.1indirekt
npmis-decimal2.0.1indirekt
npmis-docker4.0.0indirekt
npmis-hexadecimal2.0.1indirekt
npmis-plain-obj4.1.0indirekt
npmisexe2.0.0indirekt
npmjs-yaml4.3.0indirekt
npmjsonc-parser3.3.1indirekt
npmkatex0.16.45indirekt
npmkatex0.16.47indirekt
npmkhroma2.1.0indirekt
npmklona2.0.6indirekt
npmkubernetes-types1.30.0indirekt
npmlayout-base1.0.2indirekt
npmlayout-base2.0.1indirekt
npmlefthook2.1.10indirekt
npmlefthook-darwin-arm642.1.10indirekt
npmlefthook-darwin-x642.1.10indirekt
npmlefthook-freebsd-arm642.1.10indirekt
npmlefthook-freebsd-x642.1.10indirekt
npmlefthook-linux-arm642.1.10indirekt
npmlefthook-linux-x642.1.10indirekt
npmlefthook-openbsd-arm642.1.10indirekt
npmlefthook-openbsd-x642.1.10indirekt
npmlefthook-windows-arm642.1.10indirekt
npmlefthook-windows-x642.1.10indirekt
npmlightningcss1.32.0indirekt
npmlightningcss-android-arm641.32.0indirekt
npmlightningcss-darwin-arm641.32.0indirekt
npmlightningcss-darwin-x641.32.0indirekt
npmlightningcss-freebsd-x641.32.0indirekt
npmlightningcss-linux-arm-gnueabihf1.32.0indirekt
npmlightningcss-linux-arm64-gnu1.32.0indirekt
npmlightningcss-linux-arm64-musl1.32.0indirekt
npmlightningcss-linux-x64-gnu1.32.0indirekt
npmlightningcss-linux-x64-musl1.32.0indirekt
npmlightningcss-win32-arm64-msvc1.32.0indirekt
npmlightningcss-win32-x64-msvc1.32.0indirekt
npmlodash-es4.18.1indirekt
npmlongest-streak3.1.0indirekt
npmlru-cache11.5.2indirekt
npmmagic-string0.30.21indirekt
npmmagicast0.5.3indirekt
npmmarkdown-extensions2.0.0indirekt
npmmarkdown-table3.0.4indirekt
npmmarked16.4.2indirekt
npmmdast-util-definitions6.0.0indirekt
npmmdast-util-directive3.1.0indirekt
npmmdast-util-find-and-replace3.0.2indirekt
npmmdast-util-from-markdown2.0.3indirekt
npmmdast-util-gfm3.1.0indirekt
npmmdast-util-gfm-autolink-literal2.0.1indirekt
npmmdast-util-gfm-footnote2.1.0indirekt
npmmdast-util-gfm-strikethrough2.0.0indirekt
npmmdast-util-gfm-table2.0.0indirekt
npmmdast-util-gfm-task-list-item2.0.0indirekt
npmmdast-util-mdx3.0.0indirekt
npmmdast-util-mdx-expression2.0.1indirekt
npmmdast-util-mdx-jsx3.2.0indirekt
npmmdast-util-mdxjs-esm2.0.1indirekt
npmmdast-util-phrasing4.1.0indirekt
npmmdast-util-to-hast13.2.1indirekt
npmmdast-util-to-markdown2.1.2indirekt
npmmdast-util-to-string4.0.0indirekt
npmmdn-data2.0.28indirekt
npmmdn-data2.27.1indirekt
npmmermaid11.15.0indirekt
npmmermaid-isomorphic3.1.0indirekt
npmmicromark4.0.2indirekt
npmmicromark-core-commonmark2.0.3indirekt
npmmicromark-extension-directive4.0.0indirekt
npmmicromark-extension-gfm3.0.0indirekt
npmmicromark-extension-gfm-autolink-literal2.1.0indirekt
npmmicromark-extension-gfm-footnote2.1.0indirekt
npmmicromark-extension-gfm-strikethrough2.1.0indirekt
npmmicromark-extension-gfm-table2.1.1indirekt
npmmicromark-extension-gfm-tagfilter2.0.0indirekt
npmmicromark-extension-gfm-task-list-item2.1.0indirekt
npmmicromark-extension-mdx-expression3.0.1indirekt
npmmicromark-extension-mdx-jsx3.0.2indirekt
npmmicromark-extension-mdx-md2.0.0indirekt
npmmicromark-extension-mdxjs3.0.0indirekt
npmmicromark-extension-mdxjs-esm3.0.0indirekt
npmmicromark-factory-destination2.0.1indirekt
npmmicromark-factory-label2.0.1indirekt
npmmicromark-factory-mdx-expression2.0.3indirekt
npmmicromark-factory-space2.0.1indirekt
npmmicromark-factory-title2.0.1indirekt
npmmicromark-factory-whitespace2.0.1indirekt
npmmicromark-util-character2.1.1indirekt
npmmicromark-util-chunked2.0.1indirekt
npmmicromark-util-classify-character2.0.1indirekt
npmmicromark-util-combine-extensions2.0.1indirekt
npmmicromark-util-decode-numeric-character-reference2.0.2indirekt
npmmicromark-util-decode-string2.0.1indirekt
npmmicromark-util-encode2.0.1indirekt
npmmicromark-util-events-to-acorn2.0.3indirekt
npmmicromark-util-html-tag-name2.0.1indirekt
npmmicromark-util-normalize-identifier2.0.1indirekt
npmmicromark-util-resolve-all2.0.1indirekt
npmmicromark-util-sanitize-uri2.0.1indirekt
npmmicromark-util-subtokenize2.1.0indirekt
npmmicromark-util-symbol2.0.1indirekt
npmmicromark-util-types2.0.2indirekt
npmmini-svg-data-uri1.4.4indirekt
npmmlly1.8.2indirekt
npmmrmime2.0.1indirekt
npmms2.1.3indirekt
npmmsgpackr2.0.4indirekt
npmmsgpackr-extract3.0.4indirekt
npmmultipasta0.2.7indirekt
npmnanoid3.3.12indirekt
npmnanoid3.3.16indirekt
npmneotraverse0.6.18indirekt
npmnlcst-to-string4.0.0indirekt
npmnode-fetch-native1.6.7indirekt
npmnode-gyp-build-optional-packages5.2.2indirekt
npmnode-mock-http1.0.4indirekt
npmnormalize-path3.0.0indirekt
npmnth-check2.1.1indirekt
npmobug2.1.1indirekt
npmobug2.1.2indirekt
npmobug2.1.3indirekt
npmobug2.1.4indirekt
npmofetch1.5.1indirekt
npmohash2.0.11indirekt
npmoniguruma-parser0.12.2indirekt
npmoniguruma-to-es4.3.6indirekt
npmp-limit7.3.0indirekt
npmp-queue9.3.1indirekt
npmp-timeout7.0.1indirekt
npmpackage-manager-detector1.7.0indirekt
npmpagefind1.5.2indirekt
npmparse-entities4.0.2indirekt
npmparse-latin7.0.0indirekt
npmparse57.3.0indirekt
npmpath-data-parser0.1.0indirekt
npmpath-expression-matcher1.5.0indirekt
npmpath-key3.1.1indirekt
npmpathe2.0.3indirekt
npmpiccolore0.1.3indirekt
npmpicocolors1.1.1indirekt
npmpicomatch2.3.2indirekt
npmpicomatch4.0.4indirekt
npmpicomatch4.0.5indirekt
npmpkg-types1.3.1indirekt
npmplaywright1.61.1indirekt
npmplaywright-core1.61.1indirekt
npmpoints-on-curve0.2.0indirekt
npmpoints-on-path0.2.1indirekt
npmpostcss8.5.15indirekt
npmpostcss8.5.19indirekt
npmpostcss-nested6.2.0indirekt
npmpostcss-selector-parser6.1.4indirekt
npmprismjs1.30.0indirekt
npmprocess-ancestry0.1.0indirekt
npmproperty-information7.2.0indirekt
npmpure-rand8.4.0indirekt
npmradix31.1.2indirekt
npmreaddirp5.0.0indirekt
npmrecma-build-jsx1.0.0indirekt
npmrecma-jsx1.0.1indirekt
npmrecma-parse1.0.0indirekt
npmrecma-stringify1.0.0indirekt
npmregex6.1.0indirekt
npmregex-recursion6.0.2indirekt
npmregex-utilities2.3.0indirekt
npmrehype13.0.2indirekt
npmrehype-expressive-code0.44.0indirekt
npmrehype-format5.0.1indirekt
npmrehype-mermaid3.0.0indirekt
npmrehype-parse9.0.1indirekt
npmrehype-raw7.0.0indirekt
npmrehype-recma1.0.0indirekt
npmrehype-stringify10.0.1indirekt
npmremark-directive4.0.0indirekt
npmremark-gfm4.0.1indirekt
npmremark-mdx3.1.1indirekt
npmremark-parse11.0.0indirekt
npmremark-rehype11.1.2indirekt
npmremark-smartypants3.0.2indirekt
npmremark-stringify11.0.0indirekt
npmresolve-pkg-maps1.0.0indirekt
npmretext9.0.0indirekt
npmretext-latin4.0.0indirekt
npmretext-smartypants6.2.0indirekt
npmretext-stringify4.0.0indirekt
npmrobust-predicates3.0.3indirekt
npmrolldown1.0.3indirekt
npmrolldown1.1.5indirekt
npmrollup4.62.0indirekt
npmroughjs4.6.6indirekt
npmrw1.3.3indirekt
npmsafer-buffer2.1.2indirekt
npmsatteri0.9.4indirekt
npmsatteri0.9.5indirekt
npmsax1.6.0indirekt
npmsemver7.8.5indirekt
npmshebang-command2.0.0indirekt
npmshebang-regex3.0.0indirekt
npmshiki4.3.1indirekt
npmsiginfo2.0.0indirekt
npmsisteransi1.0.5indirekt
npmsitemap9.0.1indirekt
npmsmol-toml1.7.0indirekt
npmsource-map0.7.6indirekt
npmsource-map-js1.2.1indirekt
npmspace-separated-tokens2.0.2indirekt
npmstackback0.0.2indirekt
npmstd-env4.1.0indirekt
npmstd-env4.2.0indirekt
npmstream-replace-string2.0.0indirekt
npmstringify-entities4.0.4indirekt
npmstrnum2.3.0indirekt
npmstyle-to-js1.1.21indirekt
npmstyle-to-object1.0.14indirekt
npmstylis4.4.0indirekt
npmsvgo4.0.2indirekt
npmtiny-inflate1.0.3indirekt
npmtinybench2.9.0indirekt
npmtinyclip0.1.15indirekt
npmtinyexec1.2.2indirekt
npmtinyexec1.2.4indirekt
npmtinyglobby0.2.16indirekt
npmtinyglobby0.2.17indirekt
npmtinyrainbow3.1.0indirekt
npmtoml4.1.1indirekt
npmtrim-lines3.0.1indirekt
npmtrough2.2.0indirekt
npmts-dedent2.2.0indirekt
npmts-dedent2.3.0indirekt
npmtslib2.8.1indirekt
npmtypescript6.0.3indirekt
npmtypescript7.0.2indirekt
npmufo1.6.4indirekt
npmultrahtml1.6.0indirekt
npmultrahtml1.7.0indirekt
npmuncrypto0.1.3indirekt
npmundici8.5.0indirekt
npmundici8.7.0indirekt
npmundici-types7.18.2indirekt
npmundici-types7.24.6indirekt
npmundici-types8.3.0indirekt
npmunified11.0.5indirekt
npmunifont0.7.4indirekt
npmunist-util-find-after5.0.0indirekt
npmunist-util-is6.0.1indirekt
npmunist-util-modify-children4.0.0indirekt
npmunist-util-position5.0.0indirekt
npmunist-util-position-from-estree2.0.0indirekt
npmunist-util-remove-position5.0.0indirekt
npmunist-util-stringify-position4.0.0indirekt
npmunist-util-visit5.1.0indirekt
npmunist-util-visit-children3.0.0indirekt
npmunist-util-visit-parents6.0.2indirekt
npmunstorage1.17.5indirekt
npmurl-extras0.1.0indirekt
npmutil-deprecate1.0.2indirekt
npmuuid14.0.0indirekt
npmvfile6.0.3indirekt
npmvfile-location5.0.3indirekt
npmvfile-message4.0.3indirekt
npmvite8.0.16indirekt
npmvite8.1.5indirekt
npmvitefu1.1.3indirekt
npmvitest4.1.10indirekt
npmvitest4.1.7indirekt
npmvitest4.1.8indirekt
npmweb-namespaces2.0.1indirekt
npmwhich2.0.2indirekt
npmwhy-is-node-running2.3.0indirekt
npmxml-naming0.1.0indirekt
npmxxhash-wasm1.1.0indirekt
npmyaml2.9.0indirekt
npmyargs-parser22.0.0indirekt
npmyocto-queue1.2.2indirekt
npmzod4.1.8indirekt
npmzod4.4.3indirekt
npmzwitch2.0.4indirekt
PyPIannotated-types0.7.0indirekt
PyPIarrow1.4.0indirekt
PyPIattrs26.1.0indirekt
PyPIboto31.43.51indirekt
PyPIbotocore1.43.51indirekt
PyPIcffi2.0.0indirekt
PyPIcolorama0.4.6indirekt
PyPIcryptography49.0.0indirekt
PyPIfqdn1.5.1indirekt
PyPIidna3.15indirekt
PyPIiniconfig2.3.0indirekt
PyPIisoduration20.11.0indirekt
PyPIjmespath1.1.0indirekt
PyPIjsonpointer3.1.1indirekt
PyPIjsonschema4.26.0indirekt
PyPIjsonschema-specifications2025.9.1indirekt
PyPIlark1.3.1indirekt
PyPInodeenv1.10.0indirekt
PyPIobsigna0.15.0indirekt
PyPIpackaging26.0indirekt
PyPIpluggy1.6.0indirekt
PyPIpycparser3.0indirekt
PyPIpydantic2.13.4indirekt
PyPIpydantic-core2.46.4indirekt
PyPIpygments2.20.0indirekt
PyPIpyright1.1.411indirekt
PyPIpytest9.1.1indirekt
PyPIpython-dateutil2.9.0.post0indirekt
PyPIreferencing0.37.0indirekt
PyPIrfc3339-validator0.1.4indirekt
PyPIrfc3986-validator0.1.1indirekt
PyPIrfc3987-syntax1.1.0indirekt
PyPIrpds-py0.30.0indirekt
PyPIruff0.15.22indirekt
PyPIs3transfer0.19.0indirekt
PyPIsix1.17.0indirekt
PyPItyping-extensions4.15.0indirekt
PyPItyping-inspection0.4.2indirekt
PyPItzdata2026.2indirekt
PyPIuri-template1.3.0indirekt
PyPIurllib32.7.0indirekt
PyPIwebcolors25.10.0indirekt
Abhängigkeits-Advisories 2

Dieses Repository veröffentlicht kein vom Index auflösbares Paket, daher wurde sein eigener Abhängigkeitsgraph bewertet – 904 Pakete, darunter auch Entwicklungs- und Test-Pins, die nie ausgeliefert werden: 2 tragen bekannte Advisories, davon 0 direkte.

PaketVersionBeziehungSchweregradAdvisoriesBehoben in
dompurify3.4.11indirektniedrig13.4.12
golang.org/x/cryptov0.52.0indirektunbekannt1

Ein Advisory bedeutet, dass die im Abhängigkeitsgraphen erfasste Version in den betroffenen Bereich eines Advisories fällt. Erreichbarkeit wird nicht analysiert, und der Graph enthält Entwicklungs- und Test-Pins — ein Fund kann das Werkzeug betreffen und nicht die ausgelieferte Software.

JSON-Rohbericht maschinenlesbar
{
  "data": {
    "repo": {
      "topics": [
        "ai",
        "ai-agents",
        "audit",
        "cryptography",
        "ed25519",
        "golang",
        "mcp",
        "model-context-protocol",
        "python",
        "receipts",
        "security",
        "typescript",
        "verifiable-credentials",
        "w3c-vc",
        "agent-receipts",
        "obsigna"
      ],
      "is_fork": false,
      "size_kb": 16028,
      "has_wiki": true,
      "homepage": "https://agentreceipts.ai",
      "languages": {
        "Go": 1988414,
        "CSS": 6548,
        "MDX": 507814,
        "HTML": 7960,
        "Alloy": 24823,
        "Astro": 7620,
        "Shell": 35749,
        "Python": 768698,
        "JavaScript": 49951,
        "TypeScript": 499745
      },
      "pushed_at": "2026-07-20T04:10:52Z",
      "created_at": "2026-04-02T07:53:51Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-20T04:10:53Z",
      "description": "Agent Receipts — cryptographically signed audit trails for AI agent actions. Protocol spec, SDKs (Go, TypeScript, Python), and MCP proxy.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "main",
      "license_spdx_raw": "Apache-2.0",
      "primary_language": "Go",
      "significant_languages": [
        "Go",
        "Python",
        "MDX",
        "TypeScript"
      ]
    },
    "owner": {
      "blog": "https://agentreceipts.ai",
      "name": "Agent Receipts",
      "type": "Organization",
      "login": "agent-receipts",
      "company": null,
      "location": null,
      "followers": 11,
      "avatar_url": "https://avatars.githubusercontent.com/u/272751690?v=4",
      "created_at": "2026-04-01T08:01:33Z",
      "is_verified": null,
      "public_repos": 9,
      "account_age_days": 111
    },
    "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": "obsigna/v0.30.0",
          "kind": "other",
          "published_at": "2026-07-17T09:59:03Z"
        },
        {
          "tag": "sdk-py-v0.15.0",
          "kind": "other",
          "published_at": "2026-07-17T09:54:50Z"
        },
        {
          "tag": "sdk-ts-v0.17.0",
          "kind": "other",
          "published_at": "2026-07-17T09:52:11Z"
        },
        {
          "tag": "sdk/go/v0.24.0",
          "kind": "other",
          "published_at": "2026-07-17T09:03:09Z"
        },
        {
          "tag": "opencode-plugin-v0.2.0",
          "kind": "other",
          "published_at": "2026-06-24T08:46:01Z"
        },
        {
          "tag": "sdk-ts-v0.16.0",
          "kind": "other",
          "published_at": "2026-06-24T08:13:10Z"
        },
        {
          "tag": "sdk/go/v0.23.0",
          "kind": "other",
          "published_at": "2026-06-23T04:01:34Z"
        },
        {
          "tag": "obsigna/v0.29.0",
          "kind": "other",
          "published_at": "2026-06-23T03:13:04Z"
        },
        {
          "tag": "sdk-py-v0.14.0",
          "kind": "other",
          "published_at": "2026-06-23T01:06:04Z"
        },
        {
          "tag": "sdk-ts-v0.15.0",
          "kind": "other",
          "published_at": "2026-06-23T01:06:01Z"
        },
        {
          "tag": "sdk/go/v0.22.0",
          "kind": "other",
          "published_at": "2026-06-23T01:04:10Z"
        },
        {
          "tag": "sdk-ts-v0.15.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-21T09:52:01Z"
        },
        {
          "tag": "sdk-py-v0.14.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-21T09:52:11Z"
        },
        {
          "tag": "sdk/go/v0.22.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-21T06:38:51Z"
        },
        {
          "tag": "obsigna/v0.28.0",
          "kind": "other",
          "published_at": "2026-06-21T06:34:33Z"
        },
        {
          "tag": "sdk/go/v0.21.0",
          "kind": "other",
          "published_at": "2026-06-21T06:33:06Z"
        },
        {
          "tag": "obsigna/v0.27.0",
          "kind": "other",
          "published_at": "2026-06-20T03:28:07Z"
        },
        {
          "tag": "sdk/go/v0.20.0",
          "kind": "other",
          "published_at": "2026-06-20T03:26:34Z"
        },
        {
          "tag": "obsigna/v0.28.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-20T03:27:05Z"
        },
        {
          "tag": "sdk/go/v0.21.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-20T03:11:18Z"
        },
        {
          "tag": "sdk/go/v0.20.0-alpha.2",
          "kind": "other",
          "published_at": "2026-06-19T04:22:19Z"
        },
        {
          "tag": "obsigna/v0.27.0-alpha.2",
          "kind": "other",
          "published_at": "2026-06-17T05:26:43Z"
        },
        {
          "tag": "obsigna/v0.27.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-17T00:14:36Z"
        },
        {
          "tag": "opencode-plugin-v0.1.0",
          "kind": "other",
          "published_at": "2026-06-16T09:03:52Z"
        },
        {
          "tag": "opencode-plugin-v0.1.0-alpha.3",
          "kind": "other",
          "published_at": "2026-06-16T08:40:11Z"
        },
        {
          "tag": "sdk-ts-v0.14.1",
          "kind": "other",
          "published_at": "2026-06-16T08:24:56Z"
        },
        {
          "tag": "opencode-plugin-v0.1.0-alpha.2",
          "kind": "other",
          "published_at": "2026-06-16T04:48:06Z"
        },
        {
          "tag": "opencode-plugin-v0.1.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-16T03:53:12Z"
        },
        {
          "tag": "sdk-ts-v0.14.0",
          "kind": "other",
          "published_at": "2026-06-16T03:36:03Z"
        },
        {
          "tag": "obsigna/v0.26.0",
          "kind": "other",
          "published_at": "2026-06-14T09:31:01Z"
        },
        {
          "tag": "obsigna/v0.25.0",
          "kind": "other",
          "published_at": "2026-06-13T04:38:51Z"
        },
        {
          "tag": "obsigna/v0.25.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-13T04:26:25Z"
        },
        {
          "tag": "hook/v0.18.0",
          "kind": "other",
          "published_at": "2026-06-13T03:05:20Z"
        },
        {
          "tag": "sdk/go/v0.19.0",
          "kind": "other",
          "published_at": "2026-06-13T02:59:41Z"
        },
        {
          "tag": "hook/v0.18.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-13T02:50:15Z"
        },
        {
          "tag": "obsigna/v0.24.0",
          "kind": "other",
          "published_at": "2026-06-13T02:35:00Z"
        },
        {
          "tag": "sdk/go/v0.20.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-13T02:16:33Z"
        },
        {
          "tag": "collector/v0.14.0",
          "kind": "other",
          "published_at": "2026-06-13T01:40:39Z"
        },
        {
          "tag": "mcp-proxy/v0.15.0-alpha.2",
          "kind": "other",
          "published_at": "2026-06-12T22:56:39Z"
        },
        {
          "tag": "daemon/v0.23.0",
          "kind": "other",
          "published_at": "2026-06-12T10:41:12Z"
        },
        {
          "tag": "daemon/v0.22.0",
          "kind": "other",
          "published_at": "2026-06-12T10:11:58Z"
        },
        {
          "tag": "sdk-ts-v0.13.0",
          "kind": "other",
          "published_at": "2026-06-12T09:56:57Z"
        },
        {
          "tag": "sdk-py-v0.13.0",
          "kind": "other",
          "published_at": "2026-06-12T09:55:57Z"
        },
        {
          "tag": "daemon/v0.22.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-12T09:28:40Z"
        },
        {
          "tag": "sdk-py-v0.13.0a2",
          "kind": "other",
          "published_at": "2026-06-12T05:18:53Z"
        },
        {
          "tag": "daemon/v0.21.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-12T03:17:33Z"
        },
        {
          "tag": "daemon/v0.20.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-12T00:41:03Z"
        },
        {
          "tag": "hook/v0.17.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-12T00:40:02Z"
        },
        {
          "tag": "sdk/go/v0.19.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-12T00:34:35Z"
        },
        {
          "tag": "daemon/v0.19.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-11T10:58:54Z"
        },
        {
          "tag": "hook/v0.16.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-11T10:57:55Z"
        },
        {
          "tag": "sdk-py-v0.13.0a1",
          "kind": "other",
          "published_at": "2026-06-11T10:41:12Z"
        },
        {
          "tag": "sdk-ts-v0.13.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-11T10:40:53Z"
        },
        {
          "tag": "sdk/go/v0.18.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-11T10:30:26Z"
        },
        {
          "tag": "daemon/v0.18.0",
          "kind": "other",
          "published_at": "2026-06-11T00:31:24Z"
        },
        {
          "tag": "hook/v0.15.0",
          "kind": "other",
          "published_at": "2026-06-11T00:30:35Z"
        },
        {
          "tag": "daemon/v0.18.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-09T07:41:41Z"
        },
        {
          "tag": "hook/v0.15.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-09T07:41:05Z"
        },
        {
          "tag": "sdk/go/v0.17.0",
          "kind": "other",
          "published_at": "2026-06-11T00:26:20Z"
        },
        {
          "tag": "sdk/go/v0.17.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-09T07:25:06Z"
        },
        {
          "tag": "hook/v0.14.0",
          "kind": "other",
          "published_at": "2026-06-09T06:58:28Z"
        },
        {
          "tag": "daemon/v0.17.0",
          "kind": "other",
          "published_at": "2026-06-09T06:56:32Z"
        },
        {
          "tag": "mcp-proxy/v0.14.0",
          "kind": "other",
          "published_at": "2026-06-09T06:53:42Z"
        },
        {
          "tag": "sdk-py-v0.12.0",
          "kind": "other",
          "published_at": "2026-06-09T06:50:45Z"
        },
        {
          "tag": "sdk-ts-v0.12.0",
          "kind": "other",
          "published_at": "2026-06-09T06:49:11Z"
        },
        {
          "tag": "sdk/go/v0.16.0",
          "kind": "other",
          "published_at": "2026-06-09T05:59:05Z"
        },
        {
          "tag": "mcp-proxy/v0.14.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-09T00:25:05Z"
        },
        {
          "tag": "sdk-ts-v0.12.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-08T20:52:05Z"
        },
        {
          "tag": "sdk-py-v0.12.0a1",
          "kind": "other",
          "published_at": "2026-06-08T20:52:05Z"
        },
        {
          "tag": "daemon/v0.17.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-08T20:47:41Z"
        },
        {
          "tag": "hook/v0.14.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-08T20:46:43Z"
        },
        {
          "tag": "sdk/go/v0.16.0-alpha.1",
          "kind": "other",
          "published_at": "2026-06-08T20:21:03Z"
        },
        {
          "tag": "sdk-py-v0.11.1",
          "kind": "other",
          "published_at": "2026-06-03T02:16:33Z"
        },
        {
          "tag": "sdk-ts-v0.11.1",
          "kind": "other",
          "published_at": "2026-06-03T02:14:25Z"
        },
        {
          "tag": "daemon/v0.16.0",
          "kind": "other",
          "published_at": "2026-06-03T01:35:22Z"
        },
        {
          "tag": "daemon/v0.15.0",
          "kind": "other",
          "published_at": "2026-06-02T09:12:32Z"
        },
        {
          "tag": "sdk/go/v0.15.0",
          "kind": "other",
          "published_at": "2026-06-02T09:04:21Z"
        },
        {
          "tag": "daemon/v0.14.0",
          "kind": "other",
          "published_at": "2026-06-02T02:00:59Z"
        },
        {
          "tag": "mcp-proxy/v0.13.0",
          "kind": "other",
          "published_at": "2026-06-01T03:04:22Z"
        },
        {
          "tag": "hook/v0.13.0",
          "kind": "other",
          "published_at": "2026-06-01T03:04:04Z"
        },
        {
          "tag": "sdk-py-v0.11.0",
          "kind": "other",
          "published_at": "2026-06-01T03:03:35Z"
        },
        {
          "tag": "sdk-ts-v0.11.0",
          "kind": "other",
          "published_at": "2026-06-01T03:03:28Z"
        },
        {
          "tag": "sdk/go/v0.14.0",
          "kind": "other",
          "published_at": "2026-06-01T02:58:17Z"
        },
        {
          "tag": "collector/v0.13.0",
          "kind": "other",
          "published_at": "2026-05-30T05:38:51Z"
        },
        {
          "tag": "mcp-proxy/v0.12.0",
          "kind": "other",
          "published_at": "2026-05-24T08:22:19Z"
        },
        {
          "tag": "daemon/v0.13.0",
          "kind": "other",
          "published_at": "2026-05-24T08:11:22Z"
        },
        {
          "tag": "hook/v0.12.0",
          "kind": "other",
          "published_at": "2026-05-24T08:11:08Z"
        },
        {
          "tag": "sdk-py-v0.10.0",
          "kind": "other",
          "published_at": "2026-05-24T08:33:54Z"
        },
        {
          "tag": "sdk-ts-v0.10.0",
          "kind": "other",
          "published_at": "2026-05-24T08:38:06Z"
        },
        {
          "tag": "sdk/go/v0.13.0",
          "kind": "other",
          "published_at": "2026-05-24T07:34:50Z"
        },
        {
          "tag": "daemon/v0.12.1",
          "kind": "other",
          "published_at": "2026-05-23T07:35:53Z"
        },
        {
          "tag": "hook/v0.11.1",
          "kind": "other",
          "published_at": "2026-05-23T07:35:45Z"
        },
        {
          "tag": "mcp-proxy/v0.11.1",
          "kind": "other",
          "published_at": "2026-05-23T07:35:37Z"
        },
        {
          "tag": "mcp-proxy/v0.11.1-alpha.1",
          "kind": "other",
          "published_at": "2026-05-23T07:17:15Z"
        },
        {
          "tag": "hook/v0.11.1-alpha.1",
          "kind": "other",
          "published_at": "2026-05-23T07:09:13Z"
        },
        {
          "tag": "sdk/go/v0.12.1",
          "kind": "other",
          "published_at": "2026-05-23T07:32:14Z"
        },
        {
          "tag": "sdk/go/v0.12.1-alpha.1",
          "kind": "other",
          "published_at": "2026-05-23T07:04:22Z"
        },
        {
          "tag": "hook/v0.11.0",
          "kind": "other",
          "published_at": "2026-05-22T04:14:02Z"
        },
        {
          "tag": "daemon/v0.12.0",
          "kind": "other",
          "published_at": "2026-05-22T04:13:51Z"
        },
        {
          "tag": "mcp-proxy/v0.11.0",
          "kind": "other",
          "published_at": "2026-05-22T04:13:06Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "a6356278de37a0c79a67989fa1457bd962f8f0ea",
          "body": "…s (#989)\n\n* chore(deps-dev): bump the npm_and_yarn group in /sdk/ts with 2 updates\n\nBumps the npm_and_yarn group in /sdk/ts with 2 updates: [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).\n\n\nUpda\n[…]\n--------\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Otto Jongerius <otto@agentreceipts.ai>",
          "is_bot": true,
          "headline": "chore(deps-dev): bump the npm_and_yarn group in /sdk/ts with 2 update…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-20T04:10:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9447d052d88a3ad1d2ef6e63406e334dfb934ab3",
          "body": "Bumps the github-actions group with 4 updates: [actions/setup-go](https://github.com/actions/setup-go), [github/codeql-action/init](https://github.com/github/codeql-action), [github/codeql-action/analyze](https://github.com/github/codeql-action) and [actions/setup-node](https://github.com/actions/se\n[…]\nsion-update:semver-major\n  dependency-group: github-actions\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": "chore(deps): bump the github-actions group with 4 updates (#992)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-20T03:32:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4067e3e444b6941ab7400a7ab0d5f6a755d88a95",
          "body": "Bumps the uv group in /sdk/py with 2 updates: [boto3](https://github.com/boto/boto3) and [ruff](https://github.com/astral-sh/ruff).\n\n\nUpdates `boto3` from 1.43.46 to 1.43.51\n- [Release notes](https://github.com/boto/boto3/releases)\n- [Commits](https://github.com/boto/boto3/compare/1.43.46...1.43.51)\n[…]\nte-type: version-update:semver-patch\n  dependency-group: uv\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": "chore(deps): bump the uv group in /sdk/py with 2 updates (#991)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-20T03:31:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fb2ec7638ad6c9c8a5fca4a9bcbeed8f61887b64",
          "body": "…990)\n\nBumps the npm_and_yarn group in /site-obsigna with 1 update: [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro).\n\n\nUpdates `astro` from 7.0.7 to 7.1.1\n- [Release notes](https://github.com/withastro/astro/releases)\n- [Changelog](https://github.com/withastro/astro/blob/main/pa\n[…]\nersion-update:semver-minor\n  dependency-group: npm_and_yarn\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": "chore(deps): bump astro in /site-obsigna in the npm_and_yarn group (#…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-20T03:31:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a742dfb9fe8b87f1db82cde03da3668d7868a41e",
          "body": "Bumps the npm_and_yarn group in /site with 1 update: [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro).\n\n\nUpdates `astro` from 7.0.7 to 7.1.1\n- [Release notes](https://github.com/withastro/astro/releases)\n- [Changelog](https://github.com/withastro/astro/blob/main/packages/astro/CH\n[…]\nersion-update:semver-minor\n  dependency-group: npm_and_yarn\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": "chore(deps): bump astro in /site in the npm_and_yarn group (#988)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-20T03:30:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f0c6a4b890c1fee063a6129fdf4e3732194e7533",
          "body": "…986)\n\nBumps the go group in /mcp-proxy with 1 update: [obsigna.dev/daemon](https://github.com/agent-receipts/obsigna).\n\n\nUpdates `obsigna.dev/daemon` from 0.24.0 to 0.30.0\n- [Release notes](https://github.com/agent-receipts/obsigna/releases)\n- [Commits](https://github.com/agent-receipts/obsigna/com\n[…]\nte-type: version-update:semver-minor\n  dependency-group: go\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": "chore(deps): bump obsigna.dev/daemon in /mcp-proxy in the go group (#…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-20T03:29:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c9c702280de1d6cb012eec601c0100e510c5a1f4",
          "body": "Bumps the go group in /sdk/go with 1 update: [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\n\nUpdates `modernc.org/sqlite` from 1.53.0 to 1.54.0\n- [Changelog](https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md)\n- [Commits](https://gitlab.com/cznic/sqlite/compare/v1.53.0...v1.54.0)\n\n---\n[…]\nte-type: version-update:semver-minor\n  dependency-group: go\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": "chore(deps): bump modernc.org/sqlite in /sdk/go in the go group (#987)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-20T03:29:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "daeaa18861c28fac78027b8c97017964bfe518c7",
          "body": "Cuts the Unreleased daemon/CHANGELOG.md section (obsigna train changelog\nper ADR-0034) into a released version: forensic response disclosure\n(#819), hook absolute action.target.resource resolution (#969, was\nmerged but never changelogged), and the golang.org/x/crypto security\nbump / Go module resolution fix (#977, #978, #981, #982).\n\nLast obsigna/v* release was v0.29.0 (2026-06-23); this catches up\n~3.5 weeks of unreleased changes across daemon/mcp-proxy/hook/collector.",
          "is_bot": false,
          "headline": "chore(obsigna): prepare v0.30.0 release (#985)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-17T09:56:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b905cb4e081745038c14039b0126729cfed59dd",
          "body": "Cuts the Unreleased CHANGELOG section into a released version:\ntarget_system/target_resource on DaemonEmitter.emit() (#946) and\ndid:key v0.7 resolution (#958). Both landed cross-SDK; TS and Go have\nnow caught up (#942/#979, #983) -- this closes the gap for Python.",
          "is_bot": false,
          "headline": "chore(sdk-py): prepare v0.15.0 release (#984)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-17T09:53:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0d3e26c503f8eb647240afa865c0fae2b6a559f6",
          "body": "Cuts the Unreleased CHANGELOG section (did:key v0.7 resolution, #958)\ninto a released version. Catches sdk-ts up with the sdk-go release\n(#979) -- this feature landed across all three SDKs simultaneously but\nonly Go has shipped it so far.",
          "is_bot": false,
          "headline": "chore(sdk-ts): prepare v0.17.0 release (#983)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-17T09:51:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "175b1a412437321ac0bfd0531b970435296a0d45",
          "body": "…a release (#980)\n\nGo's monorepo convention resolves a submodule's version off a\nper-subdirectory tag (daemon/vX.Y.Z, ...), not off the packaging tag\nthis workflow triggers on. Nothing has pushed those tags since\nADR-0034 retired the standalone per-component release workflows, so\nobsigna.dev/daemon \n[…]\no-submodules job that runs after every other release gate\npasses and pushes a matching submodule tag at the same commit and\nversion as the obsigna train, mirroring ADR-0034's unified-version\ndecision.",
          "is_bot": false,
          "headline": "ci(release): tag daemon/mcp-proxy/hook/collector submodules on obsign…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-17T09:26:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2b4e67ba2b1586e8cf47b8066e4432967b3ff7f9",
          "body": "…(#982)\n\nmcp-proxy's e2e_daemon_test.go and emitter_integration_test.go import\nobsigna.dev/daemon directly, but go.mod never declared it -- it only\nresolved because the repo-root go.work locally overrides it to the\nin-tree module. Standalone (GOWORK=off, exactly what Dependabot and any\nexternal cons\n[…]\nR-0037\npublished tag (#978); daemon/v0.24.0 (just cut) is the first one whose\ngo.mod declares the correct obsigna.dev/daemon path. `go mod tidy\n-mod=mod` now resolves cleanly against it.\n\nCloses #978.",
          "is_bot": false,
          "headline": "fix(mcp-proxy): declare obsigna.dev/daemon as an explicit dependency …",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-17T09:21:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "65800d237c0addf66e899d535e5d65ca7c4d8354",
          "body": "…oxy (#981)\n\ndaemon's own production code (internal/checkpoint/checkpoint.go) imports\nobsigna.dev/sdk/go/checkpoint, a package that only exists starting in\nsdk/go v0.24.0 -- neither the previously pinned v0.22.0 nor the prior\nlatest release (v0.23.0) contain it. With GOWORK=off (daemon's actual\nGoRe\n[…]\ne config), this made daemon's release build fail\noutright. Bumps hook and mcp-proxy in lockstep since all three share\nthe sdk/go dependency and this repo bumps them together.\n\nPart of unblocking #978.",
          "is_bot": false,
          "headline": "build(go): bump obsigna.dev/sdk/go to v0.24.0 in daemon, hook, mcp-pr…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-17T09:12:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ba5ee16525ba5d19932584b980997b3654cb94b1",
          "body": "Cuts the Unreleased CHANGELOG section (response disclosure #819, did:key\nv0.7 #958, checkpoint package extraction #932, protocol version 0.6.0,\nx/crypto security bump) into a released version. Unblocks #978: no\npublished sdk/go version currently contains the checkpoint package, so\ndaemon's GOWORK=off release build fails on that import.",
          "is_bot": false,
          "headline": "chore(sdk-go): prepare v0.24.0 release (#979)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-17T09:01:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6fcb7212aaf13e5175a22a261582a6e392c70c99",
          "body": "Resolves 39 open Dependabot alerts (several critical: SSH agent/key\nconstraint bypass, auth bypass via unenforced revocation) across\ncross-sdk-tests, daemon, and mcp-proxy, which were pinned to v0.45.0.\nsdk/go was already on v0.52.0; hook does not depend on x/crypto.",
          "is_bot": false,
          "headline": "fix(deps): bump golang.org/x/crypto to v0.52.0 (#977)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-17T08:44:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "617c8ac8d04a14efa2b73cc408398889517a8184",
          "body": "…s (#976)\n\nBumps the npm_and_yarn group in /sdk/ts with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) | `2.5.2` | `2.5.3` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/ty\n[…]\nersion-update:semver-patch\n  dependency-group: npm_and_yarn\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": "chore(deps-dev): bump the npm_and_yarn group in /sdk/ts with 6 update…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-14T04:25:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "83ebe2aaba92deaa7770bde2036d1cf5bf4a34c9",
          "body": "Bumps the github-actions group with 3 updates: [github/codeql-action/init](https://github.com/github/codeql-action), [github/codeql-action/analyze](https://github.com/github/codeql-action) and [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv).\n\n\nUpdates `github/codeql-action/init` from 4.3\n[…]\nsion-update:semver-minor\n  dependency-group: github-actions\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": "chore(deps): bump the github-actions group with 3 updates (#975)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-14T04:25:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6b1bc61d12cf24ac074781e5c6f10b8778d2f30b",
          "body": "Bumps the uv group in /sdk/py with 2 updates: [boto3](https://github.com/boto/boto3) and [ruff](https://github.com/astral-sh/ruff).\n\n\nUpdates `boto3` from 1.43.40 to 1.43.46\n- [Release notes](https://github.com/boto/boto3/releases)\n- [Commits](https://github.com/boto/boto3/compare/1.43.40...1.43.46)\n[…]\nte-type: version-update:semver-patch\n  dependency-group: uv\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": "chore(deps): bump the uv group in /sdk/py with 2 updates (#974)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-14T04:24:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f8030a80e4821f67e67409ca6c6359d52fb8f671",
          "body": "Bumps the npm_and_yarn group in /site with 1 update: [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro).\n\n\nUpdates `astro` from 7.0.6 to 7.0.7\n- [Release notes](https://github.com/withastro/astro/releases)\n- [Changelog](https://github.com/withastro/astro/blob/main/packages/astro/CH\n[…]\nersion-update:semver-patch\n  dependency-group: npm_and_yarn\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": "chore(deps): bump astro in /site in the npm_and_yarn group (#973)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-14T04:24:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "149e5f379aa1d90f819794974d37092d630561a6",
          "body": "…972)\n\nBumps the npm_and_yarn group in /site-obsigna with 1 update: [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro).\n\n\nUpdates `astro` from 7.0.6 to 7.0.7\n- [Release notes](https://github.com/withastro/astro/releases)\n- [Changelog](https://github.com/withastro/astro/blob/main/pa\n[…]\nersion-update:semver-patch\n  dependency-group: npm_and_yarn\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": "chore(deps): bump astro in /site-obsigna in the npm_and_yarn group (#…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-14T04:24:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "df6833a39743e17127d5ad4b10cdc8f6734d8e03",
          "body": "Bumps the go_modules group with 1 update in the /collector directory: [golang.org/x/crypto](https://github.com/golang/crypto).\n\n\nUpdates `golang.org/x/crypto` from 0.45.0 to 0.52.0\n- [Commits](https://github.com/golang/crypto/compare/v0.45.0...v0.52.0)\n\n---\nupdated-dependencies:\n- dependency-name: g\n[…]\n\n  dependency-type: indirect\n  dependency-group: go_modules\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": "chore(deps): bump golang.org/x/crypto (#971)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-09T07:21:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5d209e856e7bb1e7a1e00b66c01f725478598d26",
          "body": "…o (#970)\n\nBumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.45.0 to 0.52.0.\n- [Commits](https://github.com/golang/crypto/compare/v0.45.0...v0.52.0)\n\n---\nupdated-dependencies:\n- dependency-name: golang.org/x/crypto\n  dependency-version: 0.52.0\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": "chore(deps): bump golang.org/x/crypto from 0.45.0 to 0.52.0 in /sdk/g…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-09T07:20:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bcdadd9dc6585a38a8b9d2fb28039842d8bcebf7",
          "body": "* feat(formal): pin spec clauses the chain-invariants model depends on\n\nformal/chain-invariants/chain-tamper-evidence.als formalizes specific\nclauses of spec/v0.5.0/spec.md but never parses it, so a spec edit under a\nmodeled clause could land without anyone noticing the model needs a\nsecond look — C\n[…]\nmodule docstring consistent with dynamic path resolution\n\nThe docstring hardcoded spec/v0.5.0/spec.md while later stating the path\nis resolved dynamically to the highest spec/v<X.Y.Z>/spec.md on disk.",
          "is_bot": false,
          "headline": "feat(formal): guard the chain-invariants model against spec drift (#968)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-09T07:16:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9a231663e1536bb6611854d1f669deedfd739b49",
          "body": "The hook copied the runtime's file_path / Bash operand verbatim into\naction.target.resource, so a relative path (a Write of \"out.go\", a Bash\n\"rm build\") was recorded as a bare relative token — meaningless in a\nforensic trail without also knowing the working directory, which the\nreceipt does not carr\n[…]\nly; non-filesystem resource identifiers\n(e.g. MCP URIs) are exempt, since \"absolute\" is undefined for them —\na carve-out for a spec-level follow-up.\n\nNo receipt-schema change: resource stays a string.",
          "is_bot": false,
          "headline": "feat(hook): emit absolute action.target.resource and gate it (#969)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-09T06:46:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cd2a6f98f0fbed835001d88519bafb6795af26b2",
          "body": "…r-evidence (#967)\n\n* Add Alloy model machine-checking receipt-chain tamper-evidence\n\nFormalize the tamper-evidence property of the AARP receipt chain (spec §3.2,\n§7) as a bounded Alloy 6 model, and record the decision in ADR-0039.\n\nThe model encodes the §7.3 verification algorithm exactly (signatur\n[…]\nnd nothing opens it by module name, so the declaration was dead\nweight that only risked a parse/load mismatch if the model is ever split\nor opened elsewhere. Dropping it removes the mismatch entirely.",
          "is_bot": false,
          "headline": "Formal verification: Alloy model machine-checking receipt-chain tampe…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-07T08:59:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "910ae54448fb9cee77ed415d013de4cd113e9cdf",
          "body": "Bumps the github-actions group with 3 updates: [github/codeql-action/init](https://github.com/github/codeql-action), [github/codeql-action/analyze](https://github.com/github/codeql-action) and [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action).\n\n\nUpdates `github/codeql-a\n[…]\nsion-update:semver-patch\n  dependency-group: github-actions\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": "chore(deps): bump the github-actions group with 3 updates (#965)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-07T08:29:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9966e9ce0a9d8767c55f986f0e271dbe245ff2ca",
          "body": "Bumps the npm_and_yarn group in /site with 4 updates: [@astrojs/starlight](https://github.com/withastro/starlight/tree/HEAD/packages/starlight), [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro), [sharp](https://github.com/lovell/sharp) and [playwright](https://github.com/microsof\n[…]\nersion-update:semver-patch\n  dependency-group: npm_and_yarn\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": "chore(deps): bump the npm_and_yarn group in /site with 4 updates (#964)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-07T08:28:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7fa464c22aabbbc0f95baecb69aafad0d1faefa3",
          "body": "…tes (#963)\n\nBumps the npm_and_yarn group in /site-obsigna with 4 updates: [@astrojs/starlight](https://github.com/withastro/starlight/tree/HEAD/packages/starlight), [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro), [sharp](https://github.com/lovell/sharp) and [playwright](https:\n[…]\nersion-update:semver-patch\n  dependency-group: npm_and_yarn\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": "chore(deps): bump the npm_and_yarn group in /site-obsigna with 4 upda…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-06T05:10:43Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "eeea7772bbe437867c769935b18b932cdf0fbdc8",
          "body": "…962)\n\nBumps the npm_and_yarn group in /sdk/ts with 4 updates: [undici](https://github.com/nodejs/undici), [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [vite](https://g\n[…]\nersion-update:semver-minor\n  dependency-group: npm_and_yarn\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": "chore(deps): bump the npm_and_yarn group in /sdk/ts with 4 updates (#…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-06T05:10:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1c1c1f9845a371a25a86eaee93f2a5646b5cd1b5",
          "body": "Bumps the uv group in /sdk/py with 1 update: [boto3](https://github.com/boto/boto3).\n\n\nUpdates `boto3` from 1.43.36 to 1.43.40\n- [Release notes](https://github.com/boto/boto3/releases)\n- [Commits](https://github.com/boto/boto3/compare/1.43.36...1.43.40)\n\n---\nupdated-dependencies:\n- dependency-name: \n[…]\nte-type: version-update:semver-patch\n  dependency-group: uv\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": "chore(deps): bump boto3 in /sdk/py in the uv group (#961)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-06T05:09:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b850aee7786f261716f0e0c87df27280aeda2b98",
          "body": "* test(conformance): harden MUST-reject corpus with chain-negative + schema vectors\n\nAdd four version-independent MUST-reject vectors to the shared corpus, each\nsigned in-process then mutated (same pattern as the existing seven):\n\n- chain_wrong_previous_receipt_hash: mid-chain link points at the gen\n[…]\ne vector\ncannot ship an unlinked or dead-linked cell.\n\nThe reconciliation test now checks both the link label (clause) and its href\n(anchor) against count.py. Supersedes the deferred follow-up (#959).",
          "is_bot": false,
          "headline": "Add clause traceability to MUST-reject corpus vectors (#960)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-03T03:39:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b5ce936daaf50d7aa888a7e4a246b3dd658f6db6",
          "body": "…Ks (#958)\n\n* feat(sdk): implement did:key v0.7 resolution across Go, Python, TS SDKs\n\nWires spec/test-vectors/did-key/vectors.json into a real cross-SDK\nconformance suite (ADR-0007). Each SDK gets a standalone did package\n(base58btc encode/decode, FromPublicKey/did_from_public_key/\ndidFromPublicKey\n[…]\n That's no\nlonger true now that did:key is wired into all three SDKs and\non_page=True — rewrite both to describe the mechanism generically\ninstead of naming a set that may or may not currently use it.",
          "is_bot": false,
          "headline": "feat(sdk): implement did:key v0.7 resolution across Go, Python, TS SD…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-03T01:51:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f3a702b3fb8746c57282bb3c09348f15448bbc1b",
          "body": "* docs(conformance): harden interop page and reconcile ADRs for IETF AUDIT review\n\nPrecision pass over the conformance page and the claims around it ahead of\nexternal standards-reviewer scrutiny.\n\nConformance page + counts:\n- Add a Unicode-normalisation canon vector (string_no_unicode_normalization)\n[…]\nlude the conformance\n  page and scripts/conformance_matrix/**, so a direct edit to either\n  can no longer bypass the reconciliation gate. Update the test's\n  header comment and the page copy to match.",
          "is_bot": false,
          "headline": "Add conformance page reconciliation test and off-page vector sets (#957)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-02T22:49:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bed09a7226ded6271839246172d1154eb4216d54",
          "body": "* docs(site): publish cross-language conformance as a citeable page\n\nAdd a permanent /conformance page to the agentreceipts.ai Starlight site that\nleads with the interop claim — three independent SDKs (Go, Python, TypeScript)\nverify one another's receipts against a shared Ed25519 keypair, over a pos\n[…]\nnformance from a flat top-level sidebar item into the\nEcosystem group, above Landscape. Link it from the homepage: a\ncallout after the architecture diagram and an entry in the\n\"Explore the spec\" list.",
          "is_bot": false,
          "headline": "docs(site): publish cross-language conformance as a citeable page (#955)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-07-02T20:31:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cbbfa6b9ce55b4d0dbc9ef7cc7f3a025a2edd877",
          "body": "Bumps the go group in /sdk/go with 2 updates: [github.com/cloudflare/circl](https://github.com/cloudflare/circl) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\n\nUpdates `github.com/cloudflare/circl` from 1.6.3 to 1.6.4\n- [Release notes](https://github.com/cloudflare/circl/releases)\n- [C\n[…]\nte-type: version-update:semver-minor\n  dependency-group: go\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": "chore(deps): bump the go group in /sdk/go with 2 updates (#952)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-30T08:13:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d7b134b31d50db7918787b3c1b0ae09c3af198dd",
          "body": "Bumps the uv group in /sdk/py with 3 updates: [boto3](https://github.com/boto/boto3), [ruff](https://github.com/astral-sh/ruff) and [pyright](https://github.com/RobertCraigie/pyright-python).\n\n\nUpdates `boto3` from 1.43.34 to 1.43.36\n- [Release notes](https://github.com/boto/boto3/releases)\n- [Commi\n[…]\nte-type: version-update:semver-patch\n  dependency-group: uv\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": "chore(deps): bump the uv group in /sdk/py with 3 updates (#953)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-30T08:12:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "df23bd62156d7b8fbf8e795b9b26a74638975ccb",
          "body": "Bumps the github-actions group with 2 updates: [actions/setup-go](https://github.com/actions/setup-go) and [actions/setup-python](https://github.com/actions/setup-python).\n\n\nUpdates `actions/setup-go` from 6.4.0 to 6.5.0\n- [Release notes](https://github.com/actions/setup-go/releases)\n- [Commits](htt\n[…]\nsion-update:semver-minor\n  dependency-group: github-actions\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": "chore(deps): bump the github-actions group with 2 updates (#954)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-30T08:12:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f9cffe15bc27552e73ad7c7f40282c9708fc867f",
          "body": "The blog post content auto-syncs from site/ via scripts/sync-blog.mjs\n(prebuild), but the sidebar nav in astro.config.mjs is hand-maintained\nper site. PR #945 added the browser-verifier entry to site/ but missed\nthe obsigna.dev mirror, so the post was absent from the blog navbar at\nobsigna.dev/blog/. Add it at the top of the Blog group to match site/.",
          "is_bot": false,
          "headline": "docs(site-obsigna): add browser-verifier post to blog navbar (#950)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T08:58:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5bfdc6a3a967d7085a05d4f0633018980efe19d2",
          "body": "Ships action.target.resource emission for native file tools (#939\nPhase 2, #948) and the @obsigna/sdk-ts ^0.16.0 bump that carries it,\nplus the docs binary-name corrections. Additive and backwards-\ncompatible.",
          "is_bot": false,
          "headline": "chore(opencode-plugin): release 0.2.0 (#949)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T08:45:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0ce4b8ef1406f0245d1ab4765b71bc14544623d",
          "body": "* docs: announce the browser verifier in a blog post\n\nAdd blog/browser-verifier.mdx announcing the client-side verifier at\nobsigna.dev/verify, and list it at the top of the blog index. Frontmatter\nmatches the two most recent posts (title, description, canonical head to\nagentreceipts.ai); the body fo\n[…]\nnfig.mjs (it was only on\n  the All Posts page, missing from nav).\n- Tighten line 23 to match the tool's own 'no network requests' copy.\n- Strip four AI-prose tropes (aphorism + 'X, not Y' flourishes).",
          "is_bot": false,
          "headline": "Add blog post on browser-based Agent Receipt verifier (#945)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T08:44:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "046ca4a608e275675157fb29fd3115db6a3ca922",
          "body": "#935 landed interim wording ('not yet wired') that #936 then made\nfalse. With #936 merged, the daemon seals elected tool responses into\noutcome.response_disclosure and the offline responder recovers them via\nobsigna receipt disclose --response — flip the 'Sensitive data in\nstorage' note to the shipped state, closing the #819 asymmetry.",
          "is_bot": false,
          "headline": "docs(threat-model): response disclosure is shipped (#819) (#943)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T08:44:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "17585ceb75c9201f67d2a6337cb1d75b367c10b2",
          "body": "Populate the receipt's file-identity metadata for native OpenCode file\ntools. When a tool call carries a camelCase `filePath` (read, write,\nedit, patch, apply_patch), buildEvent now attaches\n`{ system: \"filesystem\", resource: <filePath> }` to the EmitEvent; the\ndaemon maps it onto `action.target.{sy\n[…]\nrects, as the hook does in\nshell_target.go) is out of scope here and a possible follow-up.\n\nBumps @obsigna/sdk-ts to ^0.16.0 for the EmitEvent.target / EmitTarget\nsurface this needs.\n\nPhase 2 of #939.",
          "is_bot": false,
          "headline": "feat(opencode-plugin): emit action.target.resource for file tools (#948)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T08:29:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a822f70abce240ccd9ef7baa0daa59416b9128d1",
          "body": "Add target_system / target_resource keyword-only params to\nDaemonEmitter.emit(), so the Python emitter can forward file-identity\nmetadata the daemon maps to action.target.{system,resource}.\n\nValidation mirrors the Go and TS emitters and the daemon's XOR rule:\nboth fields must be set together or both\n[…]\nare non-empty, so an\nall-empty or omitted target preserves current behaviour.\n\nAdditive and backwards-compatible. Completes cross-SDK emitter target\nparity (Go already had it; TS = #942).\n\nCloses #941",
          "is_bot": false,
          "headline": "feat(sdk-py): add target to the daemon emitter (#946)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T08:14:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e544aeb3c64db368a7261eb193ed2001740e5a9c",
          "body": "…#944)\n\nReconcile current.md after response disclosure (#819→#936) and the\ncheckpoint thread (#932/#933 merged, #872 closed, residue → #484) both\nlanded:\n\n- Active nodes: now empty (no open code nodes); the two closures move to\n  the shipped ledger. In-flight #943/#942 noted as background.\n- Decisio\n[…]\nons statement + announcement).\n- Next farmable: no farmable code nodes; next bodies of work are the\n  v1.5 cluster, opensandbox, and reliability/storage once sequenced.\n- New dated Last-updated entry.",
          "is_bot": false,
          "headline": "docs(ops): DAG clear — both foreground closures shipped, v1 is next (…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T08:12:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "493fe84e93ab28090bab998215c5e4e9f9ade86a",
          "body": "Cut 0.16.0 with the EmitEvent.target field (#939 Phase 1, PR #942):\nthe daemon emitter can now carry action.target.{system,resource}\nfile-identity metadata. Additive and backwards-compatible.\n\nReleasing unblocks #939 Phase 2 (the OpenCode plugin can bump its\n@obsigna/sdk-ts dep and populate target from tool args once 0.16.0\nis live on npm).",
          "is_bot": false,
          "headline": "chore(sdk-ts): release 0.16.0 (#947)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T08:11:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ff417dc82cb711163197402bab5fc8e0d981c025",
          "body": "* feat(sdk-ts): add target to the daemon emitter frame\n\nAdd an optional `target: { system, resource }` field to `EmitEvent`.\nWhen set, the emitter serialises it into the daemon frame as\n`target_system` / `target_resource`, which the daemon maps onto\n`action.target.{system,resource}` (file-identity m\n[…]\nomitted -- matching the Go\n  emitter's omitempty behaviour and the daemon's treatment of empty\n  target fields as absent.\n\nTests: null target returns an Error; all-empty target omits both wire\nfields.",
          "is_bot": false,
          "headline": "feat(sdk-ts): add target to the daemon emitter frame (#942)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-24T05:17:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2cbc65e6c5293de2bbca552012e736d7606dab3d",
          "body": "The OpenCode integration pages still referenced the pre-rename binary\nnames: agent-receipts-daemon and bare agent-receipts verify/list/show.\nUpdate them to obsigna-daemon and obsigna receipt verify/list/show to\nmatch the current CLI (and the rest of the site). Also rename the\nexample plugin file to .opencode/plugin/obsigna.ts.\n\nThe did:agent-receipts-daemon:local issuer DID is left unchanged -- it\nis the daemon's actual default identity value, not a binary name.",
          "is_bot": false,
          "headline": "docs(opencode): rename stale agent-receipts CLI to obsigna (#938)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T20:05:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6291fe130e74d6bfaaab731970551d87d58f2a77",
          "body": "…s (#940)\n\n* feat(site): add site-wide social-card og:image metadata to both docs sites\n\nStarlight emits og:title/description/url but no og:image, so every page\nshared as a bare title box on LinkedIn/X. Add a custom Head override to\nboth sites (agentreceipts.ai = site/, obsigna.dev = site-obsigna/) \n[…]\nor names the offending page and the expected format. Fail-fast is\nkept on purpose — silently falling back to the default card would hide an\nintended-but-broken bespoke card. (Copilot review, PR #940.)",
          "is_bot": false,
          "headline": "feat(site): site-wide social-card og:image metadata on both docs site…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T20:04:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7a4fde8f90eac6f3e47d0b5555d066a84c18df8e",
          "body": "* feat(sdk-go,daemon): forensic response disclosure (#819)\n\nCompletes ADR-0012 response disclosure for the Go SDK and daemon — the\ndeferred half of #819 (spec v0.6.0, TS, and Python shipped in #913). Tool\nresponses can now be sealed into outcome.response_disclosure, mirroring\naction.parameters_discl\n[…]\nDisclosure (the second Copilot comment): the TS decryptResponse\nand Python decrypt_response also delegate without wrapping, so wrapping\nonly Go would break cross-SDK parity of the thin-wrapper design.",
          "is_bot": false,
          "headline": "feat(sdk-go,daemon): forensic response disclosure (#819) (#936)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T20:02:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "81c662b78bb2e0614b7a415ab9aece75bfd1703d",
          "body": "* feat(site): add social-card metadata to /verify\n\nAdd Open Graph and Twitter card tags to the /verify page so it renders\nwith an image when shared (LinkedIn, etc.) instead of a bare title box.\n\n- New purpose-built 1200x630 card at public/verify-og.png (41KB),\n  brand-matched to the existing og.png:\n[…]\nanged.\n\n* feat(site): add twitter:image:alt to /verify card\n\nMirror og:image:alt for platforms that read Twitter-specific metadata\n(per Copilot review). Accessibility/preview-quality improvement only.",
          "is_bot": false,
          "headline": "feat(site): add social-card metadata to /verify (#937)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T10:07:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ff27805534562d303e5ff268dad98a86111dad37",
          "body": "…fier (#933)\n\n* feat(verify): wire external-anchor verification into the browser verifier\n\nEvaluate a supplied signed checkpoint instead of merely acknowledging it. When\nthe request carries an anchor proof (checkpoint.Signed JSON) and an anchor\npublic key, the verifier checks the checkpoint signatur\n[…]\nsh single-mode\nverification uses — so the cleartext flat-map disclosure is part of the\ncommitment. Load example on the single tab now fills the anchor fields and\nverifies FULL, matching the chain tab.",
          "is_bot": false,
          "headline": "feat(verify): wire external-anchor verification into the browser veri…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T08:42:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dfabf231f372410b29b5537ed47af6573e04ff9e",
          "body": "…re (#935)\n\nROADMAP and threat-model had drifted behind shipped work while\nscoping the v1 milestone:\n\n- #478 (bound inline plaintext error/prompt_preview): planned -> done\n  (shipped #894).\n- KeyProvider/Signer parity across TS/Py/Go: planned -> done. Verified\n  2026-06-23 — all three expose KeyProv\n[…]\nthreat-model: spec v0.6.0 added the outcome.response_disclosure HPKE\n  envelope; corrected the 'no envelope yet' line — the format exists,\n  daemon sealing + SDK recovery (#819) is the remaining work.",
          "is_bot": false,
          "headline": "docs(roadmap): reconcile v1 statuses + threat-model response-disclosu…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T08:31:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5c24983e69619e970426d12b54d051dec69bd487",
          "body": "…kpoint (#932)\n\n* refactor(sdk-go): extract portable checkpoint crypto into sdk/go/checkpoint\n\nMove the checkpoint wire types and sign/verify crypto out of the daemon's\ninternal package into a public SDK package (obsigna.dev/sdk/go/checkpoint) so\nthe daemon emitter, the verify CLI, and the browser v\n[…]\nable package-level variables and read poorly in godoc/grep.\nUse thin wrapper functions that delegate to the SDK instead, so the surface\nstays immutable and function-shaped. Type aliases are unchanged.",
          "is_bot": false,
          "headline": "refactor(sdk-go): extract portable checkpoint crypto into sdk/go/chec…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T08:27:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "587e6bcb559f8656d7adac17606f1b994d0ce141",
          "body": "The active DAG was ~100 PRs and two weeks stale; the entire prior\nactive subgraph (closures 0-2, wave-1/2 items, all ADR-0024 gates)\nhad already shipped. Per the file's own discipline (items leave when\nthey ship):\n\n- Collapse the long shipped DAG into a dated Recently shipped ledger\n  grouped by clo\n[…]\nsure follow-up).\n- Refresh Decisions blocked on Otto (#708, idle drafts, #803) and\n  recompute Next farmable.\n- Note in the update protocol to periodically collapse shipped\n  closures into the ledger.",
          "is_bot": false,
          "headline": "docs(ops): reconcile operations/current.md after two-week gap (#934)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T08:12:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "317f375912798b0a530ecd380da52267a90b80cf",
          "body": "* Add client-side receipt-chain verifier at obsigna.dev/verify\n\nA standalone, fully client-side page that verifies an Agent Receipts chain\nin the browser. Nothing pasted is uploaded or stored; after the page and\nits WASM module load, no network requests are made.\n\nVerification runs in WebAssembly co\n[…]\nuated\", mirroring the cryptographic-consistency ring.\n\n(The cross-sdk-tests.yml path-filter change Copilot flagged is workflow-review\nonly; the maintainer approved the workflow edits in this session.)",
          "is_bot": false,
          "headline": "Add browser-based receipt verifier at obsigna.dev/verify (#924)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T05:10:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "270878c608f99f502546eab7d7d68b0a2c07ed14",
          "body": "…st (#931)\n\n#929 removed sdk/go's test-only import of obsigna.dev/daemon, so `go mod\ntidy` dropped github.com/BurntSushi/toml and gopkg.in/yaml.v3 from sdk/go's\ngo.mod — they were only ever pulled transitively through the daemon\nintegration test. Their dependency-manifest allowlist entries are now\no\n[…]\nturned the sdk/go v0.23.0 release's dependency-manifest gate red.\nBoth packages are direct requires in the daemon/mcp-proxy modules, so they\nneed no allowlist entry there. Prune the two stale entries.",
          "is_bot": false,
          "headline": "fix(ci): prune stale toml/yaml entries from the Go dependency allowli…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T04:23:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4d66b8fb126bd4051d42ffbdb679603c7100bf6d",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): stamp sdk/go CHANGELOG 0.23.0 (#930)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T03:59:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9c95afc7dbb6bcd0a6136b6179961507f02ad7cd",
          "body": "…le (#929)\n\nRemoves sdk/go's only import of obsigna.dev/daemon (the build-tagged\nemitter_test.go), which lived in the lower layer and inverted the\ndependency direction: the daemon requires sdk/go, so an emitter↔daemon\nend-to-end test belongs on the daemon side. The daemon module already\nhosts the si\n[…]\nchable only via the\ndaemon test) drop from its go.mod.\n\nCoverage is preserved: daemon CI runs `go test -tags=integration ./...`,\nso all ten TestEmit_* cases run in the daemon module instead of sdk/go.",
          "is_bot": false,
          "headline": "test(sdk-go): move emitter↔daemon integration test to the daemon modu…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T03:56:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "46c0611e46707c9ed89faf0b3aab77f48ccade45",
          "body": "Completes the ADR-0037 require-wiring that #927 did for daemon/hook/\nmcp-proxy. The collector is the fifth binary in the obsigna train\n(obsigna-collector, built ../collector with GOWORK=off) and imports\nobsigna.dev/sdk/go/{receipt,store}, but had no versioned require — so the\nv0.29.0 release build f\n[…]\nconsumed via go-version-file in CI, so the reproducible-build attestation\n(ADR-0035) is unaffected.\n\nVerified: GOWORK=off go build/vet/mod download clean; go.work go test green\n(collector 3 packages).",
          "is_bot": false,
          "headline": "build(go): require obsigna.dev/sdk/go v0.22.0 in collector (#928)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T03:10:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d8463dfd441fbf7bdf134923190b2f801eb9e65e",
          "body": "…oxy (#927)\n\nADR-0037 (#922) migrated the Go modules to their obsigna.dev vanity paths\nand dropped the cross-workspace requires, relying on go.work for the\nmigration window. The obsigna release train builds each binary with\nGOWORK=off, so without a versioned require the build cannot resolve\nobsigna.\n[…]\nild; binary builds, vet, and the go.work test\nsuites all pass for the three modules. Publishing the daemon/hook/\nmcp-proxy modules under their vanity paths is tracked as ADR-0037\ncompletion follow-up.",
          "is_bot": false,
          "headline": "build(go): require obsigna.dev/sdk/go v0.22.0 in daemon, hook, mcp-pr…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T02:24:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ccd308b99a0a6efe5282457f7aa9cd15c92af46c",
          "body": "…h (#926)\n\n* chore(release): stamp CHANGELOG 0.29.0 + sdk/go 0.22.0 + sdk-ts 0.15.0 + sdk-py 0.14.0\n\n* fix(release): point Go release gates at obsigna.dev/sdk/go vanity path\n\nPR #922 (ADR-0037) migrated every in-tree Go module to its obsigna.dev/…\ncanonical path but left the release-gate scripts pin\n[…]\n pkg.go.dev indexing ping had\nthe same stale path.\n\nUpdates the GO_MODULE / GO_SDK_MODULE constants, the generated Go import\nlines in each gate's emit program, and the proxy URL to obsigna.dev/sdk/go.",
          "is_bot": false,
          "headline": "fix(release): point Go release gates at obsigna.dev/sdk/go vanity pat…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T01:02:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "56e3b9750cf79a3efbc248ee45f49a0e61221954",
          "body": "…0 + sdk-py 0.14.0 (#925)",
          "is_bot": false,
          "headline": "chore(release): stamp CHANGELOG 0.29.0 + sdk/go 0.22.0 + sdk-ts 0.15.…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-23T00:36:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bf50dc37008af1bce836fcfc8be155d0731e2242",
          "body": "…s (ADR-0037 PR2+PR3) (#922)\n\nFlips every in-tree Go module to its obsigna.dev/… canonical path:\n\n  github.com/agent-receipts/ar/daemon          → obsigna.dev/daemon\n  github.com/agent-receipts/ar/mcp-proxy       → obsigna.dev/mcp-proxy\n  github.com/agent-receipts/ar/hook            → obsigna.dev/ho\n[…]\nto\n  obsigna.dev/sdk/go as the new canonical path\n- entrypoint guard test in collector updated to match new import path\n\nAll 33 packages build and test clean under go.work workspace mode.\nCloses #899.",
          "is_bot": false,
          "headline": "feat(module-paths): migrate all Go modules to obsigna.dev vanity path…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-22T02:25:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5a3876550c19f2c903abc1b1177faf189caf37b8",
          "body": "Clears Dependabot alerts #44/#45 (ALLOWED_ATTR pollution via setConfig()\nbypassing the hook clone-guard). Transitive via mermaid; 3.4.11 satisfies\nthe existing ranges, so only the resolved lockfile entries change.",
          "is_bot": false,
          "headline": "build(deps): bump dompurify 3.4.10 -> 3.4.11 in site lockfiles (#921)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T10:08:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9f8d6b29eec004479b51e65f682d75d0795c0d03",
          "body": "Clears Dependabot alerts #37-#43 (3 high, 2 medium, 2 low): WebSocket DoS\nvia fragment bypass, SOCKS5 TLS cert validation bypass, Set-Cookie header\ninjection, cache cross-user disclosure, and response queue poisoning.\n\nTransitive via @obsigna/sdk-ts; 8.5.0 satisfies the existing range, so only\nthe resolved lockfile entry changes. sdk/ts already pins ^8.3.0 and resolves\n8.5.0, so the published SDK is unaffected.",
          "is_bot": false,
          "headline": "build(deps): bump undici 8.4.1 -> 8.5.0 in opencode-plugin (#923)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T10:07:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "503859797db208d9329d1b4de9307bf674f9b1d4",
          "body": "The 0.14.0-alpha.1 tag published fine but failed release-verify Gate #2:\nPyPI normalizes -alpha.1 to a1, and the gate compares the tag suffix\nliterally against pip's resolved version. The artifact is published as\nobsigna 0.14.0a1.\n\nAlign the CHANGELOG header and pyproject version with the published,\nnormalized form, and document the convention in AGENTS.md so future\npy releases use a1 (not -alpha.1). The TS SDK keeps -alpha.1; npm\npreserves it.",
          "is_bot": false,
          "headline": "chore(sdk-py): normalize alpha version to PEP 440 (0.14.0a1) (#920)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T09:59:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8e1cee35a9e3bd62b951fa79190d6c92e0ba0f85",
          "body": "The sdk-ts-v0.15.0-alpha.1 tag and CHANGELOG entry landed, but\npackage.json was left at 0.14.1, so the release workflow's\ntag-vs-manifest gate aborted before publish. Align the manifest with\nthe already-tagged version (ADR-0038 grounded-principal tier #915,\nHPKE response_disclosure #913).",
          "is_bot": false,
          "headline": "chore(release): bump sdk-ts manifest to 0.15.0-alpha.1 (#919)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T09:50:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9cb542d1be94c72b68912af5dfc852b2090016e6",
          "body": "The sdk-py-v0.14.0-alpha.1 tag and CHANGELOG entry landed, but\npyproject.toml was left at 0.13.0, so the release workflow's\ntag-vs-manifest gate aborted before publish. Align the manifest with\nthe already-tagged version (ADR-0038 grounded-principal tier #915,\nHPKE response_disclosure #913, emitter action_type #897).\n\nuv build normalizes the artifact to 0.14.0a1.",
          "is_bot": false,
          "headline": "chore(release): bump sdk-py manifest to 0.14.0-alpha.1 (#918)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T09:49:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2236a53c8501778c4b8970506e1e30fface41fa7",
          "body": "… the npm_and_yarn group (#907)\n\n* chore(deps-dev): bump @types/node in /sdk/ts in the npm_and_yarn group\n\nBumps the npm_and_yarn group in /sdk/ts with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node).\n\n\nUpdates `@types/node` from 25.9.3 to 26.0.0\n- [R\n[…]\n--------\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Otto Jongerius <otto@agentreceipts.ai>",
          "is_bot": true,
          "headline": "chore(deps-dev): bump @types/node from 25.9.3 to 26.0.0 in /sdk/ts in…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-21T09:25:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "928692a7732df61f26c6c3d94f6d79f9965d1353",
          "body": "…1 + sdk-ts 0.15.0-alpha.1 + sdk-py 0.14.0-alpha.1 (#917)",
          "is_bot": false,
          "headline": "chore(release): stamp CHANGELOG 0.29.0-alpha.1 + sdk/go 0.22.0-alpha.…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T06:36:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "60d2a209f7b340eb9846dfa1650c198653c75d92",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): stamp CHANGELOG 0.28.0 + sdk/go 0.21.0 (#916)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T06:31:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5511ada95312c5c17cb70dd7dea7362b0c231b0e",
          "body": "Bumps the github-actions group with 1 update: [actions/checkout](https://github.com/actions/checkout).\n\n\nUpdates `actions/checkout` from 6.0.3 to 7.0.0\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits\n[…]\nsion-update:semver-major\n  dependency-group: github-actions\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": "chore(deps): bump actions/checkout in the github-actions group (#911)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-21T02:02:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f7d1a1aeb33caad83e56660bcc8dcabd7600de3b",
          "body": "Bumps the uv group in /sdk/py with 3 updates: [boto3](https://github.com/boto/boto3), [pytest](https://github.com/pytest-dev/pytest) and [ruff](https://github.com/astral-sh/ruff).\n\n\nUpdates `boto3` from 1.43.32 to 1.43.34\n- [Release notes](https://github.com/boto/boto3/releases)\n- [Commits](https://\n[…]\nte-type: version-update:semver-patch\n  dependency-group: uv\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": "chore(deps): bump the uv group in /sdk/py with 3 updates (#910)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-21T02:00:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5b546a818c9e87ad6d83a04fe6062c64beb58cc1",
          "body": "…909)\n\nBumps the npm_and_yarn group in /site-obsigna with 1 update: [sharp](https://github.com/lovell/sharp).\n\n\nUpdates `sharp` from 0.35.1 to 0.35.2\n- [Release notes](https://github.com/lovell/sharp/releases)\n- [Commits](https://github.com/lovell/sharp/compare/v0.35.1...v0.35.2)\n\n---\nupdated-depend\n[…]\nersion-update:semver-patch\n  dependency-group: npm_and_yarn\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": "chore(deps): bump sharp in /site-obsigna in the npm_and_yarn group (#…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-21T02:00:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "03fa29e05c7301a593b51248325343197afad7ce",
          "body": "Bumps the npm_and_yarn group in /site with 1 update: [sharp](https://github.com/lovell/sharp).\n\n\nUpdates `sharp` from 0.35.1 to 0.35.2\n- [Release notes](https://github.com/lovell/sharp/releases)\n- [Commits](https://github.com/lovell/sharp/compare/v0.35.1...v0.35.2)\n\n---\nupdated-dependencies:\n- depen\n[…]\nersion-update:semver-patch\n  dependency-group: npm_and_yarn\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": "chore(deps): bump sharp in /site in the npm_and_yarn group (#908)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-21T01:59:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b332543a548a9faa63e39d1c07e87e0df2d56ee2",
          "body": "…(#915)\n\n* feat(sdk): add grounded-principal conformance tier (ADR-0038, spec §7.9)\n\nAdds the GrantResolver pluggable interface and VerifyGroundedPrincipalTier\ngate to all three SDKs, along with §7.9 in the spec and ADR-0038 accepted.\n\nD1: authorization.grant_ref already exists in schema (confirmed,\n[…]\n compatibility\n\nBare list as default_factory produces list[Unknown] under pyright strict\nmode. list[str] (callable generic alias, valid Python 3.9+) is the\ncorrect form and what the original code had.",
          "is_bot": false,
          "headline": "feat(sdk): grounded-principal conformance tier (ADR-0038, spec §7.9) …",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T01:59:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2f65799845ad74f6ae39f36a1c06c2ab1aa5ab04",
          "body": "…913)\n\n* feat(spec): add outcome.response_disclosure HPKE envelope (v0.6.0)\n\nAdds `credentialSubject.outcome.response_disclosure` — a v1 HPKE\nasymmetric encryption envelope sealing the tool response, mirroring\nthe existing `action.parameters_disclosure` for tool input.\n\nThe response is committed has\n[…]\nosure tests\n\nTwo encryptResponse validation tests used {} as Record<string, unknown>\nassertions. Replace with const body: Record<string, unknown> = {} to\nalign with the repo's strict TypeScript style.",
          "is_bot": false,
          "headline": "feat(spec): add outcome.response_disclosure HPKE envelope (v0.6.0) (#…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-21T01:55:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "38e369695d83da39a373f0a32aed749eaf52ddb7",
          "body": "* feat(daemon): checkpoint anchor production hardening (#872)\n\nThree hardening items deferred from the v0.27.0-alpha.1 spike.\n\n**Async sink emission** — `Observe()` previously called `emit()` synchronously.\nA slow git fork/exec or a blocked syslog write stalled the per-frame handler\nwhile the receip\n[…]\n but never\nused for assertions; the blank-identifier suppressor and stale lock\nblock followed. Remove all dead code — the test was always exercising\ncountSink, and the assertion already reflects that.",
          "is_bot": false,
          "headline": "feat(daemon): checkpoint anchor production hardening (#872) (#914)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T22:25:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4c2fa7752ef41bca9af8144ffed311020f4a7c67",
          "body": "… check (#912)\n\n* feat(site-obsigna): add go-import vanity meta tags + liveness CI\n\nInject go-import and go-source meta tags into every obsigna.dev page so\nthe Go toolchain can resolve obsigna.dev/{sdk/go,daemon,...} as vanity\nimport paths. Starlight's head config applies globally including the 404\n\n[…]\n verifies the go-source meta tag is present alongside go-import.\nThe workflow_run trigger gets an inline comment naming the workflow file\nit references so a display-name rename is immediately visible.",
          "is_bot": false,
          "headline": "feat(site-obsigna): go-import vanity meta tags + post-deploy liveness…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T22:23:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "36c757165849e4b0b7741abe6e58bd5645803dd6",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): stamp CHANGELOG 0.27.0 + sdk/go 0.20.0 (#904)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T03:24:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4a8233ec20ebff53e599cf9f544ee703456d8563",
          "body": "…#906)\n\nRelease builds use GOWORK=off so each module resolves sdk/go from the\npublished registry. Bump daemon, hook, and mcp-proxy to v0.21.0-alpha.1\nso ActionType and PromptPreview are available at release build time.\nmcp-proxy also picks up daemon v0.23.0 (last published daemon module\nversion). modernc.org/sqlite moves from indirect to direct in\ndaemon/go.mod — tests_checkpoint_truncation_test.go blank-imports it.",
          "is_bot": false,
          "headline": "fix(release): pin sdk/go v0.21.0-alpha.1 in daemon, hook, mcp-proxy (…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T03:23:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a078262855bb6ad687667aebdd40a1ccc2804c38",
          "body": "…(#855)\n\n* feat(mcp-proxy): capture action.target resource for non-file actions\n\nThe dashboard's cross-agent contention graph draws edges from\naction.target.resource, which only the filesystem hook populated.\nMCP/network/API/DB tool calls carried no structured resource, so two\nagents hitting the sam\n[…]\nvely (URL/Uri/Endpoint, Owner/Repo),\n  matching classifier.ScoreRisk and so targets aren't missed by casing.\n- name the unused toolName param _ to signal it's reserved.\nAdds regression tests for each.",
          "is_bot": false,
          "headline": "feat(mcp-proxy): capture action.target resource for non-file actions …",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T02:55:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "45baab838e0a4ae8a55a08bda02531e921d095da",
          "body": "…ure (#856)\n\n* feat(hook): receipt failed tool calls via Claude Code PostToolUseFailure\n\nClaude Code fires PostToolUse only on success and PostToolUseFailure on\nfailure. A hook wired to PostToolUse alone left an errored or interrupted\ntool call — e.g. a lost concurrent write whose Edit no longer mat\n[…]\nn/CHANGELOG.md (the failed-tool-call entry already lives under\n[Unreleased]). Correct the obsigna-hook header to say obsigna-daemon, and add\nPreToolUse to hook/AGENTS.md (the hook already handles it).",
          "is_bot": false,
          "headline": "feat(hook): receipt failed tool calls via Claude Code PostToolUseFail…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T02:54:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "873eb4e67c97ea320ecfb5e42cb245a6e8e5d2c0",
          "body": "…903)\n\n* docs(site-obsigna): refresh dashboard overview doc and screenshots\n\nReplace the v0.4-era dashboard screenshot with the current v0.9.0-alpha.3\noverview (activity timeline, action distribution, 6-tab layout). Add two\nnew screenshots: session attribution graph and forensic decryption detail.\n\n\n[…]\nerprint in header.\n\nScreenshots sourced from agent-receipts/dashboard docs/ (main, post-merge\nof docs/refresh-screenshots).\n\n* docs(site-obsigna): fix 'Agent Receipt' → 'Agent Receipts' in frontmatter",
          "is_bot": false,
          "headline": "docs(site-obsigna): refresh dashboard overview doc and screenshots (#…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T02:49:50Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "350763e2699c3bb13586e7eeb2aced74e390e346",
          "body": null,
          "is_bot": false,
          "headline": "docs(spec): bump README status badge + latest pointer to v0.5.0 (#902)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T00:32:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e066b93494a0076465f1fd05b632d967a4e9ed2",
          "body": "* feat(sdk-py): emitter forwards taxonomic action_type to daemon\n\nThe Python daemon emitter now accepts an optional `action_type` kwarg and\nserialises it as the `action_type` frame field (omitted when empty),\nmatching the Go and TypeScript emitters.\n\nThe daemon uses the type verbatim as `action.type\n[…]\nisk and evade a disclosure policy. When empty, the\ndaemon's synthetic `<channel>.<tool>` fallback is unchanged.\n\nPart of #721.\n\n* test(sdk-py): harden echo-server helper with timeouts and ready assert",
          "is_bot": false,
          "headline": "feat(sdk-py): emitter forwards taxonomic action_type to daemon (#897)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T00:32:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ac8cdabaaa73d3c1d6f6c8f8cdab04f76a97d874",
          "body": "* feat(hook): emit taxonomic action_type for native file tools\n\nThe native-tool path set ev.Target via extractFileTarget but not\nev.ActionType, so Read/Write/Edit/MultiEdit reached the daemon with a\nsynthetic claude-code.<tool> type that resolves to UnknownAction\n(medium). A risk-based \"high\" parame\n[…]\n* docs(hook): drop nonexistent 'copy' action type from comment\n\nThere is no filesystem.file.copy type; cp maps to create (low), not medium.\n\n* test(hook): give the empty-toolName subtest a stable name",
          "is_bot": false,
          "headline": "feat(hook): emit taxonomic action_type for native file tools (#896)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T00:32:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1d81955a07be80549ada2b45cf322a9ac538adfc",
          "body": "The proxy bundles per-server taxonomy mappings (configs.BundledTaxonomies)\nbut never used them at runtime, so every emitted event reached the daemon\nwith no action_type. The daemon then fell back to the synthetic\n\"<channel>.<tool>\" type, which rarely matches a taxonomy entry, so\nnearly everything re\n[…]\nroxy sends a type string and the daemon still owns\nrisk resolution, redaction, signing, and persistence — so the deps are\nallowlisted with rationale rather than the gate failing closed.\n\nPart of #721.",
          "is_bot": false,
          "headline": "feat(mcp-proxy): forward taxonomic action_type on emit frame (#898)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T00:32:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a15c4b4ea69d8e84a041a8c0575dd21d53a7976b",
          "body": "…age (#901)\n\n* refactor(sdk/go): extract risk primitives into receipt-free leaf package\n\nMove the RiskLevel type, the Risk* constants, and the PTY action.type string\nconstants out of receipt and into a new leaf package, sdk/go/risk, that imports\nnothing from this module (and no crypto). taxonomy now\n[…]\n fix risk test failure message and import-guard comment\n\nPrint the actual risk.Level value (not want twice) on mismatch; reword the\nimport-guard comment since the test package does not import receipt.",
          "is_bot": false,
          "headline": "refactor(sdk/go): extract risk primitives into receipt-free leaf pack…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-20T00:26:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f3e740b5c804e42315d334f7442336b431773fbb",
          "body": "Define a conformance tier that grounds the human principal for high and\ncritical actions: authorization.grant_ref MUST resolve to an externally\nminted grant (RFC 8693 OBO / Grantex) and principal.id MUST equal the\ngrant subject. Resolution is pluggable, mirroring ADR-0007; an enforcing\nCI gate ships\n[…]\n for local hook deployments (ADR-0013/0014/0027) that have no\ndelegated grant.\n\nNumbered 0038: 0037 is reserved by the open PR #846 (vanity Go module\npath), which predates this one.\n\nStatus: Proposed.",
          "is_bot": false,
          "headline": "docs(adr): add ADR-0038 grounded-principal conformance tier (#895)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T23:31:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e18e94a12436c7af5aea8d91514f7985e1e386a7",
          "body": "…h (#846)\n\n* docs(adr): ADR-0037 migrate Go module paths to obsigna.dev vanity path\n\nRecords the decision to migrate all Go module paths off\ngithub.com/agent-receipts/ar/... to a bare-domain vanity import path under\nobsigna.dev, decoupling module identity from the GitHub repo name permanently\nand cl\n[…]\nly-chain redirect risk is org-scoped\n\nThe Copilot suggestion was correct: only the agent-receipts org (or\nan attacker with access to it) can recreate the vacated ar repo, not\nan arbitrary third party.",
          "is_bot": false,
          "headline": "docs(adr): ADR-0037 migrate Go module paths to obsigna.dev vanity pat…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T23:26:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3d7c44fd8880c2114ef83cb4b81d7c3597ff2499",
          "body": "…478) (#894)\n\n* feat(daemon): bound inline plaintext error + prompt_preview fields (#478)\n\nThe receipt model is hash-first, but two plaintext-bearing fields were\nstill written inline with no size cap: outcome.error and\nintent.prompt_preview. A large or hostile value bloats the receipt, slows\ncanonic\n[…]\nfield,\npartly defeating the point of bounding it. Walk runes only up to the cap via a\nrange loop and return early, so a large input is bounded in both time and\nmemory. Found in Copilot review of #478.",
          "is_bot": false,
          "headline": "feat(daemon): bound inline plaintext error + prompt_preview fields (#…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T23:13:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f17e633ade303c9d347ad5f0000459054926394e",
          "body": "…l risk (#893)\n\n* feat(hook): classify shell rm/mv/cp so deletes carry a target and real risk\n\nA shell `rm` was recorded as `claude-code.Bash` with no\naction.target.resource and the default medium risk — indistinguishable\nfrom a harmless `echo`. The hook skipped Bash entirely for target\nextraction.\n\n[…]\nle quotes stay literal). Adds regression tests.\n- The ActionType doc claimed an emitter cannot downgrade risk; in fact risk\n  follows the type, so a mislabeled type yields that type's risk. Corrected.",
          "is_bot": false,
          "headline": "feat(hook): classify shell rm/mv/cp so deletes carry a target and rea…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T23:07:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "331a3a11ea3385d2fa764aaeeb2fc3eee8a9ab53",
          "body": "* ci: gate release on dependency-manifest check pre-publish\n\nAdd a `validate` job to each SDK release workflow that runs the Gate #10\ndependency-manifest check before `release`, and make `release` depend on\nit via `needs: validate`.\n\nPreviously `dependency-manifest` had `needs: release`, so it only \n[…]\nnifest issue in one SDK could block an unrelated\nSDK's release. Keep validate focused on check.py --lang <x> (the per-SDK gate);\ntest_check.py still runs post-publish. Found in Copilot review of #757.",
          "is_bot": false,
          "headline": "ci: gate release on dependency-manifest check pre-publish (#892)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T23:07:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "64ecd506da4ac651ce4c27bd9dd18a1639a9b7e1",
          "body": "…EFUSED (#891)\n\nThe socket-gone polling loops broke on any net.DialTimeout error, so a\nspurious/transient dial error could let the next daemon start race while\nthe previous socket was still live, causing flakes.\n\nBreak only when the socket is truly gone (ENOENT/ECONNREFUSED); keep\nspinning on transient errors until the deadline. Applied consistently to\nall three socket-gone loops across tests_interrupted_chain_test.go and\ntests_chainresume_test.go.\n\nCloses #736",
          "is_bot": false,
          "headline": "test(daemon): harden socket-wait loops to break only on ENOENT/ECONNR…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T23:06:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "963e22c84734c4736d98d1e552bb343e6dc975eb",
          "body": "* docs(roadmap): reconcile v1.5 + v1 tables with issue triage\n\nSweep after triaging the ADR-0019 gap issues. ROADMAP.md is the authoritative\nsequencing source, and three v1.5 rows had drifted from their issue states.\n\nv1.5 (regulated-industries readiness):\n- #489 (PKCS#11/CloudHSM), #490 (standalone\n[…]\ned' despite all Post 3 / v1 gaps being implemented\nand the remaining gaps being documented limitations sequenced for v1.5 / v2\nin ROADMAP.md. Flip the ADR header and the ROADMAP ADR index to Accepted.",
          "is_bot": false,
          "headline": "docs(roadmap): reconcile v1.5 + v1 tables with issue triage (#890)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T04:51:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8cf820c2d56870c2d7b52420c770a4b486e3edfa",
          "body": "…ce is no longer partial (#889)\n\nThe daemon emits signed chain-HEAD checkpoints (--checkpoint-anchor:\nfile/git/syslog, --checkpoint-cadence) and 'obsigna verify --against-anchor'\nfails on tail truncation (ADR-0008, #171/#600 closed). The threat model still\nclaimed checkpoint anchoring was 'not yet s\n[…]\npt_hash, timestamp} per-cadence emission and the verify gate.\n\nRemaining gap narrowed to production-grade sinks (S3 object-lock, transparency\nlog, SIEM); the file/git/syslog sinks are reference-grade.",
          "is_bot": false,
          "headline": "docs(threat-model): checkpoint anchoring ships; tail-truncation defen…",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T04:34:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3a0e96d305e78c180a41b872cbfa48aba87aa7e8",
          "body": null,
          "is_bot": false,
          "headline": "docs(sdk/go): stamp CHANGELOG 0.20.0-alpha.2 (#888)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T04:19:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d62c479111a9e2aca557c91873d5e800245088e",
          "body": "* feat(receipt): add VerifyRaw for raw-bytes signature verification\n\nVerify canonicalizes a re-marshal of the Go struct, dropping any field a\nnewer SDK signed over but nested inside the payload (e.g. under\ncredentialSubject) before checking the signature — a false negative on a\ngenuinely valid recei\n[…]\n\", surfacing a misleading \"unsupported proof type\"\nerror for malformed JSON. Flag the wrong type explicitly; a missing field\nstill falls through to verifyCanonical for parity with struct-based Verify.",
          "is_bot": false,
          "headline": "feat(receipt): add VerifyRaw for raw-bytes signature verification (#887)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T04:11:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "eb9bc75ab959dc3a497bd855d7ce13bb13fab869",
          "body": "* feat(verify): add --json to obsigna receipt verify (#885)\n\nreceipt verify was the only inspection command without machine-readable\noutput, forcing CI trust gates to scrape human stdout strings. Add an\nopt-in --json flag that emits a single structured object on stdout,\nmirroring the verify-event wr\n[…]\nt-anchor result. Exit-code semantics (0/1/2) are unchanged;\n--json alters output format only. Diagnostics stay on stderr.\n\n* refactor(verify): rename anchorResult local to avoid shadowing package type",
          "is_bot": false,
          "headline": "feat(verify): add --json to `obsigna receipt verify` (#885) (#886)",
          "author_name": "Otto Jongerius",
          "author_login": "ojongerius",
          "committed_at": "2026-06-19T04:07:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 1212,
      "latest_release_at": "2026-07-17T09:59:03Z",
      "latest_release_tag": "obsigna/v0.30.0",
      "releases_from_tags": false,
      "days_since_last_push": 1,
      "active_weeks_last_year": 16,
      "days_since_latest_release": 4,
      "mean_days_between_releases": 2.7
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 87,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "obsigna.dev/hook",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": null,
          "registry_url": "https://pkg.go.dev/obsigna.dev/hook",
          "is_deprecated": false,
          "latest_version": "v0.30.0",
          "repository_url": null,
          "versions_count": 18,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-17T09:56:10Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "obsigna.dev/daemon",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": null,
          "registry_url": "https://pkg.go.dev/obsigna.dev/daemon",
          "is_deprecated": false,
          "latest_version": "v0.30.0",
          "repository_url": null,
          "versions_count": 29,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-17T09:56:10Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "obsigna.dev/collector",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": null,
          "registry_url": "https://pkg.go.dev/obsigna.dev/collector",
          "is_deprecated": false,
          "latest_version": "v0.30.0",
          "repository_url": null,
          "versions_count": 3,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-17T09:56:10Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "obsigna.dev/mcp-proxy",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": null,
          "registry_url": "https://pkg.go.dev/obsigna.dev/mcp-proxy",
          "is_deprecated": false,
          "latest_version": "v0.30.0",
          "repository_url": null,
          "versions_count": 40,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-17T09:56:10Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        }
      ]
    },
    "popularity": {
      "forks": 3,
      "stars": 20,
      "watchers": 0,
      "fork_history": {
        "days": [
          {
            "date": "2026-04-05",
            "count": 1
          },
          {
            "date": "2026-04-17",
            "count": 1
          },
          {
            "date": "2026-05-04",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 3,
        "total_forks": 3
      },
      "star_history": {
        "days": [
          {
            "date": "2026-04-02",
            "count": 2
          },
          {
            "date": "2026-04-03",
            "count": 1
          },
          {
            "date": "2026-04-05",
            "count": 1
          },
          {
            "date": "2026-04-14",
            "count": 1
          },
          {
            "date": "2026-04-28",
            "count": 4
          },
          {
            "date": "2026-04-29",
            "count": 1
          },
          {
            "date": "2026-04-30",
            "count": 2
          },
          {
            "date": "2026-05-21",
            "count": 2
          },
          {
            "date": "2026-05-26",
            "count": 2
          },
          {
            "date": "2026-06-01",
            "count": 1
          },
          {
            "date": "2026-06-09",
            "count": 1
          },
          {
            "date": "2026-06-14",
            "count": 1
          },
          {
            "date": "2026-06-15",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 20,
        "total_stars": 20
      },
      "open_issues_and_prs": 28
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": true,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "integrations/opencode-plugin/tsconfig.json",
        "sdk/py/src/obsigna/py.typed",
        "sdk/ts-aws/tsconfig.json",
        "sdk/ts/tsconfig.json",
        "site-obsigna/tsconfig.json",
        "site/tsconfig.json"
      ],
      "toolchain_manifests": [
        "collector/go.mod",
        "cross-sdk-tests/go.mod",
        "daemon/go.mod",
        "dist/sdk-go-deprecation/go.mod",
        "hook/go.mod",
        "mcp-proxy/go.mod",
        "sdk/go/aws/go.mod",
        "sdk/go/go.mod",
        "web-verifier/go.mod"
      ],
      "largest_source_bytes": 80971,
      "source_files_sampled": 449,
      "oversized_source_files": 1,
      "agent_instruction_files": [
        ".github/instructions/general.instructions.md",
        ".github/instructions/go.instructions.md",
        ".github/instructions/python.instructions.md",
        ".github/instructions/typescript.instructions.md",
        "AGENTS.md",
        "CLAUDE.md",
        "hook/AGENTS.md",
        "integrations/opencode-plugin/AGENTS.md",
        "mcp-proxy/AGENTS.md",
        "mcp-proxy/CLAUDE.md",
        "scripts/byte_identity/AGENTS.md",
        "scripts/conformance_matrix/AGENTS.md",
        "scripts/daemon_protocol/AGENTS.md",
        "scripts/formal_spec_pins/AGENTS.md",
        "scripts/readme_snippets/AGENTS.md",
        "scripts/release_verify/AGENTS.md",
        "scripts/schema_conformance/AGENTS.md",
        "scripts/usage_signal/AGENTS.md",
        "sdk/go/AGENTS.md",
        "sdk/go/CLAUDE.md",
        "sdk/go/aws/AGENTS.md",
        "sdk/py/AGENTS.md",
        "sdk/py/CLAUDE.md",
        "sdk/ts-aws/AGENTS.md",
        "sdk/ts/AGENTS.md",
        "site/AGENTS.md",
        "spec/AGENTS.md",
        "web-verifier/AGENTS.md"
      ],
      "agent_instruction_max_bytes": 7472
    },
    "dependencies": {
      "manifests": [
        "collector/go.mod",
        "cross-sdk-tests/go.mod",
        "daemon/go.mod",
        "hook/go.mod",
        "mcp-proxy/go.mod",
        "site-obsigna/package.json",
        "site/package.json",
        "web-verifier/go.mod"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.11",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 0,
            "advisory_ids": [
              "GHSA-c2j3-45gr-mqc4"
            ],
            "fixed_version": "3.4.12",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.52.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5932"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 14
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 1,
          "unknown": 1
        },
        "advisory_count": 2,
        "affected_count": 2,
        "assessed_count": 904,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "go",
        "npm"
      ],
      "dependencies": [
        {
          "name": "modernc.org/sqlite",
          "manifest": "collector/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.52.0"
        },
        {
          "name": "obsigna.dev/sdk/go",
          "manifest": "collector/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.22.0"
        },
        {
          "name": "github.com/santhosh-tekuri/jsonschema/v5",
          "manifest": "cross-sdk-tests/go.mod",
          "ecosystem": "go",
          "version_constraint": "v5.3.1"
        },
        {
          "name": "github.com/tetratelabs/wazero",
          "manifest": "cross-sdk-tests/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.12.0"
        },
        {
          "name": "github.com/BurntSushi/toml",
          "manifest": "daemon/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        },
        {
          "name": "golang.org/x/sys",
          "manifest": "daemon/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.45.0"
        },
        {
          "name": "gopkg.in/yaml.v3",
          "manifest": "daemon/go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.0.1"
        },
        {
          "name": "modernc.org/sqlite",
          "manifest": "daemon/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.53.0"
        },
        {
          "name": "obsigna.dev/sdk/go",
          "manifest": "daemon/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.24.0"
        },
        {
          "name": "obsigna.dev/sdk/go",
          "manifest": "hook/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.24.0"
        },
        {
          "name": "github.com/google/uuid",
          "manifest": "mcp-proxy/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        },
        {
          "name": "gopkg.in/yaml.v3",
          "manifest": "mcp-proxy/go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.0.1"
        },
        {
          "name": "obsigna.dev/daemon",
          "manifest": "mcp-proxy/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.30.0"
        },
        {
          "name": "obsigna.dev/sdk/go",
          "manifest": "mcp-proxy/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.24.0"
        },
        {
          "name": "@astrojs/sitemap",
          "manifest": "site-obsigna/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.7"
        },
        {
          "name": "@astrojs/starlight",
          "manifest": "site-obsigna/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.41"
        },
        {
          "name": "astro",
          "manifest": "site-obsigna/package.json",
          "ecosystem": "npm",
          "version_constraint": "^7"
        },
        {
          "name": "sharp",
          "manifest": "site-obsigna/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.35"
        },
        {
          "name": "starlight-theme-flexoki",
          "manifest": "site-obsigna/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.2"
        },
        {
          "name": "@astrojs/sitemap",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.7"
        },
        {
          "name": "@astrojs/starlight",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.41"
        },
        {
          "name": "astro",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^7"
        },
        {
          "name": "sharp",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.35"
        },
        {
          "name": "starlight-theme-flexoki",
          "manifest": "site/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.2"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "github.com/burntsushi/toml",
            "direct": true,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/uuid",
            "direct": true,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/santhosh-tekuri/jsonschema/v5",
            "direct": true,
            "version": "v5.3.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tetratelabs/wazero",
            "direct": true,
            "version": "v1.12.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": true,
            "version": "v0.45.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": true,
            "version": "v0.46.0",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/yaml.v3",
            "direct": true,
            "version": "v3.0.1",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/sqlite",
            "direct": true,
            "version": "v1.52.0",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/sqlite",
            "direct": true,
            "version": "v1.53.0",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/sqlite",
            "direct": true,
            "version": "v1.54.0",
            "ecosystem": "go"
          },
          {
            "name": "obsigna.dev/daemon",
            "direct": true,
            "version": "v0.30.0",
            "ecosystem": "go"
          },
          {
            "name": "obsigna.dev/sdk/go",
            "direct": true,
            "version": "v0.22.0",
            "ecosystem": "go"
          },
          {
            "name": "obsigna.dev/sdk/go",
            "direct": true,
            "version": "v0.24.0",
            "ecosystem": "go"
          },
          {
            "name": "@astrojs/sitemap",
            "direct": true,
            "version": "3.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/starlight",
            "direct": true,
            "version": "0.41.3",
            "ecosystem": "npm"
          },
          {
            "name": "astro",
            "direct": true,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "sharp",
            "direct": true,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "starlight-theme-flexoki",
            "direct": true,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2",
            "direct": false,
            "version": "v1.41.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/config",
            "direct": false,
            "version": "v1.32.18",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/credentials",
            "direct": false,
            "version": "v1.19.17",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/feature/ec2/imds",
            "direct": false,
            "version": "v1.18.23",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/internal/configsources",
            "direct": false,
            "version": "v1.4.23",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/internal/endpoints/v2",
            "direct": false,
            "version": "v2.7.23",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/internal/v4a",
            "direct": false,
            "version": "v1.4.24",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding",
            "direct": false,
            "version": "v1.13.9",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/internal/presigned-url",
            "direct": false,
            "version": "v1.13.23",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/kms",
            "direct": false,
            "version": "v1.52.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/signin",
            "direct": false,
            "version": "v1.0.11",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/sso",
            "direct": false,
            "version": "v1.30.17",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/ssooidc",
            "direct": false,
            "version": "v1.36.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/sts",
            "direct": false,
            "version": "v1.42.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/smithy-go",
            "direct": false,
            "version": "v1.25.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cloudflare/circl",
            "direct": false,
            "version": "v1.6.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cloudflare/circl",
            "direct": false,
            "version": "v1.6.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/dustin/go-humanize",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-isatty",
            "direct": false,
            "version": "v0.0.20",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ncruces/go-strftime",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/remyoudompheng/bigfft",
            "direct": false,
            "version": "v0.0.0-20230129092748-24d4a6f8daec",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.52.0",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/libc",
            "direct": false,
            "version": "v1.72.3",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/libc",
            "direct": false,
            "version": "v1.73.4",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/libc",
            "direct": false,
            "version": "v1.74.1",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/mathutil",
            "direct": false,
            "version": "v1.7.1",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/memory",
            "direct": false,
            "version": "v1.11.0",
            "ecosystem": "go"
          },
          {
            "name": "@antfu/install-pkg",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-darwin-arm64",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-darwin-x64",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-arm64-gnu",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-arm64-musl",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-x64-gnu",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-linux-x64-musl",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-wasm32-wasi",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-win32-arm64-msvc",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-binding-win32-x64-msvc",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/compiler-rs",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/internal-helpers",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/markdown-remark",
            "direct": false,
            "version": "7.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/markdown-satteri",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/markdown-satteri",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/mdx",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/prism",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@astrojs/telemetry",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/crc32",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/sha256-browser",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/sha256-js",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/supports-web-crypto",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/util",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/client-kms",
            "direct": false,
            "version": "3.1055.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/core",
            "direct": false,
            "version": "3.974.14",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-env",
            "direct": false,
            "version": "3.972.40",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-http",
            "direct": false,
            "version": "3.972.42",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-ini",
            "direct": false,
            "version": "3.972.44",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-login",
            "direct": false,
            "version": "3.972.44",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-node",
            "direct": false,
            "version": "3.972.45",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-process",
            "direct": false,
            "version": "3.972.40",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-sso",
            "direct": false,
            "version": "3.972.44",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-web-identity",
            "direct": false,
            "version": "3.972.44",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/nested-clients",
            "direct": false,
            "version": "3.997.12",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/signature-v4-multi-region",
            "direct": false,
            "version": "3.996.29",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/token-providers",
            "direct": false,
            "version": "3.1054.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/types",
            "direct": false,
            "version": "3.973.9",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/util-locate-window",
            "direct": false,
            "version": "3.965.5",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/xml-builder",
            "direct": false,
            "version": "3.972.26",
            "ecosystem": "npm"
          },
          {
            "name": "@aws/lambda-invoke-store",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/biome",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/biome",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-darwin-arm64",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-darwin-arm64",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-darwin-x64",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-darwin-x64",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-arm64",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-arm64",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-arm64-musl",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-arm64-musl",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-x64",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-x64",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-x64-musl",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-x64-musl",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-win32-arm64",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-win32-arm64",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-win32-x64",
            "direct": false,
            "version": "2.4.16",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-win32-x64",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@braintree/sanitize-url",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-darwin-arm64",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-darwin-arm64",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-darwin-x64",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-darwin-x64",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-arm64-gnu",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-arm64-gnu",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-arm64-musl",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-arm64-musl",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-x64-gnu",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-x64-gnu",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-x64-musl",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-linux-x64-musl",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-wasm32-wasi",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-wasm32-wasi",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-win32-arm64-msvc",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-win32-arm64-msvc",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-win32-x64-msvc",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@bruits/satteri-win32-x64-msvc",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@capsizecss/unpack",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@chevrotain/types",
            "direct": false,
            "version": "11.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@clack/core",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@clack/prompts",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ctrl/tinycolor",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.2",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@expressive-code/core",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@expressive-code/plugin-frames",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@expressive-code/plugin-shiki",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@expressive-code/plugin-text-markers",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@fortawesome/fontawesome-free",
            "direct": false,
            "version": "6.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify/types",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify/utils",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify/utils",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/colour",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-freebsd-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-ppc64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-riscv64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-s390x",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-ppc64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-riscv64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-s390x",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-webcontainers-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-ia32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@mdx-js/mdx",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@mermaid-js/parser",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@msgpackr-extract/msgpackr-extract-darwin-arm64",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@msgpackr-extract/msgpackr-extract-darwin-x64",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@msgpackr-extract/msgpackr-extract-linux-arm",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@msgpackr-extract/msgpackr-extract-linux-arm64",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@msgpackr-extract/msgpackr-extract-linux-x64",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@msgpackr-extract/msgpackr-extract-win32-x64",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@nodable/entities",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@obsigna/sdk-ts",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opencode-ai/plugin",
            "direct": false,
            "version": "1.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "@opencode-ai/sdk",
            "direct": false,
            "version": "1.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "@oslojs/encoding",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.133.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/darwin-arm64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/darwin-x64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/default-ui",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/freebsd-x64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/linux-arm64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/linux-x64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/windows-arm64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pagefind/windows-x64",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/pluginutils",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/core",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-javascript",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-oniguruma",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/langs",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/primitive",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/themes",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/types",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/vscode-textmate",
            "direct": false,
            "version": "10.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/core",
            "direct": false,
            "version": "3.24.5",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/credential-provider-imds",
            "direct": false,
            "version": "4.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/fetch-http-handler",
            "direct": false,
            "version": "5.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/is-array-buffer",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/node-http-handler",
            "direct": false,
            "version": "4.7.5",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/signature-v4",
            "direct": false,
            "version": "5.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/types",
            "direct": false,
            "version": "4.14.2",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/util-buffer-from",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/util-utf8",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@standard-schema/spec",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3",
            "direct": false,
            "version": "7.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-array",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-axis",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-brush",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-chord",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-color",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-contour",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-delaunay",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-dispatch",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-drag",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-dsv",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-ease",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-fetch",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-force",
            "direct": false,
            "version": "3.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-format",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-geo",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-hierarchy",
            "direct": false,
            "version": "3.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-interpolate",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-path",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-polygon",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-quadtree",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-random",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-scale",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-scale-chromatic",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-selection",
            "direct": false,
            "version": "3.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-shape",
            "direct": false,
            "version": "3.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-time",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-time-format",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-timer",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-transition",
            "direct": false,
            "version": "3.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-zoom",
            "direct": false,
            "version": "3.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/debug",
            "direct": false,
            "version": "4.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree-jsx",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/geojson",
            "direct": false,
            "version": "7946.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/js-yaml",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdx",
            "direct": false,
            "version": "2.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ms",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/nlcst",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "24.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "24.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "25.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "25.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "26.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/sax",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/trusted-types",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-aix-ppc64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-darwin-arm64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-darwin-x64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-freebsd-arm64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-freebsd-x64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-linux-arm",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-linux-arm64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-linux-loong64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-linux-mips64el",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-linux-ppc64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-linux-riscv64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-linux-s390x",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-linux-x64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-netbsd-arm64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-netbsd-x64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-openbsd-arm64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-openbsd-x64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-sunos-x64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-win32-arm64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/typescript-win32-x64",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@upsetjs/venn.js",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "am-i-vibing",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "arg",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "aria-query",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "array-iterate",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "astring",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "astro-expressive-code",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "axobject-query",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "bcp-47",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "bcp-47-match",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "boolbase",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bowser",
            "direct": false,
            "version": "2.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-reference-invalid",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ci-info",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "collapse-white-space",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "common-ancestor-path",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "cookie-es",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "cose-base",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "cose-base",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "crossws",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "css-select",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "css-selector-parser",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-what",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "csso",
            "direct": false,
            "version": "5.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "cytoscape",
            "direct": false,
            "version": "3.33.2",
            "ecosystem": "npm"
          },
          {
            "name": "cytoscape",
            "direct": false,
            "version": "3.34.0",
            "ecosystem": "npm"
          },
          {
            "name": "cytoscape-cose-bilkent",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cytoscape-fcose",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3",
            "direct": false,
            "version": "7.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-array",
            "direct": false,
            "version": "2.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-array",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "d3-axis",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-brush",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-chord",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-color",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-contour",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-delaunay",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "d3-dispatch",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-drag",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-dsv",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-ease",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-fetch",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-force",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-format",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-geo",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-hierarchy",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-interpolate",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-path",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "d3-path",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-polygon",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-quadtree",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-random",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-sankey",
            "direct": false,
            "version": "0.12.3",
            "ecosystem": "npm"
          },
          {
            "name": "d3-scale",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-scale-chromatic",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-selection",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-shape",
            "direct": false,
            "version": "1.3.7",
            "ecosystem": "npm"
          },
          {
            "name": "d3-shape",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-time",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-time-format",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-timer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-transition",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-zoom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dagre-d3-es",
            "direct": false,
            "version": "7.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "dayjs",
            "direct": false,
            "version": "1.11.20",
            "ecosystem": "npm"
          },
          {
            "name": "dayjs",
            "direct": false,
            "version": "1.11.21",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decode-named-character-reference",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "defu",
            "direct": false,
            "version": "6.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "delaunator",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "destr",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "devalue",
            "direct": false,
            "version": "5.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "8.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "direction",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "domelementtype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.11",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "dset",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "effect",
            "direct": false,
            "version": "4.0.0-beta.74",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-toolkit",
            "direct": false,
            "version": "1.46.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-toolkit",
            "direct": false,
            "version": "1.47.1",
            "ecosystem": "npm"
          },
          {
            "name": "esast-util-from-estree",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "esast-util-from-js",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-attach-comments",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-build-jsx",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-is-identifier-name",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-scope",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-to-js",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-visit",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "expressive-code",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-check",
            "direct": false,
            "version": "4.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-string-truncated-width",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-string-width",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-wrap-ansi",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-xml-builder",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-xml-parser",
            "direct": false,
            "version": "5.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-my-way-ts",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "flattie",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "fontace",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "fontkitten",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "get-tsconfig",
            "direct": false,
            "version": "5.0.0-beta.4",
            "ecosystem": "npm"
          },
          {
            "name": "github-slugger",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "h3",
            "direct": false,
            "version": "1.15.11",
            "ecosystem": "npm"
          },
          {
            "name": "hachure-fill",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-embedded",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-format",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-dom",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-html",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-html-isomorphic",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-parse5",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-has-property",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-is-body-ok-link",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-is-element",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-minify-whitespace",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-parse-selector",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-phrasing",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-raw",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-select",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-estree",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-html",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-jsx-runtime",
            "direct": false,
            "version": "2.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-parse5",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-string",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-text",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hastscript",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "html-void-elements",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-whitespace-sensitive-tag-names",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-cache-semantics",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "i18next",
            "direct": false,
            "version": "26.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "import-meta-resolve",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ini",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "inline-style-parser",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "internmap",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "internmap",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "iron-webcrypto",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphabetical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphanumerical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-decimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-docker",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-hexadecimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsonc-parser",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "katex",
            "direct": false,
            "version": "0.16.45",
            "ecosystem": "npm"
          },
          {
            "name": "katex",
            "direct": false,
            "version": "0.16.47",
            "ecosystem": "npm"
          },
          {
            "name": "khroma",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "klona",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "kubernetes-types",
            "direct": false,
            "version": "1.30.0",
            "ecosystem": "npm"
          },
          {
            "name": "layout-base",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "layout-base",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-darwin-arm64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-darwin-x64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-freebsd-arm64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-freebsd-x64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-linux-arm64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-linux-x64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-openbsd-arm64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-openbsd-x64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-windows-arm64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-windows-x64",
            "direct": false,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash-es",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "longest-streak",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "magicast",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-extensions",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-table",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "marked",
            "direct": false,
            "version": "16.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-definitions",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-directive",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-find-and-replace",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-from-markdown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-autolink-literal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-strikethrough",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-table",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-task-list-item",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-expression",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-jsx",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdxjs-esm",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-phrasing",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-markdown",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.0.28",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "mermaid",
            "direct": false,
            "version": "11.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "mermaid-isomorphic",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-core-commonmark",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-directive",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-autolink-literal",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-strikethrough",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-table",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-tagfilter",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-task-list-item",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-expression",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-jsx",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-md",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs-esm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-destination",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-label",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-mdx-expression",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-space",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-title",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-whitespace",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-chunked",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-classify-character",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-combine-extensions",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-numeric-character-reference",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-string",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-events-to-acorn",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-html-tag-name",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-normalize-identifier",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-resolve-all",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-subtokenize",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mini-svg-data-uri",
            "direct": false,
            "version": "1.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "mlly",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "mrmime",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "msgpackr",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "msgpackr-extract",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "multipasta",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.12",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.16",
            "ecosystem": "npm"
          },
          {
            "name": "neotraverse",
            "direct": false,
            "version": "0.6.18",
            "ecosystem": "npm"
          },
          {
            "name": "nlcst-to-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch-native",
            "direct": false,
            "version": "1.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "node-gyp-build-optional-packages",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-mock-http",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nth-check",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "ofetch",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "ohash",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-parser",
            "direct": false,
            "version": "0.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-to-es",
            "direct": false,
            "version": "4.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-queue",
            "direct": false,
            "version": "9.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "p-timeout",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "package-manager-detector",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "pagefind",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "parse-entities",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "parse-latin",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-data-parser",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-expression-matcher",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "piccolore",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "points-on-curve",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "points-on-path",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.15",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.19",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-nested",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "6.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "prismjs",
            "direct": false,
            "version": "1.30.0",
            "ecosystem": "npm"
          },
          {
            "name": "process-ancestry",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pure-rand",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "radix3",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-build-jsx",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-jsx",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "recma-parse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-stringify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "regex-recursion",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "regex-utilities",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype",
            "direct": false,
            "version": "13.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-expressive-code",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-format",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-mermaid",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-parse",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-raw",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-recma",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-stringify",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-directive",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-gfm",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-mdx",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-parse",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-rehype",
            "direct": false,
            "version": "11.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-smartypants",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-stringify",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-pkg-maps",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "retext",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "retext-latin",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "retext-smartypants",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "retext-stringify",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "robust-predicates",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "roughjs",
            "direct": false,
            "version": "4.6.6",
            "ecosystem": "npm"
          },
          {
            "name": "rw",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "satteri",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "satteri",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "sax",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shiki",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "siginfo",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "sisteransi",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "sitemap",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "smol-toml",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "stackback",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "stream-replace-string",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "strnum",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-js",
            "direct": false,
            "version": "1.1.21",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-object",
            "direct": false,
            "version": "1.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "stylis",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "svgo",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-inflate",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyclip",
            "direct": false,
            "version": "0.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.16",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "toml",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-dedent",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-dedent",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ufo",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "ultrahtml",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "ultrahtml",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "uncrypto",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "8.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "8.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.18.2",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.24.6",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": false,
            "version": "11.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "unifont",
            "direct": false,
            "version": "0.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-find-after",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-modify-children",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position-from-estree",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-remove-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-children",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "unstorage",
            "direct": false,
            "version": "1.17.5",
            "ecosystem": "npm"
          },
          {
            "name": "url-extras",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-location",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "vitefu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "web-namespaces",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "why-is-node-running",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "xml-naming",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "xxhash-wasm",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "22.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "annotated-types",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "arrow",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": "26.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "boto3",
            "direct": false,
            "version": "1.43.51",
            "ecosystem": "pypi"
          },
          {
            "name": "botocore",
            "direct": false,
            "version": "1.43.51",
            "ecosystem": "pypi"
          },
          {
            "name": "cffi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "colorama",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "49.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fqdn",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.15",
            "ecosystem": "pypi"
          },
          {
            "name": "iniconfig",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "isoduration",
            "direct": false,
            "version": "20.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jmespath",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpointer",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema",
            "direct": false,
            "version": "4.26.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-specifications",
            "direct": false,
            "version": "2025.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "lark",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nodeenv",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "obsigna",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": "26.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pluggy",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "2.13.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-core",
            "direct": false,
            "version": "2.46.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pygments",
            "direct": false,
            "version": "2.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyright",
            "direct": false,
            "version": "1.1.411",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "9.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dateutil",
            "direct": false,
            "version": "2.9.0.post0",
            "ecosystem": "pypi"
          },
          {
            "name": "referencing",
            "direct": false,
            "version": "0.37.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rfc3339-validator",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "rfc3986-validator",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "rfc3987-syntax",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "0.30.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ruff",
            "direct": false,
            "version": "0.15.22",
            "ecosystem": "pypi"
          },
          {
            "name": "s3transfer",
            "direct": false,
            "version": "0.19.0",
            "ecosystem": "pypi"
          },
          {
            "name": "six",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": false,
            "version": "4.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspection",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tzdata",
            "direct": false,
            "version": "2026.2",
            "ecosystem": "pypi"
          },
          {
            "name": "uri-template",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "webcolors",
            "direct": false,
            "version": "25.10.0",
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 904,
        "direct_count": 18,
        "indirect_count": 886
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 5,
        "merged_prs": 681,
        "open_issues": 23,
        "closed_ratio": 0.918,
        "closed_issues": 259,
        "closed_unmerged_prs": 21
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "ojongerius",
          "commits": 1106,
          "avatar_url": "https://avatars.githubusercontent.com/u/1726055?v=4"
        }
      ],
      "contributors_sampled": 1,
      "top_contributor_share": 1
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "codeql.yml",
        "collector.yml",
        "cross-sdk-tests.yml",
        "daemon.yml",
        "formal-spec-pins.yml",
        "formal.yml",
        "go-import-liveness.yml",
        "hook.yml",
        "legacy-name-guard.yml",
        "mcp-proxy.yml",
        "mdx-snippets.yml",
        "opencode-plugin.yml",
        "publish-go.yml",
        "publish-py.yml",
        "publish-ts.yml",
        "readme-snippets.yml",
        "release-obsigna.yml",
        "release-opencode-plugin.yml",
        "release-sdk-go.yml",
        "release-sdk-py.yml",
        "release-sdk-ts.yml",
        "scripts-lint.yml",
        "sdk-go.yml",
        "sdk-py.yml",
        "sdk-ts.yml",
        "shellcheck.yml",
        "site-obsigna.yml",
        "site.yml",
        "spec.yml",
        "web-verifier.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "biome.json",
        "ruff.toml"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "go.sum",
        "pnpm-lock.yaml",
        "uv.lock"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 3,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/11 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 3 contributing companies or organizations -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 8,
            "reason": "dependency not pinned by hash detected -- score normalized to 8",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 9,
            "reason": "SAST tool detected but not run on all commits",
            "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": 0,
            "reason": "21 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "a6356278de37a0c79a67989fa1457bd962f8f0ea",
        "ran_at": "2026-07-22T03:49:19Z",
        "aggregate_score": 5.8,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": true,
      "has_security_policy": true,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-20T07:41:10Z",
      "oldest_open_prs": [
        {
          "number": 442,
          "created_at": "2026-05-16T21:45:30Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 444,
          "created_at": "2026-05-16T21:59:18Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 532,
          "created_at": "2026-05-22T21:55:56Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 708,
          "created_at": "2026-06-02T01:13:12Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 951,
          "created_at": "2026-06-25T01:12:27Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-20T04:10:49Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 481,
          "created_at": "2026-05-21T05:05:03Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 482,
          "created_at": "2026-05-21T05:05:05Z",
          "last_comment_at": "2026-06-19T04:43:21Z",
          "last_comment_author": "ojongerius"
        },
        {
          "number": 483,
          "created_at": "2026-05-21T05:05:07Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 484,
          "created_at": "2026-05-21T05:05:09Z",
          "last_comment_at": "2026-06-23T20:10:26Z",
          "last_comment_author": "ojongerius"
        },
        {
          "number": 485,
          "created_at": "2026-05-21T05:05:11Z",
          "last_comment_at": "2026-06-19T04:38:05Z",
          "last_comment_author": "ojongerius"
        },
        {
          "number": 492,
          "created_at": "2026-05-21T05:11:38Z",
          "last_comment_at": "2026-06-19T04:43:23Z",
          "last_comment_author": "ojongerius"
        },
        {
          "number": 581,
          "created_at": "2026-05-24T01:44:28Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 657,
          "created_at": "2026-05-27T10:10:32Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 676,
          "created_at": "2026-05-30T05:51:53Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 728,
          "created_at": "2026-06-02T10:57:02Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 729,
          "created_at": "2026-06-02T10:57:13Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 730,
          "created_at": "2026-06-02T10:57:27Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 731,
          "created_at": "2026-06-02T10:57:37Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 739,
          "created_at": "2026-06-03T05:08:07Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 762,
          "created_at": "2026-06-09T03:18:05Z",
          "last_comment_at": "2026-06-09T10:01:35Z",
          "last_comment_author": "ojongerius"
        },
        {
          "number": 767,
          "created_at": "2026-06-10T04:11:03Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 768,
          "created_at": "2026-06-10T10:07:27Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 770,
          "created_at": "2026-06-10T10:08:00Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 771,
          "created_at": "2026-06-10T10:08:17Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 772,
          "created_at": "2026-06-10T10:08:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/agent-receipts/obsigna",
    "host": "github.com",
    "name": "obsigna",
    "owner": "agent-receipts"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 69,
      "inputs": {
        "security": 66,
        "vitality": 81,
        "community": 48,
        "governance": 58,
        "engineering": 90
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 81,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "commits_last_year": 1212,
              "human_commit_share": 0.73,
              "days_since_last_push": 1,
              "active_weeks_last_year": 16
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "16/52 weeks with commits",
                "points": 11.1,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 16
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "1212 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 1212
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "obsigna/v0.30.0",
              "releases_from_tags": false,
              "days_since_latest_release": 4,
              "mean_days_between_releases": 2.7
            },
            "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 4 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 4
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~2.7 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 2.7
                    }
                  }
                ],
                "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": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 48,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 23,
            "inputs": {
              "forks": 3,
              "stars": 20,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "below_threshold"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "20 stars",
                "points": 20.7,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 20
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "3 forks",
                "points": 2.5,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 77,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": true
            },
            "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": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 6.3,
                "status": "met",
                "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": 58,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 20,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 1,
              "top_contributor_share": 1
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 100% of commits",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "1 contributors",
                "points": 1.4,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 3 contributing companies or organizations -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "merged_prs": 681,
              "open_issues": 23,
              "closed_issues": 259,
              "issue_closed_ratio": 0.918,
              "closed_unmerged_prs": 21
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "92% of issues closed",
                "points": 42.9,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 92
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "681/702 decided PRs merged",
                "points": 37.1,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 681,
                      "decided": 702
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/11 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 46,
            "inputs": {
              "followers": 11,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "agent-receipts",
              "public_repos": 9,
              "account_age_days": 111
            },
            "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": "11 followers of agent-receipts",
                "points": 7.8,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 11,
                      "login": "agent-receipts"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "9 public repos, account ~0 yr old",
                "points": 7.9,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 9
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "obsigna.dev/hook",
                "obsigna.dev/daemon",
                "obsigna.dev/collector",
                "obsigna.dev/mcp-proxy"
              ],
              "ecosystems": "go",
              "any_deprecated": false,
              "min_days_since_publish": 4
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "4 package(s) on go",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 4,
                      "ecosystems": "go"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 4 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 4
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "40 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 40
                    }
                  }
                ],
                "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": "excellent",
        "name": "Engineering Quality",
        "value": 90,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "30 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 30
                    }
                  }
                ],
                "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": "biome.json, ruff.toml",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "biome.json, ruff.toml"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "topics": [
                "ai",
                "ai-agents",
                "audit",
                "cryptography",
                "ed25519",
                "golang",
                "mcp",
                "model-context-protocol",
                "python",
                "receipts",
                "security",
                "typescript",
                "verifiable-credentials",
                "w3c-vc",
                "agent-receipts",
                "obsigna"
              ],
              "has_wiki": true,
              "homepage": "https://agentreceipts.ai",
              "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://agentreceipts.ai",
                "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": "16 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 16
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 66,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": null,
            "notes": [],
            "value": 58,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 18,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 0,
              "scorecard_aggregate": 5.8
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/11 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 3 contributing companies or organizations -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow 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 8",
                "points": 4,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool detected but not run on all commits",
                "points": 4.5,
                "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": "21 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 904 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": 904
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 2,
              "affected_packages": 2,
              "assessed_packages": 904,
              "unassessed_packages": 0,
              "affected_by_severity": "low 1, 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": 904,
              "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": 2
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "good",
        "name": "AI Readiness",
        "value": 84,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "has_llms_txt": true,
              "legible_history_share": 1,
              "agent_instruction_files": [
                ".github/instructions/general.instructions.md",
                ".github/instructions/go.instructions.md",
                ".github/instructions/python.instructions.md",
                ".github/instructions/typescript.instructions.md",
                "AGENTS.md",
                "CLAUDE.md",
                "hook/AGENTS.md",
                "integrations/opencode-plugin/AGENTS.md",
                "mcp-proxy/AGENTS.md",
                "mcp-proxy/CLAUDE.md",
                "scripts/byte_identity/AGENTS.md",
                "scripts/conformance_matrix/AGENTS.md",
                "scripts/daemon_protocol/AGENTS.md",
                "scripts/formal_spec_pins/AGENTS.md",
                "scripts/readme_snippets/AGENTS.md",
                "scripts/release_verify/AGENTS.md",
                "scripts/schema_conformance/AGENTS.md",
                "scripts/usage_signal/AGENTS.md",
                "sdk/go/AGENTS.md",
                "sdk/go/CLAUDE.md",
                "sdk/go/aws/AGENTS.md",
                "sdk/py/AGENTS.md",
                "sdk/py/CLAUDE.md",
                "sdk/ts-aws/AGENTS.md",
                "sdk/ts/AGENTS.md",
                "site/AGENTS.md",
                "spec/AGENTS.md",
                "web-verifier/AGENTS.md"
              ],
              "agent_instruction_max_bytes": 7472
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": ".github/instructions/general.instructions.md, .github/instructions/go.instructions.md, .github/instructions/python.instructions.md, .github/instructions/typescript.instructions.md, AGENTS.md, CLAUDE.md, hook/AGENTS.md, integrations/opencode-plugin/AGENTS.md, mcp-proxy/AGENTS.md, mcp-proxy/CLAUDE.md, scripts/byte_identity/AGENTS.md, scripts/conformance_matrix/AGENTS.md, scripts/daemon_protocol/AGENTS.md, scripts/formal_spec_pins/AGENTS.md, scripts/readme_snippets/AGENTS.md, scripts/release_verify/AGENTS.md, scripts/schema_conformance/AGENTS.md, scripts/usage_signal/AGENTS.md, sdk/go/AGENTS.md, sdk/go/CLAUDE.md, sdk/go/aws/AGENTS.md, sdk/py/AGENTS.md, sdk/py/CLAUDE.md, sdk/ts-aws/AGENTS.md, sdk/ts/AGENTS.md, site/AGENTS.md, spec/AGENTS.md, web-verifier/AGENTS.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".github/instructions/general.instructions.md, .github/instructions/go.instructions.md, .github/instructions/python.instructions.md, .github/instructions/typescript.instructions.md, AGENTS.md, CLAUDE.md, hook/AGENTS.md, integrations/opencode-plugin/AGENTS.md, mcp-proxy/AGENTS.md, mcp-proxy/CLAUDE.md, scripts/byte_identity/AGENTS.md, scripts/conformance_matrix/AGENTS.md, scripts/daemon_protocol/AGENTS.md, scripts/formal_spec_pins/AGENTS.md, scripts/readme_snippets/AGENTS.md, scripts/release_verify/AGENTS.md, scripts/schema_conformance/AGENTS.md, scripts/usage_signal/AGENTS.md, sdk/go/AGENTS.md, sdk/go/CLAUDE.md, sdk/go/aws/AGENTS.md, sdk/py/AGENTS.md, sdk/py/CLAUDE.md, sdk/ts-aws/AGENTS.md, sdk/ts/AGENTS.md, site/AGENTS.md, spec/AGENTS.md, web-verifier/AGENTS.md"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": "llms.txt present",
                "points": 15,
                "status": "met",
                "details": [
                  {
                    "code": "llms_txt_present",
                    "params": {}
                  }
                ],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "73 of 73 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 73,
                      "sampled": 73
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 83,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "go.sum",
                "pnpm-lock.yaml",
                "uv.lock"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "integrations/opencode-plugin/tsconfig.json",
                "sdk/py/src/obsigna/py.typed",
                "sdk/ts-aws/tsconfig.json",
                "sdk/ts/tsconfig.json",
                "site-obsigna/tsconfig.json",
                "site/tsconfig.json"
              ],
              "agent_commit_share": 0,
              "toolchain_manifests": [
                "collector/go.mod",
                "cross-sdk-tests/go.mod",
                "daemon/go.mod",
                "dist/sdk-go-deprecation/go.mod",
                "hook/go.mod",
                "mcp-proxy/go.mod",
                "sdk/go/aws/go.mod",
                "sdk/go/go.mod",
                "web-verifier/go.mod"
              ],
              "dependency_bot_commit_share": 0.27
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "collector/go.mod, cross-sdk-tests/go.mod, daemon/go.mod (toolchain convention, no task runner)",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "toolchain_convention",
                    "params": {
                      "files": "collector/go.mod, cross-sdk-tests/go.mod, daemon/go.mod"
                    }
                  }
                ],
                "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": "biome.json, ruff.toml",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "biome.json, ruff.toml"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "integrations/opencode-plugin/tsconfig.json, sdk/py/src/obsigna/py.typed, sdk/ts-aws/tsconfig.json, sdk/ts/tsconfig.json, site-obsigna/tsconfig.json, site/tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "integrations/opencode-plugin/tsconfig.json, sdk/py/src/obsigna/py.typed, sdk/ts-aws/tsconfig.json, sdk/ts/tsconfig.json, site-obsigna/tsconfig.json, site/tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "27 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 27,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 8",
                "points": 8,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "Go",
              "largest_source_bytes": 80971,
              "source_files_sampled": 449,
              "oversized_source_files": 1
            },
            "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": "1/449 source files over 60KB",
                "points": 54.9,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 449,
                      "oversized": 1
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "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": [
    "Could not fetch go package 'obsigna.dev/web-verifier' from its registry",
    "Could not fetch go package 'obsigna.dev/cross-sdk-tests' from its registry"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-22T03:49:35.743912Z",
  "schema_version": "0.26.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/a/agent-receipts/obsigna.svg",
  "full_name": "agent-receipts/obsigna",
  "license_state": "standard",
  "license_spdx": "Apache-2.0"
}

Bewertungen sind Signale, keine Garantien. Sie spiegeln öffentlich sichtbare Praxis auf GitHub wider — kein Code-Audit und keine Sicherheitsgarantie.

Fehlende Daten werden ausgeschlossen und die Gewichte neu normiert, nie als null bewertet. Die Methodik ist versioniert und offen: Metriken v1.13.0, Schema v0.26.0 — vollständige Methodik · Metriken-Wiki.

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte StatistikenGo.