openai / openai/codex

[desktop] read_thread/wait_threads returns items=[] for completed turns visible in UI

Open
#43,468 13 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

app app-server bug
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.901.51231 (build 8109)

What subscription do you have?

Pro

What platform is your computer?

Darwin 25.6.0 arm64 arm

What issue are you seeing?

For some newly completed turns in existing local tasks, the desktop UI displays the final assistant response, but cross-task reads return the turn as completed with no error and an empty items array. Task status and update time advance, while the task summary remains stale.

The symptom was observed before and after updating/relaunching the desktop app.

What steps can reproduce the bug?
  1. Complete a short turn in an existing local task.
  2. Confirm its final assistant response is visible in the desktop UI.
  3. From another task, use the supported cross-task read/wait surface for the completed task.
  4. Observe status=completed, error=null, and items=[].
  5. Inspect the task list and observe a current status/time with an old summary.

The same result occurs with an explicit local host ID and with the host ID omitted. It also occurs for a four-second reporting-only turn, so a long response is not required.

Exact task and turn identifiers were supplied through private Codex feedback and are intentionally omitted from this public issue. Token-limit and context-window usage are unknown.

What is the expected behavior?

The cross-task result should include at least the completed turn's final agentMessage, and the task summary should refresh.

Additional information

Additional evidence:

  • The desktop renderer receives the exact turn-complete event.
  • Native thread/read, thread/turns/list, and thread/items/list calls return with no error.
  • The UI renders the final assistant response.
  • A historical turn in the same task still projects correctly.
  • No warning or error is logged around the affected completion.

This suggests the loss occurs after the native App Server response, in the cross-task projection/summary layer.

Privacy:

Exact task IDs, turn IDs, local paths, project names, prompt contents, assistant receipt contents, and raw logs are intentionally omitted. They can be supplied privately through a Codex feedback session if maintainers request them.

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 by tracing the supported cross-task read/wait surface through native thread/read, thread/turns/list, and thread/items/list responses into the desktop renderer and cross-task projection/summary layer. Compare a newly completed turn with the historical turn that projects correctly. Done means completed cross-task reads include the final agentMessage and the task summary refreshes without errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
api, desktop
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.