Skip to content

Commit edbbe96

Browse files
ChipWolfclaude
andauthored
chore(renovate): enable platform auto-merge for green PRs (#111)
* chore(renovate): enable platform auto-merge for green PRs The Friday-only `schedule` gates Renovate's own merge step, so green PRs sat unmerged for up to a week. Hand merging to GitHub's native auto-merge instead: Renovate flags each PR during the Friday window and GitHub merges it the moment required checks pass, on any day, decoupled from `schedule`. `platformAutomerge` defaults to true; making it explicit documents the dependency on the repo-level prerequisites configured alongside this: - repo setting "Allow auto-merge" enabled - branch protection on `main` requiring the CI checks (MegaLinter, source-tests ubuntu+windows), non-strict, admins exempt Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * chore(agents): document Renovate platform auto-merge prerequisites Captures the lesson from wiring up auto-merge: a restrictive Renovate `schedule` gates Renovate's own merge step, so platform (GitHub-native) auto-merge is needed to merge green PRs outside the window, which in turn needs the repo "Allow auto-merge" setting plus branch protection with the CI checks required (non-strict, admins exempt). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 59fec3c commit edbbe96

2 files changed

Lines changed: 7 additions & 0 deletions

File tree

.github/renovate.json5

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@
88
],
99
schedule: ["after 11am and before 1pm on Friday"],
1010
prHourlyLimit: 0,
11+
// Hand merging to GitHub's native auto-merge so green PRs merge the moment
12+
// checks pass, on any day, rather than being gated by the Friday `schedule`
13+
// window above (Renovate's own merge only runs during scheduled processing).
14+
// Requires the repo's "Allow auto-merge" setting plus branch protection on
15+
// `main` with the CI checks marked required (MegaLinter, source-tests).
16+
platformAutomerge: true,
1117
customManagers: [
1218
{
1319
customType: "regex",

home/dot_agents/AGENTS.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ Always edit the source, not the deployed file. When updating any memory file: re
6262
- **Inspecting a PR's diff.** Always diff the remote PR branch against `origin/main` (e.g. `git diff origin/main...origin/<pr-branch>`), not local HEAD. Local HEAD may be on an unrelated branch, so a diff against it is meaningless and returns empty output without any error.
6363
- **Before opening a PR: clean up history.** Squash messy work-in-progress or AI-attributed commits into a clean, atomic commit sequence on the branch. The branch is yours until `gh pr create` succeeds.
6464
- **Once a PR is open: never amend or force-push.** Use follow-up commits so reviewers see exactly what changed between their review and your response. The branch now belongs to the reviewer; rewriting it erases the diff they expect to see. Preserve every change as a separate commit.
65+
- **Renovate auto-merge needs platform prerequisites, not just `automerge: true`.** With a restrictive top-level `schedule`, Renovate's own merge step only runs inside that window, so green PRs can sit unmerged for days. To merge whenever checks pass, rely on GitHub-native auto-merge (`platformAutomerge`, default true): it requires the repo's "Allow auto-merge" setting enabled AND branch protection on the target branch with the CI checks marked required. Set those required checks non-strict (do not require the branch be up to date) so a rebase schedule cannot deadlock merges, and leave admins exempt so the owner's direct pushes still work. Diagnose "automerge configured but PRs piling up" by correlating the last successful auto-merge against recent `schedule`/config commits, then verify the fix non-destructively by enabling auto-merge on a failing PR: GitHub should accept it but hold it (BLOCKED), not merge.
6566

6667
---
6768

0 commit comments

Comments
 (0)