Background
Spun off from #44 / PR #45. AEGIS ecosystem-pulse flagged `gpt-4o` proper as retired 2026-04-03 but did not flag `gpt-4o-mini`. The routine-fire note in #44 said mini's status should be confirmed separately.
As of Jan 2026 model-retirement pages, `gpt-4o-mini` had no announced retirement date — but OpenAI's deprecation page is the source of truth, not memory.
Why this matters (P1, not P0)
`gpt-4o-mini` is load-bearing in this repo:
- `src/factory.ts:1107` — default vision model when only OpenAI is configured
- `src/providers/openai.ts:153` — fallback when `request.model` is unset in `formatRequest`
- `src/providers/openai.ts:308` — fallback in response assembly
- `src/providers/openai.ts:486` — fallback in streaming path
If it's retired, every OpenAI-default consumer breaks silently. Unlike `gpt-4o` proper (which is only hit when explicitly resolved), mini is the hot path when callers don't specify a model.
Ask
- Verify status against https://platform.openai.com/docs/deprecations (or OpenAI's current deprecation policy page). Look for `gpt-4o-mini` specifically and any successor (e.g., `gpt-4.1-mini`, `gpt-5-nano`, etc.).
- If still active: close this issue with a note and today's verification date.
- If retired or scheduled to retire:
- File a migration PR replacing the 4 fallback sites with the successor
- Add `@deprecated` to `MODELS.GPT_4O_MINI` pointing at the successor constant
- Drop `gpt-4o-mini` from `OpenAIProvider.models[]` + capabilities (use the drift test in `src/tests/model-drift.test.ts` as a correctness check)
- Bump minor version, update CHANGELOG
Priority
P1 — default fallback path, not a fringe consumer. Not a 2-day deadline like Haiku 3 was, but shouldn't sit indefinitely.
Filed as follow-up per reviewer ask on PR #45.
Background
Spun off from #44 / PR #45. AEGIS ecosystem-pulse flagged `gpt-4o` proper as retired 2026-04-03 but did not flag `gpt-4o-mini`. The routine-fire note in #44 said mini's status should be confirmed separately.
As of Jan 2026 model-retirement pages, `gpt-4o-mini` had no announced retirement date — but OpenAI's deprecation page is the source of truth, not memory.
Why this matters (P1, not P0)
`gpt-4o-mini` is load-bearing in this repo:
If it's retired, every OpenAI-default consumer breaks silently. Unlike `gpt-4o` proper (which is only hit when explicitly resolved), mini is the hot path when callers don't specify a model.
Ask
Priority
P1 — default fallback path, not a fringe consumer. Not a 2-day deadline like Haiku 3 was, but shouldn't sit indefinitely.
Filed as follow-up per reviewer ask on PR #45.