Repository navigation
fix(desktop): hydrate gateway registry from ProfileRail on mount - #101529
Open
FalconOrtiz wants to merge 1 commit into
Open
FalconOrtiz wants to merge 1 commit into
FalconOrtiz wants to merge 1 commit into
Conversation
The fleet rail read $connectionsRegistry but never loaded it, so a remote-primary cold boot painted only the active gateway until Settings published the registry. Load on mount when the atom is still null. Closes NousResearch#101257 Co-authored-by: Cursor <cursoragent@cursor.com>
Overall: Correctness:
Non-blocking nit:
Verdict: LGTM. |
Author
|
Requesting squash-merge per engineer agreement (2026-09-04): AI-review merge-ready pack; nits non-blocking; no rewrites. This PR is in the agreed pack with #101523 #101528 #101529 #101530 #101531 #101537 #101544 #101547 #101548 #101549 #101551. Out of pack (do not block this merge): #101564, #101796/#101091, #101318. |
This was referenced Sep 4, 2026
9 of 11 tasks
This branch has not been deployed
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.
Why
With a remote/SSH gateway as primary, cold boot painted only that gateway on the profile rail until the user opened Settings → Gateway. The registry already had every connection. The rail read `` but never loaded it, so fleet mode waited on another surface to publish the snapshot.
Scope
ProfileRailcallsrefreshConnectionsRegistry()on mount when the registry atom is still null.profile-rail-fleet.test.tsxfor the null-registry hydrate path (Desktop: gateway list shows only the remote gateway until Settings → Gateway is opened and closed #101257).profile-rail-connect.test.tsx.Out of scope: main-process connect-on-demand deferral, boot-path hydration in
use-gateway-boot, statusbarConnectionSwitcherbehavior.Tradeoffs
Hydrate from the rail (smallest consumer fix) instead of gateway boot. Boot hydration would cover more readers; the rail is what users see broken, and the acceptance test targets that surface.
Blast Radius
Desktop profile rail only. Best-effort IPC
connections.list; failures leave the prior single-gateway paint. No backend spawn for deferred local gateways.Verification
cd apps/desktop npm run test:ui -- src/app/chat/sidebar/profile-rail-fleet.test.tsx src/app/chat/sidebar/profile-rail-connect.test.tsx14 passed, exit 0.
Closes #101257
Made with Cursor