VS Code extension: full Review diff page crashes while inline diff works

Resolved 💬 14 comments Opened Jul 25, 2026 by Scheronimus Closed Aug 3, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of the IDE extension are you using?

Visual Studio Code 1.130.0, x64

What subscription do you have?

pro

Which IDE are you using?

VS Code

What platform is your computer?

Windows 10 Home, x64

What issue are you seeing?

The full Codex Review/diff page displays:

Oops, an error has occurred

The inline diff card inside the conversation renders the same change correctly.
VS Code Source Control and git diff also work correctly.

What steps can reproduce the bug?

  1. Open a valid Git repository in VS Code.
  2. Make a small uncommitted text change.
  3. Confirm that git diff displays the change.
  4. Open the Codex full Review/diff page.
  5. The Review page crashes and displays “Oops, an error has occurred.”
  6. The inline “Review changes” card continues to render correctly.

What is the expected behavior?

The full Review page displays the repository diff.

Additional information

Actual result

The full Review page hits an error boundary. Only the inline diff works.

Troubleshooting already attempted

  • Initialized and validated the Git repository.
  • Confirmed git diff works.
  • Reloaded the VS Code window.
  • Restarted VS Code.
  • Disabled and re-enabled the extension.
  • Completely uninstalled and reinstalled the extension.
  • Tested after creating a fresh filesystem change.
  • The failure persists.

Relevant log entry

At 2026-07-25 17:54:05.328:

error boundary ... editor-diff-page-DVdvmt2c.js ... name=AppRoutes

The stack trace points into:

openai.chatgpt-26.721.41059-win32-x64/webview/assets/editor-diff-page-DVdvmt2c.js

Authentication succeeds and the Git repository watcher starts normally before the crash.

Additional observations

  • The inline diff renderer works.
  • VS Code native Source Control diff works.
  • The repository has a valid initial commit and a small uncommitted README change.
  • The problem appears isolated to the full editor-diff-page webview route.

View original on GitHub ↗

14 Comments

github-actions[bot] contributor · 1 month ago

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

  • #35250
  • #35076
  • #35058
  • #35156
  • #35285

Powered by Codex Action

Scheronimus · 1 month ago

plug-in Version :
26.721.41059

ThinkWithPbody · 1 month ago

I can reproduce this on Windows 10 with VS Code connected to WSL2.

Additional observations:

  • The repository is stored on the WSL ext4 filesystem, not under /mnt/c.
  • ~/.codex is stored under the WSL home directory on ext4.
  • A fresh Codex thread and fresh file changes behave the same way.
  • Hovering over a changed file successfully renders the diff preview.
  • Clicking the changed file to open the persistent/full diff view produces “Oops, an error has occurred.”
  • VS Code Source Control and git diff work normally.
  • Restarting the computer and VS Code did not resolve it.
  • The Codex extension is on the latest stable release.

This appears isolated to the click-open/full diff UI rather than Git, WSL filesystem access, or diff generation.

naltang · 29 days ago

Additional confirmed reproduction under VS Code Remote - WSL2:

  • Codex VS Code extension: 26.721.41059 (Linux x64 remote extension)
  • VS Code: 1.131.0
  • WSL2 kernel: 6.18.33.2-microsoft-standard-WSL2, x86_64
  • Repository has an ordinary pending text diff; git status, git diff, and VS Code Source Control all work normally.
  • Clicking Review opens the full diff page and displays: Oops, an error has occurred.
  • Developer: Reload Window followed by clicking Review reproduces the same failure.

The fresh extension-host log records these consecutive events:

  • 2026-07-30 00:04:47.820: fs/readFile fails with No such file or directory (os error 2).
  • 2026-07-30 00:04:49.056: the React error boundary fires in editor-diff-page-DVdvmt2c.js.

This appears to be the same regression and confirms it is reproducible in a Remote - WSL environment, not only a native Windows extension host.

joesnyde · 29 days ago

Additional native Windows reproduction with a confirmed rollback workaround:

  • Platform: native Windows (Microsoft Windows NT 10.0.26200.0), VS Code x64
  • VS Code: 1.131.0
  • Broken Codex VS Code extension: openai.chatgpt@26.721.41059
  • Working rollback version: openai.chatgpt@26.609.30741
  • Configured model: gpt-5.6-sol, model_reasoning_effort = "medium"

Observed behavior:

  1. With 26.721.41059, clicking Codex Diff / full Review page shows Oops, an error has occurred.
  2. git diff, git diff --check, and VS Code Source Control all work normally.
  3. Reproduces with a normal tracked-file text edit; it also reproduced when the session contained a newly added Markdown test file.
  4. Reinstalling / rolling back to 26.609.30741 and pinning openai.chatgpt against auto-update makes Codex Diff work again.
  5. Re-upgrading to 26.721.41059 to enable the newer model path caused the Codex Diff error to return; running the rollback script restored Codex Diff again.

