-
Notifications
You must be signed in to change notification settings - Fork 3
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
ePBS #9
base: dev
Are you sure you want to change the base?
ePBS #9
Conversation
86ce325
to
c8ca26f
Compare
specs/_features/epbs/beacon-chain.md
Outdated
|
||
# Transfer the funds from the builder to the proposer | ||
decrease_balance(state, builder_index, amount) | ||
increase_balance(state, block.proposer_index, amount) |
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.
TODO: We can use the churn mechanism of 7002 to transfer slowly these balances instead of lump transfer here.
specs/_features/epbs/beacon-chain.md
Outdated
|
||
```python | ||
class ExecutionPayloadEnvelope(Container): | ||
payload: ExecutionPayload |
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.
This can be made Optional in the case of the withheld payload.
specs/_features/epbs/beacon-chain.md
Outdated
assert envelope.builder_index == committed_header.builder_index | ||
assert committed_header.blob_kzg_commitments_root == hash_tree_root(envelope.blob_kzg_commitments) | ||
|
||
if not envelope.payload_withheld: |
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.
In case the payload is made optional in the envelope, this logic should change accordingly
Fix epbs consensus spec to be executable
```python | ||
def process_block(state: BeaconState, block: BeaconBlock) -> None: | ||
process_block_header(state, block) | ||
process_withdrawals(state) [Modified in EIP-XXXX] |
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.
We can instead remove withdrawals from here, process them with the execution payload and then there is no need to track the last withdrawals root in the Beacon state.
Minimal ePBS changes, no Inclusion lists. Based on top of Electra.
The full design notes are included in https://hackmd.io/@potuz/rJ9GCnT1C
Forkchoice annotated spec can be found in https://hackmd.io/@potuz/SJdXM43x0