Codex macOS app loses per-thread model identity after restart and shows misleading compaction warning when switching back
Summary
The Codex macOS app appears to lose the original per-thread model identity after restart.
After relaunching the app, existing chat threads no longer correctly reflect the model that was originally used for each conversation. Instead, previously different threads appear to be shown under the same model.
Because of that, when switching a thread back to the model it originally used, the app shows a warning that switching models may cause compaction. In this scenario, that warning appears to be misleading: no actual compaction seems to occur, and the warning does not match the real state of the conversation.
Steps to reproduce
- Create or use multiple chat threads with different models.
- Quit the Codex macOS app completely.
- Relaunch the app.
- Open existing chat history.
- Observe that the app no longer correctly preserves/displays the original model used by each thread, and multiple threads appear to show the same model.
- In one of those threads, switch the model back to the model that thread originally used.
- Observe that the app warns that switching models may cause compaction.
Actual behavior
- After app restart, historical chat threads do not correctly reflect their original model.
- Different threads appear to be normalized to the same displayed model.
- Switching back to the original model triggers a compaction warning.
- In this case, the warning appears to be a false positive, because no visible compaction actually happens.
Expected behavior
- Each chat thread should preserve and display its original model correctly across app restarts.
- Switching a thread back to the model it originally used should not be treated as a meaningful cross-model switch.
- A compaction warning should only appear when compaction is actually expected or required.
Why this matters
This makes the model metadata shown in chat history hard to trust, and it also makes the compaction warning feel unreliable.
From a user perspective, there may be two related issues here:
- Per-thread model identity is not being persisted or restored correctly after restart.
- The compaction warning is being triggered from incorrect model-state detection rather than the actual conversation state.
Environment
- Codex version: 26.305.950 (863)
- macOS version: 26.3
Additional notes
I have not observed actual compaction in the specific case where the warning is shown. The main visible issue is that the warning appears to be triggered because the app no longer recognizes the thread's original model correctly after restart.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