You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[Transitioning the gossip](#transitioning-the-gossip)
@@ -133,8 +134,6 @@ The new topics along with the type of the `data` field of a gossipsub message ar
133
134
134
135
##### Global topics
135
136
136
-
Deneb introduces new global topics for blob sidecars.
137
-
138
137
###### `beacon_block`
139
138
140
139
The *type* of the payload of this topic changes to the (modified) `SignedBeaconBlock` found in Deneb.
@@ -146,6 +145,25 @@ New validation:
146
145
-_[REJECT]_ The length of KZG commitments is less than or equal to the limitation defined in Consensus Layer --
147
146
i.e. validate that `len(body.signed_beacon_block.message.blob_kzg_commitments) <= MAX_BLOBS_PER_BLOCK`
148
147
148
+
###### `beacon_aggregate_and_proof`
149
+
150
+
*[Modified in Deneb:EIP7045]*
151
+
152
+
The following validation is removed:
153
+
*_[IGNORE]_`aggregate.data.slot` is within the last `ATTESTATION_PROPAGATION_SLOT_RANGE` slots (with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance) --
154
+
i.e. `aggregate.data.slot + ATTESTATION_PROPAGATION_SLOT_RANGE >= current_slot >= aggregate.data.slot`
155
+
(a client MAY queue future aggregates for processing at the appropriate slot).
156
+
157
+
The following validations are added in its place:
158
+
*_[IGNORE]_`aggregate.data.slot` is equal to or earlier than the `current_slot` (with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance) --
159
+
i.e. `aggregate.data.slot <= current_slot`
160
+
(a client MAY queue future aggregates for processing at the appropriate slot).
161
+
*_[IGNORE]_ the epoch of `aggregate.data.slot` is either the current or previous epoch
162
+
(with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance) --
163
+
i.e. `compute_epoch_at_slot(aggregate.data.slot) in (get_previous_epoch(state), get_current_epoch(state))`
164
+
165
+
##### Blob subnets
166
+
149
167
###### `blob_sidecar_{subnet_id}`
150
168
151
169
*[New in Deneb:EIP4844]*
@@ -169,23 +187,6 @@ The following validations MUST pass before forwarding the `blob_sidecar` on the
169
187
-_[REJECT]_ The sidecar is proposed by the expected `proposer_index` for the block's slot in the context of the current shuffling (defined by `block_header.parent_root`/`block_header.slot`).
170
188
If the `proposer_index` cannot immediately be verified against the expected shuffling, the sidecar MAY be queued for later processing while proposers for the block's branch are calculated -- in such a case _do not_`REJECT`, instead `IGNORE` this message.
171
189
172
-
###### `beacon_aggregate_and_proof`
173
-
174
-
*[Modified in Deneb:EIP7045]*
175
-
176
-
The following validation is removed:
177
-
*_[IGNORE]_`aggregate.data.slot` is within the last `ATTESTATION_PROPAGATION_SLOT_RANGE` slots (with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance) --
178
-
i.e. `aggregate.data.slot + ATTESTATION_PROPAGATION_SLOT_RANGE >= current_slot >= aggregate.data.slot`
179
-
(a client MAY queue future aggregates for processing at the appropriate slot).
180
-
181
-
The following validations are added in its place:
182
-
*_[IGNORE]_`aggregate.data.slot` is equal to or earlier than the `current_slot` (with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance) --
183
-
i.e. `aggregate.data.slot <= current_slot`
184
-
(a client MAY queue future aggregates for processing at the appropriate slot).
185
-
*_[IGNORE]_ the epoch of `aggregate.data.slot` is either the current or previous epoch
186
-
(with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance) --
187
-
i.e. `compute_epoch_at_slot(aggregate.data.slot) in (get_previous_epoch(state), get_current_epoch(state))`
0 commit comments