fix(review): clear stale AR change requests after clean re-review #52

Closed
opened 2026-05-03 09:07:20 -07:00 by jwilger · 0 comments
Owner

Problem

PR #48 could not be merged even though the latest Auto Review run reported no blocking findings and both required status checks were green.

The merge blocker was stale Forgejo review state:

  • main branch protection has block_on_rejected_reviews=true and block_on_official_review_requests=true.
  • PR #48 still listed auto-review as a requested reviewer.
  • An earlier official Auto Review record remained undismissed:
    • review id: 751
    • state: REQUEST_CHANGES
    • official: true
    • stale: true
    • dismissed: false
  • The latest Auto Review record was clean, but did not clear the blocker:
    • review id: 753
    • state: COMMENT
    • official: false

As a result, Forgejo continued to block merge despite the latest AR result and commit status being successful.

Expected behavior

When Auto Review re-runs on a newer head SHA and finds no blocking issues after a previous AR REQUEST_CHANGES, it should clear its prior blocking review state. Acceptable behavior may be one of:

  • submit an official APPROVED review for the latest head;
  • dismiss or otherwise supersede the stale official REQUEST_CHANGES review if Forgejo permits that via API;
  • remove auto-review from requested reviewers once the clean review is posted;
  • or another Forgejo-compatible flow that satisfies protected-branch review gates.

Observed evidence from PR #48

  • Head SHA: 869e3677e9f89ea35e937609a1f76ec4831630ba
  • PR mergeable: true
  • Aggregate commit status: success
  • Required status contexts were green:
    • CI / Nix flake check (pull_request)
    • auto_review
  • Branch protection required review gates still blocked merge because stale official AR REQUEST_CHANGES remained active.

Impact

Users can be unable to merge a PR after addressing all Auto Review findings unless they manually dismiss stale AR review state or clear requested reviewers. This makes clean re-reviews misleading and undermines the CI-triggered review workflow.

## Problem PR #48 could not be merged even though the latest Auto Review run reported no blocking findings and both required status checks were green. The merge blocker was stale Forgejo review state: - `main` branch protection has `block_on_rejected_reviews=true` and `block_on_official_review_requests=true`. - PR #48 still listed `auto-review` as a requested reviewer. - An earlier official Auto Review record remained undismissed: - review id: `751` - state: `REQUEST_CHANGES` - `official: true` - `stale: true` - `dismissed: false` - The latest Auto Review record was clean, but did not clear the blocker: - review id: `753` - state: `COMMENT` - `official: false` As a result, Forgejo continued to block merge despite the latest AR result and commit status being successful. ## Expected behavior When Auto Review re-runs on a newer head SHA and finds no blocking issues after a previous AR `REQUEST_CHANGES`, it should clear its prior blocking review state. Acceptable behavior may be one of: - submit an official `APPROVED` review for the latest head; - dismiss or otherwise supersede the stale official `REQUEST_CHANGES` review if Forgejo permits that via API; - remove `auto-review` from requested reviewers once the clean review is posted; - or another Forgejo-compatible flow that satisfies protected-branch review gates. ## Observed evidence from PR #48 - Head SHA: `869e3677e9f89ea35e937609a1f76ec4831630ba` - PR mergeable: `true` - Aggregate commit status: `success` - Required status contexts were green: - `CI / Nix flake check (pull_request)` - `auto_review` - Branch protection required review gates still blocked merge because stale official AR `REQUEST_CHANGES` remained active. ## Impact Users can be unable to merge a PR after addressing all Auto Review findings unless they manually dismiss stale AR review state or clear requested reviewers. This makes clean re-reviews misleading and undermines the CI-triggered review workflow.
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
Slipstream/auto_review#52
No description provided.