What happened
On PR #2395, a Renovate bot opened a dependency update PR on June 17. The review agent ran 4 times (June 17–23) approving the bot's changes. On July 2, a human contributor pushed a fix commit modifying Tekton pipeline YAML (.tekton/_quay-bundle-build.yaml and .tekton/_quay-image-build.yaml) to pin git-clone-oci-ta to v0.2.2. The fullsend workflow triggered on the pull_request_target/synchronize event but the routing logic returned "No stage matched" and all agents were skipped. The PR was merged on July 3 with only human review of the fix commit.
What could go better
The routing logic should distinguish between bot pushes (Renovate rebases) and human pushes on bot-opened PRs. When a human pushes a new commit to a bot-opened PR, that commit likely contains substantive changes that warrant review — it's not just a rebase. In this case, pipeline YAML changes affecting all builds went unreviewed by the agent. I'm fairly confident the root cause is in the routing/dispatch logic (route.sh or equivalent), where the PR author being a bot causes the entire PR to be treated as bot-only, regardless of who pushed the latest commit. Existing issues #1371 (skip review for bot PRs) and #2674 (ADR 0054 auth gate) are related but neither specifically addresses the scenario where a human adds commits to a bot PR. The fix should ensure review is dispatched when the pusher is a human, even if the PR author is a bot.
Proposed change
In the routing/dispatch logic (likely route.sh or the fullsend workflow's routing step), add a check that compares the commit author or pusher of the HEAD commit against the PR author. If the latest commit was pushed by a human (not the bot that opened the PR), dispatch the review agent regardless of bot-PR skip rules. This could be implemented by checking github.event.sender.login against the PR author — if they differ and the sender is not a bot, route to review. This preserves the optimization of skipping redundant reviews on bot rebases while ensuring human contributions get reviewed.
Validation criteria
On a future bot-opened PR where a human pushes an additional commit, the review agent should be dispatched and review the new changes. Verify by: (1) finding or creating a test case where a human pushes to a Renovate/bot PR, (2) confirming the fullsend workflow routes to the review stage, and (3) the review agent posts findings or approval for the new commit. Check across 3 such occurrences within 60 days of the fix.
Generated by retro agent from https://github.com/quay/quay-konflux-components/pull/2395
What happened
On PR #2395, a Renovate bot opened a dependency update PR on June 17. The review agent ran 4 times (June 17–23) approving the bot's changes. On July 2, a human contributor pushed a fix commit modifying Tekton pipeline YAML (
.tekton/_quay-bundle-build.yamland.tekton/_quay-image-build.yaml) to pingit-clone-oci-tato v0.2.2. The fullsend workflow triggered on thepull_request_target/synchronizeevent but the routing logic returned "No stage matched" and all agents were skipped. The PR was merged on July 3 with only human review of the fix commit.What could go better
The routing logic should distinguish between bot pushes (Renovate rebases) and human pushes on bot-opened PRs. When a human pushes a new commit to a bot-opened PR, that commit likely contains substantive changes that warrant review — it's not just a rebase. In this case, pipeline YAML changes affecting all builds went unreviewed by the agent. I'm fairly confident the root cause is in the routing/dispatch logic (route.sh or equivalent), where the PR author being a bot causes the entire PR to be treated as bot-only, regardless of who pushed the latest commit. Existing issues #1371 (skip review for bot PRs) and #2674 (ADR 0054 auth gate) are related but neither specifically addresses the scenario where a human adds commits to a bot PR. The fix should ensure review is dispatched when the pusher is a human, even if the PR author is a bot.
Proposed change
In the routing/dispatch logic (likely
route.shor the fullsend workflow's routing step), add a check that compares the commit author or pusher of the HEAD commit against the PR author. If the latest commit was pushed by a human (not the bot that opened the PR), dispatch the review agent regardless of bot-PR skip rules. This could be implemented by checkinggithub.event.sender.loginagainst the PR author — if they differ and the sender is not a bot, route to review. This preserves the optimization of skipping redundant reviews on bot rebases while ensuring human contributions get reviewed.Validation criteria
On a future bot-opened PR where a human pushes an additional commit, the review agent should be dispatched and review the new changes. Verify by: (1) finding or creating a test case where a human pushes to a Renovate/bot PR, (2) confirming the fullsend workflow routes to the review stage, and (3) the review agent posts findings or approval for the new commit. Check across 3 such occurrences within 60 days of the fix.
Generated by retro agent from https://github.com/quay/quay-konflux-components/pull/2395