feat: add dbtool tui live query workspace
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

- 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>
This commit is contained in:
Paperclip CTO
2026-03-27 17:17:20 +00:00
parent 7424491944
commit 19aeb7784b
12 changed files with 5006 additions and 4 deletions

View File

@@ -36,6 +36,34 @@
- 链接器受限的 Linux 环境:使用 `zig cc` 作为 host linker 执行 `cargo check` / `cargo test`
当前 `connect` / `inspect` / `query` / `export` 在 PostgreSQL、MySQL 与 SQLite 的共享抽象上都已经可用;当前剩余工作主要是 Docker 环境下的跨数据库 smoke 与发布链路。
同时,仓库现已提供 `crates/db-app` 作为 CLI / TUI 共享应用层,并为各命令新增 `--result-format json` 以输出结构化结果;当前还补充了 `AppOperation``OperationState``AppEvent<T>` 作为 TUI worker/channel 的稳定执行契约,详见 `TUI_BACKEND_CONTRACT.md`
## TUI Shell Baseline
仓库现已补充 `apps/tui`,用于承载 `dbtool-tui-v1` 的终端工作台骨架,不改变当前 CLI 首发范围。
当前 TUI baseline 提供:
- 独立 `dbtool-tui` 入口
- 顶部导航、六区主布局和底部快捷键提示
- 面板焦点管理与基础键盘导航
- `sqlite-local` 的真实 connect / inspect 路径
- `sqlite-local` 的真实 query / results / export 工作流
- `Ready` / `Loading` / `Error` 基础状态框架
运行方式:
```bash
cargo run -p dbtool-tui
```
若当前环境缺少 Rust 工具链,可先使用已有二进制:
```bash
./target/debug/dbtool-tui
```
详细范围与验收说明见 `apps/tui/README.md`,共享 UI 方案见 `plans/2026-03-26-dbtool-tui-shell-ui-scope.md`
## Workspace 结构