Corobate
by AttestedAssets

How it works

A receipt you can re-run — every term, in plain language

Corobate turns a decision into a sealed, reproducible receipt: a record of the verdict, the evidence behind it graded by how much you can trust it, and — honestly — when the system refused to decide. Here's exactly what that means, and how to test it yourself.

No account, nothing installed. The verifier and demo run entirely in your browser.

01What a receipt is

One record that answers: what was decided, on what evidence, and can anyone re-check it.

SEALED RECEIPT · decision dcn_8f2a41c0 · engine corobate 1.4.2
QuestionMay this agent execute the order?
VerdictCAUTION
Confidence0.55 · bound by the weakest critical input
tool_call_audit_trailverified
agent_identity_proofverified
sso_group_membershipseller-asserted
sha256:9f37955085c10b… · chained · RFC 3161 anchored · re-runnable ✓

02The terms, defined

These are the words you'll see on a receipt and across the site.

Provenance class verified modeled seller-asserted

Every input carries exactly one label for how it was established: VERIFIED (from a named, checkable source), MODELED (derived or simulated), or SELLER-ASSERTED (claimed by an interested party). An input that can't be classed is rejected, not quietly accepted. Nothing on a receipt is unlabeled.

Gated confidence

Confidence isn't an average — it's bounded by the least-reliable critical input. One shaky but essential input caps the whole result, so a receipt can never look more confident than its weakest necessary evidence.

Honest abstention

When critical evidence is missing or stale, the engine records a refusal to decide — a named "not enough information" — instead of guessing. Abstention is a first-class outcome, with the same weight as a verdict. It's the anti-liability move: the system never claims what it can't support.

Verdict approve caution withheld

The result of comparing gated confidence to the decision's thresholds: APPROVE (clears the bar), CAUTION (partial — gap named), or WITHHELD / ABSTAIN (insufficient evidence). The rule and thresholds are recorded on the receipt so the verdict is checkable, not a black box.

The seal (hash chain)

Before the verdict is shown, the receipt's content is hashed (SHA-256) and linked into an append-only chain. Change any historical receipt and every later link breaks. Editing after the fact becomes structurally impossible, not merely against the rules.

The external anchor (RFC 3161)

The head of the chain is timestamped by an independent authority (an RFC 3161 time-stamping service). That's what lets a third party confirm when the record existed without trusting you or the operator.

Reproduction (the whole point)

Because the engine is deterministic and the receipt records the engine version, inputs, and evidence, anyone can re-execute the decision and confirm the verdict reproduces — byte-for-byte, on their own hardware, trusting no one. That's what the verifier does, live, in your browser.

Why this matters for you: a plain log proves an action was recorded. A Corobate receipt proves the decision is independently verifiable and reproducible, with an honest record of any refusal — which is exactly what the EU AI Act's Article 12 record-keeping obligation asks for, and what an auditor who trusts neither vendor nor operator can re-run.

03Test it yourself

The best way to understand it is to break it.

Open the verifier → Try the live demo →

In the verifier, press Verify to watch a real receipt reproduce, then press Tamper — change one byte and watch the seal break. In the live demo on the home page, toggle a verified input to stale and watch the seal refuse to sign. Nothing is uploaded; it all runs locally.