Attended the first EPF 4 Office Hours. I really enjoyed Marios presentation regarding the history of Ethereum!
The following open issue seems like an interesting project to explore for the cohort.
I began taking notes on redb. I also have an example implementation of a redb database in Rust. My goal was to mimic some of the structs and types used in lighthouse while having a playground I can use to test changes quickly. That repo can be found here:
https://github.com/eserilev/redb-impl
I worked on adding ssz support to two endpoints on lighthouse
Once my PR is accepted and merged, Lighthouse will support http requests with SSZ data in the request body. This is the first time I've been able to add new functionality to the Lighthouse client and I'm especially excited about this contribution.
I also spent some time researching general ETH related topics and watched the live stream of the consesus devs meeting.
There is some concern that the huge influx in validators joining the network can cause issues. Once a certain number of validators have joined the network, it may cause client instability. I believe the issue here is that consensus clients have to store the whole state of currently active validators. If there are too many validators this might cause issues, potentially requiring validators to upgrade their hardware to handle the increase CPU/memory load. I'm going to dig into this issue further as it seems interesting
Currently on holiday until Tuesday July 18th
I received feedback from my PR: add SSZ support in request body for /beacon/blocks endpoints
BAD REQUEST
instead of INTERNAL SERVER ERROR
These changes are a blocker for my other PR: SSZ support for POST Blinded blocks endpoint v1 and v2. Once I resolve the feedback from my first PR and get it reviewed, my second PR will be reviewed.
I spent some time implementing the feedback I received from the following PR: SSZ support for POST Blinded blocks endpoint v1 and v2
I then pivoted to begin work on the redb implementation for the lighthouse slasher backend
I have some design notes related to the implementation here: https://hackmd.io/@uncle-bill/HyEdfSu9h
My PR can be found here: https://github.com/sigp/lighthouse/pull/4529
Today I continued work on the redb implementation for the lighthouse slasher backend. I have a very rough draft of what the implementation should look like. Its currently failing the following tests:
beacon_node::enr_match_flag_over_ipv4
beacon_node::http_tls_flags
beacon_node::metrics_address_flag
beacon_node::network_listen_address_flag_v4
beacon_node::slasher_attestation_cache_size_flag
beacon_node::slasher_backend_override_to_default
beacon_node::slasher_broadcast_flag_false
beacon_node::slasher_broadcast_flag_no_args
beacon_node::slasher_broadcast_flag_no_default
beacon_node::slasher_broadcast_flag_true
beacon_node::slasher_chunk_size_flag
beacon_node::slasher_dir_flag
beacon_node::slasher_flag
beacon_node::slasher_history_length_flag
beacon_node::slasher_max_db_size_flag
beacon_node::slasher_slot_offset_flag
beacon_node::slasher_update_period_flag
beacon_node::slasher_validator_chunk_size_flag
I am currently working on getting these test cases to pass