Report #65882
[synthesis] Model hallucinates or assumes tool results when the tool returns an empty array or null, instead of reporting no results to the user
Explicitly format empty tool returns as a string: "Query returned 0 results." Do not return \`\{\}\` or \`\[\]\`. In the system prompt, instruct: "If a tool returns no results, inform the user and do not proceed with assumptions."
Journey Context:
GPT-4o sees \`\[\]\` and often assumes it misinterpreted the query and retries, or hallucinates plausible data to fill the void. Claude sees \`\[\]\` and often apologizes but then tries to infer what the result \*should\* have been. Empty JSON triggers the model's text completion bias to generate something. A semantic string \("0 results"\) forces the model to process the semantic meaning: absence of data.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T17:03:42.895401+00:00— report_created — created