feat: Add ParseGenesis as initialization hook#149
feat: Add ParseGenesis as initialization hook#149michaelkaplan13 wants to merge 2 commits intomainfrom
ParseGenesis as initialization hook#149Conversation
|
What kind of changes does the hook make after JSON decoding? It feels a bit weird that the genesis bytes don't include sufficient information to be unmarshalled via the standard means. EDIT: sorry, I missed that you'd linked to the implementation. libevm extras support JSON round-tripping so why aren't they just encoded into the genesis bytes? |
The honest answer is because I wasn't aware/didn't think of that. 🙂 Would this work for supporting chains though? As far as I understand, the Avalanche upgrade activation times are not encoded into the C-Chain or EVM L1 genesis blocks, and instead provided from the AvalancheGo node level configuration through the |
That was my understanding too. So |
|
Converted to draft for now until we get to align on the right approach |
Adds a
ParseGenesishook to allow for custom genesis initialization defined by the consumer.This allows the consumer to initialize EVM upgrade activation times, as discussed in this comment. I was able to confirm on the AvalancheGo side that providing a
corethcompatibleParseGenesisimplementation results in newer transaction types being support upon initialization of the SAE VM.