Relevant sanitized log signature from Codex.log on the broken build:

Request failed ... method=fs/readFile ... "The system cannot find the path specified. (os error 3)"
error boundary ... editor-diff-page-DVdvmt2c.js ... name=AppRoutes

This looks like the same full diff / Review page regression, and the A/B result suggests it was introduced after 26.609.30741 and is present in 26.721.41059 on native Windows
davidenitti · 29 days ago

same error on linux

owendswang · 29 days ago

I asked Codex about it and it lead me here. It has been like this for days. I'm using it via VScode extension on Windows and ssh remote linked to Ubuntu.

tangentus · 28 days ago

This is also reproduced on:

  • macOS ARM64
  • VS Code 1.131.0
  • Stable Codex 26.721.41059
  • The current pre-release
  • Log error: editor-diff-page-DVdvmt2c.js error boundary
  • Immediately preceded by fs/readFile: No such file or directory (os error 2)
jpconde-arm · 28 days ago

I'm having the same issue on:

  • Ubuntu 24.04 on x64
  • VS Code 1.131.0 (1.126.0 did not work either)
  • Codex 26.721.41059

Here's the output from the log after trying to open the diff tab (username anonymized):

2026-07-30 18:38:27.226 [error] Error fetching httpStatus=401 requestId=a2362317ceb948cd-LHR statusText=Unauthorized url=/wham/usage
2026-07-30 18:38:27.267 [warning] sa_server_request_failed attachAuth=false attachIntegrityState=false error={} hasRequestBody=false method=get requestHeaderNames=["OAI-Language"] routePattern=/wham/usage status=401 url=/wham/usage
2026-07-30 18:38:27.700 [info] [IpcRouter] I am the router
2026-07-30 18:38:27.704 [info] [IpcRouter] I am the router
2026-07-30 18:38:27.704 [warning] [IpcClient] Received broadcast but no handler is configured method=client-status-changed
2026-07-30 18:38:27.708 [info] [statsig-refresh-diagnostics] React root render requested windowType=extension
2026-07-30 18:38:27.756 [error] Request failed conversationId=none durationMs=5 error={"code":-32603,"message":"No such file or directory (os error 2)"} id=ef1a6b40-95a2-456c-a780-4df06c0e24f0 method=fs/readFile pendingCountAfter=3 priority=interactive queueWaitMs=0 source=filesystem timeoutMs=0
2026-07-30 18:38:27.889 [info] Concurrent reasoning summaries feature override resolved featureOverride=null
2026-07-30 18:38:27.925 [info] Concurrent reasoning summaries feature override resolved featureOverride=null
2026-07-30 18:38:27.928 [warning] [CodexMcpConnection] cli: message="codex_app_server::request_processors::config_processor: ignoring invalid experimental feature enablement keys: apps_mcp_path_override"
2026-07-30 18:38:27.938 [info] [remote-connections/bootstrap] shared_object_synced connectionCount=0
2026-07-30 18:38:27.943 [info] [statsig-refresh-diagnostics] ready provider mounted instanceId=1 windowType=extension
2026-07-30 18:38:27.955 [info] [remote-connections/bootstrap] shared_object_synced connectionCount=0
2026-07-30 18:38:27.967 [warning] [CodexMcpConnection] cli: message="codex_app_server::request_processors::config_processor: ignoring invalid experimental feature enablement keys: apps_mcp_path_override"
2026-07-30 18:38:27.979 [info] [remote-connections/bootstrap] shared_object_synced connectionCount=0
2026-07-30 18:38:28.260 [info] [startup][renderer] app routes mounted after 969ms
2026-07-30 18:38:28.297 [error] error boundary componentStack="\n    at R (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/editor-diff-page-DVdvmt2c.js:1:1030)\n    at L (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/editor-diff-page-DVdvmt2c.js:1:643)\n    at o (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:717:17015)\n    at I7e (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:280:3053)\n    at Y7e (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:280:7298)\n    at a$t (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:229495)\n    at c$t (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:230828)\n    at I7e (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:280:3053)\n    at Q7e (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:280:8418)\n    at Suspense (<anonymous>)\n    at qwe (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:196:33715)\n    at Inn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:604080)\n    at qwe (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:196:33715)\n    at Vnn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:605116)\n    at qwe (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:196:33715)\n    at Bnn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:604648)\n    at cu (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BR8U-Dds.js:2:46705)\n    at w4t (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:369219)\n    at f4t (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:367104)\n    at Hw (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:60:75338)\n    at kFn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:370317)\n    at NTn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:127204)\n    at Onn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:603178)\n    at jYe (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:60:79372)\n    at $Mn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:313214)\n    at wEn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:140883)\n    at Hw (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:60:75338)\n    at t (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:94:8798)\n    at k4t (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:369852)\n    at c (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:197:171381)\n    at o (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:197:170713)\n    at Okn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:206906)\n    at wkn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:201583)\n    at Skn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:199615)\n    at xkn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:198196)\n    at bkn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:197532)\n    at Y6t (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:424850)\n    at sDn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:533:152979)\n    at x4t (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3937:367794)\n    at Z7e (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:280:7488)\n    at q7e (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:280:6216)\n    at Tgt (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:118:11672)\n    at ou (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BR8U-Dds.js:2:45784)\n    at qrn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3987:13961)\n    at qwe (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:196:33715)\n    at Kwe (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:196:33550)\n    at ian (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3994:2604)\n    at qSe (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:175:70984)\n    at RDe (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-C7Xd-izh.js:197:4743)\n    at Can (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3994:5152)\n    at dVn (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:535:82994)\n    at jan (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3994:6540)\n    at Zin (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-DZH_C2c-.js:3994:823)\n    at au (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BR8U-Dds.js:2:40512)\n    at Hw (https://file+.vscode-resource.vscode-cdn.net/home/<username>/.vscode/extensions/openai.chatgpt-26.721.41059-linux-x64/webview/assets/app-initial-BKh04BVH.js:60:75338)" error={} name=AppRoutes
2026-07-30 18:38:33.256 [warning] [CodexMcpConnection] cli: message="codex_core_plugins::manifest: ignoring interface.defaultPrompt[0]: prompt must be at most 128 characters path=file:///home/<username>/.codex/.tmp/plugins/plugins/ngs-analysis/.codex-plugin/plugin.json"
2026-07-30 18:38:33.257 [warning] [CodexMcpConnection] cli: message="codex_core_plugins::remote::remote_installed_plugin_sync: remote installed plugin bundle sync failed error=chatgpt authentication required for remote plugin catalog; api key auth is not supported"
2026-07-30 18:38:33.275 [info] [git-repo-watcher] Starting git repo watcher
2026-07-30 18:38:33.283 [info] [git-repo-watcher] Starting git repo watcher
2026-07-30 18:38:33.285 [info] [git-repo-watcher] Starting git repo watcher
maroc-dev · 28 days ago

