Skip to content

Release v0.6.8

Latest

Choose a tag to compare

@hoffmabc hoffmabc released this 28 Jul 21:30

Release v0.6.8
Arch Network v0.6.8 (2026-07-28)
Compare: v0.6.7...v0.6.8

Date range: 2026-07-14 → 2026-07-28

Stats: 170 files changed, 5796 insertions(+), 4014 deletions(-)

Top impact areas: roast (27), e2e-tests (26), validator (12), dkg (10), examples (9), network (6), transaction_pool (5), syscall-bench (5), structs (5), bootnode (5), resharing (4), docker (4), db_core (4), common (4), .github (4), state-machine (3), runtime (3), homebrew-formula (3), arch-cli (3), token-metadata (2)

Highlights

Core consensus and signature verification received significant hardening with FROST group signature enforcement in UTXO tapscript validation and improved DKG participant state handling. State transition invariants are now enforced at transition boundaries with a new invariant macro and assertion-enabled build profiles.

ROAST signing session identifiers were widened from usize/u16 to u64 end-to-end, improving scalability and determinism. The signer-selection shuffle now uses an injectable RNG for reproducible testing, and DKG status wire strings are now deterministic.

Security improvements include transcript account guard fixes restricting writes to whitelisted validators, binding token Anchor input signers to validated accounts, and restricting bootnode RPC to loopback only. Mainnet faucet has been disabled.

Testing infrastructure was upgraded with the adoption of cargo-nextest for CI workspace tests, splitting the testing_suite mega-test into individually reported e2e tests, and adding nightly coverage workflow with per-crate summary. All core protocol crates now use monotonic time via tokio::time::Instant.

Transaction pool performance was improved with BER size limits during proposal and new transaction latency metrics.

Added

  • New invariant macro and assertion-enabled build profiles for runtime validation
  • Nightly coverage workflow with per-crate summary reporting
  • cargo-nextest configuration and adoption for CI workspace testing
  • Transaction latency metrics for performance monitoring
  • Injectable RNG for ROAST signer-selection shuffle to enable deterministic testing
  • Loopback-only restriction for bootnode RPC
  • Mainnet faucet disablement
  • Individual e2e test reporting (split from testing_suite mega-test)

Changed

  • Deprecated SessionResponse V1 dropped, protocol versions renumbered to V0
  • ROAST signing-session IDs widened from usize/u16 to u64 end-to-end
  • Core protocol crates now read monotonic time via tokio::time::Instant
  • DKG status wire strings made deterministic
  • Validator state-transition invariants enforced at transition boundary
  • Failed-transaction state changes now applied when replaying block execution reports
  • BER size limited during proposal
  • Removed pruning queue migration code
  • Removed obsolete code and build artifacts

Fixed

  • Transcript account guards fixed to restrict writes to whitelisted validators only
  • Token Anchor input signer now bound to the validated account
  • Failed-transaction state changes correctly applied during block execution report replay
  • RPC server shutdown now properly awaited in tests
  • DKG participant state handling hardened

Performance and Observability

  • Added transaction latency metrics for end-to-end visibility
  • BER size limiting during proposal improves memory efficiency
  • Gossip metrics enhanced in network layer
  • ROAST metrics improvements for coordinator and commitment pool
  • Transaction pool hybrid metrics expanded

RPC and API Changes

Breaking change: SessionResponse V1 removed, protocol versions renumbered to V0. Node operators must ensure all peers are running compatible protocol versions.

Breaking Changes

  • SessionResponse V1 removed, protocol versions renumbered to V0
  • FROST group signature enforcement in UTXO tapscript (affects transaction validation)
  • Bootnode RPC restricted to loopback only
  • Mainnet faucet disabled

Migration Guidance

Node operators should upgrade all nodes to v0.6.8 to maintain protocol compatibility following the SessionResponse V1 removal and protocol version renumbering. Bootnode operators must ensure RPC access is configured for loopback only; external RPC access will be rejected. Mainnet deployments should verify faucet is disabled. No configuration file changes required for standard deployments.

Documentation

  • Updated homebrew formula README and TAP README
  • Updated arch-cli installation script
  • Added validator state transition graph (assets/state_graph.svg)
  • CI script improvements for check-clippy and check-fmt
  • Coverage summary Python script added

Contributors (v0.6.7 → v0.6.8)

Amine ElQaraoui, Rahul Subramaniyam