Windows desktop renderer OOM when opening an existing large conversation (26.1002.7124.0 / 0.162.0-alpha.2)
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 5/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Active
- Domain
- desktop
Research direction
The payload names the history store, which keeps mapped items, and the imageGeneration mapper, which spreads the original item including its inline result. It also names paginated history, enabled by default in the packaged source. Start by reading how the history store loads and retains items, and whether inline image results stay in memory after a local path is available. The report gives no reproduction the newcomer can run, and the owning allocation is unknown, so this needs maintainer direction first.
Written by the indexing model from the issue text.
Description
Environment
- Windows 11 Home x64, version 10.0.26200, build 26200.
- Physical memory: 8,449,830,912 bytes, approximately 7.87 GiB.
- Installed Microsoft Store package: OpenAI.Codex 26.1002.7124.0.
- Both the packaged CLI and the executable actually used by app-server report codex-cli 0.162.0-alpha.2.
- Windows manages the pagefile automatically. Allocated pagefile was 8,058 MiB in the diagnostic window.
- Approximately 14.7 GB was free on C: after restoring the known offloaded files.
Observed behavior
Opening one existing large local conversation causes rapid renderer memory growth, followed by a native renderer exit with unsigned code 3758096392 / 0xe0000008. The desktop browser/main process stays alive and reloads its renderer, which appears to the user as the application restarting. The user originally noticed this on opening or typing in that conversation. The two instrumented reproductions below only opened the conversation; no model prompt or typing automation was performed.
Measurements (2026-10-09, UTC)
- After all known offloaded project files had been restored, before closing the right content panel:
- Renderer native OOM exit at 00:56:45.447476 UTC.
- Peak sampled affected-renderer private bytes: 5,962,498,048.
- Peak aggregate ChatGPT.exe private bytes: 8,774,594,560.
- Minimum available system physical memory: 21,590,016 bytes.
- Minimum available system commit: 2,132,758,528 bytes.
- Following a normal app restart and a verified single-setting change that closed this conversation's right panel while preserving every tab:
- Renderer native OOM exit at 01:16:21.294218 UTC.
- Peak sampled affected-renderer private bytes: 5,290,360,832.
- Peak aggregate ChatGPT.exe private bytes: 8,321,425,408.
- Minimum available system physical memory: 6,066,176 bytes.
- Minimum available system commit: 2,683,924,480 bytes.
Private bytes are committed private process memory, not simultaneously resident RAM. Aggregate values include other desktop helper/rendering processes. Native process handles and creation times were held to distinguish process exit from PID reuse. Memory was sampled at approximately 500 ms intervals. No native dump or heap allocation stack was available, so the exact owning allocation remains unknown.
Restoration and narrow checks
- All 3,546 paths in the found removal/restore manifest are again present at their original paths, with restoration SHA/readback evidence validated. The 56 remaining older archives were restored before the first instrumented reproduction.
- All 5,012 Git-tracked files in the active project and 141 related conversation/session files remain local.
- All current editor/PDF and unique image-preview file references exist locally.
- The saved composer text is 204 characters, with no inline images or local-file references.
- One read-only indexed query of the latest 10 history items found a largest item of approximately 2.95 MB. This does not measure all retained history or prove that the initial page is small.
- The conversation persisted 102 right-side tabs, including 90 browser routes. Closing the right panel did not prevent the renderer OOM. No tab records were deleted.
- No history/profile reset, session truncation, app-source patch, arbitrary feature-flag change, forcekill, model task, or new conversation was performed in these reproductions.
Relevant context, not a proven allocation cause
- The main rollout is approximately 6.004 GB logical size. File size alone does not prove that it is all loaded into memory.
- Read-only packaged-source inspection finds paginated history enabled by default; the ordinary factory supplies no override disabling it. The version gate is compatible with 0.162.0-alpha.2. The exact runtime capability state was not directly observed.
- The history store retains mapped items, and the imageGeneration mapper spreads the original item including its inline result even when the displayed image src prefers a saved local path. Whether this owns the measured peak is not established.
- A bounded, supported history-memory control was not found in the inspected current settings. Please identify a supported workaround preserving the existing conversation and project.
Expected behavior and requested investigation
Loading a large existing conversation should bound retained and transient memory, or fail visibly without repeatedly crashing the renderer. Please investigate history paging, retained image/base64 results, mapping/copying/IPC peaks, and safe eviction of inactive loaded history. Please provide a supported method to collect a native stack if needed and identify a fixed build or workaround preserving all history.
Potentially related report: https://github.com/openai/codex/issues/51313 describes Windows renderer crashes and reloads on an earlier build. An identical root cause or duplicate relationship has not been established.
Privacy: this report contains software versions, sanitized measurements and counts. No conversation identifiers/content, user/project names, private paths, account data, credentials, raw state, or transcript attachments are included.
- Dominant language
- Rust
- Stars
- 129k
- Forks
- 20.3k
- Avg merge
- 1m
- Merged PRs (30d)
- 998
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from openai/codex
-
Python SDK: CodexClient.close() leaves the app-server's stdout/stderr pipes open (and never waits after kill)Possibly taken @akhil9tiet claimed this today. Openapp-server bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
openai/codex#54908 · 2 comments ·
Maintainers usually reply within 1 day
-
bug CLI tool-calls windows-os
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
bug tool-calls
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
Clarification about NODE_REPL_TRUSTED_BROWSER_CLIENT_SHA256S in the VS Code extension environmentOpendocumentation extension windows-os
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
openai/codex#54780 · 1 comment ·
Maintainers usually reply within 1 day
-
bug context
Difficulty 2/5 Under an hour Newbie friendliness 74/100
Maintainers usually reply within 1 day
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
[Bug] ComponentType classifies 0x8A8A-0xEAEA as GREASE; mls-extensions §7.5 makes them private useOpen
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
area:ecosystem documentation
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Chelis-Lang/chelis#3866 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
metasequoiaime/msime#8620 ·
Maintainers usually reply within 1 day
-
agent-detection macos p2 triaged
Difficulty 1/5 Under an hour Newbie friendliness 90/100
Maintainers usually reply within 1 day