Repository navigation
Description
Remaining outcome — reconciled 2026-09-30
Shared Avatar, motion policy and composer regions already exist. Remaining: one Host-owned shared Activity snapshot and a real DM path that shows processing/working and settles honestly. Coordinate #536/#121 as one state-delivery path; do not claim the reported runtime bug is fixed from component existence.
Feature Project
- Bot Activity & Avatar Presence
- Historical coordination [Retired] Orchestrator: V1.0 PersonaBot Activity、Presence 与 Output Events #119 is retired.
- Source spec: Spec: PersonaBot Activity Projection、共享 Avatar Presence 与 Output Events #118
- Composer surface: UI Tracer: Channel composer island 与 PersonaBot activity region #129
- Product motion preference: UI Foundation: BotHarness motion preference(System / Reduce / Full) #128
What to build
让一个由 explicit Session Ownership 归属的 PersonaBot,在真实 DSH activity Projection 发生 thinking/working/idle 变化时,能够通过 Host snapshot read model 在 sidebar pinned grid、普通 Channel row 与当前 DM composer island 中呈现完全一致的头像状态。该 tracer 使用真实 Projection authority,可先采用 bounded refresh/polling;它不以 UI send flag、cwd 或页面选择制造第二套状态。
共享头像 deep module 同时支持 Animated Blobatar 与静态 custom-image media contract:Blobatar 可按活动状态动画,custom image 仅由统一 Activity Frame 表达状态。V1 只验证 renderer/component contract 与已有或 fixture media,不实现上传、裁切、资产持久化或设置 UI;这些由 #58 在 v1.1 负责。布局和控件遵循 DSH tokens、primitives 与 native inset contract。
Motion and presentation contract
- 所有动画只消费 UI Foundation: BotHarness motion preference(System / Reduce / Full) #128 提供的 effective motion policy;组件不得各自直接读取 prefers-reduced-motion 或持久化开关。
- Follow system 继承 OS;Reduce motion 使用静态 Activity Frame、图标与文本;Full motion 允许完整 Blobatar motion。
- capability failure 与 motion preference 分离:动画不可用时仍显示同一个可访问状态。
- DM composer 只渲染到 UI Tracer: Channel composer island 与 PersonaBot activity region #129 的 activity region,不重建 composer shell。
- hover/focus 可显示一行安全 activity label;详细 tool-aware/collapsible 内容由 Bot activity: safe tool summaries and effects #122/Bot activity: Orchestrator and Assignment aggregation #123 接续。
Acceptance criteria
- 只消费 Foundation:explicit Session ownership 与 DSH activity projection #80 提供的 explicit ownership/activity Projection;unowned 或 ambiguous Session fail closed。
- Host snapshot 包含单调 revision,restart 后可从 durable Session facts 重建相同 PersonaBot activity。
- pinned grid、unpinned row 与 DM composer island 使用同一 snapshot 和共享 avatar component,状态与动画一致。
- pinned grid 随 sidebar 宽度自动调整列数;unpinned row 保持紧凑两行 agent-list 形态。
- Blobatar active motion 与 static custom-image Activity Frame 均有组件测试;custom image 本体不动画。
- UI Foundation: BotHarness motion preference(System / Reduce / Full) #128 三态 preference、ARIA 状态文字、非纯颜色状态表达和 capability fallback 通过测试。
- hover 与 keyboard focus 获得相同简短状态文字,不把 hover 作为唯一入口。
- light/dark 与 native sidebar/composer geometry 在 web-dev profile 有 Human 可复验路径。
Dependencies (completed)
- Foundation:explicit Session ownership 与 DSH activity projection #80 — explicit Session ownership and DSH activity Projection, merged in feat(core): own Sessions explicitly and project DSH activity (#80) #169.
- UI Tracer: Channel composer island 与 PersonaBot activity region #129 — composer island and external activity region, merged in feat(client): add motion policy and composer island #136.
Native blocked-by edges remain for history; both blockers are closed and this tracer is ready to start.
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsDone
- StatusShow more project fieldsDone
Activity
DoodleBears commentedon Sep 21, 2026
PR #127 已合并共享
PersonaBotAvatar/facepile、Blobatar active motion、custom-image static frame、reduced-motion 与 ARIA 状态文字,并让 pinned row、普通 DM row、Chat、composer 共用同一 renderer。这只是 #120 的 UI/rendering foundation,不关闭本票:当前仍保留 DM
sending的短时 client bridge;#80 提供的 explicit ownership、单调 Host activity revision、restart/replay 重建和真实 DSH activity Projection 尚未完成。39 remaining items
DoodleBears commentedon Oct 1, 2026
Agent work outcome
codex/local/01a0e445-0c0f-70e1-bad4-fd99c8cfaa2119e214b17c95e37aa5bb568a943bce8761bf72ba.DoodleBears commentedon Oct 1, 2026
Agent work claim — resumed
codex/local/01a0e445-0c0f-70e1-bad4-fd99c8cfaa21(not a DSH Session)codex/120-dm-scroll-auditMerge current main and strengthen accepted DM scroll verification
test(client): record retained DM message identities after review
style: format retained-message E2E proof
Merge latest main while preserving DM scroll acceptance
Wait for the actual second DM before measuring history
fix(client): finish #120 DM reading-position audit (#663)
DoodleBears commentedon Oct 1, 2026
Agent work outcome
codex/local/01a0e445-0c0f-70e1-bad4-fd99c8cfaa21ea08465c8f125299b63bb68067e0c2d9d9c2bc91.101a9e1be057bc3495685c4dd7af3b867a87d76d; all review findings are fixed.