fix: follow upstream native Linux open targets - #74
Draft
zhuziqi97 wants to merge 2 commits into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Upstream Codex app changes
Recent upstream Codex app releases changed the open-target implementation in the desktop main bundle.
At validation time,
upstream/mainwas atc74e53d, and the prod appcast pointed to26.730.61639(build6234). The upstream bundle now provides native Linux targets for VS Code, VS Code Insiders, Cursor, Zed, Terminal, and File Manager.The upstream implementation also provides executable detection with
.desktopfallbacks,.desktoplaunching throughgio launch,$VISUAL/$EDITORhandling,nvim/vim/nano/lessfallbacks, line/column location handling, and theget-target-command→targetMetadata→detectedCommanddispatch chain.This upstream implementation now covers the Linux open-target responsibilities previously implemented by this project.
Why issues #72 and #73 failed
Issues #72 and #73 were caused by the same obsolete local patch contract:
26.730.61309, build622326.730.61639, build6234Both canary runs failed during the build phase with:
The legacy patch expected an older minified
targets:[...map(...)]structure. Upstream changed the target registry and preferred-target metadata projection, so that expression no longer exists.At the same time, the latest upstream bundle already contains native Linux target support. The failure was therefore caused by a stale local injection contract, not by missing Linux functionality in Codex. The two issues are the same incompatibility reproduced by consecutive prod releases.
Changes in this branch
open-target-dispatchercontract and internal export.26.616fixture.Test and validation results
Automated tests
git diff --check: passedFull canary
26.730.61639/ build6234: passed26.727.40816/ build6066: passedok: truefailures: []Local-only retirement audit
The official raw prod bundle and the repacked prod/beta Linux
app.asarbundles were audited locally. All checks passed for:vscode,vscodeInsiders,cursor,zed,terminal, andfileManagertargets..desktopeditor fallbacks..desktoplaunching throughgio launch.$VISUAL/$EDITORhandling and terminal editor fallbacks.__codexLinux*open-target markers.This audit is intentionally local-only because it depends on the exact upstream minified bundle. The generated evidence file is ignored and is not added to CI.
Review focus
Please verify that:
open-target-dispatchercontract.