⚠️ Do not upgrade your mainnet or testnet node until you receive an official announcement.
Upgrades are communicated via official channels. See upgrade instructions for details.
⚠️ Mandatory upgrade for all mainnet nodes before 2026-09-02 14:30 UTC. This release sets the MONAD_TEN activation timestamp for mainnet. A node still on v0.16.0 or earlier after that instant will continue applying MONAD_NINE rules and diverge from the network.
v0.16.1
Tags or hashes:
monad-bft(consensus): tagv0.16.1(12b7017d6)monad(execution): tagv0.16.1(7279dfc7b)
Highlights
- MONAD_TEN activation on mainnet — MIP-8 (page-encoded storage) activates on mainnet at timestamp
1788359400(2026-09-02 14:30 UTC). Mainnet counterpart to the testnet activation shipped in v0.16.0. - Page-encoded timeline now required on mainnet — nodes must present either a page-encoded primary (Phase C) or an active secondary timeline (Phase A/B dual-db), or they will fail to start.
- Dual-db commit support in the ethblocks runloop, allowing nodes still in Phase A/B to commit to both timelines.
Notable consensus/protocol changes
- [Execution] Set MONAD_TEN activation timestamp for mainnet —
1788359400(2026-09-02 14:30 UTC). MONAD_NINE remains in effect for timestamps below that. Ref: monad (execution) PR #2489 - [Execution] Enforce page-encoded timeline assertion on mainnet — previously testnet-only. Nodes that have not completed Phase A (dual-db activation) will fail to start. Ref: monad (execution) PR #2489
Notable robustness changes
- [Consensus] monad-dataplane: fall back gracefully when io_uring buffer ring setup fails, instead of failing node startup. Ref: monad-bft PR #3201
- [Execution] Allow dual-db commit in
runloop_monad_ethblockswheresecondary_dbis optional, so Phase A/B nodes commit to both timelines. Ref: monad (execution) commitdf14e67bb
Notable internal changes
- [Execution] Consolidate dual-db mirroring behind
for_each_db, replacing duplicated commit paths inrunloop_monad. Ref: monad (execution) commitd836afc18 - [Consensus] Fix the buffer-ring fallback build — remove a stale
metricsargument that does not exist on this branch. Ref: monad-bft commit12b7017d6
Full Changelog: v0.16.0...v0.16.1