[macOS] Forked task rejects Realtime Voice while the parent task starts successfully
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)?
Installed macOS application bundle: 26.901.51231 (build 8109). Bundled Codex CLI: 0.153.4.
What subscription do you have?
ChatGPT Pro.
What platform is your computer?
macOS 26.5.2 (build 25F84), Apple Silicon. uname -mprs: Darwin 25.5.0 arm64 arm.
What issue are you seeing?
Starting Realtime Voice in a manually forked task fails immediately with:
Voice chat couldn’t start
thread <fork-thread-id> does not support realtime conversation
Starting Voice in the original parent task succeeds in the same running desktop app. The distinction here is acceptance of the voice connection; the parent also has a separate transcript/tool-delivery problem described in #39686.
This concerns starting Voice after an ordinary task fork, rather than Voice unexpectedly creating a fork.
What steps can reproduce the bug?
Observed sequence on September 8, 2026:
- Fork an existing local project task using the desktop app.
- Continue the fork with ordinary text messages. Text turns complete normally.
- Start Voice in the fork. The error above appears.
- Return to the original parent task and start Voice. The call opens successfully.
The affected fork was verified to reference that parent in its persisted metadata. The fork used the OpenAI provider and gpt-6-astra. Voice startup selected gpt-live-1-codex, protocol v3, WebRTC, on the local host.
This is one observed parent/fork comparison, not a claim that every fork is affected.
What is the expected behavior?
A fork should remain eligible for Voice when the parent is eligible. The desktop app should preserve or initialize the required voice capability before offering to start the call.
Additional information
Sanitized desktop-log excerpts, UTC:
2026-09-08T15:08:02.295Z fork: thread/realtime/start -> errorCode=-32600
2026-09-08T15:08:02.309Z fork: "thread <fork-thread-id> does not support realtime conversation"
2026-09-08T15:14:15.440Z parent: thread/realtime/start -> errorCode=null
2026-09-08T15:14:16.443Z parent: realtime_session_started
The exact error matches the !thread.enabled(Feature::RealtimeConversation) check in the public 0.153.1 source. This is a diagnostic lead, not proof of why the installed 0.153.4 fork lost or failed to initialize the capability.
In-app feedback was submitted for the failed fork. Feedback ID: 01a08185-1a99-7041-8de9-4130e8f36d6e.
Related but different: #39269 concerns the context/model of a Voice-created fork; #36050 concerns the Voice shortcut creating a fork and archiving the original. Here an ordinary fork exists and works in text, but rejects Voice startup.
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 with codex-rs/app-server/src/request_processors/turn_processor.rs at the mentioned Feature::RealtimeConversation check, then trace how an ordinary fork initializes or preserves that capability. Reproduce the parent/fork sequence and compare the realtime startup logs; done means an eligible fork accepts Voice without regressing the parent behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, rust
- Domain
- audio-video-rtc, desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100