From b3d92a46a4d014a8d22de7cdb926aeecb1f18aa5 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 25 Oct 2026 11:38:25 +0000 Subject: [PATCH] ci(dependabot-auto-merge): turn the job off until the objectstack cutover (objectui#13497) The job's last step enqueues a Dependabot pull request with `gh pr merge --auto` under GITHUB_TOKEN. GitHub starts no workflow run for an event GITHUB_TOKEN caused, so that merge group never gets its `merge_group` runs and holds the head of the queue until the check timeout removes it; every Dependabot force-push re-enqueued it and the stall repeated. The triage ruling on objectui#13497 took the cheaper fix for a repository that is archived at the objectstack-ai/objectstack#25677 cutover: stop enqueuing Dependabot pull requests from Actions. The whole job is off (`if: false`), not only its enqueue step, because the gate that would remain holds a runner per Dependabot rebase only to approve a pull request nothing enqueues. No App or PAT secret is added, the queue timeout is unchanged and no required check is dropped. The header says how to turn it back on. Part of objectstack-ai/objectstack#25677 Claude-Session: https://claude.ai/code/session_01DqwYJmM7nGqhoj84ZUJ9Cz Co-authored-by: Claude --- .github/workflows/dependabot-auto-merge.yml | 28 ++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/.github/workflows/dependabot-auto-merge.yml b/.github/workflows/dependabot-auto-merge.yml index 943bbd4601..9ca3992647 100644 --- a/.github/workflows/dependabot-auto-merge.yml +++ b/.github/workflows/dependabot-auto-merge.yml @@ -4,6 +4,31 @@ on: pull_request: branches: [main, develop] +# ── Off until the objectstack cutover (objectui#13497) ───────────────────────── +# +# The job below carries `if: false`. Its last step enqueues with `gh pr merge +# --auto` under GITHUB_TOKEN, and GitHub starts no workflow run for an event that +# GITHUB_TOKEN caused. So the merge group it creates gets no `merge_group` runs, +# the required checks never report on it, and the entry holds the head of the +# merge queue until the queue's check timeout removes it, with every pull request +# behind it waiting the whole time. Each Dependabot force-push re-ran this job and +# re-enqueued, so the stall repeated. The measurements are on objectui#13497. +# +# This repository is archived when objectstack-ai/objectstack#25677 moves objectui +# into objectstack, so the ruling on objectui#13497 took the cheaper fix: stop +# enqueuing Dependabot pull requests from Actions. ⛔ No App or PAT secret was +# added for an enqueue that runs, the queue timeout was not shortened, and no +# required check was dropped. +# +# The whole job is off, not only its enqueue step: without the enqueue it would +# still hold a runner for every Dependabot rebase in the cutover window, only to +# approve a pull request that nothing enqueues. Everything else here is left as it +# was. Until the cutover, nothing approves, enqueues or comments on a Dependabot +# pull request; one lands only if someone enqueues it by hand once its checks are +# green. To turn the job back on, give it back the condition `if: false` replaced, +# `github.actor == 'dependabot[bot]'`, and fix the GITHUB_TOKEN enqueue first, or +# the stall returns with it. + # ── Why this workflow no longer enables auto-merge unconditionally (#4973) ──── # # It used to run, for every semver-patch/minor bump and with nothing else asked: @@ -82,7 +107,8 @@ concurrency: jobs: dependabot: runs-on: ubuntu-latest - if: ${{ github.actor == 'dependabot[bot]' }} + # Off until the objectstack cutover: see the header (objectui#13497). + if: false # The gate waits for the slowest check in the repository. Measured on #4959 # the last required context reported 9m26s after the jobs started, so the # script's own deadline is 40 minutes (`GATE_TIMEOUT_SECONDS`) and the job is