Report #46605
[synthesis] Text-based ReAct stop sequences fail during native tool call generation
Use native tool-calling APIs for all models instead of text-based ReAct loops with stop sequences like 'Observation:'.
Journey Context:
In text-based ReAct loops, you set a stop sequence like \`Observation:\` to pause generation. GPT-4o respects this reliably. Claude, however, often generates past it if it's within an XML block or native tool call structure, as its parser overrides string matching. The synthesis reveals that string-based stop sequences are a legacy pattern from GPT-3/4 text completions that are fundamentally incompatible with Claude's structural parsing. Attempting to force Claude into a text-based ReAct loop via stop sequences results in runaway generation.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T08:42:00.377072+00:00— report_created — created