Skip to content

ci: consolidate dependency automation on renovate - #242

Merged
unional merged 1 commit into
mainfrom
chore/consolidate-dependency-automation
Sep 1, 2026
Merged

ci: consolidate dependency automation on renovate#242
unional merged 1 commit into
mainfrom
chore/consolidate-dependency-automation

Conversation

@unional

@unional unional commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator

Phase 8 of the modernize-repo pass: one updater, one merge mechanism, feeding the merge queue natively.

What was actually happening

Three paths were configured to merge the same PRs — Renovate opening them, dependabot-automerge.yml, and Mergify — and none of them worked.

All three Mergify rules ask for merge: squash. The repo has had allow_squash_merge: false since the merge-settings baseline landed, so every rule was a no-op. That is why #224 has sat open since 22 July and #237 since this morning with nothing touching them. The failure was silent: Mergify is installed org-wide and looked active.

dependabot-automerge.yml guards on github.actor == 'dependabot[bot]', and Dependabot opens no version-update PRs here — Renovate does.

Independently, a bot's direct merge action bypasses a merge queue rather than feeding it, and this repo now has a queue (added in the settings phase, verified by #239 merging through gh-readonly-queue/main/pr-239-…). So both mechanisms were the wrong shape regardless of whether they worked.

Changes

  • Delete .github/mergify.yml
  • Delete .github/workflows/dependabot-automerge.yml
  • Give .github/renovate.json an automerge policy: platformAutomerge (which enqueues natively), rebaseWhen: behind-base-branch, a 1-day minimumReleaseAge soak mirroring minimumreleaseage=1440 in .npmrc, and majors excluded — those break builds in ways CI catches but a human should choose to absorb.

Dependabot keeps raising alerts; Renovate reads them to open fix PRs. Only Dependabot's version updates and its automerge workflow go.

One thing that belongs upstream

The policy above is inlined here because the shared preset, unional/renovate-preset, is still a two-line config:base body — no automerge, no rebase policy, no release soak. The baseline says this policy lives in the preset, not per repo. I did not edit that repository because this pass is scoped to path-equal; once the preset carries the canonical body, this block should be deleted and the file returned to the bare extends.

Three paths were racing to merge the same PRs: renovate opening them, a
`dependabot-automerge.yml` workflow, and Mergify rules. Only renovate stays.

Mergify's rules were already dead — all three asked for `merge: squash`, and the repo
has disallowed squash merges since the merge-settings baseline landed. That is why
renovate PRs have been sitting open (#224 since July) with nothing merging them. A bot's
direct `merge` action also bypasses the merge queue rather than feeding it, which is now
the wrong shape for this repo regardless.

Dependabot keeps raising *alerts* — renovate reads them to open fix PRs — but no longer
opens version-update PRs of its own, so the automerge workflow has nothing to act on.

The renovate config carries a local automerge policy because the shared preset,
`unional/renovate-preset`, is still the two-line `config:base` body and has no automerge,
no rebase policy and no release soak. That belongs upstream; it is inlined here only so
this repo's bot PRs actually merge in the meantime. Majors stay manual.
@changeset-bot

changeset-bot Bot commented Sep 1, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 5a9146b

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@unional
unional enabled auto-merge September 1, 2026 08:11
@unional
unional added this pull request to the merge queue Sep 1, 2026
Merged via the queue into main with commit 74a4240 Sep 1, 2026
5 checks passed
@unional
unional deleted the chore/consolidate-dependency-automation branch September 1, 2026 08:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant