feat(usable): integrate current dbtool implementation snapshot
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

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Paperclip CTO
2026-04-02 08:26:18 +00:00
parent a28dab4cd9
commit d5f69462b0
73 changed files with 5895 additions and 322 deletions

View File

@@ -48,14 +48,16 @@
- [ ] `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)` 就绪后执行
## 3. 第二阶段 live integration 回归(当前 runner demo path 已可复验
- [ ] 记录本次是否仅验证内置 demo profile不得把 prelaunch env override 误写成 in-app connection management
- [ ] 真实连接列表可加载
- [ ] 真实连接激活可区分 loading / success / failure
- [ ] 真实连接失败详情会持续显示在 `Inspector``Status & Activity`
- [ ] 真实 schema / object / column 可浏览
- [x] 真实 schema / object / column 可浏览
- [ ] empty schema 有明确空状态
- [ ] restricted schema 有明确失败状态
- [x] connection-failure fallback 会把 browser state 渲染为 `unavailable (restricted)`
- [x] successful live restricted schema 可与 empty / hidden 稳定区分(见 `[CMP-64](/CMP/issues/CMP-64)`
- [ ] `Query Editor` 可对真实活动连接执行查询
- [ ] 真实查询会显示 running / success / empty / error
- [ ] 真实 success 结果可浏览
@@ -67,8 +69,8 @@
## 4. 源码 / CI / 发布前回归
- [ ] `cargo build -p dbtool-tui`
- [ ] `cargo test -p dbtool-tui`
- [ ] `unset CARGO_REGISTRIES_CRATES_IO_PROTOCOL && cargo build -p dbtool-tui`
- [ ] `unset CARGO_REGISTRIES_CRATES_IO_PROTOCOL && cargo test -p dbtool-tui`
- [ ] 内联测试与交互 smoke 都能在同一环境复现
- [ ] 仓库存在 TUI 专属 smoke runbook
- [ ] GitHub Actions 覆盖 `dbtool-tui`
@@ -88,13 +90,28 @@
- [x] 小终端日志含 `Resize the terminal`
- [x] 已确认 `dbtool-tui --help` 不能替代 TTY smoke
## 2026-03-31 当前已回填项
- [x] `unset CARGO_REGISTRIES_CRATES_IO_PROTOCOL && cargo build -p dbtool-tui`
- [x] `unset CARGO_REGISTRIES_CRATES_IO_PROTOCOL && cargo test -p dbtool-tui`
- [x] `scripts/tui/live-network-smoke.sh postgres ./target/debug/dbtool-tui`
- [x] `scripts/tui/live-network-smoke.sh mysql ./target/debug/dbtool-tui`
- [x] PostgreSQL failure visibility已见 `Connection Failure``Recovery path``postgres authentication failed`
- [x] PostgreSQL empty result已见 `No rows returned``Execution: Empty`
- [x] PostgreSQL bad SQL已见 `Query error`
- [x] MySQL empty schema已见 `Schema dbtool_demo is empty...`
- [x] MySQL browse-stability已见 `Result columns paged to 2-5 of 6`
- [x] PostgreSQL restricted schema已见 `restricted_probe``Schema failure``schema access is restricted: restricted_probe``Query execution blocked because schema restricted_probe is restricted...`
- [x] current runner 的 live integration 不再等待 `[CMP-34](/CMP/issues/CMP-34)``[CMP-35](/CMP/issues/CMP-35)``[CMP-36](/CMP/issues/CMP-36)`
## 当前阻塞中的回填项
- [ ] 源码重建:当前 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)`
- [ ] 连接 profile 的新增 / 编辑 / 删除 / 保存:当前实现仍未提供可执行 UI path
- [ ] session-only secret entry / cache当前只能记录为待实现不能由 `DBTOOL_PASSWORD` 或 host override 冒充通过
- [ ] 真实 schema / object / column 可浏览:仍需按 usable-v1 口径继续补连续操作证据
- [ ] CI smoke仓库尚未覆盖 `dbtool-tui`
- [ ] release artifact smoke仓库尚未为 `dbtool-tui` 建立产物路径
- [ ] packaged binary / 非开发者 runbook仍缺真实复验证据
## 当前键位一致性说明