Просмотр исходного кода

ci(mergify): enumerate matrix sub-checks to reliably block merges

The generic `-check-failure ~= test-prod-node24 /` pattern has let
matrix-job level failures through in queue-branch CI runs (observed on
run 24828684287 for PR #11032: all six shard 2/2 run-playwright jobs
failed yet the merge proceeded). Enumerate each sub-check explicitly
under both `queue_conditions` and `merge_conditions` so the regex
matches named jobs like `test-prod-node24 / run-playwright (chromium,
2/2, 6.0)` and blocks merges unambiguously.
Yuki Takei 3 дней назад
Родитель
Сommit
4c26e61eba
1 измененных файлов с 15 добавлено и 0 удалено
  1. 15 0
      .github/mergify.yml

+ 15 - 0
.github/mergify.yml

@@ -7,6 +7,15 @@ queue_rules:
       - -check-failure ~= ci-app-
       - -check-failure ~= ci-app-
       - -check-failure ~= ci-slackbot-
       - -check-failure ~= ci-slackbot-
       - -check-failure ~= test-prod-node24 /
       - -check-failure ~= test-prod-node24 /
+      # Explicitly enumerate sub-checks of test-prod-node24 so that matrix-
+      # job level failures (e.g. `run-playwright (chromium, 2/2, 6.0)`)
+      # reliably block merges. The broader `-check-failure ~= test-prod-node24 /`
+      # has historically let such failures through (observed on run
+      # 24828684287 for PR #11032).
+      - -check-failure ~= test-prod-node24 / build-prod
+      - -check-failure ~= test-prod-node24 / launch-prod
+      - -check-failure ~= test-prod-node24 / run-playwright
+      - -check-failure ~= test-prod-node24 / report-playwright
     merge_conditions:
     merge_conditions:
       - check-success ~= ci-app-lint
       - check-success ~= ci-app-lint
       - check-success ~= ci-app-test
       - check-success ~= ci-app-test
@@ -17,6 +26,12 @@ queue_rules:
       - -check-failure ~= ci-app-
       - -check-failure ~= ci-app-
       - -check-failure ~= ci-slackbot-
       - -check-failure ~= ci-slackbot-
       - -check-failure ~= test-prod-node24 /
       - -check-failure ~= test-prod-node24 /
+      # Defensive: same explicit enumeration as queue_conditions so the
+      # merge-time gate cannot be bypassed by a matrix-job level failure.
+      - -check-failure ~= test-prod-node24 / build-prod
+      - -check-failure ~= test-prod-node24 / launch-prod
+      - -check-failure ~= test-prod-node24 / run-playwright
+      - -check-failure ~= test-prod-node24 / report-playwright
 
 
 pull_request_rules:
 pull_request_rules:
   - name: Automatic queue to merge
   - name: Automatic queue to merge