Try   HackMD

Continuing with ephemery integration

Goal

I am continuing my work on the client-side integrations for the ephemeral testnet and validating EIP-6916.

Target 1: Ephemery integration into client [geth] - prepare geth fork with ephemery changes for feedback from geth team

Target 2: Lodestar maintenance for ephemery network

Stretch 1: Ephemery validator running on raspberry pi

Status

The current status of native ephemery integrations, taking into account work from across the ephemery team, is shown in table 1 below.

Table 1
Screenshot 2023-11-15 at 12.39.08

Grant period

Scope 13 May to [13 August]

  • Geth

    • update github issue / create issue for ephemery - check
    • draft PR to add the ephemery network natively (using a flag)
    • note: geth team may also want to have native ephemery reset before PR is merged. In this case, maintain my fork as ephemery-geth
  • Lodestar review

    • define maintenance tasks
    • update Lodestar open issues as required
    • action the maintenance tasks identified above
  • In parallel, make any useful documentation updates and add my observations on ephemery specs

  • General updates: ephemery team is preparing ephemery hadfork for a longer reset period, adding validators, bootnodes and starting the network from Dencun genesis (now it activates at epoch 5). So the genesis configs need to be updated and verified

Possible challenges

  • Personal limitations / commitments due to pregnancy (due date 24 Aug)

Collaborators

Mario Havel, pk910, other collaborators in matrix chat

Resources

Previous ephemery dev notes
EIP
go tour
pk910's old geth fork

In my geth fork I've added a new property Ephemerality to the genesis config.
This works, but they've decided to not touch the genesis config structure anymore.
Instead, the property should be moved into the ChainConfig struct, which is just a member of the genesis config.
So, it should be trivial to move the property there, but there are some auto generated files, which need to be regenerated

Dev

Week 13 May dev notes - geth config
Week 17 June dev notes - geth alloc data
Week 15 July dev notes - validate against holesky network commits

Outputs

ephemery-geth fork
ephemery-geth draft PR (closed by geth team)
Alignment with ephemery team; onboard EPF5 fellows
WIP Holly's validator

Outcome and next steps

❗Updated: Draft PR was closed by geth team, before being finalised / before review was requested. Next steps / approach to be agreed with ephemery team. In any case, we will continute to maintain our geth fork.

Geth team feedback:

"We have discussed this PR within the team. We do not want to be responsible for maintaining an up-to-date definition of the Ephemery network and its genesis parameters (premine, etc.). Since the network is meant to be reset, and genesis configurations are provided by the project at https://github.com/ephemery-testnet/ephemery-genesis, the genesis block doesn't have to be generated by geth."