[PR #442] fix(cursor-review): stop all-zero panel retries #442

Open
opened 2026-10-26 22:39:52 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/Comfy-Org/github-workflows/pull/442
Author: @christian-byrne
Created: 10/23/2026
Status: 🔄 Open

Base: main ← Head: fix/cursor-review-account-outage-guard


📝 Commits (1)

  • b4fe0b8 fix(cursor-review): stop all-zero panel retries

📊 Changes

6 files changed (+88 additions, -5 deletions)

View changed files

📝 .github/cursor-review/README.md (+1 -1)
📝 .github/cursor-review/auto-approve.py (+32 -0)
📝 .github/cursor-review/tests/test_auto_approve.py (+18 -1)
📝 .github/cursor-review/tests/test_auto_retry_errored.py (+28 -0)
📝 .github/workflows/cursor-review.yml (+4 -1)
📝 docs/callers/cursor-review.md (+5 -2)

📄 Description

Summary

  • 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.

Verification

  • python3 -m unittest discover -s .github/cursor-review/tests -p 'test_*.py' -v — 1,744 tests passed
  • shellcheck -x .github/lint/check-org-repo-literals.sh
  • bash .github/lint/check-org-repo-literals.sh
  • git diff --check

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/Comfy-Org/github-workflows/pull/442 **Author:** [@christian-byrne](https://github.com/christian-byrne) **Created:** 10/23/2026 **Status:** 🔄 Open **Base:** `main` ← **Head:** `fix/cursor-review-account-outage-guard` --- ### 📝 Commits (1) - [`b4fe0b8`](https://github.com/Comfy-Org/github-workflows/commit/b4fe0b890d9eb5f53334670aae03eb8927a16f64) fix(cursor-review): stop all-zero panel retries ### 📊 Changes **6 files changed** (+88 additions, -5 deletions) <details> <summary>View changed files</summary> 📝 `.github/cursor-review/README.md` (+1 -1) 📝 `.github/cursor-review/auto-approve.py` (+32 -0) 📝 `.github/cursor-review/tests/test_auto_approve.py` (+18 -1) 📝 `.github/cursor-review/tests/test_auto_retry_errored.py` (+28 -0) 📝 `.github/workflows/cursor-review.yml` (+4 -1) 📝 `docs/callers/cursor-review.md` (+5 -2) </details> ### 📄 Description ## Summary - 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. ## Verification - `python3 -m unittest discover -s .github/cursor-review/tests -p 'test_*.py' -v` — 1,744 tests passed - `shellcheck -x .github/lint/check-org-repo-literals.sh` - `bash .github/lint/check-org-repo-literals.sh` - `git diff --check` <!-- authored-by:agent --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Comfy-Org/github-workflows#442
No description provided.