← Portfolio✦ Constellation
VAC REGISTRY — VERIFIABLE AGENT CLAIMS

Do not trust this page. Re-earn it.

Each row is a capability claim shipped as an evidence bundle: a manifest, artifacts pinned by sha256, declared numbers a verifier recomputes offline, and the exact commands that re-earn every verdict from the issuer's own deterministic grader (SPEC.md). Acceptance is two-gated: structural verification by python -m vac.verify — re-proven against these exact fetched artifacts before this page is allowed to deploy — then semantic replay by the issuer's own regrader in CI. Every artifact below links to the bytes the hashes pin: fetch them and run the verifier yourself. Ten minutes and a Python install can try to break a claim: REPLAY_REQUEST.md — confirmations, discrepancies, and blocked replays all get published.

loading registry.json…
bundlecapability claimedsubject declared results (recomputed offline)commits evidence

Statuses (SPEC.md section 6): accepted — both gates as recorded per entry; confirmed — survived a challenge; narrowed — over-reached, superseded by a tighter claim; superseded — replaced by newer evidence; invalidated — failed on re-run, kept visible as a dead entry (registries do not delete); the two commits — they are different facts and can legitimately differ. The issuer-declared source commit is what the issuer says produced the evidence, recorded from its own manifest. The registry-fetched artifacts commit is where these exact bytes were read from, and it is what the sha256 pins and every artifact link above are anchored to. An issuer whose emitter stamps its code before writing the bundle it produces will show two commits here, and only the fetched one is claimed to hold a verifying bundle.
VAC version — which binding rule the entry was accepted under, and NOT the registry schema version above. Under 0.1 a summary number is matched against recomputation pools merged by bare field name, with a loose second tier admitting any value some check happens to recompute. Under 0.2 pools are keyed scope.field and never merged, the scope is derived from the check's own evidence filename, and there is no second tier: a 0.2 entry's headline numbers are each bound to the one check that earned them. Both are accepted; 0.2 is the stronger guarantee.
pending — named as not yet admissible, with its exact reason, rather than fabricated.

A structural PASS means a bundle is internally honest — schema, hashes, closure, stated limitations, stamps, every declared number recomputed from the committed artifacts. It does not mean the issuer's grader agrees: that is replay.yml, which downloads every artifact by the URL above, refuses any byte that does not hash to its registry pin, and runs each bundle's replay block at the pinned issuer commit — weekly, and on demand. A bundle that passes structure but fails replay is a precise, reproducible accusation against the issuer. To watch the structural gate refuse a cooked hash, see INVALIDATION.md.

← portfolio hub · the constellation