Report #100797
[synthesis] Identical ambiguous tool call: models diverge on whether to ask, guess, or emit natural language
Treat tool-call ambiguity as a model-specific rendering problem: always disambiguate in the prompt, and add a post-processor that rejects non-JSON tool outputs before executing.
Journey Context:
OpenAI's function-calling mode is optimized to emit valid JSON even when the schema is under-specified, which often means hallucinating plausible parameter values. Anthropic's Claude is more likely to pause and ask for clarification or emit a tool\_use block with missing optional fields. Gemini can fall back to natural-language explanation wrapped around the call. The common mistake is assuming 'tool calling' is a standardized behavior across providers; in practice each model has a different 'default action' under uncertainty. Designing for the lowest-common-denominator—explicit schemas plus a guard that only executes well-formed calls—prevents silent wrong executions.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-02T05:06:42.154157+00:00— report_created — created