Interop: Dependency Manager + New Lockbox Spec
We want to progress the decentralization roadmap at the same time as shipping interop. We also have a bottleneck at multisig operations, it is a lot of overhead for every new upgrade that is put together in superchain-ops. We should optimize for reducing the multisig rather than adding to it.
The SharedLockbox smart contract was originally designed such that it required multisig operations to update which chains are part of the dependency set and therefore have the ability to withdraw from the SharedLockbox. To move away from the multisig operations here, we decided to move the dependency set offchain. This means that an addition to the dependency set can be considered a hardfork. On the first block past the hardfork height, the derivation pipeline will create a system tx that calls the DependencyManager contract with the new chains added to the dep set which then triggers a withdrawal that authorizes the chain to be able to withdraw from the SharedLockbox.
We know that ethereum is "decentralized" and they do upgrades via releases of new software that people opt into running. We should focus on making OP Stack upgrades more similar to that over time. If we can remove the multisig through this mechanism, that would be ideal.
this means any change to the set, including removals, correct?
this means any change to the set, including removals, correct?
Removals of a chain in a cluster are not in scope. Its just too complex to decouple the assets. The only way to leave a cluster would be to do a network upgrade that removes the other chains from your dependency set.
Each modification to the dependency set is a hardfork