Skip to content

Commit 9707339

Browse files
fjlmkalinin
andauthored
engine: exclude empty requests in requests list (#599)
* engine: exclude empty requests in requests list This is to mirror a change in EIP-7685, where we exclude requests with empty request_data from the commitment. * engine: update text * Apply suggestions from code review --------- Co-authored-by: Mikhail Kalinin <[email protected]>
1 parent f9cdb15 commit 9707339

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/engine/prague.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ Method parameter list is extended with `executionRequests`.
3535
1. `executionPayload`: [`ExecutionPayloadV3`](./cancun.md#executionpayloadv3).
3636
2. `expectedBlobVersionedHashes`: `Array of DATA`, 32 Bytes - Array of expected blob versioned hashes to validate.
3737
3. `parentBeaconBlockRoot`: `DATA`, 32 Bytes - Root of the parent beacon block.
38-
4. `executionRequests`: `Array of DATA` - List of execution layer triggered requests. Each list element is the corresponding request type's `request_data` as defined by [EIP-7685](https://eips.ethereum.org/EIPS/eip-7685). Elements of the list **MUST** be ordered by `request_type` in ascending order.
38+
4. `executionRequests`: `Array of DATA` - List of execution layer triggered requests. Each list element is a `requests` byte array as defined by [EIP-7685](https://eips.ethereum.org/EIPS/eip-7685). The first byte of each element is the `request_type` and the remaining bytes are the `request_data`. Elements of the list **MUST** be ordered by `request_type` in ascending order. Elements with empty `request_data` **MUST** be excluded from the list.
3939

4040
#### Response
4141

@@ -79,7 +79,7 @@ This method follows the same specification as [`engine_getPayloadV3`](./cancun.m
7979

8080
1. Client software **MUST** return `-38005: Unsupported fork` error if the `timestamp` of the built payload does not fall within the time frame of the Prague fork.
8181

82-
2. The call **MUST** return `executionRequests` list representing execution layer triggered requests obtained from the `executionPayload` transaction execution. Each element of the list corresponds to the request type's `request_data` as defined by [EIP-7685](https://eips.ethereum.org/EIPS/eip-7685). Elements of the list **MUST** be ordered by `request_type` in ascending order.
82+
2. The call **MUST** return `executionRequests` list representing execution layer triggered requests. Each list element is a `requests` byte array as defined by [EIP-7685](https://eips.ethereum.org/EIPS/eip-7685). The first byte of each element is the `request_type` and the remaining bytes are the `request_data`. Elements of the list **MUST** be ordered by `request_type` in ascending order. Elements with empty `request_data` **MUST** be excluded from the list.
8383

8484
### Update the methods of previous forks
8585

0 commit comments

Comments
 (0)