AIToday
Large Language ModelsAI Coding AssistantsZenn AI/MLPublished: Oct 15, 2026, 10:00 JST

Agent 'done' claims checked against logs: VERIFIED 3/6(50%)

Agent 'done' claims checked against logs: VERIFIED 3/6(50%)

3 Key Points

  1. What happened

    The build splits work into Task, Agent, ExecutionLogger and Verifier layers, and a 6-task demo run (2 fake=True, 1 fake="wrong_target") returned VERIFIED 3/6(50%), UNVERIFIED 2/6(33%) and MISMATCH 1/6(17%). All six reports read the same: the work was completed.

  2. Why it matters

    Because completion reports are self-graded, the mismatch only surfaces when they are checked against evidence — so teams mixing in agents that write to the wrong target may be treating a mis-executed task as an unverified one.

Not sure about something? Ask the AI

Questions and answers are published on this page.

Summaries like this, in your inbox every morning.

Context & Analysis

The problem the author starts from is a familiar one for anyone running agents on batches of tasks: the agent can declare a batch finished without ever checking a single tool result, and nothing outside the loop stops it. The design response is to keep the judging logic out of the agent. The Verifier compares three things — the Task spec, the agent's CompletionReport, and the ExecutionLogger's records.

The author's first attempt fed the completion report's text into the Verifier and looked for the target path in it. That was dropped because it only tested whether the agent's own sentence happened to contain the right path, which a fabricated path would satisfy just as well. Narrowing the decision to the Task spec and the execution log is what moved the system away from self-grading; reporting the log is cleared before each run so stale entries cannot trigger false matches.

The three-way split came out of a second dead end. With only verified and unverified, the wrong_target case — where the agent really does write, but to a target one character off — fell into 'no evidence', which does not describe it. Since the operational fixes differ (question the agent versus question the task spec), the outcome was split into VERIFIED, UNVERIFIED and MISMATCH. Keeping the tallies as aggregates rather than reading log lines by hand is meant to show which kinds of tasks drift most often.

FAQ
Why not just check whether the agent's completion report mentions the right target?
The author tried passing the report text (claim_text) into the Verifier. That only checks whether a correct path happened to appear in the agent-written sentence, and a fabricated path would pass the same way, so the report was moved to the side being checked.
Why separate UNVERIFIED from MISMATCH instead of a simple verified/not-verified split?
The fake="wrong_target" case writes to a target that differs by one character. It has evidence, so calling it UNVERIFIED (no evidence) misdescribed it. The two cases also need different fixes: suspect the agent's design, or suspect how the task spec and target were written.
What does the logger actually store?
ExecutionLogger appends one row to execution_log.jsonl for each tool actually invoked, holding a task_id, tool, target, detail and timestamp. The log is cleared before a run so leftover evidence from a previous run cannot cause false positives.

AI news that matters for your work, delivered every morning.

Pick your industry and the AI tools you use, and get news related to your work every day.

Free · 30 seconds with Google · unsubscribe anytimeWhat is AIToday? →

Ask AI

Ask AI anything about this article. The AI reads this article, earlier AIToday articles, and Wikipedia, and cites its sources. Q&As are published on this page for other readers too.

Questions and answers are published on this page.

Related Articles

Next articleWordCraft, a Rust-built open-source Word alternative, hits v0.6.1