Proof walkthrough

Assay is an evidence compiler. It turns an AI workflow execution into a proof pack: a small folder of signed evidence files that anyone can verify.

When someone asks "can you prove it?" — this is the artifact you hand them.

A proof pack is a small signed folder created from an AI workflow execution. It gives another person — or another system — something concrete to inspect and verify.

receipt_pack.jsonl The evidence trail — line-by-line receipts of what happened: model calls, checks, verdicts.
pack_manifest.json The inventory sheet — lists every file and its fingerprint, plus the pack identity.
pack_signature.sig The digital wax seal — proves the manifest was signed and not changed afterward.
verify_report.json Machine-readable verdict — structured results for software and automation.
verify_transcript.md Human-readable summary — the same story, written for people.

Every verification resolves to one of three verdicts. The outcome is the point — not the exit code.

PASS Authentic evidence. Declared standards passed.
HONEST FAIL Authentic evidence. Declared standards failed. The failure is sealed and cannot be rewritten after the fact.
TAMPERED The pack changed after signing. The evidence cannot be trusted.

You've seen the three verdicts. Now watch a real pack resolve to each one.

Verify a real sample artifact in your browser. No install. Nothing uploaded.

Open verifier

Click "REVIEWER PACKET", "PASS", "HONEST FAIL", or "TAMPERED" to load a sample and see the verdict instantly.

Six public artifacts from the real toolchain: three proof-pack verdicts, one reviewer packet, one insurance vertical mapping, and one MCP proxy scenario.

Install Assay to verify packs locally. Same verification logic, your own machine.

pip install assay-ai git clone https://github.com/Haserjian/assay-proof-gallery cd assay-proof-gallery
# Clean pass assay verify-pack ./gallery/01-fintech-pass/proof_pack # Honest fail — integrity passes, claim fails assay verify-pack ./gallery/02-insurance-honest-fail/proof_pack --require-claim-pass # Tampered — one byte changed assay verify-pack ./gallery/03-tamper-demo/tampered # Reviewer packet — scope, settlement, and nested proof together assay reviewer verify ./gallery/05-reviewer-packet-gaps/reviewer_packet # NAIC AISET — insurance vertical mapping (14 questions) assay reviewer verify ./gallery/06-naic-aiset-mapping/reviewer_packet # MCP proxy — tool calls notarized assay verify-pack ./gallery/04-mcp-notary-proxy/proof_pack

The verifier performs four checks. If any check fails, verification fails.

1 Every file gets a fingerprint. A SHA-256 hash. Change one byte and the fingerprint changes.
2 The manifest lists the expected fingerprints. If any hash doesn't match, the file was changed.
3 The manifest is digitally signed. If someone edits the manifest to cover a tamper, the signature breaks.
4 The verifier checks declared standards. The attestation records whether claimed checks passed or failed at runtime.

If a file was changed, the fingerprint won't match. If someone edits the manifest to cover it, the signature breaks. That is how tampering is detected.

Each pack's fingerprint is recorded in a public, append-only ledger. You can compare a pack against the ledger to confirm it hasn't been swapped.

Scenario 01 — Pass
6e6b34e48dd13ae0…
Scenario 02 — Honest fail
d2dfa04aed0697cf…
Scenario 03 — Tamper demo (clean)
d664115a7aaaedfb…
Ledger
haserjian.github.io/assay-ledger