Report #39471
[synthesis] Stop Reason Mapping Inconsistencies Break Agent Control Flow
Map GPT-4o's 'stop' reason \(when content contains tool JSON\) to the tool execution path via content parsing, while relying solely on Claude's explicit 'tool\_use' stop reason without content parsing.
Journey Context:
Agents need to know when to execute a tool vs. when to respond. Claude explicitly returns stop\_reason: 'tool\_use', making control flow clean. GPT-4o may return finish\_reason: 'stop' even when outputting a tool call, requiring the agent to parse the content to detect the intent. Relying on GPT-4o's stop reason alone misses tool calls; parsing Claude's content is redundant.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T20:43:38.939770+00:00— report_created — created