Skip to content

codex resume interactive picker hangs/freezes when session files are large; codex resume <id> works fine #25430

Open

Description

@xyx0527

codex resume interactive picker hangs/freezes when session files are large; codex resume <id> works fine

Summary

The interactive session picker launched by codex resume becomes completely unresponsive when the session list contains large .jsonl files. The UI renders the list but pressing Enter has no effect and no error is shown. Passing the session ID directly via codex resume <session-id> works correctly as a workaround.

The same symptom appears in the Codex desktop app (Windows Store): opening an existing conversation freezes the UI indefinitely, while creating a new conversation works fine. This suggests both issues share the same root cause — synchronous loading/rendering of large session history data blocks the UI thread.

Environment

Field Value
Codex CLI version codex-cli 0.135.0
OS Windows 10 Home China (running CLI via PowerShell 7)
Hardware Intel Core i9-13980HX, 32 GB RAM
Desktop App version OpenAI.Codex 26.527.3686.0 (Microsoft Store)

Session file sizes

The largest session file is ~17 MB. The picker freezes when this session is visible in the list.

rollout-2026-05-11T23-56-03-019e17c0-...  17,745,306 bytes  (last modified 2026/5/20)
rollout-2026-03-26T21-03-02-019d2a3d-...  11,095,058 bytes
rollout-2026-04-11T22-28-55-019d7cf2-...   9,076,656 bytes
rollout-2026-04-25T22-25-38-019dc508-...   8,972,159 bytes
rollout-2026-03-31T19-24-38-019d43a3-...   6,409,606 bytes
... (14 session files total)

Steps to Reproduce

  1. Accumulate several long Codex sessions over time (largest ~17 MB .jsonl)
  2. Run codex resume in PowerShell or WSL bash
  3. Interactive picker renders the session list correctly
  4. Highlight any session entry and press Enter
  5. Nothing happens — no response, no error, no session loads

Expected Behavior

Pressing Enter on a highlighted session should resume that session immediately.

Actual Behavior

  • Enter key has no effect
  • The picker remains frozen on screen
  • No error message or feedback is shown
  • CPU and memory usage remain normal (UI thread blocked, not crashed)
  • Ctrl+C is required to exit

Workaround

Passing the session ID directly bypasses the picker and works correctly:

codex resume 019e17c0-add1-7980-95d9-03fffecb18c8

Root Cause Hypothesis

The interactive picker appears to load or render session preview data synchronously on the UI thread. When session files are large (10–17 MB), this blocks input handling entirely. The codex resume <id> path skips the preview rendering step and therefore succeeds.

The Codex desktop app (Windows Store) exhibits identical behavior: existing conversations freeze the UI on open, while new conversations work fine. Both regressions appeared after recent app updates, suggesting a shared code path for session history loading was affected.

Related Issues

Activity

  1. added
    bugSomething isn't working
    CLIIssues related to the Codex CLI
    appIssues related to the Codex desktop app
    windows-osIssues related to Codex on Windows systems
    TUIIssues related to the terminal user interface: text input, menus and dialogs, and terminal display
    sessionIssues involving session (thread) management, resuming, forking, naming, archiving
    on May 31, 2026
  2. grnbtqdbyx-create commented on May 31, 2026

    @grnbtqdbyx-create
  3. Necmttn commented on Jun 21, 2026

    @Necmttn

    The picker should list from lightweight metadata and hydrate session bodies only after selection.

    A safe list row needs session id, title, cwd, model, timestamps, source file path, file size, and maybe last summary. Large JSONL bodies, tool outputs, and images can stay behind byte offsets until the user opens a session.

    That would explain why direct codex resume <id> works while the picker freezes: selection and hydration are coupled.


    Generated with ax.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    TUIIssues related to the terminal user interface: text input, menus and dialogs, and terminal displayappIssues related to the Codex desktop appbugSomething isn't workingperformancesessionIssues involving session (thread) management, resuming, forking, naming, archivingwindows-osIssues related to Codex on Windows systems

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions