feat(usable): integrate current dbtool implementation snapshot
Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
|
||||
- 当前结论:`no-go`。
|
||||
- 原因 1:CLI 已有较强真实使用证据,但 `dbtool-usable-v1` 不能只按 CLI 通过来判定整体通过。
|
||||
- 原因 2:TUI 已形成 PostgreSQL / MySQL demo live happy path,但仍缺 failure / empty / restricted / browse-stability 等更广覆盖证据。
|
||||
- 原因 2:TUI 已形成 PostgreSQL / MySQL demo live happy path,并已补齐 PostgreSQL `restricted schema` runner-side 直证;当前 `no-go` 已收敛到 packaged artifact、跨平台 release runner 与 traceability 证据,而不是 restricted 语义缺口。
|
||||
- 原因 3:发布链路仍缺 GitHub macOS / Windows runner 与 packaged binary 的真实执行证据。
|
||||
- 当前统一台账见 `USABLE_EVIDENCE_LEDGER.md`,当前发布门槛结论与模板见 `USABLE_RELEASE_GATE.md`。
|
||||
|
||||
@@ -113,31 +113,33 @@
|
||||
|
||||
## PostgreSQL / MySQL failure-path 补证最短闭环
|
||||
|
||||
1. 在 Docker-capable 宿主机按 `QA_RUNTIME_ENVIRONMENT.md` 拉起 `docker compose -f docker-compose.demo.yml up -d postgres mysql`,并执行两份 bootstrap 脚本。
|
||||
2. 按 `HOST_FAILURE_PATH_CHECKLIST.md` 的顺序执行 6 个场景,记录格式继续使用 `FAILURE_PATH_EVIDENCE_TEMPLATE.md`:
|
||||
1. 在发起宿主机或 sidecar live 执行前,先跑 `scripts/qa/test-failure-path-fixtures.sh`;若只想缩小到单一路径,可改跑 `scripts/qa/test-failure-path-fixtures.sh format` 或 `scripts/qa/test-failure-path-fixtures.sh sidecar`。
|
||||
2. 在 Docker-capable 宿主机按 `QA_RUNTIME_ENVIRONMENT.md` 拉起 `docker compose -f docker-compose.demo.yml up -d postgres mysql`,并执行两份 bootstrap 脚本。
|
||||
3. 按 `HOST_FAILURE_PATH_CHECKLIST.md` 的顺序执行 6 个场景,记录格式继续使用 `FAILURE_PATH_EVIDENCE_TEMPLATE.md`:
|
||||
- `PG-CONN-AUTH-001`
|
||||
- `PG-CONN-NET-001`
|
||||
- `PG-QUERY-SQL-001`
|
||||
- `MY-CONN-AUTH-001`
|
||||
- `MY-CONN-NET-001`
|
||||
- `MY-QUERY-SQL-001`
|
||||
3. 每条证据都必须留:UTC 时间、操作者、宿主机、execution path、binary path、`--version`、commit SHA、branch、完整命令、退出码、关键 JSON / 错误摘要、最终 verdict。
|
||||
4. 先把原始执行包回填到对应 issue / heartbeat 评论,再同步更新 `USABLE_EVIDENCE_LEDGER.md` 与 `USABLE_RELEASE_GATE.md`。
|
||||
5. 若 `status` / `state` / `error.kind` 任何一项偏离模板预期,不把它记成“补证完成”,而是单独拆 defect issue。
|
||||
6. 如需减少人工抄录,可在宿主机直接运行 `scripts/qa/run-failure-path-evidence.sh ./target/release/dbtool all ./tmp/failure-path-evidence`;当前 helper 会自动校验 `status` / `state` / `error.kind`、traceability 完整性,并对可检测到的密码泄露模式直接判 `fail`,但仍需逐条人工复核生成的 markdown 包。
|
||||
7. 2026-03-28 当前 QA 容器虽已可访问 Docker daemon,但仍不能直接访问 `127.0.0.1:55432/53306` 或数据库容器 IP;当前有效执行路径是 sidecar container 加入 `dbtool-cli-v1_default` 网络后运行 `dbtool`。
|
||||
4. 每条证据都必须留:UTC 时间、操作者、宿主机、execution path、binary path、`--version`、commit SHA、branch、完整命令、退出码、关键 JSON / 错误摘要、最终 verdict。
|
||||
5. 先把原始执行包回填到对应 issue / heartbeat 评论,再同步更新 `USABLE_EVIDENCE_LEDGER.md` 与 `USABLE_RELEASE_GATE.md`。
|
||||
6. 若 `status` / `state` / `error.kind` 任何一项偏离模板预期,不把它记成“补证完成”,而是单独拆 defect issue。
|
||||
7. 如需减少人工抄录,可在宿主机直接运行 `scripts/qa/run-failure-path-evidence.sh ./target/release/dbtool all ./tmp/failure-path-evidence`;当前 helper 会自动校验 `status` / `state` / `error.kind`、traceability 完整性,并对可检测到的密码泄露模式直接判 `fail`,但仍需逐条人工复核生成的 markdown 包。
|
||||
8. 2026-03-28 当前 QA 容器虽已可访问 Docker daemon,但仍不能直接访问 `127.0.0.1:55432/53306` 或数据库容器 IP;当前有效执行路径是 sidecar container 加入 `dbtool-cli-v1_default` 网络后运行 `dbtool`。
|
||||
|
||||
## 产品 blocker
|
||||
|
||||
- `dbtool-usable-v1` 还不能把 TUI 视为“已完整签收”的跨库操作台;当前已覆盖 live happy path,但覆盖仍偏窄。
|
||||
- TUI 的 PostgreSQL / MySQL 真实激活、基础 schema 加载、查询与导出已进入可验状态。
|
||||
- TUI 的 failure / empty / restricted / browse-stability 仍缺最新直接 runner 证据。
|
||||
- TUI 的 failure / empty / browse-stability / PostgreSQL restricted schema 已有 runner 直证;当前整体 `no-go` 主要来自 packaged artifact、跨平台 release runner 与 traceability 证据缺口。
|
||||
- PostgreSQL / MySQL 的 failure-path 已有最新直接执行证据,且最新 sidecar 复验已确认 6 个场景全部满足模板预期。
|
||||
|
||||
## 环境 / 证据 blocker
|
||||
|
||||
- 当前 QA runner 已能访问 `docker` daemon,但仍缺 `docker compose` 子命令。
|
||||
- 当前 QA runner 不能直接访问 `127.0.0.1:55432/53306` 或数据库容器 IP;TUI 当前有效入口是 `host.docker.internal` + TTY smoke 脚本。
|
||||
- 当前 PostgreSQL demo / TUI `reporting-postgres` profile 已可通过 non-superuser `dbtool` + restricted probe 稳定复现 `restricted schema`;runner-side 证据已存在于 `/tmp/cmp64-role-probe-v4.json`、`/tmp/cmp64-postgres-root-inspect-v4.json`、`/tmp/cmp64-postgres-restricted-schema-inspect-v4.stderr.txt`、`/tmp/cmp64-postgres-restricted-query-v4.stderr.txt` 与 `/tmp/cmp64-tui-restricted-live-v6.log`。
|
||||
- GitHub macOS / Windows release runner 仍缺真实执行日志与产物 smoke 证据。
|
||||
- release artifact / packaged binary 的 binary path 与 commit SHA / branch 仍待补齐,可追溯性不足。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user