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

103 lines
5.0 KiB
Markdown
Raw Permalink 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.

# 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` 焦点下 `Enter`ready 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
- [ ] 真实连接失败详情会持续显示在 `Inspector``Status & 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 当前已回填项
- [x] 预构建二进制正常尺寸 shell smoke
- [x] 正常尺寸退出码 `0`
- [x] 正常尺寸日志含六区布局
- [x] 正常尺寸日志含 `Ready`
- [x] 正常尺寸日志含 `Execution Idle`
- [x] 小终端 shell smoke
- [x] 小终端退出码 `0`
- [x] 小终端日志含 `Terminal Too Small`
- [x] 小终端日志含 `Resize the terminal`
- [x] 已确认 `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` 不执行查询。