fix(peer-review): correct summary when zero judges produced decisions#265
Conversation
…l produced nothing The summary builder rendered ``❌ 0 judge(s) requested changes.`` when ``ran == 0`` — i.e. no judge produced a decision file at all. That message lies in two ways: 1. Zero judges actually rejected (none ran). 2. The gate body (``compute_review_event``) immediately below it says "INCONCLUSIVE: No judge decisions found. Re-run the panel." Two contradictory lines in the same review body. Fix: render an explicit "No judge decisions found" line when ran=0 so the summary and the gate body agree. The "❌ N judge(s) requested changes" wording stays for the genuine all-RC case (ran > 0 AND approvals == 0). 715/715 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 PR adds a dedicated conditional branch in the Possibly related PRs
Comment |
Two contradictory lines in the same PR review body: '❌ 0 judge(s) requested changes' (from summary builder) followed by 'INCONCLUSIVE: No judge decisions found' (from gate). Now both agree.
Summary
This PR resolves a contradiction in the peer review verdict messaging when no judge decisions are produced. Previously, the summary builder would render "❌ 0 judge(s) requested changes" whilst the gate immediately below stated "INCONCLUSIVE: No judge decisions found", creating conflicting signals.
Changes
python/cube/commands/peer_review.pyAdded an explicit⚠️ No judge decisions found (N expected). Panel did not produce a verdict — see gate detail below"—when the panel produces no decisions at all.
elif ran == 0:branch in the verdict summary builder that renders a warning-style message—"This distinguishes the "no decisions on disk" scenario from the "all judges rejected" scenario (where
ran > 0andapprovals == 0), ensuring the summary message aligns with the inconclusive gate determination below.The existing "❌ N judge(s) requested changes" behavior is preserved for cases where judges execute but all decline approval.