From 814a1605b15e8134625f35949229c3cb27db8d5c Mon Sep 17 00:00:00 2001 From: Ralf Anton Beier Date: Sat, 16 May 2026 19:44:00 +0200 Subject: [PATCH] =?UTF-8?q?ci(release):=20make=20build-test-evidence=20non?= =?UTF-8?q?-blocking=20(continue-on-error)=20=E2=80=94=20round=202=20(#293?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit v0.10.0 manual republish forensics: The release workflow on tag v0.10.0 (run 25966236046) built all five cross-platform binaries, the VSIX, the compliance report, the baseline snapshot, and ran docs-check successfully. The "Create GitHub Release" job was skipped because it `needs: build-test-evidence`, and that job failed on the spar -> highs-sys WASI cross-compile (CMake Threads::Threads target not available in the wasi-sdk 25.0 sysroot). The release was published manually from the workflow artifacts. To prevent this hand-republish on every future tag push: - `build-test-evidence`: `continue-on-error: true`. The job still runs and uploads its artifact when it succeeds (desirable add-on), but a failure no longer marks the run as failed. - `create-release.needs`: drop `build-test-evidence`. The Collect assets step uses a permissive `find` and tolerates the missing tarball. History: #272 originally introduced the continue-on-error; #274 reverted it with the wasi-sdk integration that we expected to handle highs-sys. v0.10.0 proved that's still not enough. Tracking the upstream fix in #293 — once that's resolved, this commit can be reverted. Refs: #293 --- .github/workflows/release.yml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f13149f..0c5dc0b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -165,9 +165,18 @@ jobs: path: ${{ steps.report.outputs.archive-path }} # ── Test evidence bundle ────────────────────────────────────────────── + # Non-blocking: this job pulls in the spar wasm32-wasip2 build, which + # transitively requires the highs-sys C++ solver. WASI cross-compile of + # highs-sys has been flaky (CMake Threads::Threads target unavailable in + # the WASI sysroot — see v0.10.0 release run 25966236046). Until that + # upstream issue is resolved (tracked separately), this job must NOT + # block `create-release` from publishing the binaries that DID build. + # Test evidence is a desirable add-on, not a required gate; cargo test + # already ran on the merge commit before the tag was pushed. build-test-evidence: name: Build test evidence runs-on: ubuntu-latest + continue-on-error: true # NB: doesn't block create-release; see note above. steps: - uses: actions/checkout@v6 @@ -307,9 +316,14 @@ jobs: path: vscode-rivet/*.vsix # ── Create GitHub Release ───────────────────────────────────────────── + # Note: build-test-evidence is intentionally NOT in `needs` — that job + # depends on a flaky WASI cross-compile (spar → highs-sys) and a failure + # there must not block publication of the cross-platform binaries. If + # the test-evidence tarball does build, it will be available as a + # workflow artifact and can be attached to the release manually. create-release: name: Create GitHub Release - needs: [build-binaries, build-compliance, build-test-evidence, build-vsix, docs-check] + needs: [build-binaries, build-compliance, build-vsix, docs-check] runs-on: ubuntu-latest steps: - uses: actions/checkout@v6