Max plan account shown 'usage credits required' billing gate; session then stuck replaying identical error across 7+ turns despite successful /model switches
Status Open
Maintainer reply None cached
Activity 1 comment · opened Jul 29, 2026
Summary
Once a session hit a model-routing failure, every subsequent turn returned an identical, frozen error block regardless of input — including after /model and /feedback reported successful actions. Compounding this: the error is a pay-per-credit "usage credits required" gate shown to a Claude Max plan subscriber, who should not be hitting a billing/credits gate for model access at all.
Reproduction (from session transcript)
- Default model: Opus 5 (1M context), confirmed via startup banner and
.claude/settings.json(Using Opus 5 (1M context) (from .claude/settings.json)). - First real prompt returns:
````
Switched to Sonnet 4.6 (1M context) due to high demand for Opus 5 (1M context)
API Error: Usage credits required for 1M context · run /usage-credits to turn them on, or /model to switch to standard context
- Typed
only use opus 5, then repeated the original prompt → identical error repeated verbatim. - Repeated again → identical error repeated a third time.
- Ran
/model, which printedSet model to Opus 5 (1M context) and saved as your default for new sessions— a reported success. Repeated the original prompt anyway → identical error still fired, still naming "Sonnet 4.6." - Ran
/feedback, which printedFeedback / bug report submitted— a reported success. Next prompt → identical error again. - Ran
/modelagain, switched toSonnet 5for the session — reported success. Next prompt → identical error again, still referencing "Sonnet 4.6."
Why this is bad
- Wrong for a Max plan account. Claude Max is a subscription plan, not pay-per-credit API billing. A Max subscriber should never see "Usage credits required for 1M context · run /usage-credits" — that message implies metered credit billing that shouldn't apply to this plan tier at all. Either the entitlement check is not correctly reading Max plan status, or the messaging is being shown to accounts it was never meant to target.
- Stuck/frozen response, not a live re-evaluation. Slash commands (
/model,/feedback) reported success but had no observable effect on the next turn's outcome — the same two-line block replayed verbatim across 7+ consecutive turns regardless of what was typed, strongly suggesting a cached error being replayed rather than a fresh check per turn. - No escape path. Every corrective action available in-session (explicit instruction,
/model,/feedback) was absorbed without changing behavior. - Nonexistent model referenced. The error names "Sonnet 4.6," which is not a selectable option anywhere in the
/modelpicker (only Opus 5, Sonnet 5, Haiku 4.5, Fable 5 are listed), so the user has no way to reach or avoid the model the error keeps blaming.
Expected behavior
- A Max plan account should never be shown a per-credit usage gate for model/context selection.
- A
/modelcommand that reports a successful switch should change which model serves the next request. - If a request is blocked by a gate, that gate should be re-evaluated per turn, not replayed as a frozen response after the underlying model selection has changed.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