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

chore: flatten eip-7685 requests into a single opaque list #1383

Merged
merged 3 commits into from
Oct 18, 2024

Conversation

onbjerg
Copy link
Member

@onbjerg onbjerg commented Sep 26, 2024

Motivation

The three different request fields have been replaced by a single field.

Requests over engine API will now be in an opaquely encoded format as defined by EIP-7685, and they will be in a single list.

See ethereum/execution-apis#591

Solution

Requests are now a list of opaque Bytes. Additionally, the changes to the engine API also removes the need for ExecutionPayloadV4, so I've removed that (and all variants of it).

PR Checklist

  • Added Tests
  • Added Documentation
  • Breaking changes

@onbjerg onbjerg force-pushed the onbjerg/engine-api-flatten-requests branch from 882bb2f to 60acd18 Compare September 26, 2024 13:16
@onbjerg onbjerg added the enhancement New feature or request label Sep 26, 2024
@onbjerg
Copy link
Member Author

onbjerg commented Sep 26, 2024

After some thinking we likely do not gain much by retaining the type here instead of using blobs, since validation is mostly a CL responsibility now, and system contracts adhering to EIP-7685 return the requests pre-serialized. For user-facing RPC it will matter more, but at that point in time it's ok to pay for the ser/de cost, while we'd likely want to avoid it during execution.

Restructuring the PR.

@onbjerg onbjerg force-pushed the onbjerg/engine-api-flatten-requests branch 3 times, most recently from e877abf to c9fcae4 Compare October 17, 2024 23:46
@onbjerg onbjerg changed the base branch from onbjerg/flat-requests to main October 17, 2024 23:47
@onbjerg onbjerg force-pushed the onbjerg/engine-api-flatten-requests branch 4 times, most recently from c5911ff to fd12107 Compare October 18, 2024 00:15
@onbjerg onbjerg marked this pull request as ready for review October 18, 2024 00:20
@onbjerg onbjerg force-pushed the onbjerg/engine-api-flatten-requests branch 2 times, most recently from c093f3a to e2e6581 Compare October 18, 2024 00:21
@onbjerg onbjerg changed the title chore: flatten eip-7685 requests into a single list chore: flatten eip-7685 requests into a single opaque list Oct 18, 2024
@onbjerg
Copy link
Member Author

onbjerg commented Oct 18, 2024

Looks like I need to update ExecutionPayloadBodyV2 as well?

@onbjerg onbjerg marked this pull request as draft October 18, 2024 04:24
@onbjerg onbjerg force-pushed the onbjerg/engine-api-flatten-requests branch from e2e6581 to 9e2510f Compare October 18, 2024 04:35
@onbjerg onbjerg force-pushed the onbjerg/engine-api-flatten-requests branch from 9e2510f to 16a7f33 Compare October 18, 2024 05:06
Copy link
Member

@mattsse mattsse left a comment

Choose a reason for hiding this comment

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

lgtm

@mattsse
Copy link
Member

mattsse commented Oct 18, 2024

Looks like I need to update ExecutionPayloadBodyV2 as well?

why?

@yash-atreya yash-atreya marked this pull request as ready for review October 18, 2024 09:58
@mattsse mattsse merged commit 5703219 into main Oct 18, 2024
26 checks passed
@mattsse mattsse deleted the onbjerg/engine-api-flatten-requests branch October 18, 2024 13:38
github-merge-queue bot pushed a commit to alloy-rs/op-alloy that referenced this pull request Oct 18, 2024
## Motivation

There is no longer a V4 execution payload in Pectra, so it does not make
sense that there would be one for Optimism. The v4 payload envelope
still exists, but it now wraps a v3 payload.

See also alloy-rs/alloy#1383

Based on #175

## Solution

Remove the V4 payload.

## PR Checklist

- [ ] Added Tests
- [ ] Added Documentation
- [ ] Breaking changes

---------

Co-authored-by: Yash Atreya <[email protected]>
refcell pushed a commit to alloy-rs/op-alloy that referenced this pull request Oct 22, 2024
## Motivation

There is no longer a V4 execution payload in Pectra, so it does not make
sense that there would be one for Optimism. The v4 payload envelope
still exists, but it now wraps a v3 payload.

See also alloy-rs/alloy#1383

Based on #175

## Solution

Remove the V4 payload.

## PR Checklist

- [ ] Added Tests
- [ ] Added Documentation
- [ ] Breaking changes

---------

Co-authored-by: Yash Atreya <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants