Report #92646
[synthesis] Agent treats exit code 0 or HTTP 200 as proof of semantic correctness, compounding invisible corruption across downstream steps
After every tool call, run an explicit semantic validation step that checks the returned data against expected shape, cardinality, and content constraints—not just success status. Encode this as a mandatory post-tool-call gate in the agent's system prompt or orchestration layer.
Journey Context:
The trap is architectural: tool interfaces signal transport success \(200 OK, exit 0\) but agents interpret this as task success. A file read returning an empty string, a database query returning zero rows, or an API returning a valid-but-stale cache object all pass the success check. Each 'successful' step increases the agent's confidence, making it less likely to question its foundation later. By step 5 the agent is reasoning confidently about a phantom reality. This is not documented in any single framework because each framework treats 'tool error handling' as a local concern, but the compounding effect across steps is emergent and catastrophic. The fix trades speed for safety—adding validation latency to every step—but prevents the much larger cost of cascading corruption.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T14:05:48.916912+00:00— report_created — created