mirror of
https://github.com/luxfi/consensus.git
synced 2026-09-24 00:26:58 +00:00
A fresh (unset) certified ledger — a process's in-memory finality before its first cert fold — now seeds by walking the tracked chain down from the VM's applied head (the recovery hint SyncState imports) instead of seeding at the cert's own height. A tracked run folds and executes every height from the applied head up; an unheld ancestry fails closed (a behind-node DEFER), so finality can never lead the VM by a gap the process cannot later close. The engine ensures that hint is present before the first fold, closing the boot race where a cert arrives before SyncStateFromVM. Recovery is recorded for every folded height up front, before the accept loop, so a VM.Accept that stops the loop partway cannot leave the folded-but-unapplied heights unnameable. One fold body (foldPath) now serves both seed shapes. Co-authored-by: Hanzo Dev <[email protected]>