Repository navigation
Codex Desktop project chat histories disappeared after recent update #20741
Description
What version of the Codex App are you using (From “About Codex” dialog)?
26.429.30905 (2345)
What subscription do you have?
ChatGPT Pro
What platform is your computer?
macOS Tahoe 26.4.1
MacBook Pro 16-inch, Apple M5 Max, 128 GB memory
What issue are you seeing?
After what appears to be a recent Codex Desktop update today, almost all of my project chat histories disappeared from the sidebar.
The projects themselves are still listed, but most of them now show No chats. Only one main project still shows its previous conversation history. Before the update/restart, those other projects had existing conversation history.
This looks like a local history/indexing or migration issue rather than an intentional project deletion, because the project entries still exist while their associated conversations are missing from the UI.
Observed sidebar state from my screenshot:
GGamestill shows recent conversationsCloudKitAdminPlatformshowsNo chatsRaspberryPishowsNo chatsweighted-wheelshowsNo chatsWAN ProjectshowsNo chatsCodexAutoSwitchershowsNo chats- regular
Chatsalso showsNo chats
This is high impact because those missing project conversations contain important development context and task history.
What steps can reproduce the bug?
I do not yet have a deterministic repro, but this is what happened:
- Use Codex Desktop with multiple projects that already have chat history.
- Receive/apply the recent Codex Desktop update, or reopen Codex after the update.
- Open Codex Desktop again.
- Check the left sidebar project list.
- Observe that most projects are still present but their chat histories are gone / shown as
No chats. - Only one main project still shows previous conversations.
What is the expected behavior?
All existing project conversations should remain visible and searchable after a Codex Desktop update or app restart.
Specifically:
- Updating/restarting Codex should not hide or remove project chat histories.
- Existing projects should continue to show their associated conversations.
- If this is an indexing problem, there should be a safe way to re-index/recover the local project conversations.
Additional information
I have screenshots showing:
- The sidebar state where only one project still has conversations while the other projects show
No chats. - The Codex Desktop About dialog showing version
26.429.30905 (2345). - The macOS system information showing macOS Tahoe 26.4.1 and MacBook Pro Apple M5 Max.
Please investigate whether this is a UI/sidebar indexing bug, local migration issue, or possible data-loss problem. Also, please advise whether there is a safe recovery/re-indexing procedure for the missing project conversations.
Possibly related to prior local-thread/sidebar visibility issues, but this report is for Codex Desktop on macOS and affects project-level chat history after the latest update/restart.

