Android Remote: new voice chats fail to initialize and leave unopenable tasks with missing rollouts
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
Problem
Starting a brand-new voice chat from ChatGPT Remote on Android shows "Failed to initialize voice". Each retry creates another "New voice chat" entry in the Windows desktop app, but opening those entries fails because the referenced rollout file does not exist.
Starting a new voice chat on the Windows desktop instead succeeds, and that desktop-created session can then be used from the same phone.
Environment
- Windows desktop host
- Android ChatGPT Remote client (host logs identify
codex_chatgpt_android_remote) - Desktop client version in logs:
26.908.40834 - Windows MSIX package version:
26.908.4834.0 - Bundled Codex CLI:
0.154.0-alpha.6.2 - Android app version was not captured
Reproduction
- Connect Android ChatGPT Remote to the running Windows desktop host.
- Start a brand-new voice chat from the phone.
- Observe "Failed to initialize voice."
- On the desktop, observe a newly created "New voice chat" entry.
- Open that entry. The desktop reports:
Failed to resume chat
failed to resolve rollout path
<CODEX_HOME>/sessions/<date>/rollout-<timestamp>-<thread-id>.jsonl:
file does not exist
- Repeat the phone attempt. Additional unusable voice-chat entries appear.
- As a comparison, create a new voice chat on the desktop and connect to that session from the phone. This works in the observed session.
Read-only diagnostic evidence
For one failed phone-created task and the successful desktop-created task immediately afterward:
- The phone's
thread/startcreates a fresh task on the local Windows host. - Approximately two seconds later, the phone resumes that task while it has no active turn.
- A
RealtimeConversationCloseand an archive request follow. NoRealtimeConversationStartfor the failed task was found in the inspected core logs. - The task has an entry in the local state database, but its referenced rollout file is absent. No alternate file with that task ID was found in the active or archived session directories.
- Opening the failed task on desktop returns JSON-RPC
-32600withfailureReason=rollout_not_found. Reading that exact task through the task-history interface returnsinvalid paginated history lineage ... missing source rollout. - About twenty seconds after the failed phone creation, desktop creation reaches
RealtimeConversationStartand succeeds. - No explicit configuration-parse, permission-denied, or rollout-write failure was found in the inspected warning/error window.
This narrows the observed failure to the mobile startup sequence before core realtime initialization. The missing rollout may be a consequence of aborted initialization. The trace does not yet establish the internal root cause or prove a persistence race.
Expected behavior
Starting voice from Remote should create and initialize a usable session, or provide an actionable error and cleanly reconcile the incomplete task. Repeated failures should not leave entries that cannot be opened because their saved history never became available.
Related permissions symptom
Voice has also displayed the Custom permissions preset unexpectedly. #38790 already documents Voice changing an explicit permission configuration. The relationship between that behavior and this mobile initialization failure is unconfirmed; the successful desktop voice attempt used the current configuration too.
Privacy
Paths and identifiers above are placeholders. No account details, device names, local usernames, IP addresses, task IDs, conversation contents, raw logs, or original screenshots are included.
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 Android Remote startup sequence around the phone's thread/start request, the subsequent resume with no active turn, and RealtimeConversationStart. Compare the failed phone-created task with the successful desktop-created task using the task-history result and rollout-not-found evidence; done means new Remote voice sessions initialize usable history or cleanly reconcile failed tasks.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100