Files
cdp_hub/docs/08-interaction-checklist.md
T

45 lines
9.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 交互清单
| ID | 页面/组件 | 交互 | 状态覆盖 | 优先级 |
| --- | --- | --- | --- | --- |
| IX-001 | 实例列表 | 新建、启动、刷新、查看详情 | 加载、空、托管运行、外部已关联、外部占用、退出、失败 | P0 |
| IX-002 | 启动表单 | 浏览器类型、路径、user data dir、URL、参数校验 | 默认、校验错误、提交中、成功 | P0 |
| IX-003 | 实例详情 | 优雅关闭、强制终止、重启 | 运行中、关闭中、超时确认、权限错误 | P0 |
| IX-004 | 占用提示 | 查看 PID/来源和关联端口并重试 | 外部已关联、被占用、身份未知、已释放 | P0 |
| IX-005 | 设置 | 默认路径、日志、数据目录和远程调试起始端口 | 保存成功、路径无效、端口无效、权限拒绝 | P1 |
| IX-006 | 本地 CDP 启动 | 从起始端口分配、校验端点、展示实际端口 | 分配中、已关联、端口冲突、端点失效、外部不接管 | P1 |
| IX-007 | 实例刷新与编辑 | F5/刷新、双击/Enter/编辑图标、目录选择、保存/取消/Escape | 空闲、刷新中、部分失败、字段错误、脏表单、只读运行态、保存成功 | P1 |
| IX-008 | 代理设置与选择器 | 完整地址下拉选择、新增/更新、删除确认;创建/编辑实例选择代理 | 空列表、无代理、格式错误、重复地址、删除取消、被引用删除、保存成功 | P1 |
| IX-009 | 实例主启停操作 | 主操作、编辑、删除的固定顺序与间距;启动图标、停止图标、外部重新检测 | 已退出、启动中、托管运行、停止中、失败恢复、外部关联 | P1 |
| IX-010 | 受管浏览器退出提示 | 受管根进程退出后的状态恢复、提示队列和焦点回归 | 意外退出、Chub 请求停止、多个同时退出、过期事件、编辑/确认弹层打开、应用关闭 | P1 |
| IX-011 | 实例首选调试端口 | 新建/编辑端口推荐、列表建议/准备/实际/外部文案、启动回退与保存 | 旧配置迁移、重复/非法端口、外部冲突、启动失败、外部关联、过期结果 | P1 |
| IX-012 | CDP 页面目标查看 | 编辑弹层的“查看标签页”、只读目标列表与关闭 | 无可验证端口、读取中、空列表、读取失败、状态变更、Escape/焦点回归 | P1 |
| IX-013 | Windows 通知区域 | 图标双击/默认显示、原生菜单刷新与退出 | 图标创建失败、Explorer 重启、窗口最小化、菜单关闭、刷新中、应用退出 | P1 |
| IX-014 | 配置启动与迁移 | exe 同级配置解析、legacy 配置迁移和可恢复失败反馈 | 新配置、合法 legacy、目标优先、畸形 legacy、目标目录不可写、重复启动 | P1 |
| IX-015 | 代理名称、默认目录与列表列 | 代理名称/地址保存、下拉回填、实例默认目录、代理名称展示 | 新建、编辑、重名/重复地址、无代理、长名称、窄窗口、目录权限失败 | P1 |
| IX-016 | 设置浏览器 executable 路径 | Chrome/Edge 选择本机 `.exe`、搜索标准安装位置与取消 | 选择中、用户取消、选择失败、非法结果、搜索中、取消、路径更新、确认当前路径、未找到、切换页面 | P1 |
| IX-017 | 实例删除及数据删除 | 删除配置确认、显式勾选 User Data Dir、后台占用复核和文件删除 | 默认配置删除、已勾选、运行/外部禁用、删除中、用户取消、占用、路径拒绝、权限/I/O 失败、成功、迟到结果 | P1 |
## 通用规则
- 异步操作不阻塞窗口线程,提交中禁用重复按钮。
- 危险操作说明影响范围,默认焦点在取消;Escape 可取消。
- 进程状态同时使用文字、图标和颜色,不只用颜色表达。
- 关闭完成后焦点回到实例行;失败时保留表单和用户输入。
- 验证 960x640、600x500、100%–200% 缩放、键盘、深色和高对比度回退。
- 不依赖悬停或触控手势完成关键任务。
- 实例列表使用外层边框、文字状态和图标区分归属;端口为空时显示“—”,外部关联时操作区不显示关闭或重启。
- 刷新和编辑是独立命令:刷新为只读状态检查,编辑只保存配置;两者均不接管外部实例。F5 与刷新按钮共用一个去重命令。
- 双击不是唯一入口:单击只选择行,Enter 和编辑图标打开对话框。打开后焦点位于名称,关闭后返回调用行;有未保存编辑时 Escape 先请求确认。
- 代理选择器必须提供“无代理”和完整地址项,能用键盘选择;设置页默认输入为空,选择项回填地址。删除前先确认完整地址;有引用时保持当前选择、输入与实例选择不变。
- 代理设置使用显式保存:名称和地址都有可见 Label,名称必填、去首尾空白且不区分大小写唯一;地址仍为无认证端点。选择器以“名称 · 地址”区分项,设置选择会同时回填两项;保存失败时保留两项输入并在对应字段附近显示原因。实例表格的“代理”列只显示名称或“无代理”,位于“用户数据目录”与“调试端口”之间;列宽受限时省略长名称但不挤压操作列,完整值仍可从编辑表单访问。
- 新建表单打开时,User Data Dir 预填 `<exe-dir>\\user_data_dirs\\<stable-instance-id>`,并说明它是独立 profile。目录选择或手动输入可覆盖默认值;取消/校验失败保留输入。UI 不自行读取 executable 路径、创建目录或检查权限;后台/持久化边界返回权限失败后给出文本恢复建议。新建表单、编辑弹层和列表在 600px 宽度、200% 缩放、长代理名称下保持 Label、字段与行内操作可访问;代理列不改变单击、双击、Enter 或操作图标的既有语义。
- 实例主操作根据归属和状态切换启动、停止、重新检测或禁用,并固定排在编辑和删除之前。停止中禁止重复请求;停止失败恢复原状态并保留焦点。外部关联不显示停止入口;行内图标间距与命中区必须避免误操作。
- 受管浏览器意外退出是当前会话的异步状态提示,不是用户确认决策:状态先更新为“已退出”,再显示可关闭信息弹层;弹层只含“知道了”,Escape/Enter 均可关闭,关闭后焦点回到对应启动入口。多个退出合并到一个提示;已有编辑、未保存确认或删除确认弹层时排队,不能丢弃输入或叠加模态层。Chub 发起停止、外部实例、代次/PID 不匹配和应用退出取消监控时均不提示。
- 调试端口的“建议/准备/实际/外部”必须同时以文字和数值表达,不能将首选端口称为已监听端口。创建和停止实例编辑使用首选端口输入;运行中、启动中、停止中和外部关联实例只读。推荐仅基于 Chub 保存实例,系统端口复检与 CDP 校验只在后台启动任务执行;回退不得使用其他 Chub 实例的逻辑预留端口。
- CDP 页面目标查看是只读、可关闭的临时对话框:入口仅对已有实际已验证端口的“运行中”或“外部已关联”实例可用;打开后焦点位于关闭按钮,Escape 关闭并回到“查看标签页”入口。读取中、空列表和错误均用文字表达,错误不丢失编辑输入;结果只含标题、类型和脱敏 URL,不能把目标 ID、WebSocket URL 或物理窗口 ID当作控制授权。
- 通知区域图标是 Windows 原生的辅助入口,不替代页面内可键盘访问的实例操作。图标默认项为“显示 Chub”,双击同效;右键菜单顺序固定为显示、刷新、分隔线、退出。刷新复用页面刷新命令并在进行中禁用重复项;退出是应用级命令,不能伪装为关闭单个浏览器。Tooltip 使用文字汇总,不含实例名称或敏感字段。菜单关闭不改变状态;图标失效或 Explorer 重启后后台重建,不抢焦点。首版不提供“关闭时隐藏到通知区域”。
- 配置迁移不是用户可编辑表单:应用启动时在 platform 层完成,GUI frame 不读取或写入文件。成功迁移仅以不打扰操作的文本说明来源已更新;失败时保留实例列表输入与当前可见页面,给出“程序目录中的 config.json 无法使用;请检查目录权限或恢复旧配置”的可恢复提示,不能显示完整配置、代理地址或用户路径。无需 HTML 原型,因为不新增可操作控件;需以真实 Windows 文件权限和 CLI/GUI 启动验证。
- 浏览器 executable 路径的“选择”和“搜索”是字段级异步操作:选择中禁止同一字段重复打开,搜索中按钮显示“取消”。每个结果都紧邻其 Chrome/Edge 路径字段显示,不能只写到需滚动才能看见的页面底部。用户取消、系统错误、空结果或不为绝对 `.exe` 的结果均保留原输入;搜索命中当前值时显示明确确认而不是静默完成。两个字段、页面切换和迟到结果彼此隔离;键盘与触控均可触发“选择”和“搜索/取消”。本次是既有控件的局部行为修复,不新增信息架构或视觉模式,因此无需改动 HTML 原型;须以真实 Windows 文件对话框 smoke 验收。
- 实例删除确认框默认焦点在“取消”,Escape/关闭与取消同效。默认“删除实例”只删除配置,并明确 User Data Dir 保留;“同时删除 User Data Dir 中的数据”是默认未选中的业务复选框,不与行选择混淆。勾选后显示完整目录和不可恢复警告,确认按钮使用具体“删除实例及数据”文案;仅“已退出”/“启动失败”可勾选,其他状态禁用且说明原因。数据删除中弹层保持、背景不可用且不提供伪取消;结果通过实例 ID、目录快照和请求代次过滤。成功后焦点回到可预测的相邻实例操作;检查、占用、边界、权限或 I/O 失败时保留当前实例、勾选和弹层,并说明目录与配置均未删除、可先停止浏览器或检查权限后重试。