Skip to content

Commit e85b224

Browse files
committed
updated the instruction
1 parent 507563f commit e85b224

File tree

1 file changed

+16
-31
lines changed

1 file changed

+16
-31
lines changed

pages/operators/chain-operators/tutorials/absolute-prestate.mdx

Lines changed: 16 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -77,37 +77,35 @@ make op-program
7777
Generate the prestate by running the op-program binary directly:
7878

7979
```bash
80-
./op-program/bin/op-program prestate
81-
80+
cd op-program
81+
make reproducible-prestate
82+
cd ..
8283
```
8384

84-
For older versions (prior to Upgrade 14), you might use:
85+
The output should look like this:
8586

8687
```bash
87-
cd op-program
88-
make reproducible-prestate
89-
cd ..
9088

91-
```
89+
-------------------- Production Prestates --------------------
9290

93-
<Callout type="note">
94-
The exact command may vary based on the specific version you're using. Check the available commands with `./op-program/bin/op-program --help` or `make -C op-program help`.
95-
</Callout>
91+
Cannon64 Absolute prestate hash:
92+
0x03eb07101fbdeaf3f04d9fb76526362c1eea2824e4c6e970bdb19675b72e4fc8
9693

97-
### Verify the generated prestate
94+
-------------------- Experimental Prestates --------------------
9895

99-
Verify the absolute prestate by checking the hash:
96+
CannonInterop Absolute prestate hash:
97+
0x03fc3b4d091527d53f1ff369ea8ed65e5e17cc7fc98ebf75380238151cdc949c
10098

101-
```bash
102-
./op-program/bin/op-program --version
99+
Cannon64Next Absolute prestate hash:
100+
0x03eb07101fbdeaf3f04d9fb76526362c1eea2824e4c6e970bdb19675b72e4fc8
103101

104102
```
105103

106104
The output should display three prestate hashes:
107105

108-
* Cannon absolute prestate hash (legacy)
109-
* Cannon64 absolute prestate hash (64-bit version)
110-
* CannonInterop absolute prestate hash (for interoperability)
106+
* `Cannon64`: The current production absolute prestate hash for the 64-bit version of Cannon
107+
* `CannonInterop`: The absolute prestate hash used for interoperability
108+
* `Cannon64Next`: The next state version for Cannon with in-progress features (like Go 1.24 support)
111109

112110
For permissionless fault proofs, you'll primarily use the Cannon64 absolute prestate hash.
113111

@@ -127,24 +125,16 @@ Verify the absolute prestate by checking the hash:
127125

128126
The Superchain registry maintains official absolute prestate hashes for chains that are part of the registry.
129127
These prestates include the configurations of all chains in the Superchain registry.
130-
131-
<Callout type="note">
132-
For chains listed in the Superchain registry, you should use the official prestate hashes rather than generating your own.
133-
</Callout>
128+
For chains listed in the Superchain registry, you should use the official prestate hashes rather than generating your own.
134129

135130
You can find the latest prestate tags in the [Superchain registry](https://github.com/ethereum-optimism/superchain-registry/blob/main/validation/standard/standard-prestates.toml).
136131

137-
Current official prestate hashes for Isthmus hardfork (as of writing):
138-
139-
* Sepolia chains: `0x03682932cec7ce0a3874b19675a6bbc923054a7b321efc7d3835187b172494b6` (using op-program/v1.6.0-rc.2)
140-
141132
## Handling unannounced chain configurations
142133

143134
If your chain is not included in the Superchain registry, you'll need to generate a custom prestate with your specific chain configuration. This applies to:
144135

145136
* New chains
146137
* Chains with custom configurations
147-
* "Stealth launches" or other unannounced chains
148138

149139
For these cases, follow these additional steps:
150140

@@ -163,19 +153,14 @@ For these cases, follow these additional steps:
163153
make cannon-prestate ROLLUP_CONFIG=/path/to/your/rollup.json L2_GENESIS=/path/to/your/genesis-l2.json
164154
```
165155

166-
### Process and verify
167-
168-
Verify and prepare the preimage file as described in Steps 4-5 above
169156
</Steps>
170157

171-
<Callout type="warning">
172158
The initial prestate used for permissioned games doesn't include the necessary chain configuration for the Fault proof system.
173159
The assumption is that the chain operator, the single permissioned actor, will not challenge their own games.
174160
So the absolute prestate on the initial `PermissionedDisputeGame` will never be used.
175161

176162
When deploying a new chain, you must first deploy the L1 contracts and then retrieve the artifacts.
177163
These are inputs to the creation of the absolute prestate and this circular dependency is the reason chains cannot be deployed directly to the permissionless Fault Proof System.
178-
</Callout>
179164

180165
## Deploying and configuring with the absolute prestate
181166

0 commit comments

Comments
 (0)