apps/mobile/package.json | 6 +- apps/mobile/src/features/threads/ThreadComposer.tsx | 7 +- apps/mobile/src/features/threads/ThreadDetailScreen.tsx | 114 ++++++++++--- apps/mobile/src/features/threads/ThreadFeed.tsx | 184 +++++++------------- apps/mobile/src/lib/threadActivity.test.ts | 12 +- apps/mobile/src/lib/threadActivity.ts | 20 +-- apps/mobile/src/lib/threadFeedLayout.test.ts | 32 ---- apps/mobile/src/lib/threadFeedLayout.ts | 22 --- apps/mobile/src/state/use-thread-composer-state.ts | 33 ++-- apps/web/package.json | 2 +- apps/web/src/components/BranchToolbarBranchSelector.tsx | 11 +- apps/web/src/components/ChatView.tsx | 292 +++++++++++++++++++------------- apps/web/src/components/chat/ChatComposer.tsx | 30 +--- apps/web/src/components/chat/MessagesTimeline.test.tsx | 52 +++++- apps/web/src/components/chat/MessagesTimeline.tsx | 39 ++--- apps/web/src/components/chat/ModelPickerContent.tsx | 2 +- apps/web/src/index.css | 55 +++++- packages/shared/package.json | 4 + packages/shared/src/chatList.test.ts | 42 +++++ packages/shared/src/chatList.ts | 33 ++++ pnpm-lock.yaml | 28 +-- 21 files changed, 586 insertions(+), 434 deletions(-)