Mergify is installed on the account (all repos). Per the spec (#408 / docs/ci/mergify-integration-spec.md + mergify.yml.proposed), implement Phase 1: a serial Mergify merge queue that ends the manual serial-bump grind, with require-up-to-date KEPT ON (hard rule — never-disable-require-up-to-date) and the merge-commit policy preserved. (batch_size 1 + merge-commits + checkbox-on is the valid trilemma combo; no batching.)
Implement
.mergify.yml (repo root): queue_rules + a pull_request_rulesqueue action. batch_size: 1 (serial), merge_method: merge (merge commits). Merge conditions = check-success = CI passed (exact check name, not ci-passed) + not-draft + not-conflicting + any required approvals (match branch protection). Priority via priority_rules mapping the P0–P9 labels (P0 highest). Follow the spec's proposed config.
Confirm the already-disabledautoupdate.yml/ci-trigger.yml (+ mothballed traffic-control.yml) are superseded by Mergify — leave disabled or remove (document which); keep the traffic-control-tests gate job if still referenced by ci-passed.
Hard constraints
require-up-to-date STAYS ON. Do NOT implement batching (Phase 2). Keep the single CI passed gate + P-label priority. Merging .mergify.yml to main ACTIVATES Mergify, so the PR must be REVIEWED before merge — open it NO auto-merge; coordinator/maintainer reviews the config, then merges to go live.
Acceptance
A valid .mergify.yml that (once merged) queues PRs, merges serially on CI passed green with merge-commits, honors P-priority, and keeps require-up-to-date. Validate config structure against Mergify's schema. Relates #407/#408.
## Context
Mergify is **installed** on the account (all repos). Per the spec (#408 / `docs/ci/mergify-integration-spec.md` + `mergify.yml.proposed`), implement **Phase 1**: a **serial** Mergify merge queue that ends the manual serial-bump grind, with **require-up-to-date KEPT ON** (hard rule — [[never-disable-require-up-to-date]]) and the **merge-commit** policy preserved. (batch_size 1 + merge-commits + checkbox-on is the valid trilemma combo; no batching.)
## Implement
- **`.mergify.yml`** (repo root): `queue_rules` + a `pull_request_rules` `queue` action. `batch_size: 1` (serial), `merge_method: merge` (merge commits). Merge conditions = `check-success = CI passed` (exact check **name**, not `ci-passed`) + not-draft + not-conflicting + any required approvals (match branch protection). Priority via `priority_rules` mapping the **P0–P9 labels** (P0 highest). Follow the spec's proposed config.
- Confirm the already-**disabled** `autoupdate.yml`/`ci-trigger.yml` (+ mothballed `traffic-control.yml`) are superseded by Mergify — leave disabled or remove (document which); keep the `traffic-control-tests` gate job if still referenced by `ci-passed`.
## Hard constraints
require-up-to-date STAYS ON. Do NOT implement batching (Phase 2). Keep the single `CI passed` gate + P-label priority. **Merging `.mergify.yml` to `main` ACTIVATES Mergify**, so the PR must be REVIEWED before merge — open it **NO auto-merge**; coordinator/maintainer reviews the config, then merges to go live.
## Acceptance
A valid `.mergify.yml` that (once merged) queues PRs, merges serially on `CI passed` green with merge-commits, honors P-priority, and keeps require-up-to-date. Validate config structure against Mergify's schema. Relates #407/#408.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Context
Mergify is installed on the account (all repos). Per the spec (#408 /
docs/ci/mergify-integration-spec.md+mergify.yml.proposed), implement Phase 1: a serial Mergify merge queue that ends the manual serial-bump grind, with require-up-to-date KEPT ON (hard rule — never-disable-require-up-to-date) and the merge-commit policy preserved. (batch_size 1 + merge-commits + checkbox-on is the valid trilemma combo; no batching.)Implement
.mergify.yml(repo root):queue_rules+ apull_request_rulesqueueaction.batch_size: 1(serial),merge_method: merge(merge commits). Merge conditions =check-success = CI passed(exact check name, notci-passed) + not-draft + not-conflicting + any required approvals (match branch protection). Priority viapriority_rulesmapping the P0–P9 labels (P0 highest). Follow the spec's proposed config.autoupdate.yml/ci-trigger.yml(+ mothballedtraffic-control.yml) are superseded by Mergify — leave disabled or remove (document which); keep thetraffic-control-testsgate job if still referenced byci-passed.Hard constraints
require-up-to-date STAYS ON. Do NOT implement batching (Phase 2). Keep the single
CI passedgate + P-label priority. Merging.mergify.ymltomainACTIVATES Mergify, so the PR must be REVIEWED before merge — open it NO auto-merge; coordinator/maintainer reviews the config, then merges to go live.Acceptance
A valid
.mergify.ymlthat (once merged) queues PRs, merges serially onCI passedgreen with merge-commits, honors P-priority, and keeps require-up-to-date. Validate config structure against Mergify's schema. Relates #407/#408.Completed via PR #412 (merged). Closing + moving the board item to Done — it was left stuck In Progress.