[BIP-294] Authorize Mimic Smart Vault on Arbitrum

Motivation

After BIP-115 passed late last year work began to create Mimic smart vaults that automatically collect protocol fees, sell for USDC, then bridge it back to Ethereum if necessary. The Maxis have recently conducted several tests in collaboration with Mimic, the most recent of which occurred a few days ago. Half of Arbitrum’s protocol fees were successfully handled in this test - you can review the history of the Arbitrum smart vault if interested in the details.

Both the Maxis and Mimic have high confidence the Arbitrum smart vault is working as expected and ready to take over the handling of protocol fees on the network. We’ll begin running tests on other networks in preparation for authorizing those smart vaults in the near future. In case an issue arises the role for allowing the smart vault to call withdrawCollectedFees on the ProtocolFeeWithdrawer can be revoked with a future BIP.

Risks

Assigning access to the fee collector gives the contracts assigned access to sweep all fees from the collector. In the very worst case, the fee collector could stop functioning correctly/start leaking funds.

Manual work is required in the process every 2 weeks to process veBAL fees and core pool bribes. In the event that there was a significant leak of value from the fee collector, It could take up to 2 weeks to notice, and then up to an additional week to enact governance to revoke rights to the fee collector.

As a result, there is some risk that up to 3 weeks of protocol fees could be lost. Last fee round, 50% of the fees were processed by the Mimic vault as a test. Before that, 3 smaller tests were run on Optimism.

Here is a link to Mimics audits
Here is a link to the Balancer Deployment information on Arbitrum

The Maxi’s will work to commission a dune dashboard that monitors the fee collector to help us catch problems sooner, and an alerting system to follow.

Specification

The DAO Multisig on Arbitrum arb1:0xaF23DC5983230E9eEAf93280e312e57539D098D0 will interact with the Authorizer 0xA331D84eC860Bf466b4CdCcFb4aC09a1B43F3aE6 and call grantRole with the following arguments:

role: 0x93b1b7dba9fb074b573d5edb3c983e0490a00925f709289485f0c75988e100cf

which corresponds to the role for calling withdrawCollectedFees on the ProtocolFeeWithdrawer on Arbitrum, verifiable here.

account: 0x94Dd9C6152a2A0BBcB52d3297b723A6F01D5F9f7

which is the contract address for the Mimic smart vault on Arbitrum.

6 Likes

https://snapshot.org/#/balancer.eth/proposal/0x13ff21be0ff540c9bd65b14265e1623cbe6eca8b41d9bb7e9c32fc3931ccb7ea