Don't take our word for it.

Below is a signed decision record. The hash and the signature are real, and your browser is checking them, not our server. Change anything in it and the proof breaks in front of you.

vaidr.decision-record/v1

The four fields below are editable. Everything else is fixed so you can see the rest of the record stay still while the proof collapses.

What the policy did about this action.

Which version of the rule was in force.

Who the action was authorized under.

A number no one would think to check.

Record ID
rec_20260625T140922Z_a1b2c3d4
Timestamp
2026-06-25T14:09:22.481Z
Agent
claims-triage · v3.2.0
Policy rule
claims.payout.threshold
Model
anthropic · claude-opus-4
Request hash
sha256:9f2c4e1a77b3d8e05c6a1f4b92e7d3a8c05b1e6f4a29d7c3b8e0f5a1c6d2b9e4
Response hash
sha256:3a7d1f9c2b8e64a05d3c7f1b9e2a6d4c8f0b3e7a1d5c9f2b6e4a8d0c3f7b1e5a

Verification

Checking

Running in your browser.

Check 1 · Canonical hash

Witnessed at signing time:

ca2545183cab849f57050d555f0acaae7307d5dd9446a80c8d4e2240815c391e

Check 2 · Ed25519 signature

Verified against the public key below, over the hash above.

key 29183bdc8945f9f84dd3331ef58401ba

No network request is made. View source if you want to check that, which is rather the point.

Canonical JSON

Keys sorted at every level, no insignificant whitespace. Two systems that order their JSON differently still produce the same bytes, so the hash depends on the values and nothing else.

What this page proves, and what it doesn't.

We would rather be precise than impressive. A demo that overclaims is exactly the thing this company exists to argue against.

It proves the record is unaltered.

The hash covers every value in the record. The signature covers the hash. Change one digit in a token count and both checks fail, which is what you just did.

It proves it without us.

The verification ran in your browser against a public key. Stones AI was not contacted and could not have influenced the result. Anyone you hand a record to can do the same.

It does not prove when it happened.

A signature alone cannot establish that a record existed at the time it claims. That comes from witnessing: the hash is published to an append only transparency log within seconds, and the inclusion proof is what a third party checks. This page does not query that log. The verifier does.

This record is illustrative.

It is a sample we signed to show the mechanism, not a captured customer record. The keypair was generated for this page and the private key was discarded.

What an auditor runs.

The complete verification adds two things this page leaves out: the second signature in the hybrid pair, and the proof that the record was witnessed when it says it was.

  1. 01

    Hybrid signature

    Records carry an Ed25519 signature alongside an ML-DSA-65 signature. Ed25519 is what browsers can check today. ML-DSA-65 is the NIST standardized lattice scheme, there so a record signed now still verifies against a future where the classical curve does not hold.

  2. 02

    Witness inclusion

    The hash goes to Sigstore Rekor, a public append only log, and to a Stones AI witnessed log built as an RFC 6962 Merkle tree with periodic signed checkpoints and public read endpoints. Two independent witnesses, and disagreement between them is itself the tamper signal.

Design partners get the verifier as a standalone CLI. It takes a record and a public key and needs nothing from us.

$ vadr-verify record.json --key operator.pub

The key belongs to the operator who signed the record, not to Stones AI. We could not forge one of these if we wanted to, and that property is the product.

Run this against your own AI.

If your agents are taking real action in a regulated environment and you cannot yet answer for what they did, that is the conversation we want to have.