# Release: Zakura 1.5.0

Announcement for Zakura 1.5.0, released 2026-09-24.

Zakura 1.5.0 reduces block commit latency, keeps mining templates
available when the chain tip moves, waits until near-tip sync before
activating the Mainnet mempool, and upgrades the transport used by the
experimental P2Pv2 stack, which is not the default networking stack.
Users should update. Miners particularly benefit from the
latency and template changes. Nodes still running 1.4.0 halt at the
start of October.

## Lower block commit latency

Retained non-finalized headers are checked in memory instead of read
from disk one at a time. Blocks without transparent prevout spends skip
an unused UTXO snapshot. Transparent spends use borrowed UTXO indexes
instead of cloning the complete set. Header transitions, checkpoint
finalization, and sync header processing on an unchanged chain also do
less work. The two `unspent_utxo_snapshot` duration metrics are removed.
This continues the block propagation work of
[1.4.0](https://zakura.com/announcements/zakura-1-4-0/#faster-block-propagation).

## Steadier mining templates

`getblocktemplate` rebuilds templates whose parent changed during
construction, including new blocks, equal-height reorganizations, and
concurrent callers selecting a new tip. Fallback recovery also rebuilds
superseded templates. Template assembly avoids an extra shielded
coinbase proof; proof construction runs away from RPC workers under a
shared concurrency limit. Empty templates with precomputed coinbases
bypass the proof queue, and idle internal mining solvers wake when new
work arrives.

## Mempool and P2Pv2

On Mainnet, the mempool activates only when sync throughput appears
near-tip and a local-clock estimate puts the node within 100 blocks of
the network tip. It deactivates and notifies subscribers if that estimate
exceeds the 1,000-block rollback window. Peers are penalized for failed
transaction verification only when the node is near the tip and verified
at the current tip height; branch-ID and lock-time mismatches never
penalize peers. Test networks bypass the clock estimate.

The experimental P2Pv2 stack uses Iroh 1.1 and noq 1.2 through Zakura
compatibility crates. Native peers require protocol 2; mixed old and new
dual-stack peers can still use legacy TCP. Occupied configured UDP ports
fail startup, endpoints bind only the configured address family, and
automatic router port mapping is disabled. The new opt-in
`network.zakura.nat_traversal` permits candidate address exchange and
UDP probes, without relays or external discovery. Block sync, checkpoint
sync, peer serving, and fork retention received reliability fixes.

## Other changes

ZEC-valued RPC responses no longer sometimes fail with a precision
parsing error. Fork recovery accepts replacement blocks without using
size estimates from another branch. Custom-network calculations and
configuration validation improve. Network-policy changes trigger an
audit, warning, and stored digest update. Trusted secondary nodes now
track the primary's block receipt order, preparing for first-received
mining.

[Zakura Common 2.0.0](https://github.com/zakura-core/common) replaces
three upstream protocol, address, and transparent dependencies with
Zakura forks and improves Ironwood prover speed and Sapling verification
time. There is no combined changelog for the common workspace; each
crate keeps its own changelog in the
[v2.0.0 crates tree](https://github.com/zakura-core/common/tree/v2.0.0/crates).

Mainnet `zakurad` nodes running 1.5.0 halt at height 3,528,681
(estimated 2026-10-25); warnings begin three days earlier. Version 1.4.0
nodes halt at height 3,504,731 (estimated 2026-10-03). Update with the
[signed release binaries](https://github.com/zakura-core/zakura/releases/tag/v1.5.0)
or the `zakura` crate 1.5.0. Installation and verification instructions
are on the [download page](https://zakura.com/download/).

---

Canonical HTML version: https://zakura.com/announcements/zakura-1-5-0/
