简明目的
在 Session 中提供一个真正可用的侧边工作台,让用户稳定切换产物、文件、变更和检查信息,并在切换会话后恢复到正确位置。
Outcome(专业定义)
Alpha Workbench 在正式 Session Shell 中提供 Artifacts / Files / Changes / Inspector 容器、session-scoped state、run/output discovery、布局与焦点恢复。现有 Viewer 基座视为已交付基础;本需求的剩余结果是 Workbench 产品容器和发现链。Shell mount/lifecycle 归 #203 ,renderer/HTML 安全实现归 #207 /#208 。
Complexity
L — 跨 Session UI、产物发现、状态恢复、可调整布局与多个数据 adapter,需多条独立实现和运行时验证。
Context
#186 已完成 Viewer/shell 基础,但 Artifacts/Files/Changes/Inspector 正式容器、timeline/run 发现、session-scoped 恢复和三档布局仍未交付。原正文容易与 #203 的 Session shell 以及 #207 /#208 renderer 重叠。
Scope
在 [REQ-088] Alpha Session Shell 稳定挂载并管理生命周期 #203 提供的 mount point 中承载四个 Workbench modes。
维护 session-scoped 的 mode、选中对象、尺寸、滚动与打开/关闭状态。
从 cloud run、automation、tool output 与 timeline artifact card 发现可打开对象。
提供 deep link、save-copy、focus preview 和正确的触发焦点恢复。
支持三档布局、320–720px 调整及窄窗口降级。
通过 descriptor/adapter 调用下游 renderer,不自行读取任意路径。
Non-goals
Acceptance criteria
AC1. 正式会话页右栏按内容提供产物、文件、审查(改动)面板;无可用能力时不显示误导性空标签。 (2026-09-17 按 owner 裁决改写,原文见编辑历史)
AC2. 从 timeline、cloud run、automation 和 tool output 打开的对象进入同一 Workbench,来源与状态可追溯。
AC3. mode、选择、尺寸、滚动与打开状态按 session 隔离;快速切换 session 不串状态,重启按明确规则恢复。
AC4. Files/Changes/Inspector 与 Artifacts 使用各自 typed adapter,不从 renderer 读取任意本地路径或猜测云端来源。
AC5. deep link、save-copy、focus-preview、close 与返回触发点的焦点行为一致且可键盘操作。
AC6. 右栏宽度可拖动调整且不小于 320px;窄窗口下无内容遮挡或不可达控制。 (2026-09-17 按 owner 裁决改写,原文见编辑历史)
AC7. Viewer/renderer crash 只影响当前内容区域,用户可切 Source/Metadata、重试或关闭,不卸载 Session。
AC8. #203 只挂载/卸载 Workbench;container state、mode 与 discovery 在本需求中有唯一 owner。 —— 2026-09-17 删除(owner 裁决):内部职责划分,不是用户可观察结果;#203 与 REQ-125 均已关,无需也无法独立判定。
Evidence map
AC
Evidence surface
AC1
REQ-125(#538 )AC2 + session-rail/{artifacts,files,review,terminal}/;#285 检查器不做
AC2
#287 session-timeline/cards/tool-cards.tsx:990-994
AC3
test-component/session-rail-artifacts.cases.ts:441 + session-workspace/rail-width.ts
AC4
packages/ui-mac/src/main/workspace-file-service.test.ts:104/:122
AC5
test-component/session-rail-artifacts.cases.ts:441-475(REQ-125 形态)
AC6
session-workspace/rail-width.ts:14/:39 + rail-width.test.ts
AC7
session-rail/artifacts/artifacts-panel-view.tsx:577-581 + #292
AC8
已删除(见 AC8)
Acceptance owner
@jinjunnn — 按 AC 逐条验收并手工关闭;PR 不得关闭父需求。
设计要点
潜在问题与风险
过时性与兼容性结论
需求有效,Viewer 基座已完成但 Workbench 产品结果未完成。旧独立 Viewer 状态、旧 Session wrapper 与来源特判不做兼容;保留当前 session 状态恢复、错误恢复和 descriptor 校验正确性。
关联与职责边界
Delivery plan / 建议子票
Dependencies
简明目的
在 Session 中提供一个真正可用的侧边工作台,让用户稳定切换产物、文件、变更和检查信息,并在切换会话后恢复到正确位置。
Outcome(专业定义)
Alpha Workbench 在正式 Session Shell 中提供
Artifacts / Files / Changes / Inspector容器、session-scoped state、run/output discovery、布局与焦点恢复。现有 Viewer 基座视为已交付基础;本需求的剩余结果是 Workbench 产品容器和发现链。Shell mount/lifecycle 归 #203,renderer/HTML 安全实现归 #207/#208。Complexity
L — 跨 Session UI、产物发现、状态恢复、可调整布局与多个数据 adapter,需多条独立实现和运行时验证。
Context
#186 已完成 Viewer/shell 基础,但 Artifacts/Files/Changes/Inspector 正式容器、timeline/run 发现、session-scoped 恢复和三档布局仍未交付。原正文容易与 #203 的 Session shell 以及 #207/#208 renderer 重叠。
Scope
Non-goals
alpha-work#1/#2。alpha-work#3。Acceptance criteria
AC1. 正式会话页右栏按内容提供产物、文件、审查(改动)面板;无可用能力时不显示误导性空标签。 (2026-09-17 按 owner 裁决改写,原文见编辑历史)
AC2. 从 timeline、cloud run、automation 和 tool output 打开的对象进入同一 Workbench,来源与状态可追溯。
AC3. mode、选择、尺寸、滚动与打开状态按 session 隔离;快速切换 session 不串状态,重启按明确规则恢复。
AC4. Files/Changes/Inspector 与 Artifacts 使用各自 typed adapter,不从 renderer 读取任意本地路径或猜测云端来源。
AC5. deep link、save-copy、focus-preview、close 与返回触发点的焦点行为一致且可键盘操作。
AC6. 右栏宽度可拖动调整且不小于 320px;窄窗口下无内容遮挡或不可达控制。 (2026-09-17 按 owner 裁决改写,原文见编辑历史)
AC7. Viewer/renderer crash 只影响当前内容区域,用户可切 Source/Metadata、重试或关闭,不卸载 Session。
AC8.
#203 只挂载/卸载 Workbench;container state、mode 与 discovery 在本需求中有唯一 owner。—— 2026-09-17 删除(owner 裁决):内部职责划分,不是用户可观察结果;#203 与 REQ-125 均已关,无需也无法独立判定。Evidence map
session-rail/{artifacts,files,review,terminal}/;#285 检查器不做session-timeline/cards/tool-cards.tsx:990-994test-component/session-rail-artifacts.cases.ts:441+session-workspace/rail-width.tspackages/ui-mac/src/main/workspace-file-service.test.ts:104/:122test-component/session-rail-artifacts.cases.ts:441-475(REQ-125 形态)session-workspace/rail-width.ts:14/:39+rail-width.test.tssession-rail/artifacts/artifacts-panel-view.tsx:577-581+ #292Acceptance owner
@jinjunnn — 按 AC 逐条验收并手工关闭;PR 不得关闭父需求。
设计要点
潜在问题与风险
过时性与兼容性结论
需求有效,Viewer 基座已完成但 Workbench 产品结果未完成。旧独立 Viewer 状态、旧 Session wrapper 与来源特判不做兼容;保留当前 session 状态恢复、错误恢复和 descriptor 校验正确性。
关联与职责边界
alpha-work#1/#2:artifact transport/registry;alpha-work#3:Office。Delivery plan / 建议子票
[REQ-094][CODE] Host Artifacts, Files, Changes, and Inspector in the release SessionWorkspace #285 — 正式四模式容器。产物/文件/审查面板由 REQ-125 交付;检查器于 2026-09-17 按 owner 裁决不做关闭。Dependencies
jinjunnn/alpha-work#2(artifact registry)。