[desktop] read_thread/wait_threads returns items=[] for completed turns visible in UI
Nobody has claimed this yet.
- 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?
- Complete a short turn in an existing local task.
- Confirm its final assistant response is visible in the desktop UI.
- From another task, use the supported cross-task read/wait surface for the completed task.
- Observe
status=completed,error=null, anditems=[]. - 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, andthread/items/listcalls 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
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 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