mirror of
https://github.com/sigp/lighthouse.git
synced 2026-04-18 13:28:33 +00:00
Electra attestation changes sean review (#5972)
* instantiate empty bitlist in unreachable code * clean up error conversion * fork enabled bool cleanup * remove a couple todos * return bools instead of options in `aggregate` and use the result * delete commented out code * use map macros in simple transformations * remove signers_disjoint_from * get ef tests compiling * get ef tests compiling * update intentionally excluded files
This commit is contained in:
@@ -61,10 +61,9 @@ use std::borrow::Cow;
|
||||
use strum::AsRefStr;
|
||||
use tree_hash::TreeHash;
|
||||
use types::{
|
||||
Attestation, AttestationRef, BeaconCommittee,
|
||||
BeaconStateError::{self, NoCommitteeFound},
|
||||
ChainSpec, CommitteeIndex, Epoch, EthSpec, ForkName, Hash256, IndexedAttestation,
|
||||
SelectionProof, SignedAggregateAndProof, Slot, SubnetId,
|
||||
Attestation, AttestationRef, BeaconCommittee, BeaconStateError::NoCommitteeFound, ChainSpec,
|
||||
CommitteeIndex, Epoch, EthSpec, Hash256, IndexedAttestation, SelectionProof,
|
||||
SignedAggregateAndProof, Slot, SubnetId,
|
||||
};
|
||||
|
||||
pub use batch::{batch_verify_aggregated_attestations, batch_verify_unaggregated_attestations};
|
||||
@@ -266,30 +265,9 @@ pub enum Error {
|
||||
BeaconChainError(BeaconChainError),
|
||||
}
|
||||
|
||||
// TODO(electra) the error conversion changes here are to get a test case to pass
|
||||
// this could easily be cleaned up
|
||||
impl From<BeaconChainError> for Error {
|
||||
fn from(e: BeaconChainError) -> Self {
|
||||
match &e {
|
||||
BeaconChainError::BeaconStateError(beacon_state_error) => {
|
||||
if let BeaconStateError::AggregatorNotInCommittee { aggregator_index } =
|
||||
beacon_state_error
|
||||
{
|
||||
Self::AggregatorNotInCommittee {
|
||||
aggregator_index: *aggregator_index,
|
||||
}
|
||||
} else if let BeaconStateError::InvalidSelectionProof { aggregator_index } =
|
||||
beacon_state_error
|
||||
{
|
||||
Self::InvalidSelectionProof {
|
||||
aggregator_index: *aggregator_index,
|
||||
}
|
||||
} else {
|
||||
Error::BeaconChainError(e)
|
||||
}
|
||||
}
|
||||
_ => Error::BeaconChainError(e),
|
||||
}
|
||||
Self::BeaconChainError(e)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1169,7 +1147,7 @@ pub fn verify_propagation_slot_range<S: SlotClock, E: EthSpec>(
|
||||
|
||||
let current_fork =
|
||||
spec.fork_name_at_slot::<E>(slot_clock.now().ok_or(BeaconChainError::UnableToReadSlot)?);
|
||||
let earliest_permissible_slot = if current_fork < ForkName::Deneb {
|
||||
let earliest_permissible_slot = if !current_fork.deneb_enabled() {
|
||||
one_epoch_prior
|
||||
// EIP-7045
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user