You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: pages/app-developers/tools/connect/rpc-providers.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -126,7 +126,7 @@ GetBlock offers Pay-as-You-Go flexible pricing based on actual usage, suitable f
126
126
127
127
### Description and pricing
128
128
129
-
[QuickNode](https://www.quicknode.com/) offers access to hosted OP Mainnet (and testnet) nodes for free.
129
+
[QuickNode](https://www.quicknode.com/chains/optimism) offers access to hosted OP Mainnet (and testnet) nodes for free.
130
130
With the option to upgrade to a premium plan for additional features, we allow you to focus solely on optimizing your application while we manage the complex infrastructure.
Copy file name to clipboardExpand all lines: pages/app-developers/tutorials/bridging/standard-bridge-standard-token.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -83,7 +83,7 @@ Set your L1 ERC-20 token address as an environment variable with the `export` co
83
83
84
84
{<h3>Deploy your L2 ERC-20 token</h3>}
85
85
86
-
You can now deploy our L2 ERC-20 token using the [`OptimismMintableERC20Factory`](https://github.com/ethereum-optimism/optimism/blob/develop/packages/contracts-bedrock/src/universal/OptimismMintableERC20Factory.sol).
86
+
You can now deploy your L2 ERC-20 token using the [`OptimismMintableERC20Factory`](https://github.com/ethereum-optimism/optimism/blob/develop/packages/contracts-bedrock/src/universal/OptimismMintableERC20Factory.sol).
87
87
Use the `cast` command to trigger the deployment function on the factory contract.
88
88
This example command creates a token with the name "My Standard Demo Token" and the symbol "L2TKN".
89
89
The resulting L2 ERC-20 token address is printed to the console.
Copy file name to clipboardExpand all lines: pages/connect/contribute/stack-contribute.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,7 +29,7 @@ To make your first contribution to the codebase, check out the [open issues](htt
29
29
30
30
<Callouttype="warning">
31
31
Only the software components included within the current release of the OP Stack codebase are considered in the scope of the OP Stack.
32
-
Any usage of the OP Stack outside of the official, intended capabilities of the current release are considered [OP Stack Hacks](https://github.com/ethereum-optimism/developers/tree/main/hacks) — unofficial modifications that are useful for experimentation but could have unforeseen results, such as security vulnerabilities, and are likely to cause your chain to no longer be interoperable with the [Optimism Superchain](https://app.optimism.io/superchain/).
32
+
Any usage of the OP Stack outside of the official, intended capabilities of the current release is considered [OP Stack Hacks](https://github.com/ethereum-optimism/developers/tree/main/hacks) — unofficial modifications that are useful for experimentation but could have unforeseen results, such as security vulnerabilities, and are likely to cause your chain to no longer be interoperable with the [Optimism Superchain](https://app.optimism.io/superchain/).
33
33
Developer support for OP Stack Hacks is limited — when in doubt, stick to the capabilities of the current release!
Copy file name to clipboardExpand all lines: pages/notices/holocene-changes.mdx
-1Lines changed: 0 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,7 +23,6 @@ If you experience difficulty at any stage of this process, please reach out to [
23
23
The Holocene upgrade for the Mainnet Superchain is scheduled for **Thu 9 Jan 2025 18:00:01 UTC**, [governance approval](https://vote.optimism.io/proposals/20127877429053636874064552098716749508236019236440427814457915785398876262515).
24
24
25
25
The Holocene upgrade for the Soneium Mainnet will be activated at **Mon Feb 03 at 09:00:00 UTC** (`1738573200`).
26
-
The Holocene upgrade for the Mainnet Superchain is scheduled for **Thu 9 Jan 2025 18:00:01 UTC**, [governance approval](https://vote.optimism.io/proposals/20127877429053636874064552098716749508236019236440427814457915785398876262515).
Copy file name to clipboardExpand all lines: pages/notices/pectra-changes.mdx
+27-19Lines changed: 27 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -44,7 +44,6 @@ Pectra contains a variety of EIPs, some of which apply to the OP Stack; others d
44
44
45
45
Node operators will need to upgrade to the respective releases before the activation dates.These following steps are necessary for every node operator:
46
46
47
-
48
47
### Update to the latest release
49
48
50
49
<Callouttype="warning">
@@ -53,42 +52,49 @@ Node operators will need to upgrade to the respective releases before the activa
53
52
54
53
*`op-node` at [`v1.11.0`](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.11.0)
55
54
*`op-geth` at [`v1.101500.0`](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101500.0)
56
-
*`op-batcher` at [`v1.11.1`](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.11.1)
57
55
*`op-reth` at [`v1.1.5`](https://github.com/paradigmxyz/reth/releases/tag/v1.1.5) also includes L1 Pectra support.
58
56
59
57
## For chain operators
60
58
61
-
The following sections are how chain operators can prepare the first part of the OP Stack's Pectra L1 support. This ensures OP Stack chains do not break when the L1 Pectra upgrade activates.
59
+
The following sections are how chain operators can prepare the first part of the OP Stack's Pectra L1 support. This ensures OP Stack chains do not break when the L1 Pectra upgrade activates. Every chain operator will need to:
60
+
61
+
<Steps>
62
+
63
+
### Update your node binaries
64
+
65
+
Follow the guidance outlined in the [Node Operator section](#update-to-the-latest-release) to update your nodes to the latest releases.
66
+
67
+
### Update your batcher
68
+
69
+
Then update your batcher to [`op-batcher/v1.11.1`](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.11.1).
70
+
71
+
</Steps>
62
72
63
-
Every chain operator will need to first follow the guidance outlined in the [Node Operator section](#update-to-the-latest-release) to update your nodes to the latest releases.
64
73
65
74
## For fault proof enabled chains
66
75
67
76
<Callouttype="info">
68
77
The following instructions assume your chain is on the latest contract release `op-contracts/v1.8.0` and have Holocene activated.
69
78
</Callout>
70
-
71
-
The following steps are to update your absolute prestate on your chain. **This is absolutely necessary for chains running permissionless fault proofs.** For chains running the Fault Proof System with permissioned games you can skip this section because games will not be played out and the absolute prestate is not used.
79
+
80
+
The following steps are to update your absolute prestate with new dispute game contracts. **This is absolutely necessary for chains running permissionless fault proofs.** For chains running the Fault Proof System with permissioned games you can skip this section because games will not be played out and the absolute prestate is not used.
72
81
73
82
The Pectra upgrade changes the derivation rules, permissionless fault proof chains need to upgrade the `op-program` version used in the fault proof system to support these changes. The `op-program` version used is specified via the `faultGameAbsolutePrestate` setting, deployed as part of `FaultDisputeGame` and `PermissionedDisputeGame` contracts.
74
83
75
84
<Steps>
76
-
### Make sure the Superchain Registry is up to date
77
85
78
-
The new `op-program` release will pull the configurations from the [superchain-registry](https://github.com/ethereum-optimism/superchain-registry). This is important because the op-challenger uses the `op-program` and it needs to be aware of your chain's configuration. If your chain that not in the superchain-registry, please [open a PR to add your chain to the superchain-registry](https://github.com/ethereum-optimism/superchain-registry/blob/main/docs/ops.md#adding-a-chain).
86
+
### Update your `op-challenger`
79
87
80
-
### Verify the new absolute prestate
88
+
Update your `op-challenger` binary to [`op-challenger/v1.3.1`](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.3.1).
81
89
82
-
<Callouttype="info">
83
-
The following is based on the [op-program/v1.5.0-rc.2](https://github.com/ethereum-optimism/optimism/tree/op-program/v1.5.0-rc.2) which will be included in the `op-challenger` release.
84
-
</Callout>
90
+
### Verify the new absolute prestate
85
91
86
-
You can use this new absolute prestate (`0x035ac388b5cb22acf52a2063cfde108d09b1888655d21f02f595f9c3ea6cbdcd`) for the following chains:
92
+
The absolute prestate is generated with the [op-program/v1.5.0-rc.2](https://github.com/ethereum-optimism/optimism/tree/op-program/v1.5.0-rc.2). You can use this new absolute prestate (`0x035ac388b5cb22acf52a2063cfde108d09b1888655d21f02f595f9c3ea6cbdcd`) for the following chains:
You can verify this absolute prestate by running the following [command](https://github.com/ethereum-optimism/optimism/blob/3f18df1c8a502136bbe33f10ed1e29a26cd4678a/Makefile#L129-L131) in the root of the monorepo:
97
+
You can verify this absolute prestate by running the following [command](https://github.com/ethereum-optimism/optimism/blob/3f18df1c8a502136bbe33f10ed1e29a26cd4678a/Makefile#L129-L131) in the root of the monorepo on the `op-program/v1.5.0-rc.2` tag:
92
98
93
99
```shell
94
100
make reproducible-prestate
@@ -105,6 +111,12 @@ The Pectra upgrade changes the derivation rules, permissionless fault proof chai
During the previous step, you also generated the preimage of the absolute prestate, which is basically the op-program serialized into a binary file. You'll find that new file at `optimism/op-program/bin/prestate.bin.gz`. Rename that file to have the absolute prestate hash as the filename so it looks like `0x035ac388b5cb22acf52a2063cfde108d09b1888655d21f02f595f9c3ea6cbdcd.bin.gz`.
117
+
118
+
Upload that file to where you're storing your other absolute preimage files. This should be the location where you're pointing your `--cannon-prestates-url` at. The `op-challenger` will grab this file and use it when it needs to challenge games.
119
+
108
120
### Deploy new dispute game contracts
109
121
110
122
You will then take the absolute prestate and deploy new `FaultDisputeGame` and `PermissionedDisputeGame` contracts with that value. You can reuse the [Holocene script](https://github.com/ethereum-optimism/optimism/tree/op-contracts/v1.8.0-rc.4/packages/contracts-bedrock/scripts/upgrades/holocene) to deploy the new contracts. The only change you will need to make is to update the `absolutePrestate` value in your [deploy-config](https://github.com/ethereum-optimism/optimism/blob/2073f4059bd806af3e8b76b820aa3fa0b42016d0/packages/contracts-bedrock/scripts/upgrades/holocene/README.md?plain=1#L53-L54). Alternatively we will be releasing an `OPPrestateUpdater` that can be used to deploy the new contracts.
@@ -113,13 +125,9 @@ The Pectra upgrade changes the derivation rules, permissionless fault proof chai
113
125
114
126
You will then need to update the `DisputeGameFactory` to point to the new `FaultDisputeGame` and `PermissionedDisputeGame` contracts by calling `DisputeGameFactory.setImplementation`. You can utilize this [template](https://github.com/ethereum-optimism/superchain-ops/tree/main/tasks/sep/fp-recovery/005-set-game-implementation) to generate the transaction and validation script for this step. Before executing, you will need to update your op-challenger.
115
127
116
-
### Update your op-challenger
117
-
118
-
Update your `op-challenger` to the new release version that will be provided soon and configure it to use the new absolute prestate.
119
-
120
128
### Execute the upgrade
121
129
122
-
Once your challenger is ready, you can execute the "Set Dispute Game Implementation" transaction. Please simulate and validate that the expected output prior to executing the transaction.
130
+
Once your `op-challenger` is ready with the new preimage, you can execute the "Set Dispute Game Implementation" transaction. Please simulate and validate that the expected output prior to executing the transaction.
Copy file name to clipboardExpand all lines: pages/stack/interop/tutorials/event-reads.mdx
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,7 +34,7 @@ This contract relies on a **CREATE2** deployment to ensure a consistent address
34
34
<Steps>
35
35
### Intent to play
36
36
37
-
A game is uniquely identified by the chain it was started from with a unqiue nonce. This identifier is included in all event fields such that each player can uniquely reference it locally.
37
+
A game is uniquely identified by the chain it was started from with a unique nonce. This identifier is included in all event fields such that each player can uniquely reference it locally.
38
38
39
39
To start a game, a player invokes `newGame` which broadcasts a `NewGame` event that any opponent **on any chain** can react to.
40
40
@@ -86,7 +86,7 @@ This contract relies on a **CREATE2** deployment to ensure a consistent address
86
86
87
87
### Starting the game
88
88
89
-
As `AcceptedGame` events are emmited, the player must pick one opponent to play. The opponent's `AcceptedGame` event is used to instantiate the game and play the starting move via the `MovePlayed` event.
89
+
As `AcceptedGame` events are emitted, the player must pick one opponent to play. The opponent's `AcceptedGame` event is used to instantiate the game and play the starting move via the `MovePlayed` event.
0 commit comments