Key Highlights
- Chris Markou’s experience maintaining web3.js during Ethereum’s 2021 London hard fork shaped his concerns about protocol upgrades.
- A previously undetected MetaMask invariant affected nearly every application relying on web3.js after the EIP-1559 upgrade.
- Markou argues that testnets cannot reproduce every real-world interaction between applications, wallets, libraries, and smart contracts.
Ethereum’s London Hard Fork Exposed Hidden Upgrade Risks
Chris Markou’s credibility on Ethereum upgrade risks comes from his direct experience maintaining web3.js during the EIP-1559 upgrade, which was deployed as part of the London hard fork in August 2021.
web3.js is a JavaScript library that enables applications to communicate with the Ethereum blockchain. It acts as an intermediary between a website and the network. A hard fork changes Ethereum’s core rules, and once the network adopts those rules, every node must follow them. Software built around older assumptions can therefore become incompatible with the updated environment.
According to Markou, an update connected to the London hard fork produced consequences that developers had not anticipated. Nearly every application relying on web3.js was affected by an undetected invariant involving MetaMask. In software development, an invariant is a condition that developers expect to remain consistently true. If that assumption changes without being identified, applications built on top of it can behave unpredictably.
Markou described Ethereum as an “absolute monolithic beast.” The characterization reflects the scale and interconnectedness of the Ethereum ecosystem, where a seemingly limited change can create effects across applications, wallets, libraries, and smart contracts that are difficult to predict in advance.
Elon Musk Dismisses $120 Billion Anthropic Exit Talk as SpaceX Plans $74 Billion AI Expansion
Why Ethereum Testnets Cannot Replicate Every Mainnet Scenario
Testnets provide practice environments where developers can evaluate blockchain changes without putting real funds at risk. They are intended to function as rehearsals before an upgrade or application is deployed on Ethereum’s mainnet.
Markou acknowledged that testnets are useful, but argued that they cannot cover every edge case that may emerge in live applications. Mainnet users interact with wallets, libraries, and other contracts in combinations that no individual test environment can completely reproduce.
The MetaMask invariant that affected web3.js users after the 2021 upgrade illustrates this limitation. Even when a change has been tested in controlled conditions, the wider ecosystem may contain dependencies and interaction patterns that only become visible when applications operate at mainnet scale.
Chris Markou’s Background and Sprinter’s Focus
Markou previously co-founded ChainSafe Systems, the company that maintained web3.js. Sprinter emerged from ChainSafe, and Markou now serves as the company’s chief executive officer.
Sprinter raised $5.2 million in a seed round in November 2025. The company is focused on cross-chain credit and infrastructure, promoting an approach it calls “solving-as-a-service.” Sprinter also plans to introduce a native governance token called SPRINT.
The discussion did not result in any new Ethereum upgrade, protocol change, or Sprinter announcement. Its focus was on lessons from past infrastructure failures and the difficulty of anticipating how changes can affect a complex blockchain ecosystem.
Why This Matters
Ethereum upgrades can affect a broad network of interconnected software, even when the underlying change is designed to improve the protocol. The web3.js incident shows why testing must account not only for the blockchain’s core rules, but also for the behavior of wallets, developer libraries, applications, and smart contracts interacting with one another.
For developers and infrastructure companies, the episode highlights the limits of relying solely on testnets as a guarantee of upgrade safety. No new protocol changes were announced in the discussion, but the experience remains relevant to how future Ethereum upgrades and cross-chain systems are evaluated.
Frequently Asked Questions
What happened to web3.js during Ethereum’s London hard fork?
An update associated with the EIP-1559 upgrade affected nearly every application relying on web3.js. According to Chris Markou, an undetected invariant involving MetaMask was responsible.
Why are Ethereum testnets not a complete safety net?
Testnets cannot reproduce every combination of interactions found on mainnet, including interactions among applications, wallets, libraries, and smart contracts.
What does Sprinter do?
Sprinter focuses on cross-chain credit and infrastructure. The company raised $5.2 million in seed funding in November 2025 and plans to launch the SPRINT governance token.




