openai / openai/codex

[macOS] Reopening a conversation loses recent visible history; task reader returns older turns despite newer local records

Open
#44,409 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app app-server bug session
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What version of the Codex App are you using (From “About Codex” dialog)?

26.903.61454 (build 8378), verified from the installed app bundle metadata.

What subscription do you have?

ChatGPT Pro.

What platform is your computer?

macOS 26.6.2, Apple Silicon.

Darwin 25.6.0 arm64 arm
What issue are you seeing?

When returning to an existing conversation, the user reports that recent conversation history is not preserved in the visible conversation. This prevents reliably resuming work and forces reconstruction of recent progress.

During investigation from another task, the app's task-reading tool also returned older turns as the newest available turns, even though the local session record contains many newer user messages, assistant messages, completed commands, and errors.

These are two observations to investigate together, not proof that the visible-history symptom and the task-reader discrepancy have the same cause. There is no evidence that the underlying local messages were deleted.

What steps can reproduce the bug?

User-observed UI sequence:

  1. Work in an existing conversation over multiple turns.
  2. Leave and return to the conversation.
  3. Recent history is missing from the displayed conversation.

Independent diagnostic observation from a second task:

  1. Read affected session 01a0820c-21a3-7381-9817-5dd5952beede using mcp__codex_app__read_thread, with turnLimit: 6, includeOutputs: true, and maxOutputCharsPerItem: 14000, without an older-page cursor.
  2. Response declares page.order: "newest_first", but its first turn is 01a08408-a4a8-7bb1-8d80-7b8c18d3a390, started on September 9 around 02:39 UTC, with an older video-comparison request.
  3. The same response knows the task is in systemError and reports an updated timestamp of 1789013803 (September 10, 04:16:43 UTC).
  4. Inspect the local persisted session record read-only: it contains newer September 10 conversation entries, including the user's explicit request to report missing history at 04:16:32 UTC, the assistant's acknowledgement, a successful command, and the final error at 04:16:43 UTC. These are absent from the returned latest-turn page.

The tool mismatch was observed once in this investigation. The visible-history behavior is the user's report; I have not performed an independent GUI reproduction or established its exact trigger. The session is long-running and contains context compaction events; no causal relationship to compaction has been established.

What is the expected behavior?

Returning to a conversation should restore its current persisted message history. A task reader requesting the newest turns should return the latest persisted turns, including interrupted/error turns, or explicitly explain any unavailable/incomplete history. Recent work should remain available without manually reconstructing it from local records.

Additional information

Affected session: 01a0820c-21a3-7381-9817-5dd5952beede.
Latest user report turn: 01a08988-14af-7eb1-9f7e-5239a9ddb213.

The same session has repeated Bad Request failures, reported separately in #44408. Their causal relationship to history restoration is unknown.

Related user-visible symptom: #44127. This report adds a macOS occurrence and the discrepancy between newest-first task retrieval and newer local persisted events.

Private conversation content, project files, credentials, and full raw session logs have not been attached.

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

Start with mcp__codex_app__read_thread using the affected session, turnLimit 6, includeOutputs true, and maxOutputCharsPerItem 14000, then compare its newest-first page with the local persisted session record. Check the conversation restoration behavior and task-reader ordering, including interrupted and error turns. Done means returning to the conversation and requesting newest turns both expose the latest persisted history or clearly report unavailable data.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.