Files
consensus/engine
zeekayandHanzo Dev ce53bfcdd2 chain: prefer the block we already hold over re-verifying it
A node whose finality has fallen behind its own applied head is served nothing but
blocks it already has. Re-verifying one asks the VM to insert an old canonical
block a second time, which it correctly refuses — "side chain insertion is not
supported" — so every entry in the response failed verification and the walk that
would have advanced finality was never reached.

That refusal is not a bad block. It is our own history coming back to us, and the
block was verified when we first accepted it. Take the copy the VM holds.

Measured on lux-testnet luxd-4: applied head 30622, finality 23934, and every
served entry between those two rejected on re-verification.

Finality is unchanged: the block is still only tracked, and only a verified quorum
cert through HandleIncomingCert can finalize it. Negative control executed —
restoring the unconditional Verify fails TestHeldBlockIsNotReVerified.

Co-authored-by: Hanzo Dev <[email protected]>
2026-08-14 07:27:34 -07:00
..
2025-12-19 08:49:11 -08:00