Report #49383
[synthesis] Agent crashing or halting when a tool returns an empty string or empty JSON object
Never return a completely empty string from a tool execution. Return a meaningful status string like 'Success: No output' or 'Empty result set'. GPT-4o halts and asks for guidance on empty results; Claude assumes success and continues; Gemini often hallucinates a result.
Journey Context:
When a tool executes successfully but has no output \(e.g., a database delete, or an empty search result\), returning an empty string or empty JSON object creates divergent model behaviors. GPT-4o interprets the lack of information as an error or ambiguity and will often stop to ask the user what to do. Claude 3.5 Sonnet interprets empty as 'action completed successfully, nothing to report' and moves on. Gemini 1.5 Pro might get confused and hallucinate a plausible result to fill the void. To standardize behavior across models, the agent framework must intercept empty tool outputs and inject a semantic status message.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T13:22:23.712954+00:00— report_created — created