From 078bba2e3c33195d19c4a7c93b7769602748bcea Mon Sep 17 00:00:00 2001 From: Alex Stokes Date: Tue, 8 Nov 2022 11:44:41 -0700 Subject: [PATCH 1/3] clarify deprecation of `beacon_block` gossip topic in 4844 --- specs/eip4844/p2p-interface.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/specs/eip4844/p2p-interface.md b/specs/eip4844/p2p-interface.md index 03363e1b8..269caa8cc 100644 --- a/specs/eip4844/p2p-interface.md +++ b/specs/eip4844/p2p-interface.md @@ -17,6 +17,7 @@ The specification of these changes continues in the same format as the network s - [The gossip domain: gossipsub](#the-gossip-domain-gossipsub) - [Topics and messages](#topics-and-messages) - [Global topics](#global-topics) + - [`beacon_block`](#beacon_block) - [`beacon_block_and_blobs_sidecar`](#beacon_block_and_blobs_sidecar) - [Transitioning the gossip](#transitioning-the-gossip) - [The Req/Resp domain](#the-reqresp-domain) @@ -64,9 +65,9 @@ Some gossip meshes are upgraded in the fork of EIP4844 to support upgraded types ### Topics and messages Topics follow the same specification as in prior upgrades. -All topics remain stable except the beacon block topic which is updated with the modified type. +The `beacon_block` topic is deprecated and replaced by the `beacon_block_and_blobs_sidecar` topic. All other topics remain stable. -The specification around the creation, validation, and dissemination of messages has not changed from the Bellatrix document unless explicitly noted here. +The specification around the creation, validation, and dissemination of messages has not changed from the Capella document unless explicitly noted here. The derivation of the `message-id` remains stable. @@ -81,11 +82,17 @@ The new topics along with the type of the `data` field of a gossipsub message ar EIP4844 introduces a new global topic for beacon block and blobs-sidecars. +##### `beacon_block` + +This topic is deprecated and clients **MUST NOT** expose in their topic set to any peer. Implementers do not need to do +anything beyond simply skip implementation and it is explicitly called out as it is a departure from previous versioning +of this topic. + ##### `beacon_block_and_blobs_sidecar` This topic is used to propagate new signed and coupled beacon blocks and blobs sidecars to all nodes on the networks. -In addition to the gossip validations for the `beacon_block` topic from prior specifications, the following validations MUST pass before forwarding the `signed_beacon_block_and_blobs_sidecar` on the network. +In addition to the gossip validations for the `beacon_block` topic from prior specifications, the following validations MUST pass before forwarding the `signed_beacon_block_and_blobs_sidecar` on the network. Alias `signed_beacon_block = signed_beacon_block_and_blobs_sidecar.beacon_block`, `block = signed_beacon_block.message`, `execution_payload = block.body.execution_payload`. - _[REJECT]_ The KZG commitments of the blobs are all correctly encoded compressed BLS G1 Points. -- i.e. `all(bls.KeyValidate(commitment) for commitment in block.body.blob_kzg_commitments)` From 38669d4b7a418df35fc05598b2c771cacd0d3d60 Mon Sep 17 00:00:00 2001 From: Alex Stokes Date: Fri, 11 Nov 2022 11:20:10 -0700 Subject: [PATCH 2/3] Update specs/eip4844/p2p-interface.md Co-authored-by: Danny Ryan --- specs/eip4844/p2p-interface.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specs/eip4844/p2p-interface.md b/specs/eip4844/p2p-interface.md index 269caa8cc..8ef452236 100644 --- a/specs/eip4844/p2p-interface.md +++ b/specs/eip4844/p2p-interface.md @@ -85,7 +85,7 @@ EIP4844 introduces a new global topic for beacon block and blobs-sidecars. ##### `beacon_block` This topic is deprecated and clients **MUST NOT** expose in their topic set to any peer. Implementers do not need to do -anything beyond simply skip implementation and it is explicitly called out as it is a departure from previous versioning +anything beyond simply skip implementation, and it is explicitly called out as it is a departure from previous versioning of this topic. ##### `beacon_block_and_blobs_sidecar` From a5f8a158197827359a9d69937779b09deba9e317 Mon Sep 17 00:00:00 2001 From: Alex Stokes Date: Tue, 15 Nov 2022 10:29:03 -0700 Subject: [PATCH 3/3] Clarify how to transition gossip --- specs/eip4844/p2p-interface.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/specs/eip4844/p2p-interface.md b/specs/eip4844/p2p-interface.md index 8ef452236..7bb652000 100644 --- a/specs/eip4844/p2p-interface.md +++ b/specs/eip4844/p2p-interface.md @@ -88,6 +88,8 @@ This topic is deprecated and clients **MUST NOT** expose in their topic set to a anything beyond simply skip implementation, and it is explicitly called out as it is a departure from previous versioning of this topic. +Refer to [the section below](#transitioning-the-gossip) for details on how to transition the gossip. + ##### `beacon_block_and_blobs_sidecar` This topic is used to propagate new signed and coupled beacon blocks and blobs sidecars to all nodes on the networks.