104 lines
4.2 KiB
Markdown
104 lines
4.2 KiB
Markdown
# dbtool-usable-v1 发布门槛结论
|
||
|
||
## 当前快照
|
||
|
||
- 日期:2026-03-31
|
||
- QA 结论:`no-go`
|
||
- 判断类型:evidence-based gate
|
||
|
||
## 当前 gate 判断
|
||
|
||
### 已满足
|
||
|
||
- CLI / SQLite 主路径与关键 failure-path 具备 2026-03-28 最新直接执行证据
|
||
- CLI / PostgreSQL happy path 具备宿主机证据
|
||
- CLI / MySQL happy path 与 Unicode/export 具备宿主机证据
|
||
- TUI shell baseline 具备 2026-03-28 最新直接执行证据
|
||
- TUI / `sqlite-local` local live 已有局部真实工作流证据,但只能记为 `partial`
|
||
- TUI / PostgreSQL live demo path 已具备 2026-03-31 当前 runner 直接执行证据
|
||
- TUI / MySQL live demo path 已具备 2026-03-31 当前 runner 直接执行证据
|
||
- Linux artifact smoke 具备 2026-03-28 直接执行证据
|
||
|
||
### 未满足
|
||
|
||
- TUI 仍缺 failure / empty / restricted / result-browsing 等 live 覆盖证据,尚不足以宣布长期可持续使用体验完成
|
||
- TUI release artifact / packaged binary 仍缺真实 smoke 证据
|
||
- GitHub macOS / Windows release runner 仍缺真实执行日志
|
||
- 发布追溯性仍缺 binary path、commit SHA / branch 留档
|
||
|
||
## PostgreSQL / MySQL failure-path 收口规则
|
||
|
||
- 只有当 `HOST_FAILURE_PATH_CHECKLIST.md` / `FAILURE_PATH_EVIDENCE_TEMPLATE.md` 定义的 6 个场景至少各有一条可审计记录时,failure-path blocker 才能从 `未满足` 移除。
|
||
- 每条记录都必须带 UTC 时间、操作者、宿主机、binary path、`--version`、commit SHA、branch、完整命令、退出码、关键输出摘要。
|
||
- 若任一场景的 `status` / `state` / `error.kind` 偏离模板预期,应先按 defect 管理,而不是直接宣称 failure-path 已补齐。
|
||
|
||
## Blocker 分类
|
||
|
||
### 产品 blocker
|
||
|
||
- TUI 已不再停留在纯 shell 演示;当前 runner 已直接通过 PostgreSQL / MySQL demo live happy path。
|
||
- 但单条 happy path 还不能等价为“可持续使用”:失败连接、空 schema / restricted schema、空结果 / 错误结果、结果浏览稳定性仍缺完整 runner 证据。
|
||
- usable-v1 还无法以单一产品口径声明“技术操作者可在终端中持续完成跨库任务”。
|
||
|
||
### 环境 / 证据 blocker
|
||
|
||
- 当前 QA runner 已有 `docker` daemon,但缺 `docker compose`
|
||
- 当前 QA runner 可直接复跑源码测试,并已通过 `host.docker.internal:55432/53306` 完成 TUI live smoke;但标准 `docker compose` runbook 仍无法原样复跑
|
||
- 当前 QA runner 不能直接访问 `127.0.0.1:55432/53306`;当前有效入口是 `host.docker.internal` + TTY smoke 脚本
|
||
- 缺 GitHub macOS / Windows runner 实跑证据
|
||
- 缺 release artifact / packaged binary 的执行追溯性字段
|
||
|
||
## 最新复验
|
||
|
||
- 2026-03-28 最新 sidecar 复跑已确认 PostgreSQL auth / network / bad-SQL 与 MySQL auth / network / file-based bad-SQL 全部满足 failure-path 模板预期。
|
||
- [CMP-53](/CMP/issues/CMP-53) 已被当前 release binary 复验为修复完成,不再计为活跃 backend blocker。
|
||
- 2026-03-31 当前 runner 已直接执行 `scripts/tui/live-network-smoke.sh postgres ./target/debug/dbtool-tui` 与 `scripts/tui/live-network-smoke.sh mysql ./target/debug/dbtool-tui`,两条路径都完成连接激活、schema 加载、查询成功与 CSV 导出。
|
||
- 当前 `no-go` 判断继续成立,但原因已收敛为 TUI live 覆盖深度不足、跨平台 release 证据缺口与 release traceability 缺口,而不是“缺少 TUI network live path”或活跃的 CLI backend contract defect。
|
||
|
||
## 通过规则
|
||
|
||
- 只有当 CLI、TUI、release evidence 三条线都形成可审计闭环时,usable-v1 才能从 `no-go` 转为 `go`
|
||
- 只补文档、不补执行证据,仍是 `no-go`
|
||
- 只证明 CLI 可用、TUI 仍停留在演示态,仍是 `no-go`
|
||
|
||
## 结论模板
|
||
|
||
后续发布判断应至少包含以下字段:
|
||
|
||
```md
|
||
# dbtool-usable-v1 Release Gate
|
||
|
||
- Date:
|
||
- Reviewer:
|
||
- Verdict: `go` | `no-go`
|
||
- Evidence Window:
|
||
- Binary / Artifact:
|
||
- Commit SHA / Branch:
|
||
|
||
## Product Gates
|
||
|
||
- CLI / SQLite:
|
||
- CLI / PostgreSQL:
|
||
- CLI / MySQL:
|
||
- TUI / shell baseline:
|
||
- TUI / network live:
|
||
|
||
## Release Gates
|
||
|
||
- Linux runner:
|
||
- macOS runner:
|
||
- Windows runner:
|
||
- Artifact smoke:
|
||
- Traceability:
|
||
|
||
## Blocking Items
|
||
|
||
- Product blockers:
|
||
- Evidence blockers:
|
||
|
||
## Notes
|
||
|
||
- Residual risks:
|
||
- Follow-up issues:
|
||
```
|