fix: surface distributed detect participation
This commit is contained in:
@@ -1,124 +1,131 @@
|
||||
# TASK_BOARD
|
||||
|
||||
更新时间:2026-04-19 02:25 CST
|
||||
更新时间:2026-04-19 02:33 CST
|
||||
|
||||
## 当前主批次
|
||||
|
||||
唯一主批次:`F1-分布式检测实跑收口批`
|
||||
唯一主批次:`G1-检测总览口径统一批`
|
||||
|
||||
目标:
|
||||
|
||||
- 不进入新功能实现
|
||||
- 不扩展控制面页面
|
||||
- 只确认“海外发起检测 -> 大陆 controller 拉任务 -> 大陆节点执行”已经真实跑通
|
||||
- 收敛剩余唯一问题:控制面检测总览口径仍停留在旧活跃任务视图
|
||||
- 不扩展控制面
|
||||
- 只收口 Detect 页面“大陆明明在跑,但页面像没跑”的口径问题
|
||||
|
||||
## 本轮已完成
|
||||
|
||||
本轮完成了最小可见修复:
|
||||
|
||||
- `detect/job/active`
|
||||
- 新增:
|
||||
- `distributed_node_stats`
|
||||
- `display_items_claimed`
|
||||
- `display_items_running`
|
||||
- `display_items_completed`
|
||||
- `display_items_failed`
|
||||
- `display_active_node_codes`
|
||||
- `detect/queue-summary`
|
||||
- 新增:
|
||||
- `queue.display_claimed`
|
||||
- `queue.display_running`
|
||||
- `nodes` 已切到分布式显示口径
|
||||
- `DetectView.vue`
|
||||
- 已优先显示分布式口径
|
||||
- 节点表格已优先显示 `distributed_node_stats`
|
||||
|
||||
## 当前结果快照
|
||||
|
||||
本轮新增完成:
|
||||
接口验证结果:
|
||||
|
||||
- 已修复 `domaincheck-node-agent` 读取不到同步目标地址的问题
|
||||
- 修复方式:
|
||||
- `domaincheck-node-agent.service` 追加读取 `/etc/default/domaincheck-api`
|
||||
- 新提交:`74dc009`
|
||||
- 已在以下节点完成刷入与重启:
|
||||
- `mainland-controller-01`
|
||||
- `mainland-worker-01`
|
||||
- `detect/job/active`
|
||||
- `display_items_claimed = 34`
|
||||
- `display_items_running = 14`
|
||||
- `distributed_node_stats` 已包含:
|
||||
- `mainland-controller-01`
|
||||
- `mainland-worker-01`
|
||||
- `overseas-control-01`
|
||||
- `unassigned`
|
||||
- `detect/queue-summary`
|
||||
- `queue.display_claimed = 34`
|
||||
- `queue.display_running = 14`
|
||||
- `nodes` 已包含:
|
||||
- `mainland-controller-01`
|
||||
- `mainland-worker-01`
|
||||
- `overseas-control-01`
|
||||
- `unassigned`
|
||||
|
||||
本轮关键验证:
|
||||
运行侧证据:
|
||||
|
||||
- `mainland-controller-01`
|
||||
- `runtime.pull_tasks`
|
||||
- `job_id = 87`
|
||||
- `status = success`
|
||||
- `items_total = 50`
|
||||
- `pull_state = success`
|
||||
- controller 远端日志已确认:
|
||||
- `job start: runtime.pull_tasks`
|
||||
- `job complete ... ok=True`
|
||||
|
||||
当前节点执行状态:
|
||||
|
||||
- `mainland-controller-01`
|
||||
- `agent_state = online_busy`
|
||||
- `participation_state = running`
|
||||
- `items_total = 200`
|
||||
- `items_running = 5`
|
||||
- `mainland-worker-01`
|
||||
- `agent_state = online_busy`
|
||||
- `participation_state = running`
|
||||
- `items_total = 70`
|
||||
- `items_running = 5`
|
||||
- `overseas-control-01`
|
||||
- `agent_state = online_busy`
|
||||
- 大陆 controller / worker 仍在执行中
|
||||
|
||||
## 当前结论
|
||||
|
||||
检测不是“没跑”。
|
||||
这轮已经把“Detect 页面看不出大陆参与”这个核心观感问题修掉了一大半。
|
||||
|
||||
当前真实状态是:
|
||||
现在的 Detect 页面口径变成:
|
||||
|
||||
- 分布式检测执行链已经跑通
|
||||
- 大陆 controller 已经能从海外控制面主动拉回待检测批次
|
||||
- 大陆 controller 与 mainland worker 都已经进入执行中
|
||||
- 中央原始账本仍保留:
|
||||
- `items_total = 1000`
|
||||
- `pending = 950`
|
||||
- `claimed = 25`
|
||||
- `running = 4`
|
||||
- 页面展示口径新增分布式视角:
|
||||
- `display_claimed = 34`
|
||||
- `display_running = 14`
|
||||
- 节点列表能直接看到大陆 controller / worker
|
||||
|
||||
当前未完全收敛的不是执行,而是统计口径:
|
||||
## 当前唯一剩余问题
|
||||
|
||||
- `/api/v1/detect/queue-summary`
|
||||
- `/api/v1/detect/job/active`
|
||||
唯一剩余问题:
|
||||
|
||||
仍主要显示旧的海外活跃任务统计:
|
||||
- 中央账本与分布式显示口径仍是“双轨”
|
||||
|
||||
- `overseas-control-01`
|
||||
- `unassigned`
|
||||
这不是 bug,而是当前架构现状:
|
||||
|
||||
尚未把大陆侧“拉批后本地执行”的结果完整并回收到同一检测总览口径中。
|
||||
- 中央 `detect_job_items` 统计的是海外控制面原始派发账本
|
||||
- 大陆拉批后的本地执行账本在 runtime / projection 侧
|
||||
|
||||
## 当前唯一主问题
|
||||
当前已经做到:
|
||||
|
||||
唯一主问题:`检测执行已跑通,但控制面检测总览仍是旧口径`
|
||||
- 页面不再误判“大陆没跑”
|
||||
|
||||
表现:
|
||||
但还没做到:
|
||||
|
||||
- `ops/nodes` 能看到大陆节点正在跑
|
||||
- `runtime.pull_tasks` 已成功
|
||||
- 但 `detect/queue-summary` 与 `detect/job/active` 仍没有把大陆执行量体现在同一总览里
|
||||
|
||||
问题分类:
|
||||
|
||||
- 不是接管问题
|
||||
- 不是环境问题
|
||||
- 不是同步目标地址问题
|
||||
- 是“检测总览聚合口径 / 运行态映射”问题
|
||||
- 把两套账本真正收敛成一个最终一致的统一任务账本
|
||||
|
||||
## 候选批次
|
||||
|
||||
### Candidate G1
|
||||
### Candidate H1
|
||||
|
||||
名称:检测总览口径统一批
|
||||
名称:检测账本统一设计批
|
||||
|
||||
进入条件:
|
||||
|
||||
- 用户确认下一轮继续只收敛检测总览,不扩其他功能
|
||||
- 用户确认下一轮继续深入“中央账本与分布式执行账本统一”
|
||||
|
||||
范围:
|
||||
|
||||
- 复核 `detect job` 与 `ops/nodes` 的数据来源差异
|
||||
- 明确大陆拉批执行应如何回写到统一检测总览
|
||||
- 修复后再做一次检测实跑验证
|
||||
- 先设计统一账本规则
|
||||
- 不直接大改执行链
|
||||
- 明确 pull / ack / result sync 后中央账本应如何回写
|
||||
|
||||
### Candidate G2
|
||||
### Candidate H2
|
||||
|
||||
名称:节点能力口径清理批
|
||||
名称:Detect 页面文案微收口批
|
||||
|
||||
进入条件:
|
||||
|
||||
- 需要把节点展示中的 `capabilities` 与现网真实支持动作同步
|
||||
- 如果用户只想先把页面提示说清楚
|
||||
|
||||
范围:
|
||||
|
||||
- 只处理 `OPS_AGENT_CAPABILITIES` 的现网漂移
|
||||
- 不碰检测链路主体
|
||||
- 在 Detect 页面明确标注:
|
||||
- “中央账本视角”
|
||||
- “分布式执行视角”
|
||||
|
||||
## 暂停项
|
||||
|
||||
@@ -128,12 +135,10 @@
|
||||
- 新模块
|
||||
- 运维中枢增强
|
||||
- 发布动作
|
||||
- 与“检测实跑收口”无关的任何工作
|
||||
- 与检测账本统一无关的工作
|
||||
|
||||
## 下一轮唯一动作
|
||||
|
||||
下一轮唯一应该做的事情:
|
||||
下一轮唯一应该继续做的事情:
|
||||
|
||||
- 对齐 `detect/queue-summary`、`detect/job/active` 与 `ops/nodes` 三者的数据口径
|
||||
- 明确为什么大陆执行已发生,但总览仍显示旧任务统计
|
||||
- 修好后再跑一次小批量检测验证
|
||||
- 明确中央 `detect_job_items` 与大陆 runtime 投影之间的统一账本策略
|
||||
|
||||
Reference in New Issue
Block a user