Cartel Evidence Pack
====================

Order:          CT-0926-0001
Contract:       v8 · sha256:c5acf7a641f6c977795a6b2213e9528e1a0066e8d7f2c8c0cfdfa18477a52248
Generated:      2026-09-26T14:12:55Z

Demo plan: built from Cartel's flagship fixtures. The signature is made with Cartel's published demo key (seed: sha256 of "cartel-demo-signing-key"), not a person's passkey, so it proves the files are intact, not who approved them.

Verify it yourself (Node 20 or later, no network needed):

    node verify.mjs

It re-computes the contract hash, checks the passkey signature over it,
re-hashes the ledger chain and every source snapshot, and prints one
line per check. Edit any file and run it again to watch a check fail.

Files
-----
contract.json        The signed contract, RFC 8785 (JCS) canonical JSON.
contract.sha256      SHA-256 of contract.json. This is what the passkey signed.
signature.json       The WebAuthn assertion and the public key (JWK).
proof-report.json    The proof report the contract names by hash.
ap2-mandates.json    The same authorization as AP2 Intent and Cart mandates.
sources/             Source snapshots the proof relied on, with hashes in index.json.
ledger-excerpt.json  The plan's hash-chained ledger, payloads verbatim.
payment.json         The payment result. Card numbers are never stored.
summary.pdf          A one-page human summary of all of the above.
verify.mjs           The offline verifier (a single self-contained file).
manifest.json        SHA-256 of every file in this pack.

What this proves: the person holding the passkey approved exactly this
contract, the payment was checked against it, and none of these files
has changed since. What it does not prove: that a product fits, is
genuine or will arrive. Those are shown as evidence, not promises.
