7.1 KiB
7.1 KiB
文档驾驶舱双视图交互规格 r1
状态:待评审;这是界面与交互规格,不是实现稿。
1. 信息架构
项目文档驾驶舱
├── 顶部:项目名 / 视图切换 / 密度 / 全局筛选 / 刷新状态
├── 项目统计带:完成度、空缺、未核实、冲突、待确认、最近更新
├── 左栏:文档结构树(文档→章节→小节→段落)
├── 中栏:
│ ├── 全景:项目/文档概览、章节状态、关系摘要
│ └── 阅读器:目录定位、正文、段落状态和版本变化
└── 右栏:依据、历史、影响、冲突(同一选中节点)
不新增第四栏。窄屏时三栏变为同一工作区内的单栏导航:树、内容、依据面板依次进入,始终提供明确返回按钮和当前节点标题。
2. 顶部统计带
统计卡只展示数值和一句解释,不做装饰性大卡片。每个统计项可点击,点击后只改变共享筛选:
- 完成度:已知完成节点 / 已知节点;数据不足时显示“部分计算”。
- 空缺段落:内容为空或结构缺失的叶节点。
- 未核实来源:有来源但验证状态不是
verified的节点数。 - 冲突:开放或待裁定冲突数。
- 待确认变更:最近变化中需要人工确认的变更数。
- 最近更新:最近一次可见变更时间和操作者。
点击统计不得直接执行写入或裁定;它只定位待处理内容。
3. 左侧结构树
默认显示
每行显示标题、层级缩进、内容状态、来源数、冲突/待确认徽标和最近更新时间。内部 ID、数据库类型名和技术状态码不显示。文档节点可以展开,章节和段落按需加载;加载失败只影响当前分支并保留重试。
交互
- 单击节点:更新共享
selectedNodeRef,中央和右侧同步加载。 - 展开箭头:只加载子节点,不改变选中内容。
- 键盘:方向键移动,Enter 选择,Space 展开,左/右折叠/展开。
- 搜索:按标题、路径和可见摘要检索;搜索结果仍受项目权限和当前筛选约束。
- 状态徽标:可作为筛选入口,但不隐藏结构树的其他节点。
4. 结构全景
中央内容
未选中节点时显示项目/文档概览:文档列表、章节完成度条、缺项摘要、最近变化和风险分布。选中节点时显示:
- 节点标题和路径。
- 一句话状态总结(内容、验证、冲突、影响)。
- 当前可见正文摘要或章节概览。
- 子节点状态表,可按缺项/冲突/负责人排序。
- “在阅读器中打开”按钮,带同一
nodeRef和阅读锚点。
关系摘要
只在选中节点附近显示来源数量、影响对象数量和冲突数量;关系详情在右栏展开。大规模网络图不是默认内容。
5. 文档阅读器
中央内容
阅读器按章节连续渲染正文,段落之间显示轻量状态线:来源类型、验证状态、最近修改人/时间和冲突标记。版本变化默认以“当前版本 + 前一版本摘要”呈现,完整差异使用 Collapsible 展开。被权限过滤的段落显示“内容受限”,而不是空白。
阅读行为
- 从全景进入阅读器时定位到选中节点并保留章节滚动锚点。
- 从对话卡片或来源跳转时,若目标是关系解释,进入全景;若目标是交付正文,进入阅读器。
- 切换筛选后保留选中节点;若节点被筛掉,显示“当前节点不在筛选范围”并提供清除筛选。
- 后台更新不抢占滚动位置;仅在标题旁显示“内容已更新”,用户选择刷新。
6. 右侧依据与影响面板
右侧使用四个标签,默认打开“内容来源”。每个标签显示数量和状态,详情按需展开。
内容来源
显示来源类型图标/文字、摘要、采集时间、核实状态、置信度和可见定位。私人来源只显示脱敏元数据;不展示隐藏原文或内部提示词。
修改历史
以自然语言时间线显示创建、正文修改、来源变化、验证变化和冲突状态变化。每条记录显示操作者、时间、版本和差异摘要;完整 diff 折叠。
影响对象
显示受影响要求、文档、风险、任务和追溯关系。默认一跳,显示关系类型、方向、状态和置信度;继续展开前提示数量上限。
冲突与风险
显示冲突双方摘要、各自来源、发现时间和当前裁定状态。没有权限看到一侧原文时仍显示“另一侧受限”,不把冲突误判成单方事实。
7. 状态与空态
| 状态 | 文案方向 | 禁止行为 |
|---|---|---|
| 加载中 | 加载项目文档概览 / 加载依据 | 不显示虚假的 0 统计 |
| 空项目 | 暂无受控文档 | 不显示导入或生成按钮,除非另有已批准入口 |
| 部分加载 | 已显示已读取内容,部分依据暂不可用 | 不把部分数据标为完整 |
| 受限 | 你可以看到节点状态,但正文受权限限制 | 不泄露原文存在性以外的私密信息 |
| 过期 | 内容来自某时间的快照,刷新以获取最新状态 | 不静默自动改写用户正在阅读的正文 |
| 失败 | 该面板暂时不可用,可重试 | 不清空其它已成功面板 |
| 截断 | 已显示前 N 条,继续展开有上限 | 不假装显示全部关系 |
8. 视觉与可访问性门禁
- 颜色、圆角、字号只消费
@ui/tokens.css;字号使用--fs-ui-*。 - 折叠只使用
@uiCollapsible,动效只使用@ui/motion.css的mk-*类。 - 主操作采用单色反色按钮;状态色只表达成功、警告、错误、等待和差异语义。
- 320/390/736/1024/1440 宽度下不横向溢出;18px UI 字号下标题、按钮和徽标不重叠。
- 所有图标按钮有可访问名称;树节点和标签页有键盘焦点;减少动效时只保留状态变化。
- 不把三栏做成互相嵌套的卡片墙;页面区域使用无框布局,重复来源/变化项才使用轻量条目容器。
9. 视图切换规则
| 触发来源 | 默认视图 | 定位 |
|---|---|---|
| 第一次进入项目 | 结构全景 | 项目根节点 |
| 用户上次有偏好 | 上次视图 | 上次项目/节点锚点(仍需重新授权) |
| 对话解释关系 | 结构全景 | 目标关系节点 |
| 对话交付正文 | 文档阅读器 | 目标章节/段落 |
| 来源或冲突跳转 | 当前视图保持 | 选中节点 + 右栏对应标签 |
| 节点无正文但有关系 | 结构全景 | 节点摘要和影响面板 |
10. 交互验收场景
- 进入有多个文档的项目,首屏看到统计和树,不需要逐个打开弹窗。
- 在全景点选段落,切换阅读器后正文和右栏仍是同一段落。
- 从阅读器打开来源,返回后保持滚动位置和筛选。
- 一个来源被撤回或标为未核实,统计、树徽标、正文状态和来源面板一致变化。
- 两个来源冲突时,冲突面板显示双方摘要;无权限的一侧只显示脱敏状态。
- 读取超时或断线后,保留旧快照并明确显示过期,不出现空白页面。
- 在窄屏和键盘操作下,树、正文和依据面板都可进入和返回。