fix(peer-review): --fresh-judge actually forces the judge to re-run#267
Conversation
The flag cleared the saved session id but left two sidecars in place: the HEAD-sha pin and the canonical decision file. Both are inputs to the ``_judge_already_approved_at`` skip-guard. Net effect: cube prv --fresh-judge judge_4 cleared the session, hit the skip-guard, marked judge_4 SKIPPED, and never ran. Caught dogfooding the slice-A/B/C Playwright MCP work on PR #1571 — judge_4 had already approved the prior round, so the new MCP-armed run was supposed to re-review with Playwright but the guard short-circuited it. Fix: when --fresh-judge fires, also drop the HEAD pin and ARCHIVE (not delete) the prior decision file so the verdict trail survives. Handles both filename variants (judge_4 / judge-4). 716/716 tests pass.
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
WalkthroughThis pull request extends the Possibly related PRs
Comment |
Caught dogfooding the Playwright MCP work — --fresh-judge cleared the session but left the HEAD pin + decision file, so the skip-guard short-circuited the re-run.
Problem: The
--fresh-judgeflag was incomplete—it cleared only the session ID but left the HEAD SHA pin and prior decision file intact. Since the_judge_already_approved_atskip-guard checks these sidecars, the judge was marked SKIPPED instead of re-running.Solution: Extended
_clear_named_judge_sessionsto fully reset judge state by clearing three artifacts:Implementation details:
judge_4andjudge-4)_archive_decisionspattern for audit trail preservationThis ensures judges with prior approvals actually re-evaluate when
--fresh-judgeis invoked, fixing the regression observed during Playwright MCP testing.