You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
TTSR on DeepSeek V4.1 Flash (thinking max): DSML leak misclassified as collapse-repetition, and the 'once' rule bricks the session #4621
On DeepSeek V4.1 Flash at thinking level max, the collapse-repetition stream rule fires repeatedly. Because the rule corrects only once per session (repeatMode: "once", nudgeKey: "collapse-repetition"), every turn after the first correction ends immediately with ttsr-loop-stopped and no recovery attempt, so the session becomes unusable. Reported in detail by a community member in code-yeongyu/oh-my-openagent#11610 (thank you, @asmond-lab).
Evidence (from the report)
omo 5.1.46 (engine senpi 2026.10.23-1), desktop on Windows; several routes to the same model family.
21 collapse-repetition triggers and 8 hard stops across 6 sessions, all at thinking max.
The model emits DeepSeek DSML tool-call envelopes (<|DSML| invoke …>) inside thinking. The runtime keeps them, and later output imitates them until it collapses.
The control-token-leak detector does not recognize DSML tokens, so the leak is classified as collapse-repetition instead of going to the resample path.
The same session-ending pattern also occurs in threads with no DSML at all.
The desktop launches the runtime with fixed arguments, so a user has no way to pass --ttsr-disabled.
DeepSeek DSML envelopes in thinking are stripped (or never persisted/echoed), test-proven with a recorded stream shape.
The control-token leak classifier recognizes DSML special tokens and routes them to resample, not collapse-repetition (test).
A "once" stream rule can never brick a session: after the one correction, later turns get bounded recovery (e.g. a fresh correction budget per user turn, or a resample) instead of an immediate ttsr-loop-stopped on every turn (test covering the repeated-trigger sequence).
Hosts that launch the runtime with fixed arguments (desktop) can still turn TTSR rules off or down through a setting.
Activity
chore(knip): drop stale token-grammar preExistingExports entries (#4621)