Skip to content

[Merged by Bors] - Kiln mev boost#3062

Closed
realbigsean wants to merge 73 commits intosigp:unstablefrom
realbigsean:kiln-mev-boost
Closed

[Merged by Bors] - Kiln mev boost#3062
realbigsean wants to merge 73 commits intosigp:unstablefrom
realbigsean:kiln-mev-boost

Conversation

@realbigsean
Copy link
Member

@realbigsean realbigsean commented Mar 8, 2022

Issue Addressed

MEV boost compatibility

Proposed Changes

See #2987

Additional Info

This is blocked on the stabilization of a couple specs, here and here.

Additional TODO's and outstanding questions

  • MEV boost JWT Auth
  • Will builder_proposeBlindedBlock return the revealed payload for the BN to propogate
  • Should we remove private-tx-proposals flag and communicate BN <> VC with blinded blocks by default once these endpoints enter the beacon-API's repo? This simplifies merge transition logic.

realbigsean and others added 30 commits December 17, 2021 10:33
- `PrivateBeaconBlock`
- `PrivateBeaconBlockBody`
- `SignedPrivateBeaconBlock`
- GET lighthouse/validator/blocks_private endpoint
This reverts commit 5982466.
…neric-transactions

� Conflicts:
�	Cargo.lock
�	consensus/state_processing/src/per_block_processing.rs
�	consensus/state_processing/src/per_block_processing/block_signature_verifier.rs
�	consensus/types/src/beacon_block.rs
�	consensus/types/src/beacon_block_body.rs
�	consensus/types/src/execution_payload.rs
�	testing/ef_tests/src/cases/operations.rs
@realbigsean
Copy link
Member Author

I made some more parts of the execution_layer crate public for use in the mock relay I'm working on here

@realbigsean realbigsean added ready-for-review The code is ready for review and removed work-in-progress PR is a work-in-progress labels Mar 29, 2022
Copy link
Member

@michaelsproul michaelsproul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm happy to merge this!

.message()
.body()
.sync_aggregate()
.unwrap()
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This unwrap isn't ideal, but I note that you've fixed it in #3134 and it isn't reachable from non-blinded block proposal routines, so I think we're good 👍

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Whoops, oversight on my part!

@michaelsproul
Copy link
Member

Merging this so PRs built on top can target unstable

bors r+

bors bot pushed a commit that referenced this pull request Mar 31, 2022
## Issue Addressed

MEV boost compatibility

## Proposed Changes

See #2987

## Additional Info

