Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Changes for Capella and EIP-4844 #392

Closed
metachris opened this issue Nov 4, 2022 · 5 comments
Closed

Changes for Capella and EIP-4844 #392

metachris opened this issue Nov 4, 2022 · 5 comments
Assignees
Labels
next up It's next up

Comments

@metachris
Copy link
Collaborator

metachris commented Nov 4, 2022

Capella and EIP-4844 will require changes to mev-boost, builder-specs, relay and builders.

  • Both introduce new fields to BeaconBlockBody, ExecutionPayload and ExecutionPayloadHeader: eip4844 / capella
  • This will break previous SSZ encoding/decoding (and strict JSON too), and needs a mev-boost update alongside EL+CL updates.
  • MEV-Boost will need to know about multiple container versions and handle the forks correctly

Changes needed

Capella

  • update types in mev-boost to know about both bellatrix and capella containers
  • on getPayload, mev-boost detects whether payload is Capella or Bellatrix format and handles it correctly

EIP-4844

  • changes TBD
  • "For the relayer side, there's more work, they probably want to verify blobs, the commitments, and the version hashes are valid. Those will be coming from the builders" (@terencechain)
@metachris
Copy link
Collaborator Author

Related effort - using types from Attestant to reduce maintenance overhead:

@metachris
Copy link
Collaborator Author

Capella

Notes

Payload changes

Container Change
ExecutionPayload new field: withdrawals: List[Withdrawal, MAX_WITHDRAWALS_PER_PAYLOAD] # [New in Capella]
ExecutionPayloadHeader new field: withdrawals_root: Root # [New in Capella]
BeaconBlockBody new field: bls_to_execution_changes: List[SignedBLSToExecutionChange, MAX_BLS_TO_EXECUTION_CHANGES] # [New in Capella]
SignedBLSToExecutionChange (new container)
BLSToExecutionChange (new container)
Withdrawal (new container)

@jimmygchen
Copy link

jimmygchen commented Nov 30, 2022

Hi @metachris
@0xGabi and I have started working on the builder spec changes for EIP-4844, will link the PR here we've pushed the changes!

I have created a PR on Beacon API updates which contains some types required for builder spec: ethereum/beacon-APIs#271

@jimmygchen
Copy link

We've created a draft PR on builder spec here here: ethereum/builder-specs#58

@metachris
Copy link
Collaborator Author

Closed in favor of #451

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
next up It's next up
Projects
None yet
Development

No branches or pull requests

6 participants