Electra alpha8 spec updates (#6496)

* Fix partial withdrawals count

* Remove get_active_balance

* Remove queue_entire_balance_and_reset_validator

* Switch to compounding when consolidating with source==target

* Queue deposit requests and apply them during epoch processing

* Fix ef tests

* Clear todos

* Fix engine api formatting issues

* Merge branch 'unstable' into electra-alpha7

* Make add_validator_to_registry more in line with the spec

* Address some review comments

* Cleanup

* Update initialize_beacon_state_from_eth1

* Merge branch 'unstable' into electra-alpha7

* Fix rpc decoding for blobs by range/root

* Fix block hash computation

* Fix process_deposits bug

* Merge branch 'unstable' into electra-alpha7

* Fix topup deposit processing bug

* Update builder api for electra

* Refactor mock builder to separate functionality

* Merge branch 'unstable' into electra-alpha7

* Address review comments

* Use copied for reference rather than cloned

* Optimise and simplify PendingDepositsContext::new

* Merge remote-tracking branch 'origin/unstable' into electra-alpha7

* Fix processing of deposits with invalid signatures

* Remove redundant code in genesis init

* Revert "Refactor mock builder to separate functionality"

This reverts commit 6d10456912.

* Revert "Update builder api for electra"

This reverts commit c5c9aca6db.

* Simplify pre-activation sorting

* Fix stale validators used in upgrade_to_electra

* Merge branch 'unstable' into electra-alpha7
This commit is contained in:
Pawan Dhananjay
2024-12-17 07:44:24 +05:30
committed by GitHub
parent 02cb2d68ff
commit d74b2d96f5
25 changed files with 519 additions and 337 deletions

View File

@@ -1,4 +1,4 @@
TESTS_TAG := v1.5.0-alpha.6
TESTS_TAG := v1.5.0-alpha.8
TESTS = general minimal mainnet
TARBALLS = $(patsubst %,%-$(TESTS_TAG).tar.gz,$(TESTS))

View File

@@ -86,7 +86,7 @@ type_name!(RewardsAndPenalties, "rewards_and_penalties");
type_name!(RegistryUpdates, "registry_updates");
type_name!(Slashings, "slashings");
type_name!(Eth1DataReset, "eth1_data_reset");
type_name!(PendingBalanceDeposits, "pending_balance_deposits");
type_name!(PendingBalanceDeposits, "pending_deposits");
type_name!(PendingConsolidations, "pending_consolidations");
type_name!(EffectiveBalanceUpdates, "effective_balance_updates");
type_name!(SlashingsReset, "slashings_reset");
@@ -193,7 +193,7 @@ impl<E: EthSpec> EpochTransition<E> for PendingBalanceDeposits {
state,
spec,
SinglePassConfig {
pending_balance_deposits: true,
pending_deposits: true,
..SinglePassConfig::disable_all()
},
)
@@ -363,7 +363,7 @@ impl<E: EthSpec, T: EpochTransition<E>> Case for EpochProcessing<E, T> {
}
if !fork_name.electra_enabled()
&& (T::name() == "pending_consolidations" || T::name() == "pending_balance_deposits")
&& (T::name() == "pending_consolidations" || T::name() == "pending_deposits")
{
return false;
}

View File

@@ -134,7 +134,7 @@ type_name_generic!(LightClientUpdateElectra, "LightClientUpdate");
type_name_generic!(PendingAttestation);
type_name!(PendingConsolidation);
type_name!(PendingPartialWithdrawal);
type_name!(PendingBalanceDeposit);
type_name!(PendingDeposit);
type_name!(ProposerSlashing);
type_name_generic!(SignedAggregateAndProof);
type_name_generic!(SignedAggregateAndProofBase, "SignedAggregateAndProof");

View File

@@ -243,8 +243,7 @@ mod ssz_static {
use types::historical_summary::HistoricalSummary;
use types::{
AttesterSlashingBase, AttesterSlashingElectra, ConsolidationRequest, DepositRequest,
LightClientBootstrapAltair, PendingBalanceDeposit, PendingPartialWithdrawal,
WithdrawalRequest, *,
LightClientBootstrapAltair, PendingDeposit, PendingPartialWithdrawal, WithdrawalRequest, *,
};
ssz_static_test!(attestation_data, AttestationData);
@@ -661,8 +660,8 @@ mod ssz_static {
#[test]
fn pending_balance_deposit() {
SszStaticHandler::<PendingBalanceDeposit, MinimalEthSpec>::electra_and_later().run();
SszStaticHandler::<PendingBalanceDeposit, MainnetEthSpec>::electra_and_later().run();
SszStaticHandler::<PendingDeposit, MinimalEthSpec>::electra_and_later().run();
SszStaticHandler::<PendingDeposit, MainnetEthSpec>::electra_and_later().run();
}
#[test]