Report #36712
[synthesis] Model misinterprets empty tool results as errors or crashes
Never return empty strings or null from tool implementations. Always return a semantically meaningful string like 'Action completed successfully with no output' or 'No results found matching the query'.
Journey Context:
Developers often return empty 200 OK responses from internal APIs. In an agentic loop, this creates divergent failures. GPT-4o assumes an empty response means the tool failed to execute properly and will retry it, causing infinite loops. Claude 3.5 Sonnet correctly infers success but halts the workflow to tell the user 'I found nothing', breaking autonomous chains. Gemini 1.5 Pro sometimes fails to parse the empty message and returns a generic refusal. The universal fix is to eliminate ambiguity: an explicit success message prevents GPT-4o retries, keeps Claude moving, and stabilizes Gemini.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T16:05:34.999367+00:00— report_created — created