You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Codex Desktop unarchive leaves stale archived rollout path #26174
Codex Desktop archive/unarchive appears to leave stale UI/app-server state after unarchiving a thread. The thread is correctly restored in the local thread database and active transcript path, but Desktop may still try to resume from the old ~/.codex/archived_sessions/... rollout path and shows "Failed to resume chat".
Observed behavior
After unarchiving a thread from Archived Threads, opening it can throw:
Failed to resume chat
failed to resolve rollout path `/Users/office/.codex/archived_sessions/rollout-2026-05-09T17-00-52-019e0f2f-d0e1-7931-a922-c1f25cdbeb98.jsonl`: No such file or directory (os error 2)
I saw the same stale-path shape on multiple recently unarchived threads. Example thread IDs:
For the example above, local state looked correct after unarchive:
threads.archived = 0
threads.archived_at = NULL
threads.rollout_path = /Users/office/.codex/sessions/2026/05/09/rollout-2026-05-09T17-00-52-019e0f2f-d0e1-7931-a922-c1f25cdbeb98.jsonl
active JSONL exists and parses cleanly
archived_sessions copy is gone, as expected after unarchive
Codex app read_thread can load the thread
Fresh app API reads can load the same thread, so this looks like Desktop is using stale cached archived metadata/path for the already-open Archived Threads view or resume request.
Expected behavior
After unarchive, Desktop should resume the thread from the active ~/.codex/sessions/... rollout path, or refresh the thread metadata before attempting thread/resume.
Possibly relevant: rust-v0.140.0 includes #27276, which changes archive rollout lookup to try the exact rollout filename before falling back to broader file search when the state DB does not have a usable rollout path.
If this stale archived-path case reaches that fallback, current builds may recover faster or more reliably. It likely does not by itself fix Desktop UI/cache state continuing to send an old archived_sessions path, so a retest on 0.140+ would help separate stale-metadata behavior from rollout lookup cost.
Activity
github-actions commentedon Jun 3, 2026
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
0xdevalias commentedon Jun 17, 2026
Possibly relevant:
rust-v0.140.0includes #27276, which changes archive rollout lookup to try the exact rollout filename before falling back to broader file search when the state DB does not have a usable rollout path.If this stale archived-path case reaches that fallback, current builds may recover faster or more reliably. It likely does not by itself fix Desktop UI/cache state continuing to send an old
archived_sessionspath, so a retest on 0.140+ would help separate stale-metadata behavior from rollout lookup cost.