Build and test
Keep the protocol, solver, and RandomX repositories in adjacent directories at compatible reviewed revisions. The source links below pin the versions documented here.
Toolchains
Section titled “Toolchains”| Component | Version |
|---|---|
| Rust | 1.97.1 |
| SP1 | 6.3.1 |
| Solidity | 0.8.35, via-IR, Prague, 10,000 optimizer runs |
| Recorded Foundry release | 1.7.1 |
| Website Node.js | 22.13+ |
Protocol and solver checks
Section titled “Protocol and solver checks”From each Rust repository:
cargo fmt --all -- --checkcargo test --workspace --lockedcargo clippy --workspace --all-targets --locked -- -D warningsUse --workspace to include the solver’s SP1 adapter. From the protocol repository root, also run:
forge testforge lintRebuild the parent guest
Section titled “Rebuild the parent guest”With Docker and the pinned SP1 toolchain installed, run from chainjump:
rebuild_dir="$(mktemp -d)"cargo prove build --docker --tag v6.3.1 --locked \ --workspace-directory "$(cd .. && pwd)" \ -p chainjump-program --output-directory "$rebuild_dir"sha256sum "$rebuild_dir/chainjump-program"cargo prove vkey --elf "$rebuild_dir/chainjump-program"Compare the ELF and key with the release identities. The manifest records two identical Docker builds. Historical proof costs and test results belong to their recorded revisions; consult the validation and provenance sources below.
Website checks
Section titled “Website checks”From chainjump-website, with Playwright Chromium installed:
npm cinpm run validatenpx tsc --project docs/tsconfig.json --noEmitnpm run test:e2eDocumentation validation
Section titled “Documentation validation”npm run docs:verify-sourcesThis checks pinned file hashes, citations, contract/configuration coverage, identities, and arithmetic/ABI examples. It requires the sibling source repositories. Static and browser checks cover links, redirects, labels, and rendering. The repository README documents source-review and publication procedures; these checks do not constitute an independent protocol audit.