Severe eye strain from full-transcript replay in long TUI sessions
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
What issue are you seeing?
Long Codex TUI sessions cause severe eye strain when the interface visibly replays the full conversation from the oldest retained history row to the latest output. The sustained, rapid full-screen movement makes it difficult to continue using Codex.
A terminal resize reliably triggers the replay. It also occurs intermittently during normal use when pending transcript repair is processed. The visible duration increases with transcript length.
Every transcript reconstruction path should preserve a stable visual frame. This applies to terminal resize, deferred reflow, streaming consolidation, proposed-plan finalization, thread switching, session resume, backtracking, raw-output mode changes, and future transcript-repair paths.
What steps can reproduce the bug?
- Run Codex CLI in Windows Terminal using the normal rich TUI.
- Continue one session until the conversation transcript is long.
- Resize the terminal window horizontally or vertically.
- Observe the retained conversation visibly replaying from its oldest row to the latest output.
- Continue using the session and observe that the same replay can occur when pending transcript repair is processed during normal use.
The resize path reproduces the issue reliably. Longer transcripts produce longer periods of rapid full-screen movement and more severe eye strain.
What is the expected behavior?
Codex should keep every transcript reconstruction visually atomic. The user should see a stable complete frame before and after transcript repair while the internal reconstruction remains invisible.
When a terminal cannot keep a long synchronized update atomic, Codex should use a fallback that preserves a stable frame without exposing row-by-row history reconstruction.
Acceptance criterion: long sessions remain visually stable across every transcript-repair trigger, with the conversation never racing from its oldest retained row to the latest output.
Additional information
Environment
- Codex CLI:
0.150.1 - Operating system: Windows 10,
10.0.19045 - Terminal: Windows Terminal
- Shell:
cmd.exe
Related implementation analysis: #38839.
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 with the related implementation analysis in issue #38839 and reproduce the resize-triggered replay in a long Windows Terminal session. Trace the transcript reconstruction paths named in this issue, including resize and pending repair, and verify that long sessions remain visually stable without row-by-row replay across each listed trigger.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100