lighthouse-pulse/beacon_node
Michael Sproul 5a35278aea Add more checks and logging before genesis (#4730)
## Proposed Changes

This PR adds more logging prior to genesis, particularly on networks that start with execution enabled.

There are new checks using `eth_getBlockByHash/Number` to verify that the genesis state's `latest_execution_payload_header` matches the execution node's genesis block.

The first commit also runs the merge-readiness/Capella-readiness checks prior to genesis. This has two effects:

- Give more information on the execution node's status and its readiness for genesis.
- Prevent the `el_offline` status from being set on `/eth/v1/node/syncing`, which previously caused the VC to complain loudly.

I would like to include this for the Holesky reboot. It would have caught the misconfig that doomed the first Holesky.

## Additional Info

- Geth doesn't serve payload bodies prior to genesis, which is why we use the legacy methods. I haven't checked with other ELs yet.
- Currently this is logging errors with _Capella_ genesis states generated by `ethereum-genesis-generator` because the `withdrawals_root` is not set correctly (it is 0x0). This is not a blocker for Holesky, as it starts from Bellatrix (Pari is investigating).
2023-09-21 00:26:53 +00:00
..
beacon_chain Add more checks and logging before genesis (#4730) 2023-09-21 00:26:53 +00:00
beacon_processor Fix beacon-processor-max-workers (#4636) 2023-08-21 05:02:34 +00:00
builder_client Tidy formatting of Reqwest errors (#4336) 2023-06-27 01:06:50 +00:00
client Add more checks and logging before genesis (#4730) 2023-09-21 00:26:53 +00:00
eth1 Replace ganache-cli with anvil (#3555) 2023-05-15 07:22:02 +00:00
execution_layer Add more checks and logging before genesis (#4730) 2023-09-21 00:26:53 +00:00
genesis rust 1.72 lints (#4659) 2023-08-24 14:33:24 -04:00
http_api Add more checks and logging before genesis (#4730) 2023-09-21 00:26:53 +00:00
http_metrics upgrade to libp2p 0.52 (#4431) 2023-08-02 00:59:34 +00:00
lighthouse_network Add Experimental QUIC support (#4577) 2023-09-15 03:07:24 +00:00
network Add Experimental QUIC support (#4577) 2023-09-15 03:07:24 +00:00
operation_pool Fix some typos (#4565) 2023-08-14 00:29:43 +00:00
src Add Experimental QUIC support (#4577) 2023-09-15 03:07:24 +00:00
store Fix bug in block root storage (#4663) 2023-08-28 05:34:28 +00:00
tests Appease Clippy 1.68 and refactor http_api (#4068) 2023-03-13 01:40:03 +00:00
timer Use async code when interacting with EL (#3244) 2022-07-03 05:36:50 +00:00
Cargo.toml Release v4.4.1 (#4690) 2023-09-04 02:56:52 +00:00