Skip to content

Latest commit

 

History

History
95 lines (75 loc) · 4.75 KB

File metadata and controls

95 lines (75 loc) · 4.75 KB

v9.26.4 pruning — testnet26 test results 🍃

— DigiSwarm, DGB AI dev team · live testnet26, 2026-07-02

We ran the v9.26.4 pruned build against live testnet26, where DigiDollar is already ACTIVE (since block 600). That's the important part: testnet is the only live network where a pruned node does real DigiDollar validation against real on-chain positions and the real oracle roster — basically a dress rehearsal for post-activation mainnet.

Setup: two nodes from the same synced testnet26 data — one full (txindex, reference) and one pruned (prune=550, no txindex) — side by side on the live network.

What we confirmed

  1. It boots correctly. The pruned node auto-turned-off txindex and the stats index, and logged retaining all blocks at/above height 600 (the DigiDollar activation floor). DigiDollar shows ACTIVE. Advertises as a limited (pruned) peer, as expected.

  2. Pruned = full, to the penny. Live side-by-side, the pruned node's DigiDollar stats matched the full node exactly: $4,720.77 DD supply, 18 active positions, 6.63M DGB collateral, 335% health, oracle available — identical block hashes at the same tip, both validating new blocks as they arrived. The pruned node computes this from a live UTXO scan (no index), and it lands on the same numbers.

  3. Restart is safe. Stopped/restarted the pruned node — the startup data-availability guard passed and the DigiDollar numbers came back identical. No drift.

  4. Reindex works. Ran -reindex on the pruned node; it rebuilt and came back to the exact same DigiDollar state.

  5. Damaged data fails safe. Truncated a block file — the node refused to start and told us to -reindex; running -reindex fully recovered it to identical state. It never ran on bad data.

  6. Rescan works. Loaded our DigiSwarm oracle wallet ($1.00 DD, 6 positions, 1.58M testnet DGB) and rescanned — DD balance preserved.

  7. A pruned node runs the real oracle. Imported the actual DigiSwarm slot-15 testnet key on the pruned node — its pubkey matches the live testnet26 roster — and startoracle reported it running. A pruned node can operate a production oracle (it only needs a wallet key + live prices + P2P, never old blocks or the txindex).

One honest caveat about testnet

testnet26's entire chain is tiny (~24 MB, a single block file), so it is below the 550 MiB minimum prune size — meaning no blocks actually get deleted there. So testnet proves the functional side (a pruned node validates / mints / redeems DigiDollar correctly and stays in lockstep with full nodes), while the disk-saving side was proven on mainnet separately: 38 GB → 0.21 GB, with the node refusing to delete any DigiDollar-era block even when explicitly asked (see V9.26.4_MAINNET_VALIDATION.md).

Every scenario we ran (all passed)

# Test Result
1 Boots pruned: txindex/stats-index off, prune lock @600, DD active
2 Full-vs-pruned DigiDollar stats parity (live) ✅ identical
3 Normal restart: guard passes, no drift
4 -reindex: rebuild, parity restored
5 Damaged block file: refuses to start, -reindex recovers ✅ fail-safe
6 Rescan preserves DD balance
7 Runs the real DigiSwarm slot-15 oracle ✅ running

Nothing is left on the testnet list. The only behavior testnet can't show is physical block deletion (its chain is a single ~24 MB file, under the 550 MiB prune floor) — and that is proven separately on mainnet: 38 GB → 0.21 GB, with the node refusing to delete any DigiDollar-era block even when explicitly asked (V9.26.4_MAINNET_VALIDATION.md). Our automated regtest suite adds 15 more pruning scenarios (reindex recovery, fail-closed-on-damaged-data, offline miner reorg, oracle-on-pruned, etc.).

Re-validated on the final tagged build

After the ship audit added a consensus fix (redeem collateral classification is now gated on the activation floor so pruned and full nodes agree on every redeem), we re-ran the battery on the tagged v9.26.4 binary. The pruned node reindexed — re-validating its entire redeem history under the new rule — and matched the full node exactly (supply $4,935.77, 19 positions) with zero consensus rejects. The fix is a no-op on real data; parity is intact. Mainnet was re-proven too: fresh 42 GB copy pruned to 0.21 GB, lock held at the activation floor.

Bottom line

A pruned v9.26.4 node on the live, DigiDollar-active testnet validates identically to a full node (to the penny), survives restarts and reindex, refuses to run on damaged data and recovers cleanly, serves wallets with real DigiDollar, and runs the real DigiSwarm oracle. Ready for pools.