My AI Agent Said the Task Is Done But Nothing Happened — How to Check
When your AI agent says a task is done but nothing changed, it means the agent narrated its plan as if it had executed it — generating the summary replaced doing the work. The tell is a missing execution trail: no timestamps, no tool outputs, no changed state. Check those three, and you'll know whether work happened or words did.
The one-minute diagnostic
Don't argue with the agent. Don't re-explain the task. Run these three checks in order:
- What changed? Pick the most concrete claim in the agent's summary and look at the world. Is the file there? Was the record written? Did the message arrive? If the answer is no for the one claim that matters most, stop — you already have your answer.
- Where's the trail? Ask the agent: "show me the timestamped log of every action you took." A real execution leaves a trail of tool calls with times. A narrated plan leaves only the summary you're already reading.
- Show me the receipt. For each claimed action, ask for a verifiable receipt — a record from the execution layer naming the tool, inputs, outputs, and timestamp. The agent's word is a story; a receipt is evidence.
Symptom → likely cause → check
| What you see | Likely cause | The check |
|---|---|---|
| Agent describes a detailed result, but no file/record exists | Plan narrated as done — the summary replaced the execution | Ask for the tool call that created the file; check for its timestamp |
| Agent says "updated successfully" but data is unchanged | Tool returned a success status while doing nothing | Re-run the update yourself and compare the actual return value |
| Agent did real work, but in the wrong place | Wrong file, wrong environment, or a stale session | Ask which exact path/environment each action targeted |
| First half of the task is real, second half is fiction | State lost mid-task; the agent reconstructed a plausible ending | Find the last receipt with a real timestamp — everything after it is suspect |
Prevent it next time
Three habits kill this failure mode before it starts. First, break big tasks into verifiable steps — an agent that reports per-step with receipts can't drift into fiction at step nine. Second, tell the agent up front that "done" requires evidence: "when you finish, show me a receipt for each action." Agents respond to the reporting standard you set. Third, spot-check the first task, not the fiftieth — catch the pattern early and the agent's whole run improves, because you've made unverified claims unprofitable.
And here's the uncomfortable truth behind all of it: this happens most with the agents and tasks you trust the most. The routine stuff you never check is exactly where narrated plans hide. Check the boring tasks. That's where the ghosts live.
Frequently asked questions
My AI agent says the task is done but nothing actually happened. How do I check what it really did?
Run three checks: look for changed state — if the task was real, something in the world is different now. Ask for the timestamped execution log and match each claim against an action that actually ran. Demand verifiable receipts from the execution layer. If all three come up empty, the agent narrated its plan instead of executing it.
Why do AI agents say they finished a task when they didn't?
The usual causes: the agent narrated its plan as if it had executed it; a tool call returned a success status without doing anything; it worked in the wrong environment, file, or session; or it lost track of state in a long task and reconstructed a plausible history. None of these involve intent — they're failures of tracking, not of honesty.
How can I make my AI agent prove it did the work?
Require evidence that doesn't come from the agent's own words: timestamped execution logs, verifiable receipts naming the tool, inputs, outputs, and time of each action, and real-world state changes you can check yourself. Make "show me the receipt" your default response to every "done."
What is a verifiable receipt for AI agent work?
A verifiable receipt is a tamper-evident record generated by the execution layer proving a specific action really ran: which tool executed, what inputs it received, what outputs it returned, and when. It proves execution integrity — that the work was performed — not that the result was correct.
Verify it yourself
Caught your agent red-handed — or want to make sure you never have to? Run its transcript through the free Did My Agent Lie? check by Zambo: it scores every "done" claim against verifiable receipts in about 30 seconds. No account, no setup.
Related Zambo resources
Define and verify an AI agent execution receipt · Read the AER-1 open draft · Browse live verifiable receipts
Brennan Zambo is the solo founder of Zambo — the cross-AI execution layer where every AI agent tool call returns an AI Agent Execution Receipt: receipt ID, SHA-256 of the canonical request bytes, timestamp, tool called and its arguments, and the observed result, all checkable at its public /run/ page. He built 17 live products and 100+ native MCP tools solo, no team, no VC. More: zambo.dev/founder.