diff --git a/codex-rs/tui/src/app/startup_prompts.rs b/codex-rs/tui/src/app/startup_prompts.rs index 55a377ec1104..9bddc5e9076c 100644 --- a/codex-rs/tui/src/app/startup_prompts.rs +++ b/codex-rs/tui/src/app/startup_prompts.rs @@ -215,17 +215,18 @@ pub(super) fn select_model_availability_nux( available_models: &[ModelPreset], nux_config: &ModelAvailabilityNuxConfig, ) -> Option { - available_models.iter().find_map(|preset| { - let ModelAvailabilityNux { message } = preset.availability_nux.as_ref()?; - let shown_count = nux_config - .shown_count - .get(&preset.model) - .copied() - .unwrap_or_default(); - (shown_count < MODEL_AVAILABILITY_NUX_MAX_SHOW_COUNT).then(|| StartupTooltipOverride { - model_slug: preset.model.clone(), - message: message.clone(), - }) + let preset = available_models + .iter() + .find(|preset| preset.availability_nux.is_some())?; + let ModelAvailabilityNux { message } = preset.availability_nux.as_ref()?; + let shown_count = nux_config + .shown_count + .get(&preset.model) + .copied() + .unwrap_or_default(); + (shown_count < MODEL_AVAILABILITY_NUX_MAX_SHOW_COUNT).then(|| StartupTooltipOverride { + model_slug: preset.model.clone(), + message: message.clone(), }) } diff --git a/codex-rs/tui/src/app/tests/model_catalog.rs b/codex-rs/tui/src/app/tests/model_catalog.rs index 78f5b6cd911f..bd431a5c3b37 100644 --- a/codex-rs/tui/src/app/tests/model_catalog.rs +++ b/codex-rs/tui/src/app/tests/model_catalog.rs @@ -96,7 +96,7 @@ fn select_model_availability_nux_picks_only_eligible_model() { } #[test] -fn select_model_availability_nux_skips_missing_and_exhausted_models() { +fn select_model_availability_nux_does_not_fall_back_to_older_announcement() { let mut presets = all_model_presets(); presets.iter_mut().for_each(|preset| { preset.availability_nux = None; @@ -121,13 +121,7 @@ fn select_model_availability_nux_skips_missing_and_exhausted_models() { &model_availability_nux_config(&[("gpt-5.4", MODEL_AVAILABILITY_NUX_MAX_SHOW_COUNT)]), ); - assert_eq!( - selected, - Some(StartupTooltipOverride { - model_slug: "gpt-5.4-mini".to_string(), - message: "gpt-5.4-mini is available".to_string(), - }) - ); + assert_eq!(selected, None); } #[test]