--- tags: eth2devs description: Notes from the regular Eth2 implementers call image: https://benjaminion.xyz/f/favicon-96x96.png --- # Eth2 Implementers’ Call #36 - 2020-03-26 [Quick contemporaneous notes by Ben Edgington] Agenda: https://github.com/ethereum/eth2.0-pm/issues/135 Livestream: https://www.youtube.com/watch?v=Vn1oHH55yPk ## Testing and Release updates Release planned for today: networking updates plus two bug fixes (one in tests, one critical typo in the spec). May split the attestation deltas function into smaller units for more granular testing. This release will be the interop target. Beacon Fuzz: Java (Teku) integration just about done. Revamping the architecture; may rewrite differential fuzzer in Rust. Plan CLI option to swap between fuzzing engines. Improving coverage reporting. Patrick is joining the project. Slow but steady progress on network testing. Rumor continues to evolve. Python wrapper Pyrum provides an interface. Have synced 10,000 blocks of Lighthouse testnet as a demo. ## Client updates **Teku** Optimised Remerklable so epoch transition is 4x faster. Now 300ms. Implemented pruned finalised state mode. Replacing RocksDB with MapDB. Discv5 working well on Lighthouse testnet. Splitting out validator client. REST interface is going well; looking forward to standardisation of this interface. Working on Eth2Signer as a standalone signing service. **Prysm** Working on v0.11. Dynamic attestation subnets mostly complete; now debugging. Slasher is running in production and detected a double vote last week. Continuous fuzz testing now in CI pipeline. Radical improvements on DB configuration, with hot and cold state access. Separated out initial sync block fetching from block processing. **Nimbus** Continued work on Discv5. Interopping well with Go implementation and Lighthouse. Completely dropped Go daemon for libp2p. Launched testnet, but some stability issues. Up to date with v0.11, but pending work on networking such as Snappy. Have integrated RPC client from Eth1 into beacon node, and started supporting Eth2 methods. Fixing scripts in multinet repo. Some work on syncing: working in libp2p testnet, but algorithm needs to be smarter and load-balance requests. Upgrading compiler to Nim 1.2. **Lodestar** Finishing up Discv5 implementation. Two-node local testnet: fixing some issues with gossip. Working now on spec updates. Updates to simpleserialize.com coming due to new external contributor. **Lighthouse** Implementing spec v0.11. Attestation aggregation networking has been the big chunk of work. Improved peer discovery in Discv5. Found the spec bug mentioned above! Improving the node--validator API. Working with Afri on testnet deployment tools. Did more optimisation on batch verification of blocks. **Trinity** Similar to others. Separating out validator client. Node stability work and v0.11 updates, and infrastructure work for testnets. [Danny] EF will be relaunching the Ph0 spec bug bounty programme. ## Research Updates **Musab (Runtime Verification)** Generalising Casper model to support dynamic validators. Using the model from the Gasper paper. Working to show the bounds given by the theorems in that paper. There is a model in K of the state transition: this does both fixed and dynamic validator sets, and includes some partial proofs - working on this as well to show that the state-transition function satisfies accountable safety and plausible liveness. Eventual goal is to show that the implementation itself satsifies these things. **TX/RX (PegaSys)** Some realignment on goals in view of the lower emphasis on EEs in the Eth2 roadmap. Jonny will be working on a network monitor. Mikhail published Eth1-Eth2 [finality gadget research](https://ethresear.ch/t/miners-vote-back/7129). Conclusion is that lag to finality makes this infeasible. Will switch to focus on Eth1-Eth2 merge. **Vitalik** Polynomial commitments for state roots. Presented yesterday at ZK study club with an improved scheme that is more viable (no sorting required). ## Multiclient testnet discussion Goal is to have one or more joint testnets. Welcome to Afri who is volunteering to help coordinate multiclient testnets. [Afri] Has been recently investigating the tooling around creating testnets for each of the clients. Looking to create persistent testnets. Wants to learn the status of each client (spec version, discovery capability, etc.). Contact `@q9f` on Discord. [Danny] We've done surveys in the past; may be worth doing again. Need a couple of weeks to get everyone up to date with the current specs. Want to freeze the state-transition logic at this spec version, but networking continues to evolve, and some changes there have been breaking changes. Target networking freeze "soon". [Carl] Would like to get latest BLS IETF standard draft implemented before testnets. BLS specs v2 is unchanged. Hash to curve v6 changes the field point derivation. [Danny] We'll target this for v0.12, and make it the only change in that version. Our intention is not to let the IETF standard block us; if necessary we will collaborate with other projects to agree a standard version irrespective of the IETF process. ## Networking Had a call yesterday. [Notes](https://hackmd.io/@benjaminion/rkEn7C_88). ## Spec discussion Phase 1 - Hsiao-Wei has been doing a deep review. Plan to release Ph1 test vectors in due course and get teams prototyping. There will be bugs - please find them! ## Open discussion Danny is super-pleased with the consolidation of Eth1x/Eth2 conversations into a single Discord channel. Maybe we should do a "virtual interop". Spend time hacking together on things. Is this feasible? **Action: Danny to propose some dates**. Next call most likely in 2 weeks. * * * # Chat highlights From danny to Everyone: 02:03 PM : https://github.com/ethereum/eth2.0-pm/issues/135 From Joseph Delong to Everyone: 02:30 PM : Mikhail's research on finality gadget and Eth1 <> Eth2 bridge https://ethresear.ch/t/miners-vote-back/7129 From Me to Everyone: 02:35 PM : https://hackmd.io/@benjaminion/rkEn7C_88 Networking call notes^^