Skip to content

Skip optional CUDA downloads in CPU-only CI - #1952

Merged
currentbits merged 1 commit into
mainfrom
ci/cpu-only-onnx-downloads
Nov 8, 2026
Merged

currentbits merged 1 commit into
mainfrom
ci/cpu-only-onnx-downloads

Conversation

@currentbits

@currentbits currentbits commented Nov 8, 2026 •

Copy link
Copy Markdown
Owner

CPU-only CI can fail before any tests run because pinned onnxruntime-node@1.21.0 downloads its optional Linux x64 CUDA archive even when nvcc is absent. Both the test job and headless smoke job on #1924 failed there with HTTP 504.

Pass the package's supported --onnxruntime-node-install-cuda=skip option only to the existing memory-server installs in test.yml's test and headless-linux jobs. Memory embeddings explicitly select CPU/q8, and the npm tarball already includes the native CPU runtime. The ordinary smoke job does not install memory-server and needs no change. See the pinned upstream installer.

Production package installs, lockfiles, and server-bundle.yml remain unchanged. The bundle workflow builds redistributable archives, so it retains the default GPU-capable install even on CPU runners. All memory tests and all four native server build/worktree/PTY smoke targets remain intact; no retries or test exclusions are added.

Validation:

  • Isolated Node 22.23.2 Linux x64 default install attempts the same CUDA URL without nvcc (stopped at a 120-second validation limit). A separate clean install with the exact updated workflow command succeeds with all lifecycle scripts enabled and no GPU download.
  • The retained Linux CPU runtime SHA-256 matches the original npm tarball; CPU is reported as bundled, CUDA/TensorRT as unbundled. Real MiniLM CPU embedding integration passes.
  • Complete memory suite with real embeddings enabled on Node 22.23.2 Linux x64 and native macOS: 248 tests pass on each, zero failures or skips. The Linux fixture includes Git and an init reaper, matching the runner facilities these tests require.
  • Unchanged package-server.sh darwin-arm64 build and smoke-server-bundle.js pass: bundled Node 24.22.2, server boot, thread in a worktree, and real PTY. Other native architectures remain covered by the unchanged CI matrix.
  • git diff --check and actionlint workflow validation pass. Full ShellCheck reports the same pre-existing SC2086 warning as the base workflow.

Fixes #1950.

GitHub Actions on this head: all three ordinary smoke jobs pass, as do Linux x64 Xvfb and both Linux ARM headless boots. The Ubuntu test job and x64 ozone job fail earlier in root npm ci, downloading Electron with HTTP 504/502, before reaching memory-server. macOS/Windows full test jobs were still running at the last check. These separate Electron download failures are outside this CUDA-only fix; no retries or weakened tests were added.

Created with GPT-6.1 Sol in Codex (Solenta).

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 8, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-08T11:49:44.226324Z ebe1154 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@currentbits
currentbits merged commit c552fad into main Nov 8, 2026
18 of 20 checks passed
@currentbits
currentbits deleted the ci/cpu-only-onnx-downloads branch November 8, 2026 12:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Avoid optional CUDA downloads in CPU-only CI dependency installs

1 participant