Commit 867d51501560dee30124ff8f79fabefc67b0c84d
1 parent
3d5db4b1
docs(33): 收口两条剩余 checklist——真实回归已验证、validator.json 复查过不是同类问题
之前把这条 run 手动 patch required=0 + 重试推到 completed 那次操作,其实就是
"用真实回归任务验证 org-coder-validator 不再假阳性 blocked" 这条的证据,回来补记
(唯一没走到的是"由 workgraph-planning 全新规划一张图"这一环,端到端证据仍缺)。
复查了 validator.json 的 needs:[{kind:'artifact',required:false}]:不是同类潜伏
问题,是刻意设计——它验的 artifact 由另一张图产出,靠任务级共享索引找,
不依赖这条边的声明,required:false 与 33 号的 log 声明成因完全不同。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Showing
1 changed file
with
17 additions
and
5 deletions
docs/todo/system-design/33-needs-gate-role-filter-bug.md
| ... | ... | @@ -143,11 +143,23 @@ T-mt25ecbd 那次修复要守住的保护——好在跑单测立刻炸了,没 |
| 143 | 143 | 的 `needs:artifact` 依旧受硬闸门保护(未被这次改动削弱) |
| 144 | 144 | - [x] 全量单测 `npx vitest run server/tests/unit`:**998/998 通过**(含新增用例, |
| 145 | 145 | 零回归) |
| 146 | +- [x] (2026-08-22 追加)用真实回归任务验证 `org-coder-validator` 不再假阳性 | |
| 147 | + blocked——**已验证**:直接把这次真实卡住的那条 run 的 `graph_edge_contracts` | |
| 148 | + 行(`log` 那条)手动 patch 成 `required=0`,重试 `org-coder-validator` 并 | |
| 149 | + 恢复自动驱动,节点从 `blocked` 转 `success`,root run 最终收敛到 | |
| 150 | + `completed`。唯一没有走到的是"由 `workgraph-planning` 全新规划一张图, | |
| 151 | + 模板里 `{kind:'log',required:false}` 的对象写法被正确解析落库"这一环—— | |
| 152 | + 理论上没有风险(`validator.json` 已经在用同样的对象写法且工作正常,见下一条), | |
| 153 | + 但没有用一次全新任务端到端跑过,只是手动 patch 了已有的行。 | |
| 154 | +- [x] (2026-08-22 追加)`validator.json` 的 `needs:[{kind:'artifact',required:false}]` | |
| 155 | + 复查过:**不是同一类潜伏问题,是刻意设计**。它的 `dataContractNotes` 原文 | |
| 156 | + 写明:被验的 `artifact` 由**另一张图**(org-coder 等)产出,这里的 `needs` | |
| 157 | + 只是文档意图声明,产物索引按 `company+task` 检索、不按图/边——`required:false` | |
| 158 | + 是因为这条 `artifact` 依赖压根不指望靠这条边找到实例(找的时候看的是任务级 | |
| 159 | + 共享索引,边上声明与否不影响检索结果),跟 33 号文档这次的 bug(`log` 声明了 | |
| 160 | + 却永远不会被索引到)成因完全不同,不用动。 | |
| 146 | 161 | |
| 147 | 162 | ## 四、留待下次 |
| 148 | 163 | |
| 149 | -- [ ] 用真实回归任务(同 31 号文档 §一的路数,起一条新 e2e-demo 任务)验证 | |
| 150 | - `org-coder-validator` 不再假阳性 blocked——这次改动只有单测覆盖,还没有 | |
| 151 | - 真实 LLM 跑过的证据 | |
| 152 | -- [ ] `validator.json` 的两条 `needs:[{kind:'artifact',required:false}]` 是否也该 | |
| 153 | - 核对一遍「这个 kind 到底会不会被索引到」,避免同一类问题在别的模板里潜伏 | |
| 164 | +- [ ] "由 `workgraph-planning` 全新规划一张图" 这一环的端到端证据仍然缺失 | |
| 165 | + (见上面第五条最后一句)——理论风险低,但没有真跑过 | ... | ... |