Rename ACTIVATION_EXIT_DELAY to MAX_SEED_LOOKAHEAD for phase 1
This commit is contained in:
parent
a183125595
commit
e7db58cb7e
|
@ -60,7 +60,7 @@ SLOTS_PER_EPOCH: 64
|
||||||
# 2**0 (= 1) epochs 6.4 minutes
|
# 2**0 (= 1) epochs 6.4 minutes
|
||||||
MIN_SEED_LOOKAHEAD: 1
|
MIN_SEED_LOOKAHEAD: 1
|
||||||
# 2**2 (= 4) epochs 25.6 minutes
|
# 2**2 (= 4) epochs 25.6 minutes
|
||||||
ACTIVATION_EXIT_DELAY: 4
|
MAX_SEED_LOOKAHEAD: 4
|
||||||
# 2**10 (= 1,024) slots ~1.7 hours
|
# 2**10 (= 1,024) slots ~1.7 hours
|
||||||
SLOTS_PER_ETH1_VOTING_PERIOD: 1024
|
SLOTS_PER_ETH1_VOTING_PERIOD: 1024
|
||||||
# 2**13 (= 8,192) slots ~13 hours
|
# 2**13 (= 8,192) slots ~13 hours
|
||||||
|
|
|
@ -59,7 +59,7 @@ SLOTS_PER_EPOCH: 8
|
||||||
# 2**0 (= 1) epochs
|
# 2**0 (= 1) epochs
|
||||||
MIN_SEED_LOOKAHEAD: 1
|
MIN_SEED_LOOKAHEAD: 1
|
||||||
# 2**2 (= 4) epochs
|
# 2**2 (= 4) epochs
|
||||||
ACTIVATION_EXIT_DELAY: 4
|
MAX_SEED_LOOKAHEAD: 4
|
||||||
# [customized] higher frequency new deposits from eth1 for testing
|
# [customized] higher frequency new deposits from eth1 for testing
|
||||||
SLOTS_PER_ETH1_VOTING_PERIOD: 16
|
SLOTS_PER_ETH1_VOTING_PERIOD: 16
|
||||||
# [customized] smaller state
|
# [customized] smaller state
|
||||||
|
|
|
@ -210,7 +210,7 @@ The following values are (non-configurable) constants used throughout the specif
|
||||||
| `MIN_ATTESTATION_INCLUSION_DELAY` | `2**0` (= 1) | slots | 6 seconds |
|
| `MIN_ATTESTATION_INCLUSION_DELAY` | `2**0` (= 1) | slots | 6 seconds |
|
||||||
| `SLOTS_PER_EPOCH` | `2**6` (= 64) | slots | 6.4 minutes |
|
| `SLOTS_PER_EPOCH` | `2**6` (= 64) | slots | 6.4 minutes |
|
||||||
| `MIN_SEED_LOOKAHEAD` | `2**0` (= 1) | epochs | 6.4 minutes |
|
| `MIN_SEED_LOOKAHEAD` | `2**0` (= 1) | epochs | 6.4 minutes |
|
||||||
| `ACTIVATION_EXIT_DELAY` | `2**2` (= 4) | epochs | 25.6 minutes |
|
| `MAX_SEED_LOOKAHEAD` | `2**2` (= 4) | epochs | 25.6 minutes |
|
||||||
| `SLOTS_PER_ETH1_VOTING_PERIOD` | `2**10` (= 1,024) | slots | ~1.7 hours |
|
| `SLOTS_PER_ETH1_VOTING_PERIOD` | `2**10` (= 1,024) | slots | ~1.7 hours |
|
||||||
| `SLOTS_PER_HISTORICAL_ROOT` | `2**13` (= 8,192) | slots | ~13 hours |
|
| `SLOTS_PER_HISTORICAL_ROOT` | `2**13` (= 8,192) | slots | ~13 hours |
|
||||||
| `MIN_VALIDATOR_WITHDRAWABILITY_DELAY` | `2**8` (= 256) | epochs | ~27 hours |
|
| `MIN_VALIDATOR_WITHDRAWABILITY_DELAY` | `2**8` (= 256) | epochs | ~27 hours |
|
||||||
|
@ -779,7 +779,7 @@ def compute_activation_exit_epoch(epoch: Epoch) -> Epoch:
|
||||||
"""
|
"""
|
||||||
Return the epoch during which validator activations and exits initiated in ``epoch`` take effect.
|
Return the epoch during which validator activations and exits initiated in ``epoch`` take effect.
|
||||||
"""
|
"""
|
||||||
return Epoch(epoch + 1 + ACTIVATION_EXIT_DELAY)
|
return Epoch(epoch + 1 + MAX_SEED_LOOKAHEAD)
|
||||||
```
|
```
|
||||||
|
|
||||||
#### `compute_domain`
|
#### `compute_domain`
|
||||||
|
|
|
@ -673,7 +673,7 @@ def process_chunk_challenge_response(state: BeaconState,
|
||||||
# Verify bit challenge data is null
|
# Verify bit challenge data is null
|
||||||
assert response.chunk_bits_branch == [] and response.chunk_bits_leaf == Hash()
|
assert response.chunk_bits_branch == [] and response.chunk_bits_leaf == Hash()
|
||||||
# Verify minimum delay
|
# Verify minimum delay
|
||||||
assert get_current_epoch(state) >= challenge.inclusion_epoch + ACTIVATION_EXIT_DELAY
|
assert get_current_epoch(state) >= challenge.inclusion_epoch + MAX_SEED_LOOKAHEAD
|
||||||
# Verify the chunk matches the crosslink data root
|
# Verify the chunk matches the crosslink data root
|
||||||
assert is_valid_merkle_branch(
|
assert is_valid_merkle_branch(
|
||||||
leaf=hash_tree_root(response.chunk),
|
leaf=hash_tree_root(response.chunk),
|
||||||
|
|
|
@ -114,7 +114,7 @@ Once a validator has been processed and added to the beacon state's `validators`
|
||||||
|
|
||||||
### Activation
|
### Activation
|
||||||
|
|
||||||
In normal operation, the validator is quickly activated, at which point the validator is added to the shuffling and begins validation after an additional `ACTIVATION_EXIT_DELAY` epochs (25.6 minutes).
|
In normal operation, the validator is quickly activated, at which point the validator is added to the shuffling and begins validation after an additional `MAX_SEED_LOOKAHEAD` epochs (25.6 minutes).
|
||||||
|
|
||||||
The function [`is_active_validator`](../core/0_beacon-chain.md#is_active_validator) can be used to check if a validator is active during a given epoch. Usage is as follows:
|
The function [`is_active_validator`](../core/0_beacon-chain.md#is_active_validator) can be used to check if a validator is active during a given epoch. Usage is as follows:
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ def test_activation(spec, state):
|
||||||
index = 0
|
index = 0
|
||||||
mock_deposit(spec, state, index)
|
mock_deposit(spec, state, index)
|
||||||
|
|
||||||
for _ in range(spec.ACTIVATION_EXIT_DELAY + 1):
|
for _ in range(spec.MAX_SEED_LOOKAHEAD + 1):
|
||||||
next_epoch(spec, state)
|
next_epoch(spec, state)
|
||||||
|
|
||||||
yield from run_process_registry_updates(spec, state)
|
yield from run_process_registry_updates(spec, state)
|
||||||
|
@ -73,7 +73,7 @@ def test_ejection(spec, state):
|
||||||
# Mock an ejection
|
# Mock an ejection
|
||||||
state.validators[index].effective_balance = spec.EJECTION_BALANCE
|
state.validators[index].effective_balance = spec.EJECTION_BALANCE
|
||||||
|
|
||||||
for _ in range(spec.ACTIVATION_EXIT_DELAY + 1):
|
for _ in range(spec.MAX_SEED_LOOKAHEAD + 1):
|
||||||
next_epoch(spec, state)
|
next_epoch(spec, state)
|
||||||
|
|
||||||
yield from run_process_registry_updates(spec, state)
|
yield from run_process_registry_updates(spec, state)
|
||||||
|
|
Loading…
Reference in New Issue