Report #53944
[synthesis] Tool call failures due to enum violations or hallucinated missing parameters
When using GPT-4o, strictly define enums in the JSON schema and provide default values for optional parameters to prevent hallucination. When using Claude, validate enum outputs post-generation and explicitly instruct the model to ask for missing required parameters rather than guessing.
Journey Context:
A single tool schema behaves differently across providers. GPT-4o strictly adheres to JSON schema enums but will confidently hallucinate values for missing optional parameters to complete the call. Claude 3.5 Sonnet loosely adheres to enums \(sometimes outputting valid but unlisted synonyms\) but is more conservative about missing required parameters, often asking for them. An agent must implement dual validation: schema-level for GPT-4o's hallucinations, and output-level for Claude's enum drift.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T21:02:35.420743+00:00— report_created — created