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
[Windows][26.901.31953] All Projects disappeared after update, threads moved to Recents — incomplete project assignment migration #42867
What version of the Codex App are you using (From “About Codex” dialog)?
26.901.31953
What subscription do you have?
Pro - 100$
What platform is your computer?
Microsoft Windows NT 10.0.26200.0 x64
What issue are you seeing?
Codex version
Codex Desktop for Windows
Powered by Codex & OWL
Version 26.901.31953
Released September 4, 2026
Issue
Immediately after the latest Codex Desktop update, all of my existing Projects disappeared from the left sidebar.
The Projects section now shows:
"No projects"
However, none of the conversations appear to be lost. Existing chats are still visible under Recents, open normally, and retain their original working directories/context.
I had 6 local Projects before the update.
Local diagnostic findings
I performed a read-only inspection of the local Codex state.
SQLite (state_5.sqlite) still contains:
6 project definitions
all 1,115 thread rows
original cwd values for all threads
valid project roots
valid legacy project ID -> SQLite project UUID mappings
However:
all 1,115 threads currently have project_id = NULL
local-projects in .codex-global-state.json is empty
Confirmed the same Windows project/thread assignment migration regression on version 26.901.31953. I added my additional diagnostic findings to #42739.
After that, the original Projects sidebar returned.
One extra warning: a cwd-based sidebar recovery helper inferred 109 "projects" from thread working directories even though SQLite contained only 28 real projects. Many were ordinary one-off working directories / new-chat folders. So cwd inference should be a last-resort fallback. A safer recovery priority seems to be:
historical .codex-global-state.json.tmp-* / .bak snapshot with matching legacy project IDs
project_idempotency_keys + projects/project_roots
cwd-based inference only as a final fallback
This incident strongly matches the incomplete migration signature already reported here: projectsMigrated=true while threadAssignmentsMigrated=false.
Activity
github-actions commentedon Sep 4, 2026
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
Takanashi-Rikka1 commentedon Sep 4, 2026
Closing as duplicate of #42739.
Confirmed the same Windows project/thread assignment migration regression on version 26.901.31953. I added my additional diagnostic findings to #42739.
Pancat009 commentedon Sep 24, 2026
I reproduced this on Windows and was able to recover the original Projects sidebar without recreating projects manually.
Environment:
Important finding: project_idempotency_keys still contained the legacy project ID -> app-server project ID mapping for the original projects.
I also found an older temporary global-state snapshot:
.codex-global-state.json.tmp-1789809340415-...
That snapshot still contained:
The current global state had lost the original registry.
Recovery that worked:
After that, the original Projects sidebar returned.
One extra warning: a cwd-based sidebar recovery helper inferred 109 "projects" from thread working directories even though SQLite contained only 28 real projects. Many were ordinary one-off working directories / new-chat folders. So cwd inference should be a last-resort fallback. A safer recovery priority seems to be:
This incident strongly matches the incomplete migration signature already reported here: projectsMigrated=true while threadAssignmentsMigrated=false.
Ignignokt commentedon Sep 30, 2026
Additional Windows reproduction with a surviving app-server project but an empty desktop project registry.
User-visible symptom
Codex Desktop shows No projects. Existing chats still exist and some UI surfaces still show the prior project association.
Read-only forensic findings
.codex-global-state.json:local-projectsexists but is emptythread-project-assignmentsmissingproject-ordermissingelectron-saved-workspace-rootsmissingapp-server-project-id-by-legacy-project-id-by-hostmissingprojectsMigrated: truethreadAssignmentsMigrated: falsependingThreadAssignmentIdsprojectless-thread-ids..codex-global-state.json.bakis already post-failure and has the same empty project/assignment state as the live file.state_5.sqlitepassesPRAGMA quick_check: okprojects: 1project_roots: 1project_idempotency_keys: 1threads: 2566Simulation-EngineC:\Code\Simulation-Engineproject_id = NULL.Documents\Codex\2026-09-28\..., so CWD alone is not safe evidence for reassignment.sidebar-project-thread-orderscontains no reference to the surviving project UUID, project name, or the 3 pending IDs.Interpretation
This appears to be the same split-state failure described in this issue:
state_5.sqliteRecovery concern
Please provide a supported reconciliation/reindex path that:
projects/project_rootsinto the desktop UI without creating a duplicate projectcwdalonethreadAssignmentsMigrated=falsestateNo local state was modified during diagnosis.