Files
orca/config
Jinwoo Hong cc5cbc014a feat(layout): draw local and SSH layouts from main's layout stream behind the layout-owner build switch (#29221)
* feat(layout): add the dark layout.apply channel and route pane splits through main behind ORCA_LAYOUT_OWNER

A build made with ORCA_LAYOUT_OWNER=main registers layout.apply: main applies the
window's layout command to the stored partition through the shared applyLayoutCommand,
minting new ids. A user split then waits for main's answer and mounts the pane id main
minted. Every other build substitutes 'window', so neither branch is compiled in.

* fix(layout): write only the records a layout.apply command touched

A load-then-save rewrite also normalizes records the command never touched. The command's
effect is now the diff between the save before and after it, written onto the stored
partition record by record. A split whose main reply says a paired server holds the tab
splits as today.

* fix(layout): write a load-supplied record whole and check that patched partitions reload to the command's result

* fix(layout): leave a split to today's path only when the workspace's row names a paired server

The split switch point asked which host to route to with a helper that falls back to the focused
server, so a focused server could claim a workspace whose row names no owner. Use the same owner
test the tab mirror uses.

* test(layout): type the split owner mock without a cast

* feat(layout): draw local and SSH workspace layouts from main's layout stream behind ORCA_LAYOUT_OWNER

* fix(layout): keep the frame sync out of window-owned builds' live code

* fix(layout): keep each row's live terminal binding and pane state across frames

* chore(layout): count the frame applier's layout writes and drop test casts

* fix(layout): hold frames while any save is owed, scope the view read-back to rebuilt workspaces

* fix(layout): keep the frame sync's module init out of window-owned builds

* docs(layout): name the read-back bucket and the failed-save hold
2026-10-15 14:55:51 -07:00
..