Why orchestration breaks normal auditing
A single-agent run is a line: prompt in, tools called, answer out. A multi-agent orchestration is a tree that rewrites itself mid-run. The planner spawns three researchers; one researcher spawns a coder; the coder calls a shell tool seventeen times. By the end, dozens of agents touched the task and the only record is usually the planner's summary: done, here is the answer.
Three things go wrong. First, delegation is invisible: you see the final answer but not which sub-agent produced which part. Second, blame is unassignable: when the output is wrong, no record says which branch introduced the error. Third, cost is unattributable: the bill shows one run, not which branch burned the budget.
The receipt chain method
Give every call a receipt, and give every receipt a parent pointer. The method:
- Receipt per call. Every tool call by every agent in the tree mints a verifiable receipt at execution time: tool, caller, timestamp, inputs, outputs, SHA-256 commitment.
- Parent linkage. Each child receipt references the parent receipt that caused it. The planner's delegation receipt points to the researcher receipts; the researcher receipts point to the tool receipts.
- Tree verification. Walk the tree from the final answer down to the leaves, recomputing commitments at every node. A broken commitment marks exactly the branch that was tampered with. A missing child shows up as a gap.
The result is one evidence chain for the whole orchestration. The auditor does not read logs from twelve agents and stitch a story together. The chain is the story, and the math checks it.
What the chain answers
- Which agent did what. Every output traces to the exact sub-agent and tool call that produced it.
- Where it went wrong. A bad output walks back up its receipt chain to the exact call that introduced it.
- What it cost. Every receipt can carry its cost, so the bill decomposes by branch, agent, and call.
- Whether anything is missing. Sequence gaps at any level flag deleted or dropped sub-runs.
Swarm-scale version
Orchestration trees get wide fast. The swarm receipts guide covers evidence chains when dozens of agents run in parallel. Read the swarm guide.
How AER-1 supports chaining
AER-1 is a verifiable execution receipt format, published as the IETF Internet-Draft draft-zambo-aer1. Each receipt records the tool, the calling agent, the execution timestamp, canonical inputs and outputs, and a SHA-256 commitment, with fields for linking a child receipt to its parent. Implementations mint the chain automatically as the orchestration runs; the auditor verifies it with the public conformance vectors.
Chaining across vendors is proven: the AER-1 x Tanilo interop ran a full receipt chain with real values, verified end to end and double-verified by both sides.
Try a chained receipt
The live demo mints real AER-1 receipts, free, no signup. Run a call, then imagine every call in your orchestration carrying the same proof, linked to its parent.