Summary
Reliability release. The headline is the orphan/stale-block-rate fix (#34), now
validated by a ~6-day mainnet fleet soak: the orphan rate sits at the natural
tip-collision floor (< 0.6%) with every pathological counter at zero. Ships
alongside operational metrics, checksummed addresses, datum-carrying wallet
sends, per-genesis signature binding, and a persistent public testnet.
Mainnet consensus is byte-for-byte unchanged — no fork, no flag day. This is a
drop-in upgrade.
Changes
- Orphan/stale-rate fix (#34). Eight node-local accept/relay corrections.
The root cause was honest peers being disconnected and their blocks re-counted
as orphans (~13/day); that path is closed. Self-mined block accept latency
drops ~247× (5185 ms → 21 ms) by removing a redundant self-verify of a
just-mined block. No consensus surface touched. - Operational metrics (#41).
get_node_infoRPC surfaces accept/orphan,
reorg apply/undo, reorg error, rate-cap, and live-lock-canary counters, plus
tip, peers, and the genesis id.--versionand the RPC now share one
RELEASE_TAG. - Checksummed addresses (#38). bech32m (BIP-350) accepted everywhere a raw
64-hex address was — CLI, RPC, SSE — catching transposition typos the raw form
could not. Emission stays hex this release; acceptance propagates first. - Datum-carrying sends (#39).
wallet send --datum <hex>attaches a datum
to the recipient output, so quote-bound settlement works from the base CLI.
Decoded and bounded before any RPC. - Per-genesis signature domain (#33). Signatures bind the chain's genesis id,
so a transaction signed on one network cannot verify on another even with a
colliding deterministic coinbase. - Persistent public testnet (#42, #44). A real low-difficulty (2^252) PoW
testnet with a minted genesis, a min-difficulty floor, and startup genesis-PoW
enforcement. Symmetric two-fresh-seed bootstrap converges from genesis. - Dev/CI. Both feature lanes run in CI (#40); devnet uses a distinct genesis
(#31); the reorg-metrics test runs deterministically (#47).
Who benefits
- Miners and node operators — fewer orphaned blocks, faster self-mined
accept, and a metrics endpoint to watch a node without log-grepping. - Wallet and agent builders — typo-safe addresses and datum sends from the
base CLI.
Safety
Mainnet genesis id and consensus parameters are unchanged (verified by a
feature-independent invariant test). The testnet and devnet changes are
compile-gated out of a default build. No reorg-apply errors, rate-cap
disconnects, or live-lock triggers were observed across the full mainnet soak;
the fleet held a single tip throughout.
Upgrade
Drop-in. Stop the node, replace the binary, restart. No datadir migration and no
coordinated upgrade window — pre-1.13.0 and 1.13.0 nodes interoperate on mainnet.
Binaries
Prebuilt binaries are attached below. Build from source with
cargo build --release.