Windows Store Codex repeatedly fails to update because old MSIX package remains locked/in use
What version of the Codex App are you using (From “About Codex” dialog)?
Microsoft Store / MSIX package.
Observed update path:
- Previous installed package:
OpenAI.Codex_26.527.3686.0_x64__2p2nqsd0c76g0 - Target package staged by Store/AppX:
OpenAI.Codex_26.527.7698.0_x64__2p2nqsd0c76g0 - Store ProductId:
9PLM9XGG6VKS - Package family:
OpenAI.Codex_2p2nqsd0c76g0
After manual repair, the machine is now successfully on OpenAI.Codex_26.527.7698.0_x64__2p2nqsd0c76g0.
What subscription do you have?
Not relevant to the Store/AppX update failure.
What platform is your computer?
- OS: Microsoft Windows 10 Enterprise
- Version:
10.0.19044 - Architecture: x64
- Install source: Microsoft Store /
wingetmsstore
What issue are you seeing?
Codex Desktop from Microsoft Store repeatedly fails to update on Windows. The update reaches the AppX/MSIX registration phase, then fails because Windows still considers the old OpenAI.Codex package/application to be in use.
This has happened repeatedly on the same machine, and also on another machine in the same LAN.
Recent AppXDeployment-Server failures included:
0x80073CF90x8007001F0x80073D02
Representative AppX message:
Deployment Register operation failed because OpenAI.Codex_2p2nqsd0c76g0!App needs to be closed.
The staged target manifest existed at the time of failure:
C:\Program Files\WindowsApps\OpenAI.Codex_26.527.7698.0_x64__2p2nqsd0c76g0\AppxManifest.xml
But registration was blocked by the old package state.
What steps can reproduce the bug?
This happens during Store/MSIX updates, not during a normal in-app action. The rough pattern is:
- Install Codex Desktop from Microsoft Store.
- Use Codex normally for a while.
- Let Microsoft Store stage a newer Codex package update.
- The update fails during AppX registration.
- Closing visible Codex windows is not enough; Windows still reports the old package/app as in use.
During local diagnostics, stale old-package state remained after closing visible Codex windows. Observed blockers included:
SearchApp.exe file handles:
...\Microsoft.Windows.Search_cw5n1h2txyewy\LocalState\AppIconCache\100\OpenAI_Codex_2p2nqsd0c76g0!App
svchost.exe package/container job handle:
\Container_OpenAI.Codex_26.527.3686.0_x64__2p2nqsd0c76g0-...
Mounted AppX/Helium registry hives for OpenAI.Codex
A direct attempt to register the already-staged new package after closing visible app processes still failed with:
Add-AppxPackage: 0x80073D02
The package could not be installed because resources it modifies are currently in use.
OpenAI.Codex_26.527.3686.0_x64__2p2nqsd0c76g0 needs to be closed.
What is the expected behavior?
Codex should update cleanly through Microsoft Store without requiring a reboot or manual AppX cleanup.
If Codex needs to restart itself for update, it should fully release package/container/AppX state, or provide a robust update flow that handles stale app package locks.
Actual behavior
The app/update flow repeatedly leaves the old package considered "in use", causing Store/AppX registration to fail. The user is forced into repeated manual repair, package unregister/reinstall, or reboot-like cleanup.
Workaround used locally
The update succeeded only after manually quiescing the old package state:
- Close Codex.
- Close stale Codex-related package handles.
- Unload stale
OpenAI.CodexAppX/Helium registry hives. - Remove the current user's old AppX package registration.
- Reinstall from Microsoft Store:
winget install --id 9PLM9XGG6VKS --source msstore --accept-source-agreements --accept-package-agreements
After this, the package registered successfully:
OpenAI.Codex_26.527.7698.0_x64__2p2nqsd0c76g0
Status: Ok
AppXDeployment-Server then logged successful registration:
Deployment Register operation with target volume C: on Package OpenAI.Codex_26.527.7698.0_x64__2p2nqsd0c76g0 from: (AppxManifest.xml) finished successfully.
Post-repair checks showed:
No mounted OpenAI.Codex hives found.
No stale Codex-related handles found.
Additional information
This makes every Store update fragile for users who keep Codex running for long coding sessions. A reboot may implicitly clear the same package/container state, but requiring a reboot for frequent app updates is a poor update experience.
The failure appears to be in the Windows Store/MSIX update lifecycle around releasing the old package identity, rather than in normal application runtime behavior after the package is successfully installed.
2 Comments
Additional repeated repro data from the same machine.
This is still happening on later Microsoft Store/MSIX updates. The pattern remains the same: Store successfully stages the new package, then AppX
Registerfails because Windows still reportsOpenAI.Codex_2p2nqsd0c76g0!Appas running.Observed update failures after the original report:
Representative AppX event shape on each failure:
The reliable manual repair has been one of these, depending on how stuck the package state is:
SearchApp.exeAppIconCache handles and/or thesvchost.exepackage container job handle).OpenAI.CodexAppX/Helium hives when present.Add-AppxPackage -Registeragainst the already stagedAppxManifest.xml.The latest successful repair ended at:
This now appears to reproduce on nearly every Store update on this machine, so it looks like a deterministic Windows Store/MSIX update lifecycle issue around releasing the old package identity, not a one-off corrupted install.
Additional independent reproduction and a controlled success comparison from a different Windows machine.
Environment
OpenAI.Codex_2p2nqsd0c76g026.810.4967.0 -> 26.810.6296.0OpenAI.ChatGPT-Desktop_1.2026.190.0_x64__2p2nqsd0c76g0Historical failure evidence
On 2026-08-14, AppX began a Register operation for
OpenAI.Codexwhile package-owned processes were still running. About four seconds later it failed with:Two
Application Hangevent 1002 records forChatGPT.exefollowed in the same incident window. Later repair/remove attempts produced0x80070490(package repository / element not found) and0x80073CFAde-stage/remove failures. The user-facing recovery cycle had repeatedly become repair/reset/reinstall before the app would launch again.The machine also had ChatGPT Classic installed, but package identity inspection rules out a visible-name or Task Manager collision:
They have different package families, AUMIDs, install roots, executables, and protocols. Classic remained
Status: Ok. A Beta package had also been installed and shared thecodex:protocol with Stable; it was removed before the controlled reproduction below.Controlled successful update comparison
On 2026-08-15, the in-app Update action was run while an independent observer recorded package/process state. The observer did not force-close any residual process.
Timeline:
Post-update evidence:
26.810.6296.0OkThis comparison supports the theory that the critical boundary is fully quiescing the old
OpenAI.Codexprocess tree before/during Register, not the coexistence of ChatGPT Classic.Store catalog / manifest mismatch observed after success
The new app log then recorded:
So the OpenAI manifest was already ahead of the version the Microsoft Store would offer. This did not crash the new build, but it makes updater state and user messaging ambiguous.
Requested updater behavior
Privacy: usernames, hostnames, SIDs, project names, conversation contents, session IDs, and full user-profile paths were intentionally omitted.