Skip to content

fix(ci): arm64 binary, rust-cache SHA, and codeql runner (#1270) - #1280

Merged
clouatre merged 3 commits into
mainfrom
fix/ci-arm64-1270
Jul 5, 2026
Merged

fix(ci): arm64 binary, rust-cache SHA, and codeql runner (#1270)#1280
clouatre merged 3 commits into
mainfrom
fix/ci-arm64-1270

Conversation

@clouatre

@clouatre clouatre commented Jul 5, 2026

Copy link
Copy Markdown
Member

Summary

Three CI workflow fixes from the v0.22.3 audit (issue #1270) plus a zizmor impostor-commit fix.

  • F02 (HIGH): publish-registry-manual.yml was downloading mcp-publisher_linux_amd64.tar.gz on an ubuntu-24.04-arm runner, causing "Exec format error" at execution. Swapped to mcp-publisher_linux_arm64.tar.gz with the correct ARM64 SHA256.
  • F03 (MEDIUM): build-and-attest.yml pinned Swatinem/rust-cache to e18b4977 (v2 floating) while all three references in ci.yml used c19371144 (v2.9.1). Pinned to c19371144 to match.
  • F04 (MEDIUM) -- not applied: codeql.yml was left on ubuntu-24.04. CodeQL CLI v2.25.6 bundles an AMD64 JVM and cannot execute on linux/arm64; migrating the CodeQL runner requires a separate action version bump.
  • zizmor impostor-commit: dtolnay/rust-toolchain@29eef336 is a dangling commit — the prior tip of the stable branch, no longer reachable from any branch or tag. Updated to 4be7066a (current stable tip) across all 6 occurrences in build-and-attest.yml, ci.yml (x3), release.yml, and update-deps.yml.

Changes

  • .github/workflows/publish-registry-manual.yml — arm64 artifact + SHA256
  • .github/workflows/build-and-attest.yml — rust-cache SHA + rust-toolchain SHA
  • .github/workflows/ci.yml — rust-toolchain SHA (3x)
  • .github/workflows/release.yml — rust-toolchain SHA
  • .github/workflows/update-deps.yml — rust-toolchain SHA

Closes #1270

Signed-off-by: Hugues Clouatre <hugues@linux.com>
@aptu-dev aptu-dev Bot added the bug Something isn't working label Jul 5, 2026
@clouatre
clouatre marked this pull request as ready for review July 5, 2026 15:16

@aptu-dev aptu-dev Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aptu Review

✅ Approve — This PR updates CI workflows to align with the project's ARM64 infrastructure, including updating the mcp-publisher binary to the ARM64 version with verified checksums and pinning the rust-cache action to a specific SHA. It also migrates the CodeQL analysis runner to the ARM64 environment to maintain consistency across the CI pipeline.


Posted by aptu

29eef336 is a dangling commit (unreachable from any branch or tag) that
zizmor correctly rejects as an impostor-commit. 4be7066a is the current
tip of the stable branch.

Affects: build-and-attest.yml, ci.yml (3x), release.yml, update-deps.yml
Signed-off-by: Hugues Clouatre <hugues@linux.com>

@aptu-dev aptu-dev Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aptu Review

✅ Approve — This PR updates CI workflows to use ARM64 runners, pins the Rust toolchain to a specific SHA, and updates the mcp-publisher artifact to the ARM64 version. These changes align the CI environment with the project's ARM64 infrastructure and improve build reproducibility.

  • The file .github/workflows/release.yml appears truncated at the end, which prevents a full review of the final publish-registry step logic.

Posted by aptu

--repo modelcontextprotocol/registry \
--pattern "mcp-publisher_linux_amd64.tar.gz" \
--pattern "mcp-publisher_linux_arm64.tar.gz" \
--output /tmp/mcp-publisher.tar.gz

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SHA256 checksum has been updated for the ARM64 binary. Ensure this matches the upstream release artifact hash.

@clouatre
clouatre enabled auto-merge (squash) July 5, 2026 15:22
CodeQL CLI v2.25.6 bundles an AMD64 JVM; it cannot execute on linux/arm64.
The ubuntu-24.04-arm change (F04) was incorrect -- keeping ubuntu-24.04.

Signed-off-by: Hugues Clouatre <hugues@linux.com>

@aptu-dev aptu-dev Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aptu Review

✅ Approve — This PR addresses CI stability issues on ARM64 runners by correcting architecture-specific binary downloads, synchronizing rust-cache action versions, and updating dangling rust-toolchain commit references to the current stable tip.


Posted by aptu

--repo modelcontextprotocol/registry \
--pattern "mcp-publisher_linux_amd64.tar.gz" \
--pattern "mcp-publisher_linux_arm64.tar.gz" \
--output /tmp/mcp-publisher.tar.gz

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SHA256 verification is excellent practice for external binary downloads. Ensure this is updated whenever the mcp-publisher version is bumped.

@clouatre
clouatre merged commit c07c6a2 into main Jul 5, 2026
15 checks passed
@clouatre
clouatre deleted the fix/ci-arm64-1270 branch July 5, 2026 15:27
clouatre added a commit that referenced this pull request Jul 5, 2026
…links (#1285)

- docs/audit/2026-07-05-v0.22.3.md: add Fixed column to summary table with
  PR links (#1280-#1283); replace Fix/Regression gate/PR group blocks with
  concise Resolution lines for all confirmed findings; correct F04 (CodeQL
  stays on AMD64; ARM64 JVM incompatible); update subsystem review statuses;
  replace Regression Strategy with Resolution Summary table
- docs/OBSERVABILITY.md: delete stale duplicate of docs/METRICS.md (renamed
  in #1265)
- docs/ARCHITECTURE.md, docs/DESIGN-GUIDE.md, docs/METRICS.md,
  docs/ROADMAP.md: replace relative ../OBSERVABILITY.md links with absolute
  URLs; DESIGN-GUIDE.md metrics schema links updated to METRICS.md

Signed-off-by: Hugues Clouatre <hugues@linux.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(ci): arm64 binary mismatch and rust-cache SHA inconsistency

1 participant