Skip to content

[P1] feat(frontend): 完善主工作区的文件、终端与交付流程 - #281

Merged
Qiyuanqiii merged 1 commit into
mainfrom
feat/issue-259-workbench-delivery
Oct 6, 2026
Merged

Qiyuanqiii merged 1 commit into
mainfrom
feat/issue-259-workbench-delivery

Conversation

@Qiyuanqiii

Copy link
Copy Markdown
Member

Summary

完善主工作区(Workbench)的文件管理、终端交互与交付流程,系统解决 #259 及其集成的全部子任务(#266、#267、#268、#269):

1. 工作区文件抽屉与执行身份延续 (#266)

  • 在主界面顶部工具栏增加 文件 入口,点击呼出工作区文件抽屉 (V2FileDrawer);
  • 复用 WorkspaceExplorer,完整继承目录浏览、搜索、文件内容预览及证据关联能力;
  • 始终绑定并传递当前任务执行 run_id,确保工作区上下文与证据绑定的身份一致性;
  • 支持完整的模态焦点捕获 (useModalFocusTrap) 与关闭后焦点恢复。

2. 文件链接智能拦截与行号高亮定位 (#267)

  • 助手回复 Markdown 解析器支持项目文件链接智能拦截 (parseProjectFileLink),兼容 file:/// 协议、相对路径以及 #L<line> / :<line> 行号锚点;
  • 点击文件链接自动展开工作区抽屉并定位至目标文件及指定代码行,高亮展示行并平滑居中滚动;
  • 超出加载范围时呈现友好提示,文件不存在时提供清晰排查说明;
  • 助手消息增加“复制回复”操作,代码块顶栏增加语法高亮标签与一键“复制代码”按钮及即时反馈。

3. 桌面调试终端抽屉与会话隔离 (#268)

  • 在主工作台增加 终端 抽屉入口 (V2TerminalDrawer),支持通过 UserTerminalPanel 连接本机桌面调试终端;
  • 终端 session 与任务严格隔离绑定,切换任务保留对应 session,任务关闭重置状态;
  • 严格区分“收起抽屉”与“终止进程”:收起抽屉保留后台终端进程运行,点击“终止”或进程退出才会彻底销毁会话;
  • 非桌面端或未启用桌面桥接时,提供明确说明与降级提示,避免未受控异常。

4. 交付动作与检查结果透出至主审阅层 (#269)

  • TaskOverview 顶层直出核心交付动作按钮:“选择文件并提交”(跳转至 Git 改动视图)、“PR 状态与交付”(PR 状态流)、“完整检查与环境”;
  • 汇总统计任务检查总数、通过数与失败数,按“当前执行”与“历史执行”清晰分组呈现;
  • 若当前执行存在交付计划 (plan_delivery),直接在概览层内联展示 PlanDeliveryPanel。

Related Issues

Verification

  • Vitest 单元测试覆盖并通过:
    • src/v2/projection/narrative.test.ts (19 tests)
    • src/components/workspace-explorer.test.tsx (4 tests)
    • src/v2/components/task-overview.test.tsx (5 tests)
    • src/v2/components/task-review.test.tsx (6 tests)
    • src/v2/components/conversation.test.tsx (33 tests)
  • npm run typecheck (tsc 编译检查通过,无错误)
  • npm run build (Vite 生产构建打包通过)

- 工作区文件抽屉与源码定位 (#266, #267):
  - 集成 V2FileDrawer 抽屉,复用 WorkspaceExplorer 呈现工作区目录与代码内容;
  - 保留并传递当前任务执行 run_id,保障工作区身份连续性;
  - 拦截助手消息中的项目文件路径/代码块链接,支持精准定位至指定代码行并在超出范围时给出显式提示;
  - 增加消息与代码块一键复制能力与状态反馈。
- 桌面调试终端抽屉 (#268):
  - 在主工作台提供集成终端抽屉入口,按任务线程隔离并维持终端 session;
  - 严格区分“收起抽屉(保持进程运行)”与“终止进程”,非桌面环境提供明确说明。
- 交付与检查结果主界面呈现 (#269):
  - TaskOverview 顶层直接透出交付动作(选择文件提交、PR交付流程、完整检查);
  - 区分“当前执行”与“历史执行”检查状态及通过/失败统计;
  - 存在交付计划时直接呈现 PlanDeliveryPanel。

Closes #259
Closes #266
Closes #267
Closes #268
Closes #269

Co-authored-by: Gemini <200291788+gemini-code-assist@users.noreply.github.com>
@Qiyuanqiii
Qiyuanqiii force-pushed the feat/issue-259-workbench-delivery branch from 6b1b32c to aecd9d3 Compare October 5, 2026 19:34
@Qiyuanqiii
Qiyuanqiii merged commit 9e668b4 into main Oct 6, 2026
24 of 26 checks passed
@Qiyuanqiii
Qiyuanqiii deleted the feat/issue-259-workbench-delivery branch October 6, 2026 04:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment