Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Treasury emergency shutdown option #3092

Closed
rowgraus opened this issue May 13, 2021 · 5 comments
Closed

Treasury emergency shutdown option #3092

rowgraus opened this issue May 13, 2021 · 5 comments
Assignees
Labels
duplicate Inter-protocol Overarching Inter Protocol Vaults VaultFactor (née Treasury)
Milestone

Comments

@rowgraus
Copy link

MakerDAO has an emergency shutdown capability which can be triggered by governance. We have discussed the need for such a mechanism. This ticket should organize initial thoughts on how an emergency shutdown should be initiated.

Design considerations:

  • Vault owners (capital contributors) must be able to retrieve their net collateral - i.e., excess collateral above their RUN debt position
  • RUN owners must be compensated for RUN based on available collateral backing RUN
  • Liquidity providers in the AMM can redeem their liquidity
  • BLD stakers with outstanding RUN debt are included in the process (pending design)
  • To the extent possible, ensure system is robust in adverse circumstances: governance attacks on the chain, severe drop in BLD pricing, failure of core infrastructure such as oracles and/or bridges

Maker's approach is the following:
Step 1: Governance triggers the emergency shutdown module which locks oracle prices and stops additional vault operations among other things
Step 2: Vault owners may withdraw excess collateral from their vaults
Step 3: DAI owners may redeem DAI for pro-rata shares of remaining collateral. If the system is net undercollateralized after Step 2, DAI owners won't receive a full $1 worth of collateral. If there is a remaining surplus from previous Maker operations, DAI owners may receive more than $1 worth of collateral

Challenges with this approach:

  • Freezing of oracle prices adds timing urgency to the process. Presumably implemented to improve functioning in adverse scenarios

@dtribble @btulloh for discussion

@rowgraus rowgraus added this to the Beta Phase 4: Governance milestone May 13, 2021
@rowgraus rowgraus self-assigned this May 13, 2021
@Tartuffo Tartuffo added the MN-1 label Feb 2, 2022
@Tartuffo
Copy link
Contributor

Tartuffo commented Feb 3, 2022

@rowgraus This does not have an area label that is covered by our weekly tech / planning meetings. Can you assign the proper label? We cover: agd, agoric-cosmos, amm, core economy, cosmic-swingset, endo, getrun, governance, installation-bundling, metering, run-protocol, staking, swingset, swingset-runner, token economy, ui, wallet, zoe, zoe contract

@Tartuffo
Copy link
Contributor

Tartuffo commented Feb 5, 2022

@rowgraus Bump. For proper project planning and tracking, this needs an area label covered by one of our weekly planning meetings. Please pick the appropriate one from: agd, agoric-cli, agoric-cosmos, amm, core economy, cosmic-swingset, endo, ertp, getrun, governance, installation-bundling, metering, oracle, pegasus, run-protocol, ses, staking, swingset, swingset-runner, tc39, token economy, tooling, ui, wallet, xsnap, zoe, zoe contract

@Tartuffo Tartuffo removed the MN-1 label Feb 7, 2022
@Tartuffo Tartuffo removed this from the Beta Phase 4: Governance milestone Feb 8, 2022
@Tartuffo Tartuffo added the Inter-protocol Overarching Inter Protocol label Mar 4, 2022
@Tartuffo
Copy link
Contributor

Tartuffo commented Mar 4, 2022

@rowgraus @warner Is this issue replaced by the more general work in #4536 or is this dependent by that issue?

@erights
Copy link
Member

erights commented Mar 5, 2022

#4536 is for pausing while we fix something, with the intention that we then resume with minimal disruption.

The description above sounds more like a bankruptcy proceeding as part of permanently terminating operations. Am I misunderstanding?

@Chris-Hibbert Chris-Hibbert added the Vaults VaultFactor (née Treasury) label Mar 10, 2022
@Tartuffo Tartuffo added this to the Mainnet 1 milestone Mar 23, 2022
@Tartuffo Tartuffo modified the milestones: Mainnet 1, RUN Protocol RC0 Apr 5, 2022
@rowgraus
Copy link
Author

rowgraus commented May 4, 2022

This is replaced by #4536.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
duplicate Inter-protocol Overarching Inter Protocol Vaults VaultFactor (née Treasury)
Projects
None yet
Development

No branches or pull requests

5 participants