ensure aggregate attestation's slot and target are consistent
This commit is contained in:
parent
2c337d68ff
commit
b356f52c5c
|
@ -333,6 +333,8 @@ The following validations MUST pass before forwarding the `signed_aggregate_and_
|
||||||
- _[IGNORE]_ `aggregate.data.slot` is within the last `ATTESTATION_PROPAGATION_SLOT_RANGE` slots (with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance) --
|
- _[IGNORE]_ `aggregate.data.slot` is within the last `ATTESTATION_PROPAGATION_SLOT_RANGE` slots (with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance) --
|
||||||
i.e. `aggregate.data.slot + ATTESTATION_PROPAGATION_SLOT_RANGE >= current_slot >= aggregate.data.slot`
|
i.e. `aggregate.data.slot + ATTESTATION_PROPAGATION_SLOT_RANGE >= current_slot >= aggregate.data.slot`
|
||||||
(a client MAY queue future aggregates for processing at the appropriate slot).
|
(a client MAY queue future aggregates for processing at the appropriate slot).
|
||||||
|
- _[REJECT]_ The aggregate attestation's epoch matches its target -- i.e. `aggregate.data.target.epoch ==
|
||||||
|
compute_epoch_at_slot(aggregate.data.slot)`
|
||||||
- _[IGNORE]_ The valid aggregate attestation defined by `hash_tree_root(aggregate)` has _not_ already been seen
|
- _[IGNORE]_ The valid aggregate attestation defined by `hash_tree_root(aggregate)` has _not_ already been seen
|
||||||
(via aggregate gossip, within a verified block, or through the creation of an equivalent aggregate locally).
|
(via aggregate gossip, within a verified block, or through the creation of an equivalent aggregate locally).
|
||||||
- _[IGNORE]_ The `aggregate` is the first valid aggregate received for the aggregator
|
- _[IGNORE]_ The `aggregate` is the first valid aggregate received for the aggregator
|
||||||
|
|
Loading…
Reference in New Issue