Skip to content

fix(cuda): allow missing runtime ELF build IDs - #14

Merged
rextio merged 1 commit into
0.1.2from
fix/012-wsl2-optional-build-id
Jul 25, 2026
Merged

rextio merged 1 commit into
0.1.2from
fix/012-wsl2-optional-build-id

Conversation

@rextio

@rextio rextio commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Root cause

A real TensorFlow 2.21.0 GPU/native run on WSL2 with an RTX 3060 reached successful native execution, numerical parity, and runtime-image mapping. Evidence production then failed only because tensorflow/libtensorflow_cc.so.2 has no GNU ELF build ID. The previous producer treated that optional ELF note as mandatory even though exact mapped canonical wheel paths, SHA-256 digests, byte sizes, roles, and mapped=true already bind the expected DSOs.

Change

  • Record build_id: null when an expected mapped TensorFlow wheel DSO has no build ID.
  • Keep lowercase bounded validation for every non-null build ID.
  • Preserve exact role/path/mapping/SHA-256/size checks in the producer and offline verifier.
  • Correct the manual evidence documentation and chain verification with &&, so a producer failure does not cause a secondary missing-evidence error.

TDD evidence

RED was observed before implementation:

  • producer rejected mapped tensorflow_cc solely because build_id=None;
  • verifier rejected null as a non-string.

GREEN verification:

  • focused producer/verifier files: 54 passed;
  • GPU-free suite: 414 passed, 1 skipped;
  • Ruff: clean;
  • mypy: no issues;
  • python3.11 -m compileall -q src scripts tests: clean;
  • documented shell chain: bash -n clean;
  • git diff --check: clean.

Regression coverage also confirms malformed non-null IDs, path mismatches, unmapped and deleted images, wrong roles, bad hashes, and non-positive sizes remain rejected.

Residual validation

A fresh real WSL2 RTX 3060 manual harness run is still required to produce the trusted evidence artifact. This PR changes no support, certification, kernel-activity, transfer-profile, or performance claim.

@rextio
rextio merged commit 6f5d4f8 into 0.1.2 Jul 25, 2026
16 checks passed
@rextio
rextio deleted the fix/012-wsl2-optional-build-id branch July 25, 2026 15:20
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.

1 participant