• Mark Tyneway's avatar
    op-chain-ops: extended pause 2 step upgrades · 7efc4392
    Mark Tyneway authored
    The new storage setter contract with ability to set multiple
    slots in a single call is deployed at [0xd81f43eDBCAcb4c29a9bA38a13Ee5d79278270cC](https://etherscan.io/address/0xd81f43edbcacb4c29a9ba38a13ee5d79278270cc#code).
    It was deployed with create2 and should also be on goerli + sepolia and
    ay other chain that has a superchain deployed on it.
    
    Manual calls to `upgradeAndCall` are made. There isn't a great way to
    support multiple upgrades at a time within `op-upgrade` so adopting a
    "release" model where `op-upgrade` supports building a single version to
    another single version makes the most sense. It is too difficult given
    the current abstractions to build something that supports any upgrade to
    any upgrade arbitrarily. This sort of system is certainly possible to
    build but we would need to think more about the abstractions.
    
    One thing is this does not support a reverse upgrade aka downgrade.
    
    Each storage slot that was set as part of the upgrade to MCP is removed
    using the `StorageSetter` contract. A link to the storage layout file
    is included for each call to `setStorage`.
    7efc4392
Name
Last commit
Last update
.changeset Loading commit data...
.circleci Loading commit data...
.github Loading commit data...
.husky Loading commit data...
.vscode Loading commit data...
bedrock-devnet Loading commit data...
cannon Loading commit data...
docs Loading commit data...
endpoint-monitor Loading commit data...
indexer Loading commit data...
op-batcher Loading commit data...
op-bindings Loading commit data...
op-bootnode Loading commit data...
op-chain-ops Loading commit data...
op-challenger Loading commit data...
op-e2e Loading commit data...
op-exporter Loading commit data...
op-heartbeat Loading commit data...
op-node Loading commit data...
op-preimage Loading commit data...
op-program Loading commit data...
op-proposer Loading commit data...
op-service Loading commit data...
op-ufm Loading commit data...
op-wheel Loading commit data...
ops Loading commit data...
ops-bedrock Loading commit data...
packages Loading commit data...
patches Loading commit data...
proxyd Loading commit data...
specs Loading commit data...
ufm-test-services Loading commit data...
.abigenrc Loading commit data...
.coderabbit.yml Loading commit data...
.dockerignore Loading commit data...
.editorconfig Loading commit data...
.envrc.example Loading commit data...
.eslintrc.js Loading commit data...
.foundryrc Loading commit data...
.gethrc Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
.markdownlint.json Loading commit data...
.npmrc Loading commit data...
.nvmrc Loading commit data...
.pnpmfile.cjs Loading commit data...
.prettierrc.js Loading commit data...
.semgrepignore Loading commit data...
.snyk Loading commit data...
CITATION.cff Loading commit data...
CONTRIBUTING.md Loading commit data...
LICENSE Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
SECURITY.md Loading commit data...
cloudbuild.yaml Loading commit data...
codecov.yml Loading commit data...
docker-bake.hcl Loading commit data...
go.mod Loading commit data...
go.sum Loading commit data...
nx.json Loading commit data...
package.json Loading commit data...
pnpm-lock.yaml Loading commit data...
pnpm-workspace.yaml Loading commit data...
tsconfig.json Loading commit data...