Skip to content

pytest-gpu-proof

This is the code documentation. Use the project-overview link above for the workflow figure, paper, and introduction to the tool.

Signed pytest receipts for local GPU runs, verified in CPU-only CI.

The plugin turns an ordinary marked pytest run into a signed, reviewable artifact. The receipt binds a signer, exact test node IDs and outcomes, a Git commit, a source manifest, timestamps, and environment metadata. CPU-only CI validates those claims without importing CUDA or rerunning the GPU suite.

local or lab GPU                         ordinary CI runner
─────────────────────────────────        ─────────────────────────────
pytest --gpu-proof-enable       ───────▶ gpu-proof verify
run + fingerprint + sign                 authenticate + recompute + policy

The default open signer mode supports contributor-signed pull requests. Restricted policy can instead allowlist maintainers, dedicated CI accounts, or exact SSH key fingerprints.

Important

A receipt proves that a GitHub-key holder attested to the signed payload. It does not prove that the GPU or local machine was trustworthy. Read the security model.

Start here

Requirements: Python 3.11+, pytest 7+, and an SSH private-key file whose public key is registered on GitHub.