Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,6 @@ public/sitemap.xml
.env

# algolia
.algolia
.algolia
# Local Netlify folder
.netlify
2 changes: 1 addition & 1 deletion pages/app-developers/building-apps.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ You can verify your development stack configuration by interacting with it.

As you can see in the different development stacks below, the way you deploy contracts and interact with them on OP Stack chains is almost identical to the way you do it with L1 Ethereum.
The most visible difference is that you have to specify a different endpoint (of course).
The list of other differences is [here](differences).
For more detail, see the guide on [Differences between Ethereum and OP Stack Chains](/stack/differences).

* [Apeworx](https://www.apeworx.io/)
* [Brownie](https://eth-brownie.readthedocs.io/en/stable/install.html)
Expand Down
2 changes: 1 addition & 1 deletion pages/app-developers/get-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Select a network to build, test, and quickly iterate on interoperable apps.
| Local network | Devnet |
| :-------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------- |
| Build and iterate on your apps with Supersim – a local multi-chain dev environment. | Deploy your app to devnet – a testnet developmental version – to conduct large-scale testing. |
| <ul><li>RPC Endpoint: `local RPC URL` </li><li>Chain ID: `local chain ID`</li><li>[Block explorer](#)</li></ul> | <ul><li>RPC Endpoint: `devnet RPC URL`</li><li>Chain ID: `devnet chain ID`</li><li> [Block explorer](#)</li></ul> |
| <ul><li>RPC Endpoint: `local RPC URL` </li><li>Chain ID: `local chain ID`</li><li>Block explorer: TBD</li></ul> | <ul><li>RPC Endpoint: `devnet RPC URL`</li><li>Chain ID: `devnet chain ID`</li><li> Block explorer: TBD</li></ul> |
| [Supersim](tutorials/supersim) | [Devnet Docs](/stack/interop/tools/devnet) |

## Deploy your app to devnet in minutes
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import { Callout, Steps } from 'nextra/components'

# Tracing deposits and withdrawals

In this tutorial, you'll learn how to use the [viem](https://viem.sh) library to trace a [Standard Bridge](../bridging/standard-bridge) deposit or withdrawal between L1 and L2.
In this tutorial, you'll learn how to use the [viem](https://viem.sh) library to trace a [Standard Bridge](/app-developers/bridging/standard-bridge) deposit or withdrawal between L1 and L2.
You'll specifically learn how to determine the status of a deposit or withdrawal and how to retrieve the transaction receipt for the executed transaction on L1 (for withdrawals) or L2 (for deposits).

## Dependencies
Expand Down Expand Up @@ -158,4 +158,4 @@ You can use viem's functions to trace a withdrawal.

## Next steps

* Check out the tutorial on [bridging ERC-20 tokens with the Optimism SDK](./cross-dom-bridge-erc20) to learn how to create deposits and withdrawals.
* Check out the tutorial on [bridging ERC-20 tokens with the Optimism SDK](/app-developers/tutorials/bridging/cross-dom-bridge-erc20) to learn how to create deposits and withdrawals.
2 changes: 1 addition & 1 deletion pages/operators/chain-operators/features/alt-da-mode.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ You should use at least the following compatible op\* versions when running your


<Callout type="info">
If you are trying to launch an Alt-DA Mode Chain using a custom gas token, follow the contract deployment instructions in our [Custom Gas Token docs](/operators/chain-operators/features/custom-gas-token.mdx).
If you are trying to launch an Alt-DA Mode Chain using a custom gas token, follow the contract deployment instructions in our [Custom Gas Token docs](/operators/chain-operators/features/custom-gas-token).
</Callout>

<Steps>
Expand Down
1 change: 0 additions & 1 deletion pages/operators/chain-operators/self-hosted.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,6 @@ They'll help you get a head start deploying your first OP Stack chain.
| Tutorial Name | Description | Difficulty Level |
| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | ---------------- |
| [Creating Your Own L2 Rollup](tutorials/create-l2-rollup) | Learn how to spin up your own OP Stack testnet chain | 🟡 Medium |
| [Using the OP Stack Client SDK](tutorials/sdk) | Learn how to use the OP Stack Client SDK when working with native and non-native supported chains. | 🟢 Easy |
| [Adding Attributes to the Derivation Function](tutorials/adding-derivation-attributes) | Learn how to modify the derivation function for an OP Stack chain to track the amount of ETH being burned on L1. | 🟢 Easy |
| [Adding a Precompile](tutorials/adding-precompiles) | Learn how to run an EVM with a new precompile for OP Stack chain operations to speed up calculations that are not currently supported. | 🟢 Easy |
| [Modifying Predeployed Contracts](tutorials/modifying-predeploys) | Learn how to modify predeployed contracts for an OP Stack chain by upgrading the proxy. | 🟢 Easy |
Expand Down
2 changes: 1 addition & 1 deletion pages/stack/dev-node.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -183,5 +183,5 @@ Send some transactions, deploy some contracts, and see what happens!
## Next Steps

* Check out the [protocol specs](https://specs.optimism.io/) for more detail about the rollup protocol.
* If you run into any problems, please visit the [Chain Operators Troubleshooting Guide](../management/troubleshooting)
* If you run into any problems, please visit the [Chain Operators Troubleshooting Guide](/operators/chain-operators/management/troubleshooting)
or [file an issue](https://github.com/ethereum-optimism/optimism/issues) for help.
2 changes: 1 addition & 1 deletion pages/stack/fault-proofs/cannon.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ certain syscalls. The full list of instructions supported can be found [here](mi

The offchain `mips.go` and the onchain Cannon `MIPS.sol` behave similarly when it comes to executing MIPS32 R1 instructions.
In fact, they must produce **exactly the same results** given the same instruction, memory, and register state.
Consequently, the [witness data](#witness-data) is essential to reproduce the same instruction onchain and offchain.
Consequently, the witness data is essential to reproduce the same instruction onchain and offchain.
However, there are differences between the two:

1. A single instruction will be run onchain in `MIPS.sol`, whereas the offchain `mips.go` will run all MIPS instructions for all state transitions in the disputed L2 state.
Expand Down
4 changes: 2 additions & 2 deletions pages/stack/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -58,14 +58,14 @@ The OP Stack is an evolving concept.
As Optimism grows, so will the OP Stack.
Today, the Bedrock Release of the OP Stack simplifies the process of deploying new L2 Rollups.
As work on the stack continues, it should become easier to plug in and configure different modules.
As the [Superchain](explainer) begins to take shape, the OP Stack can evolve alongside it, to include the message-passing infrastructure that allows different chains to interoperate seamlessly.
As the [Superchain](/superchain/superchain-explainer) begins to take shape, the OP Stack can evolve alongside it, to include the message-passing infrastructure that allows different chains to interoperate seamlessly.
At the end of the day, the OP Stack becomes what Optimism needs.

## Dive deeper into the OP Stack

Ready to dive into the world of the OP Stack?

* If you're interested in understanding the OP Stack in more depth, start with the [Design Principles](design-principles) and [Components Overview](components).
* If you're excited to join the Superchain, launch your first Superchain-ready L2 with our [Getting Started guide](explainer) or dive directly into the OP Stack codebase to learn more.
* If you're excited to join the Superchain, launch your first [Superchain-ready L2](/operators/chain-operators/self-hosted) or dive directly into the OP Stack codebase to learn more.

The OP Stack is the next frontier for Ethereum. You're already here, so what are you waiting for?
2 changes: 1 addition & 1 deletion pages/stack/interop/cross-chain/event-reads.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -196,4 +196,4 @@ Leveraging superchain interop, we can build new types of horizontally scalable c

* As new chains are added to the superchain, this contract can be installed by anyone and immediately playable with no necessary code changes. The frontend simply needs to react the addition of a new chain.
* The concept of a "chain" can be completely abstracted away from the user. When connecting their wallet, the frontend can simply pick the chain which the user has funds on with the lowest gas fees.
* Event reading enables a new level of composability for cross-chain interactions. Imagine [contests](event-contests) contract that resolves based on the outcome of a TicTacToe game via the `GameWon` or `GameLost` event without the need for a trusted oracle, nor permission or native integration with the TicTacToe contract.
* Event reading enables a new level of composability for cross-chain interactions. Imagine [contests](/stack/interop/cross-chain/event-contests) contract that resolves based on the outcome of a TicTacToe game via the `GameWon` or `GameLost` event without the need for a trusted oracle, nor permission or native integration with the TicTacToe contract.
2 changes: 1 addition & 1 deletion pages/stack/interop/superchain-weth.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ This behavior differs from [standard ETH transfers](https://docs.base.org/base-l

Every ETH in circulation on the Superchain—excluding ETH held by `ETHLiquidity`—must be backed by ETH on L1.

This is enforced by a lockbox contract on L1, which holds all ETH bridged to [Superchain interop cluster chains](pages/stack/interop/explainer#superchain-interop-cluster) that has not yet been withdrawn.
This is enforced by a lockbox contract on L1, which holds all ETH bridged to [Superchain interop cluster chains](/stack/interop/explainer#superchain-interop-cluster) that has not yet been withdrawn.
New ETH can only be minted on L2 when it is locked on L1, and it is burned on L2 before it can be released from the lockbox.

Here is an example of how this works.
Expand Down
2 changes: 1 addition & 1 deletion pages/stack/interop/tutorials/relay-messages-cast.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ struct Identifier {
This is obviously very tedious to do by hand 😅. Here are some alternatives:

* use `supersim --interop.autorelay` - this only works on supersim, but relayers for the testnet/prod environment will be available soon!
* [use `viem` bindings/actions](relay-using-viem.md) - if you're using typescript, we have bindings available to make fetching identifiers and relaying messages easy
* [use `viem` bindings/actions](relay-messages-viem) - if you're using typescript, we have bindings available to make fetching identifiers and relaying messages easy

## Next steps

Expand Down
4 changes: 2 additions & 2 deletions pages/stack/smart-contracts.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -624,7 +624,7 @@ The `SchemaRegistry` predeploy implements the global attestation schemas for the
* **Deprecated:** no
* **Proxied:** yes

The SchemaRegistry works alongside the Ethereum Attestation Service (EAS) to enable attestations. See [Build Decentralized Identity Apps with Attestations](about-attestations) for more details on schemas and usage.
The SchemaRegistry works alongside the Ethereum Attestation Service (EAS) to enable attestations. See [Build Decentralized Identity Apps with Attestations](https://community.optimism.io/identity/about-attestations) for more details on schemas and usage.

### EAS (Ethereum Attestation Service)

Expand Down Expand Up @@ -668,7 +668,7 @@ Attestations made via EAS can be indexed through the following tools:
* [Ponder Graph](https://github.com/ethereum-attestation-service/eas-ponder-graph)
* [Open Source Indexer](https://github.com/ethereum-attestation-service/eas-indexing-service)

For more information on working with attestations, see [Build Decentralized Identity Apps with Attestations](about-attestations).
For more information on working with attestations, see [Build Decentralized Identity Apps with Attestations](https://community.optimism.io/identity/about-attestations).

### BeaconBlockRoot

Expand Down
2 changes: 1 addition & 1 deletion pages/superchain/privileged-roles.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ The L2 Proxy Admin is an address that can be used to upgrade most OP Stack chain

### Mitigations

* L2 Proxy Admin is controlled by the same L1 account as the [L1 Proxy Admin](#l1-proxy-admin). This is enabled by [address aliasing](../../connect/resources/glossary.mdx#address-aliasing).
* L2 Proxy Admin is controlled by the same L1 account as the [L1 Proxy Admin](#l1-proxy-admin). This is enabled by [address aliasing](/connect/resources/glossary#address-aliasing).

### Addresses

Expand Down
Loading