Repository navigation
feat(app): sync server projects into web client list - #13628
BlankParticle wants to merge 6 commits into
Conversation
Hydrate the layout project state from the server project index so newly opened clients show existing projects without manual adds. Skip global project IDs during sync because they do not reconcile reliably.
32a811f to
0c26bad
Compare
bd5cf6f to
9278db1
Compare
|
Ok I checked out the logs for windows test failures, looks like there are issues with |
Run server-to-client project reconciliation once per app load to avoid sidebar churn during concurrent updates. This preserves initial project hydration while preventing Windows e2e DOM instability from repeated re-syncs.
ab0bb5e to
b74986b
Compare
d6ff682 to
3dfc11e
Compare
|
Would this also sync images etc? |
0xsarawut
left a comment
There was a problem hiding this comment.
app id:1fb75ebb-b720-5f9f-88d8-b43ca6b3532c
|
Thanks for pushing this forward. I ended up with an alternative implementation for #13626 with different semantics: a server-backed, worktree-keyed sidebar rail that syncs membership plus order only, rather than hydrating the full server project list into each client. It also adds bootstrap and migration safety plus fresh-context UI e2e coverage. I am checking with maintainers before opening it separately so I do not create unnecessary churn here. |
|
Closing as been out of date and the entire app has changed |
What does this PR do?
Hydrate the projects list from the server so newly opened clients show existing projects without manual adds, each client stores its own hidden projects array as there is no way to delete projects on api. basically its now opt out of projects instead of opt in by adding path.
Also had to add worktree path normalisation, because windows paths are weird and projects kept duplicating as we check worktree paths in the seen set
How did you verify your code works?
Tested locally by opening a new client and verifying that the projects show up.
fixes #13626