Windows Desktop remote SSH task resume sends empty path after reconnect
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 42/100
Research direction
Start by reading the linked AbsolutePathBuf implementation and the app-server v2 protocol definitions, then trace the thread/read and thread/resume entry points involved in the reported sequence. Reproduce the reconnect flow with a remote macOS task and confirm completion by selecting it after restart without an empty-path resume warning.
Written by the indexing model from the issue text.
Description
Windows Desktop remote SSH resume sends an empty path after reconnect
Environment
- Windows Codex Desktop: Microsoft Store build
26.707.9981.0 - Bundled Windows app-server:
0.144.2 - Remote macOS app-server:
0.144.5 - Transport: Codex Desktop's supported SSH connection and official project/task operations
The Microsoft Store reported no newer signed build on 2026-07-17.
Symptom
A completed remote SSH task opens during its creation session. After a normal
Windows Codex restart or app-server reconnect, selecting that task can emit the
same toast more than once:
Failed to resume task
Invalid request: AbsolutePathBuf deserialized without a base path
Official thread/read still succeeds and returns the intact history, the remote
host, and an absolute macOS working directory. Project enrollment also remains
healthy.
Reproduction
- Enroll a macOS project through Codex Desktop's supported SSH connection.
- Create a task through the official project/task operations and let it finish.
- Normally close and reopen Windows Codex, or reconnect its app-server.
- Select the completed remote task.
- Observe the resume warning even though official
thread/readsucceeds.
Sanitized logs show this sequence:
maybe_resume_started previousResumeState=needs_resume
thread/read errorCode=null
thread/resume errorCode=-32600
Invalid request: AbsolutePathBuf deserialized without a base path
Packaged renderer evidence
The signed renderer creates or reloads the remote conversation with
rolloutPath: "". Its metadata read updates the store with the path returned by
thread/read, but the subsequent resume request is built from the stale local
conversation object and effectively sends:
path: localConversation?.rolloutPath ?? null
Because an empty string is not null, the request carries path: "". The
app-server's optional AbsolutePathBuf field correctly rejects that empty path.
The expected client behavior is to omit/null a blank path or use the path from
the successful thread/read result.
Impact and current mitigation
The task transcript is not corrupt. An official read-only same-owner follow-up
can load the task for the current app-server session, but the failure returns
after a later reconnect. Replacement tasks can acquire the same state.
There is no supported permanent local repair in the affected signed build. Do
not patch the ASAR, edit private Codex state, invent a rollout path, rerun project
enrollment, or use a raw transport. Use official read_thread as the
authoritative result path and describe the follow-up only as session-scoped.
Permanent acceptance requires a newer signed OpenAI build. Create and complete
a fresh remote Mac task, normally restart Windows Codex with no active task, and
confirm that selecting the completed task produces no resume warning.
Related official sources
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- Avg merge
- 1m
- Merged PRs (30d)
- 1k
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.
More from openai/codex
-
enhancement remote
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
bug CLI windows-os
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
macOS sandbox blocks hw.optional.arm64 sysctl, causing Flutter to misdetect Apple Silicon as x64 Openbug CLI sandbox
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug CLI TUI
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
-
CLI config enhancement skills
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
kwakseongjae/auto-hwp#319 ·
-
area:cli bug filter-quality good first issue priority:medium
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
bevyengine/bevy#25861 ·
-
comp-datalake
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
ClickHouse/ClickHouse#121222 ·
-
A-linter
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
oxc-project/oxc#26863 ·