Fix and add `EIP7732_FORK_EPOCH` and `EIP7594_FORK_VERSION`
This commit is contained in:
parent
b230a42584
commit
b2d6e68e62
|
@ -59,6 +59,9 @@ EIP7594_FORK_EPOCH: 18446744073709551615
|
||||||
# WHISK
|
# WHISK
|
||||||
WHISK_FORK_VERSION: 0x08000000 # temporary stub
|
WHISK_FORK_VERSION: 0x08000000 # temporary stub
|
||||||
WHISK_FORK_EPOCH: 18446744073709551615
|
WHISK_FORK_EPOCH: 18446744073709551615
|
||||||
|
# EIP7732
|
||||||
|
EIP7732_FORK_VERSION: 0x09000000 # temporary stub
|
||||||
|
EIP7732_FORK_EPOCH: 18446744073709551615
|
||||||
|
|
||||||
# Time parameters
|
# Time parameters
|
||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
|
|
|
@ -58,6 +58,9 @@ EIP7594_FORK_EPOCH: 18446744073709551615
|
||||||
# WHISK
|
# WHISK
|
||||||
WHISK_FORK_VERSION: 0x08000001
|
WHISK_FORK_VERSION: 0x08000001
|
||||||
WHISK_FORK_EPOCH: 18446744073709551615
|
WHISK_FORK_EPOCH: 18446744073709551615
|
||||||
|
# EIP7732
|
||||||
|
EIP7732_FORK_VERSION: 0x09000001
|
||||||
|
EIP7732_FORK_EPOCH: 18446744073709551615
|
||||||
|
|
||||||
# Time parameters
|
# Time parameters
|
||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
|
|
|
@ -28,8 +28,8 @@ Warning: this configuration is not definitive.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
|---------------------| - |
|
|---------------------| - |
|
||||||
| `EPBS_FORK_VERSION` | `Version('0x06000000')` |
|
| `EIP7732_FORK_VERSION` | `Version('0x09000000')` |
|
||||||
| `EPBS_FORK_EPOCH` | `Epoch(18446744073709551615)` **TBD** |
|
| `EIP7732_FORK_EPOCH` | `Epoch(18446744073709551615)` **TBD** |
|
||||||
|
|
||||||
## Helper functions
|
## Helper functions
|
||||||
|
|
||||||
|
@ -42,8 +42,8 @@ def compute_fork_version(epoch: Epoch) -> Version:
|
||||||
"""
|
"""
|
||||||
Return the fork version at the given ``epoch``.
|
Return the fork version at the given ``epoch``.
|
||||||
"""
|
"""
|
||||||
if epoch >= EPBS_FORK_EPOCH:
|
if epoch >= EIP7732_FORK_EPOCH:
|
||||||
return EPBS_FORK_VERSION
|
return EIP7732_FORK_VERSION
|
||||||
if epoch >= ELECTRA_FORK_EPOCH:
|
if epoch >= ELECTRA_FORK_EPOCH:
|
||||||
return ELECTRA_FORK_VERSION
|
return ELECTRA_FORK_VERSION
|
||||||
if epoch >= DENEB_FORK_EPOCH:
|
if epoch >= DENEB_FORK_EPOCH:
|
||||||
|
@ -63,11 +63,11 @@ def compute_fork_version(epoch: Epoch) -> Version:
|
||||||
|
|
||||||
TBD. This fork is defined for testing purposes, the EIP may be combined with other
|
TBD. This fork is defined for testing purposes, the EIP may be combined with other
|
||||||
consensus-layer upgrade.
|
consensus-layer upgrade.
|
||||||
For now, we assume the condition will be triggered at epoch `EPBS_FORK_EPOCH`.
|
For now, we assume the condition will be triggered at epoch `EIP7732_FORK_EPOCH`.
|
||||||
|
|
||||||
### Upgrading the state
|
### Upgrading the state
|
||||||
|
|
||||||
If `state.slot % SLOTS_PER_EPOCH == 0` and `compute_epoch_at_slot(state.slot) == EPBS_FORK_EPOCH`,
|
If `state.slot % SLOTS_PER_EPOCH == 0` and `compute_epoch_at_slot(state.slot) == EIP7732_FORK_EPOCH`,
|
||||||
an irregular state change is made to upgrade to ePBS.
|
an irregular state change is made to upgrade to ePBS.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
|
@ -81,7 +81,7 @@ def upgrade_to_epbs(pre: electra.BeaconState) -> BeaconState:
|
||||||
slot=pre.slot,
|
slot=pre.slot,
|
||||||
fork=Fork(
|
fork=Fork(
|
||||||
previous_version=pre.fork.current_version,
|
previous_version=pre.fork.current_version,
|
||||||
current_version=EPBS_FORK_EPOCH, # [Modified in ePBS]
|
current_version=EIP7732_FORK_EPOCH, # [Modified in ePBS]
|
||||||
epoch=epoch,
|
epoch=epoch,
|
||||||
),
|
),
|
||||||
# History
|
# History
|
||||||
|
|
|
@ -184,7 +184,7 @@ The following validations MUST pass before forwarding the `signed_execution_payl
|
||||||
| `BELLATRIX_FORK_VERSION` | `bellatrix.SignedBeaconBlock` |
|
| `BELLATRIX_FORK_VERSION` | `bellatrix.SignedBeaconBlock` |
|
||||||
| `CAPELLA_FORK_VERSION` | `capella.SignedBeaconBlock` |
|
| `CAPELLA_FORK_VERSION` | `capella.SignedBeaconBlock` |
|
||||||
| `DENEB_FORK_VERSION` | `deneb.SignedBeaconBlock` |
|
| `DENEB_FORK_VERSION` | `deneb.SignedBeaconBlock` |
|
||||||
| `EPBS_FORK_VERSION` | `epbs.SignedBeaconBlock` |
|
| `EIP7732_FORK_VERSION` | `epbs.SignedBeaconBlock` |
|
||||||
|
|
||||||
##### BeaconBlocksByRoot v3
|
##### BeaconBlocksByRoot v3
|
||||||
|
|
||||||
|
@ -201,7 +201,7 @@ Per `context = compute_fork_digest(fork_version, genesis_validators_root)`:
|
||||||
| `BELLATRIX_FORK_VERSION` | `bellatrix.SignedBeaconBlock` |
|
| `BELLATRIX_FORK_VERSION` | `bellatrix.SignedBeaconBlock` |
|
||||||
| `CAPELLA_FORK_VERSION` | `capella.SignedBeaconBlock` |
|
| `CAPELLA_FORK_VERSION` | `capella.SignedBeaconBlock` |
|
||||||
| `DENEB_FORK_VERSION` | `deneb.SignedBeaconBlock` |
|
| `DENEB_FORK_VERSION` | `deneb.SignedBeaconBlock` |
|
||||||
| `EPBS_FORK_VERSION` | `epbs.SignedBeaconBlock` |
|
| `EIP7732_FORK_VERSION` | `epbs.SignedBeaconBlock` |
|
||||||
|
|
||||||
|
|
||||||
##### BlobSidecarsByRoot v2
|
##### BlobSidecarsByRoot v2
|
||||||
|
@ -213,7 +213,7 @@ Per `context = compute_fork_digest(fork_version, genesis_validators_root)`:
|
||||||
| `fork_version` | Chunk SSZ type |
|
| `fork_version` | Chunk SSZ type |
|
||||||
|--------------------------|-------------------------------|
|
|--------------------------|-------------------------------|
|
||||||
| `DENEB_FORK_VERSION` | `deneb.BlobSidecar` |
|
| `DENEB_FORK_VERSION` | `deneb.BlobSidecar` |
|
||||||
| `EPBS_FORK_VERSION` | `epbs.BlobSidecar` |
|
| `EIP7732_FORK_VERSION` | `epbs.BlobSidecar` |
|
||||||
|
|
||||||
|
|
||||||
##### ExecutionPayloadEnvelopeByRoot v1
|
##### ExecutionPayloadEnvelopeByRoot v1
|
||||||
|
@ -226,7 +226,7 @@ The `<context-bytes>` field is calculated as `context = compute_fork_digest(fork
|
||||||
|
|
||||||
| `fork_version` | Chunk SSZ type |
|
| `fork_version` | Chunk SSZ type |
|
||||||
|---------------------|---------------------------------------|
|
|---------------------|---------------------------------------|
|
||||||
| `EPBS_FORK_VERSION` | `epbs.SignedExecutionPayloadEnvelope` |
|
| `EIP7732_FORK_VERSION` | `epbs.SignedExecutionPayloadEnvelope` |
|
||||||
|
|
||||||
Request Content:
|
Request Content:
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue