voyage/lib/review
Kjell Tore Guttormsen 22e792ce19
fix(review): a review with a control that did not run stops a merge
Operator decision 2026-10-06. Before, a WARN that existed only because a
reviewer or engine never reported (e.g. /security-review without an origin
remote) mapped to verdict-gate exit 0, so a review nobody performed in full
was green. Now `missing-reviewer:` / `unattributable-payload` in the JSON
block's allow_blocked_by is exit 2 (could not decide, never green); a WARN
for a MAJOR or a set-aside finding still passes with its reasons. A 1.1
review must carry allow_blocked_by.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 20:06:29 +02:00
..
coordinator-contract.mjs fix(review): close the gate's fail-open paths an independent review found 2026-10-06 20:03:16 +02:00
engine-findings.mjs fix(review): close the gate's fail-open paths an independent review found 2026-10-06 20:03:16 +02:00
fidelity-diff.mjs feat(voyage): S10 — NW2 part A (Workflow port + fidelity harness + smoke) 2026-06-18 14:40:19 +02:00
findings-schema.mjs feat(review): the review is a gate - verdict in the file, CC engine, project memory 2026-10-06 19:45:52 +02:00
gold-scorer.mjs fix(review): write the gold-scorer key separator as an escape, not a raw NUL byte 2026-09-17 15:36:18 +02:00
plan-review-dedup.mjs fix(voyage): S23 — make /trekplan Phase 9 dedup executable (defect #1) 2026-06-19 21:12:36 +02:00
recurrence.mjs fix(review): close the gate's fail-open paths an independent review found 2026-10-06 20:03:16 +02:00
rule-catalogue.mjs fix(review): close the gate's fail-open paths an independent review found 2026-10-06 20:03:16 +02:00
verdict-gate.mjs fix(review): a review with a control that did not run stops a merge 2026-10-06 20:06:29 +02:00