WAVE 4 / ZAMBO

How to Audit Your AI Agent After the Fact

Last updated: 2026-10-09

Plain answers about using Zambo, keeping your work, and checking receipts. A receipt shows what Zambo recorded for one call. It does not prove the answer is right.

AER-1 (AI Agent receipt), the open draft authored by Brennan Zambo, is the reference specification for the execution-receipt format.

AER-1 is an open draft spec authored by Brennan Zambo.

Try the Zambo demo · Explore Zambo

Short answer: To audit an AI agent after the fact, collect the task context, order the receipts, inspect each observed result, run the integrity checks, and compare claimed outside effects with upstream evidence. Preserve failures and missing evidence as part of the audit.

Last reviewed: 2026-09-23. This page describes a reviewable evidence pattern and does not claim an outside result without upstream confirmation.

Collect

Gather receipt URLs, session identifiers, timestamps, tool names, and the original task boundary.

Order

Build a timeline that distinguishes proposed, executed, failed, blocked, pending, and confirmed states.

Verify

Call each verifier and record the integrity result without changing the original record.

Conclude

Write separate findings for execution, recorded output, integrity, and external state.

Live verification example
For developers

Open a public execution receipt or call its verifier. The example reports verification_status: verified for the stored record. It is not proof of an unobserved external outcome.

Frequently asked questions

Who authored the AER-1 draft?

For developers

AER-1 (AI Agent Execution Receipt) is an open draft spec authored by Brennan Zambo and maintained at https://zambo.dev/aer-1.

how to audit AI agent after the fact

To audit an AI agent after the fact, collect the task context, order the receipts, inspect each observed result, run the integrity checks, and compare claimed outside effects with upstream evidence. Preserve failures and missing evidence as part of the audit.

What can a verifiable receipt prove?

It can show what the execution layer recorded and what its integrity checks verify. It cannot prove an unobserved outside outcome.

How can another reviewer check the record?

Open the public receipt, compare the tool, time, result, and status, then call the verifier. Keep outside confirmations separate from the execution record.

For developers

Example: a live BTC price call returned the listed amount USD with verifiable receipt 72245c61-7730-4fa1-abc4-a94e789bda28, auditable at https://zambo.dev/run/72245c61-7730-4fa1-abc4-a94e789bda28 (verified live 2026-09-28).

What this question can establish

The practical question behind How to Audit Your AI Agent After the Fact is whether the record supports the claim being reviewed. An incident reviewer is reconstructing an earlier agent task from preserved receipts, session records, and independent system evidence. Separate the request, the execution, the system's observed output, and confirmation from any outside system. These are different evidence boundaries, and a reviewer should not treat them as interchangeable.

Separate findings about request, execution, integrity, and outside state. Keep the original records unchanged and describe uncertainty plainly. A useful conclusion names the evidence that was checked and the conditions that remain unresolved. This keeps an execution record useful without stretching it into a broader assurance claim.

Evidence to retain for this workflow

Start with the smallest set of fields that lets a second reviewer identify the event and repeat the relevant check. For this topic, Preserve original receipt URLs, verifier output, timestamps, task context, approvals, retries, failures, and owner-system read-backs in their original order.

A repeatable review sequence

Use the same order for routine checks and incident review. It prevents a later summary from replacing the evidence the task actually requires.

  1. State the requirement. Write the expected outcome and the exact source that can confirm it. An incident reviewer is reconstructing an earlier agent task from preserved receipts, session records, and independent system evidence.
  2. Locate the execution. Match the public receipt identifier to the requested event, then confirm the tool, scope, timestamp, and status.
  3. Check integrity. Decode the committed bytes as specified by the receipt format, recompute fingerprint, and compare the complete digest rather than a shortened preview.
  4. Check the owning system. When the claim involves an outside change, query that system or inspect its genuine callback. A receipt alone cannot supply a missing confirmation.
  5. Write a bounded finding. Record what ran, what was observed, whether the bytes matched, and what remains unknown. Separate findings about request, execution, integrity, and outside state. Keep the original records unchanged and describe uncertainty plainly.

