[Quick contemporaneous notes by Ben Edgington; fka "Eth2 Implementers' Call"]
Agenda: https://github.com/ethereum/pm/issues/688
Livestream: https://www.youtube.com/watch?v=UazJO0fQ3Ho
The last call of 2022.
Goat Star is a spec release made yesterday, with new test vectors.
Broader than withdrawals only (timestamp-based forking, warm coinbase, push0, etc.). Testnet spec.
What EngineAPI updates do we want to include? [Lightclient] is happy to make an EngineAPI spec release. [Pari] Would that include PR#314 (GetPayloadv2 and block value return)? Exec clients could (optionally) mock the block value to 0 for now to reduce their work. No objections.
PR#146, PR#218 - rough consensus is that CL teams don't need these right now.
Do we want to include the forkID logic for this testnet? Nice to have, but not a required dependency.
Validator set size? Withdrawals sweep limit implies that we should have more than 16k validators to test that properly. Similar to Kintsugi (~100k validators, 40-50 nodes) is good. [Danny] Suggest doing a leak at some point to make all validators <32 ETH so that a maximum sweep occurs.
Plan to set all validators to 0x00
creds at genesis, and selectively test upgrading to 0x01
.
BLS credential change submissions: array vs single in the Beacon API? Is the array API implemented in clients? Lodestar and Teku support this.
Timeline: is pre-Christmas ok to start the testnet? No objections. All clients seem confident of being ready (or nobody said otherwise).
[Jacek] Complexity is minimal. Requires changes to beacon state, but the logic changes are very simple.
Saves you from having to compute the state roots and run the state transition function (due to empty slots) when you have 8000 blocks you want to verify belong to the state. Great for archive nodes. Also for the Portal network. Note that state growth will double from 10KB/yr to 20KB/yr.
Adds ~2 days overhead for test generation.
Action: will slate for Jan testnets, and Capella in a week's time unless any teams object between now and then.
[Etan] Slide
Two fields are encoded differently between the EL block header and the CL executionPayloadHeader
. The former uses a hexary trie root, the latter SSZ. Use case for unifying these is for light clients/wallets, otherwise they need to download both, which doubles the work.
Could extend EngineAPI to get these quantities from the EL for storage in the CL. Or could change the EL so that it stores SSZ for these fields. There seems to be a move away from hexary tries and RLP in general.
Changing the EL is probably a deeper change. Need a broader conversation that might not be feasible before Capella.
Discussion is happening on PR#3078. Need to discuss with EL people, which won't happen before January.
Generally agreed at the last ACD to put 4844 in a follow-on upgrade from Shanghai/Capella.
Need a star name! Proto suggests Dubhe (the Great Bear). [What's the canonical pronunciation???]
[HWW] Might need better overall names for describing upgrades to the media. Unified names. [Marius] Drop the EL names, and go with the CL naming scheme.
Action: participate in the Magicians' discussion thread. Hsiao-Wei to coordinate.
Consensus seems to be that, beyond the pruning window we assume that data_is_available
is false
(unless you already validated its availability yourself). Nodes will not need to store older blobs in the case of long periods of non-finality.
[Sean] What would recovery look like in this edge case? [Micah] Do clients treat their checkpoint sync state as functionally final, ie. that they would never reorg it? [Jacek] Nimbus does, and would never revert the checkpoint. Also treats the checkpoint immediately as the finalised state in the API. Similar to a genesis state.
[Danny] Action: would like to get this merged to close the edge case. We can discuss in January if the engineering effort looks terrible.
The PR will be merged soon. Has been discussed on the 4844 calls.
Nothing.
No ACD next week or AC/DC (ACD Consensus) the following week. Next ACD Jan 5; next AC/DC on Jan 12.
Look out for news from Pari about the testnet next week.