Skip to content

feat(workbench): run 中可见派发队列与撤销/改向语义(#1965) - #1981

Merged
DeliciousBuding merged 1 commit into
masterfrom
feat/composer-message-queue
Aug 25, 2026
Merged

feat(workbench): run 中可见派发队列与撤销/改向语义(#1965)#1981
DeliciousBuding merged 1 commit into
masterfrom
feat/composer-message-queue

Conversation

@DeliciousBuding

Copy link
Copy Markdown
Collaborator

run 中可见派发队列与撤销/改向语义(#1965,UX F7)

接续已合入的 pendingIntents 基础模型,本 PR 完成 F7 的可见队列层:ComposerDispatchQueue 可见队列组件 + pendingIntents 派发状态机扩展(排队/派发中/重试/失败、置顶/上移/下移、改向、重试上限 3 次/延迟 1.5s)+ ConversationHost 接线。

语义诚实合同:队列只安排「下一轮派单」的顺序与目标,不打断正在运行的 run;steer 语义 = 对下一次派发的排序/改向,不是对在飞任务的干预;撤销只取消派单,已发送消息保留在转录中(UI 文案明示)。

验收对照

验收项 实现 测试
run 中发送进入队列且可见(列表+顺序) run 进行中带 @ 提及发送进入 ComposerDispatchQueue 可见列表,序号/状态/目标/预览(80 字截断)可见;aria-live 摘要区分 running/idle ComposerDispatchQueue.test.tsxdispatchQueue.test.tsx
队列项可撤销;steer 语义有定义与测试 撤销(单项/清空)只取消派单;置顶/上移/下移/改向定义在 PendingIntentMove/retargetPendingIntent;重试状态机有上限与延迟常量 pendingIntents.test.ts(状态机/移动/改向/重试穷尽)
Hub-only 边界不破;行为断言测试;中英一致 队列与派发只经 ConversationHost→Hub 派发路径,无 runtime 直连;全部行为断言(非快照镜像);composer.queue.* 22 键中英成对 resources.test.ts 键集/占位符一致性;verify-i18n-callsites PASS

验证证据(本机,rebase 后复跑)

  • app/workbench vitest 串行:143 文件 / 1431 用例全绿
  • app/shared vitest 串行:152 文件 / 2640 用例全绿
  • typecheck:workbench + shared 通过
  • Visual QA shell:web(1440x810 + 768x900)与 desktop(1440x810 + 800x900)light+dark 共 8 张,几何合同 overflow=false 全过
  • 移除过时键 toast.pendingDispatchBadge(被可见队列取代),全仓无残留引用

real_tested=false(L0 单元/静态 + visual shell;未跑真实 Hub 栈与 Playwright 真实登录流)

Closes #1965

Co-authored-by: Codex <codex@vectorcontrol.tech>
@coderabbitai

coderabbitai Bot commented Aug 25, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: d98cc582-174c-4c88-bc27-a8c12b30fe63

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@DeliciousBuding
DeliciousBuding merged commit 0d6dd1f into master Aug 25, 2026
78 of 79 checks passed
@DeliciousBuding
DeliciousBuding deleted the feat/composer-message-queue branch August 25, 2026 09:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(composer): run 中消息队列与 steer 语义(UX F7)

1 participant