Summary
This proposal migrates the current Guardian and Treasury Manager operators to a more flexible design (upgradeable) and performs housekeeping to remove any other unused operator permissions.
Future proxy upgrades can be performed solely by Resupply governance, which adds flexibility without sacrificing on security or transparency.
Guardian Proxy: 0xA4745e0B1F40ab3DCFD98F381835De591a8974E3
Treasury Manager Proxy: 0x4CF97a55d58Aad14C493A46C8151a0BFffb10403
Background
The Resupply core protocol has an authorization scheme as outlined in the docs which allows governance to grant fine-grained permissions to “operators”. Active operator authorizations can be found on RSUP.LOL.
Migration Specification
- Initiate 3 single-action proposals to:
- migrate the
cancelProposalauthorization (see note below for why it requires 3)
- migrate the
- Initiate a 4th proposal to:
- Remove all active permissions from the legacy Guardian and Treasury Manager contracts
- Assign the same permissions to their new upgradeable proxy counterparts
- Add additional permissions required for operators introduce in prior proposals
- Clear any active permissions that are not currently in use
Note: The cancelProposal permission migration requires dedicated proposals for each add and removal. This requirement is enforced at the smart contract level and exists for security reasons to protect against malicious guardians and proposals.