EIP Fun Weekly #25: A Fish Fails First Holesky Launch
This week we share the inside stories on the naming and rocky first launch of the Holesky testnet, along with the usual updates across meetings, event previews, and EIP spotlights.
Hello everyone! Welcome to read the 25th issue of EIP Fun Weekly. Let's take a look at what happened in the EIP community this week.
EIP Updates
First, let's review some of the key meetings this week and the formal changes to EIPs.
AllCoreDevs Execution Layer Call #176
Takeaways:
Devnet-12 Update: Testing is ongoing on devnet-12 with most clients participating and fixing issues as they are discovered.
Next Steps: Teams are ready to begin shadow forking and then fully forking testnets to test parameters and upgrades.
Goerli Deprecation and Dencun Activation: Goerli testnet will be forked in early 2024 to test Dencun parameters before Goerli is deprecated and Dencun activates on mainnet in January.
EL Client Proposal: A proposal introduces an API to allow execution layer clients to override local builders if censorship is detected in the mempool.
Process Updates: A meta EIP was created for Dencun and a draft backfill to cover upgrades missing meta EIPs, bringing consistency.
Prague/Electra Network Upgrade: Planning kicked off through threads opened to collect community proposals like Verkle tries and data availability sampling.
Upcoming Plans: Deep dives will be planned to discuss proposals, community input through threads will be encouraged, and client teams will start reviewing proposals in January.
EIP Status Change
Here are the EIPs that have been approved for a status change asynchronously this week:
EIP-6122: Forkid checks based on timestamps
Status:Review
→Last Call
Abstract: This EIP proposes a change to the forkid calculation for nodes on the Ethereum network. The forkid is a way of identifying the chain configuration of a node and disconnecting incompatible nodes. This EIP updates the forkid calculation to use block time as well as block number. The motivation for this change is to ensure the reliability and compatibility of the network after the merge.
EIP of the Week
Then let's take a look together at the applications or developments related to EIPs this week.
EIP-3074 & EIP-4337
Account abstraction has been a focal point in the Ethereum community for some time. This week, an EIP related to account abstraction has once again sparked discussions, some even consider it as “the real MVP for intents and account abstraction”. It is EIP-3074.
What’s the difference between EIP-3074 and ERC-4337?
EIP-3074 and ERC-4337 are two proposals for improving the functionality and usability of wallets in Ethereum. They both aim to achieve account abstraction, which is the idea of making all Ethereum accounts nearly indistinguishable and allowing users to use smart contract wallets instead of externally owned accounts (EOAs).
The main difference between EIP-3074 and ERC-4337 is that EIP-3074 requires a consensus change to the Ethereum protocol, while ERC-4337 does not.
EIP-3074 proposed to add two new instructions to the Ethereum Virtual Machine (EVM) that allow smart contracts to send transactions on behalf of externally owned accounts (EOAs). These instructions are AUTH and AUTHCALL. AUTH takes an ECDSA signature and a commit value as arguments and sets a context variable authorized to the signer of the signature. AUTHCALL takes a gas limit, a value, a destination address, and a data payload as arguments and sends a call from the authorized account to the destination address with the given value and data.
What’s its potential (use cases)?
In an recent post, EIP editor and core developer @lightclient gave more introduction about EIP-3074. He clarified that EIP-3074 is not a replacement for ERC-4337, but a complement that enables EOAs to use ERC-4337 and other account abstraction features. Besides, EIP-3074 also paves the way for future EIPs, such as EIP-5003, which would allow EOAs to migrate to smart contract wallets by deploying code at their address.
EIP-3074 has many benefits for users, such as improved security, UX, and multi-chain compatibility.
Further Reading
ERC-7571: Shadow Events
Shadow events allow for richer offchain data indexing and analytics of smart contracts without incurring mainnet gas costs. They are emitted by "shadow contracts" running in an offchain "shadow fork" mirroring mainnet state.
What’s its potential (use cases)?
Shadow events enable granular data for dApp analytics, providing developers and analysts deeper insights. They also allow protocols to optimize mainnet data, reducing costs. Anyone can build custom shadow contract indexes permissionlessly.
Related EIPs
Shadow events relate to offchain compute concepts like stateless clients. They build on existing event infrastructure. Further context is in the original doc and the accompanying Ethereum Magicians thread.
Anecdote of the Week: How Much is the Fish?
We previously discussed the name of the new testnet Holešky. In the latest edition of PEEPanEIP, Afri, Pari, Barnabas, Philipp, four core developers focused on testnet development, shared more interesting details related to Holešky.
The Ethos of Naming in Ethereum
The team explained that the naming of the Holesky testnet actually came from a hackathon project named Holešovice last year at ETHPrague. The hackathon team kept working on the testnet initiative until their work cycle ended, though it remained a private testnet.
When discussing ideas for a new public testnet, that team suggested reusing the name Holešovice. However, the Ethereum team decided to go with a shortened version - Holešky. This created some friendly tension and humor in the community around struggling to pronounce the name.
Parithosh jokingly leaned into the idea that Ethereum testnets should purposefully have hard to pronounce names. He said they should "keep the ethos" and make it a requirement that no one is able to properly say the testnet names. He recollected that he only learned how to pronounce the name of the Ropsten testnet when they were in the process of shutting it down.
A Fish Failed the Initial Holesky Launch
Last September, they were preparing to launch Holesky.
The big day arrived on September 15th. The team initialized the Holesky genesis block and turned on their validator nodes, waiting for blocks to start propagating across the network. But...nothing happened. No blocks were produced.
After some digging, they discovered the culprit - one of the devs had added an extra bit of data to the genesis file as an inside joke. This data translated to "how much is the fish?".
The team considered trying to salvage the initial launch, but coordinating fixes with the 20-30 node operators was deemed too difficult. So 2 weeks later, they simply re-generated the official genesis config and launched again. According to Barnabas in the video, Holesky is doing very well, and the majority of the network is healthy, blocks are coming in, validors are attesting to their blocks, and everyone is able to participate in the network.
EIP Events
EIP Editing Office Hour Meeting #29
Date & Time - December 12, 2023, at 15:00 UTC
For details about the meeting, you can visit this GitHub issue.
EIPIP Meeting #96
Date & Time - December 13, 2023, at 16:00 UTC
For details about the meeting, you can visit this GitHub issue.
Tokenbound Weekly Dev Call (ERC-6551)
Date & Time - December 14, 2023, at 15:00 UTC
For meeting message and more detail, you may join the official dev working group here.
AllCoreDevs Consensus Layer Meeting #124
Date & Time - December 14, 2023, at 14:00 UTC
For details about the meeting, you can visit this GitHub issue.
That's all for this week from EIP Fun. EIP Fun is created and supported by LXDAO and PlanckerDAO. We aim to serve as the “layer 2” of the EIP ecosystem, simplifying and accelerating the adoption of EIPs.
Please inform us if you have any additional suggestions or feedback. EIP Fun is a fully open-source and community-driven public good! Donate to us here.
Join the Telegram of EIP Fun: https://t.me/eipfun for more discussions and build connections with EIP buidlers. Follow our Twitter: @EIPFun.