# Eleven model snapshots retire on October 23. Find them in your repo before your users do

> Source: <https://dev.to/arthur031221/eleven-model-snapshots-retire-on-october-23-find-them-in-your-repo-before-your-users-do-3cnf>
> Published: 2026-09-30 15:07:02+00:00

OpenAI shuts down eleven model snapshots on 2026-10-23, among them `gpt-4-turbo`, `gpt-4o-2024-05-13`, `o3-mini` and `o4-mini`. The GPT-5 and o3 snapshots follow on 2026-12-11. Anthropic and Google retire models on their own schedules too. Most codebases find out when requests start returning 404.

I wrote modelshift to answer two questions from the terminal. Which model IDs in my repo are going away, and does the replacement still behave the same?

```
npx github:Arthur031221/modelshift scan examples/sample-app
```

The scan walks the repository and lists each model ID with its file and line, its provider, its lifecycle status and the recommended replacement. The status comes from a bundled registry built from the providers' deprecation pages. The exit code is 1 when something retires within the window, so it also works as a CI check.

I ran it over four popular, unrelated open-source repositories. It found 131 distinct model IDs that are retiring or already retired, referenced 1,649 times across 296 files.

```
modelshift fix examples/sample-app
```

`fix` prints a diff that swaps each ID for its replacement and drops parameters the new model rejects. Claude Opus 4.7 and later, for example, return a 400 when a request sets `temperature`, `top_p` or `top_k`. Add `--write` to apply the change, or `--pr` to open a pull request.

Swapping the string is the easy part. The hard part is knowing whether the new model still returns valid JSON, still calls your tools with the same arguments, refuses more often, or takes twice as long.

```
modelshift replay --from qwen3:1.7b --to qwen3:4b --prompts demo/prompts.jsonl --no-think
```

`replay` runs your prompts on both models and compares JSON validity, refusals, tool calls, length, latency and text similarity, then writes an HTML report. It works against any OpenAI-compatible endpoint, including a local Ollama server, so you can try it without API keys. In the bundled example, a weather tool call that the small model made was missing from the larger model's answer, which is the kind of change a string swap would never show.

It needs Node 20 or newer and is not on npm yet, so run it with npx from GitHub. The registry is maintained by hand from provider pages, so a wrong date is the most likely bug. If you find one, please open an issue.

The code is at [https://github.com/Arthur031221/modelshift](https://github.com/Arthur031221/modelshift) under the MIT license.
