diff --git a/src/espresso-migration/UpdateChainConfig.sol b/src/espresso-migration/UpdateChainConfig.sol new file mode 100644 index 00000000..f471571b --- /dev/null +++ b/src/espresso-migration/UpdateChainConfig.sol @@ -0,0 +1,13 @@ +// Example action contract to upgrade chain config to turn on espresso mode + +import "../precompiles/ArbOwner.sol"; + +contract SetEspressoChainConfig { + function perform(string serialiazedEspressoConfig) external { + //The ArbOwner precomiple always lives at this addr. + ArbOwner arbOwner = ArbOwner(0x0000000000000000000000000000000000000070) + //This call must come from an account designated as an Owner by the ArbOwner contract. + //In practice the Owner should be the UpgradeExecutor via the execute method. + arbOwner.setChainConfig(serialiazedEspressoConfig) + } +} \ No newline at end of file