# TASK_BOARD 更新时间:2026-04-19 02:40 CST ## 当前主批次 唯一主批次:`H1-检测账本统一最小落地批` 目标: - 不进入新功能实现 - 不扩展控制面 - 只把 Detect 主账本口径从“双轨显示”收敛到“统一后的有效口径” ## 本轮已完成 本轮完成了最小统一落地: - `detect_job_service.py` - 新增统一账本聚合逻辑: - `_build_effective_node_stats` - `_build_effective_summary` - `active_job` 主字段已切换为统一后的有效值: - `items_pending` - `items_claimed` - `items_running` - `items_completed` - `items_failed` - `items_terminal` - `node_stats` - 保留中央原始账本供追溯: - `raw_items_total` - `raw_items_pending` - `raw_items_claimed` - `raw_items_running` - `raw_items_completed` - `raw_items_blacklisted` - `raw_items_failed` - `raw_items_terminal` - `raw_node_stats` - 新增单测: - `domain-api/tests/test_detect_job_service.py` ## 当前结果快照 接口验证结果: - `detect/job/active` - 主字段已统一为: - `items_total = 1000` - `items_pending = 931` - `items_claimed = 34` - `items_running = 14` - `items_completed = 21` - 原始中央账本仍可追溯: - `raw_items_pending = 950` - `raw_items_claimed = 25` - `raw_items_running = 4` - `node_stats` / `distributed_node_stats` 已统一为: - `mainland-controller-01` - `mainland-worker-01` - `overseas-control-01` - `unassigned = 680` - `detect/queue-summary` - 主字段已统一为: - `pending = 931` - `claimed = 34` - `running = 14` 验证结果: - `python3 -m py_compile` - 通过 - `/opt/domaincheck/domainCheck/.venv/bin/python -m unittest tests.test_detect_job_service` - 通过 - `domaincheck-api` - 已重启并验证通过 ## 当前结论 这轮已经把“中央账本原值”和“分布式 display 附加值”进一步收敛成一套主展示账本。 现在的口径变成: - 主字段: - 直接反映当前统一后的有效检测账本 - 原始字段: - 仍保留中央派发账本,供排障和审计 这意味着: - Detect 页面不再只是“看起来对” - Runtime / Queue / Detect 主视图开始吃同一套有效统计 ## 当前唯一剩余问题 唯一剩余问题: - 这 still 是“聚合统一”,还不是“逐条 item 真正回写统一” 也就是说: - 当前已经解决: - 主统计口径一致 - 节点参与显示一致 - 当前还没解决: - 大陆执行结果逐条回写 `detect_job_items` ## 候选批次 ### Candidate I1 名称:检测结果逐条回写设计批 进入条件: - 用户确认要继续把聚合统一推进到 item 级一致 范围: - 只设计 `detect_result_projection -> detect_job_items` 的最小映射方案 - 不直接重做整条执行链 ### Candidate I2 名称:Detect / Runtime 文案统一批 进入条件: - 如果用户只想进一步把“raw vs effective”提示写清楚 范围: - 补统一文案 - 不再扩逻辑 ## 暂停项 继续暂停: - 新页面 - 新模块 - 运维中枢增强 - 发布动作 - 与检测账本统一无关的工作 ## 下一轮唯一动作 下一轮唯一应该继续做的事情: - 明确是否要继续进入 item 级结果回写统一