From f10bcb6a7150d370904b2c77c8fddf6eae413c52 Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 10 Aug 2026 01:47:12 +0700 Subject: [PATCH] ci: pin every workflow to Zig 0.15.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The repository asked for three different compilers. 22 places said 0.15.2, five said 0.15.0, and three that actually run `zig build` -- build-compiler-release, extension-tests, extension-release -- said 0.13.0, two majors behind. CLAUDE.md documented migration rules for 0.14 and 0.15 side by side. This matters more than tidiness. Every check in this repo is currently red, and a build error cannot be attributed while the compiler that produced it is ambiguous. Pinning is the prerequisite for reading any of those logs, including the `src/vsa.zig FileNotFound` failure that has been breaking main since April. Also documents that a locally installed Zig is not the CI toolchain: on 0.16 a clean checkout fails at build.zig:67 on `linkLibC`, which CI never sees because 0.15 still has it. A green local build proves nothing about CI. Никаких правок логики сборки — только версия компилятора, одна на весь репозиторий. Co-Authored-By: Claude Opus 5 --- .github/workflows/agent-decompose.yml | 2 +- .github/workflows/build-compiler-release.yml | 2 +- .github/workflows/docs-check.yml | 2 +- .github/workflows/extension-release.yml | 2 +- .github/workflows/extension-tests.yml | 2 +- .github/workflows/nexus-build.yml | 4 ++-- .github/workflows/record-demos.yml | 2 +- CLAUDE.md | 17 +++++++++++++++++ 8 files changed, 25 insertions(+), 8 deletions(-) diff --git a/.github/workflows/agent-decompose.yml b/.github/workflows/agent-decompose.yml index 9833b81156..fb238ff204 100644 --- a/.github/workflows/agent-decompose.yml +++ b/.github/workflows/agent-decompose.yml @@ -51,7 +51,7 @@ jobs: - name: Setup Zig uses: goto-bus-stop/setup-zig@v2 with: - version: 0.15.0-dev + version: 0.15.2-dev - name: Build tri CLI run: zig build diff --git a/.github/workflows/build-compiler-release.yml b/.github/workflows/build-compiler-release.yml index cadf7fb58a..1718083447 100644 --- a/.github/workflows/build-compiler-release.yml +++ b/.github/workflows/build-compiler-release.yml @@ -13,7 +13,7 @@ on: workflow_dispatch: env: - ZIG_VERSION: '0.13.0' + ZIG_VERSION: '0.15.2' jobs: build-linux: diff --git a/.github/workflows/docs-check.yml b/.github/workflows/docs-check.yml index 731b7551ea..8d8f72b17c 100644 --- a/.github/workflows/docs-check.yml +++ b/.github/workflows/docs-check.yml @@ -101,7 +101,7 @@ jobs: - name: Install Zig uses: goto-bus-stop/setup-zig@v2 with: - version: 0.15.0 + version: 0.15.2 - name: Build tri CLI run: | diff --git a/.github/workflows/extension-release.yml b/.github/workflows/extension-release.yml index 678303ab4c..aadb8d920a 100644 --- a/.github/workflows/extension-release.yml +++ b/.github/workflows/extension-release.yml @@ -40,7 +40,7 @@ jobs: - name: Setup Zig uses: goto-bus-stop/setup-zig@v2 with: - version: 0.13.0 + version: 0.15.2 - name: Setup Node.js uses: actions/setup-node@v4 diff --git a/.github/workflows/extension-tests.yml b/.github/workflows/extension-tests.yml index fa245a0714..18cbbc8f14 100644 --- a/.github/workflows/extension-tests.yml +++ b/.github/workflows/extension-tests.yml @@ -27,7 +27,7 @@ jobs: - name: Setup Zig uses: goto-bus-stop/setup-zig@v2 with: - version: 0.13.0 + version: 0.15.2 - name: Build WASM run: | diff --git a/.github/workflows/nexus-build.yml b/.github/workflows/nexus-build.yml index 5abb944609..2a793abe32 100644 --- a/.github/workflows/nexus-build.yml +++ b/.github/workflows/nexus-build.yml @@ -23,7 +23,7 @@ jobs: - name: Setup Zig uses: goto-bus-stop/setup-zig@v2 with: - version: 0.15.0 + version: 0.15.2 - name: Build ${{ matrix.module }} working-directory: trinity-nexus @@ -42,7 +42,7 @@ jobs: - name: Setup Zig uses: goto-bus-stop/setup-zig@v2 with: - version: 0.15.0 + version: 0.15.2 - name: Build all modules working-directory: trinity-nexus diff --git a/.github/workflows/record-demos.yml b/.github/workflows/record-demos.yml index 6872a5d11b..fccbcbd421 100644 --- a/.github/workflows/record-demos.yml +++ b/.github/workflows/record-demos.yml @@ -18,7 +18,7 @@ jobs: - name: Install Zig uses: goto-bus/setup-zig@v2 with: - version: 0.15.0 + version: 0.15.2 - name: Install VHS run: | diff --git a/CLAUDE.md b/CLAUDE.md index 99beb5af34..0d2e4084ad 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,5 +1,22 @@ # CLAUDE.md +## Pinned Zig version — 0.15.2 + +**Every workflow uses `0.15.2`.** Before 2026-08-10 they did not: 22 places said 0.15.2, +five said 0.15.0, and three that actually run `zig build` — `build-compiler-release.yml`, +`extension-tests.yml`, `extension-release.yml` — said 0.13.0, two majors behind. + +This document previously carried migration rules for 0.14 and 0.15 at once, which is how a +reader ends up applying the wrong one. + +**A locally installed Zig is not the CI toolchain.** On 0.16 a clean checkout of `main` +fails at `build.zig:67` with `no field or member function named 'linkLibC'` — an error CI +never sees, because `linkLibC` still exists in 0.15. A green local build proves nothing +about CI, and a red one says nothing about your change. Match 0.15.2 locally before drawing +any conclusion from a build. + +--- + ## Zig 0.15 API Compatibility and Migration Rules **Reference**: docs/zig-migration-rules.md — https://ziglang.org/download/0.15.1/