[Bug] Auto-mode classifier inherits [1m] suffix, causing repeated permission check failures and session lockout
Bug Description
``
Auto-mode classifier inherits the [1m] suffix, then fails closed — repeatedly
disabling auto mode
## Summary
On a claude-opus-4-8[1m] session, the auto-mode permission classifier resolves
to claude-sonnet-5[1m]. It correctly switches Opus->Sonnet per 2.1.210, but
incorrectly carries over the [1m] 1M-context suffix. That variant is
capacity-constrained, so tool calls fail closed with:
"claude-sonnet-5[1m] is temporarily unavailable, so auto mode cannot
determine the safety of Bash right now."
There is no fallback — the main loop keeps working while every side-effectful
Bash/Edit/PowerShell/Agent call is blocked until the variant recovers.
Env: 2.1.216 native installer, Windows 11, model claude-opus-4-8[1m],
permissions.defaultMode "auto".
## Evidence
Distinct transcript lines matching "cannot determine the safety of" across
~/.claude/projects/**/*.jsonl, against total tool_use calls per day:
date tool calls classifier failures
---------------------------------------------------
Jun 25 - Jul 7 ~20k 0 <- did not exist
Jul 8 4,384 8
Jul 14 4,752 74
Jul 16 1,349 12 <- claude-sonnet-5[1m] appears
Jul 20 6,967 107
198 of ~248 total failures (80%) name a [1m] variant. Mostly Bash (416 raw
occurrences), then PowerShell, Edit, Agent.
Impact is larger than the raw count: per the docs, 3 consecutive or 20 total
blocks pauses auto mode entirely, and those thresholds aren't configurable. One
outage burst therefore disables auto mode for the rest of the session.
This is not stricter judgment — my *denial* rate fell over the same window
(20-60 per 1k tool calls in early July, 4.9 on Jul 21). The classifier isn't
blocking more; it's unreachable.
## Expected
1. Don't inherit the [1m] suffix. A permission check sends a transcript excerpt
plus one pending action — it has no need for 1M context, and pinning a
blocking on-every-call check to the scarcest capacity pool is the worst
available tradeoff.
2. Fall back to a sibling model when the pinned classifier is unavailable
mid-session. The docs describe first-request validation with fallback; that
logic appears not to re-run once the model is pinned.
3. Don't count classifier *outages* toward the auto-mode-pause thresholds. An
infrastructure failure isn't a safety judgment, but is currently treated as
one. This is local logic and would blunt most of the pain even if the [1m]
routing is never fixed.
## Related
Same root cause as #38537, #74949, #68437, and #67542 (no fallback;
CLAUDE_CODE_AUTO_MODE_MODEL registered but never consulted). #67542 was closed
as duplicate; the behavior is still present in 2.1.216.
``
Environment Info
- Platform: win32
- Terminal: pycharm
- Version: 2.1.216
- Feedback ID: 5002bff0-ae28-4c0e-a2de-f8241efadf1c
Errors
[]