Repository navigation
Keep folder Git upgrades responsive and recheck project ownership - #26791
Merged
nwparker merged 20 commits intoOct 10, 2026
Merged
Conversation
Share repository discovery decisions across synchronous compatibility callers and the existing asynchronous Git runner. Await discovery in project registration, nested imports, and folder upgrades, and recheck folder ownership after discovery completes.
…pc-audit-local-1008
…to nwparker/win-issues-ipc-audit-local-1008
This was referenced Oct 9, 2026
…pc-audit-local-1008
…/folder-repository-upgrade-async-task1cc89eeb
…/folder-repository-upgrade-async-task1cc89eeb
nwparker
changed the base branch from
nwparker/win-issues-ipc-audit-local-1008
to
main
October 10, 2026 09:01
9 tasks done
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.
ELI5
A folder opened in Orca becomes a Git project when Git appears, preserving the same project and workspace.
What Changed
The existing folder watcher awaits the shared async Git classifier. After that wait it rereads the stored project and checks its identity, path, kind and execution host before updating it; removed or replaced projects cannot receive a late upgrade. This retains the existing watcher lifecycle and excludes SSH/WSL upgrades through the established guards.
Why
Awaiting Git removes the blocking subprocess. Rechecking ownership after the wait closes the new asynchronous race without adding another watcher or store.
Linked Issue
Related to #20497. Based on #26760; merge it first. #26790 is independent.
Visual Proof
Fresh final-head macOS hidden-renderer captures: the same project/workspace before and after external Git initialization. IDs are asserted by the test. The OS picker result is supplied by the established fixture.
Fresh hidden Windows combined-stack run, with both IDs asserted by the test:
The additional hidden Windows check also confirms the real Open as Folder confirmation renders after its animation settles:
Testing
Final head
30c19a727f7173f381de3df55204b192f488bf06, base #26760 at1fdc56bf558c.pnpm tcand changed-code quality pass.18159658119f1000e339200feaa8b3ad49f028e4matches the expected manifest; fresh install and CLI/Electron builds pass. The shipped rendered folder-promotion test passes as part of four shipped Windows tests; two classifier/routing checks also pass. This is a combined-stack validation, not a standalone branch checkout.Review
Low incremental code merge risk with ownership/lifetime tests. Filesystem metadata fallback remains synchronous. Native OS picker/focus tests, release packaging and real SSH/WSL folder upgrade are not claimed. Final-head CI passes, including Windows packaging. The auxiliary Windows fixture later reported lockfile drift; its diff was unavailable, so exact post-install dependency reproducibility is unverified.
Agent skill upstream boundary
Checklist