Skip to content

Commit 38e9ff3

Browse files
authored
docs: update the electra-gap with the latest progress (#1452)
1 parent 4ab1c70 commit 38e9ff3

File tree

1 file changed

+20
-12
lines changed

1 file changed

+20
-12
lines changed

electra-gap.md

+20-12
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ This document will guide you through our step-by-step plan for the implementatio
66

77
| Status | Phase | What & Why | Key Steps | Testing |
88
|:----:|:------------------------------------------|:------------------------------------------------------|:---------------------------------------------------------------------------|:---------------------------------------------------|
9-
| 🏗️ | [Phase 1: Beacon Chain Implementation](#phase-1-beacon-chain-implementation) | Build the electra-upgraded beacon chain core | • Apply electra-specific changes<br>• Run & pass full spec tests | Run spec suite (`make spec-test`), aim for 0 failures |
9+
| | [Phase 1: Beacon Chain Implementation](#phase-1-beacon-chain-implementation) | Build the electra-upgraded beacon chain core | • Apply electra-specific changes<br>• Run & pass full spec tests | Run spec suite (`make spec-test`), aim for 0 failures |
1010
|| [Phase 2: P2P & Sepolia Long-Running Sessions](#phase-2-p2p--sepolia-long-running-sessions) | Ensure stability on Sepolia | • Implement the P2P changes <br> • Deploy the node on our server pointing to Sepolia<br>• Fix every issue we found that interrupts the node execution | Continuous uptime checks & up-to-date block processing for 72+ hrs in Sepolia|
1111
|| [Phase 3: Validator Upgrades](#phase-3-validator-upgrades) | Ensure validators duties on devnets |• Implement the honest validator changes<br>• Make assertoor work<br> • Test via Kurtosis & Assertoor | Execute Kurtosis scenarios & Assertoor with continuous uptime checks and up-to-date validation duties for 72+ hrs on kurtosis |
1212

@@ -27,6 +27,7 @@ Right now we are at the [Beacon Chain Implementation](#phase-1-beacon-chain-impl
2727

2828
- **April 15th, 2025:** `11370 tests, 2003 failures, 784 skipped`
2929
- **April 22th, 2025:** `11370 tests, 165 failures, 784 skipped`
30+
- **April 29th, 2025:** `11370 tests, 0 failures, 784 skipped`
3031

3132
**Note:** The aim is to reach `0` failures before next week, so we can start the long running sessions on Sepolia. Also, we want to validate the 784 test skipped on the second phase.
3233

@@ -36,9 +37,9 @@ Here we will detail the current implementation gaps with the specs and the way t
3637

3738
### Phase 1: Beacon Chain Implementation
3839

39-
We are at `54/58` (91%) of the [beacon chain changes](docs/specs/electra/beacon-chain.md), and most of the remaining functions are already in progress. We have fixed all `11370` spec tests. The skipped tests were there previous to the electra upgrade, so we will work on them if needed after we finish the first phase.
40+
We are at `54/58` (92%) of the [beacon chain changes](docs/specs/electra/beacon-chain.md) having implemented all functions needed for phase 1. We have fixed all failing spec tests. The skipped ones were there previous to the electra upgrade, so we will work on them if needed after we finish the first phase.
4041

41-
The current status of the implementation in the [electra-support](https://github.com/lambdaclass/lambda_ethereum_consensus/tree/electra-support) branch is as follows:
42+
The current status of the implementation is as follows:
4243

4344
#### Containers (13/13 - 100%)
4445

@@ -101,10 +102,9 @@ The current status of the implementation in the [electra-support](https://github
101102
- [x] Modified `process_effective_balance_updates` ([Spec](docs/specs/electra/beacon-chain.md#modified-process_effective_balance_updates), [PR](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/1428))
102103
- [x] Modified `get_validator_from_deposit` ([Spec](docs/specs/electra/beacon-chains.md#modified-get_validator_from_deposit), [PR](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/1424))
103104

104-
#### Block Processing (12/13 - 92%)
105+
#### Block Processing (12/12 - 100%)
105106

106107
- [x] Modified `process_withdrawals` ([Spec](docs/specs/electra/beacon-chain.md#modified-process_withdrawals), [PR](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/1431))
107-
- [ ] Modified `process_execution_payload` ([Spec](docs/specs/electra/beacon-chain.md#modified-process_execution_payload))
108108
- [x] Modified `process_operations` ([Spec](docs/specs/electra/beacon-chain.md#modified-process_operations), [PR](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/1424))
109109
- [x] Modified `process_attestation` ([Spec](docs/specs/electra/beacon-chain.md#modified-process_attestation), [PR](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/1426))
110110
- [x] Modified `process_deposit` ([Spec](docs/specs/electra/beacon-chain.md#modified-process_deposit), [PR](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/1424))
@@ -117,24 +117,31 @@ The current status of the implementation in the [electra-support](https://github
117117
- [x] Modified `apply_deposit` ([Spec](docs/specs/electra/beacon-chain.md#modified-apply_deposit), [PR](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/1424))
118118
- [x] Modified `get_expected_withdrawals` ([Spec](docs/specs/electra/beacon-chain.md#modified-get_expected_withdrawals), [PR](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/1431))
119119

120-
## Execution Engine
121-
122-
#### Execution Engine (0/3 - 0%)
123-
124-
- [ ] Modified `is_valid_block_hash` ([Spec](docs/specs/electra/beacon-chain.md#modified-is_valid_block_hash))
125-
- [ ] Modified `notify_new_payload` ([Spec](docs/specs/electra/beacon-chain.md#modified-notify_new_payload))
126-
- [ ] Modified `verify_and_notify_new_payload` ([Spec](docs/specs/electra/beacon-chain.md#modified-verify_and_notify_new_payload))
127120

128121
## Phase 2: P2P & Sepolia Long-Running Sessions
129122

130123
We didn't start this phase yet, its goals are:
131124

125+
- Missing execution engine [changes from the beacon chain](docs/specs/electra/beacon-chain.md) implemented.
132126
- [P2P electra changes](docs/specs/electra/p2p-interface.md) implementated.
133127
- To have a stable node processing state transitions in testnets, especially Sepolia.
134128
- Validate the remaining 784 skipped tests to make sure they are not masking any issues.
135129

136130
The aim is to have the node running on Sepolia uninterrupted for 72+ hrs. The following is the implementation gap for this phase:
137131

132+
### Beacon Chain
133+
134+
#### Block Processing (0/1 - 0%)
135+
- [ ] Modified `process_execution_payload` ([Spec](docs/specs/electra/beacon-chain.md#modified-process_execution_payload))
136+
137+
#### Execution Engine (0/3 - 0%)
138+
`
139+
- [ ] Modified `is_valid_block_hash` ([Spec](docs/specs/electra/beacon-chain.md#modified-is_valid_block_hash))
140+
- [ ] Modified `notify_new_payload` ([Spec](docs/specs/electra/beacon-chain.md#modified-notify_new_payload))
141+
- [ ] Modified `verify_and_notify_new_payload` ([Spec](docs/specs/electra/beacon-chain.md#modified-verify_and_notify_new_payload))
142+
143+
### P2P Interface
144+
138145
### Networking (0/8 - 0% Complete)
139146

140147
- [ ] Updated `beacon_block` topic validation ([Spec](docs/specs/electra/p2p-interface.md#beacon_block))
@@ -171,3 +178,4 @@ The aim is to have the node running on kurtosis uninterrupted for 72+ hrs. The f
171178
## Changelog
172179
- **April 10th, 2025:** Created the document with the implementation gap.
173180
- **April 22th, 2025:** Updated the document with a clear roadmap, next steps and detailed current status.
181+
- **April 29th, 2025:** Updated the document with the execution engine implementation as part of phase 2

0 commit comments

Comments
 (0)