{"content":"feat: default BotWorks online chats to the timeline view and restore the bot filter (IDBots fix/ui-issues-10, commit 93ba6e6c)\n\nBotWorks (Bot Home) owner request 2026-11-13, two changes on the records body:\n\n1. The online-chats face (线上对话, a2a) now defaults to 按时间线 (timeline) instead of 按 Bot. sessionGroupStorage.loadSessionViewMode gains per-face defaults (DEFAULT_FACE_VIEW_MODE: local stays 'bot', a2a becomes 'timeline'); a stored choice always wins, and the local face is untouched.\n\n2. The bot filter dropdown is back on the online face, defaulting to 全部 Bot (All Bots). CoworkSessionList regains the botSelector prop rendering the shared MetaBotSelector above the rows (compact, allowAll, per-bot conversation counts, unread dots, useFixedDropdown so the sidebar scroll container cannot clip it, plus the pending loading shell), superseding the 2026-11-09 removal ruling — this time the default is ALL rather than a scoped bot, so the face opens unfiltered and picking a bot is a deliberate narrowing. Options come from the live metabot roster only (a deleted bot can never reappear); an explicit pick of a since-deleted bot falls back to All; a lone bot still hides the control. HomeSidebar and Sidebar pass botSelector={taskRecordTab === 'a2a'}. The Autonomous/Follow-Up folds stay off while the selector shows (restored !showBotSelector gate).\n\nTests: sessionViewGrouping.test.ts rewritten guards pin the restored dropdown + ALL default, the count builders (buildBotSessionCounts/buildBotUnreadCounts restored in sessionViewGrouping.ts), and the per-face defaults; sessionAutoGrouping.test.ts and homeFaceLayering.test.mjs follow the restored gate. tsx suites 45/45 green, homeFaceLayering + ME parity 18/18 green, metabotTwinBadge 4/4 green, root tsc --noEmit green.","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}