Files
dbtool-cli-v1/TUI_REGRESSION_CHECKLIST.md
Paperclip CTO a28dab4cd9
Some checks failed
release-smoke / macos-13 / x86_64-apple-darwin (push) Has been cancelled
release-smoke / ubuntu-latest / x86_64-unknown-linux-gnu (push) Has been cancelled
release-smoke / windows-latest / x86_64-pc-windows-msvc (push) Has been cancelled
feat(usable): package gui-host validation snapshot
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-31 10:21:36 +00:00

5.0 KiB
Raw Blame History

dbtool-tui-v1 回归清单(阶段 2 分层版)

0. 记录前提

  • 记录验证日期、验证人、issue / heartbeat
  • 记录二进制路径:target/debug/dbtool-tui、源码构建产物或 packaged binary
  • 记录是否为“预构建二进制验证”还是“源码重建验证”
  • 记录终端尺寸、输入按键、输出日志路径
  • 若 live integration 已接线,记录对应 issue、构建版本、demo 环境与 seed 来源
  • 若任一步骤未执行,记录原因:未实现、缺环境、被上游 blocker 卡住,或非当前范围

1. Shell baseline 回归(当前 runner 可执行)

  • scripts/tui/smoke-tty.sh ./target/debug/dbtool-tui
  • 确认退出码为 0
  • 确认日志包含 Connections
  • 确认日志包含 Schema Browser
  • 确认日志包含 Query Editor
  • 确认日志包含 Results
  • 确认日志包含 Inspector
  • 确认日志包含 Status & Activity
  • 确认日志包含 Ready
  • 确认日志包含 Execution Idle
  • 确认日志包含静态连接 / schema / result 示例文本
  • scripts/tui/smoke-tty.sh ./target/debug/dbtool-tui 20 90 /tmp/tui-small.log
  • 确认退出码为 0
  • 确认日志包含 Terminal Too Small
  • 确认日志包含 Resize the terminal
  • 明确记录:dbtool-tui --help 不是有效的非交互 smoke若已重建源码应输出 TTY-required 提示

2. Shell 交互回归(静态 / 示例数据,不等于 live

  • Tab / Shift+Tab:焦点在六个面板之间移动
  • 1 / 2 / 3 / :顶部视图切换
  • Connections 焦点下 / :连接选择移动
  • Connections 焦点下 Enter:激活所选静态连接并同步工作区上下文
  • 失败连接激活后仍保持可见错误
  • Schema Browser 焦点下 / schema / object 选择移动
  • Schema Browser 焦点下 Enterready schema 展开 / 折叠empty / restricted schema 给出明确反馈
  • Query Editor 焦点下 [ / ]:切换静态 query 草稿
  • i:进入插入模式并可录入字符 / 换行
  • Enter:在 Query Editor 焦点下触发查询执行;插入模式下只插入换行
  • 结果区可区分 success / empty / error
  • Results 焦点下 [ / ]:宽表列分页
  • Results 焦点下 / :结果行移动
  • r:同时清空 query / export feedback并恢复 Ready
  • 查询运行中按 x / j:界面提示等待当前查询完成
  • Esc:导航模式下恢复默认工作台;插入模式下退出到 navigate mode
  • q:稳定退出并释放 alternate screen

3. 第二阶段 live integration 回归(仅在 [CMP-34](/CMP/issues/CMP-34)[CMP-35](/CMP/issues/CMP-35)[CMP-36](/CMP/issues/CMP-36) 就绪后执行)

  • 真实连接列表可加载
  • 真实连接激活可区分 loading / success / failure
  • 真实连接失败详情会持续显示在 InspectorStatus & Activity
  • 真实 schema / object / column 可浏览
  • empty schema 有明确空状态
  • restricted schema 有明确失败状态
  • Query Editor 可对真实活动连接执行查询
  • 真实查询会显示 running / success / empty / error
  • 真实 success 结果可浏览
  • 真实 empty 结果不会误记为错误
  • 真实 error 结果带可读定位线索
  • export 操作有成功 / 失败反馈
  • 工作区上下文在 inspect -> edit -> run -> review -> export 之间保持连续
  • 全路径确认未解析 CLI 文本

4. 源码 / CI / 发布前回归

  • cargo build -p dbtool-tui
  • cargo test -p dbtool-tui
  • 内联测试与交互 smoke 都能在同一环境复现
  • 仓库存在 TUI 专属 smoke runbook
  • GitHub Actions 覆盖 dbtool-tui
  • packaged binary 在目标平台可执行
  • 非开发者按 runbook 可复现最小验收

2026-03-27 当前已回填项

  • 预构建二进制正常尺寸 shell smoke
  • 正常尺寸退出码 0
  • 正常尺寸日志含六区布局
  • 正常尺寸日志含 Ready
  • 正常尺寸日志含 Execution Idle
  • 小终端 shell smoke
  • 小终端退出码 0
  • 小终端日志含 Terminal Too Small
  • 小终端日志含 Resize the terminal
  • 已确认 dbtool-tui --help 不能替代 TTY smoke

当前阻塞中的回填项

  • 源码重建:当前 runner 缺 cc / zig cc
  • 源码测试:当前 runner 缺 cc / zig cc
  • live integration 回归:等待 [CMP-34](/CMP/issues/CMP-34)[CMP-35](/CMP/issues/CMP-35)[CMP-36](/CMP/issues/CMP-36)
  • CI smoke仓库尚未覆盖 dbtool-tui
  • release artifact smoke仓库尚未为 dbtool-tui 建立产物路径

当前键位一致性说明

  • 当前实现不存在 l / e 的状态切换快捷键;若历史记录出现该表述,应视为旧文档残留而不是当前行为。
  • 当前恢复语义固定为:Esc 回稳定态、r 清反馈、Enter 依焦点执行、插入模式下 Enter 不执行查询。