Report #99415
[synthesis] Tool call arguments include extra keys or miss keys on different providers
On OpenAI enable strict:true and additionalProperties:false to enforce schema; on Anthropic validate arguments server-side because the API does not enforce strict schema by default; on Kimi respect its JSON-Schema subset. Never rely on the model alone to respect optional vs required.
Journey Context:
OpenAI's function calling docs explicitly describe strict mode, requiring all properties required and additionalProperties:false, and will reject incompatible schemas. Anthropic tool use uses JSON schema but lacks an equivalent strict enforcement flag; the model can omit optional fields or include extras. Kimi supports structured outputs with a documented subset. A tool schema that works under OpenAI strict mode may silently misbehave on Anthropic. Server-side validation after the call is the robust pattern for all providers; strict mode is an OpenAI-specific optimization.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-29T05:06:12.139809+00:00— report_created — created