ci: un-dark aprender-gpu and aprender-cuda-edge in workspace-test (651 tests, 0.193s) - #3063
Conversation
…1 tests)
T0 of docs/specifications/nvidia-cuda-rust-library-integration.md, pulled
forward into 0.66 because nothing else in that spec is measurable without it.
Both crates were excluded from the ONLY required test check for a CUDA/cuBLAS
link their DEFAULT features do not have. Each is `default = []` with no
build.rs; the `cuda` feature is optional and off. So 651 tests have been
running nowhere:
aprender-gpu 444 tests 0.10s
aprender-cuda-edge 207 tests 0.03s
Nothing else covered them. `.github/workflows/cuda-nightly.yml:242` is the only
other CI reference to either crate and it runs a single filter (`perf053`), so
a 109,365-LOC PTX generator has had no required-check coverage at all.
Measured 2026-09-09 with the exact CI harness, not an approximation of it:
cargo nextest run --profile ci -p aprender-gpu -p aprender-cuda-edge --lib
-> Starting 651 tests across 2 binaries
Summary [0.193s] 651 tests run: 651 passed, 0 skipped
and still green in a CI-like environment (CUDA_VISIBLE_DEVICES="", empty HOME,
scrubbed XDG_CACHE_HOME), so the pass does not depend on this box having a GPU
or a warm ~/.cache/trueno.
Cost: ~31s extra cold build (263 dep crates, measured in an empty target dir)
against the job's timeout-minutes: 150. Run time is 0.193s.
aprender-compute stays excluded — it SIGSEGVs at exit and already runs as its
own step below.
Checked for coupled state: scripts/ci_test_tier.sh does not reference these
crates, no other workflow excludes them, and no guard script asserts the
exclusion list.
RISK, stated plainly: workspace-test is a required check with fail-fast = true.
If either crate has a failure that reproduces only in the clean-room container,
this blocks every open PR. The scrubbed-environment run above is evidence, not
proof. That is why this lands alone rather than batched -- revert is this one
commit.
Refs #3062
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J9cSQynVPYeUkQ2i7ccvrs
|
§13.11 rung 1 — quorum shadow verdict Shadow mode: this records a verdict and merges nothing. A refusal |
…the un-darking adds) — the tier decider refused the drifted registry workspace-test on this PR went RED at step 10 "Decide the test tier": scripts/ci_test_tier.sh classified a drifted scripts/tree_reader_tests.txt as ENV (exit 2, "no quick tier over a stale list") because un-excluding aprender-gpu --lib changed the derived list. The tests never ran. This is the registry co-evolving with ci.yml, generated by scripts/check_tree_reader_tests.sh --update, exactly as the failure printed. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01J9cSQynVPYeUkQ2i7ccvrs
…rkspace, aprender-explain's features=["cuda"] on aprender-gpu unifies the cuda driver in and its 217 driver:: tests panic on a GPU-less clean-room (queue run 34411725611); the workspace line keeps its excludes Refs #3062 #3067. Measured on main: nextest list --workspace -E 'package(aprender-gpu)' = 217 driver:: tests; -p aprender-gpu -p aprender-cuda-edge = 0 driver::, 13 launch_budget::. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BjhtNUSensCYpQb3mCYLod
|
Pushed Why the PR-level measurement was green and the queue was red. The fix that keeps the claim. The workspace line keeps its three excludes; the two GPU crates run as their own |
…the registry now that the crate runs as its own per-package step (the tier decision reads the workspace line's excludes) Refs #3062. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BjhtNUSensCYpQb3mCYLod
T0 of
docs/specifications/nvidia-cuda-rust-library-integration.md, pulled forward into 0.66 because nothing else in that spec is measurable without it. Tracked by #3062 (0.67).What this is
Two crates were excluded from the only required test check for a CUDA/cuBLAS link their default features do not have. Both are
default = []with nobuild.rs; thecudafeature is optional and off.aprender-gpuaprender-cuda-edgeNothing else covered them.
.github/workflows/cuda-nightly.yml:242is the only other CI reference to either crate and it runs a singleperf053filter.Measured with the exact CI harness
Not
cargo test— the command CI actually runs:Re-run in a CI-like environment (
CUDA_VISIBLE_DEVICES="", emptyHOME, scrubbedXDG_CACHE_HOME) — still green, so the pass does not depend on this box having a GPU or a warm~/.cache/trueno.Cost: ~31s extra cold build (263 dep crates, measured in an empty target dir) against the job's
timeout-minutes: 150.aprender-computestays excluded — it SIGSEGVs at exit and already runs as its own step below.Coupled state checked
scripts/ci_test_tier.shdoes not reference these cratesRisk, stated plainly
workspace-testis a required check withfail-fast = true. If either crate has a failure that reproduces only in the clean-room container, this blocks every open PR. The scrubbed-environment run above is evidence, not proof.That is why this lands alone rather than batched — the revert is this single commit. Please watch the first run rather than assuming it.
🤖 Generated with Claude Code
https://claude.ai/code/session_01J9cSQynVPYeUkQ2i7ccvrs