Skip to content

Issue 166 Validation

clean edited this page Oct 2, 2026 · 1 revision

Issue #166 验收:改动文件行操作区

  • 日期:2026-10-02(Asia/Shanghai)
  • Issue #166 · 设计 · PR #175
  • 代码:2581dde985545d314ee08ab52ca40b0655a48d35;基线:378192e6fd3688b3d3cbabe86a8751b4ac81b393
  • 环境:macOS arm64,Node v25.5.0,npm 11.8.0,Ego Lite / Chromium 152。生产 Web 构建由真实 Nest 服务提供,独立数据目录、独立临时 Git 仓库;没有修改用户仓库文件。
  • 状态:本地验收通过;PR CI 结果以 PR checks 为准。

复现与方案

修改前运行时读数:24×24px 按钮、12px 图标、999px 圆角,丢弃按钮带红色底色/边框。“+ / −”没有 Tooltip,其他操作使用原生 title。“+” hover 使用与整行相同的 --blue-soft,难以区分。

修改后保留 24px 点击区,4px 圆角、2px 间距。危险按钮默认只保留红色图标。hover 使用独立背景/边框,选中行上也可辨认。Tooltip 复用已有组件并显式配对主题色,支持键盘焦点;丢弃确认浮层打开时不再显示 Tooltip。

验证结果

检查 实际执行与结果
构建 shared、ssh-client、server 基线构建通过;最终 npm run build -w web 通过,保留已有大 bundle 提醒
Web 测试 最终 npm test -w web:229 通过、0 失败、0 跳过
提交检查 git diff --check、npm run commitlint -- --last --verbose 通过
操作说明 逐一 hover 暂存、取消暂存、丢弃、删除新增文件、打开仓库、打开 Worktree、本地忽略;中文文案准确,操作按钮原生 title 数量为 0
hover / 布局 鼠标移出恢复默认色;hover 前后测量按钮矩形一致,没有布局跳动
键盘 Tab/焦点显示 2px 主色外环和 Tooltip;Enter 暂存后焦点移到对应取消暂存按钮;Esc 关闭确认浮层
丢弃确认 默认不可提交,勾选后才可丢弃;打开时 Tooltip 隐藏;取消不更改文件。实际丢弃部分暂存文件后磁盘与 index 都保留 staged 行,仅移除 unstaged 行
暂存 / 取消暂存 UI 点击与键盘操作实际调用 API;Git index/工作区状态正确,原选中文件未被其他行按钮误选
删除 分别确认删除未跟踪和已暂存新增文件,核验磁盘与索引删除,列表随状态刷新
加载 / 禁用 注入 1200ms 网络延迟后操作;行内所有按钮 disabled,透明底色、无交互边界、opacity 0.5;Tooltip 隐藏且保留 loading 图标
条件操作 打开嵌套仓库及 Worktree 导航成功;本地忽略写入 /nested-repo/ 到 .git/info/exclude,列表隐藏且磁盘目录保留
主题 / 窄面板 浅/深、普通/选中行、320px 与 280px 改动面板、390×844 窗口;按钮均为 24×24px 且位于面板边界内,页面无横向溢出
Tooltip 对比度 浅色 14.53:1,深色 12.10:1,计算基于实际 computed style,见附件 JSON
减少动态效果 使用 prefers-reduced-motion=reduce 验证最终主题与交互

截图

全部截图来自实际应用及隔离测试数据。修改前原始视口1500×791,修改后桌面视口 1440×900;面板均为 320px。窄面板为 280px。文件数在操作验收中会随暂存/删除变化。

修改前后

修改前:危险按钮持续显示胶囊底色和边框

修改后:轻量图标和独立 hover,统一 Tooltip

深色选中行:文字清晰的 Tooltip 与按钮状态

窄面板与键盘

280px 浅色面板

280px 深色面板

390px 窗口

键盘焦点与说明

操作状态

丢弃确认保留勾选门槛,隐藏 Tooltip

延迟请求期间禁用行操作

主题与尺寸测量 JSON

限制

  • 这里是本机真实 Git 数据流验收;SSH、Electron 打包、Windows/Linux 图形界面未单独重跑。CI 跨平台测试以 PR 的实际 checks 为准。
  • 720×450 CSS 视口及 2× 像素密度用于等效缩放布局观察,不等同于浏览器原生 200% 缩放操作;布局截图。
  • 沿用桌面密集列表 24px 命中区,没有宣称达到真实触摸设备的 44px 目标或全站无障碍合规。
  • 不同主题切换后重新测量并检查截图;验收过程遇到的选择器超时(原生 Diff dialog、提示队列、Tooltip 覆盖相邻行)已通过观察真实页面状态修正,没有以脚本 dispatch 代替正常点击。

回退

回退 PR 代码提交可恢复旧样式。Wiki 页面和图片属于独立仓库,需要单独回退对应 Wiki 提交。

Clone this wiki locally