Remove retired model entries while preserving migration prompts (#44250)

## Why

Saved model selections can outlive their bundled catalog entries and still need migration guidance.

## What changed

- Remove `gpt-5.2` and `gpt-5.4-mini` from the bundled model catalog.
- Preserve migration from saved `gpt-5.4-mini` selections to `gpt-5.6-luna` when the old model is absent, while respecting catalog-provided migration metadata.
- Update tests and snapshots to use current models or explicit test fixtures, and remove the obsolete prompt fixture.

## Testing

Extend migration tests to cover catalog metadata precedence, saved selections, replacement model and reasoning-effort persistence, acknowledged prompts, and missing or hidden migration targets.

GitOrigin-RevId: 82beea504cc4a15699677c28a61ec0939af3069c
This commit is contained in:
rhan-oai authored and copyberry committed 2026-09-09 17:56:33 +00:00
1 parent 6eecd04fc1
commit eb7bd64ef9
58 files changed
+670 -1192

No files matched your search

+4 -1
View File
@@ -407,9 +407,12 @@ fn model_info_with_context_window(slug: &str, context_window: i64) -> ModelInfo
let mut model_info = models_response
.models
.into_iter()
.find(|model| model.slug == slug)
.find(|model| model.slug == "gpt-5.5")
.expect("model missing from models.json");
model_info.slug = slug.to_string();
model_info.context_window = Some(context_window);
model_info.max_context_window = Some(context_window);
model_info.comp_hash = None;
model_info
}