Repository navigation
feat: support Heze genesis states - #108
Conversation
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
109c6ae to
93257be
Compare
There was a problem hiding this comment.
This PR adds a Heze genesis builder that mirrors the Gloas builder but targets the consensus-specs v1.7.0-beta.4 containers (no eth1 data/deposits, InclusionListBits on the execution payload bid), registers it in ForkConfigs, adds the Heze preset entries to both bundled presets, and bumps go-eth2-client to the EIP-8015 branch commit plus matching dynamic-ssz/hashtree-bindings. I verified the builder's fields against the exact pinned go-eth2-client revision and the preset values against upstream v1.7.0-beta.4, and the dependency versions form a consistent set with no OSV advisories. I found no real problem in the change.
Reviewed 7 changed file(s) @ 93257beb — no blocking issues found.
"If everyone is responsible, no one is."
Co-Authored-By: Claude <noreply@anthropic.com>
Bumps eth-beacon-genesis from v0.0.7 to v0.0.8 (ethpandaops/eth-beacon-genesis#108), which adds Heze genesis state support on go-eth2-client 329cfee1, including the consensus-specs v1.7.0-beta.4 EIP-8015 containers without eth1 data and deposit fields, so networks with Heze at genesis get a correct beta.4 genesis state.
Allows starting a network with Heze active from genesis (
HEZE_FORK_EPOCH: 0), which previously fell back to a Gloas state that Heze clients cannot load. The Heze builder follows the Gloas one but builds the consensus-specs v1.7.0-beta.4 containers: no eth1 data or deposits (EIP-8015) and aninclusion_list_bitsbitvector on the execution payload bid (EIP-7805), with the Heze presets added and go-eth2-client bumped to ethpandaops/go-eth2-client#64 (pinned to the PR commit until it is released). Gloas genesis output is byte-identical before and after the bump, and a generated Heze genesis round-trips through go-eth2-client.🤖 Generated with Claude Code