trust receipts
Receipts, not promises.
A receipt is a signed claim you can check yourself. This page describes the format, the live verifier, and what neither of them proves.
The format
A receipt is canonical JSON signed with Ed25519: who issued it (did:key or did:web), what happened (action, subject, hashes), and when. The format – continuity-receipt – is published openly; versions 0.1 and 0.2 are supported by the reference verifier, with an optional anchor field for external timestamping.
Verify one
Hosted: POST a receipt bundle to https://api.whitemagic.dev/verify – stateless, no account; add ?require_anchor=1 to require an anchor. Verdicts are TRUSTED, PROVISIONAL, INSUFFICIENT_EVIDENCE, or UNTRUSTED; GET /info describes the surface. Local: run the reference verifier or the Rust crate offline – the same code path the hosted API uses.
What the hosted lanes record
Verification is stateless: bundles are verified in memory and dropped. The gateway records one access entry per request – key name, timestamp, method, status, and response size – never bundle contents, IP addresses, or query text. Details in the Privacy Policy.
Limits
A receipt proves integrity and authorship, not truth: a valid signature says the issuer signed this claim, not that the claim is correct. Anchors are optional and prove existence-in-time only when present. The hosted recall lane is read-only and rate-capped, carries no abstention signal yet, and runs under partial kernel confinement – disclosed, not hidden.