First-release documentation preview. Understand the release scope.
Browse documentation

Reference

Read an evidence receipt

Interpret outcome, applicability, execution origin and the limits of scripted graph evidence.

graph test --evidence records the actual test invocation. code evidence --receipt compares that observation with the current graph without executing its cases.

Scope

The receipt schema is graph-evidence/v1. It covers scripted, in-memory graph tests: declared inputs, supplied effect answers, messages, restarts and comparisons of result, state or effect trace.

It does not establish UI, live-service, native-driver or deployment behaviour. No runtime permission is granted by producing or reading a receipt.

Outcome

Value Meaning
pass The observed case met its expected result under the recorded inputs
fail The observed case did not meet its expectation
error Execution did not yield a usable case result

Outcome and applicability are separate. An applicable failure remains a failure.

Applicability

Value Meaning
applicable The relevant known inputs match the recorded non-error observation
stale A relevant known component differs; the response names changed components
unknown Required provenance or a key is unavailable, or execution errored
missing A current case has no recorded observation
historical A recorded case is absent from the current suite

A case can remain applicable after an unrelated edit even if the whole bundle changes. A selected-case receipt does not validate unselected or newly added cases.

Execution origin

fresh means the invocation executed the case. reused means it reused a historical feedback result.

A reused result must not be described as if it ran again against the current bundle. Where the cache did not retain its original bundle or environment, executed_bundle and executed_environment are null. That missing provenance leads to unknown applicability; fresh execution is the way to obtain current evidence.

The receipt header identifies the current comparison target. A case’s execution fields describe what actually ran, when known. These fields answer different questions.

Identity and integrity

The receipt binds captured source/archive identity, emitted bundle, runtime/toolchain information and the case inputs actually consumed. It does not reread later source bytes and pretend they were the executed input.

The integrity digest detects accidental alteration. It is a bounded local observation, not an authenticated attestation or proof against intentional forgery.

Receipt files use exclusive creation: choose a new path for each observation. Existing paths and malformed or corrupted receipts refuse. Keep failed observations as failed evidence rather than replacing them with an unrelated successful run.

Review use

For each important requirement, identify the relevant case, its outcome, its applicability and its execution origin. If behaviour depends on a native adapter or live service, add evidence appropriate to that boundary.

The practical question is specific: “What does this observation establish about this change?”

Search concepts, guides and reference.