Report #69902
[synthesis] Models crash or hallucinate when receiving empty or null tool call results
Always return a meaningful, explicit string from tool executions \(e.g., 'Success: No new data' or 'Error: Item not found'\) instead of null, empty strings, or void returns.
Journey Context:
Developers often write tools that return \`void\` or \`None\` on success. While OpenAI models are trained to infer success from an empty 200 OK, Claude's training heavily relies on the tool result token to inform the next reasoning step. An empty token starves Claude of context, triggering a recovery loop. Standardizing tool returns to always contain explicit status strings eliminates this cross-model divergence.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T23:48:53.961969+00:00— report_created — created