Currently, we always have the highest configured milestone SpecConfig instance associated to each SpecVersion.
This PR makes sure that SpecConfig version correspond to the SpecVersion for a given milestone.
For example, for mainnet network, we have SpecConfigPhase0 is returned when we do spec.atSlot(0).getConfig() even when Electra is configured.
Similarly for all milestones.
Fixes a counterintuitive behaviour that we frequently forget, causing wasted time, and enables some advanced usage of the SpecConfig (like abstracting away config params that are updated from a milestone to the next, like max blobs)
Documentation
[ ] I thought about documentation and added the doc-change-required label to this PR if updates are required.
Changelog
[ ] I thought about adding a changelog entry, and added one if I deemed necessary.
Currently, we always have the highest configured milestone
SpecConfig
instance associated to eachSpecVersion
.This PR makes sure that
SpecConfig
version correspond to theSpecVersion
for a given milestone. For example, for mainnet network, we haveSpecConfigPhase0
is returned when we dospec.atSlot(0).getConfig()
even whenElectra
is configured. Similarly for all milestones.Fixes a counterintuitive behaviour that we frequently forget, causing wasted time, and enables some advanced usage of the SpecConfig (like abstracting away config params that are updated from a milestone to the next, like max blobs)
Documentation
doc-change-required
label to this PR if updates are required.Changelog