This is blocked on the stabilization of a couple specs, [here](ethereum/beacon-APIs#194) and [here](flashbots/mev-boost#20).

Additional TODO's and outstanding questions

- [ ] MEV boost JWT Auth
- [ ] Will `builder_proposeBlindedBlock` return the revealed payload for the BN to propogate
- [ ] Should we remove `private-tx-proposals` flag and communicate BN <> VC with blinded blocks by default once these endpoints enter the beacon-API's repo? This simplifies merge transition logic. 

Co-authored-by: realbigsean <[email protected]>
Co-authored-by: realbigsean <[email protected]>
@bors bors bot changed the title Kiln mev boost [Merged by Bors] - Kiln mev boost Mar 31, 2022
@bors bors bot closed this Mar 31, 2022
paulhauner pushed a commit to paulhauner/lighthouse that referenced this pull request Apr 4, 2022
## Issue Addressed

MEV boost compatibility

## Proposed Changes

See sigp#2987

## Additional Info

This is blocked on the stabilization of a couple specs, [here](ethereum/beacon-APIs#194) and [here](flashbots/mev-boost#20).

Additional TODO's and outstanding questions

- [ ] MEV boost JWT Auth
- [ ] Will `builder_proposeBlindedBlock` return the revealed payload for the BN to propogate
- [ ] Should we remove `private-tx-proposals` flag and communicate BN <> VC with blinded blocks by default once these endpoints enter the beacon-API's repo? This simplifies merge transition logic. 

Co-authored-by: realbigsean <[email protected]>
Co-authored-by: realbigsean <[email protected]>
paulhauner pushed a commit to paulhauner/lighthouse that referenced this pull request May 6, 2022
## Issue Addressed

MEV boost compatibility

## Proposed Changes

See sigp#2987

## Additional Info

This is blocked on the stabilization of a couple specs, [here](ethereum/beacon-APIs#194) and [here](flashbots/mev-boost#20).

Additional TODO's and outstanding questions

- [ ] MEV boost JWT Auth
- [ ] Will `builder_proposeBlindedBlock` return the revealed payload for the BN to propogate
- [ ] Should we remove `private-tx-proposals` flag and communicate BN <> VC with blinded blocks by default once these endpoints enter the beacon-API's repo? This simplifies merge transition logic. 

Co-authored-by: realbigsean <[email protected]>
Co-authored-by: realbigsean <[email protected]>
bors bot pushed a commit that referenced this pull request Jul 29, 2022
## Issue Addressed

#3091

Extends #3062, adding pre-bellatrix block support on blinded endpoints and allowing the normal proposal flow (local payload construction) on blinded endpoints. This resulted in better fallback logic because the VC will not have to switch endpoints on failure in the BN <> Builder API, the BN can just fallback immediately and without repeating block processing that it shouldn't need to. We can also keep VC fallback from the VC<>BN API's blinded endpoint to full endpoint.

## Proposed Changes

- Pre-bellatrix blocks on blinded endpoints
- Add a new `PayloadCache` to the execution layer
- Better fallback-from-builder logic

## Todos

- [x] Remove VC transition logic
- [x] Add logic to only enable builder flow after Merge transition finalization
- [x] Tests
- [x] Fix metrics
- [x] Rustdocs


Co-authored-by: Mac L <[email protected]>
Co-authored-by: realbigsean <[email protected]>
bors bot pushed a commit that referenced this pull request Jul 30, 2022
## Issue Addressed

#3091

Extends #3062, adding pre-bellatrix block support on blinded endpoints and allowing the normal proposal flow (local payload construction) on blinded endpoints. This resulted in better fallback logic because the VC will not have to switch endpoints on failure in the BN <> Builder API, the BN can just fallback immediately and without repeating block processing that it shouldn't need to. We can also keep VC fallback from the VC<>BN API's blinded endpoint to full endpoint.

## Proposed Changes

- Pre-bellatrix blocks on blinded endpoints
- Add a new `PayloadCache` to the execution layer
- Better fallback-from-builder logic

## Todos

- [x] Remove VC transition logic
- [x] Add logic to only enable builder flow after Merge transition finalization
- [x] Tests
- [x] Fix metrics
- [x] Rustdocs


Co-authored-by: Mac L <[email protected]>
Co-authored-by: realbigsean <[email protected]>
bors bot pushed a commit that referenced this pull request Jul 30, 2022
## Issue Addressed

#3091

Extends #3062, adding pre-bellatrix block support on blinded endpoints and allowing the normal proposal flow (local payload construction) on blinded endpoints. This resulted in better fallback logic because the VC will not have to switch endpoints on failure in the BN <> Builder API, the BN can just fallback immediately and without repeating block processing that it shouldn't need to. We can also keep VC fallback from the VC<>BN API's blinded endpoint to full endpoint.

## Proposed Changes

- Pre-bellatrix blocks on blinded endpoints
- Add a new `PayloadCache` to the execution layer
- Better fallback-from-builder logic

## Todos

- [x] Remove VC transition logic
- [x] Add logic to only enable builder flow after Merge transition finalization
- [x] Tests
- [x] Fix metrics
- [x] Rustdocs


Co-authored-by: Mac L <[email protected]>
Co-authored-by: realbigsean <[email protected]>
@realbigsean realbigsean deleted the kiln-mev-boost branch November 21, 2023 16:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bellatrix Required to support the Bellatrix Upgrade ready-for-review The code is ready for review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants