Match existing group PRs covering a subset of job directories#15548
Open
IanButterworth wants to merge 1 commit into
Open
Match existing group PRs covering a subset of job directories#15548IanButterworth wants to merge 1 commit into
IanButterworth wants to merge 1 commit into
Conversation
A grouped update PR only records the directories that actually had updates, so it can legitimately cover fewer directories than the job is configured with (e.g. one configured directory had no updatable dependencies that run). The exact set equality introduced in 43492ac treated such PRs as non-existent on every scheduled run, so a brand-new group PR was opened each time instead of deferring to the refresh job, and the old PR was never superseded — duplicate PRs accumulated until closed by hand. Relax the check to match when the PR's directories are a subset of the job's directories. This preserves both earlier fixes: a PR in an unrelated directory still doesn't suppress a new PR (dependabot#9430), and a stale PR covering directories outside the job's scope still doesn't match (43492ac). Fixes dependabot#15370 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Open
1 task
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Fixes #15370
Developed with Claude:
What are you trying to accomplish?
Fix duplicate grouped update PRs for multi-directory configurations.
A grouped PR only records directories that actually had updates, so it can legitimately
cover fewer directories than the job is configured with. The exact set equality introduced
in 43492ac treated such PRs as non-existent on every scheduled run, so a new group PR was
opened each week instead of deferring to the refresh job, and the old PR was never
superseded.
This relaxes the check to match when the PR's directories are a subset of the job's.
Anything you want to highlight for special attention from reviewers?
The subset direction preserves both earlier fixes: a PR in an unrelated directory still
doesn't suppress a new PR (#9430), and a stale PR covering directories outside the job's
scope still doesn't match (43492ac).
How will you know you've accomplished your goal?
Reproduced from the issue: DynamicPPL.jl configures 8 directories, but only 7 had updates,
so the weekly run failed the equality check and opened a duplicate PR
(TuringLang/DynamicPPL.jl#1424 / #1426). Added specs for both the subset-match and
outside-scope cases; all affected spec files,
srb tc, and RuboCop pass.Checklist