Summary
The Codex Desktop model picker shows GPT-5.6-Terra twice.
The current models_cache.json contains two different slugs with identical user-visible metadata:
[
{
"slug": "codex-auto-review",
"display_name": "GPT-5.6-Terra",
"visibility": "list",
"priority": 2
},
{
"slug": "gpt-5.6-terra",
"display_name": "GPT-5.6-Terra",
"visibility": "list",
"priority": 2
}
]
This makes an internal auto-review model appear as a second Terra entry.
Environment
- Platform: macOS
- Desktop cache
client_version: 0.146.0
- Local CLI used for comparison:
codex-cli 0.144.6
- Cache ETag:
W/"ad1812e980593919a4e61fc64e50566b"
Reproduction
- Start Codex Desktop with its refreshed model catalog.
- Open the model picker.
- Observe two adjacent
GPT-5.6-Terra entries.
- Inspect
~/.codex/models_cache.json and observe the two records above.
The cache is actively refreshed with client_version=0.146.0; deleting or manually editing it is not durable.
Comparison with the bundled catalog
codex debug models --bundled and the refreshed catalog from codex-cli 0.144.6 both return the expected identities:
gpt-5.6-terra GPT-5.6-Terra list priority=2
codex-auto-review Codex Auto Review hide priority=43
So this does not appear to originate from user config.toml or a duplicate custom provider. It appears specific to the catalog/cache path used by the Desktop 0.146.0 runtime or its server-side cohort.
Expected behavior
gpt-5.6-terra is the only visible GPT-5.6-Terra entry.
codex-auto-review remains callable for internal review flows but is returned as Codex Auto Review, visibility=hide, priority=43.
Suggested fix
Restore the codex-auto-review catalog metadata without changing its slug, routing, capabilities, or entitlement:
display_name = Codex Auto Review
visibility = hide
priority = 43
As a defensive UI measure, the picker could also report visible display-name collisions and show the slug when a collision occurs.
Related issue
#33146 also concerns model-cache/catalog divergence, but it reports missing GPT-5.6 models from a stale older cache. This report is different: the current 0.146.0 cache exposes codex-auto-review as a duplicate visible Terra entry.
Summary
The Codex Desktop model picker shows
GPT-5.6-Terratwice.The current
models_cache.jsoncontains two different slugs with identical user-visible metadata:[ { "slug": "codex-auto-review", "display_name": "GPT-5.6-Terra", "visibility": "list", "priority": 2 }, { "slug": "gpt-5.6-terra", "display_name": "GPT-5.6-Terra", "visibility": "list", "priority": 2 } ]This makes an internal auto-review model appear as a second Terra entry.
Environment
client_version:0.146.0codex-cli 0.144.6W/"ad1812e980593919a4e61fc64e50566b"Reproduction
GPT-5.6-Terraentries.~/.codex/models_cache.jsonand observe the two records above.The cache is actively refreshed with
client_version=0.146.0; deleting or manually editing it is not durable.Comparison with the bundled catalog
codex debug models --bundledand the refreshed catalog fromcodex-cli 0.144.6both return the expected identities:So this does not appear to originate from user
config.tomlor a duplicate custom provider. It appears specific to the catalog/cache path used by the Desktop0.146.0runtime or its server-side cohort.Expected behavior
gpt-5.6-terrais the only visibleGPT-5.6-Terraentry.codex-auto-reviewremains callable for internal review flows but is returned asCodex Auto Review,visibility=hide,priority=43.Suggested fix
Restore the
codex-auto-reviewcatalog metadata without changing its slug, routing, capabilities, or entitlement:As a defensive UI measure, the picker could also report visible display-name collisions and show the slug when a collision occurs.
Related issue
#33146 also concerns model-cache/catalog divergence, but it reports missing GPT-5.6 models from a stale older cache. This report is different: the current
0.146.0cache exposescodex-auto-reviewas a duplicate visible Terra entry.