research
docs://contents>
docs/evidence-ledgerdoc 17

Evidence Ledger

The Evidence Ledger is the plane's source of truth and audit surface. Every guarantee in this reference is recorded here at the moment it happens — the enforcement event, the verdict, the compensation, the human decision. The Control Plane renders views of the ledger; nothing feeds it, and nothing edits it after the fact.

The event record

Field Semantics
event_id Event identity
workflow_id Run identity — the join key for a full trail
step_id Step identity, where the event is step-scoped
event_type One of the closed vocabulary below
timestamp ISO-8601 UTC, at the moment of the event
data Typed payload per event type
checksum Chain link — verifiable against the preceding event

Field-level JSON schemas are specified in ledger and artifact formats.

Event taxonomy

The vocabulary is closed. An event type that does not exist in this table does not exist in the stream.

Event type Records
step_start Step dispatched, context assembled
step_complete Step committed, artifact sealed
policy_eval Cedar decision with the evaluated context
tool_call The call that actually executed, post-gates
hitl_escalation Human signal issued, tier and payload
hitl_park Workflow parked, diagnosis attached
verification Verdict, criteria, and critique
compensation Rollback action per step, reverse order
regeneration Child generation spawned
circuit_breaker Regeneration halted, signature attached
workflow_complete Terminal state of the run

Artifacts

Step outputs are sealed as artifacts: immutable, content-checksum-addressed records referenced by identifier — art_… — during hydration. Steps reference artifacts; they do not copy values, and nothing mutates a sealed artifact. The address is the checksum of the content, which makes reference and integrity the same property.

Append-only and chained

Property Semantics
Append-only Events are never edited or deleted; corrections are new events
Checksum chain Each event's checksum covers its content and the preceding link
Verifiable Any third party can re-walk the chain from the first event
Complete A step does not commit past an unrecordable event — the ledger fails closed

The auditor's walkthrough

One step, read in order from the stream:

Order Event The audit question it answers
1 step_start What dispatched this step, with what context?
2 policy_eval Was this call allowed — by which policy, against what parameters?
3 tool_call What actually executed, after the gates?
4 verification Did the output pass the declared criteria — with what critique if not?
5 step_complete What artifact sealed, referenced by which checksum?

Five events, five answers, no reconstruction required. That is the property the rest of the plane exists to produce: not logs assembled after the fact by convention, but a trail written by the only code path that could have done the work.