Skip to content

Conversation

@arnetheduck
Copy link
Member

  • create testnet/test genesis starting from phase0 and upgrade to the correct fork, like the spec suggests
  • reduce mem usage and number of copies while upgrading
  • add gloas to ncli_testnet generator
  • speed up mock deposit processing by skipping bls ops for most state creations and caching them for the others (attestation pool tests go from minutes to seconds)
  • consolidate the various ways to create deposits and states in the test suite to a single flow
  • make sure deposit creation uses the correct fork version in tests

* create testnet/test genesis starting from phase0 and upgrade to the
correct fork, like the spec suggests
* reduce mem usage and number of copies while upgrading
* add gloas to `ncli_testnet` generator
* speed up mock deposit processing by skipping bls ops for most state
creations and caching them for the others (attestation pool tests go
from minutes to seconds)
* consolidate the various ways to create deposits and states in the test
suite to a single flow
* make sure deposit creation uses the correct fork version in tests
@github-actions
Copy link

github-actions bot commented Nov 5, 2025

Unit Test Results

       12 files  ±0    2 424 suites  ±0   46m 8s ⏱️ - 17m 8s
12 630 tests ±0  12 065 ✔️ ±0  565 💤 ±0  0 ±0 
63 536 runs  ±0  62 808 ✔️ ±0  728 💤 ±0  0 ±0 

Results for commit 761ed5c. ± Comparison against base commit d1e888d.

♻️ This comment has been updated with latest results.

Copy link
Contributor

@etan-status etan-status left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's something about current/next fork fields that's different when doing sequential upgrade instead of a usual genesis (where both fields are the same)

@arnetheduck
Copy link
Member Author

There's something about current/next fork fields that's different when doing sequential upgrade instead of a usual genesis (where both fields are the same)

hm, yeah, we had these checks that I don't know where they came from that the genesis fork has the same versions in current/prev version .. I think that's our own invention and not a spec requirement per se so it was removed in #7705 - hopefully I nabbed all of them..

@etan-status
Copy link
Contributor

Maybe an option to check genesis states from hoodi etc which started post phase0

@arnetheduck
Copy link
Member Author

https://github.com/eth-clients/hoodi/blob/main/parsed/parsedConsensusGenesis.json:

arnetheduck@praeceps:~/Downloads$ grep _version parsedConsensusGenesis.json 
    "previous_version": "0x40000910",
    "current_version": "0x50000910",


doAssert forkyState.data.validators.len > 0

# let outGenesisExt = splitFile(outGenesis).ext
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the commented-out code intentional?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, it's in the current code too.

@tersec tersec merged commit 95d25aa into unstable Nov 7, 2025
17 of 18 checks passed
@tersec tersec deleted the init-genesis-state branch November 7, 2025 04:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants