143 lines
4.8 KiB
Markdown
143 lines
4.8 KiB
Markdown
# dbtool-tui-v1 第二阶段 owner-backed issues
|
||
|
||
日期:2026-03-27
|
||
作者:CTO
|
||
对应 issue:`CMP-33`
|
||
|
||
## 当前判断
|
||
|
||
- 第一阶段 shell 已完成;第二阶段的目标是接入真实数据与真实执行状态,而不是继续堆占位界面。
|
||
- 第二阶段必须保持 `db-app` 共享边界,不允许 TUI 走 CLI 文本解析旁路。
|
||
- 当前不新增招聘;先用 owner-backed issue 验证真实吞吐与依赖。
|
||
|
||
## Issue 1:后端冻结 TUI live integration 契约
|
||
|
||
- **建议 owner**:Senior Backend Engineer
|
||
- **目标**:为 TUI 提供可直接消费的真实连接、inspect、query、export 集成边界
|
||
- **范围**
|
||
- 明确 TUI 侧需要的 `db-app` 请求 / 响应 / 错误对象
|
||
- 明确适合 worker / channel 回传的执行状态
|
||
- 补共享回归,防止 CLI / TUI 语义漂移
|
||
- **非目标**
|
||
- TUI 界面编码
|
||
- 新数据库能力
|
||
- **输入**
|
||
- `TUI_BACKEND_CONTRACT.md`
|
||
- `crates/db-app`
|
||
- `plans/2026-03-27-dbtool-tui-v1-phase-2-scope.md`
|
||
- **交付物**
|
||
- 更新后的共享契约
|
||
- 对应回归测试
|
||
- 明确的 frontend 接入说明
|
||
- **验收标准**
|
||
- frontend 可以不依赖 CLI 文本直接接入真实数据
|
||
- query / inspect / export 的状态和错误口径可稳定复用
|
||
|
||
## Issue 2:前端接入真实连接与 schema browser
|
||
|
||
- **建议 owner**:Senior Frontend Engineer
|
||
- **目标**:让 `Connections` 与 `Schema Browser` 从占位状态进入真实 shared app 数据流
|
||
- **范围**
|
||
- 激活连接
|
||
- 展示连接成功 / 失败 / loading
|
||
- 拉取 schema / table / column
|
||
- 将活动连接上下文同步到 inspector / status 区
|
||
- **非目标**
|
||
- query 执行
|
||
- result table 真实渲染
|
||
- **输入**
|
||
- `apps/tui`
|
||
- `apps/tui/README.md`
|
||
- `TUI_BACKEND_CONTRACT.md`
|
||
- backend 契约 issue 结果
|
||
- **交付物**
|
||
- 真实 connections / schema browser 接线
|
||
- 对应状态文案与错误提示
|
||
- **验收标准**
|
||
- 用户可以在 TUI 内看到真实连接与真实 schema 结构
|
||
- loading / empty / error 状态保持可读
|
||
|
||
## Issue 3:前端接入真实 query / results / export 工作流
|
||
|
||
- **建议 owner**:Senior Frontend Engineer
|
||
- **目标**:让 `Query Editor`、`Results`、`Status & Activity` 进入真实执行闭环
|
||
- **范围**
|
||
- 执行当前 query
|
||
- 展示成功结果、空结果、执行失败
|
||
- 展示当前结果集的 export 反馈
|
||
- 保持工作区上下文连续
|
||
- **非目标**
|
||
- 高级 SQL 编辑器能力
|
||
- 多 tab / query history
|
||
- **输入**
|
||
- `apps/tui`
|
||
- `TUI_BACKEND_CONTRACT.md`
|
||
- backend 契约 issue 结果
|
||
- Issue 2 的连接 / schema 上下文
|
||
- **交付物**
|
||
- 真实 query / results / export 接线
|
||
- 状态与错误反馈
|
||
- **验收标准**
|
||
- 用户可以在一个 TUI 会话里完成 inspect -> edit -> run -> review -> export
|
||
- 错误与空结果不会退化成空白或瞬时提示
|
||
|
||
## Issue 4:QA 固化第二阶段验收矩阵与回归
|
||
|
||
- **建议 owner**:QA Engineer
|
||
- **目标**:把第二阶段的 live integration 验收和第一阶段 shell 验收彻底分层
|
||
- **范围**
|
||
- 连接激活验收
|
||
- schema browser live 数据验收
|
||
- query / empty / error / export 验收
|
||
- shell baseline 与非交互 smoke 的回归归类
|
||
- **非目标**
|
||
- 新功能定义
|
||
- release 流水线扩展
|
||
- **输入**
|
||
- `TUI_ACCEPTANCE_CHECKLIST.md`
|
||
- `TUI_REGRESSION_CHECKLIST.md`
|
||
- `TUI_TEST_STRATEGY.md`
|
||
- 阶段 2 后端 / 前端 issue 交付结果
|
||
- **交付物**
|
||
- 更新后的验收矩阵
|
||
- 可重复执行的阶段 2 回归清单
|
||
- **验收标准**
|
||
- QA 文档能区分 shell baseline 和 live integration
|
||
- 每个关键用户流都有明确通过 / 失败判断
|
||
|
||
## Issue 5:PM 跟踪第二阶段节奏与依赖
|
||
|
||
- **建议 owner**:Project Manager
|
||
- **目标**:保持第二阶段 issue、依赖和项目状态可见,避免再次出现状态漂移
|
||
- **范围**
|
||
- 依赖图更新
|
||
- 项目状态同步
|
||
- 关键路径和 blocker 更新
|
||
- **非目标**
|
||
- 技术方案变更
|
||
- 实现工作
|
||
- **输入**
|
||
- `plans/2026-03-26-dbtool-tui-v1-delivery-tracking.md`
|
||
- 新创建的阶段 2 owner-backed issues
|
||
- **交付物**
|
||
- 更新后的 delivery tracking 文档
|
||
- 当前关键路径、blocker、owner 分布
|
||
- **验收标准**
|
||
- 项目状态与 issue 面一致
|
||
- 第二阶段主路径对 CTO / CEO 可见
|
||
|
||
## Sequencing
|
||
|
||
1. 后端冻结 TUI live integration 契约
|
||
2. 前端接入真实连接与 schema browser
|
||
3. 前端接入真实 query / results / export
|
||
4. QA 固化第二阶段验收矩阵与回归
|
||
5. PM 跟踪第二阶段节奏与依赖
|
||
|
||
## Gating
|
||
|
||
- Issue 1 未完成前,Issue 2 / 3 不得绕过 shared app 直接写业务旁路
|
||
- Issue 2 未完成前,Issue 3 不应假定活动连接上下文已经稳定
|
||
- Issue 4 不能替代实现 issue,只负责把结果转成可审计验收路径
|
||
- Issue 5 不应把“项目 planned”继续保留到第二阶段已经开工之后
|