Having the same issue on CachyOs,
CachyOS: 7.1.3-2-cachyos
Codex plugin: 26.721.41059
Vscode: 1.128.0

torinonegai · 28 days ago

I can consistently reproduce what appears to be the same issue, but in a different environment.

Environment

  • VS Code Remote - WSL
  • Ubuntu 24.04
  • ChatGPT/Codex extension: 26.5727.40816-linux-x64

Behavior

  • This is not repository-specific. It happens in every Git repository I tested, including newly created ones.
  • VS Code's built-in Git diff works normally.
  • git diff works normally.
  • Opening the Codex Review / Diff page always results in "Oops, an error has occurred."

The extension log shows that authentication succeeds:

authenticatedAccountPresent=true
result=succeeded

The failure occurs while rendering the diff page:

error boundary
name=AppRoutes

.../webview/assets/editor-diff-page-*.js

I do not see any preceding fs/readFile or file-not-found errors in the extension log. It looks like the WebView crashes while rendering the Review/Diff page itself.

This reproduces across multiple repositories, so it doesn't appear to be caused by repository contents or Git state.

If it would help, I'm happy to provide the complete extension log or help test a pre-release build.

FRITS-Kh · 25 days ago

One week with a critical bug. Incredible.

etraut-openai contributor · 24 days ago

We have a fix in place for this problem. It will be included in the next release.

Syedkaif29 · 21 days ago

Still reproducible on Windows x64 with:

VS Code: 1.132.0
Codex extension: openai.chatgpt 26.727.40816

Tested inside a valid Git repository with a new untracked file.
Git, VS Code Source Control, and the inline Codex diff correctly detect
the +3-line change.

Opening the full Codex Diff page produces:
"Oops, an error has occurred"

After clicking "Try again", it changes to:
"No diff available"

Codex.log records:

  • fs/readFile: "The system cannot find the path specified. (os error 3)"
  • error boundary in editor-diff-page-CYrkK60A.js, name=AppRoutes
  • fs/readDirectory: os error 3
  • "Failed to start visualization turn diff snapshot"