codex - 💡(How to fix) Fix Windows Desktop: sidebar/project list lost after update; search still finds threads; projectless-thread-ids workaround restores flat chats but project grouping remains broken [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openai/codex#19873Fetched 2026-04-28 06:35:45
View on GitHub
Comments
1
Participants
2
Timeline
6
Reactions
0
Author
Timeline (top)
labeled ×5commented ×1

Error Message

Repeated Git/workspace worker error:

Root Cause

From codex-cli 0.34.0 To codex-cli 0.125.0 Confirmed workspace_dependencies stable true in global CLI. Did not fix Desktop because Desktop uses packaged app\resources\codex.exe. Added [features] workspace_dependencies = false to config.toml.

Fix Action

Fix / Workaround

The normal sidebar only showed 3 recent/projectless chats. Projects were not restored in the sidebar. Search results still showed old chats with their project labels. A local workaround that rebuilt .codex-global-state.json -> projectless-thread-ids made all old chats visible again, but only as a flat Chats list, not grouped by project. Reducing projectless-thread-ids back to the actual 3 projectless chats made all old project chats disappear again. This strongly suggests the Desktop sidebar/project grouping is no longer being populated correctly from the existing local thread database and workspace hints.

C:\Users\user\OneDrive - redacted\Python\Web C:\Users\user\OneDrive - redacted\Python\Revision pliegos\V2 APP C:\Users\user\OneDrive - redacted\Python\App_Topologia C:\Users\user\OneDrive - redacted\Documentos\Playground C:\Users\user\OneDrive - redacted\Python\Contratos_Extreme\Extractor contratos C:\Users\user\OneDrive - redacted\Python\Bot C:\Users\user\Downloads\MCP C:\Users\user\Downloads\Mindfull Relevant .codex-global-state.json behavior Before workaround:

Did not stop Desktop UI from attempting to enable workspace_dependencies. Created empty literal ~ directories in likely resolution locations as a workaround for ENOENT: path does not exist: ~.

RAW_BUFFERClick to expand / collapse

What version of the Codex App are you using (From “About Codex” dialog)?

Observed after two Desktop updates: - Earlier affected version in logs: OpenAI.Codex_26.422.2437.0_x64__2p2nqsd0c76g0 - Current affected version: OpenAI.Codex_26.422.3464.0_x64__2p2nqsd0c76g0 - Packaged app-server process currently used by Desktop: C:\Program Files\WindowsApps\OpenAI.Codex_26.422.3464.0_x64__2p2nqsd0c76g0\app\resources\codex.exe app-server --analytics-default-enabled Global npm CLI was also checked: - Before: codex-cli 0.34.0 - Updated to: codex-cli 0.125.0 - But Desktop does not use the global npm CLI; it uses the packaged app\resources\codex.exe.

What subscription do you have?

ChatGPT Plus.

What platform is your computer?

Microsoft Windows NT 10.0.26200.0 x64

What issue are you seeing?

Summary After updating Codex Desktop on Thursday, April 23, 2026, the left sidebar stopped showing my historical chats/projects.

The data is not lost:

Desktop search still finds the old chats. state_5.sqlite still contains the threads. session_index.jsonl still exists. sessions still exists. thread/list returns successfully with errorCode=null. However:

The normal sidebar only showed 3 recent/projectless chats. Projects were not restored in the sidebar. Search results still showed old chats with their project labels. A local workaround that rebuilt .codex-global-state.json -> projectless-thread-ids made all old chats visible again, but only as a flat Chats list, not grouped by project. Reducing projectless-thread-ids back to the actual 3 projectless chats made all old project chats disappear again. This strongly suggests the Desktop sidebar/project grouping is no longer being populated correctly from the existing local thread database and workspace hints.

What issue are you seeing? After update, historical chats and projects disappeared from the left sidebar.

Expected:

Existing chats should remain visible in the sidebar. Existing projects should remain visible/grouped. Search and sidebar should agree on the same local thread set. Project grouping should work from existing threads.cwd, thread-workspace-root-hints, or equivalent project state. Actual:

Search finds old chats/projects. Sidebar initially showed only 3 chats: Fix chat list visibility Corrige estado local tras update Recupera proyectos y chats Those 3 IDs exactly matched .codex-global-state.json -> projectless-thread-ids. Rebuilding projectless-thread-ids with all 101 non-archived thread IDs made all chats visible, but flat under Chats. Rebuilding thread-workspace-root-hints and adding historical workspaces to config.toml did not make project sections reappear. Restoring projectless-thread-ids to only the 3 Documents\Codex generated/projectless threads hid the older project chats again. Local evidence Important local files:

C:\Users\user.codex\state_5.sqlite C:\Users\user.codex\session_index.jsonl C:\Users\user.codex\sessions C:\Users\user.codex.codex-global-state.json C:\Users\user.codex\config.toml C:\Users\user.codex\auth.json Backup created before repair attempts:

C:\Users\user\Documents\Codex\2026-04-23\backup-codex-20260423-224608 Current thread database findings:

threads_total: 107 non_archived_threads: 101 archived_threads: 6 No thread rows had:

cwd = '' cwd LIKE '%%' All checked cwd paths existed.

Many historical thread cwd values use Windows extended path form:

\?\C:\Users\user... Examples of redacted workspaces present in the DB:

C:\Users\user\OneDrive - redacted\Python\Web C:\Users\user\OneDrive - redacted\Python\Revision pliegos\V2 APP C:\Users\user\OneDrive - redacted\Python\App_Topologia C:\Users\user\OneDrive - redacted\Documentos\Playground C:\Users\user\OneDrive - redacted\Python\Contratos_Extreme\Extractor contratos C:\Users\user\OneDrive - redacted\Python\Bot C:\Users\user\Downloads\MCP C:\Users\user\Downloads\Mindfull Relevant .codex-global-state.json behavior Before workaround:

"projectless-thread-ids": [ "019dbd91-c5bb-7fc1-8f6d-37bac0fa85af", "019dbe43-32ce-73d1-9e04-593ae16dfd1e", "019dcfb9-c254-7200-a2e9-dd4024aac53b" ] Those were exactly the only 3 chats visible in the sidebar.

thread-workspace-root-hints existed only for those 3 initially.

After rebuilding projectless-thread-ids with all non-archived threads:

projectless-thread-ids: 101 thread-workspace-root-hints: 101 Result:

All old chats became visible again. But all were shown as a flat Chats list. Projects were still not separated/grouped in the sidebar. After setting projectless-thread-ids back to only the 3 Documents\Codex generated/projectless threads while keeping 101 workspace hints:

projectless-thread-ids: 3 thread-workspace-root-hints: 101 Result:

Old project chats disappeared from the sidebar again. Search still found them. This suggests sidebar visibility currently depends on projectless-thread-ids, while project grouping is not being rebuilt from the DB/hints/config.

Logs Desktop logs are under:

C:\Users\user\AppData\Local\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Local\Codex\Logs thread/list succeeds:

method=thread/list errorCode=null Repeated Git/workspace worker error:

warning [git-origin-and-roots] Failed to resolve origin for workspace errorMessage="ENOENT: path does not exist: ~" The literal ~ was not found as an active cwd in state_5.sqlite, session_index.jsonl, or active .codex-global-state.json values. Occurrences of /local: in .codex-global-state.json appeared inside prompt-history, not active state.

Feature mismatch also appears repeatedly:

unsupported feature enablement workspace_dependencies currently supported features are apps, memories, plugins, tool_search, tool_suggest, tool_call_mcp_elicitation The UI logs show:

Features enabled = "... workspace_dependencies ..." But the packaged app-server rejects that feature. Adding this to config.toml did not stop Desktop from trying to sync the feature:

[features] workspace_dependencies = false Other repeated warning:

No owner repo found for remote task taskId=task_e_68958a87f4b8832582974f4af01f7c47 taskId=task_e_6894fff9c5588325b30149ccb2d18b83 Repair attempts already tried Verified data exists:

state_5.sqlite session_index.jsonl sessions auth.json Backed up local Codex data.

Normalized old session rollout records:

Converted record_type:"state" to type:"state". Added type:"session_meta" to old headers missing type. Verified: 0 sessions with record_type. 0 sessions missing type. Cleared recreatable Desktop cache/state under package directories:

LocalCache\Roaming\Codex LocalCache\Local\Codex Settings TempState Checked .codex-global-state.json for active ~ or local:~.

None found outside prompt-history. Updated global npm CLI:

From codex-cli 0.34.0 To codex-cli 0.125.0 Confirmed workspace_dependencies stable true in global CLI. Did not fix Desktop because Desktop uses packaged app\resources\codex.exe. Added [features] workspace_dependencies = false to config.toml.

Did not stop Desktop UI from attempting to enable workspace_dependencies. Created empty literal ~ directories in likely resolution locations as a workaround for ENOENT: path does not exist: ~.

Did not fix sidebar/project grouping. Rebuilt .codex-global-state.json -> projectless-thread-ids with all non-archived thread IDs.

This restored chat visibility. But project grouping was lost: all chats appeared flat under Chats. Rebuilt thread-workspace-root-hints and added missing historical workspaces to config.toml.

Did not restore project grouping. Reduced projectless-thread-ids back to only actual projectless Documents\Codex threads.

Old project chats disappeared again. Search still found them.

What steps can reproduce the bug?

Minimal reproduction from current state Use Codex Desktop on Windows. Have historical threads in state_5.sqlite with project/workspace cwd values, many using \?\C:.... After Desktop update/restart, observe: Search finds old chats/projects. Sidebar only shows IDs present in .codex-global-state.json -> projectless-thread-ids. Project/grouped sidebar entries do not populate from existing threads.cwd or thread-workspace-root-hints. Manually add all non-archived thread IDs to projectless-thread-ids. Restart Desktop. Observe: All chats appear. They are not grouped by project. Remove old project chats from projectless-thread-ids while keeping thread-workspace-root-hints. Restart Desktop. Observe: Old project chats disappear again. Search still finds them.

What is the expected behavior?

Expected behavior Codex Desktop should rebuild or read project/sidebar grouping from durable local state:

state_5.sqlite -> threads session rollout metadata threads.cwd thread-workspace-root-hints trusted projects in config.toml The sidebar should not depend on projectless-thread-ids to show historical project chats.

Project grouping should work even when Windows paths have equivalent forms:

C:... \?\C:... OneDrive-backed paths

Additional information

Actual behavior thread/list succeeds. Search finds chats and project labels. Sidebar project grouping is broken. Sidebar visibility appears tied to projectless-thread-ids. thread-workspace-root-hints with 101 entries is not enough to restore project sections. Desktop repeatedly logs ENOENT: path does not exist: ~. Desktop UI enables workspace_dependencies, but packaged app-server rejects it. Related issues This appears closely related to existing Windows/Desktop state and project grouping bugs:

https://github.com/openai/codex/issues/17540 Windows app: older local threads disappear while still present on disk. Similar state_5.sqlite, session_index.jsonl, sessions, and \?\C:... path signals.

https://github.com/openai/codex/issues/17304 Desktop project sidebar hides active threads after update/state drift. Related to project sidebar not showing active historical threads even though local state exists.

https://github.com/openai/codex/issues/18253 Project Timeline shows no history despite existing threads. Related to Windows path identity mismatch with OneDrive/junction/\?\ prefix.

https://github.com/openai/codex/issues/13845 Windows Desktop passes raw \?\C:... cwd to tools/processes. Confirms a Windows path normalization issue in Desktop.

Impact This makes Codex Desktop look like historical chats/projects were lost after update, even though the local data is still present.

The current workaround can restore visibility only as a flat chat list by stuffing all non-archived threads into projectless-thread-ids, but it does not restore project grouping.

extent analysis

TL;DR

The issue can be temporarily worked around by rebuilding the .codex-global-state.json file to include all non-archived thread IDs in projectless-thread-ids, although this will not restore project grouping.

Guidance

  • Verify that the state_5.sqlite database contains the historical threads and project/workspace cwd values.
  • Check the thread-workspace-root-hints in .codex-global-state.json to ensure they match the expected project structure.
  • Try adding all non-archived thread IDs to projectless-thread-ids in .codex-global-state.json and restart the Desktop app to see if it restores chat visibility.
  • Investigate the ENOENT: path does not exist: ~ error and its relation to the workspace_dependencies feature.

Example

No code example is provided as the issue seems to be related to the application's internal state and configuration.

Notes

The issue appears to be related to a Windows path normalization problem and the application's handling of project grouping and thread visibility. The provided workaround can restore chat visibility but does not address the underlying project grouping issue.

Recommendation

Apply the workaround by rebuilding the .codex-global-state.json file to include all non-archived thread IDs in projectless-thread-ids, and then investigate the ENOENT: path does not exist: ~ error and the workspace_dependencies feature to find a more permanent solution.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

codex - 💡(How to fix) Fix Windows Desktop: sidebar/project list lost after update; search still finds threads; projectless-thread-ids workaround restores flat chats but project grouping remains broken [1 comments, 2 participants]