[BUG] Patch approval diff is empty in app-server-backed TUI Ctrl+A review
What version of Codex CLI is running?
0.117.0-0.121.0
What subscription do you have?
GPT PLUS
Which model were you using?
ALL
What platform is your computer?
MacOS 13.7.8 and Debian12-13
What issue are you seeing?
In the app-server-backed TUI, patch approval requests can open with an empty diff body.
When a patch approval is shown and I press Ctrl+A to open the fullscreen diff review, the review pane does not display the patch content even
though the file-change content exists elsewhere in the TUI.
<img width="893" height="594" alt="Image" src="https://github.com/user-attachments/assets/ec686e45-2eed-47bd-b99e-22b5dc545918" />
<img width="893" height="594" alt="Image" src="https://github.com/user-attachments/assets/443ab841-0df4-4a54-b9ff-db6acb7a9aae" />
<img width="893" height="594" alt="Image" src="https://github.com/user-attachments/assets/48472ec0-2f81-4126-b727-5c5815547388" />
What steps can reproduce the bug?
- Open Codex in any workspace directory.
- Ask Codex to create a file, for example
context.txt. - Let Codex write any content into that file.
- Wait for the patch approval prompt to appear.
- Press
Ctrl+Ato open the approval review.
Actual result:
- The approval review does not show the patch diff content.
- The diff body is empty even though Codex is proposing file changes.
Expected result:
- The approval review should display the actual patch diff for the pending file change.
What is the expected behavior?
_No response_
Additional information
I investigated this issue locally and prepared a fix that restores patch diff content in the app-server-backed TUI approval flow.
The fix covers both:
- the active-thread approval path
- the inactive-thread / buffered approval path
I also added regression coverage and verified the fix locally.
I understand that external pull requests are invitation-only in this repository. If this approach aligns with the intended solution, I would
appreciate an invitation to open a PR and submit the fix formally.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