fix(peer-review): honour --judge in PR mode#270
Conversation
…ing it `cube prv <pr> --judge judge_4` quietly ran the entire panel: the flag was threaded into the cube-managed and --local/--branch paths but dropped on the way into _run_pr_review (the --pr path). It only looked like it worked when every other judge was already approved, so judge_4 was the lone survivor anyway — masking the bug. peer_review_command's --pr branch now forwards single_judge, and _run_pr_review narrows judges_to_run via a new _narrow_to_single_judge helper that fails loud on an unknown key (a silent no-op filter is worse than an error). Regression tests pin the plumbing and the raise. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
Warning Review limit reached
More reviews will be available in 15 minutes and 49 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
Comment |
What
cube prv <pr> --judge judge_4silently ran the entire panel. The--judgefilter was wired into the cube-managed and--local/--branchpaths but dropped on the way into_run_pr_review(the--prpath), which never received it.It looked like it worked because the only times we reached for
--judgewere when every other judge had already approved the current HEAD, so the target judge was the lone survivor of the skip-guard anyway. The coincidence masked the dropped flag.Fix
peer_review_command's--prbranch now forwardssingle_judge=judge._run_pr_reviewgained asingle_judgeparam and narrows the panel via a new pure_narrow_to_single_judgehelper.typer.Exit) instead of silently running every judge — a no-op filter is worse than an error.Tests
3 new regression tests: plumbing forwarding, narrowing keeps only the named judge, unknown key raises. Full
tests/clisuite green (225 passed).🤖 Generated with Claude Code