Files
dbtool-cli-v1/TUI_REGRESSION_CHECKLIST.md
Paperclip CTO 19aeb7784b
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: add dbtool tui live query workspace
- add shared db-app layer for connect/inspect/query/export events
- add dbtool-tui workspace with sqlite-local live flow and QA docs
- include host-validated acceptance updates for CMP-36

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-27 17:17:20 +00:00

4.5 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 可执行)

  • printf 'q' | script -qec 'stty rows 40 cols 120; ./target/debug/dbtool-tui' /tmp/tui-normal.log
  • 确认退出码为 0
  • 确认日志包含 Connections
  • 确认日志包含 Schema Browser
  • 确认日志包含 Query Editor
  • 确认日志包含 Results
  • 确认日志包含 Inspector
  • 确认日志包含 Status & Activity
  • 确认日志包含 Ready
  • 确认日志包含 Execution Idle
  • 确认日志包含静态连接 / schema / result 示例文本
  • printf 'q' | script -qec 'stty rows 20 cols 90; ./target/debug/dbtool-tui' /tmp/tui-small.log
  • 确认退出码为 0
  • 确认日志包含 Terminal Too Small
  • 确认日志包含 Resize the terminal
  • 明确记录:dbtool-tui --help 不是有效的非交互 smoke

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 状态轮转或运行占位逻辑
  • 结果区可区分 success / empty / error
  • Results 焦点下 [ / ]:宽表列分页
  • Results 焦点下 / :结果行移动
  • l / e / r:状态切换
  • Esc:恢复默认工作台
  • 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 建立产物路径