You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
treat a panel where every reviewer cell failed as a systemic dependency outage
stop the automatic retry path from removing and re-adding cursor-review for that failure shape
route the status card to human verification without suggesting another label application
document the circuit breaker and preserve retries for partial panel failures
Why
Multiple callers produced 0/6 panels during the same Cursor account outage. The existing errored-round retry treated those as ordinary transient cell failures, so it could spend another label and another full panel while the shared dependency was still unavailable.
This is intentionally fail-closed: partial panel failures remain retryable, but simultaneous failure of every cell requires a human to verify recovery first.
Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 1 review per hour.
📝 Walkthrough
The retry policy now detects when no panel reviewers completed. It prevents automatic retries for those rounds and directs them to human review. Tests and documentation describe the updated boundary.
Changes: Zero-completion retry policy
Layer / File(s)
Summary
Detect total panel failure and apply policy .github/cursor-review/auto-approve.py
all_panel_reviewers_failed recognizes reasons where all panel reviewers failed. The next-step guidance directs these cases to human review, and auto_retry_eligible rejects them.
Validate and document the retry boundary .github/cursor-review/tests/*, .github/cursor-review/README.md, .github/workflows/cursor-review.yml, docs/callers/cursor-review.md
Tests cover total panel failure, partial failure, and mixed reasons. The README, workflow description, and caller documentation state that rounds with zero completed reviewers are not automatically retried.
Suggested reviewers:mattmillerai, huntcsg
Priority: ➖ Normal
Merge Risk:⚪ Minimal · up to b4fe0
No actionable issue is established for the zero-completion retry change; it is mergeable after normal checks.
Pre-merge checks: 2
Check name
Status
Explanation
Linked Issues check
Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check
Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
Commit to this branch
Create a new PR
✨ Simplify code
Commit to this branch
Create a new PR
Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Comment @coderabbitai help to get the list of available commands.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
cursor-reviewfor that failure shapeWhy
Multiple callers produced
0/6panels during the same Cursor account outage. The existing errored-round retry treated those as ordinary transient cell failures, so it could spend another label and another full panel while the shared dependency was still unavailable.This is intentionally fail-closed: partial panel failures remain retryable, but simultaneous failure of every cell requires a human to verify recovery first.
Verification
python3 -m unittest discover -s .github/cursor-review/tests -p 'test_*.py' -v— 1,744 tests passedshellcheck -x .github/lint/check-org-repo-literals.shbash .github/lint/check-org-repo-literals.shgit diff --check