Toccata Readiness: A focused operational checklist for CI, rehearsals and zk benchmarking
Purpose This checklist targets Kaspa builders responsible for continuous integration, deployment rehearsals, and ZK/verification benchmarking ahead of the Tocca...
Purpose
This checklist targets Kaspa builders responsible for continuous integration, deployment rehearsals, and ZK/verification benchmarking ahead of the Toccata (Covenants++) hard fork. It aggregates recent, developer-sourced timing and technical details so teams can prioritise concrete tests, version pins and monitoring steps required during the final testnet rehearsals and the projected mainnet window in early June 2026.
Quick context to keep on your radar
- Feature freeze: Toccata’s development reported a feature freeze target of Apr 15, 2026; teams should assume the core KIPs and branch strategy are stabilised after that date [1].
- Testnet rehearsals: TN12 is being restarted as a clean testnet (covpp-reset1 rehearsal) and the rollout includes a rehearsal phase before mainnet activation [1][2].
- Mainnet window: the original May 5 target was moved to a June ~5–20, 2026 window to finalise sequencing and zk design details — use that window for final smoke tests and deployment freezes [1][2].
Pre-rehearsal CI and repo pins (must-do)
- Pin your node/runtime to the covpp-reset1 branch or the exact Rusty‑Kaspa commit used in TN12 rehearsals. The KIP-16 reference implementation (OpZkPrecompile) has been merged into covpp-reset1; use that commit to replicate on-chain verifier behaviour in CI [3].
- Pin your Silverscript compiler build to the experimental TN12-targeted release in the silverscript repo for deterministic covenant bytecode generation during tests — the compiler is marked experimental and targeted to TN12 currently [5].
- Include the KIP set (KIP‑16, KIP‑17, KIP‑20, KIP‑21) as gating artifacts in your CI pipeline: fetch the canonical KIP files from the kaspanet/kips repo to ensure compatibility with on-chain expectations [6].
Rehearsal test cases to add (high priority)
Run these tests on TN12 rehearsals and in your local end-to-end suites. They focus on proving/verifier behaviour, sigop budgeting, and recovery from reorg-like conditions.
- On-chain verifier smoke test: submit transactions that exercise the OpZkPrecompile variants (Groth16 tag and STARK‑style tag) to verify end-to-end verification success/fail modes. Use the reference implementation benchmarks for expected sigop cost ranges as a guide when setting test thresholds [3].
- Sigop and fee-pressure benchmarks: replicate the PR benchmark cases to generate expected sigop consumption numbers (Groth16 ~140 sigops; STARK ~740 sigops are example reference figures discussed during the PR) and measure how your mempool/fee estimation reacts under load [3].
- Prover + witness store integration: run lane-local proofs and witness‑store-backed proving workloads using the partitioned sequencing guidance in KIP‑21. Validate that your prover can produce O(activity)-sized proofs for active lanes and that your witness store supports the lane witness access patterns described in the draft KIP [4].
- Reorg/rollback exercises: simulate lane purges and reversible diffs in local rehearsals to confirm your relayer, builder, or indexer handles SeqStateRoot changes and reorg-safe application rules from the KIP‑21 spec [4].
CI-level artifacts and metrics to collect
- Binary and Docker images pinned to covpp-reset1 commit hashes.
- Recorded sigop counts and verification latency per proof type (store results as CI artifacts).
- Witness-store hit/miss rates and storage growth rates under synthetic activity per lane.
- End-to-end transaction success rates for Silverscript-compiled covenant deployments on TN12.
Operational runbook items for rehearsal days
- Announce planned rehearsal windows and exact commit hashes on your team channels and follow Kaspa core announcements; rehearsals mirror the covpp-reset1 → TN12 restart → merge → rehearsal flow described by core developers [2][1].
- Run a short “canary” after node upgrade: single validator/full-node upgrade, submit a known-good Silverscript covenant and a ZK verification tx, confirm expected sigop usage and success, then continue to staggered rollout.
- If you operate indexers or relayers, prepare a fast rollback plan for DB schema or index changes: rehearsals and TN12 restarts are the right time to validate migration scripts against the clean testnet image [1][7].
Communication & post-rehearsal validation
Track and publish artefacts from rehearsals: verifier logs, sigop histograms, witness-store metrics, and the exact test vectors used with timestamps and TN12 block heights. Coordinate with Kaspa build/dev channels for final activation timing and to reconcile any behavior differences observed versus KIP specs [6][1].
Final notes
This checklist is narrowly focused on CI, rehearsals and ZK/verifier benchmarking steps driven by recent developer signals: the covpp-reset1 rehearsal path, the merged KIP‑16 reference precompiles, and the partitioned sequencing design work for KIP‑21. Follow the linked primary sources for authoritative specs, and treat rehearsal builds on TN12 as the canonical way to validate end-to-end behaviour ahead of the June activation window [1][3][4][5][6].
Need a condensed machine-readable checklist (YAML/JSON) for your CI job or a short CI snippet to pin covpp-reset1? Reply and we’ll generate one tied to the exact commits referenced in rehearsals.
References
- 1.[1] Kaspa.org — Toccata Hard Fork (Covenants++): https://kaspa.org/toccata-hard-fork-kaspa-covenants/ (Apr 14, 2026)
- 2.[2] Michael Sutton — Kaspa Covenants++ ‘Toccata’ Hard‑Fork Outlook (Medium): https://medium.com/@michaelsuttonil/kaspa-covenants-toccata-hard-fork-outlook-a4d81a40900c (Apr 3, 2026)
- 3.[3] GitHub kaspanet/rusty-kaspa PR #775 — KIP‑16 / Zero‑Knowledge Proof Verification Opcodes (merged Feb 5, 2026): https://github.com/kaspanet/rusty-kaspa/pull/775
- 4.[4] GitHub kaspanet/kips PR #36 — KIP‑21: Partitioned sequencing commitment (Feb–Mar 2026): https://github.com/kaspanet/kips/pull/36
- 5.[5] GitHub kaspanet/silverscript (README, experimental/TN12 status): https://github.com/kaspanet/silverscript
- 6.[6] Kaspa build/dev pages & KIPs index (build guidance and canonical KIP files): https://kaspa.org/build and https://github.com/kaspanet/kips
- 7.[7] research.kas.pa — Subnets sequencing commitments (background referenced in KIP‑21): https://research.kas.pa/t/subnets-sequencing-commitments/274