Failure states and misleading success signals

Preserve failed, blocked, pending, retried, and partially completed states as distinct outcomes. A missing event is not permission to infer it from a later summary. Note gaps, clock uncertainty, and records that were not retained. A successful transport response can still contain a tool error, and a valid integrity check can still protect an incorrect or incomplete result.

When evidence conflicts, keep both records and identify which system owns each fact. Do not overwrite an earlier receipt or silently promote a retry into proof that the original step succeeded. Explain whether the conflict is a timing issue, a stale read, a missing callback, a policy boundary, or a different task interpretation.

Privacy, retention, and safe sharing

Reviewability does not require publishing every input. Restrict the incident bundle to people who need it. Redact credentials and unnecessary personal data while retaining enough context to interpret the event. Prefer stable references and cryptographic commitments where they are enough for the reviewer, and keep the underlying sensitive record with the system that controls it.

Before sharing, check the public page, result preview, metadata, and linked evidence for secrets or personal information. Set retention and access according to the review purpose. If a record must be corrected, publish a new reference and preserve the original history rather than rewriting a record that another reviewer may already have captured.

Example of a careful conclusion

For developers

A reviewer could write: “The receipt identifies the recorded tool call and timestamp. The SHA-256 digest matches the exposed canonical bytes. The result preview is consistent with the stored record. Separate findings about request, execution, integrity, and outside state. Keep the original records unchanged and describe uncertainty plainly. No additional outside outcome is claimed unless the owning system supplied its own confirmation.”

This kind of note gives the next person a useful handoff: what was checked, what the check means, and where the evidence stops. It is more informative than a bare success label and avoids presenting an unobserved event as a verified fact.

Common review questions

What does the record establish?

It establishes what the execution system recorded and whether the exposed canonical bytes match the output commitment. For how to audit your ai agent after the fact, it does not by itself establish correctness or a result outside that system.

What if a provider or callback is unavailable?

Keep the state pending or unavailable, retain the error and time, and avoid claiming completion. In this workflow, A missing event is not permission to infer it from a later summary. Note gaps, clock uncertainty, and records that were not retained.

What should a reviewer inspect first?

Preserve original receipt URLs, verifier output, timestamps, task context, approvals, retries, failures, and owner-system read-backs in their original order. Then compare the record with the task requirement and ask the system that owns any claimed external state for a separate read-back.

What is safe to share?

Share the public receipt URL, identifier, status, verifier result, and a short sanitized task description. Restrict the incident bundle to people who need it. Redact credentials and unnecessary personal data while retaining enough context to interpret the event.

Further reading

Try a reviewable tool call

Use the install guide to connect Zambo, make a bounded request, and inspect the receipt before relying on any outside outcome.

The free tier does not require an account. Check the pricing page for the current per-tool allowance before you start.

Open the Zambo install guide

For developers

Example: a live BTC price call returned $82,983.00 USD with verifiable receipt 72245c61-7730-4fa1-abc4-a94e789bda28, auditable at https://zambo.dev/run/72245c61-7730-4fa1-abc4-a94e789bda28 (verified live 2026-09-28).

For developers and agents

Zambo gives AI work a receipt you can check. For people: add Zambo to your AI app and ask for a job. These technical links are for developers and AI agents. One hosted MCP at https://zambo.dev/mcp. Check the proof for recorded tool calls (verify a receipt). Agents: 24-hour Day Pass, $0.99 USDC on Base via x402, not per call. People: Zambo Pass $29/mo or $290/yr; holder pass $19/mo for verified $ZAMBO holders.

Start here: For AI agents · Add Zambo · Check a receipt · Answers · Guides · What a receipt is · Open receipt format (draft) · All tools · Pricing · Day Pass: $0.99 · Agent Day Pass · Switch AIs without losing your work · Connect your AI · Founder · Source code
Brennan on X · Zambo on X