From a057357b248d00ff41a9b34d4991c9c67e9735be Mon Sep 17 00:00:00 2001 From: Mao Nakamoto <41178744+maonakamoto@users.noreply.github.com> Date: Fri, 4 Sep 2026 16:55:50 +0200 Subject: [PATCH] =?UTF-8?q?chore(ci):=20adopt=20the=20fleet=20auto-merge?= =?UTF-8?q?=20sweep=20=E2=80=94=20green=20PRs=20merge=20themselves?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This repo had no auto-merge workflow; green PRs waited for a human. Thin caller of bitbaum/fleet auto-merge-sweep.yml, same as ai-forms. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01WqKqMnHQHSmkGFfc5t7Rxn --- .github/workflows/auto-merge.yml | 39 ++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/auto-merge.yml diff --git a/.github/workflows/auto-merge.yml b/.github/workflows/auto-merge.yml new file mode 100644 index 0000000..411b016 --- /dev/null +++ b/.github/workflows/auto-merge.yml @@ -0,0 +1,39 @@ +# Auto-merge — nobody is in the merge loop. +# +# Green, ready PRs merge themselves. The policy lives in ONE place for the +# whole fleet — bitbaum/fleet, scripts/ci/auto-merge-sweep.sh — and this file +# only says "run it, with these settings". Added 2026-09-04: this repo had NO +# auto-merge at all, so green PRs sat until a human merged them by hand — +# the docs truth-sweep found five lib repos in that state. +# +# The triggers stay here because they are genuinely per-repo: workflow_run +# must name the CI workflow exactly. +# +# To stop all of this: delete this file, or add a `hold` label to a PR. +name: Auto-merge + +on: + workflow_run: + workflows: ['CI'] + types: [completed] + schedule: + - cron: '*/10 * * * *' + workflow_dispatch: {} + +# Declared on the CALLER as well as inside the reusable workflow: a called +# workflow's token is capped by what the caller grants. +permissions: + contents: write # merge the PR + pull-requests: write # read PR state, delete the branch + actions: write # dispatch the re-arm workflows + checks: read # statusCheckRollup — only load-bearing on private repos + statuses: read + +jobs: + sweep: + uses: bitbaum/fleet/.github/workflows/auto-merge-sweep.yml@main + with: + base_branch: main + ci_workflow: ci.yml + # SPACE-separated: the sweep word-splits this. + rearm_workflows: 'ci.yml publish.yml'