From 0789c6380c4030f70a6632fc0ec8dc12e9e015cb Mon Sep 17 00:00:00 2001 From: Martin Vogel Date: Sun, 5 Jul 2026 04:14:32 +0200 Subject: [PATCH] ci(test): make the broad dry-run matrix all-required (no optional legs) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The release dry run must be all-green on every platform — drop the optional/continue-on-error flags from the broad matrix legs (ubuntu-22.04, ubuntu-22.04-arm, macos-15, windows-2025) so a failure on any of them gates the run. Only affects broad_platforms=true (the dry run); the core PR-CI matrix is unchanged. Signed-off-by: Martin Vogel --- .github/workflows/_test.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/_test.yml b/.github/workflows/_test.yml index 45b121b84..53ecb3584 100644 --- a/.github/workflows/_test.yml +++ b/.github/workflows/_test.yml @@ -38,10 +38,12 @@ jobs: {"os":"macos-14","cc":"cc","cxx":"c++"}, {"os":"macos-15-intel","cc":"cc","cxx":"c++"} ]' + # Broad matrix legs are REQUIRED gates (no optional/continue-on-error + # escape hatches): the release dry run must be all-green, every platform. BROAD_UNIX='[ - {"os":"ubuntu-22.04","cc":"gcc","cxx":"g++","optional":true}, - {"os":"ubuntu-22.04-arm","cc":"gcc","cxx":"g++","optional":true}, - {"os":"macos-15","cc":"cc","cxx":"c++","optional":true} + {"os":"ubuntu-22.04","cc":"gcc","cxx":"g++"}, + {"os":"ubuntu-22.04-arm","cc":"gcc","cxx":"g++"}, + {"os":"macos-15","cc":"cc","cxx":"c++"} ]' # Each Windows leg pins the msys2 environment + package arch to the # RUNNER architecture so the build is native, never emulated: @@ -53,7 +55,7 @@ jobs: # the native ARM64 toolchain ASan instruments native ARM64 code, so it # is a real (non-optional) gate, not a tolerated emulated-flake. CORE_WIN='[{"os":"windows-latest","msystem":"CLANG64","pkg":"x86_64"}]' - BROAD_WIN='[{"os":"windows-2025","optional":true,"msystem":"CLANG64","pkg":"x86_64"},{"os":"windows-11-arm","msystem":"CLANGARM64","pkg":"aarch64"}]' + BROAD_WIN='[{"os":"windows-2025","msystem":"CLANG64","pkg":"x86_64"},{"os":"windows-11-arm","msystem":"CLANGARM64","pkg":"aarch64"}]' if [ "$BROAD" = "true" ]; then UNIX=$(jq -cn --argjson a "$CORE_UNIX" --argjson b "$BROAD_UNIX" '$a + $b') WIN=$(jq -cn --argjson a "$CORE_WIN" --argjson b "$BROAD_WIN" '$a + $b')