# Why does a trace look normal when a tool returns stale data?

Because every step in the trace did exactly what it was supposed to do. The tool call went out, came back with a success status and a well-formed payload, and the agent read that payload and used it the way it always does. Nothing in the trace's shape says the data was old rather than current: a stale price, a cached inventory count, or a cursor from an hour ago passes the same schema checks fresh data would.

The staleness lives in the tool or the system behind it, not in the call. A cache that didn't invalidate, an upstream job that stopped running, or a connection quietly serving a snapshot all produce a response that is syntactically perfect and factually wrong. Catching it means checking the data's age or comparing it against a source of truth, not reading the trace, because the trace has nothing to disagree with itself about.

---

Source: https://tessary.ai/answers/silent-failures/why-does-a-trace-look-normal-when-a-tool-returns-stale-data
More on Silent failures: https://tessary.ai/answers/silent-failures
From Tessary, agent reliability for AI agents in production: https://tessary.ai
