What happened
PR #880 received 6 review agent runs. Two of them (Previous Run 4 and Previous Run 5 in the review bot's comment) reviewed the same HEAD SHA 091e5c6f, producing near-identical findings and both approving. This appears to have been caused by two rapid pull_request_target synchronize events for the same push, both dispatching before the concurrency group could cancel the earlier run.
What could go better
The review agent should not re-review a SHA it has already reviewed. The concurrency group (cancel-in-progress: true) helps when runs overlap temporally, but doesn't prevent a second dispatch that arrives after the first completes. Confidence: high — the evidence of two runs on the same SHA with identical findings is clear in the bot's own comment history.
Proposed change
In the review dispatch workflow (or the review agent's entry logic), add a check before starting the review: query the PR's existing review bot comments for whether the current HEAD SHA has already been reviewed. If a review for this SHA exists, skip the run and exit early. This could be implemented as a pre-step in the review workflow that runs gh api repos/{repo}/issues/{pr}/comments and checks for the HEAD SHA in the bot's existing comments. Alternatively, add SHA-level deduplication to the concurrency group key (e.g., fullsend-review-{repo}-{pr}-{sha}) so that duplicate dispatches for the same SHA are caught.
Validation criteria
On the next 10 PRs reviewed by fullsend in this repo, no HEAD SHA should appear more than once in the review bot's comment history. Monitor by checking for duplicate SHA references in the collapsed 'Previous runs' sections of review comments.
Generated by retro agent from konflux-ci/konflux-ui#880
What happened
PR #880 received 6 review agent runs. Two of them (Previous Run 4 and Previous Run 5 in the review bot's comment) reviewed the same HEAD SHA
091e5c6f, producing near-identical findings and both approving. This appears to have been caused by two rapidpull_request_targetsynchronizeevents for the same push, both dispatching before the concurrency group could cancel the earlier run.What could go better
The review agent should not re-review a SHA it has already reviewed. The concurrency group (
cancel-in-progress: true) helps when runs overlap temporally, but doesn't prevent a second dispatch that arrives after the first completes. Confidence: high — the evidence of two runs on the same SHA with identical findings is clear in the bot's own comment history.Proposed change
In the review dispatch workflow (or the review agent's entry logic), add a check before starting the review: query the PR's existing review bot comments for whether the current HEAD SHA has already been reviewed. If a review for this SHA exists, skip the run and exit early. This could be implemented as a pre-step in the review workflow that runs
gh api repos/{repo}/issues/{pr}/commentsand checks for the HEAD SHA in the bot's existing comments. Alternatively, add SHA-level deduplication to the concurrency group key (e.g.,fullsend-review-{repo}-{pr}-{sha}) so that duplicate dispatches for the same SHA are caught.Validation criteria
On the next 10 PRs reviewed by fullsend in this repo, no HEAD SHA should appear more than once in the review bot's comment history. Monitor by checking for duplicate SHA references in the collapsed 'Previous runs' sections of review comments.
Generated by retro agent from konflux-ci/konflux-ui#880