Last week, two L3s (Degen, Proof of Play) were down for ~2 days, and we now have the full post-mortem report from @conduitxyz .
Here's an overview of what happened and what we can take away from this incident:
Quick TLDR: This was an edge case caused by a combination of a large increase in on-chain activity and a misconfigured attempt to push the bounds of what a DA layer could handle.
- A change was applied to reduce txn costs due to the amount of volume both chains saw
- The change increased a batch size parameter to what was assumed to be a safe value
- Unfortunately, the data availability layer could not process the larger batches, causing the posting to fail
- Testing simulations didn't catch this issue because the simulated txns were compressed more than expected
- Because posting didn't happen, a re-org occurred
- However, the re-org was so large it corrupted an internal db, which forced Conduit to resync each chain from genesis (Block 0)
How can this be prevented in the future?
Conduit has pledged to increase their alerting and monitoring to detect issues faster. Additionally, safety harnesses will be added to the code to prevent this particular from scenario from happening. They've also stated that they will work on hard on improving chain simulations (this is a really hard problem). All of these will reduce the likelihood for future issues.
Was this the nail in the coffin for L2s and L3s?
I think this was just the start for L2s/L3s. The main driver of the problem was having too many transactions, which is a good thing to deal with in a vacuum.
However, it's extremely important that the teams running blockchains prioritize uptime and liveness (both the actual chain and RPC/nodes). Conduit is one of the most technically excellent teams in the space. I wholeheartedly believe they will get better from this incident.
These chains still seem very centralized though...
L2/L3s in their current forms are still quite centralized. Most of them operate with a single sequencer and are nearly unusable when the sequencer goes down. Improvements to both the force inclusion UX and sequencer decentralization will add more resilience to rollups.
In this particular scenario, the chain was technically always live - it just wasn't possible to submit a txn through the sequencer.
Conclusion
Building blockchains is hard. We've seen L1s, L2s, and L3s all run into scaling issues this year.
And that's a good thing.
We're pushing the boundaries of what's possible and improving the tech so we can continue to move the world on-chain. Better processes, better monitoring, and more decentralization will lead to more resilient systems. Props to Conduit for being transparent and quick to act through all of this.
A beginner's guide to Runes - the new protocol that will bring fungible tokens to Bitcoin at the halving 🧵:
To start, what are fungible tokens?
These are tokens that are not unique in nature, can be divided, and are interchangeable. They exist on other blockchains as ERC20s on EVM chains or SPL on Solana.
Examples include memecoins and governance tokens.
Historically, fungible tokens have not been possible on Bitcoin since it doesn't support smart contracts.
However, with the advent of ordinals, we saw the rise of BRC-20s, which inscribed token data in individual SATs (satoshis) and were processed by off-chain indexers.
EIP-3074 was just approved to go live in the next Ethereum hard fork.
This EIP will forever change how users interact on EVM chains, making wallet UX simpler, cheaper, and more powerful.
Here's a high level overview of EIP-3074 and how it'll change the game 🧵:
The TLDR of 3074 is that it gives EOAs (normal wallets) smart contract capabilities (like account abstraction).
This includes the ability to do single tx approvals, batch txs, wallet asset recovery, sponsored txs, and more.
Let's first talk about the issues with modern wallets.
@lightclients did a great presentation on 3074 which I will reference in this thread.
Here's a list of UX problems - they can be solved through smart contract wallets, but that would force users to migrate wallets which is bad UX and costs money.
We are now 2 days away from Ethereum's Dencun upgrade, the largest fork since the Merge.
Here's a summary of the biggest changes in Dencun and how they'll affect you 🧵:
First off, why the name "Dencun"?
Ethereum has 2 types of clients, an execution client and a consensus client. Each type has its own set of upgrade names.
On the execution side, we have the Cancun upgrade, while the client side has the Deneb upgrade.
Combined, we get Dencun.
1) EIP-4844, proto-danksharding
Sounds scary, but it's a huge step in the right direction for Ethereum scaling. This change has been in the works for 2 years, and introduces "blobs" as ways for rollups to post transaction data.
It also sets the stage for future scaling changes.
The beginner's guide to understanding Bitcoin Ordinals - what they are, how they differ from other NFTs, and why they're here to stay 🧵:
In order to understand ordinals, you first need to understand how Bitcoin works.
Bitcoin uses "unspent transaction outputs" or UTXOs to manage balances. You can think of UTXOs as batches of currency that you own.
Bitcoin transactions result in UTXOs being consumed and created.
If you own 0.5 BTC and send 0.2 to someone, you'll receive a UTXO worth 0.3 BTC and the recipient will receive a UTXO of 0.2 BTC. The txn consumes the original 0.5 BTC UTXO, which will no longer exist.
Each UTXO is made up of satoshis (sat), which is the base unit for Bitcoin.
A lot of people are wondering how @ethena_labs is able to generate a 27% yield on their "internet bond".
Is it black magic? Are they max levered? What's the catch?
To answer those questions, here's a simple explanation of where the Ethena yield comes from 🧵:
Some quick context on Ethena:
Ethena built USDe, a trust-minimized scalable stablecoin that's pegged to the US dollar. They use a combination of staked ETH and perps to maintain the peg.
Ethena also built staked USDe (sUSDe) which generates yield, similar to a traditional bond.
To understand where the 27% yield comes from, we first need to understand how USDe works.
Rather than store a bunch of dollars at a bank (like USDC) to back each token 1:1, USDe uses a combination of Ethereum collateral and perpetual contracts to maintain its peg.
Excited to launch the "Divisible NFT" standard (DN404) which aims to be a hybrid ERC20/721 token.
ERC404 took the crypto world by storm over the past few days, but it doesn't follow existing standards, is inefficient, and breaks at certain edge cases.
Here's how DN404 works 🧵:
For those that just want the code, you can find it here (with example contracts): .
Big shoutout once again to @optimizoor @0xQuit @0xjustadev @AmadiMichaels @PopPunkLLC and other devs for grinding this out with me over the weekend.github.com/Vectorized/dn4…
Reminder: this is not a project.
We released open source code that other projects can use to build hybrid tokens. We are not selling tokens or a project to anyone, so stay wary of scams.