(Work in progress!)
poc_ to custody_ (#381)poc_seed_changes => custody_reseedspoc_challenges => custody_challengespoc_responses => custody_responsespoc_bit => custody_bitProofOfCustodySeedChange => CustodyReseedProofOfCustodyChallenge => CustodyChallengeProofOfCustodyResponse => CustodyResponsepoc_commitment => custody_commitmentlast_poc_change_slot=> latest_custody_reseed_slotsecond_last_poc_change_slot => penultimate_custody_reseed_slotaggregate_signature_poc_0_indices => custody_bit_0_indices (notice '[uint24]' should be ['uint24'])aggregate_signature_poc_1_indices => custody_bit_1_indicesINITIAL_ to GENESIS_ (#374)INITIAL_FORK_VERSION => GENESIS_FORK_VERSIONINITIAL_SLOT_NUMBER => GENESIS_SLOTpow_receipt_ to deposit_ (#383)POW_RECEIPT_ROOT_VOTING_PERIOD => DEPOSIT_ROOT_VOTING_PERIODCandidatePoWReceiptRootRecord => DepositRootVotecandidate_pow_receipt_root => deposit_root_voteprocessed_pow_receipt_root => processed_deposit_rootRecord suffixValidatorRecord => ValidatorCrosslinkRecord => CrosslinkShardReassignmentRecord => ShardReassignmentPendingAttestationRecord => PendingAttestationmin_empty_validator_index => get_min_empty_validator_indexshard_committee => crosslink_committeepersistent_committee => shard_committeestate (#358)validator_registry_latest_change_slot => validator_registry_update_slotfork_data => forklatest_penalized_exit_balances => latest_penalized_balances (still an awkward name)candidate_pow_receipt_roots => deposit_root_votes (#383)statevalidator_registry_exit_countvalidator_registry_delta_chain_tip (#476)shard_committees_at_slots (done)this_ and current_ (preference for "current")current_validator_registry_delta_chain_tip, current_slot => keep as isthis_epoch_ => current_epoch_update_validator_status, update_validator_registry => keep as islatest_status_change_slot => latest_status_update_slotepochs_since_last_registry_change => epochs_since_last_registry_updateEth1Deposit and Depositfork_slot => slot #358 value => amountslashable_vote_data => vote_dataparticipation_bitfield => aggregation_bitfield (#358)_DURATION, _DELAY, _LENGTH, _PERIOD and _TTL)get_ prefix)Deposit, DepositData, DepositInput => maybe collapse two togetherlatest_penalized_balancesZERO_BALANCE_VALIDATOR_TTL (also avoid TTL abbreviation)validator_registry_ => registry_ (shorter, and allows for registry_balances for consistency)proposer_index => validator_indexgenesis_time => genesisprevious_justified_slot and second_last_poc_change_slot?_reassignments?aggregate_signature?ValidatorIndex -> Index and only use "index" when for validator indexI'm working on 1. poc_ to custody_. 馃檵
will do (3) pow_receipt_ to deposit_
Should Eth1Data.block_hash be renamed to Eth1Data.block_root or Eth1Data.eth1_block_root?
Similar reason to why we have Crosslink.shard_block_root.
/cc @JustinDrake @djrtwo @vbuterin
I'm fine either way. :)
"block hash" is the common nomenclature in ethereum 1.0 and does not share the same tree hash structure so I think block_hash is correct here
@djrtwo got it. 馃憤
@JustinDrake Could you elaborate how/why to remove validator_registry_exit_count? It's now being used to sort eligible_indices order for applying prepare_validator_for_withdrawal.
slashable_vote_data=>vote_data
Since Eth1Data was introduced recently, if we apply this renaming, it might cause some confusion:
CasperSlashing <=> Eth1DataVote
SlashableVoteData => VoteData <=> Eth1Data
I suggest ProposalSignedData change to ProposalData.
thoughts?
I'm not a huge fan of ProposalSignedData and ProposerSlashing for several reasons:
BEACON_CHAIN_SHARD_NUMBER feels like an unfortunate and avoidable constant in the spec.DOMAIN_PROPOSAL to DOMAIN_BLOCK?Wishlist (1) Normalise time constants (we have
_DURATION,_DELAY,_LENGTH,_PERIODand_TTL)
After #492, there will be:
| Name | Value | Unit | Duration |
| - | - | :-: | :-: |
| SLOT_DURATION | 6 | seconds | 6 seconds |
| MIN_ATTESTATION_INCLUSION_DELAY | 2**2 (= 4) | slots | 24 seconds |
| EPOCH_LENGTH | 2**6 (= 64) | slots | 6.4 minutes |
| SEED_LOOKAHEAD | 2**0 (= 1) | epochs | 6.4 minutes |
| ENTRY_EXIT_DELAY | 2**2 (= 4) | epochs | 25.6 minutes |
| ETH1_DATA_VOTING_PERIOD | 2**4 (= 16) | epochs | ~1.7 hours |
| MIN_VALIDATOR_WITHDRAWAL_EPOCHS | 2**8 (= 256) | epochs | ~27 hours |
Suggestion:
t1 + TIME, we use _DELAY.MIN_VALIDATOR_WITHDRAWAL_EPOCHS -> MIN_VALIDATOR_WITHDRAWAL_DELAYt1 - TIME, we use _LOOKAHEAD.TIME long, we use _PERIOD.SLOT_DURATION => SECOND_PER_SLOTEPOCH_LENGTH => SLOT_PER_EPOCHI'm not certain of (4) since I somehow get used to SLOT_DURATION and EPOCH_LENGTH.
What about the following?
MIN_VALIDATOR_WITHDRAWAL_DELAYMIN_ATTESTATION_INCLUSION_DELAYMIN_SEED_LOOKAHEAD (the SEED_LOOKAHEAD is a min because the last revealer in an epoch could not produce a block)MAX_SEED_LOOKAHEAD (ENTRY_EXIT_DELAY is not great because we use "activation"鈥攏ot "entry"鈥攁nd we use "exited"/"penalized"/"ejected" for different types of deactivations. It also explains why we have a delay in the first place.)SECONDS_PER_SLOTSLOTS_PER_EPOCHEPOCHS_PER_ETH1_VOTING_PERIODClosing in favour of #534
Most helpful comment
After #492, there will be:
| Name | Value | Unit | Duration |
| - | - | :-: | :-: |
|
SLOT_DURATION|6| seconds | 6 seconds ||
MIN_ATTESTATION_INCLUSION_DELAY|2**2(= 4) | slots | 24 seconds ||
EPOCH_LENGTH|2**6(= 64) | slots | 6.4 minutes ||
SEED_LOOKAHEAD|2**0(= 1) | epochs | 6.4 minutes ||
ENTRY_EXIT_DELAY|2**2(= 4) | epochs | 25.6 minutes ||
ETH1_DATA_VOTING_PERIOD|2**4(= 16) | epochs | ~1.7 hours ||
MIN_VALIDATOR_WITHDRAWAL_EPOCHS|2**8(= 256) | epochs | ~27 hours |Suggestion:
t1 + TIME, we use_DELAY.MIN_VALIDATOR_WITHDRAWAL_EPOCHS->MIN_VALIDATOR_WITHDRAWAL_DELAYt1 - TIME, we use_LOOKAHEAD.TIMElong, we use_PERIOD.SLOT_DURATION=>SECOND_PER_SLOTEPOCH_LENGTH=>SLOT_PER_EPOCHI'm not certain of (4) since I somehow get used to
SLOT_DURATIONandEPOCH_LENGTH.