mirror of
https://github.com/luxfi/genesis.git
synced 2026-10-30 16:25:45 +00:00
The shipped mainnet genesis was assembled from shards and matched the live network only at C-Chain block 0. Its X-Chain denomination was 6 where the live one is 9, its allocations were in 6-decimal units, its letter chains carried chainId fields and an F/M split the network never had, and its C-Chain rules differed (targetGas 500M against 60M, and a fee split the network never scheduled). Every blockchain ID differed, so a node started without --genesis-file founded C-Chain TZEa3jDM... beside the live 2Hx3UMuW.... Testnet shipped another network's stakers. A network with history cannot have its genesis changed. mainnet and testnet now ship genesis.json, the document in their luxd-genesis ConfigMap, and GetGenesis returns it byte for byte. Their shards are gone, allocations handed to them are refused, and the shard contract and 6-decimal units stay with devnet, localnet and new networks. GetCanonicalGenesisBytes, a second assembler nothing called, is gone. A test pins both documents' digests and staker sets. luxfi/node pins the C-Chain IDs its builder derives from them. Co-authored-by: Hanzo Dev <[email protected]>