[IP] eleosUSD 3.4.0 Upgrade

Summary

Upgrade Proposal for eleosUSD Core Contracts

Abstract:
The proposal aims to upgrade eleosUSD core contracts and assets from version 3.0.1 to version 3.4.0. This upgrade will enhance the efficiency of eleosUSD by utilizing a spell contract prepared by ABC Labs, which will handle the majority of on-chain calls necessary for the upgrade. The spell includes two steps: an upgrade step and a cleanup step. This spell has been audited by Trust Security.

Spell: Upgrade3_4_0 | Address 0x1744c9933feb8e76563fce63d5c95a4e7f967c2a | BaseScan

Problem Statement:
Currently, upgrading contracts tied to the RToken requires manual updates one at a time through individual governance proposals. The spell contract allows for updating all contract addresses in a single governance proposal.

Rationale:
The upgrade offers several improvements, such as better RTokenAsset pricing, integration of MEV bots in auction participation, enhanced pricing decay logic, automatic StRSR drip, and Furnace melt post-revenue auction, along with mild gas optimizations. These improvements make eleosUSD more efficient and versatile.

Draft Instructions have provided by ABC Labs here.

Step 1 - Upgrade:
To execute the first step, RToken governance should prepare a proposal with the following calls:

  1. main.grantRole(0x4f574e4552000000000000000000000000000000000000000000000000000000, 0xb1df3a104d73ff86f9aaab60b491a5c44b090391)
  2. spell.castSpell1(0x0d86883FAf4FfD7aEb116390af37746F45b6f378)

As step 1 is executed, the spell will revoke its access and rotate the TimelockController that administers each RToken deployment.

Prerequisites for Step 2:

  1. Must be voted on in the new Governance contract deployed in step 1.
  2. All reward token balances should be claimed.
  3. All rebalancing auctions must be completed.
  4. All revenue auctions must run until all surplus balances are below the minTradeVolume.

Step 2 - Cleanup:
To execute the second step, RToken governance should prepare a proposal with the following calls:

  1. main.grantRole(0x4f574e4552000000000000000000000000000000000000000000000000000000, 0xb1df3a104d73ff86f9aaab60b491a5c44b090391)
  2. spell.castSpell2(0x0d86883FAf4FfD7aEb116390af37746F45b6f378)

Risks:
The primary risk lies in not upgrading and missing out on the improved features of the latest RToken version. Technical smart contract risks are mitigated by the Trust Security audit.

3.4.0 Upgrade Poll
  • Yes
  • No
0 voters