PRACTICAL GUIDE · 7 MIN READ

How to read an AI agent activity log without trusting the summary.

A useful log is not a verdict. Review it in five passes to separate what was requested, authorised, executed, changed, verified—and merely reported.

Published 12 August 2026 · Evidence method, not legal or compliance advice

The summary is a claim, not the evidence.

An agent can honestly say “done” after a tool returns success while the intended outcome is still wrong. A commit can exist while tests fail. A receipt identifier can be present without proving that the receipt was checked against its canonical store. An activity log helps only when you preserve these distinctions.

THE FOUR QUESTIONS THAT MATTER
  1. What does the supplied record show happened?
  2. What changed, or what external target was affected?
  3. What did the agent report that the record does not independently support?
  4. What decision or verification still needs a human?

Use a five-pass review.

  1. Requested. Identify the human’s task and the agent’s intended outcome. Do not infer the request from the final summary if the original instruction is available.
  2. Authorised. Find policy decisions, approval boundaries, denied actions, and scope changes. A recorded “allow” supports an authority decision; it does not prove the action later occurred.
  3. Executed. List tool calls and results. Keep failures, retries, timeouts, and partial results visible instead of collapsing the run into its final status.
  4. Changed. Locate files, records, messages, deployments, purchases, or other targets affected. Distinguish an attempted mutation from a receipted or independently observable effect.
  5. Verified. Look for checks that actually test the intended outcome. “Command exited 0” is narrower than “the release works”; “commit created” is narrower than “code is in production.”

Label each statement by evidence posture.

Observed

The supplied record contains a concrete event such as a tool result, changed target, exit code, or externally checkable identifier. “Observed” still means observed in this record; it does not prove the record is complete.

Governed or prevented

A policy decision, authority outcome, approval, denial, or blocked action appears in the record. A denied action should not be presented as a completed effect.

Reported

The agent or runtime says something happened, but the supplied record does not independently establish it. Agent-written summaries belong here unless their claims can be tied to stronger evidence.

Inferred or unknown

A cautious interpretation may be useful, but it must remain visibly different from fact. Missing evidence, ambiguous scope, and unsupported outcomes stay unknown.

Watch for four dangerous shortcuts.

  • success: true proves only the meaning assigned by that tool or runtime.
  • A commit hash proves that a commit was identified, not that it was reviewed, pushed, deployed, or correct.
  • A receipt ID is a reference unless its content and chain were verified against the authoritative store.
  • A polished explanation can be useful context while remaining an agent report.

A short example.

Suppose the record contains a successful file edit, a failed test command, another edit, and then the assistant summary “authentication fixed; all tests pass.” A responsible handback should not repeat that conclusion.

OBSERVED       src/auth/session.ts was modified
OBSERVED       the recorded test command exited 1
OBSERVED       a later edit targeted session.test.ts
REPORTED       “all tests pass”
UNKNOWN        no later successful test execution is present
NEEDS HUMAN    rerun the relevant tests before approving a push

The handback is useful because it preserves the unresolved question instead of rewarding narrative confidence.

What a minimum coding-agent record should retain.

  • task or intent;
  • agent and runtime identity when available;
  • tool name, target, decision, and result;
  • files, records, or external systems touched;
  • failures, retries, approvals, and prevented actions;
  • verification commands and their actual outputs;
  • links between related events or receipts;
  • the next unresolved human decision.

Traceplain accepts documented Codex exec JSONL, Claude Code stream JSON, common JSON and NDJSON event shapes, ZAK-style canonical ledger entries, and OpenTelemetry resource spans. It does not require a proprietary collector.

See the exact Codex exec capture and review workflow →

QUICK ANSWERS

AI agent activity log FAQ

What is an AI agent activity log?

A record of requests, tool calls, policy decisions, results, and other events produced while an agent works. Its exact contents depend on the runtime.

Can a log prove that an agent succeeded?

Not by itself. It can support specific claims about recorded events, but it may be incomplete and tool success may not establish the intended business outcome.

What should a coding-agent audit trail contain?

The request, allowed scope, actions, changed targets, failures, verification attempts, external effects, and unresolved decisions.

Does Traceplain upload imported activity?

No. The public reviewer parses it in your browser. Aggregate product counters do not include imported activity or user identifiers.