systemStakingPool
until the pool is governance minimized; initialDebtAuctionMintedTokens
and debtAuctionBidSize
will need to be set by an external contract which will be connected to oracles (thus this external contract will not be fully gov minimized); an optional contract may set surplusBuffer
so that it covers a specific percentage of the outstanding supply of system coins minus the surplus from the Accounting Engine and the one from the Stability Fee Treasury/ies; another external contract should reward addresses that call popDebtFromQueue
thresholdSetter
that recomputes triggerThreshold
according to the latest outstanding supply of protocol tokens; this can only be done once; the rest of the contract can be governance minimizedonAuctionSystemCoinLimit
debtCeiling
s for every collateral type once every couple of hours/days; governance should also allow a contract to adjust debtFloor
s according to the latest redemption price; depending on how many collateral types are in a system, it may not be feasible to automatically set debt ceilings but rather manually vote on lowering/raising themOracleRelayer
will have upper and lower bounds for the redemption rate so that a potential governance attack cannot immediately destroy the protocolonAuctionSystemCoinLimit
as a percentage of the current amount of system coins minus the surplus accrued in the Accounting Engine and in the Stability Fee Treasury/iessurplusBuffer
so that it covers a specific percentage of the outstanding supply of system coins minus the surplus from the Accounting Engine and the one from the Stability Fee Treasury/ies; a mandatory contract that setsinitialDebtAuctionMintedTokens
and debtAuctionBidSize
every once in a while according to the protocol token and system coin market pricesthresholdSetter
which automatically sets triggerThreshold
as a percentage of the current outstanding supply of protocol tokenstotal
allowances for addresses that have a perBlock
allowance > 0 and allow the automatic setting of params such as minimumFundsRequired
, pullFundsMinThreshold
etc depending on the latest redemptionPrice
debtCeiling
s for every collateral type; another contract that adjusts debtFloor
s according to the latest redemptionPrice
every couple of weeks; the implementation depends on every GEB's setup (how many collateral types it has, what percentage of system coins should be covered by each collateral etc)baseUpdateCallerReward
and maxUpdateCallerReward
adjusted periodically depending on the latest redemptionPrice
.