[Windows][Desktop 26.810.6296.0] Opening already-running Codex makes ChatGPT.exe MAIN burn ~8.5 CPU-sec/6s and ~1GB until full restart
What version of the Codex App are you using (From “About Codex” dialog)?
Windows Store / AppX package: OpenAI.Codex_26.810.6296.0_x64__2p2nqsd0c76g0
ChatGPT.exe file version: 151.0.7922.137
Installed location: C:\Program Files\WindowsApps\OpenAI.Codex_26.810.6296.0_x64__2p2nqsd0c76g0\app\ChatGPT.exe
The in-app “About Codex” dialog string was not captured during the live measurements. The package version above is from Get-AppxPackage OpenAI.Codex on the affected machine.
What subscription do you have?
Not exposed during diagnostics. Please treat as unknown rather than guessed.
What platform is your computer?
Microsoft Windows NT 10.0.26200.0 x64
Windows 11 Home, build 26200.9168
What issue are you seeing?
Summary
On Windows, opening Codex Desktop (showing the window of an already-running packaged ChatGPT.exe) makes the main process enter a sustained CPU runaway. The whole PC stutters until the entire Codex process tree is stopped and relaunched.
This is not a one-time Store-update leftover. It comes back every time the window is opened.
Two separate classes were measured on the same machine the same day. Cleaning class A does not stop class B.
Class A — leftover Store package under WindowsApps\Deleted (side channel)
After a Store/app update, the old tree can sit in:
C:\Program Files\WindowsApps\Deleted\OpenAI.Codex_<old>_*
AppX Operational event 471 then retries the delete and fails, e.g. resources.pak with 0x12C. The same 471 class also hit non-Codex leftovers on this PC (Microsoft.WindowsAppRuntime_*, Microsoft.DesktopAppInstaller_*, and later a Claude leftover). Periodic delete retries correlate with whole-PC stutter.
Elevated wipe of all Deleted\* dirs → Deleted count 0, no 471 for hours.
Class A being empty does not stop the stutter below.
Class B — packaged ChatGPT.exe MAIN thrash on window open (the actual remaining bug)
Main process = packaged ChatGPT.exe whose command line has no --type= (not gpu / renderer / network / crashpad).
Measured shape, local time JST, 2026-08-15:
| When | MAIN PID | CPU in sample | Working set | Notes |
| --- | --- | --- | --- | --- |
| Morning, after Deleted was already empty | (earlier PID) | ~4.3 CPU-sec / 3 wall-sec | ~1.2 GB | Whole-PC lag. Full tree restart calmed it. |
| 13:40, after opening Codex | 34880 | 8.7 CPU-sec / 6 wall-sec | ~1026 MB | Children quiet (gpu 0.08s, renderer 0.8s, codex.exe 0.08s). Chrome 0.77s / Logi 0.17s in the same window — not the stutter. |
| 13:41–15:40, process left running (window not in use / tray-like) | 44988 | 0.02–0.09 CPU-sec / 6s every 5 min | ~300–317 MB | Looks healthy. |
| 15:43, immediately after opening Codex again | 44988 | 8.5 CPU-sec / 6 wall-sec | 918 MB | Same PID as the idle period. Opening the window flipped it. |
| 15:45:09 automatic sample | 44988 | 8.36 CPU-sec / 6s | 1004 MB | Same runaway still held. |
| 15:45:18 after full stop + relaunch | 55996 | idle | 323 MB | Relaunch observed. New MAIN start 15:45:17. |
Command line of the hot process (no --type=):
"C:\Program Files\WindowsApps\OpenAI.Codex_26.810.6296.0_x64__2p2nqsd0c76g0\app\ChatGPT.exe"
AppX 471 in the 2 hours around the 15:43 open: none. Deleted was not the cause of that spike.
Why local workarounds are not a fix
We already tried everything we can do outside the app:
- Delete
WindowsApps\Deletedleftovers (Codex and non-Codex). This stops class A only. - One-shot kill + relaunch of the Codex tree when MAIN ≥ 5.0 CPU-sec / 6s. This temporarily returns the machine to normal. It does not prevent the next open from doing the same thing.
- A 5-minute poll of an already-running instance reports
ok(0.03 CPU-sec, 311 MB) two minutes before the user opens the window and MAIN jumps to 8.5 CPU-sec / ~1 GB. The open event itself is what flips the process. - A 20-minute cooldown after a restart means the next open inside that window is unhealed.
- An earlier “keep killing ChatGPT and block relaunch until AppX cleanup finishes” workaround made Codex look unstartable. Please do not recommend that class of fix. Relaunch must never be blocked.
So: we can mop the floor after it floods. We cannot stop the tap. This needs a product fix.
What steps can reproduce the bug?
Reproduced multiple times on 2026-08-15, package 26.810.6296.0, no extra 471 activity.
- Install / leave Codex Desktop running as the Microsoft Store app
OpenAI.Codex(process tree rooted at packagedChatGPT.exe). - Leave it running in the background / tray so MAIN is the no-
--type=process. Optional check: MAIN is ~300 MB and uses ~0.03 CPU-sec over 6 seconds. - Open the Codex window (user click / restore / launch the app id
OpenAI.Codex_2p2nqsd0c76g0!Appwhile the process is already alive). - Within seconds the whole desktop stutters.
- Sample only the MAIN
ChatGPT.exe(command line must not contain--type=). Observe ~8.3–8.7 CPU-seconds in a 6-second wall sample and working set ~0.9–1.0+ GB. Child--type=processes stay comparatively quiet. - Fully stop the packaged tree and relaunch
shell:AppsFolder\OpenAI.Codex_2p2nqsd0c76g0!App. Stutter stops. MAIN returns to ~300 MB. - Repeat step 3. The runaway returns.
Not required to reproduce class B:
- A live
WindowsApps\Deletedleftover - A current AppX 471/493 storm
- A long agent turn
- Multiple extra Codex windows (the 13:40 / 15:43 hits were the existing single tree)
Session / token / context-window IDs were not captured; this is a host-process failure, not a single-thread prompt failure.
What is the expected behavior?
Opening an already-running Codex Desktop window should not pin a logical core on the Electron/Chromium main process or inflate it from ~300 MB to ~1 GB.
If a Store update leaves an old package under WindowsApps\Deleted, AppX should be able to delete it without a 471 retry loop, and that leftover should not be required to explain MAIN CPU after Deleted is empty.
Restarting the app should not be the only way to get a usable desktop again.
Additional information
Same-day timeline (JST, 2026-08-15) — complete local history
Morning — Store update residue + first MAIN runaway
- Current package became
OpenAI.Codex_26.810.6296.0. - Old package stuck at
Deleted\OpenAI.Codex_26.810.4967.0_.... - AppX Operational 471 on
resources.pak(0x12C). - A local cleanup tool that stopped all Codex processes and blocked auto-relaunch for up to ~20 minutes made the app appear not to start. That design was abandoned. Do not ship anything like it.
- After Codex Deleted residue was removed, stutter returned. Remaining Deleted dirs were
Microsoft.WindowsAppRuntime.1.8_*andMicrosoft.DesktopAppInstaller_*(4710x5about every 6 minutes). - Elevated wipe of those dirs → Deleted entries = 0, subsequent 471 = 0.
- User still felt lag. MAIN
ChatGPT.exe~4.3 CPU-sec / 3 wall-sec, ~1.2 GB WS. Full tree restart → calm.
Afternoon — “I opened Codex and it stuttered again”
- 13:40: MAIN PID 34880, 8.7 CPU-sec / 6s, WS 1026 MB. 471 last 2h = 0. Deleted empty.
- Same 6-second window, other processes: chrome 0.77s, Logi agent 0.17s. Not the cause.
- One-shot stop + relaunch via
shell:AppsFolder\OpenAI.Codex_2p2nqsd0c76g0!App→ MAIN ~0.22 CPU-sec / 7s. User confirmed the stutter was gone until the next open.
Later the same afternoon — idle is fine, open is not
- New MAIN PID 44988 started 13:41:53.
- 13:50 through 15:40: automatic 6-second samples every 5 minutes, all
reason=ok,mainDelta0.00–0.09, WS 300–317 MB. - User opened Codex again. Immediate whole-PC stutter.
- 15:43 live sample: PID 44988 8.5 CPU-sec / 6s, WS 918 MB. 471 last 2h still 0.
- 15:45:02 scheduled sample:
THRASH CHECK | reason=main-cpu mainDelta=8.36 sampleSec=6 pid=44988 wsMb=1004then one-shot stop/relaunch,observed=True. - New MAIN PID 55996 started 15:45:17, WS 323 MB.
What this rules out
- Not “just AppX Deleted leftovers.” Those were gone for hours.
- Not chrome / Logitech / other desktop agents. Measured in the same sample and quiet.
- Not a renderer-only cost. The hot PID is MAIN (no
--type=). GPU/renderer/network/codex.exewere not the 8.5s burn. - Not “the process is always hot.” The same PID was healthy at 311 MB / 0.03 CPU-sec at 15:40:09 and pathological at 15:43 after the window was opened.
- Not fixed by restarting once. The next open repeats it.
Related issues (searched before filing)
These are in the same Windows Desktop performance cluster. None of them is this exact trigger + this exact package + this MAIN-only open flip:
- #38640 —
ChatGPT.exepersistent CPU / ~1 GB/s process-read until restart (26.810.4967.0). Closest cousin. Ours is newer (26.810.6296.0) and flips on window open of an already-idle MAIN, not only after a long degraded session. - #38518 — opening/switching conversations can start a 350–800 MiB/s read loop (
26.810.4967.0). - #38702 — MAIN 1.1–1.5 GB/s read I/O after hours idle (
26.810.4967.0). - #38698 — intermittent system-wide stutter; restarting Codex restores responsiveness.
- #38710 — active thread + GPU/DWM load (
26.810.4967.0). - #35191 — generic “Desktop Bad performance” on Darwin, not this Windows MAIN measurement.
Happy to attach a sanitized process list, the 6-second before/after samples, or AppX 471 excerpts if useful. I can also re-run with process I/O counters on the next open if you want the #38640-style read-rate numbers on 26.810.6296.0.
3 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
I can confirm a very similar failure signature on a second Windows system.
The trigger is not identical—on my machine it appears during concurrent task activity or task switching, rather than reliably every time the window is opened—but the resulting MAIN-process runaway and recovery behavior closely match this report.
Environment
26200.8875OpenAI.Codex_26.810.4967.0_x64__2p2nqsd0c76g0ChatGPT.exefile/product version:151.0.7922.137610.88Although my AppX package is older than the reporter's
26.810.6296.0, both packages contain the sameChatGPT.exeversion:151.0.7922.137.A/B result
Closing Codex immediately restores smooth desktop operation.
This does not require restarting Explorer, DWM, Windows, or the NVIDIA driver. Explorer windows that were already open become smooth as soon as the complete Codex Desktop process tree exits.
Relaunching Codex returns the system to normal, at least temporarily.
After one clean Codex restart:
| State | MAIN PID | CPU sample | Working set |
| --- | ---: | ---: | ---: |
| Healthy after restart | 14120 |
0.109 CPU-sec / 5s| 345 MB || Fault active, same PID | 14120 |
10.906 CPU-sec / 8.005s| 1009 MB || Fault still active two minutes later | 14120 |
13.891 CPU-sec / 10.017s| 940 MB; private bytes 1049 MB |The hot PID is the packaged
ChatGPT.exewith no--type=argument:The second sample represents approximately 1.36 logical cores continuously; the later sample was approximately 1.39 logical cores.
The child processes were comparatively quiet in the same eight-second sample:
| Process role | CPU sample |
| --- | ---: |
| MAIN, no
--type=| 10.906s || Hottest renderer | 0.750s |
| GPU process | 0.188s |
|
codex.exe app-server| 0.172s || Other renderers | 0.000–0.047s |
This strongly points to the Electron/Chromium MAIN process, not the renderer, GPU subprocess, or Codex agent backend.
Symptoms
While MAIN is hot:
Trigger difference
My latest controlled sequence was:
0.109 CPU-sec / 5s, approximately 345 MB.Earlier occurrences sometimes appeared after sleep/resume or after switching to a particular long Codex task, but not necessarily immediately. The clean restart → healthy MAIN → concurrent activity → same-PID MAIN runaway transition is the strongest reproduction so far.
This suggests there may be more than one action capable of flipping MAIN into the same pathological state:
Other causes excluded in this reproduction
nvlddmkmreset, WHEA error, DWM crash, or application hang was found.Logs and trace evidence
During affected periods, Codex logs contain repeated:
They also contain bursts of:
Events from two concurrent task streams were being routed through the same desktop host, sometimes to both the primary renderer and a hidden
avatarOverlayrenderer.However, some
ResizeObservermessages also occur while the app is healthy, so I do not consider that message alone proof of the root cause. It may instead identify UI activity accompanying the runaway.I also captured a 15-second WPR trace during an earlier occurrence using:
GeneralProfile.lightGPU.lightDesktopComposition.lightThe trace contains 3,071,244 events with zero lost events. During that capture the Codex MAIN process accumulated approximately 24.9 CPU-seconds over roughly 17.6 seconds, consistent with the later live measurements.
The ETL is approximately 385 MB and is available if maintainers want it.
Assessment
This appears to confirm the same underlying Class B failure described in this issue:
The fact that both
26.810.4967.0and26.810.6296.0carryChatGPT.exeversion151.0.7922.137may be relevant.Independent reproduction on the same Windows build
OpenAI.Codex_26.810.6296.0(Intel i7-14650HX, 24 logical processors, 32 GB RAM).Symptoms:
ChatGPT.exewith no--type=.Day-over-day comparison from the app's local logs on the same machine:
thread/turns/list: 110.9/hour on Aug 14 → 427.8/hour on Aug 15 (~3.9×)Received ... for unknown conversation: 3.2/hour → 206.7/hour (~65×)ResizeObserver loop completed...: 357.3/hour → 276.7/hour, so that message existed before the update and does not appear to be the newly introduced trigger.This suggests an Electron-main conversation/history synchronization or notification-routing loop that continues while the UI is idle. This independent reproduction matches the MAIN-only CPU runaway described here and adds an idle/no-active-task case plus day-over-day event-rate evidence.
No chat content, project files, or full logs are included in this report.