Codex Desktop review pane shows empty diffs for committed last-turn edits while chat card still shows changed files

Open 💬 2 comments Opened Jul 5, 2026 by rgiersig

Component

Codex Desktop app on Windows

Version

Windows package: OpenAI.Codex_26.623.13972.0_x64__2p2nqsd0c76g0

Summary

After Codex edited three Markdown files, committed the changes, pushed them, and verified that the Git working tree was clean, the conversation still showed a "3 files edited" card with non-zero line counts. Clicking Review opened the review pane, but each listed file showed +0 -0 and No contents.

This is confusing because the chat-side edited-files summary still presents the changes as reviewable, while the review pane renders an empty working-tree diff.

Reproduction

  1. In Codex Desktop on Windows, run a local thread in a Git repository.
  2. Have Codex edit multiple files.
  3. Have Codex commit and push those edits.
  4. Confirm from the terminal that the repository is clean:
  • git status --short --branch shows only the branch/upstream line.
  • git diff, git diff --cached, and git ls-files -m are empty.
  1. In the Codex conversation, observe that the previous assistant message still displays an edited-files card with the edited files and non-zero added/deleted line counts.
  2. Click Review on that card.

Expected behavior

Either:

  • the chat-side edited-files card should clearly indicate that the changes were already committed/pushed and are no longer present in the working tree, or
  • Review should show the last-turn/committed diff that the card is summarizing, or
  • the Review button should not imply that there is still a non-empty working-tree diff to review.

Actual behavior

The chat-side card displayed three edited files with non-zero stats, but the Review pane listed the same files with +0 -0 and No contents for each file.

Local verification

Git reported a clean tree after the commit/push:

git status --short --branch
## master...origin/master

git diff --numstat
# empty

git diff --cached --numstat
# empty

The last commit did contain the expected three-file diff:

3 files changed, 49 insertions(+), 13 deletions(-)

The line counts shown in the chat-side card did not exactly match the final commit stats, suggesting the card may be using internal edit telemetry from the turn while the Review pane uses the live uncommitted Git diff.

Notes

I am intentionally not attaching screenshots because they include local/private project names. The visible UI state was: conversation card shows edited files and non-zero line counts; Review pane shows the same file list with +0 -0 and No contents.

View original on GitHub ↗

1 Comment

rgiersig · 1 month ago

Additional screenshot detail from the reporter:

Screenshot 1 shows the assistant message after the commit/push/readback step. It contains:

  • text saying commit 05c23a6 was pushed to origin/master and roland/master and readback-verified;
  • three artifact/file cards for:
  • codex-environment.md
  • git-and-projects.md
  • nightly-crunch-up.md
  • below that, an edited-files card saying 3 Dateien bearbeitet with aggregate stats +64 -28;
  • per-file rows showing:
  • .../memory/codex-environment.md +33 -8
  • .../memory/git-and-projects.md +13 -7
  • .../memory/nightly-crunch-up.md +18 -13
  • the card still offers Rückgängig machen and Überprüfen.

Screenshot 2 shows the Review pane opened from that card. It is in the Letzter Durchlauf view and lists the same three files, but each file row shows +0 -0 and the expanded content area says Keine Inhalte.

So the visible inconsistency is not just that the working tree is clean; it is that one UI surface still presents the last assistant run as having reviewable edits with non-zero per-file stats, while the Review pane for the same run renders those same files as empty diffs.

I attempted to add the PNG files through gh, but gh issue comment has no attachment support and gh gist create rejected the PNGs as binary files. I am not automating a logged-in browser session just to upload attachments, but the screenshots are available from the reporter and can be attached manually if needed.

Showing cached comments. Read the full discussion on GitHub ↗