apps/server/src/git/Layers/GitCore.test.ts | 3 +- apps/server/src/git/Layers/GitCore.ts | 41 +++- apps/server/src/git/Layers/GitManager.ts | 136 ++++++++--- apps/server/src/git/Layers/GitStatusBroadcaster.test.ts | 276 ++++++++++++++++++++++ apps/server/src/git/Layers/GitStatusBroadcaster.ts | 307 +++++++++++++++++++++++++ apps/server/src/git/Services/GitCore.ts | 15 +- apps/server/src/git/Services/GitManager.ts | 31 +++ apps/server/src/git/Services/GitStatusBroadcaster.ts | 23 ++ apps/server/src/server.test.ts | 389 ++++++++++++++++++++++++++++++-- apps/server/src/server.ts | 18 +- apps/server/src/ws.ts | 83 +++++-- apps/web/src/components/BranchToolbarBranchSelector.tsx | 70 +++--- apps/web/src/components/ChatView.browser.tsx | 71 +++--- apps/web/src/components/ChatView.tsx | 4 +- apps/web/src/components/DiffPanel.tsx | 4 +- apps/web/src/components/GitActionsControl.browser.tsx | 78 +++++-- apps/web/src/components/GitActionsControl.tsx | 46 +++- apps/web/src/components/KeybindingsToast.browser.tsx | 57 +++-- apps/web/src/components/Sidebar.tsx | 71 ++---- apps/web/src/components/chat/MessagesTimeline.tsx | 2 +- apps/web/src/components/settings/SettingsPanels.browser.tsx | 8 +- apps/web/src/components/timelineHeight.test.ts | 8 +- apps/web/src/components/timelineHeight.ts | 5 +- apps/web/src/lib/gitReactQuery.test.ts | 29 --- apps/web/src/lib/gitReactQuery.ts | 98 +++----- apps/web/src/lib/gitStatusState.test.ts | 112 +++++++++ apps/web/src/lib/gitStatusState.ts | 223 ++++++++++++++++++ apps/web/src/nativeApi.ts | 4 +- apps/web/src/wsNativeApi.test.ts | 47 +++- apps/web/src/wsNativeApi.ts | 11 +- apps/web/src/wsRpcClient.test.ts | 94 ++++++++ apps/web/src/wsRpcClient.ts | 24 +- apps/web/test/wsRpcHarness.ts | 3 +- packages/contracts/src/git.ts | 50 +++- packages/contracts/src/ipc.ts | 15 +- packages/contracts/src/rpc.ts | 22 +- packages/shared/src/git.test.ts | 67 ++++++ packages/shared/src/git.ts | 139 +++++++++++- 38 files changed, 2302 insertions(+), 382 deletions(-)