openai / openai/codex

Windows: follow-up message submission spins indefinitely after first turn; switching chats resets spinner

Open
#46,824 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app app-server bug windows-os
Dominant language
Rust
Stars
125k
Forks
19.5k
PR merge metrics
PR metrics pending

Description

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

Windows installed package: OpenAI.Codex 26.915.4065.0; desktop log release: 26.915.31945 (About dialog version not separately verified).

What subscription do you have?

Signed in with ChatGPT; subscription tier not collected during diagnosis.

What platform is your computer?

Microsoft Windows NT 10.0.26200.0 x64

What issue are you seeing?

Repeated intermittent Windows desktop issue: the first turn completes normally, but clicking Send for a follow-up leaves the send button spinning indefinitely and the message does not appear in the conversation. Switching to another chat and back clears the spinner; clicking Send again repeats the problem. It can recover later without an identified fix.

Observed incident: 2026-09-20 21:40–21:43 Asia/Shanghai (13:40–13:43 UTC). Affected thread ID: 01a0bf05-5776-71b3-ae34-4f0788007fe1.

Log/history evidence (times below are UTC):

  • 13:41:19: thread/resume succeeded; latestTurnStatus=completed, turnCount=1.
  • 13:41:30–13:42:50: repeated navigation away from and back to the affected thread.
  • 13:42:37.897: thread/settings/update succeeded, durationMs=10.
  • 13:42:59.750: thread/settings/update succeeded, durationMs=8.
  • No turn/start response for this thread was found during 13:40–13:43, and no new turn from that interval appeared in its history. This does not prove that no request was ever emitted.
  • 14:00:57.500: turn/start finally succeeded again, durationMs=52.

This points toward a submission/pre-turn client wait or state issue, but the root cause is not confirmed.

What steps can reproduce the bug?
  1. Open a local project chat and submit a first message.
  2. Wait until the assistant finishes.
  3. Enter a follow-up and click Send.
  4. During the intermittent fault, the button spins and the message is not added to the chat.
  5. Switch to another chat, then return: the spinner disappears.
  6. Click Send again: it spins again without submitting.

This has happened multiple times, but is not currently reproducible on demand. The affected chat had one completed turn at the incident time. Token/context usage at the incident was not captured.

What is the expected behavior?

Follow-up messages should start a new turn after the previous turn completes. If submission fails or a prerequisite cannot finish, show an actionable error and clear the pending state so retry works. Navigating away and back should not merely hide an unresolved submission state.

Additional information

Related observations, NOT established causes:

  • During app initialization at 13:41:12 UTC: App server request queue is full; queuedInteractiveRequestCount=64, mainly thread/attachment/list. Later settings requests were fast, so queue saturation alone does not establish the cause.
  • Conversation state not found for the affected thread appeared in avatarOverlay, not evidence by itself of missing state in the main window.
  • openai-api-key-local-confirmation MCP repeatedly failed with: MCP startup failed: handshaking with MCP server failed: connection closed: initialize response. The same MCP failure also occurred at 14:00:57 when a new turn successfully started, so failure alone is insufficient to explain the hang.
  • Other desktop logs include ResizeObserver loop completed with undelivered notifications, with no established causal link.
  • followUpQueueMode="queue"; a local system proxy is enabled. No causal link to either setting was established.
  • The in-app / Feedback menu was also attempted afterward: selecting Feedback dismissed the menu and returned to the ordinary empty composer without showing a feedback form.

Please investigate the submission flow between thread/settings/update and turn/start, pending-state cleanup on navigation, and readiness/state reconciliation after a completed first turn. Full business conversation transcripts and credentials are intentionally omitted.

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 Windows desktop submission flow from thread/settings/update to turn/start after a completed first turn, including how navigation handles pending state. Reproduce or instrument the intermittent spinner, then verify that a failed prerequisite surfaces an actionable error, clears pending state, and allows retry without switching chats.

Written by the indexing model from the issue text.

Assessment

Tech stack
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.