Files
salvium-rs/test
Matt Hess c7643663af Add self-contained testnet with CARROT hard fork support
Build a fully functional in-memory blockchain for integration testing:
- TestnetNode: daemon RPC-compatible interface backed by in-memory chain
- TestnetMiner: block assembly with real RandomX PoW (difficulty 1)
- Miner TX construction ported from C++ construct_miner_tx()
- Testnet orchestrator with wallet creation, sync, and balance tracking

Fix CARROT output creation to match C++ reference implementation:
- Use keyed Blake2b with SpFixedTranscript format (was unkeyed)
- Use X25519 curve for ECDH and ephemeral pubkeys (was Ed25519)
- Use blinding factor k_a=1 for coinbase outputs (was hash-derived)
- Handle coinbase clear-text amounts and zeroCommit in scanner
- Add isCarrot flag to WalletOutput model and serialization

20 tests, 105 assertions covering legacy and CARROT coinbase outputs
across the hard fork boundary at testnet height 1100.
2026-01-30 20:28:43 +00:00
..
2026-01-14 23:59:27 +00:00
2026-01-14 23:59:27 +00:00
2026-01-14 23:59:27 +00:00
2026-01-14 23:59:27 +00:00
2026-01-14 23:59:27 +00:00