Repository navigation
ci: gate Dependabot auto-merge on every check and Gdei exclusions - #690
Merged
Merged
Conversation
The Dependabot auto-merge workflow only waited for the CI workflow, so PRs were merged while non-required checks such as commitlint were red. Run a gate script from the default branch that requires every check run and commit status on the PR head to be green before enabling auto-merge. Also apply the GdeiAssistant dependency policy exclusions: verified same-repository Dependabot commits only, dependency manifests or pinned CI action bumps only, no protected workflows, no major or pre-1.0 updates.
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
A fork PR branch named dependabot/* must not displace a pending same-repository run. AI assistance: reviewed and edited with Grok Bot.
Pigbibi
marked this pull request as ready for review
November 1, 2026 15:40
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.
AI assistance
Grok Bot (AI agent) wrote this change and its tests for Li SiYi. A human reviewer must approve it before merge.
What changed
dependabot_auto_merge.ymlnow triggers on theCI,Documentation checkandEngineering governanceworkflows (previously onlyCI), checks out the default-branch gate script, and runs it. Permissions stay least-privilege (contents: write,pull-requests: write, plus read-onlychecksandstatuses). The checkout action is pinned by SHA. A per-branchconcurrencygroup avoids duplicate evaluations.scripts/dependabot_auto_merge_gate.py(standard library only) enablesgh pr merge --auto --rebase --delete-branch --match-head-commit <sha>only when every check run (latest per name and app, including non-required ones such asCommit message convention) and every commit status (risk-gate,pr-template) on the PR head is green. Failed, cancelled, timed-out and pending checks block it. It waits up to 8 minutes for pending checks, and a later workflow_run re-evaluates.dependencieslabel, and every commit is authored bydependabot[bot], committed byweb-flowand verified (a human push to the branch disables auto-merge);uv.lock,pyproject.tomlorrequirements*.txt, or only SHA-pinneduses:version bumps of the same actions inci.yml/docs-check.yml(never deploy, runtime, release, risk-gate, governance, codeql, hygiene or dependabot workflows);tests/test_dependabot_auto_merge_gate.pywith offline fixtures (18 tests).How verified
PYTHONPATH=. python3 -m pytest tests/test_dependabot_auto_merge_gate.py: 18 passed.scripts/check_style.pyreports 0 blocking findings.Commit message conventionwas red) now evaluates as red, and LongBridge chore(deps): bump QuantStrategyLab/QuantRuntimeSettings/actions/publish-runtime-execution-evidence from 2cb9834dc34b8a23e1b261457e1e077bfc414386 to 5fc2a320cf0903fb0475f8bf1d891d47d2d8bd93 #689 (bumps an action in a protected runtime workflow) is skipped as needing a human. Neither dry run enabled auto-merge.Why
Dependabot PRs were merged while non-required checks (commitlint) were red, because the old workflow waited only for
CIand branch protection requires just the five required contexts. It also auto-merged Dependabot bumps of deploy and runtime workflows, Dockerfile base images and 0.x packages, which the GdeiAssistant policy excludes.Risk
.github/workflows/**needs theowner-approvedlabel from the owner. This PR adds no labels and stays a draft.Dockerfile, protected or runtime workflows, tests, 0.x packages,build(deps)-style titles (via commitlint) or groups now need a human. WidenDEPENDENCY_FILEorACTION_FILESin the script to relax this.--autostill relies on branch protection for required checks. If Dependabot pushes a new head after auto-merge is enabled, GitHub keeps waiting on required checks only, so the next workflow_run re-evaluates the new head.