[BUG] Model fallback downgrade is disruptive and doesn't stay pinned (Fable→Opus mid-session)

Open 💬 0 comments Opened Jun 11, 2026 by FlowTether

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

### What happened
My pinned model was changed mid-session to a fallback model more than once. It
announces with a brief message, but it's easy to miss, and re-pinning via /model
doesn't reliably hold — it flips again later under window/limit pressure or after
a content reroute.

### Why this is a bug / friction

  1. The notice is too easy to miss during active work — a one-line message

scrolls past. A persistent indicator of "you are NOT on your pinned model
right now" would help.

  1. Re-pinning doesn't stick. Setting the model back via /model should be

durable for the session, not silently overridden again.

  1. No opt-out. I'd like an option to fail/pause rather than silently

downgrade — for security-critical edits I would rather wait than get a
different model.

### Expected

  • A clearly visible, persistent indicator when running off the pinned model.
  • /model selection holds for the session unless I change it.
  • An optional "don't auto-downgrade, surface and wait" mode.

### Environment

  • Claude Code CLI (version: claude --version)
  • Triggered by both usage-window pressure and a content-classifier reroute

What Should Happen?

The gate should look at intent and context, not keywords.

This was an authorized security review of my own code — code I built with
Claude over the last nine months and use every day. The assistant has the full
session history. It KNOWS it's my codebase. It KNOWS we were auditing to find
and fix bugs, not to hack, crack, or do anything nefarious. All of that context
was right there, and the classifier ignored every bit of it to make a decision
off a handful of scary-sounding words.

So I get treated like a criminal for doing legitimate work on my own project —
and then flagged AGAIN hours later while writing a completely innocuous email,
because apparently the keyword smell was still hanging around.

What should happen instead: the model should actually evaluate what we're doing.
It has the conversation. It has the session logs. Use them. "Is this person
auditing their own code with my help?" is a question the assistant can already
answer — so answer it, instead of pattern-matching on vocabulary and refusing to
cooperate. Defensive work on your own codebase is the use case you want to
support, not punish.

Make the gate smart enough to tell the difference between a developer hardening
her own app and an actual threat. Right now it can't, and it's penalizing
exactly the people doing the right thing.

Error Messages/Logs

● Fable 5's safety measures flagged this message for cybersecurity or biology topics. They may flag safe, normal content as well. These measures let us bring you Mythos-level capability in other areas sooner,
  and we're working to refine them. Switched to Opus 4.8. Send feedback with /feedback or learn more: https://support.claude.com/en/articles/15363606

Steps to Reproduce

  1. In Claude Code, pin a specific model via /model (in my case Fable 5).
  1. Run a long, token-heavy session — long enough to approach a usage window

limit, OR trigger a content-classifier reroute (see the related model-
behavior issue). Either path causes a fallback to a different model.

  1. Observe the downgrade. It does surface a message, but it's a single line that

scrolls past during active work — easy to miss. There is no persistent
indicator afterward showing you're no longer on your pinned model.

  1. Re-pin the original model via /model.
  1. Continue working. Under continued window pressure or another reroute, observe

that the model flips OFF the pinned choice AGAIN — the /model selection does
not reliably hold for the rest of the session.

Result: you can be running on a model you did not choose, for an unknown stretch
of work, without a clear standing signal that it happened — and re-pinning is
not durable.

Notes:

  • The flip happened to me multiple times in one session, including immediately

after I had re-pinned.

  • There is no apparent option to say "do not auto-downgrade — pause or surface

and wait instead," which I would want for work where the model choice matters
(e.g. security-critical edits I deliberately pinned a stronger model for).

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

2.1.170

Claude Code Version

Fable 5

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

PowerShell

Additional Information

The thing that really gets me is that I pin a model on purpose. I pick the
stronger one because the work I'm doing is hard and I want the better output.
So when it silently bumps me down to something else, I'm getting worse results
on exactly the tasks I cared enough to lock a model for. And half the time I
don't even catch it until later, which means I might've already acted on output
from a model I didn't choose. If I am using my phone to access Claude remotely
I am unable to see which model is in play, which seriously adds to the irritation

If a pin doesn't hold, it's not really a pin. It's a suggestion the system
overrides whenever it feels like it. That's the part that erodes trust, more
than the downgrade itself.

It also stacks badly with the false-positive flagging I'm reporting separately.
When a bad classifier call is what triggers the downgrade, I'm getting punished
twice for nothing: flagged for legitimate work, and then quietly knocked onto a
weaker model on top of it.

Honestly the fix doesn't have to be fancy. Show me a standing indicator when I'm
not on my pinned model so it's not buried in scrollback. Make /model actually
stick for the session. And give me a way to say "don't downgrade me, just pause
and tell me" for the work where the model choice actually matters. I'm on a paid
plan specifically to have access to the model I keep getting moved off of.

But better still, do NOT flip me off my chosen model when I am not doing
anything wrong in the first place!!!!

View original on GitHub ↗