Walk through the playbook when a model vendor announces a deprecation deadline on your pinned model
Anthropic emails that claude-3-opus-20240229 will be sunset in 90 days. You have it pinned in production for one of your flagship features. Walk through the playbook.
Inventory call sites, shadow candidates, prompt-tune, canary roll, keep the old model warm as fallback until the actual sunset date, then postmortem.
Imagine your landlord says the building closes in 90 days. You do not just grab the first apartment listing. First you walk every room and write down what is here. Then you tour a few candidate places and live a weekend in each one (shadow mode). You pick the best fit and slowly move your stuff over (canary). You keep the old keys until the actual closing day in case something breaks. After you settle, you write down what you wish you had done differently so the next move is easier. Model deprecations work the same way: inventory, shadow, tune, canary, fallback, postmortem. Surprise sunsets only break teams that try to rush all of those steps at once.
Concept explanation~2 min read
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Concept explanation~2 min read
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Model deprecation is the most predictable surprise in production LLM ops. Vendors retire snapshots on a schedule, and every team running pinned model ids will receive that email eventually. The teams that handle it without a fire are not the ones with the best engineers; they are the ones with a documented playbook the second the email arrives.
This walkthrough sequences the six gates of that playbook against a concrete scenario: Anthropic announces a 90-day sunset on a Claude Opus snapshot you depend on for a flagship feature. The same shape applies to OpenAI deprecating dated gpt-4o snapshots, Google retiring Gemini 1.x, or Bedrock dropping a specific Llama checkpoint.
Gate 1, Inventory the call sites
The first hour is reconnaissance, not engineering. The model id leaks into more surfaces than the team expects.
Grep the monorepo for the literal string. Then query the LLM gateway (LiteLLM, Portkey, Vercel AI Gateway) logs for the past 30 days and aggregate by model field; any caller you missed in code shows up here. Walk the prompt registry: many registries store a default model per prompt, and that resolution happens at runtime so it does not appear in grep. Check the eval harness configuration; a deprecated model still serving golden-set runs is a silent half-migration. Finally, check internal tooling and docs: the snippet in the onboarding wiki tells the next engineer to use the old id.
The deliverable from this gate is a checklist of every reference, with an owner per surface. Migration cannot begin until that list is complete, because the rollback story depends on knowing where to point traffic back if the new model misbehaves.
Situations where this technique stops working.
2–4 min · Everything important, quickly.
Real products, models, and research that use this idea.
- Anthropic sunsetting older Claude 3 snapshots on a published schedule, pushing teams to migrate to Claude Opus 4.7 or Sonnet 4.5.
- OpenAI deprecating earlier-generation snapshots in favor of GPT-5.5, requiring downstream services to ramp through canary on dated ids.
What an interviewer would ask next. Try answering before peeking at the approach.
QWalk through how you would build the shadow-mode harness so it scores quality without doubling your inference bill forever.
Sample a fixed percentage of production traffic (1-5% is usually enough for statistical power within a week), tee the request to both old and new models, log paired outputs to Langfuse or Braintrust, score with LLM-as-judge in a nightly batch (not inline), and shut the shadow off the moment canary starts. The harness lives behind a feature flag so it can be re-enabled on the next deprecation without rebuilding.
Red flags & common mistakes
The phrases that signal junior thinking. Click to expand.
Red flags & common mistakes
The phrases that signal junior thinking. Click to expand.
Treating the swap as a single PR. The deprecation window exists precisely because prompt tuning, eval-CI sign-off, and canary observation each need real calendar time.
60 second bullets to scan on the way to the call.
Where the deprecated model id can hide (code, prompt registry, gateway fallback, eval harness)
Why shadow mode goes before canary and what signals to score
Primary sources. Browse if you want the original framing.
Same topic, related formats. Practice these next.