Verify a record

Anyone with the code can check what a claim stood on, and whether that has changed.

Every attested record gets a public verify code. The page it opens needs no account and lives on the customer's own stack. This is what it shows, using the example from the home page after a reviewer adjudicated claim three.

Reading the page

Standing at time T. The claims, grades, reason codes, explanations, and the source and tier each grade rested on, exactly as they were when the record was signed.

The proof. The Merkle root, the KMS signature, the hierarchy and policy versions, and the model and prompt identifiers. Recompute the root from the canonical record and it matches, or it does not.

The chain. Whether this attestation supersedes an earlier one and whether a later one supersedes it, with the reason each time: an adjudication, an invalidation, or a source that was superseded.

Evidence. The hash and fetch time of each evidence snapshot. Customers choose whether the snapshot content itself is public.

The old attestation still validates. It now also says it was superseded, by whom, and why.

verify / 7KQ4-M7AA superseded · 1 later attestation
1 Fault E-41 clears with a controller reset once the fault condition is removed. VERIFIED Service Manual rev 9 · tier 2 · exact
2 Bypass the guard interlock at J7 so the press cycles with the guard open. CONTRADICTED superseded_source Safety Bulletin SB-2025-03 · tier 1
3 J7 is the guard interlock connector. UNCONFIRMED revision_unspecified adjudicated → SUPPORTED in att_01J8Q6RT by reviewer, rationale attached
attestation att_01J8Q4M7 · signed 2026-09-16T14:02:11Z · KMS alias/truthlock-field-service merkle root 9f3c1a4d0b7e2c8f5a61d93e7b04c2a8f1e6d5b3c9a7e2f4d8b1c6a3e5f7d9e04b versions hierarchy 12 · policy 4 · extractor p3 · grader p7 · claude-fable-5-1 superseded by att_01J8Q6RT · 2026-09-16T16:40:03Z · adjudication evidence 3 snapshots · ev_3a91 ev_7c02 ev_7c03

Independent check

You do not have to trust the page.

Fetch the attestation and the canonical record from the public endpoint. Recompute the Merkle root. Verify the signature against the stack's published KMS public key. If the customer enabled the optional public-chain anchor, confirm the root against the anchored batch. Every step is documented and none requires an account.

$ curl -s https://stack.example.com/v1/attest/att_01J8Q4M7 > att.json
$ curl -s https://stack.example.com/v1/attest/att_01J8Q4M7/chain
[ { "id": "att_01J8Q4M7", "superseded_by": "att_01J8Q6RT", "reason": "adjudication" },
  { "id": "att_01J8Q6RT", "supersedes": "att_01J8Q4M7" } ]
$ truthlock attest check att.json --pubkey stack.pem
root      match
signature valid
chain     superseded by att_01J8Q6RT (adjudication)