mirror of
https://github.com/luxfi/evm.git
synced 2026-09-24 00:27:44 +00:00
Round-2 follow-up to the luxfi/genesis upgrade.json reschedule fix (17 live-at-genesis precompiles pinned to blockTimestamp 0; warp two-step strict-PQ toggle moved after the zero-timestamp block; dead dexConfig 0x9010 dropped). - relaunch_safety_test.go (new): drives the node's REAL fork-application primitive extras.IsForkTransition (parent=nil reduces to fork <= genesisTime, exactly what GetActivatingPrecompileConfigs evaluates when a relaunched node builds its first rule set) against the embedded canonical fixtures. Asserts the invariant: every precompile that activates at/under the C-Chain genesis time (mainnet 1730446786 / testnet 1730517266) is in the live-at-block-0 set AND pinned to exactly 0; every other entry is strictly future; and all 17 live precompiles are present (no relaunch divergence). No entry sits in the (0, genesisTime] retroactive-reschedule window. - mainnet_upgrade_v46.json / testnet_upgrade_v47.json: regenerated byte-for-byte from the corrected canonical genesis configs (46 / 44 entries; the 25 timestamp diffs were the 1766708400 -> 0 normalization plus the warp reorder). - precompile_upgrade_rollout_test.go: WarpRequiresPrimaryNetworkSigners updated for the two-step toggle — warp is declared in the genesis chainConfig, and the schedule carries disable@strictPQ-1 then re-enable@strictPQ; the PQ signer-policy assertion targets the re-enable entry, and same-key strict-increase is enforced (mirrors verifyPrecompileUpgrades). - upgrade_unmarshal_test.go / testnet_upgrade_unmarshal_test.go: fixture doc comments rewritten to the live-at-0 / strict-PQ-toggle / BLS / Quasar-Edition tier layout; RegressionProof entry-count assertion 45 -> 46 to match the embedded fixture. Verified: go vet clean; CGO_ENABLED=0 go test ./params/extras/... ./params/extras_e2e_test/... — RelaunchSafe (mainnet+testnet), IsForwardCompatibleWithLiveActivations, WarpRequiresPrimaryNetworkSigners, PrecompileTimestampsAreMonotonic, RegressionProof all PASS.