-
Notifications
You must be signed in to change notification settings - Fork 20.3k
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
core: deploy EIP-4788 contract in dev mode genesis #29655
Conversation
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
Note that with this PR parent beacon root will always be 0x00.000. But IMO it's still better than the undefined behavior of calling a contract that doesn't exist.
For a more meaningful result we should either allow users to set a custom root via API (similar to how we have to withdrawals), or actually produce some block in simulated beacon. I'm inclined to kick this can down the road :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Co-authored-by: Felix Lange <fjl@twurst.com>
Co-authored-by: Felix Lange <fjl@twurst.com>
Dev/Private chain setup now supports EIP-4788 at Genesis block.
Took
BeaconRootsCode
from here and then added toAlloc
.Result on console:
> eth.call({ from: eth.accounts[0], input: '0x5f6020818181720f3df6d732807ef1319fb7b8bb8522d0beac024282525afa1460275760205ff35b5f80fd' }) "0x0000000000000000000000000000000000000000000000000000000000000000"
Fixes #29539