-
Notifications
You must be signed in to change notification settings - Fork 21.1k
Add initial FOCIL implementation #30914
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
base: master
Are you sure you want to change the base?
Conversation
33efbee
to
78f8ad9
Compare
9f5db6f
to
bbdaa45
Compare
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.
Pointing out Engine API has incorrect type for inclusion list. Current implementation expects base64 strings whereas the convention and the specs demand hex strings.
I suggest either define inclusion list type and its marshal type in beacon/engine/types.go
and let gencodec
handles the conversion similar to how ExecutableData
is handled. Or manually marshal/unmarshal like how convertRequests
handles incoming executionRequests
in NewPayloadV4
I've addressed comments. Thank you very much for spotting out the issue and suggesting solutions! @ensi321 |
eb46040
to
d5c724b
Compare
9e1f361
to
29b805d
Compare
At the call with Geth team, there was feedback that I haven't given much thought about where is the best location from the Geth codebase perspective, but from the spec perspective, the IL constraints should be checked after executing all transactions and before processing withdrawal requests. This is to prevent such situations that some withdrawal address become availble to cover some IL transaction that they couldn't. That missing IL transaction can reorg the block, which it shouldn't. In current implementation, it would be between L106-L107 of As this would change the core part of Geth, I would wait until I can get more feedback from the Geth team before proceeding. |
0f57323
to
7d8f1b0
Compare
This PR has been updated to validate inclusion list inside |
… on eip7805 fork
…clusion list constraints
This PR now has been updated to reflect the latest execution apis spec as of 2025-08-15. A Kurtosis config can access to the docker image via |
This PR implements initial FOCIL specifications. For more information, please refer to EIP-7805 and this PR.