nimbus-eth2
                                
                                
                                
                                    nimbus-eth2 copied to clipboard
                            
                            
                            
                        Implement the Capella beacon chain spec
The Capella beacon chain spec changes are defined here: https://github.com/ethereum/consensus-specs/blob/dev/specs/capella/beacon-chain.md#introduction
As a first step, we should implement the Capella state transition in expectation of test vectors that might be published in the future. The task will include the following:
- 
Define a new
capellamodule in thebeacon_chain/spec/datatypesfolder. The module will hold the new definitions for types such asExecutionPayload,BeaconBlockBody,BeaconState, etc, as well as the brand new types such asWithdrawalandBLSToExecutionChange. - 
Extend the
BeaconStateForkenum with additionalCapellavalue and handle the fallout from the change. - 
Introduce the modifications to the state transition functions (as done for previous forks such as Altair and Bellatrix). All existing code should continue to compile normally (i.e.
makeandmake testshould complete successfully).block_simcan be extended to test Capella transitions. 
From this task I guess I'm more than half way through (3), compile times are getting close to the unmodified repo compile times. However it's quite hard to understand how far along I am as there is no percentage counter 🤔
In general (2 Fallout from the change) has been pretty massive.
Done, shipping.