From 46df785b8ab696cf652ae777c1dab79d62c0c17e Mon Sep 17 00:00:00 2001 From: Mario Sieg Date: Thu, 27 Aug 2026 22:16:13 +0000 Subject: [PATCH] Fix CI syntax bug --- .github/workflows/build_kernels.yaml | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build_kernels.yaml b/.github/workflows/build_kernels.yaml index 915cd9d..e0a4200 100644 --- a/.github/workflows/build_kernels.yaml +++ b/.github/workflows/build_kernels.yaml @@ -248,14 +248,19 @@ jobs: # should build and smoke-test, not publish. Without this, every push to a PR branch # would create and publish a real release the moment build+smoke-test go green. # - # needs.smoke-test.result tolerates 'skipped' as well as 'success': smoke-test is - # currently disabled (see its `if: false`) until the GPU runner is registered, and - # a skipped dependency fails the default needs.*-implied success() check — without - # this, disabling smoke-test would also silently block every release. + # needs['smoke-test'].result tolerates 'skipped' as well as 'success': smoke-test + # is currently disabled (see its `if: false`) until the GPU runner is registered, + # and a skipped dependency fails the default needs.*-implied success() check — + # without this, disabling smoke-test would also silently block every release. + # + # Bracket notation is required, not `needs.smoke-test.result`: GitHub Actions + # expressions parse a bare `-` in dot-access as subtraction, not part of the name, + # so the dotted form silently evaluates as garbage instead of erroring — which is + # exactly how this job ended up skipping releases with no annotation at all. if: | github.event_name != 'pull_request' && needs.build.result == 'success' && - (needs.smoke-test.result == 'success' || needs.smoke-test.result == 'skipped') + (needs['smoke-test'].result == 'success' || needs['smoke-test'].result == 'skipped') runs-on: ubuntu-latest permissions: contents: write