From c47bd5e4f71e5b655c29bac83ee1ef998adc6da2 Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Mon, 1 Jun 2026 19:39:49 +0100 Subject: [PATCH] fix(elixir-ci-reusable): wrap bare job-level if: in ${{ }} (same anti-pattern as #322/#334) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit elixir-ci-reusable.yml:105 had the same bare-`if:`-at-job-level pattern that #334 fixed in rust-ci-reusable.yml. Surfaced via the sweep recipe documented in standards#334: grep -nE '^\s+if: [^$]+(hashFiles|format|inputs\.)' .github/workflows/*-reusable.yml The mix.exs guard is structurally identical to the Cargo.toml guard that broke 43+ Rust callers — same fix. Follow-up audit: same grep found ZERO additional hits in other reusables (governance/secret-scanner/scorecard/mirror/casket/dogfood). Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/elixir-ci-reusable.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/elixir-ci-reusable.yml b/.github/workflows/elixir-ci-reusable.yml index f1f6201b..37aff35b 100644 --- a/.github/workflows/elixir-ci-reusable.yml +++ b/.github/workflows/elixir-ci-reusable.yml @@ -102,7 +102,7 @@ jobs: name: Compile + test runs-on: ${{ inputs.runs-on }} # Guard on mix.exs so the wrapper is safe to add unconditionally. - if: hashFiles(format('{0}/mix.exs', inputs.working_directory)) != '' + if: ${{ hashFiles(format('{0}/mix.exs', inputs.working_directory)) != '' }} permissions: contents: read env: