feat(ui): land next quality-audit polish slice
2 months ago
Authored
mweinbachDesktop: expandable activity tool details, streaming caret, memoized ChatFeed,
in-feed plan/todos card, ambient disconnect banner, context sidebar empty-section
collapse, archived chat search, privacy diagnostics toggle, MessageBarResizer
developer-only + max-height labels, New Task empty/progressive work graph,
Canvas save-status chip, Esc onboarding confirm for incomplete setup, stronger
high-contrast tokens.
Mobile: real bottom Tabs layout for primary destinations; document SubagentBar
as intentionally unmounted until agents strip lands.
Parentffbcf62
63 files changed
- apps/desktop/index.html+15−0
- apps/desktop/src/App.tsx+105−11
- apps/desktop/src/app/store.actions/thread.ts+114−45
- apps/desktop/src/app/store.helpers.ts+2−0
- apps/desktop/src/app/store.helpers/threadEventReducer/feedProjection.ts+4−5
- apps/desktop/src/app/store.helpers/threadEventReducer/handlers/lifecycleHandlers.ts+5−1
- apps/desktop/src/app/store.ts+1−0
- apps/desktop/src/components/ConnectPage.tsx+35
−133
apps/desktop/src/components/ui/message-scroller.tsx+4−1apps/desktop/src/components/ui/tooltip.tsx+1−1apps/desktop/src/styles.css+47−13apps/desktop/src/styles/theme-bridge.css+2−1apps/desktop/src/styles/tokens/platform.css+26−0apps/desktop/src/ui/Canvas.tsx+53−4apps/desktop/src/ui/ChatView.tsx+122−21apps/desktop/src/ui/CommandPalette.tsx+61−0apps/desktop/src/ui/ContextSidebar.tsx+10−38apps/desktop/src/ui/InAppToasts.tsx+80−0apps/desktop/src/ui/ResearchView.tsx+17−2apps/desktop/src/ui/Sidebar.tsx+73−10apps/desktop/src/ui/chat/ActivityGroupCard.tsx+151−38apps/desktop/src/ui/chat/ChatComposer.tsx+13−1apps/desktop/src/ui/chat/ChatFeed.tsx+147−14apps/desktop/src/ui/chat/CitationSourcesCarousel.tsx+2−2apps/desktop/src/ui/chat/ComposerHighlightOverlay.tsx+1−1apps/desktop/src/ui/chat/ComposerMentionInput.tsx+34−1apps/desktop/src/ui/chat/ComposerMentionMenu.tsx+7−1apps/desktop/src/ui/chat/FeedRow.tsx+173−42apps/desktop/src/ui/chat/MentionText.tsx+6−4apps/desktop/src/ui/chat/NewChatLanding.tsx+51−1apps/desktop/src/ui/chat/SandboxApprovalCard.tsx+23−4apps/desktop/src/ui/chat/activityGroups.ts+22−1apps/desktop/src/ui/chat/chatLogic.ts+3−3apps/desktop/src/ui/chat/composerMentions.ts+4−1apps/desktop/src/ui/layout/MessageBarResizer.tsx+8−3apps/desktop/src/ui/layout/PrimaryContent.tsx+10−3apps/desktop/src/ui/layout/SettingsContent.tsx+3−2apps/desktop/src/ui/menuBar/MenuBarUtilityShell.tsx+3−2apps/desktop/src/ui/settings/SettingsShell.tsx+5−4apps/desktop/src/ui/settings/pages/ArchivedChatsPage.tsx+82−46apps/desktop/src/ui/settings/pages/PrivacyTelemetryPage.tsx+38−2apps/desktop/src/ui/settings/pages/RemoteAccessPage.tsx+32−6apps/desktop/src/ui/settings/pages/WorkspacesPage.tsx+68−70apps/desktop/src/ui/sidebar/SidebarOneOffChatItem.tsx+26−16apps/desktop/src/ui/sidebar/SidebarWorkspaceItem.tsx+29−17apps/desktop/src/ui/tasks/NewTaskLanding.tsx+155−89apps/desktop/src/ui/tasks/TaskContextSidebar.tsx+73−3apps/desktop/src/ui/tasks/TaskView.tsx+34−2apps/desktop/test/chat-activity-group-card.test.tsx+4−3apps/desktop/test/chat-activity-groups.test.ts+49−4apps/desktop/test/chat-reasoning-ui.test.ts+3−3apps/desktop/test/jsdomHarness.ts+3−0apps/desktop/test/sandbox-approval-card.test.tsx+12−4apps/desktop/test/sidebar-ui.test.tsx+15−3apps/mobile/src/app/(app)/(tabs)/_layout.tsx+40−7apps/mobile/src/app/(app)/thread/[id].tsx+213−55apps/mobile/src/components/ComposerBar.ios.tsx+37−1apps/mobile/src/components/ComposerBar.tsx+41−5apps/mobile/src/components/thread-home/thread-home-screen.ios.tsx+11−0apps/mobile/src/components/thread-home/thread-home-screen.tsx+11−0apps/mobile/src/components/thread/activity-group-card.tsx+12−3apps/mobile/src/components/thread/pending-request-card.tsx+8−0apps/mobile/src/components/thread/subagent-bar.tsx+9−0