From 5ea9e0baf3a59b66213e6dd5626c353b1219f410 Mon Sep 17 00:00:00 2001 From: tersec Date: Fri, 10 Sep 2021 17:35:14 +0000 Subject: [PATCH] use v1.1.0-beta.4 test vectors (#2861) --- FixtureAll-mainnet.md | 51 ++++++++++++++++-------- FixtureAll-minimal.md | 64 +++++++++++++++++++++++-------- FixtureSSZConsensus-mainnet.md | 25 +++++++----- FixtureSSZConsensus-minimal.md | 32 +++++++++++----- beacon_chain/spec/presets.nim | 4 +- tests/official/fixtures_utils.nim | 2 +- vendor/nim-eth2-scenarios | 2 +- 7 files changed, 128 insertions(+), 52 deletions(-) diff --git a/FixtureAll-mainnet.md b/FixtureAll-mainnet.md index 85f4e7199..813ff6b53 100644 --- a/FixtureAll-mainnet.md +++ b/FixtureAll-mainnet.md @@ -33,12 +33,15 @@ FixtureAll-mainnet + Rewards - full_random_1 [Preset: mainnet] OK + Rewards - full_random_2 [Preset: mainnet] OK + Rewards - full_random_3 [Preset: mainnet] OK ++ Rewards - full_random_4 [Preset: mainnet] OK + Rewards - full_random_leak [Preset: mainnet] OK + Rewards - full_random_low_balances_0 [Preset: mainnet] OK + Rewards - full_random_low_balances_1 [Preset: mainnet] OK + Rewards - full_random_misc_balances [Preset: mainnet] OK + Rewards - full_random_seven_epoch_leak [Preset: mainnet] OK + Rewards - full_random_ten_epoch_leak [Preset: mainnet] OK ++ Rewards - full_random_without_leak_0 [Preset: mainnet] OK ++ Rewards - full_random_without_leak_and_current_exit_0 [Preset: mainnet] OK + Rewards - half_full [Preset: mainnet] OK + Rewards - half_full_leak [Preset: mainnet] OK + Rewards - one_attestation_one_correct [Preset: mainnet] OK @@ -274,6 +277,12 @@ FixtureAll-mainnet + [Valid] incorrect_target_epoch_delay OK + [Valid] incorrect_target_min_inclusion_delay OK + [Valid] incorrect_target_sqrt_epoch_delay OK ++ [Valid] random_all_but_one_participating_with_duplicates OK ++ [Valid] random_high_participation_with_duplicates OK ++ [Valid] random_low_participation_with_duplicates OK ++ [Valid] random_misc_balances_and_half_participation_with_duplicates OK ++ [Valid] random_only_one_participant_with_duplicates OK ++ [Valid] random_with_exits_with_duplicates OK + [Valid] success OK + [Valid] success_already_exited_long_ago OK + [Valid] success_already_exited_recent OK @@ -281,7 +290,7 @@ FixtureAll-mainnet + [Valid] success_block_header OK + [Valid] success_block_header_from_future OK + [Valid] success_double OK -+ [Valid] success_exit_queue OK ++ [Valid] success_exit_queue__min_churn OK + [Valid] success_low_balances OK + [Valid] success_misc_balances OK + [Valid] success_multi_proposer_index_iterations OK @@ -295,6 +304,10 @@ FixtureAll-mainnet + [Valid] sync_committee_rewards_duplicate_committee_no_participation OK + [Valid] sync_committee_rewards_empty_participants OK + [Valid] sync_committee_rewards_not_full_participants OK ++ [Valid] sync_committee_with_nonparticipating_exited_member OK ++ [Valid] sync_committee_with_nonparticipating_withdrawable_member OK ++ [Valid] sync_committee_with_participating_exited_member OK ++ [Valid] sync_committee_with_participating_withdrawable_member OK + altair_fork_random_0 OK + altair_fork_random_1 OK + altair_fork_random_2 OK @@ -310,7 +323,7 @@ FixtureAll-mainnet + fork_random_low_balances OK + fork_random_misc_balances OK ``` -OK: 307/307 Fail: 0/307 Skip: 0/307 +OK: 320/320 Fail: 0/320 Skip: 0/320 ## Ethereum Foundation - Altair - Epoch Processing - Effective balance updates [Preset: mainnet] ```diff + Effective balance updates - effective_balance_hysteresis [Preset: mainnet] OK @@ -361,8 +374,9 @@ OK: 19/19 Fail: 0/19 Skip: 0/19 + Justification & Finalization - 234_poor_support [Preset: mainnet] OK + Justification & Finalization - 23_ok_support [Preset: mainnet] OK + Justification & Finalization - 23_poor_support [Preset: mainnet] OK ++ Justification & Finalization - balance_threshold_with_exited_validators [Preset: mainnet] OK ``` -OK: 9/9 Fail: 0/9 Skip: 0/9 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Altair - Epoch Processing - Participation flag updates [Preset: mainnet] ```diff + Participation flag updates - all_zeroed [Preset: mainnet] OK @@ -384,24 +398,27 @@ OK: 10/10 Fail: 0/10 Skip: 0/10 OK: 1/1 Fail: 0/1 Skip: 0/1 ## Ethereum Foundation - Altair - Epoch Processing - Registry updates [Preset: mainnet] ```diff -+ Registry updates - activation_queue_activation_and_ejection [Preset: mainnet] OK -+ Registry updates - activation_queue_efficiency [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__1 [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__churn_limit [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_churn_limit [Preset: m OK ++ Registry updates - activation_queue_efficiency_min [Preset: mainnet] OK + Registry updates - activation_queue_no_activation_no_finality [Preset: mainnet] OK + Registry updates - activation_queue_sorting [Preset: mainnet] OK + Registry updates - activation_queue_to_activated_if_finalized [Preset: mainnet] OK + Registry updates - add_to_activation_queue [Preset: mainnet] OK + Registry updates - ejection [Preset: mainnet] OK -+ Registry updates - ejection_past_churn_limit [Preset: mainnet] OK ++ Registry updates - ejection_past_churn_limit_min [Preset: mainnet] OK ``` -OK: 8/8 Fail: 0/8 Skip: 0/8 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Altair - Epoch Processing - Slashings [Preset: mainnet] ```diff + Slashings - low_penalty [Preset: mainnet] OK + Slashings - max_penalties [Preset: mainnet] OK + Slashings - minimal_penalty [Preset: mainnet] OK + Slashings - scaled_penalties [Preset: mainnet] OK ++ Slashings - slashings_with_random_state [Preset: mainnet] OK ``` -OK: 4/4 Fail: 0/4 Skip: 0/4 +OK: 5/5 Fail: 0/5 Skip: 0/5 ## Ethereum Foundation - Altair - Epoch Processing - Slashings reset [Preset: mainnet] ```diff + Slashings reset - flush_slashings [Preset: mainnet] OK @@ -474,8 +491,9 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 + Justification & Finalization - 234_poor_support [Preset: mainnet] OK + Justification & Finalization - 23_ok_support [Preset: mainnet] OK + Justification & Finalization - 23_poor_support [Preset: mainnet] OK ++ Justification & Finalization - balance_threshold_with_exited_validators [Preset: mainnet] OK ``` -OK: 9/9 Fail: 0/9 Skip: 0/9 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Phase 0 - Epoch Processing - Participation record updates [Preset: mainnet] ```diff + Participation record updates - updated_participation_record [Preset: mainnet] OK @@ -488,24 +506,27 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 OK: 1/1 Fail: 0/1 Skip: 0/1 ## Ethereum Foundation - Phase 0 - Epoch Processing - Registry updates [Preset: mainnet] ```diff -+ Registry updates - activation_queue_activation_and_ejection [Preset: mainnet] OK -+ Registry updates - activation_queue_efficiency [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__1 [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__churn_limit [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_churn_limit [Preset: m OK ++ Registry updates - activation_queue_efficiency_min [Preset: mainnet] OK + Registry updates - activation_queue_no_activation_no_finality [Preset: mainnet] OK + Registry updates - activation_queue_sorting [Preset: mainnet] OK + Registry updates - activation_queue_to_activated_if_finalized [Preset: mainnet] OK + Registry updates - add_to_activation_queue [Preset: mainnet] OK + Registry updates - ejection [Preset: mainnet] OK -+ Registry updates - ejection_past_churn_limit [Preset: mainnet] OK ++ Registry updates - ejection_past_churn_limit_min [Preset: mainnet] OK ``` -OK: 8/8 Fail: 0/8 Skip: 0/8 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Phase 0 - Epoch Processing - Slashings [Preset: mainnet] ```diff + Slashings - low_penalty [Preset: mainnet] OK + Slashings - max_penalties [Preset: mainnet] OK + Slashings - minimal_penalty [Preset: mainnet] OK + Slashings - scaled_penalties [Preset: mainnet] OK ++ Slashings - slashings_with_random_state [Preset: mainnet] OK ``` -OK: 4/4 Fail: 0/4 Skip: 0/4 +OK: 5/5 Fail: 0/5 Skip: 0/5 ## Ethereum Foundation - Phase 0 - Epoch Processing - Slashings reset [Preset: mainnet] ```diff + Slashings reset - flush_slashings [Preset: mainnet] OK @@ -544,4 +565,4 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 OK: 27/27 Fail: 0/27 Skip: 0/27 ---TOTAL--- -OK: 454/454 Fail: 0/454 Skip: 0/454 +OK: 475/475 Fail: 0/475 Skip: 0/475 diff --git a/FixtureAll-minimal.md b/FixtureAll-minimal.md index 72dedd748..434cb65e1 100644 --- a/FixtureAll-minimal.md +++ b/FixtureAll-minimal.md @@ -25,12 +25,15 @@ FixtureAll-minimal + Rewards - full_random_1 [Preset: minimal] OK + Rewards - full_random_2 [Preset: minimal] OK + Rewards - full_random_3 [Preset: minimal] OK ++ Rewards - full_random_4 [Preset: minimal] OK + Rewards - full_random_leak [Preset: minimal] OK + Rewards - full_random_low_balances_0 [Preset: minimal] OK + Rewards - full_random_low_balances_1 [Preset: minimal] OK + Rewards - full_random_misc_balances [Preset: minimal] OK + Rewards - full_random_seven_epoch_leak [Preset: minimal] OK + Rewards - full_random_ten_epoch_leak [Preset: minimal] OK ++ Rewards - full_random_without_leak_0 [Preset: minimal] OK ++ Rewards - full_random_without_leak_and_current_exit_0 [Preset: minimal] OK + Rewards - half_full [Preset: minimal] OK + Rewards - half_full_leak [Preset: minimal] OK + Rewards - one_attestation_one_correct [Preset: minimal] OK @@ -197,6 +200,8 @@ FixtureAll-minimal + [Valid] Ethereum Foundation - Altair - Sanity - Blocks - empty_epoch_transition [Preset: OK + [Valid] Ethereum Foundation - Altair - Sanity - Blocks - empty_epoch_transition_large_va OK + [Valid] Ethereum Foundation - Altair - Sanity - Blocks - empty_epoch_transition_not_fina OK ++ [Valid] Ethereum Foundation - Altair - Sanity - Blocks - eth1_data_votes_consensus [Pres OK ++ [Valid] Ethereum Foundation - Altair - Sanity - Blocks - eth1_data_votes_no_consensus [P OK + [Valid] Ethereum Foundation - Altair - Sanity - Blocks - full_random_operations_0 [Prese OK + [Valid] Ethereum Foundation - Altair - Sanity - Blocks - full_random_operations_1 [Prese OK + [Valid] Ethereum Foundation - Altair - Sanity - Blocks - full_random_operations_2 [Prese OK @@ -244,6 +249,8 @@ FixtureAll-minimal + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - empty_epoch_transition [Preset OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - empty_epoch_transition_large_v OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - empty_epoch_transition_not_fin OK ++ [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - eth1_data_votes_consensus [Pre OK ++ [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - eth1_data_votes_no_consensus [ OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - full_random_operations_0 [Pres OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - full_random_operations_1 [Pres OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - full_random_operations_2 [Pres OK @@ -275,6 +282,12 @@ FixtureAll-minimal + [Valid] incorrect_target_sqrt_epoch_delay OK + [Valid] proposer_in_committee_with_participation OK + [Valid] proposer_in_committee_without_participation OK ++ [Valid] random_all_but_one_participating_without_duplicates OK ++ [Valid] random_high_participation_without_duplicates OK ++ [Valid] random_low_participation_without_duplicates OK ++ [Valid] random_misc_balances_and_half_participation_without_duplicates OK ++ [Valid] random_only_one_participant_without_duplicates OK ++ [Valid] random_with_exits_without_duplicates OK + [Valid] success OK + [Valid] success_already_exited_long_ago OK + [Valid] success_already_exited_recent OK @@ -282,7 +295,8 @@ FixtureAll-minimal + [Valid] success_block_header OK + [Valid] success_block_header_from_future OK + [Valid] success_double OK -+ [Valid] success_exit_queue OK ++ [Valid] success_exit_queue__min_churn OK ++ [Valid] success_exit_queue__scaled_churn OK + [Valid] success_low_balances OK + [Valid] success_misc_balances OK + [Valid] success_multi_proposer_index_iterations OK @@ -294,9 +308,13 @@ FixtureAll-minimal + [Valid] sync_committee_rewards_empty_participants OK + [Valid] sync_committee_rewards_nonduplicate_committee OK + [Valid] sync_committee_rewards_not_full_participants OK ++ [Valid] sync_committee_with_nonparticipating_exited_member OK ++ [Valid] sync_committee_with_nonparticipating_withdrawable_member OK ++ [Valid] sync_committee_with_participating_exited_member OK ++ [Valid] sync_committee_with_participating_withdrawable_member OK + [Valid] valid_signature_future_committee OK ``` -OK: 293/293 Fail: 0/293 Skip: 0/293 +OK: 311/311 Fail: 0/311 Skip: 0/311 ## Ethereum Foundation - Altair - Epoch Processing - Effective balance updates [Preset: minimal] ```diff + Effective balance updates - effective_balance_hysteresis [Preset: minimal] OK @@ -347,8 +365,9 @@ OK: 19/19 Fail: 0/19 Skip: 0/19 + Justification & Finalization - 234_poor_support [Preset: minimal] OK + Justification & Finalization - 23_ok_support [Preset: minimal] OK + Justification & Finalization - 23_poor_support [Preset: minimal] OK ++ Justification & Finalization - balance_threshold_with_exited_validators [Preset: minimal] OK ``` -OK: 9/9 Fail: 0/9 Skip: 0/9 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Altair - Epoch Processing - Participation flag updates [Preset: minimal] ```diff + Participation flag updates - all_zeroed [Preset: minimal] OK @@ -372,24 +391,31 @@ OK: 12/12 Fail: 0/12 Skip: 0/12 OK: 1/1 Fail: 0/1 Skip: 0/1 ## Ethereum Foundation - Altair - Epoch Processing - Registry updates [Preset: minimal] ```diff -+ Registry updates - activation_queue_activation_and_ejection [Preset: minimal] OK -+ Registry updates - activation_queue_efficiency [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__1 [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__churn_limit [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_churn_limit [Preset: m OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_scaled_churn_limit [Pr OK ++ Registry updates - activation_queue_activation_and_ejection__scaled_churn_limit [Preset: m OK ++ Registry updates - activation_queue_efficiency_min [Preset: minimal] OK ++ Registry updates - activation_queue_efficiency_scaled [Preset: minimal] OK + Registry updates - activation_queue_no_activation_no_finality [Preset: minimal] OK + Registry updates - activation_queue_sorting [Preset: minimal] OK + Registry updates - activation_queue_to_activated_if_finalized [Preset: minimal] OK + Registry updates - add_to_activation_queue [Preset: minimal] OK + Registry updates - ejection [Preset: minimal] OK -+ Registry updates - ejection_past_churn_limit [Preset: minimal] OK ++ Registry updates - ejection_past_churn_limit_min [Preset: minimal] OK ++ Registry updates - ejection_past_churn_limit_scaled [Preset: minimal] OK ``` -OK: 8/8 Fail: 0/8 Skip: 0/8 +OK: 14/14 Fail: 0/14 Skip: 0/14 ## Ethereum Foundation - Altair - Epoch Processing - Slashings [Preset: minimal] ```diff + Slashings - low_penalty [Preset: minimal] OK + Slashings - max_penalties [Preset: minimal] OK + Slashings - minimal_penalty [Preset: minimal] OK + Slashings - scaled_penalties [Preset: minimal] OK ++ Slashings - slashings_with_random_state [Preset: minimal] OK ``` -OK: 4/4 Fail: 0/4 Skip: 0/4 +OK: 5/5 Fail: 0/5 Skip: 0/5 ## Ethereum Foundation - Altair - Epoch Processing - Slashings reset [Preset: minimal] ```diff + Slashings reset - flush_slashings [Preset: minimal] OK @@ -471,8 +497,9 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 + Justification & Finalization - 234_poor_support [Preset: minimal] OK + Justification & Finalization - 23_ok_support [Preset: minimal] OK + Justification & Finalization - 23_poor_support [Preset: minimal] OK ++ Justification & Finalization - balance_threshold_with_exited_validators [Preset: minimal] OK ``` -OK: 9/9 Fail: 0/9 Skip: 0/9 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Phase 0 - Epoch Processing - Participation record updates [Preset: minimal] ```diff + Participation record updates - updated_participation_record [Preset: minimal] OK @@ -485,24 +512,31 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 OK: 1/1 Fail: 0/1 Skip: 0/1 ## Ethereum Foundation - Phase 0 - Epoch Processing - Registry updates [Preset: minimal] ```diff -+ Registry updates - activation_queue_activation_and_ejection [Preset: minimal] OK -+ Registry updates - activation_queue_efficiency [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__1 [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__churn_limit [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_churn_limit [Preset: m OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_scaled_churn_limit [Pr OK ++ Registry updates - activation_queue_activation_and_ejection__scaled_churn_limit [Preset: m OK ++ Registry updates - activation_queue_efficiency_min [Preset: minimal] OK ++ Registry updates - activation_queue_efficiency_scaled [Preset: minimal] OK + Registry updates - activation_queue_no_activation_no_finality [Preset: minimal] OK + Registry updates - activation_queue_sorting [Preset: minimal] OK + Registry updates - activation_queue_to_activated_if_finalized [Preset: minimal] OK + Registry updates - add_to_activation_queue [Preset: minimal] OK + Registry updates - ejection [Preset: minimal] OK -+ Registry updates - ejection_past_churn_limit [Preset: minimal] OK ++ Registry updates - ejection_past_churn_limit_min [Preset: minimal] OK ++ Registry updates - ejection_past_churn_limit_scaled [Preset: minimal] OK ``` -OK: 8/8 Fail: 0/8 Skip: 0/8 +OK: 14/14 Fail: 0/14 Skip: 0/14 ## Ethereum Foundation - Phase 0 - Epoch Processing - Slashings [Preset: minimal] ```diff + Slashings - low_penalty [Preset: minimal] OK + Slashings - max_penalties [Preset: minimal] OK + Slashings - minimal_penalty [Preset: minimal] OK + Slashings - scaled_penalties [Preset: minimal] OK ++ Slashings - slashings_with_random_state [Preset: minimal] OK ``` -OK: 4/4 Fail: 0/4 Skip: 0/4 +OK: 5/5 Fail: 0/5 Skip: 0/5 ## Ethereum Foundation - Phase 0 - Epoch Processing - Slashings reset [Preset: minimal] ```diff + Slashings reset - flush_slashings [Preset: minimal] OK @@ -541,4 +575,4 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 OK: 27/27 Fail: 0/27 Skip: 0/27 ---TOTAL--- -OK: 447/447 Fail: 0/447 Skip: 0/447 +OK: 481/481 Fail: 0/481 Skip: 0/481 diff --git a/FixtureSSZConsensus-mainnet.md b/FixtureSSZConsensus-mainnet.md index 11bdb3679..c940d7a73 100644 --- a/FixtureSSZConsensus-mainnet.md +++ b/FixtureSSZConsensus-mainnet.md @@ -25,12 +25,15 @@ FixtureSSZConsensus-mainnet + Rewards - full_random_1 [Preset: mainnet] OK + Rewards - full_random_2 [Preset: mainnet] OK + Rewards - full_random_3 [Preset: mainnet] OK ++ Rewards - full_random_4 [Preset: mainnet] OK + Rewards - full_random_leak [Preset: mainnet] OK + Rewards - full_random_low_balances_0 [Preset: mainnet] OK + Rewards - full_random_low_balances_1 [Preset: mainnet] OK + Rewards - full_random_misc_balances [Preset: mainnet] OK + Rewards - full_random_seven_epoch_leak [Preset: mainnet] OK + Rewards - full_random_ten_epoch_leak [Preset: mainnet] OK ++ Rewards - full_random_without_leak_0 [Preset: mainnet] OK ++ Rewards - full_random_without_leak_and_current_exit_0 [Preset: mainnet] OK + Rewards - half_full [Preset: mainnet] OK + Rewards - half_full_leak [Preset: mainnet] OK + Rewards - one_attestation_one_correct [Preset: mainnet] OK @@ -208,7 +211,7 @@ FixtureSSZConsensus-mainnet + [Valid] success_block_header OK + [Valid] success_block_header_from_future OK + [Valid] success_double OK -+ [Valid] success_exit_queue OK ++ [Valid] success_exit_queue__min_churn OK + [Valid] success_low_balances OK + [Valid] success_misc_balances OK + [Valid] success_multi_proposer_index_iterations OK @@ -218,7 +221,7 @@ FixtureSSZConsensus-mainnet + [Valid] success_surround OK + [Valid] success_with_effective_balance_disparity OK ``` -OK: 215/215 Fail: 0/215 Skip: 0/215 +OK: 218/218 Fail: 0/218 Skip: 0/218 ## Ethereum Foundation - Altair - SSZ consensus objects [Preset: mainnet] ```diff + Testing AggregateAndProof OK @@ -286,8 +289,9 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 + Justification & Finalization - 234_poor_support [Preset: mainnet] OK + Justification & Finalization - 23_ok_support [Preset: mainnet] OK + Justification & Finalization - 23_poor_support [Preset: mainnet] OK ++ Justification & Finalization - balance_threshold_with_exited_validators [Preset: mainnet] OK ``` -OK: 9/9 Fail: 0/9 Skip: 0/9 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Phase 0 - Epoch Processing - Participation record updates [Preset: mainnet] ```diff + Participation record updates - updated_participation_record [Preset: mainnet] OK @@ -300,24 +304,27 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 OK: 1/1 Fail: 0/1 Skip: 0/1 ## Ethereum Foundation - Phase 0 - Epoch Processing - Registry updates [Preset: mainnet] ```diff -+ Registry updates - activation_queue_activation_and_ejection [Preset: mainnet] OK -+ Registry updates - activation_queue_efficiency [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__1 [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__churn_limit [Preset: mainnet] OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_churn_limit [Preset: m OK ++ Registry updates - activation_queue_efficiency_min [Preset: mainnet] OK + Registry updates - activation_queue_no_activation_no_finality [Preset: mainnet] OK + Registry updates - activation_queue_sorting [Preset: mainnet] OK + Registry updates - activation_queue_to_activated_if_finalized [Preset: mainnet] OK + Registry updates - add_to_activation_queue [Preset: mainnet] OK + Registry updates - ejection [Preset: mainnet] OK -+ Registry updates - ejection_past_churn_limit [Preset: mainnet] OK ++ Registry updates - ejection_past_churn_limit_min [Preset: mainnet] OK ``` -OK: 8/8 Fail: 0/8 Skip: 0/8 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Phase 0 - Epoch Processing - Slashings [Preset: mainnet] ```diff + Slashings - low_penalty [Preset: mainnet] OK + Slashings - max_penalties [Preset: mainnet] OK + Slashings - minimal_penalty [Preset: mainnet] OK + Slashings - scaled_penalties [Preset: mainnet] OK ++ Slashings - slashings_with_random_state [Preset: mainnet] OK ``` -OK: 4/4 Fail: 0/4 Skip: 0/4 +OK: 5/5 Fail: 0/5 Skip: 0/5 ## Ethereum Foundation - Phase 0 - Epoch Processing - Slashings reset [Preset: mainnet] ```diff + Slashings reset - flush_slashings [Preset: mainnet] OK @@ -356,4 +363,4 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 OK: 27/27 Fail: 0/27 Skip: 0/27 ---TOTAL--- -OK: 306/306 Fail: 0/306 Skip: 0/306 +OK: 313/313 Fail: 0/313 Skip: 0/313 diff --git a/FixtureSSZConsensus-minimal.md b/FixtureSSZConsensus-minimal.md index d3b9a08d9..f81a22a04 100644 --- a/FixtureSSZConsensus-minimal.md +++ b/FixtureSSZConsensus-minimal.md @@ -25,12 +25,15 @@ FixtureSSZConsensus-minimal + Rewards - full_random_1 [Preset: minimal] OK + Rewards - full_random_2 [Preset: minimal] OK + Rewards - full_random_3 [Preset: minimal] OK ++ Rewards - full_random_4 [Preset: minimal] OK + Rewards - full_random_leak [Preset: minimal] OK + Rewards - full_random_low_balances_0 [Preset: minimal] OK + Rewards - full_random_low_balances_1 [Preset: minimal] OK + Rewards - full_random_misc_balances [Preset: minimal] OK + Rewards - full_random_seven_epoch_leak [Preset: minimal] OK + Rewards - full_random_ten_epoch_leak [Preset: minimal] OK ++ Rewards - full_random_without_leak_0 [Preset: minimal] OK ++ Rewards - full_random_without_leak_and_current_exit_0 [Preset: minimal] OK + Rewards - half_full [Preset: minimal] OK + Rewards - half_full_leak [Preset: minimal] OK + Rewards - one_attestation_one_correct [Preset: minimal] OK @@ -175,6 +178,8 @@ FixtureSSZConsensus-minimal + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - empty_epoch_transition [Preset OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - empty_epoch_transition_large_v OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - empty_epoch_transition_not_fin OK ++ [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - eth1_data_votes_consensus [Pre OK ++ [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - eth1_data_votes_no_consensus [ OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - full_random_operations_0 [Pres OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - full_random_operations_1 [Pres OK + [Valid] Ethereum Foundation - Phase 0 - Sanity - Blocks - full_random_operations_2 [Pres OK @@ -211,7 +216,8 @@ FixtureSSZConsensus-minimal + [Valid] success_block_header OK + [Valid] success_block_header_from_future OK + [Valid] success_double OK -+ [Valid] success_exit_queue OK ++ [Valid] success_exit_queue__min_churn OK ++ [Valid] success_exit_queue__scaled_churn OK + [Valid] success_low_balances OK + [Valid] success_misc_balances OK + [Valid] success_multi_proposer_index_iterations OK @@ -221,7 +227,7 @@ FixtureSSZConsensus-minimal + [Valid] success_surround OK + [Valid] success_with_effective_balance_disparity OK ``` -OK: 218/218 Fail: 0/218 Skip: 0/218 +OK: 224/224 Fail: 0/224 Skip: 0/224 ## Ethereum Foundation - Altair - SSZ consensus objects [Preset: minimal] ```diff + Testing AggregateAndProof OK @@ -289,8 +295,9 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 + Justification & Finalization - 234_poor_support [Preset: minimal] OK + Justification & Finalization - 23_ok_support [Preset: minimal] OK + Justification & Finalization - 23_poor_support [Preset: minimal] OK ++ Justification & Finalization - balance_threshold_with_exited_validators [Preset: minimal] OK ``` -OK: 9/9 Fail: 0/9 Skip: 0/9 +OK: 10/10 Fail: 0/10 Skip: 0/10 ## Ethereum Foundation - Phase 0 - Epoch Processing - Participation record updates [Preset: minimal] ```diff + Participation record updates - updated_participation_record [Preset: minimal] OK @@ -303,24 +310,31 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 OK: 1/1 Fail: 0/1 Skip: 0/1 ## Ethereum Foundation - Phase 0 - Epoch Processing - Registry updates [Preset: minimal] ```diff -+ Registry updates - activation_queue_activation_and_ejection [Preset: minimal] OK -+ Registry updates - activation_queue_efficiency [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__1 [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__churn_limit [Preset: minimal] OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_churn_limit [Preset: m OK ++ Registry updates - activation_queue_activation_and_ejection__exceed_scaled_churn_limit [Pr OK ++ Registry updates - activation_queue_activation_and_ejection__scaled_churn_limit [Preset: m OK ++ Registry updates - activation_queue_efficiency_min [Preset: minimal] OK ++ Registry updates - activation_queue_efficiency_scaled [Preset: minimal] OK + Registry updates - activation_queue_no_activation_no_finality [Preset: minimal] OK + Registry updates - activation_queue_sorting [Preset: minimal] OK + Registry updates - activation_queue_to_activated_if_finalized [Preset: minimal] OK + Registry updates - add_to_activation_queue [Preset: minimal] OK + Registry updates - ejection [Preset: minimal] OK -+ Registry updates - ejection_past_churn_limit [Preset: minimal] OK ++ Registry updates - ejection_past_churn_limit_min [Preset: minimal] OK ++ Registry updates - ejection_past_churn_limit_scaled [Preset: minimal] OK ``` -OK: 8/8 Fail: 0/8 Skip: 0/8 +OK: 14/14 Fail: 0/14 Skip: 0/14 ## Ethereum Foundation - Phase 0 - Epoch Processing - Slashings [Preset: minimal] ```diff + Slashings - low_penalty [Preset: minimal] OK + Slashings - max_penalties [Preset: minimal] OK + Slashings - minimal_penalty [Preset: minimal] OK + Slashings - scaled_penalties [Preset: minimal] OK ++ Slashings - slashings_with_random_state [Preset: minimal] OK ``` -OK: 4/4 Fail: 0/4 Skip: 0/4 +OK: 5/5 Fail: 0/5 Skip: 0/5 ## Ethereum Foundation - Phase 0 - Epoch Processing - Slashings reset [Preset: minimal] ```diff + Slashings reset - flush_slashings [Preset: minimal] OK @@ -359,4 +373,4 @@ OK: 1/1 Fail: 0/1 Skip: 0/1 OK: 27/27 Fail: 0/27 Skip: 0/27 ---TOTAL--- -OK: 309/309 Fail: 0/309 Skip: 0/309 +OK: 323/323 Fail: 0/323 Skip: 0/323 diff --git a/beacon_chain/spec/presets.nim b/beacon_chain/spec/presets.nim index 248bb84ad..9a256f788 100644 --- a/beacon_chain/spec/presets.nim +++ b/beacon_chain/spec/presets.nim @@ -295,8 +295,8 @@ elif const_preset == "minimal": EJECTION_BALANCE: 16000000000'u64, # 2**2 (= 4) MIN_PER_EPOCH_CHURN_LIMIT: 4, - # 2**16 (= 65,536) - CHURN_LIMIT_QUOTIENT: 65536, + # [customized] scale queue churn at much lower validator counts for testing + CHURN_LIMIT_QUOTIENT: 32, # Deposit contract diff --git a/tests/official/fixtures_utils.nim b/tests/official/fixtures_utils.nim index e440bce11..59a4bbdc6 100644 --- a/tests/official/fixtures_utils.nim +++ b/tests/official/fixtures_utils.nim @@ -39,7 +39,7 @@ type const FixturesDir* = currentSourcePath.rsplit(DirSep, 1)[0] / ".." / ".." / "vendor" / "nim-eth2-scenarios" - SszTestsDir* = FixturesDir / "tests-v1.1.0-beta.3" + SszTestsDir* = FixturesDir / "tests-v1.1.0-beta.4" MaxObjectSize* = 3_000_000 proc parseTest*(path: string, Format: typedesc[Json], T: typedesc): T = diff --git a/vendor/nim-eth2-scenarios b/vendor/nim-eth2-scenarios index 2f70374b1..927811da3 160000 --- a/vendor/nim-eth2-scenarios +++ b/vendor/nim-eth2-scenarios @@ -1 +1 @@ -Subproject commit 2f70374b1765ccf6d52dffccaa3b85cbd9bd6bf1 +Subproject commit 927811da3ecb3f7c5ca0c74533e78ee4aec147e9