[Windows][Desktop 26.803.5235.0] Git review cancellation spams Electron "Error: write EOF"; disable toggle is hidden
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- PR merge metrics
- PR metrics pending
Description
What version of the Codex App are you using?
26.803.5235.0 (Microsoft Store/MSIX)
- Bundled Chromium/Electron annotation: 151.0.7922.76
- Codex CLI doctor: 0.147.0-alpha.6.5, windows-x86_64
Platform
Windows 11 Pro 10.0.26100 x64
Issue
Codex Desktop repeatedly opens a native Electron modal:
A JavaScript error occurred in the main process
Uncaught Exception:
Error: write EOF
at WriteWrap.onWriteComplete [as oncomplete]
(node:internal/stream_base_commons:87:19)
The main app and app-server remain alive, but modal dialogs recur while Git-based Review live queries are repeatedly canceled and retried in a large local repository.
Reproduction
- Open a large/dirty local Git repository in Codex Desktop.
- Keep a local task running while the Review panel/background review-model queries refresh.
- A background
git status ... --untracked-files=nomay hit the 60-second timeout. - The Git watcher restarts and
review-summary/branch-diff-statscommands enter a cancel/retry loop. - Electron main-process
write EOFdialogs begin recurring.
Correlated log evidence
At one reproduction:
- 19:18:41.895Z: background
git statustimed out after 60012 ms - 19:19:10.068Z:
[git-repo-watcher] Starting git repo watcher - 19:19:11 local capture: Electron
write EOFmodal - follow-on review commands repeatedly canceled; some returned about 741376 bytes stdout and 13-133 KiB stderr
Git itself is not generally hung: the same status command later completed in about 1.0s and fsmonitor reported healthy. The failure appears to be in Windows child-process cancellation/pipe handling plus live-query retry behavior.
Hidden workaround regression
The installed app bundle defines:
- key:
git-review-mode - values:
full/last-turn-only - UI label:
Disable Git-Based Review - description: it disables Unstaged/Staged/Branch to avoid Git operations
Settings search finds Disable Git-Based Review, but Settings → Git does not render the toggle. The settings component appears feature-gated out.
Adding this to config.toml is accepted by strict config validation:
[desktop]
git-review-mode = "last-turn-only"
However, the running desktop process does not hot-reload it; a restart is required.
Expected behavior
- Canceling or timing out Git children should handle EOF/EPIPE without an uncaught Electron exception/modal.
- Live Git queries should back off instead of entering a cancel/retry loop.
- Disable Git-Based Review should be visible if it is indexed by Settings search.
git-review-modechanges should hot-reload, or the UI should state that a restart is required.
Privacy
Local username, repository path/content, and project media are omitted. Sanitized log excerpts and screenshots are available if needed.
Contributor 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.
Research direction
Start by tracing Windows Git child-process cancellation and the review live-query cancel/retry loop, using the reported 60-second timeout and Electron write EOF modal as reproduction signals. Then inspect the settings component gating git-review-mode; done means canceled children do not trigger an uncaught modal, retries back off, and the indexed toggle and reload behavior match the expected behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- electron, git, rust
- Domain
- desktop, devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100