DOCS / LOCAL DEVELOPMENT

Run your own development stack.

Run the local program demo

From the PairKey repository root, use Rust 1.88.0 with rustfmt and Clippy, Python 3.12+, Node 22.23.0 and curl. The installer supplies the pinned Solana, Anvil, and SBF tools locally.

python3 scripts/install-ci-tools.py
source .local/ci-tools/env.sh
bash experiments/silence-dkls23/bootstrap.sh build --release --locked
cargo fetch --locked
bash scripts/build-programs.sh
cargo build --workspace --features pairkey-worker/dev-simulation --locked
bash scripts/demo-program-jobs.sh

The demo starts local services, exercises program-authorized signing and EVM sessions, and runs restart, cancellation, and freeze cases. Expect several minutes, including deliberate rate-limit waits. A complete validation gate is available through bash scripts/ci.sh.

Public evidence is written beneath .local/. That directory also contains private development roots and identity material; only selected public reports are suitable for sharing.

What success looks like

The harness exits successfully after completing the program-controlled flows. It starts a local Solana validator, Anvil, two workers, and a coordinator, funds only local accounts, and stops its child processes on exit. Public results include multi-suite signing, EVM transfer execution, session revocation, and the job-lifecycle matrix.

The full gate also exercises v2 account and bound-identity approvals, authenticated program evaluation, atomic commit, durable recovery, all five browser-SDK signing flows, and the extracted downloadable program. Inspect the logs from your actual run in .local/ci-report/; historical reports do not establish the current checkout’s result.

If the demo refuses to run

Use your own application

Continue to Solana program integration. The browser demo teaches the flow; this local harness runs real signing code.