OP Stack Specs

This directory contains the plain english specs for Optimism, a minimal optimistic rollup protocol that maintains 1:1 compatibility with Ethereum.

Chat with us on the discussion board!

Table of Contents

Specification Contents


Specifications of new features in active development.

Design Goals

The aim is to design a protocol specification that is:

  • Fast: When sending transactions, rollup clients return reliable confirmations with low-latency. For example when swapping on Uniswap you should see that your transaction succeeds in less than 2 seconds.
  • Scalable: It should be possible to handle an enormous number of transactions per second which will enable the system to charge low fees. The gas limit should scale up to and even past the gas limit on L1.
  • Modular: Components are modular, reducing complexity and enable parallel contributions. Robust conceptual frameworks and composable atoms of software enables complex protocol design that exceeds the knowledge base of any single contributor.
  • Minimal: Rollups should be minimal by using Ethereum’s battle-tested infrastructure. An ideal optimistic rollup design should be representable as a diff against Ethereum client software.
  • Developer Driven: Designs are driven by technical contributors so developers are stakeholders. There should be a tight feedback loop between protocol design and developer use.
  • Clear and Readable: The specs are articulated well. Iterative technical feedback is key!
  • Secure: Every component of the system is incredibly secure and highly redundant. Assets are at stake, so the design must be robust to mitigate risk.
  • Decentralizable: Designed to avail the protocol of the security and censorship-resistant guarantees achieved by a decentralized system. Currently centralized components of the system should have a clear path towards decentralization. Already decentralized components of the system should be protected and preserved.