--- tags: eth2devs description: Notes from the regular Eth2 implementers call image: https://benjaminion.xyz/f/favicon-96x96.png --- # Eth2 Implementers’ Call #52 - 2020-11-12 [Quick contemporaneous notes by Ben Edgington] Agenda: https://github.com/ethereum/eth2.0-pm/issues/191 Livestream: https://youtu.be/yFjs_tB6I-Y ## Testing and Release updates v1.0 release is out, pretty much the same as the candidate release. Looking at reworking the test vector format to reduce generation time and disk footprint. This will allow for more tests to be included. Not an immediate priority. [Mehdi] Beacon Fuzz: structural differential fuzzer. Two consensus vulns in Prysm (off-by-one; wrong epoch in slashings). One minor non-exploitable issue in Teku. Working with new EF devops person to automate fuzzing on a larger scale. Continuing work on custom fuzzing engine. Blog post coming. [Justin] Two people joining EF to work on security. Also looking for more. [Danny] Will be putting out some RFPs for more external testing. ## Testnets Toledo v1.0 devnet is up (not public). Running very smoothly. Planning a 100k validator testnet, to be started by client teams and EF: the Pyrmont testnet. After genesis, look at what a long-term sustainable testnet might look like. Pyrmont genesis date not yet set, though the deposit contract is deployed. [After checking with teams on the call] Wednesday 1200 UTC is the plan. Encourage participants not to make _huge_ deposits so as not to clog up the queue. Will get a launchpad subdomain set up. Toledo will run for a few more days. Will test the new Lighthouse slasher and other experimental things. [Danny] Plan to publicly sunset support for Medalla next week. Pyrmont will be the replacement for Medalla. [Dankrad] Could possibly make queues faster for Pyrmont to allow easier testing. [Jacek/PaulH] Would prefer vanilla mainnet params. Should encourage proper voluntary exits rather than just shutting down nodes. [Proto] Planning some ephemeral testnets just to go through the genesis process. Need help from clients to be able to configure them easily to do this. Note that client teams generally plan to bake-in genesis state, and users need to expect to update their clients before the genesis event. ## Client updates **Nimbus** Very busy 2 weeks. Networking: improved tracking of resources; fixed some gossipsub audit issues. Core: Toledo release, using gossipsub 1.1. Support HTTP for Infura, and improved Eth1 chain monitoring. Prebuilt Linux binaries. New release today. Plan executables for Linux, Max, Windows and ARM. Reworking mainnet release managament. Gathering a mailing list. Planning support coverage. Lessons were learned from some recent directory changes in the client that disrupted user workflows. Have hidden tooling for making deposits from Nimbus - pointing everyone to Launchpad. **Lodestar** Not yet made a new release. Trying to get to full spec 1.0 compatibility. Only discv5.1 remains. Blst integration is much faster, but there is a browser compatibility issue. 80% of standard API is done. Validator is using this API now. **Prysm** Closed all ongoing issues from ToB audit. Improved initial sync: better at exploring forks. Working on Eth2 standard APIs, peer scoring, slashing interchange format. Focus on mainnet v1 release - see milestone in repo. **Lighthouse** Published blog post for v1 release. Encouraging everyone to update in the week before genesis. Working on standard API. Slasher is in final review stage - running 8 on Toledo. Setting up monitoring infra. Second audit complete. Confident for genesis. **Teku** Published mainnet ready release; will be default next week. Mostly complete common API. Completed almost all v1.0 updates, just need to do gossip messageID. Snapshot sync from a state alone - gets fully up and running in a couple of mins. Significant memory consumption improvements. Fixes to stability of using Geth on Eth1 mainnet, and memory during non-finalisation. ## Research Updates **Aditya** Weak subjectivity: clients support WS start from a block root. Explorers will support distribution of the WS checkpoints. Eth2 will have WS safety right from genesis :tada: **Vitalik** Data availability sampling, Phase 1: Wrote a pre-spec of two proposals with different architectures. Need to further understand the trade-offs. Some small research questions remain around data availability sampling. Draft PR separating the light client spec into its own file. Attempt to modularise so that implementation becomes less order-dependent. **TXRX** Executable beacon chain proposal: putting Eth1 chain right into the beacon chain. This reduces communication complexity, and allows instant deposits and withdrawals, and delivers synchrony for some applications. Will publish work next week. **Leo** Shared some measurements of client metrics during sync. Plans to publish a report. ## Networking Lighthouse is testing scoring parameters on Toledo, and they seem good. Happy to share with other teams. ## Spec discussion [Vitalik] How do we feel about treating (1) sharding, (2) light client support, (3) Eth1/Eth2 merge independently and unordered? [Danny] is in favour. [Mikhail] thinks it is a very good idea. Light client support in the consensus layer is very easy and can be added asap. Main downside is optics - looks like a roadmap change. "Phase 2" is basically on ice until roll-ups on data shards have been proven or not. ## Open discussion The EF announced staking community grants round to support things outside core-client development. [Aditya] Need to consider slashing database regeneration problem, especially for home stakers. This is reconstructing the DB from on-chain data in case of local disk failure. [Danny] Could be done independently of clients using a script that interrogates the standard API. [PaulH] But be aware that this might not be complete. Just use high watermark would solve the issue in most cases, but not all. [Danny] How to handle attestations made in the future? Validators should take care of clock issues and try not to do this. But this is not easy. [Dankrad] Could refuse to sign anything where the last entry in the slashing DB is older than a few hours. **Action: continue discussion elsewhere***