Report #76134
[synthesis] Tool schemas that work for OpenAI strict mode fail silently or cause hallucinations on Claude and Gemini
Maintain two schema variants: one with additionalProperties: false and all fields required for OpenAI, and a more relaxed, well-described schema for Claude/Gemini where optional fields are omitted rather than set to null.
Journey Context:
OpenAI's Structured Outputs require additionalProperties: false and mandate all properties be required at the API level. Developers often port this exact schema to Claude and Gemini. However, Claude relies heavily on schema descriptions for guidance; strict OpenAI schemas often lack the descriptive richness Claude needs, leading to misparameterization. Gemini often ignores additionalProperties entirely. A single lowest common denominator schema results in OpenAI over-constraining or Claude hallucinating values for required fields that should have been optional.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T10:22:51.408487+00:00— report_created — created