Activity
github-actions commentedon May 2, 2026
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
[-]Codex Desktop project chat histories disappeared after recent update[/-][+][Urgent] Codex Desktop project chat histories disappeared after recent update[/+]GGBondBlueWhale commentedon May 2, 2026
Additional urgency note: please fix this as soon as possible. I currently cannot see the histories for my other Codex projects, so I cannot continue working in those projects with the required previous context. A safe recovery or re-indexing procedure would also help if the underlying data still exists locally.
vishkrish200 commentedon May 2, 2026
This looks very similar to what I hit in #20493. In my case the chats were not actually deleted; they still existed on disk/in SQLite, but Codex Desktop stopped treating them as visible sidebar chats after the update/import path.
I documented the fuller recovery here: #20493 (comment)
Quick thing to check
Before changing anything, make a backup:
Then check whether your hidden chats have the same broken metadata pattern:
If that returns your missing project roots, this may be the same issue.
Repair that worked for me
This only touches active rows with a real first user message. It does not unarchive everything:
After this, refresh/restart Codex Desktop. In my case a normal UI refresh was enough once the metadata was repaired.
If the chats exist but still appear under the wrong project, also inspect
~/.codex/.codex-global-state.json, especially:thread-workspace-root-hintsproject-orderelectron-saved-workspace-rootsThe short version: the data may still be there, but rows with
first_user_message <> ''can end up withhas_user_event=0orsource='exec', and then Desktop seems to hide them from the normal project sidebar.GGBondBlueWhale commentedon May 2, 2026
@vishkrish200 Thank you very much. I will try this.
That said, I still think the Codex team should treat this as a real bug and fix it seriously. Users should not have to manually repair local SQLite metadata just to recover visible project chat history after an update.
souljorje commentedon May 2, 2026
Faced the same. Not available in app sidebar, but visible in cli.
Resumed chat with cli -> sent a message -> chat reappeared in app sidebar.
macOS 15
AndersAdmin commentedon May 2, 2026
I’m seeing what appears to be the same issue on Windows with WSL projects after a recent Codex Desktop update.
Environment:
Codex Desktop on Windows
Project is inside WSL:
/home/user1234/projects/Servicenowreports
Same project is also accessible from Windows as:
\wsl.localhost\Ubuntu\home\user1234\projects\Servicenowreports
Observed behavior:
The project still appears in the Codex Desktop project/sidebar UI.
The old project chats do not appear under the project chat list.
Switching/opening the project via the alternate WSL/UNC path did not restore the old project chat list.
However, in-app Search still finds the old chat title.
Clicking the old chat from Search opens the thread successfully, and the assistant can respond in that old thread.
Even after sending a new message in that old thread, it still does not reappear in the project chat list/sidebar.
Local data observations:
The old thread still exists in the local Codex database.
In C:\Users\user.userlastname.codex\state_5.sqlite, the threads table contains the old thread.
The thread is not archived (archived = 0).
The old thread has this cwd:
?\UNC\wsl.localhost\Ubuntu\home\user1234\projects\Servicenowreports
The rollout/session file still exists at:
C:\Users\user.userlastname.codex\sessions\2026\04\28\rollout-2026-04-28T23-56-20-019dd617-da60-76a2-a36f-d5ab72d3bc05.jsonl
The thread title is:
Planera ServiceNow-rapportimport
This suggests the chat data itself is still present and loadable, but the project chat list/sidebar no longer associates existing threads with the project correctly. It looks more like a project/thread indexing or path normalization regression than actual data loss.
One possible contributing factor is WSL path identity/normalization. The current workspace may appear as:
/home/user1234/projects/Servicenowreports
while older stored threads use:
?\UNC\wsl.localhost\Ubuntu\home\user1234\projects\Servicenowreports
But opening the project through the alternate path did not fix the project chat list.
Additional observation: the project files also no longer appear correctly in the Codex Desktop UI, even though they still exist in WSL and the agent can read them from /home/user1234/projects/Servicenowreports. In one resumed thread, the cwd appeared malformed, combining the Windows app resources path with the WSL UNC path:
/mnt/c/Program Files/WindowsApps/OpenAI.Codex_.../app/resources/\wsl.localhost\Ubuntu\home\user1234\projects\Servicenowreports
This suggests the issue may affect project root/path resolution, not only chat history listing.
mateogon commentedon May 13, 2026
I hit the same issue on Codex Desktop macOS.
In my case the chats were not deleted. The original thread rows still existed in:
~/.codex/state_5.sqlite~/.codex/session_index.jsonl~/.codex/sessions/.../rollout-*.jsonlFor the affected project, the rows had:
archived = 0source = 'vscode'cwdfirst_user_messageI first tried the metadata repair suggested above:
That updated the rows correctly and
pragma integrity_check;returnedok, but Codex Desktop still did not show the chats after reload/restart.The workaround that actually made one hidden chat reappear was cloning it to a new thread identity:
session_meta.payload.idin the copied rollout JSONL to the new id.threadsrow with the new id, samecwd,source='vscode',archived=0,has_user_event=1, and the new rollout path.session_index.jsonl.After that, the recovered chat appeared in the project sidebar.
So this seems to be more than just
has_user_event=0. At least in my case, once a thread was hidden, fixing metadata alone was not enough. Desktop seemed to keep ignoring the old thread identity, while a cloned thread with a fresh id/index entry was picked up.andrew-adamson-proteros commentedon May 15, 2026
I found a workaround that avoids rewriting chat metadata or touching timestamps. Since it modifies/fixes the codex desktop app code, it can't modify the actual installed version due to signing, but it can run separately as its own electron app; I just put a shortcut to it on my desktop until OpenAI gets into gear and fixes this.
In my case,
execchats being hidden seems correct. The actual Desktop bug was that the sidebar’s recent chat refresh only loaded the first page, while the app-server had more non-execchats available. Patching the renderer to fetch allthread/listpages made my old projectless/non-project chats reappear.I verified:
execchats were shownsource='exec'rows were changed tovscodeexecprojectless rows in SQLite/global statePrompt I used/that others can adapt:
Admin is not required for this generic-Electron launcher unless your own environment has unusual permissions. If the script works once from a normal terminal, the shortcut should work the same way.
[-][Urgent] Codex Desktop project chat histories disappeared after recent update[/-][+]Codex Desktop project chat histories disappeared after recent update[/+]Desalzes commentedon May 16, 2026
Same symptom on Windows — root cause appears to be
\\?\extended-length path prefix inthreads.cwdHit this on Windows 11 (10.0.26200) with Codex Desktop 26.513.31313 (MSIX
OpenAI.Codex_2p2nqsd0c76g0). Same sidebar-empty behavior as the OP, plus: clicking any affected thread produces "Oops, an error has occurred," and after one such click no further threads will load in that session (including clean ones). Restarting Codex Desktop fixes loading temporarily, until the next affected thread is clicked.No chats are actually deleted. Both the pre-recovery auto-backup and the current DB have the same 11,133 thread IDs.
Root cause
Every affected thread has its
cwdstored with the Windows extended-length prefix\\?\:\?\C:\Users<me>\Desktop\Projects_Betting_Markets\Polymarket_Wallets
while the matching entry in
.codex-global-state.json→electron-saved-workspace-rootsis the same path without the prefix. The project↔thread matcher (and apparently the thread loader) compares these literally and doesn't normalize the prefix, which sets off a cascade:Affected threads look "projectless" → triggers
projectless_recovery.Recovery clears
active-workspace-rootsinstead of normalizing the orphan cwds. (Auto-backup.codex-global-state.before_projectless_recovery.<ts>.jsonconfirms this — the only diff vs. the current file isactive-workspace-roots: ["C:\\…\\Polymarket_Wallets"] → [].)Sidebar then renders "No chats" because no active project is set.
Clicking any affected thread throws in the loader and poisons renderer state → all subsequent loads fail for the session.
Who's writing the prefix
In
state_5.sqlite, the bad rows uniformly have:originator: "Codex Desktop"
source: "vscode"
cli_version: 0.118.0-alpha.2 … 0.131.0-alpha.9 (every alpha shipped with Desktop over the last ~5 weeks)
Threads created by
codex execas a subprocess havesource: "exec"and never have the\\?\prefix. So it isn't the CLI in general — it's specifically the Codex Desktop spawn path calling something equivalent to Rust'sstd::fs::canonicalize()on Windows (which returns\\?\-prefixed paths) and persisting the result.Counts on my machine: of 11,133 threads, 150 had
\\?\cwd. Concentrated in the projects I use most. My Polymarket_Wallets project: 96 affected vs. 55 clean (64% affected).Data-level fix does not stick
Tried a sanity normalization:
UPDATE threads SET cwd = SUBSTR(cwd, 5) WHERE substr(cwd, 1, 4) = '\?';
-- 150 rows updated
Confirmed 0 prefixed rows immediately after. Restarted Codex Desktop → 120 rows re-acquired the prefix within ~1 minute, including the specific row I was trying to click. So Codex Desktop is re-canonicalizing the cwd at load/access time and writing it back. Whatever path does that is the right one to patch — strip
\\?\before reading from or writing to the DB (e.g.dunce::simplified()in Rust, or any equivalent prefix-strip elsewhere).What "history repair" / "projectless recovery" actually do
The two auto-backups Codex created during the update:
| File | Effect |
|---|---|
|
state_5.before_history_repair.<ts>.sqlite| ~0.2 MB SQLite page churn vs. current. No rows deleted, identical thread-ID set. ||
.codex-global-state.before_projectless_recovery.<ts>.json| Onlyactive-workspace-rootschanged (project → empty). Nothing else. |So both recovery passes are essentially no-ops w.r.t. the orphan problem — they just clear the active project, which makes it look like data loss to the user but doesn't relocate or repair anything.
Possibly the actual throw site of the loader crash
Sentry breadcrumbs from the crashing session (event itself was flushed before I could read it locally) — last
electron.netentries are allchatgpt.com/backend-api/aip/connectors/asdk_app_*/logoGETs, with one 404:GET .../aip/connectors/asdk_app_69e92b0ca8708191a9c3259e162d8e2d/logo?theme=light → 404 [warning]
If thread display tries to render AIP connector metadata and the 404 on
/logois unhandled in some code path, that may be where the loader actually throws. Worth checking the renderer's tolerance for 404 on connector-logo fetches.Suggested fix points
Strip the
\\?\prefix before persistingthreads.cwd(canonicalize for comparison on a local variable, don't store the canonical form).Normalize paths in the project↔thread matcher so
\\?\C:\XmatchesC:\X(case-insensitive on Windows).Wrap the thread loader's path resolution in try/catch and surface errors locally — right now one bad click takes out loading for the entire session, which feels like a separate hardening bug from the path issue.
projectless_recoveryshould attempt path normalization on orphan cwds instead of clearingactive-workspace-roots. Clearing the active project hides the symptom but doesn't repair anything.Environment
OS: Windows 11 10.0.26200
Codex Desktop: 26.513.31313 (MSIX
OpenAI.Codex_2p2nqsd0c76g0)Electron 42.0.1, Node 24.15.0, Chrome 148.0.7778.97
Affected thread
cli_versionrange: 0.118.0-alpha.2 → 0.131.0-alpha.9The 96-affected project is on a local NTFS volume, path under 260 chars (so no actual need for extended-length syntax).
Happy to share the auto-backup state files, specific row dumps, or the rollout JSONL for an affected thread if useful — the data on my machine is intact, just not loadable through the Desktop UI.
csdiyfree commentedon May 17, 2026
I’m seeing the same issue on macOS Codex Desktop.
A project that used to have many chats now shows “No chats” in the sidebar.
I did not archive the chats, and archived chats do not contain them.
32 remaining items
cocodanila commentedon Jun 17, 2026
Severity update from the same affected Windows install on
OpenAI.Codex_26.611.8604.0_x64__2p2nqsd0c76g0:This is a high-impact regression for multi-project users because normal navigation can hide the visible working set immediately.
cocodanila commentedon Jun 19, 2026
Additional Windows update from the same affected install:
OpenAI.Codex_26.616.3767.0_x64__2p2nqsd0c76g0.C:\Program Files\WindowsApps\OpenAI.Codex_26.616.3767.0_x64__2p2nqsd0c76g0\app\Codex.exe.149.0.7827.115.26.611.8604.0to26.616.3767.0.Still requesting an official Windows-safe recovery/reindex command or migration fix that rebuilds project/sidebar conversation visibility from existing local
.codexdata.cocodanila commentedon Jun 20, 2026
Additional Windows update from the same affected install:
OpenAI.Codex_26.616.5445.0_x64__2p2nqsd0c76g0.C:\Program Files\WindowsApps\OpenAI.Codex_26.616.5445.0_x64__2p2nqsd0c76g0\app\Codex.exe.149.0.7827.115.26.616.3767.0to26.616.5445.0.Still requesting an official Windows-safe recovery/reindex command or migration fix that rebuilds project/sidebar conversation visibility from existing local
.codexdata.cocodanila commentedon Jun 21, 2026
Additional Windows update from the same affected install:
OpenAI.Codex_26.616.6631.0_x64__2p2nqsd0c76g0.C:\Program Files\WindowsApps\OpenAI.Codex_26.616.6631.0_x64__2p2nqsd0c76g0\app\Codex.exe.149.0.7827.115.26.616.5445.0to26.616.6631.0.Still requesting an official Windows-safe recovery/reindex command or migration fix that rebuilds project/sidebar conversation visibility from existing local
.codexdata.cocodanila commentedon Jun 23, 2026
Additional Windows update from the same affected install:
OpenAI.Codex_26.616.9593.0_x64__2p2nqsd0c76g0.C:\Program Files\WindowsApps\OpenAI.Codex_26.616.9593.0_x64__2p2nqsd0c76g0\app\Codex.exe.149.0.7827.115.26.616.6631.0to26.616.9593.0.Still requesting an official Windows-safe recovery/reindex command or migration fix that rebuilds project/sidebar conversation visibility from existing local
.codexdata.cocodanila commentedon Jun 24, 2026
Additional Windows update from the same affected install:
OpenAI.Codex_26.616.10790.0_x64__2p2nqsd0c76g0.C:\Program Files\WindowsApps\OpenAI.Codex_26.616.10790.0_x64__2p2nqsd0c76g0\app\Codex.exe.149.0.7827.115.26.616.9593.0to26.616.10790.0.Still requesting an official Windows-safe recovery/reindex command or migration fix that rebuilds project/sidebar conversation visibility from existing local
.codexdata.houmark commentedon Jun 24, 2026
@cocodanila You are spamming this issue by automatically having your Codex app/agent re‑report every time you update the app with the same information, which is not necessary because this is still an issue until it has been resolved. Nobody is closing the issue. A monthly follow up is plenty enough to keep this on the radar and as you can see, your current approach haven't moved the needle on this one.
Posting the exact same automated information every single time you update the app, does not benefit anyone or help in any way to get this resolved, I am afraid, potentially just the opposite.
Can you imagine if we all did the same as you? And we did that with every single annoyance we had with the app, and we just spammed every single issue in this and all other repositories under those terms. While this is probably something that is running fully automatic on your end and without you even putting eyes on it, other people are being notified of your useless information because we wish to subscribe to an issue to be informed when it truly has forward progress, no just regurging the same thing over and over again. We don't need the repetition of you having the problem still. We all know you have the problem.
From another user that wants this solved as much as you. Please stop.
cocodanila commentedon Jun 24, 2026
You are right. The repeated updates were not intended as spam, but I understand the impact on everyone subscribed to the issue.
I will stop the automatic follow-ups on every app update. I thought the typical behavior was that of a incident management where you update the ticket with new information, not a broadcast to the world. And is not the same information, with each upgrade the things are going from bad to worse.
dkkb commentedon Jun 25, 2026
Same issue. This problem has occurred several times over the past month, but sometimes it seemed to get resolved quickly. The latest issue is that, aside from conversations from the past day, only conversations from seven months ago show up. On top of that, the rendering is broken—they all just display as 'new conversation,' though pinned conversations are fine.
I checked ~/.codex/sessions and the data is all still there. This is honestly a very amateur bug, and it has never been fixed.
Mstormer commentedon Jul 13, 2026
This is persistent for me as well. 200+ conversations missing. Some are accessible via search, but otherwise gone. Support@openai.com keeps replying with instructions for hallucinated settings that don’t exist in their desktop app. No path to a human.
Chats show for an instant before vanishing when I launch the app.
ogine commentedon Jul 13, 2026
What worked for me:
Open:
C:\Users\<USERNAME>\.codex\sessionsBrowse to the matching:
year\month\day
Find the session file matching your last chat time.
Copy the session UUID from the filename. (e.g. rollout-2026-07-13T03-30-54-SESSION_UUID.jsonl)
Run:
codex resume <session_id>Send a simple message like:
hi
After that, the thread appeared again in Codex chats.
Backup your .codex folder first, and do not edit the .jsonl session files.
for large number of sessions you can write some script which loop it.
dirzh-ai commentedon Jul 13, 2026
I’m seeing the same class of issue, but in my case the entire Projects list is empty after the desktop app migration. Recent tasks remain visible, but all saved project entries and task-to-project associations are missing.
Codex Desktop: 26.707.62119 (build 5211)
macOS: 26.5.2, arm64
Feedback ID: 019f5b41-d408-77a3-8280-abd3dc87d669
I have not reinstalled the app or cleared local data. Please advise whether the project migration can be re-run or the saved project index can be safely restored.
Mstormer commentedon Jul 14, 2026
Thanks for this; I had codex create a skill that processed 20 chats at a time in separate terminal windows since each one has to be resumed separately. It appears I have recovered everything in about half an hour.
jordanjd87 commentedon Jul 16, 2026
I'm seeing what may be the same underlying issue on the latest macOS desktop app, although my symptoms are slightly different.
Environment
macOS Tahoe 26.5.1
ChatGPT for Mac
Version 26.707.91948 (Released Jul 15, 2026)
Updated from the legacy ChatGPT desktop app (not a fresh install)
ChatGPT Plus
What I'm seeing
Important observation
On chatgpt.com, using the same account, everything is present and working normally:
So this does not appear to be data loss or an account synchronization issue. It appears that the desktop app is loading a different navigation/UI than the web app, preventing access to Chat, Projects, and GPTs.
Has anyone else on macOS 26.707.91948 seen the same behavior?
ademozsayin commentedon Jul 20, 2026
Sharing this in case it helps anyone else: I created a generic helper repo for migrating local Codex Desktop project chat history between Macs.
It backs up selected
~/.codexdata, restores it on the new machine, rewrites old project paths to the new clone path, and rebuilds the local session index:https://github.com/ademozsayin/codex-history-migrator
This is a workaround for local history/sidebar state that does not fully come back from sign-in alone.