feat: add ops center and node onboarding flow

This commit is contained in:
Your Name
2026-04-18 23:52:51 +08:00
parent 246838ae4c
commit b9c29481b5
142 changed files with 89727 additions and 186 deletions

148
TASK_BOARD.md Normal file
View File

@@ -0,0 +1,148 @@
# TASK_BOARD
更新时间2026-04-18 23:44 CST
## 当前主批次
唯一主批次:大陆节点接管闭环最小路径
目标:
- 把当前项目的最高优先级从“继续扩控制面能力”切到“完成大陆节点接管闭环”
- 只围绕这条最短路径推进:
- 录入大陆节点 SSH 入口
- 生成并复核 bootstrap plan
- 执行 bootstrap
- 建立 register / heartbeat
- 执行 acceptance
-`remote_access_ready``1/3` 提升到 `3/3`
主批次成功标准:
- `mainland-controller-01` 不再是 `pending_bootstrap`
- `mainland-worker-01` 不再是 `pending_bootstrap`
- `ssh_ready >= 2`
- `remote_access_ready = 3/3`
- 大陆两台都具备可由海外控制面统一发起标准动作的条件
当前完成度:
- 已完成 `SSH` 入口录入
- 已完成 `node-handover`
- 已完成 `node-bootstrap-plan`
- 已确认 `ssh_ready = 2`
- 已确认 `remote_access_ready = 3/3`
- 尚未完成:
- `bootstrap`
- `register / heartbeat`
- `acceptance`
- `pending_bootstrap -> 已接管`
## 主批次拆解
### Batch A1
名称:大陆节点接管闭环最小路径
边界:
- 只处理大陆两台:
- `mainland-controller-01`
- `mainland-worker-01`
- 只处理接管闭环,不扩展控制面功能
任务:
- 已完成:
- 录入 `mainland-controller-01` SSH 信息
- 录入 `mainland-worker-01` SSH 信息
- 复查 `ops/nodes`
- 逐台执行 `node-handover`
- 逐台生成并复核 `node-bootstrap-plan`
- 复核:
- `go-live-summary`
- `ops/nodes`
- `release-launchpad`
- 待完成:
- 执行 controller 的 `bootstrap -> register -> heartbeat`
- 执行 worker 的 `bootstrap -> register -> heartbeat`
- 对两台执行 `acceptance`
- 让两台都退出 `pending_bootstrap`
阻塞:
- controller 与 worker 两台大陆节点都缺少 node-agent 相关运行文件
- 远端实际缺失:
- `domain-api/app/node_agent.py`
- `domain-api/app/api/routes/ops_agent.py`
- `domain-api/app/services/ops_agent_service.py`
- `domain-api/deploy/systemd/domain-node-agent.service`
- `domain-api/deploy/multi-region/templates/domaincheck-node-agent.env.example`
- 因此 bootstrap 片段虽然已生成,但远端执行时无法完成安装与启动
阻塞分类:
- 主阻塞:环境问题
- 大陆节点上的仓库内容落后于当前控制面所需的 node-agent 文件集
- 次阻塞:权限 / 外部条件问题
- 当前 SSH 自动执行链默认走密钥模式
- 今晚实际可用的是密码 SSH
## 候选批次
### Candidate B1
名称:接管闭环完成后的上线收口
前提:
- 仅在 `remote_access_ready = 3/3` 后进入
范围:
- 重新跑 `go-live-check / stack-diagnosis / release-launchpad`
- 收口发布前证据
- 判断是否达到正式上线窗口
### Candidate B2
名称:接管闭环完成后的值班自动化细化
前提:
- 仅在大陆两台已进入稳定接管状态后进入
范围:
- 优化运维体验
- 优化日常值班命令
- 优化交接与证据导出
当前不进入:
- `Candidate B1`
- `Candidate B2`
原因:
- 当前虽然 `remote_access_ready = 3/3`
- 但大陆两台仍停在 `pending_bootstrap`
- A1 还没有真正闭环
## 暂停项
以下事项当前不继续推进:
- 新的控制面专题设计
- 新页面、新模块、新专题文档扩写
- 与大陆节点接管闭环无直接关系的 Release Hub 增强
- 与大陆节点接管闭环无直接关系的 runbook / playbook 扩展
- 更细粒度日志分析功能
- 额外的驾驶视图、美化项、信息聚合项
- 任何不能直接推动 `bootstrap -> acceptance -> remote_access_ready=3/3` 的功能开发
## 当前判断
当前项目不缺“继续横向扩能力”的理由,缺的是“把最后两台大陆节点真正纳入闭环”的收口动作。
因此下一轮只围绕主批次 A1 推进。