From 2daafd7579a40cd6444fb514f2b3ee57140d7861 Mon Sep 17 00:00:00 2001 From: Andrew Ashikhmin <34320705+yperbasis@users.noreply.github.com> Date: Tue, 1 Oct 2024 15:39:16 +0200 Subject: [PATCH 1/7] Add requests to execution Header & BlockBody (EIP-7685) (#218) (#235) --- execution/execution.proto | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/execution/execution.proto b/execution/execution.proto index 103c320..ae0fd6d 100644 --- a/execution/execution.proto +++ b/execution/execution.proto @@ -56,9 +56,10 @@ message Header { optional uint64 blob_gas_used = 19; // added in Dencun (EIP-4844) optional uint64 excess_blob_gas = 20; // added in Dencun (EIP-4844) optional types.H256 parent_beacon_block_root = 21; // added in Dencun (EIP-4788) + optional types.H256 requests_root = 22; // added in Pectra (EIP-7685) // AuRa - optional uint64 aura_step = 22; - optional bytes aura_seal = 23; + optional uint64 aura_step = 23; + optional bytes aura_seal = 24; } // Body is a block body for execution @@ -68,7 +69,8 @@ message BlockBody { // Raw transactions in byte format. repeated bytes transactions = 3; repeated Header uncles = 4; - repeated types.Withdrawal withdrawals = 5; + repeated types.Withdrawal withdrawals = 5; // added in Shapella (EIP-4895) + repeated bytes requests = 6; // added in Pectra (EIP-7685) } message Block { From 79913c8a4f833a1d3f7603ccb22311dc1a74eae6 Mon Sep 17 00:00:00 2001 From: Andrew Ashikhmin <34320705+yperbasis@users.noreply.github.com> Date: Tue, 1 Oct 2024 15:41:55 +0200 Subject: [PATCH 2/7] add deposits and withdrawals requests in execution payload (#219) (#236) * add deposits and withdrawals requests in execution payload * remove plural s Co-authored-by: sudeep --- types/types.proto | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/types/types.proto b/types/types.proto index 7a0c30d..873138b 100644 --- a/types/types.proto +++ b/types/types.proto @@ -77,6 +77,22 @@ message ExecutionPayload { repeated Withdrawal withdrawals = 16; optional uint64 blob_gas_used = 17; optional uint64 excess_blob_gas = 18; + repeated DepositRequest deposit_requests = 19; + repeated WithdrawalRequest withdrawal_requests = 20; +} + +message DepositRequest { + bytes pubkey = 1; + H256 withdrawal_credentials = 2; + uint64 amount = 3; + bytes signature = 4; + uint64 index = 5; +} + +message WithdrawalRequest { + H160 source_address = 1; + bytes validator_pubkey = 2; + uint64 amount = 3; } message Withdrawal { From 75df2266424632587f3e54335ef18c52d103018a Mon Sep 17 00:00:00 2001 From: Andrew Ashikhmin <34320705+yperbasis@users.noreply.github.com> Date: Wed, 2 Oct 2024 22:50:50 +0200 Subject: [PATCH 3/7] Add consolidation req to types (#223) (#238) Co-authored-by: Somnath --- types/types.proto | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/types/types.proto b/types/types.proto index 873138b..b20441a 100644 --- a/types/types.proto +++ b/types/types.proto @@ -79,6 +79,7 @@ message ExecutionPayload { optional uint64 excess_blob_gas = 18; repeated DepositRequest deposit_requests = 19; repeated WithdrawalRequest withdrawal_requests = 20; + repeated ConsolidationRequest consolidation_requests = 21; } message DepositRequest { @@ -95,6 +96,12 @@ message WithdrawalRequest { uint64 amount = 3; } +message ConsolidationRequest { + H160 source_address = 1; + bytes source_pubkey = 2; + bytes target_pubkey = 3; +} + message Withdrawal { uint64 index = 1; uint64 validator_index = 2; From 4e9be51e57e796cd902063cdf23716fecebf9c01 Mon Sep 17 00:00:00 2001 From: Andrew Ashikhmin <34320705+yperbasis@users.noreply.github.com> Date: Thu, 24 Oct 2024 13:54:50 +0200 Subject: [PATCH 4/7] Change Withdrawal req (#234) (#241) Co-authored-by: Somnath --- types/types.proto | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/types/types.proto b/types/types.proto index b20441a..1c55c43 100644 --- a/types/types.proto +++ b/types/types.proto @@ -91,9 +91,7 @@ message DepositRequest { } message WithdrawalRequest { - H160 source_address = 1; - bytes validator_pubkey = 2; - uint64 amount = 3; + bytes request_data = 1; } message ConsolidationRequest { From 582714adcf8a0f44643608af1aac5ecf02e8cf5c Mon Sep 17 00:00:00 2001 From: Andrew Ashikhmin <34320705+yperbasis@users.noreply.github.com> Date: Thu, 24 Oct 2024 14:10:18 +0200 Subject: [PATCH 5/7] Flatten 7251 req (#237) (#242) Co-authored-by: Somnath --- types/types.proto | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/types/types.proto b/types/types.proto index 1c55c43..3c4c3cf 100644 --- a/types/types.proto +++ b/types/types.proto @@ -95,9 +95,7 @@ message WithdrawalRequest { } message ConsolidationRequest { - H160 source_address = 1; - bytes source_pubkey = 2; - bytes target_pubkey = 3; + bytes request_data = 1; } message Withdrawal { From 46d0f9679d5f2481bce742ca9d8b5ccc038ecc8a Mon Sep 17 00:00:00 2001 From: Somnath Banerjee Date: Fri, 18 Oct 2024 16:57:32 +0400 Subject: [PATCH 6/7] Rename requests_root to requests_hash --- execution/execution.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/execution/execution.proto b/execution/execution.proto index ae0fd6d..d294451 100644 --- a/execution/execution.proto +++ b/execution/execution.proto @@ -56,7 +56,7 @@ message Header { optional uint64 blob_gas_used = 19; // added in Dencun (EIP-4844) optional uint64 excess_blob_gas = 20; // added in Dencun (EIP-4844) optional types.H256 parent_beacon_block_root = 21; // added in Dencun (EIP-4788) - optional types.H256 requests_root = 22; // added in Pectra (EIP-7685) + optional types.H256 requests_hash = 22; // added in Pectra (EIP-7685) // AuRa optional uint64 aura_step = 23; optional bytes aura_seal = 24; From 024ffe1cabff0f290289fbded390778822a73e45 Mon Sep 17 00:00:00 2001 From: Andrew Ashikhmin <34320705+yperbasis@users.noreply.github.com> Date: Thu, 24 Oct 2024 18:12:00 +0200 Subject: [PATCH 7/7] Som/pectra4 engine api (#239) (#244) * Flatten 7251 req * Replace requests with generic requests * fix type * change byte to uint8 * Simplify requests bundle * Rename requests_hash and remove reqs from body Co-authored-by: Somnath --- execution/execution.proto | 2 +- types/types.proto | 23 ++++------------------- 2 files changed, 5 insertions(+), 20 deletions(-) diff --git a/execution/execution.proto b/execution/execution.proto index d294451..397fe1d 100644 --- a/execution/execution.proto +++ b/execution/execution.proto @@ -70,7 +70,6 @@ message BlockBody { repeated bytes transactions = 3; repeated Header uncles = 4; repeated types.Withdrawal withdrawals = 5; // added in Shapella (EIP-4895) - repeated bytes requests = 6; // added in Pectra (EIP-7685) } message Block { @@ -143,6 +142,7 @@ message AssembledBlockData { types.ExecutionPayload execution_payload = 1; types.H256 block_value = 2; types.BlobsBundleV1 blobs_bundle = 3; + types.RequestsBundle requests = 4; } message GetAssembledBlockResponse { diff --git a/types/types.proto b/types/types.proto index 3c4c3cf..1bf410e 100644 --- a/types/types.proto +++ b/types/types.proto @@ -77,25 +77,6 @@ message ExecutionPayload { repeated Withdrawal withdrawals = 16; optional uint64 blob_gas_used = 17; optional uint64 excess_blob_gas = 18; - repeated DepositRequest deposit_requests = 19; - repeated WithdrawalRequest withdrawal_requests = 20; - repeated ConsolidationRequest consolidation_requests = 21; -} - -message DepositRequest { - bytes pubkey = 1; - H256 withdrawal_credentials = 2; - uint64 amount = 3; - bytes signature = 4; - uint64 index = 5; -} - -message WithdrawalRequest { - bytes request_data = 1; -} - -message ConsolidationRequest { - bytes request_data = 1; } message Withdrawal { @@ -113,6 +94,10 @@ message BlobsBundleV1 { repeated bytes proofs = 3; } +message RequestsBundle { + repeated bytes requests = 1; +} + // End of Engine API types // ------------------------------------------------------------------------