We had our last @ethereum#AllCoreDevs of 2021 today π! This was IMO one of the most interesting calls of the year, and recommend people interested in the tradeoffs of Ethereum governance watch the entire thing π₯
@ethereum First on the call, we discussed the Arrow Glacier upgrade from yesterday. Things went smoothly! Two miners, @HuobiGlobal and @OKEx hadn't upgraded. Now, it seems they have, as they've mined blocks on the main chain:
@ethereum@HuobiGlobal@OKEx Then, we discussed progress on the Kintsugi π΅ merge devnets. The 4th devnet, devnet-3, was launched this week. While there was chaos at first, it's now stable and even @vdWijden's fuzzer didn't take it down!
@ethereum@HuobiGlobal@OKEx@vdWijden There were also some issues around CL clients proposing empty blocks right after the merge that we'll be looking into. That said, we're still on track to have a longer lived devnet out next week! It will stay up throughout the holidays to give people/teams time to experiment!
@ethereum@HuobiGlobal@OKEx@vdWijden Once it's live, we'll also attempt to shadow-fork Goerli and replay transactions from that testnet on it π»
@ethereum@HuobiGlobal@OKEx@vdWijden Devnets aside, it seems the main things to get done for the merge are finalizing the spec + implementations for optimistic sync, resolving some fork-choice rule issues for competing terminal PoW blocks, adding a EL <> CL authentication mechanism, and a lot of testing!
TL;DR: it proposes to reduce rollup txn costs, at the cost of more chain history growth. It was proposed to potentially deploy this change before The Merge.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2 Again, this is the part of the call I strongly recommend people watch for the full context/deliberations. This will only be a brief summary. Starts at ~18 min in the recording π
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2 First, on the previous ACD, we had discussed how 4488 could make creating an optimal block more complicated because it makes block creation go from a 1-D (gas) to 2-D (gas, calldata cap) optimization problem.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs He finds that, with a calldata stipend of >164 bytes, the backlog strategy, which is simple to implement, gives blocks that are >99% as profitable as an optimal sort. This means 4488 wouldn't put block producers who use "out of the box" algorithms at a significant disadvantage.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum First, there were concerns about the second-order effects of having transactions with a lot of CALLDATA having to compete with rollups: it's unclear how it would impact the cost of contract deployments, for example.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum Second, the EIP would increase the rate at which Ethereum's historical data grows. It does not try and hide this, and says something like EIP-4444 should be implemented to address this. That said, 4444 is not trivial to implement and is still in early stages of development.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum Third, there are some concerns that rollups today aren't fully trustless: most of them have a small operator set, and/or haven't activated fraud proofs. There's a desire to want to see rollups be more robust before their usage is subsidized further.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum For the increase in chain history, it's worth noting that something like 4444 will need to happen π regardless. Also, with the move to PoS, guarantees about historical data are also going to start to change.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum After discussing the EIP itself, we moved to the scheduling of it: while it's clear that fees on Ethereum today are a major issue, the move to proof of stake is also hugely significant, as well as being something we'd already committed to prioritizing.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum That said, everyone agreed that 4488 (and 4444!) are important and we should prioritize working on them as soon as possible. Also, that we should involve the broader community into these discussions about what should come first.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum Client teams, and AllCoreDevs, are best suited to discuss the technical tradeoffs of proposals, but for things like "sharding/4488 vs. withdrawals", it isn't necessarily the group with the most insights into what the community wants.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum Lastly, with the call nearing completion, we briefly touched on the subject of historical data guarantees post-merge. 4444 covers this a bit, but over time, it's unsustainable for every node to serve the entire Ethereum history over the p2p network.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum PoS already takes a small step in that direction with weak subjectivity checkpoints, but in general the idea that a node can get any historical data from its peer beyond a certain time won't be sustainable long term.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum To transition away from this (e.g. with EIP-4444), we need to develop better mechanisms for historical data retrieval + distribution, but it will also require some applications to change the assumptions they make about always being able to access that data.
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum This seems like the next "big conversation" we'll need to have once we've moved to proof of stake! If you are an application developer, it's worth starting to think about how things change if you can't get historical data over p2p (but can import it from another source) π§
@ethereum@HuobiGlobal@OKEx@vdWijden@mkalinin2@adietrichs@go_ethereum And that was it! Last call of 2021 wrapped up. One final comment I made at the end was that this call was a really good instance of civil disagreements on ACD and it was nice to see everyone be respectful despite their strong opinions π
Lots of thoughts on the conversations this weekend, and while I think there is a charitable interpretation to some of the criticisms, let me start by saying it's pretty rich to criticize people for "jerking off and watching the burn" when well....
Obviously, narratives get distilled on Twitter, but, to say the least, i makes it harder to educate folks about the subtleties (e.g. willeip1559lowergasprices.org) when this is what's pushed.
Similarly, no one ever dropped the "1.x roadmap": it was literally the last Ethereum event that happened pre-COVID and work on its various aspects is progressing (not to mention 1559 was part of it...)
@ethereum First on the call, we recap'ed the #amphoraπΊ interop from last week. Rather than rehashing the recap, here's the blog post covering the event π:
@ethereum A couple updates from the call that aren't in the blog post: Pithos, the new devnet which was launched yesterday, is now running with 3 consensus clients + geth. Besu + Nethermind will be added soon. Explorer: pithos-explorer.ethdevops.io
@ethereum First up, @nethermindeth had an announcement urging people to upgrade to v1.11.2 to mitigate a potential PoW vulnerability. More details here:
Exactly one year later, I'm happy to come back to this thread and say we're sending back the extra funds from the @gitcoin grant back to the CLR match pool π
@gitcoin When we started to work on EIP-1559, we raised a ~90,000$ Gitcoin grant which, at the time, was the largest ever in a single round on Gitcoin. gitcoin.co/grants/946/proβ¦
@gitcoin We always meant for those funds to be used for common goods, and from Day 1 committed to sending any excess funds back to CLR matching.
FYI, this one is a bit less "recap-able" because most of the call was going over merge docs β. Recording strongly recommended if you care about the Merge!
@ethereum@mkalinin2 We had already covered part of it in a Merge call last week () and continued going over the details. Mikhail went over some of the comments on the doc and explained the most recent changes.