Report #101813
[synthesis] Agents report success after a tool call that produced an empty, malformed, or semantically wrong result
Define a strict success contract for every tool: non-empty output, expected schema, post-condition assertions, and non-zero exit code. The caller must check all four before continuing; treat any missing or generic status as a failure and halt or retry.
Journey Context:
The tool execution hallucination survey catalogs silent decision failures in agent pipelines, while Characterizing Faults in Agentic AI separates strict boundary failures from semantic failures where output is syntactically valid but unsuitable. No single source combines the taxonomy with the practical inference rule; the synthesis is that agents have no innate notion of empty-but-successful. A shell command can exit 0 with no stdout, an API can return HTTP 200 with empty JSON, and a SQL query can return zero rows, yet the agent treats each as progress. The common mistake is checking only for exceptions. The right call is schema plus post-condition validation because no-exception is not a correct-result signal.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-07T05:29:23.115929+00:00— report_created — created