VS Code extension queued follow-up messages sometimes disappear before transcript delivery
What happened?
In the Codex VS Code extension, follow-up messages queued while Codex is actively working sometimes disappear before they are delivered to the chat transcript.
From the user side, the composer accepts the message and appears to queue it, but the message later vanishes. The message never appears in the transcript, and the agent does not receive it.
This happened multiple times in one session. It occurred both when pressing Enter and when clicking the Send button, so it does not appear to be limited to keyboard handling.
Expected behavior
Queued follow-up messages should persist and be delivered on the next turn, or the UI should show an explicit failure without clearing the draft.
Actual behavior
The queued message sometimes disappears and never appears in the transcript. In some cases, a later queued message appears to overwrite or replace the previous queued message; in other cases, queued messages append as expected.
Relevant logs
From the Codex extension log:
2026-07-04 20:17:43.880 [warning] [IpcClient] Received broadcast but no handler is configured method=thread-queued-followups-changed
2026-07-04 20:17:43.924 [warning] [queued-followups] Failed to release send lock conversationId=019f2ead-049d-7813-8cf3-12485edd7d7d error={}
The logs also show many repeated warnings like:
[IpcClient] Received broadcast but no handler is configured method=thread-stream-state-changed
And extension-host errors earlier in the same session:
PendingMigrationError: navigator is now a global in nodejs
TypeError: this.diffPanel.dispose is not a function
Error: Channel has been closed
Environment
- Codex VS Code extension:
openai.chatgptversion26.623.101652 - Display name:
Codex – OpenAI’s coding agent - Codex CLI:
codex-cli 0.142.5 - VS Code remote/server setup
- Remote extension host platform: Linux x64
- Client target platform seen in logs:
win32-x64 - Extension setting defaults from package metadata:
chatgpt.followUpQueueMode:queuechatgpt.composerEnterBehavior:enter
Workaround
Avoid queued follow-ups and use steering instead. Setting chatgpt.followUpQueueMode to steer appears like the safest workaround because the issue seems tied to the queued-followups path.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