diff --git a/docs/todo.md b/docs/todo.md index f4644ce..c23ee45 100644 --- a/docs/todo.md +++ b/docs/todo.md @@ -60,6 +60,10 @@ - [ ] B-03b-R3 — **[P2 低优]** std::sync::Mutex 取舍 — 当前选 std(快速临界区纳秒级),若 async 持锁场景增多评估换 tokio::sync::Mutex - [ ] B-03b-R4 — **[P2 低优]** set_* 改 &self 后调用方残留 &mut 冗余清理 - [ ] B-03b-R5 — **[P2 低优]** `lock().expect()` poison panic 漏清理(poison 时直接 panic 无优雅降级) +- [ ] B-03b-R6 — **[P0 阻断]** human_node.rs:41 发 HumanApprovalRequest 缺 `.await`,async fn Future 被丢弃未 poll → Request 未进 channel,审批链最上游断裂(B-260614-03a 重写时引入,7 单测不覆盖 Request 发出故漏)。详见 [审查报告 §0](./02-架构设计/workflow-approval-review-2026-06-14.md) +- [ ] B-03b-R7 — **[P0 修R6后]** 前端契约失配:project.ts:214 type `'HumanApprovalRequest'`→应 `'human_approval_request'`(serde rename snake_case);:215 `payload.event.data` 不存在(event 扁平)→应取 event 本体字段。当前被 R6 遮蔽不可达,修 R6 后必现 +- [ ] B-03b-R8 — **[P0 根因]** 缺 human 节点端到端集成测试(前端无 human DAG 入口,demoDag 仅 script),单测绿但不覆盖 human→弹窗→审批→返回链路,是 R6/R7 存活土壤 +- [ ] B-03b-R9 — **[P2]** 其余 8 项对抗裁定(③串扰/④单槽/⑤终态不清/⑥set_cancelled覆盖终态/⑦互斥/⑧approve不校验/⑨⑩Lagged/⑪failed_node空)多数潜伏或零危害,详见 [审查报告 §2](./02-架构设计/workflow-approval-review-2026-06-14.md) ### ✅ 已完成 — df-workflow 审批闭环(Workflow D, commit 22964a2)