mirror of
https://github.com/luxfi/api.git
synced 2026-09-24 00:24:53 +00:00
Two-tier consensus v1.36 splits finality into Nova (local, reorgable accept tip) and Quasar (⅔-by-stake EXPORT-final). A VM's `finalized`/`safe` tags and its cross-chain (warp) export gate must resolve to the Quasar height. But the C-Chain EVM runs as a SEPARATE rpcchainvm plugin process, and nothing carried the export height across the ZAP boundary — so the whole export tier was dormant in the real deploy (finalized/safe stuck at genesis). Wire additions (OPTIONAL, capability-gated — generic VMs are unaffected): - MsgSetQuasarFinalized (60) / MsgQuasarHeight (61): the two export RPCs. Kept < 0x40 so the response/error flags OR in cleanly, grouped after Warp (50-59). - InitializeResponse.Capabilities (uint64) + CapQuasarExport bit: the plugin advertises the export capability in the handshake so the node wires the observer only for an export-capable VM. Appended to the struct codec (all four encode/decode sites go through the struct methods, so it stays consistent). - SetQuasarFinalizedRequest / QuasarHeightResponse message structs. Co-authored-by: Hanzo Dev <[email protected]>