apps/web/src/components/ChatView.browser.tsx | 103 ++- apps/web/src/components/ChatView.logic.test.ts | 300 ++++++++- apps/web/src/components/ChatView.logic.ts | 121 +++- apps/web/src/components/ChatView.tsx | 346 ++++++---- apps/web/src/components/KeybindingsToast.browser.tsx | 2 +- apps/web/src/components/Sidebar.logic.test.ts | 50 +- apps/web/src/components/Sidebar.logic.ts | 64 +- apps/web/src/components/Sidebar.tsx | 132 +++- apps/web/src/composerDraftStore.test.ts | 53 ++ apps/web/src/composerDraftStore.ts | 25 +- apps/web/src/hooks/useHandleNewThread.ts | 24 +- apps/web/src/hooks/useThreadActions.ts | 13 +- apps/web/src/orchestrationEventEffects.test.ts | 108 ++++ apps/web/src/orchestrationEventEffects.ts | 76 +++ apps/web/src/orchestrationRecovery.test.ts | 100 +++ apps/web/src/orchestrationRecovery.ts | 136 ++++ apps/web/src/router.ts | 12 +- apps/web/src/routes/__root.tsx | 193 ++++-- apps/web/src/routes/_chat.$threadId.tsx | 8 +- apps/web/src/routes/_chat.tsx | 25 +- apps/web/src/session-logic.test.ts | 32 + apps/web/src/session-logic.ts | 47 ++ apps/web/src/store.test.ts | 582 ++++++++++++++--- apps/web/src/store.ts | 1088 +++++++++++++++++++++++--------- apps/web/src/storeSelectors.ts | 14 + apps/web/src/terminalStateStore.ts | 10 + apps/web/src/types.ts | 4 +- apps/web/src/uiStateStore.test.ts | 192 ++++++ apps/web/src/uiStateStore.ts | 417 ++++++++++++ 29 files changed, 3609 insertions(+), 668 deletions(-)