openai / openai/codex

Android Remote: new voice chats fail to initialize and leave unopenable tasks with missing rollouts

Open
#45,157 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

app app-server bug remote windows-os
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

  1. Connect Android ChatGPT Remote to the running Windows desktop host.
  2. Start a brand-new voice chat from the phone.
  3. Observe "Failed to initialize voice."
  4. On the desktop, observe a newly created "New voice chat" entry.
  5. 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
  1. Repeat the phone attempt. Additional unusable voice-chat entries appear.
  2. 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/start creates a fresh task on the local Windows host.
  • Approximately two seconds later, the phone resumes that task while it has no active turn.
  • A RealtimeConversationClose and an archive request follow. No RealtimeConversationStart for 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 -32600 with failureReason=rollout_not_found. Reading that exact task through the task-history interface returns invalid paginated history lineage ... missing source rollout.
  • About twenty seconds after the failed phone creation, desktop creation reaches RealtimeConversationStart and 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

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 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.