Skip to content

feat(workbench): Tasks 与会话双向深链 (#1963) - #1976

Merged
DeliciousBuding merged 5 commits into
masterfrom
feat/tasks-conversation-deeplink
Aug 25, 2026
Merged

feat(workbench): Tasks 与会话双向深链 (#1963)#1976
DeliciousBuding merged 5 commits into
masterfrom
feat/tasks-conversation-deeplink

Conversation

@DeliciousBuding

@DeliciousBuding DeliciousBuding commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Tasks 与会话双向深链(#1963,UX F2)

任务卡 ↔ 承载会话双向深链 + 侧栏任务队列折叠组。工作台页面是状态驱动(无 URL 路由),深链以「意图队列 + shell 统一应用」实现:workbenchTaskDeepLinks 状态模块存意图/已应用链接/任务焦点,useWorkbenchTaskDeepLinks shell 钩子消费意图执行页面/会话切换,两个 UI 面只读快照渲染往返入口,无需穿透 WorkbenchFrame 传参。

验收对照

验收项 实现 测试
任务卡 → 会话跳转可用且可后退 任务卡选中后,任务页深链条出现「进入承载会话」(TaskItem.conversationId 绑定时);点击切 chat 页并激活承载会话,侧栏出现「返回任务」chip,点击回 runs 页并恢复任务选中(路由状态在 chat 页卸载,回程经 taskFocus 令牌重新采纳) WorkbenchTasksRouteView.test.tsxuseWorkbenchTaskDeepLinks.test.tsuseWorkbenchTasksRoute.test.tsworkbenchTaskDeepLinks.test.ts
会话 → 任务详情跳转可用且可后退 侧栏任务队列点击任务项 → 切 runs 页并选中该任务(任务详情条);任务页出现「返回会话」,点击回 chat 页(会话保持不变) 同上
侧栏任务队列折叠组在有活跃任务时默认可见 队列只含活跃状态任务(进行中/待评审/待确认);非空即渲染、默认展开,可手动折叠;任务路由挂载时发布实时清单,chat 页由 shell 钩子按 dataMode 播种(demo=mock 池活跃任务,real=空,任务后端尚未落地 #1818 ConversationSidebar.test.tsxuseWorkbenchTaskDeepLinks.test.tsuseWorkbenchTasksRoute.test.ts
行为断言测试;中英文案一致 新增/扩展 5 个测试文件全部为行为断言(意图生命周期、导航回调、队列可见性/折叠、往返 chip 显隐);chatview 资源新增 taskQueue.* 4 键中英成对,resources.test.ts 键集/占位符一致性校验通过 app/shared 150 文件全绿

改动范围

  • 新:workbenchTaskDeepLinks.ts(深链意图/应用态/队列存储)、useWorkbenchTaskDeepLinks.ts(shell 应用钩子)+ 各自测试
  • 改:TaskItem 增可选 conversationId;mock 种子/池按演示会话 id 绑定(对齐 app/shared 演示会话种子,仅 demo 车道)
  • 改:useWorkbenchTasksRoute 发布侧栏队列 + 采纳深链任务焦点
  • 改:ConversationSidebar 任务队列折叠组 + 返回任务 chip;WorkbenchTasksRouteView 深链条(返回会话/进入承载会话,flex 列容器不裁切页面)
  • 接线:AgentHubWorkbench.tsx 一行钩子调用(shell 持有页面/会话状态,为深链唯一应用点;WorkbenchFrame 等禁改文件零改动)
  • i18n:chatview 命名空间追加 taskQueue.title / openConversation / backToTask / backToConversation(中英成对)

验证证据(L0,本机)

  • pnpm -C app/workbench test -- --run --no-file-parallelism --maxWorkers=1142 文件 / 1412 用例全绿
  • pnpm -C app/shared test -- --run --no-file-parallelism --maxWorkers=1150 文件 / 2593 用例全绿
  • pnpm typecheck@agenthub/workbench@agenthub/shared 均通过
  • git fetch origin && git rebase origin/master(origin/master 无新提交,up to date)

real_tested=false(L0 单元/静态;未跑 Playwright/Visual QA 与真实栈验证)

Closes #1963
Closes #1976

@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: 1ca19cc9-9625-4a6d-83db-be37c7ae7e8c

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 and others added 5 commits August 25, 2026 16:54
Co-authored-by: Claude Code <claude@vectorcontrol.tech>
Co-authored-by: Claude Code <claude@vectorcontrol.tech>
Co-authored-by: Claude Code <claude@vectorcontrol.tech>
Co-authored-by: Claude Code <claude@vectorcontrol.tech>
Co-authored-by: Claude Code <claude@vectorcontrol.tech>
@DeliciousBuding
DeliciousBuding force-pushed the feat/tasks-conversation-deeplink branch from 7dc07c0 to 161eb0b Compare August 25, 2026 08:54
@DeliciousBuding
DeliciousBuding merged commit ab91726 into master Aug 25, 2026
40 checks passed
@DeliciousBuding
DeliciousBuding deleted the feat/tasks-conversation-deeplink branch August 25, 2026 09:03
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(workbench): Tasks 与会话双向深链(UX F2)

1 participant