Home · Platform · Evidence bundles
Platform · Evidence bundles

Many receipts. One verifiable artifact.

A single AI decision is one receipt. Real work is many steps: a plan, a dozen tool calls, an approval, the execution, maybe a rollback. An evidence bundle wraps every receipt for that workflow into one artifact with a single top-level hash, so you can hand an auditor or a customer one thing that proves the whole sequence happened, in order, unaltered.

The problem

One receipt proves one step. A workflow is many steps.

A per-decision receipt is tamper-evident on its own: you can prove that this one input produced this one output under this one policy. But almost nothing that matters is a single step. An agent run plans, calls tools, waits on an approval, executes, and sometimes rolls back. To prove "the whole thing happened as claimed" you have to prove a set of receipts: authentic, in order, and complete, with nothing quietly added or dropped.

Set

Every step is a receipt

Plan, tool calls, approvals, execution, rollback. Each one is already its own tamper-evident record in the hash chain.

Order

Sequence has to hold

The approval came before the execution. The rollback came after the failure. Order is part of the claim, not a detail.

Complete

Nothing added or dropped

A convenient step quietly removed, or an extra one slipped in, changes the story. Completeness has to be provable too.

Portable

One thing to hand over

An auditor does not want forty screenshots and a spreadsheet. They want a single artifact they can verify themselves.

What a bundle is

A Merkle root over a whole workflow, plus the proofs.

AskLedger already keeps per-tenant hash chains and batches receipts into Merkle trees (RFC 9162-style). An evidence bundle uses those same primitives: it collects the receipts for one workflow, computes a Merkle root over them (one top-level hash), and ships the inclusion proof for each receipt. Anyone can recompute the root from the receipts and proofs and confirm it matches, using the open verifier, with no account.

Workflow receiptsplan · tools · approval · execute · rollback
Merkle rootone top-level hash + inclusion proofs
Evidence bundleone artifact, independently verifiable

A bundle answers three questions at once, and a verifier can check each without trusting us:

01 / authentic

Each receipt is real

The signature and hash on every receipt still hold, so no individual step was altered after the fact.

02 / included

It belongs to this bundle

The inclusion proof recomputes to the same Merkle root, so this receipt is part of this workflow.

03 / complete

Nothing was added or dropped

The set of proofs reconciles to the root, so no step was slipped in or quietly removed from the sequence.

How it comes together

Receipts, root, bundle, verify.

The path from raw steps to a checkable artifact is short, and every stage is deterministic. Nothing here depends on trusting AskLedger's word: the same math runs in the open verifier.

Emit receipts

Each step of the workflow writes a signed receipt into the tenant hash chain.

Group the set

The receipts for one workflow are collected as the leaves of a Merkle tree.

Compute the root

Hashing up the tree yields one top-level hash and an inclusion proof per receipt.

Ship the bundle

Root, receipts and proofs travel together as a single portable artifact.

Verify anywhere

The open verifier recomputes the root and confirms order and completeness, no account.

Where it matters

One artifact for the moments that get questioned.

Bundles are for the times when a single receipt is not the unit anyone cares about: it is the whole run, the whole case, the whole incident. When someone asks "show me exactly what happened," you hand over one file instead of assembling a story.

Agent runs

A full multi-step run, from plan to tool calls to execution, bundled as one record you can replay against. Ties to agent accountability.

Regulated case files

Every decision, approval and override on a case, sealed under one root, so the file itself proves it was not edited later.

Incident evidence

What the system did during an outage or a bad actor event, captured in order, so the post-mortem rests on facts, not recollection.

Evidence packs for auditors

A scoped bundle for a control test or a customer review: one hash to check, and every receipt behind it independently verifiable.

Where this stands

The primitives exist. The bundling is being built with design partners.

We want to be plain about this. The foundations are real and shipping today: per-tenant hash chains and Merkle-tree batching live in the open SDK, and the verifier already recomputes roots without an account. Evidence bundles assemble those primitives into one workflow-level artifact, and we are building that assembly (the grouping rules, the bundle format, the hand-off UX) alongside design partners so it fits how audits and reviews actually run. If that is your problem, we want you in the room while we shape it.