Skip to content

fix(web): complete editor opening for same-home services - #1

Merged
binjamshid merged 3 commits into
binjamshid:fix/open-in-same-home-servicefrom
jdd-canada:fix/31358-home-id-retry
Nov 7, 2026
Merged

binjamshid merged 3 commits into
binjamshid:fix/open-in-same-home-servicefrom
jdd-canada:fix/31358-home-id-retry

Conversation

@jdd-canada

@jdd-canada jdd-canada commented Nov 7, 2026 •

Copy link
Copy Markdown

This contributes to pingdotgg#31358, against its existing branch. With Local environment disabled, a paired same-home service can still lose editor opening after the locality fix: a first missing home ID stays cached for the page, the chat picker and editor list depend on an absent desktop primary, and the file preview has a separate primary-only gate that hides its editor button.

Retry a missing home ID when the bearer connection presentation changes, retain successful reads, and discard reads from an invalidated atom. SSH media errors no longer initiate the home lookup. Keep the picker available without a desktop primary and use the selected environment's editor list. Chat and file previews now share the same visibility rule, while chat retains its project-presence check. Desktop-managed secondary environments retain the existing visibility behavior.

Verification:

  • The new missing-ID recovery test fails on parent 825159c and passes with the correction. The service-without-primary picker case likewise fails before its fix. Editor-list tests cover isolation between environments and config refresh.
  • The file-preview browser regression fails on e100c94 before the shared rule is applied. It now verifies that the preview's editor button is enabled and targets the selected file. All three file-preview browser tests pass.
  • vp run check:changed origin/pr-31358 --concurrency 2 passes format, lint, both knip checks, typecheck, 125 tests across ten files, and six React Compiler checks.
  • Backported the original fix and these corrections to stable v0.1.5 and built a Linux AppImage. A native Electron test under Xvfb paired it to a separate v0.1.5 server using the same isolated T3 home with Local environment disabled. The home-ID IPC matched, the Open in VS Code action was enabled, and clicking it invoked a recorder executable named code with the selected workspace path. This automated check verifies the launch path with a recorder. I also verified the installed backport manually on my workstation and confirmed that the real editor opens successfully.

The current packaged backport is 0.1.5+local.31358.3. Its native integration test also received a completed response from the repository's ACP mock agent, ran its shell code through the play button, and followed its absolute file link outside the workspace. The preview's own VS Code button was enabled and invoked the recorder with that file's path. The shell printed T3_PLAY_ICON_OK in T3's zsh terminal and wrote its receipt in the selected workspace. No paid provider was used.

Native screenshots

All captures use stable v0.1.5 on Linux under Xvfb, a separate server and desktop profile sharing an isolated T3 home, and Local environment disabled. The editor-menu pair compares the unmodified stable desktop with the initial backport (local.31358.2, the original PR plus the first two corrections). The file-preview pair below compares that initial backport with the current local.31358.3 build.

Before: disabled action and no SSH route After: enabled local editor choices
Unmodified stable desktop showing No SSH route to the same-machine service Stable desktop with both fixes showing enabled VS Code and Files choices

Clicking Open in VS Code invoked the recorder executable with the selected workspace path. The terminal capture below shows a completed response from the repository's ACP mock agent and the result of clicking its play icon: T3's zsh terminal printed the marker and the command wrote its receipt in the selected workspace.

The file-preview comparison exercises the returned file-link flow. The initial backport (local.31358.2) displays the file but hides its editor button; the updated backport (local.31358.3) displays that button and successfully targets the file.

Preview before the shared visibility rule Preview with the shared visibility rule
Initial backport showing the file preview without its editor control Updated backport showing the file preview editor control after opening the file

Returned assistant shell command executed from its play icon in T3's terminal

Implementation: GPT-6.1 Sol in T3 Code through the Codex harness.

JD added 2 commits November 7, 2026 07:29
Retry the home identity lookup when a bearer connection changes instead of caching an absent file for the page lifetime. Keep successful identity reads cached and avoid starting the lookup for SSH media errors.

Verification: check:changed origin/pr-31358 passed; 35 focused tests and 2 React compiler checks passed.
Keep the editor picker available for a same-home service when the desktop has no primary backend. Read editor availability from the selected environment instead of the missing primary.

Verification: check:changed HEAD passed, including picker visibility, scoped editor lists and React compiler checks.
Use one environment visibility rule for chat and file previews so a same-home service retains its editor action without a desktop primary. Add a browser regression for opening the selected preview file.

Verification: check:changed HEAD passed, including the browser regression and React Compiler checks.
@binjamshid
binjamshid merged commit e18fb8f into binjamshid:fix/open-in-same-home-service Nov 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants