openai / openai/codex

Intermittent Zellij scrollback loss: transcript toggle restores scrolling only for recent output

Open
#45,747 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug CLI TUI windows-os
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What version of Codex CLI is running?

codex-cli 0.154.0 in the affected environment.

During troubleshooting, a clean Bash shell initially selected an older system-wide 0.87.0 installation. We excluded that run and repeated the test using the explicit path to the 0.154.0 installation. No configuration changes were made during these tests.

What subscription do you have?

Not confirmed for this report.

Which model were you using?

Exact model ID not captured. The observed failure concerns the CLI display and scrollback; model dependence has not been tested.

What platform is your computer?

Windows host, Ubuntu under WSL. Exact Windows build, Ubuntu release, and WSL version were not captured.

What terminal emulator and version are you using (if applicable)?
  • Windows Terminal and WezTerm; terminal versions not captured.
  • Zellij 0.44.3, normally started automatically by the shell configuration.
  • Zellij configuration has mouse_mode true and scroll_buffer_size 10000.
Codex doctor report

Not collected. Raw conversation transcripts and diagnostic dumps are not attached because they may contain private project information.

What issue are you seeing?

Scrolling intermittently stops working in the main Codex conversation view inside Zellij. When affected, neither the mouse wheel nor Zellij's own keyboard scroll mode can access the earlier conversation.

The Codex transcript view still contains the full conversation and can be scrolled with both the mouse wheel and keyboard. Opening and closing that view often restores scrolling in the main view, but only for recent content. It does not restore the earlier conversation to Zellij's accessible scrollback.

In one observed recovery, the earliest accessible main-view message was approximately where troubleshooting had started, rather than the beginning of the conversation. Zellij displayed a scroll indicator of 0/8, which subsequently grew to 0/10 as further interaction added lines. The older conversation remained inaccessible in the main view but was visible in the transcript view.

Two existing Codex sessions in separate Zellij tabs remained affected. A newly opened Codex session in another Zellij tab scrolled normally. This is therefore intermittent/session-dependent, not a failure in every fresh Zellij session.

What steps can reproduce the bug?

The initiating trigger is not yet known; the following describes the observed failure and diagnostic sequence, not a deterministic minimal reproduction:

  1. Use Codex CLI inside Zellij on Ubuntu/WSL.
  2. In an affected session, try to scroll up in the main conversation view using the mouse wheel.
  3. Enter Zellij's own scroll mode and use its keyboard scroll-up action. Earlier content is still inaccessible.
  4. Open Codex's transcript view. The full conversation is accessible and scrolling works with mouse and keyboard.
  5. Close the transcript view. Main-view scrolling often resumes, but only recent content is available; previous history is still missing from Zellij's accessible buffer.
  6. Continue interacting. The Zellij scrollback counter increases for new lines, without making the earlier conversation available.
What is the expected behavior?

The main conversation view should retain accessible scrollback during normal use. Opening and closing the transcript should not leave the main view with only a recent fragment of the conversation. Users should not have to toggle the transcript to recover scrolling.

Additional information

Tests performed:

  • The user observed the problem with both Windows Terminal and WezTerm while using Zellij.
  • A fresh Codex 0.154.0 session in a clean Bash shell outside Zellij scrolled normally in a short test.
  • A fresh session in a new Zellij tab also scrolled normally, while two already-affected sessions remained broken.
  • These fresh-session tests do not establish that a long-running session outside Zellij can never fail.
  • We did not capture terminal escape sequences or independently inspect the stored rollout. The full history being visible in the transcript is the evidence that the conversation remains accessible through Codex.
  • We have not tested --no-alt-screen as a controlled comparison in the affected sessions.

This suggests an interaction between Codex rendering/history insertion and Zellij's terminal state or scrollback handling, but no root cause has been established. In particular, we cannot yet distinguish missing history insertion from a buffer/state transition problem.

Potentially related reports:

  • #10331: Zellij scrollback failure even with --no-alt-screen; reported against an older version.
  • #30551: missing rich-history content associated with long URL-only lines; that trigger has not been established here.
  • #36864: stale viewport after switching away; this report instead observes unavailable earlier scrollback and partial recovery after toggling the transcript.

The distinctive observation here is that toggling the transcript restores accumulation/scrolling for recent output while the older conversation remains available only in the transcript. If this is the same underlying issue as an existing report, please link or merge accordingly.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file or test is named. Start by reproducing the affected-session behavior with Codex CLI 0.154.0 in Zellij 0.44.3, comparing main-view scrollback with the transcript and fresh sessions; done means the main view retains the full accessible conversation without requiring a transcript toggle.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, rust
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.