Codex Desktop Windows: renderer error boundary "process is not defined" whenever project/browser sidebar mounts — app stuck on "Something went wrong"

Open 💬 2 comments Opened Jul 24, 2026 by Hui-cd
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of the Codex App are you using (from "About Codex" dialog)?

  • Package: OpenAI.Codex_26.721.3996.0_x64__2p2nqsd0c76g0 (Microsoft Store / MSIX, latest per Store)
  • Release seen in logs: 26.721.31836

What subscription do you have?

ChatGPT Plus

What platform is your computer?

Microsoft Windows NT 10.0.26200.0 x64 (Windows 11, system locale zh-CN)

What issue are you seeing?

The app worked fine and broke mid-use on 2026-07-24 without any app update (suggesting a server-side flag/config rollout). Every launch now ends in a full-screen error boundary ("糟糕,出错了 / Something went wrong" with "更新 ChatGPT / 重试" buttons).

Minimal reproduction on a fully clean profile: after wiping the entire %USERPROFILE%\.codex directory and logging in fresh, the app is stable until I create/add a project. The moment a project is created and the project sidebar mounts, the renderer crashes. This is not stale-state corruption — the current build crashes whenever the project/browser sidebar component mounts on this machine.

Log signature — the error boundary fires ~20 ms after every in-app-browser (IAB) sidebar sync, with errorMessage="process is not defined":

2026-07-24T12:45:48.957Z browser_use_iab_backend_startup_ready backend=iab ...
2026-07-24T12:45:48.9xxZ  error [electron-message-handler] error boundary
    errorMessage="process is not defined"
    componentStack="at C3s (app://-/assets/app-initial-DVfVy4b5.js:8875:151178) ..."

process is not defined indicates a bundling defect (browser context referencing Node's process) in the IAB sidebar/pane component, which the error boundary escalates into an unrecoverable full-screen failure.

Logs location: %LOCALAPPDATA%\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Local\Codex\Logs\<date>\codex-desktop-*.log

Region-dependent compounding factor

On non-US egress IPs, startup additionally fails with Statsig: error while bootstrapping post-login client (timeout) — same family as #26780 / #26750 (user.custom.workspace_type: Invalid input). Switching to a US exit IP makes the Statsig error disappear, but the process is not defined crash remains (it is the IAB sidebar, not Statsig).

What I tried (complete matrix)

| Attempt | Result |
|---|---|
| Retry / relaunch | ❌ persists |
| CN direct / SG egress / US proxy + TUN | ✅ fixes Statsig timeout only; ❌ crash persists |
| Windows locale zh-CN → en-US | ❌ no effect |
| Reset-AppxPackage (full app-data reset) | ❌ persists (state lives in ~/.codex) |
| Fresh re-login (moved ~/.codex/auth.json) | ❌ persists |
| Disable browser@openai-bundled plugin in config.toml | ❌ IAB backend still starts, crash persists |
| Clear ~/.codex/browser (IAB session residue) | ❌ persists |
| Move away entire ~/.codex (fresh profile) | ✅ stable — until a project is created |
| Restore old .codex-global-state.json sanitized 3 ways (no thread-browser-tabs-v1:* keys; 170-key subset; 19 project-sidebar keys only) | ❌ crash returns every time — any restore of the persisted atom state re-triggers it |
| Codex Beta 26.715.3651.0 (Product ID 9N8CJ4W95TBZ, sideloaded) | testing |

Expected behavior

  1. The renderer should not throw process is not defined — the IAB sidebar/pane bundle must not reference Node globals in browser context.
  2. Browser-sidebar state re-hydration should be fault-tolerant: a legacy or corrupt electron-persisted-atom-state entry should disable the pane, not crash the whole app into an unrecoverable error boundary.
  3. Until fixed, Windows users need a supported way to disable the in-app browser / project browser sidebar entirely.

Related issues

  • #26780 — Statsig bootstrap fails on user.custom.workspace_type (zh-CN, i18n/Browser Use disabled)
  • #26750 — white screen after login, Statsig workspace_type invalid input
  • #19750 — browser-sidebar thread poisons the app; clearing local browser state doesn't help
  • #27882 / #27899 — statsig-disabled / Statsig bootstrap errors on 26.609+

Additional information

  • Full log excerpts, all three sanitized .codex-global-state.json variants, and exact repro steps available on request.
  • Current workaround: fresh ~/.codex profile, browser plugin disabled, do not add projects — app is then stable but projects/UI state are lost, which defeats the purpose of the desktop app.

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 1 month ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #35150
  • #35123
  • #35061
  • #35114
  • #35120

Powered by Codex Action

Hui-cd · 1 month ago

Update — trigger confirmed and root cause narrowed further:

  1. Confirmed trigger = multi-root project. My original crash was caused by adding a second folder to a project (making it multi-root) — identical to #35057. On the current Stable build (26.721.3996.0), single-root projects work fine; the app only enters the permanent error-boundary state once a project has two root paths. This matches #35057's isolation result exactly.
  1. Recovery procedure verified (same as #35057): fully quit the app, remove the extra root(s) / affected project state from %USERPROFILE%\.codex\.codex-global-state.json (and the .bak), restart — app becomes startable again with history preserved.
  1. Codex Beta 26.715.3651.0 (sideloaded, Product ID 9N8CJ4W95TBZ) does NOT reproduce the issue — same account, same machine, projects work normally. So the regression was introduced between Beta 26.715 and Stable 26.721.3996.0.
  1. Combined with #35057, #35114, #35123, #35061, #35150, this looks like a single regression in the 26.721.* family: the renderer cannot mount the project/browser sidebar state for multi-root projects (process is not defined in app-initial-*.js), and the error boundary persists the failure across restarts instead of recovering.

Suggested severity: this bricks the desktop app for any Windows user who adds a second folder to a project on 26.721.*, with no in-app recovery path.