Automation Module
Relevant smart contracts:
1. Overview
The Automation Module is a set of contracts that automate parameter setting in a GEB deployment. They are meant to ease the burden of managing a system and allow the community to focus their efforts on other areas.
2. Component Descriptions
CollateralAuctionThrottler
- this contract bounds the amount of bad debt that's waiting to be covered by collateral auctions at any given timeSingleSpotDebtCeilingSetter
- this contract recomputes the debt ceiling for a specific collateral type by looking at the currentglobalDebt
in theSAFEEngine
ESMThresholdSSetter
- this contract recomputes the threshold needed to burn and trigger settlement using theESM
3. Risks
Smart Contract Bugs
- A bug in the
CollateralAuctionThrottler
could prevent theLiquidationEngine
from liquidating any SAFE by settingonAuctionSystemCoinLimit
to an extremely low value - A bug in the
SingleSpotDebtCeilingSetter
could set an extremely low ceiling or it could block any further ceiling updates and thus not allow the system to issue more system coins - A bug in the
ESMThresholdSetter
could set theESM
threshold to an extremely low value which would make shutdown extremely easy to execute or to a very high value which would make shutdown almost impossible to execute
Misconfiguration
- Governance can misconfigure the throttler and make it compute extremely low values for the
onAuctionSystemCoinLimit
- Governance can also misconfigure the
SingleSpotDebtCeilingSetter
to the point where it stops calculating new ceilings (by setting a large delay between recalculations) or it can calculate large or low ceilings (compared to the current amount of debt in the system) ESMThresholdSetter
can be misconfigured and it can set extremely high or extremely low thresholds in theESM
4. Governance Minimization
All the automation contracts are part of Level 2 governance minimization.