Group Dependabot security updates and keep v3-3-test covered - #70556
Merged
Conversation
potiuk
force-pushed
the
group-dependabot-security-updates
branch
from
July 27, 2026 18:42
9f9490f to
fe9b1d7
Compare
potiuk
requested review from
amoghrajesh,
ashb,
bugraoz93,
choo121600,
ephraimbuddy,
gopidesupavan,
jason810496,
jedcunningham,
jscheffl and
vatsrahul1001
as code owners
July 27, 2026 18:50
vincbeck
approved these changes
Jul 27, 2026
kaxil
approved these changes
Jul 27, 2026
potiuk
force-pushed
the
group-dependabot-security-updates
branch
from
July 27, 2026 21:22
2e0b9ab to
b1ade46
Compare
Dependabot groups only apply to security updates when they declare `applies-to: security-updates`; without it a group covers version updates only. Every group in our config relied on that default, so alert-driven bumps bypassed grouping entirely and opened one PR each - axios in edge3 (apache#70145), mermaid (apache#69132, apache#69137), gitpython (apache#70428), zeep (apache#68780), @hey-api/openapi-ts (apache#69265) and the two /go-sdk Go bumps (apache#70226, apache#69214). Add a `security-updates` group to every entry that targets the default branch. Entries carrying `target-branch: v3-3-test` are deliberately left alone: Dependabot raises security updates against the default branch only, so a security group there would never match. Comments note this so it does not look like an oversight. The three existing `*-major-version-updates` groups were already `applies-to: security-updates` but restricted to `update-types: [major]`, so minor and patch security fixes fell through ungrouped. They are widened to cover all security updates and renamed to `*-security-updates` to match what they actually do. Also adds a `gomod` entry for /go-sdk, which had no configuration at all - its Go security bumps were arriving individually because Dependabot raises security updates for ecosystems with no entry, but can only group them when one exists. Generated-by: Claude Opus 5 (1M context)
Dependabot raises security updates against the default branch only, so a fix that lands on main does not reach a maintenance branch by itself. Cherry-picking one over is unreliable: these commits carry lock file diffs, and main's lock files have long diverged from v3-3-test's, so the pick conflicts more often than not. Letting Dependabot maintain the branch directly avoids that entirely - it resolves the dependency and regenerates the lock file on v3-3-test itself. Six directories were tracked on main but not on the maintenance branch, so a fixed version had no way of reaching it: - npm: edge3 www, fab www, /registry, react plugin template - uv: /dev/breeze - gomod: /go-sdk They now have `target-branch: v3-3-test` entries following the policy the branch already uses for core-ui and auth-ui: minor and patch only, majors ignored. A fix that needs a major bump still has to be backported by hand. `dev/update_github_branch_config.py` generates the same six entries, so cutting the next release branch does not silently reintroduce the gap. Generated-by: Claude Opus 5 (1M context)
potiuk
force-pushed
the
group-dependabot-security-updates
branch
from
July 28, 2026 07:34
b1ade46 to
5ad43a7
Compare
Contributor
Backport successfully created: v3-3-testNote: As of Merging PRs targeted for Airflow 3.X In matter of doubt please ask in #release-management Slack channel.
|
potiuk
added a commit
that referenced
this pull request
Jul 30, 2026
…red (#70556) * Group Dependabot security updates Dependabot groups only apply to security updates when they declare `applies-to: security-updates`; without it a group covers version updates only. Every group in our config relied on that default, so alert-driven bumps bypassed grouping entirely and opened one PR each - axios in edge3 (#70145), mermaid (#69132, #69137), gitpython (#70428), zeep (#68780), @hey-api/openapi-ts (#69265) and the two /go-sdk Go bumps (#70226, #69214). Add a `security-updates` group to every entry that targets the default branch. Entries carrying `target-branch: v3-3-test` are deliberately left alone: Dependabot raises security updates against the default branch only, so a security group there would never match. Comments note this so it does not look like an oversight. The three existing `*-major-version-updates` groups were already `applies-to: security-updates` but restricted to `update-types: [major]`, so minor and patch security fixes fell through ungrouped. They are widened to cover all security updates and renamed to `*-security-updates` to match what they actually do. Also adds a `gomod` entry for /go-sdk, which had no configuration at all - its Go security bumps were arriving individually because Dependabot raises security updates for ecosystems with no entry, but can only group them when one exists. Generated-by: Claude Opus 5 (1M context) * Mirror remaining dependency directories onto v3-3-test Dependabot raises security updates against the default branch only, so a fix that lands on main does not reach a maintenance branch by itself. Cherry-picking one over is unreliable: these commits carry lock file diffs, and main's lock files have long diverged from v3-3-test's, so the pick conflicts more often than not. Letting Dependabot maintain the branch directly avoids that entirely - it resolves the dependency and regenerates the lock file on v3-3-test itself. Six directories were tracked on main but not on the maintenance branch, so a fixed version had no way of reaching it: - npm: edge3 www, fab www, /registry, react plugin template - uv: /dev/breeze - gomod: /go-sdk They now have `target-branch: v3-3-test` entries following the policy the branch already uses for core-ui and auth-ui: minor and patch only, majors ignored. A fix that needs a major bump still has to be backported by hand. `dev/update_github_branch_config.py` generates the same six entries, so cutting the next release branch does not silently reintroduce the gap. (cherry picked from commit 00679b8) Co-authored-by: Jarek Potiuk <jarek@potiuk.com> Generated-by: Claude Opus 5 (1M context)
vatsrahul1001
pushed a commit
that referenced
this pull request
Aug 5, 2026
…red (#70556) * Group Dependabot security updates Dependabot groups only apply to security updates when they declare `applies-to: security-updates`; without it a group covers version updates only. Every group in our config relied on that default, so alert-driven bumps bypassed grouping entirely and opened one PR each - axios in edge3 (#70145), mermaid (#69132, #69137), gitpython (#70428), zeep (#68780), @hey-api/openapi-ts (#69265) and the two /go-sdk Go bumps (#70226, #69214). Add a `security-updates` group to every entry that targets the default branch. Entries carrying `target-branch: v3-3-test` are deliberately left alone: Dependabot raises security updates against the default branch only, so a security group there would never match. Comments note this so it does not look like an oversight. The three existing `*-major-version-updates` groups were already `applies-to: security-updates` but restricted to `update-types: [major]`, so minor and patch security fixes fell through ungrouped. They are widened to cover all security updates and renamed to `*-security-updates` to match what they actually do. Also adds a `gomod` entry for /go-sdk, which had no configuration at all - its Go security bumps were arriving individually because Dependabot raises security updates for ecosystems with no entry, but can only group them when one exists. Generated-by: Claude Opus 5 (1M context) * Mirror remaining dependency directories onto v3-3-test Dependabot raises security updates against the default branch only, so a fix that lands on main does not reach a maintenance branch by itself. Cherry-picking one over is unreliable: these commits carry lock file diffs, and main's lock files have long diverged from v3-3-test's, so the pick conflicts more often than not. Letting Dependabot maintain the branch directly avoids that entirely - it resolves the dependency and regenerates the lock file on v3-3-test itself. Six directories were tracked on main but not on the maintenance branch, so a fixed version had no way of reaching it: - npm: edge3 www, fab www, /registry, react plugin template - uv: /dev/breeze - gomod: /go-sdk They now have `target-branch: v3-3-test` entries following the policy the branch already uses for core-ui and auth-ui: minor and patch only, majors ignored. A fix that needs a major bump still has to be backported by hand. `dev/update_github_branch_config.py` generates the same six entries, so cutting the next release branch does not silently reintroduce the gap. (cherry picked from commit 00679b8) Co-authored-by: Jarek Potiuk <jarek@potiuk.com> Generated-by: Claude Opus 5 (1M context)
potiuk
added a commit
that referenced
this pull request
Aug 7, 2026
…red (#70556) (#70597) * Group Dependabot security updates Dependabot groups only apply to security updates when they declare `applies-to: security-updates`; without it a group covers version updates only. Every group in our config relied on that default, so alert-driven bumps bypassed grouping entirely and opened one PR each - axios in edge3 (#70145), mermaid (#69132, #69137), gitpython (#70428), zeep (#68780), @hey-api/openapi-ts (#69265) and the two /go-sdk Go bumps (#70226, #69214). Add a `security-updates` group to every entry that targets the default branch. Entries carrying `target-branch: v3-3-test` are deliberately left alone: Dependabot raises security updates against the default branch only, so a security group there would never match. Comments note this so it does not look like an oversight. The three existing `*-major-version-updates` groups were already `applies-to: security-updates` but restricted to `update-types: [major]`, so minor and patch security fixes fell through ungrouped. They are widened to cover all security updates and renamed to `*-security-updates` to match what they actually do. Also adds a `gomod` entry for /go-sdk, which had no configuration at all - its Go security bumps were arriving individually because Dependabot raises security updates for ecosystems with no entry, but can only group them when one exists. Generated-by: Claude Opus 5 (1M context) * Mirror remaining dependency directories onto v3-3-test Dependabot raises security updates against the default branch only, so a fix that lands on main does not reach a maintenance branch by itself. Cherry-picking one over is unreliable: these commits carry lock file diffs, and main's lock files have long diverged from v3-3-test's, so the pick conflicts more often than not. Letting Dependabot maintain the branch directly avoids that entirely - it resolves the dependency and regenerates the lock file on v3-3-test itself. Six directories were tracked on main but not on the maintenance branch, so a fixed version had no way of reaching it: - npm: edge3 www, fab www, /registry, react plugin template - uv: /dev/breeze - gomod: /go-sdk They now have `target-branch: v3-3-test` entries following the policy the branch already uses for core-ui and auth-ui: minor and patch only, majors ignored. A fix that needs a major bump still has to be backported by hand. `dev/update_github_branch_config.py` generates the same six entries, so cutting the next release branch does not silently reintroduce the gap. (cherry picked from commit 00679b8) Generated-by: Claude Opus 5 (1M context) Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
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.
Dependabot groups only apply to security updates when they declare
applies-to: security-updates— without it, a group covers version updatesonly. Every group in our config relied on that default, so alert-driven bumps
bypassed grouping entirely and opened one PR each:
axios(edge3 www), Bump mermaid from 11.14.0 to 11.15.0 in /airflow-core/src/airflow/ui #69132 / Bump mermaid from 11.15.0 to 11.16.0 in /airflow-core/src/airflow/ui #69137mermaid(core UI)gitpython, Bump zeep from 4.3.2 to 4.3.3 #68780zeep(pip)@hey-api/openapi-ts(auth UI)google.golang.org/grpc, Bump golang.org/x/net from 0.48.0 to 0.55.0 in /go-sdk #69214golang.org/x/net(/go-sdk)Each one has a matching Dependabot alert — they are security updates, not
version updates.
This adds a
security-updatesgroup to every entry that targets the defaultbranch, so those bumps get batched the way version updates already are.
Three things worth calling out for reviewers:
The
v3-3-testentries are deliberately untouched. Dependabot raisessecurity updates against the default branch only, and per the docs an entry
using
target-branchis version-updates only. A security group there wouldnever match anything, so I added comments saying so rather than leaving it
looking like an oversight.
*-major-version-updatesgroups are widened and renamed. The core-ui,auth-ui and registry entries already had
applies-to: security-updatesgroups, but restricted to
update-types: [major]— so minor and patchsecurity updates fell through ungrouped. They now cover all security updates
and are renamed
*-security-updatesto match what they do. This changes theDependabot branch names for those groups; no open PRs currently use them.
New
gomodentry for/go-sdk. That directory had no configuration atall. Dependabot still raises security PRs for it (hence the two Go bumps
above) but cannot group them without an entry. This adds weekly grouped
version updates plus a security group.
No new backport automation. Auto-labelling security PRs
backport-to-v3-3-testand letting
automatic-backport.ymlcherry-pick them was the other option, butlock file picks across diverged branches fail often enough that it would mostly
generate failed-backport noise. Mirroring the config is the reliable route.
Major version updates in the UI directories (i18next 25→26,
eslint-plugin-unicorn,
@visx/shape,@stylistic) stay ungrouped — theminor+patch groups exclude them on purpose and I did not change that.
Keeping v3-3-test covered
Security updates only ever target the default branch, so a fixed version landing
on
maindoes not reach the maintenance branch by itself. Cherry-picking one overis unreliable — these commits carry lock file diffs, and main's lock files have
long diverged from v3-3-test's, so the pick conflicts more often than not.
Letting Dependabot maintain the branch directly sidesteps that: it resolves the
dependency and regenerates the lock file on v3-3-test itself. Six directories
were tracked on
mainbut not on the maintenance branch, so a fixed version hadno route there at all:
/registry, react plugin template/dev/breeze/go-sdkThey now have
target-branch: v3-3-testentries following the policy the branchalready applies to core-ui and auth-ui — minor and patch only, majors ignored.
Every ecosystem/directory tracked on
mainis now also tracked on v3-3-test(10 entries each). A fix that needs a major bump still has to be backported by hand.
dev/update_github_branch_config.pygenerates the same six entries, so cuttingthe next release branch does not silently reintroduce the gap. I verified this by
running it for a hypothetical v3-4-test: 10 main / 10 v3-4-test / 10 v3-3-test,
nothing unmirrored.
One thing worth knowing for reviewers: that script patches
dependabot.ymlbyexact string match, and one of its anchors requires
interval: "weekly"to beimmediately followed by
target-branch: v3-3-test. Explanatory comments thereforelive at the top of the file rather than inline, so the anchors stay intact.
Was generative AI tooling used to co-author this PR?
Generated-by: Claude Code (Claude Opus 5) following the guidelines
🤖 Generated with Claude Code