# Compute Contract Drill — reproduce first

Prerequisites: Node.js 22 and Python 3 with the exact dependency versions named
by the packet's attestation-boundary source lock. Acquisition is online;
verification and reproduction use packet members only.

Set `COMPUTE_CONTRACT_PYTHON` to that interpreter when it is not `python3`.

```sh
python3 -m venv compute-contract-venv
compute-contract-venv/bin/python -m pip install "PyNaCl==1.6.2" "cbor2==5.6.5" "cryptography==43.0.1" "ecdsa==0.18.0" "nvidia-ml-py==12.550.52"
export COMPUTE_CONTRACT_PYTHON="$PWD/compute-contract-venv/bin/python"
curl --fail --location --remote-name https://glyphstandard.com/evidence/compute-contract-drill/compute-contract-drill.tar
curl --fail --location --remote-name https://glyphstandard.com/evidence/compute-contract-drill/compute-contract-drill.tar.sha256
shasum -a 256 --check compute-contract-drill.tar.sha256
tar -xf compute-contract-drill.tar
PACKET_ROOT="$(tar -tf compute-contract-drill.tar | sed -n '1s#/.*##p')"
node "$PACKET_ROOT/verify-packet.mjs" "$PACKET_ROOT"
node "$PACKET_ROOT/run.mjs" "$PACKET_ROOT"
```

The dependency installation and packet download are acquisition steps. The two
`node` commands use the extracted packet, local Node runtime, and selected local
Python environment; the evaluator performs no live lookup.

The expected report is `expected-report.json`. The canonical public case is
`unbound_public_evidence`; its receiver disposition is `ESCALATE`. The
`constructed_closed_control` is `PROJECT_OPERATED`, moves no funds, establishes
no externality, and demonstrates evaluator reachability only.

Running the packet increments no W, D, I, or replay counter.
