feat(workspace): wire RemoteRepoNavigated to register remote repos (5c-2c-ii) - #71
Merged
Conversation
…c-2c-ii) Completes the remote code-review wiring: when a remote (SSH) pane navigates into a git repository, the repo is registered so the code-review panel lists it and builds a remote-backed DiffStateModel. - Threads `is_git` (already on RemoteServerManagerEvent::NavigatedToDirectory) through the RemoteRepoNavigated event chain (terminal view → PaneEvent → pane_group Event → workspace). - The workspace handler, when is_git, bridges the event's warp_core HostId to the warp_util family and registers the repo root in both DetectedRepositories (register_remote_repo_root — so get_root_for_lor_path resolves it) and WorkingDirectoriesModel (register_remote_repo, mapped to the pane's active session terminal — so RepositoriesChanged fires and the panel lists it). The existing file-tree remote-root behavior is unchanged. End-to-end chain now closed: remote git nav → is_git → register → panel lists the remote repo → select → get_or_create_diff_state_model(Remote) → new_remote → RemoteDiffStateModel → GetDiffState → daemon snapshot + live push. Verified: full warp lib 3913/0/33 (no regression across terminal/pane_group/ workspace). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012gDYSHa4oDvQbfungWwG1h
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.
Completes the diff-state-over-SSH feature end-to-end. When a remote (SSH) pane navigates into a git repository, the repo is now registered so the code-review panel lists it and builds a remote-backed
DiffStateModel.is_git(already onRemoteServerManagerEvent::NavigatedToDirectory) through theRemoteRepoNavigatedevent chain (terminal view →PaneEvent→ pane_groupEvent→ workspace).is_git, bridges the event'swarp_coreHostIdto thewarp_utilfamily and registers the repo root in both:DetectedRepositories::register_remote_repo_root(soget_root_for_lor_pathresolves it), andWorkingDirectoriesModel::register_remote_repo(mapped to the pane's active session terminal — soRepositoriesChangedfires and the panel lists it).End-to-end chain now closed
remote git nav →
is_git→ register → panel lists remote repo → select →get_or_create_diff_state_model(Remote)→new_remote→RemoteDiffStateModel→GetDiffState→ daemon snapshot + live push.Verification
warplib 3913 / 0 / 33 (no regression across terminal / pane_group / workspace)🤖 Generated with Claude Code