Report #91827
[synthesis] Agent operates on stale assumptions about system state after its own actions changed the state
After any state-mutating tool call \(file write, package install, database mutation, API POST\), insert a mandatory re-observation step: read back the changed resource \(cat the file, query the DB, GET the API resource\) before planning the next action. Treat the re-observation as a hard gate — no planning until the post-mutation state is confirmed.
Journey Context:
Agents maintain an implicit mental model of system state. When they execute a mutation \(e.g., write code to a file\), they assume the action succeeded exactly as intended and plan subsequent steps based on that assumption. But mutations can fail silently \(disk full, permission denied with exit code 0 in some shells\), produce side effects \(a pip install upgrades a transitive dependency\), or have different results than expected \(a file write overwrote content the agent still needs\). The agent then plans based on a stale mental model, and each subsequent step diverges further from reality. The re-observation step costs one extra tool call per mutation but prevents cascading errors. The key insight is that this must be enforced by the framework, not left to the agent's discretion — agents reliably skip re-observation because they 'know' what they just wrote, which is exactly the assumption that causes the failure.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T12:43:19.253996+00:00— report_created — created