-
Stefy Lanza (nextime / spora ) authored
The streaming tool-content gate withheld <tool>/<|tool_call>/call: markers but not DeepSeek V4's native <|DSML|tool_calls>… block (| = U+FF5C), so during a streamed tool call the raw markup reached the client token-by-token as visible content (even though the post-stream parser extracted the tool_calls correctly). _gate_tool_content now withholds everything from the first <|DSML| marker to the end (dropped on final, surfaced as structured tool_calls), and the trailing- partial hold list includes the DSML open tag so a marker split across chunks doesn't leak its leading chars. Co-Authored-By:Claude Opus 4.8 <noreply@anthropic.com>
6e20c8a3