Files
dbtool-cli-v1/USABLE_RELEASE_GATE.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

104 lines
4.2 KiB
Markdown
Raw 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-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:
```