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

Implement slashing logic #1

Open
The-3D opened this issue Jan 26, 2021 · 0 comments · May be fixed by #2
Open

Implement slashing logic #1

The-3D opened this issue Jan 26, 2021 · 0 comments · May be fixed by #2

Comments

@The-3D
Copy link
Contributor

The-3D commented Jan 26, 2021

The current StakeTokenV2 implementation does not have slashing capabilities. Right now there is no way of executing a slash of the stake without governance intervention and a token upgrade. This issue tracks the introduction of slashing capabilities on the StakeTokenV2.

The functionality will be implemented as follows:

  1. Introduction of an exchangeRate() function that tracks the ratio between the total supply of the StakeToken and the underlying. A ratio of 1:1 means no slashes happened. An eventual slashing of the stake will seize some of the underlying asset reducing the exchange rate of underlying:stake token of an amount proportional to the underlying seized
  2. Introduction of a SlashingAdmin role. The Slashing admin will be the the sole entity able to execute the slashing of the underlying asset. For the Aave stake, it will be configured as 0xEE56e2B3D491590B5b31738cC34d5232F378a8D5, that is the current governance V2 short executor
  3. introduce a CooldownAdmin. The Cooldown admin will be able to pause all the cooldown periods in case of a shortfall event, to allow proper resolution of the event. The pauseCooldown() function allows the admin to pause all the cooldowns.Cooldowns are expected to be resumed once the slashing event is resolved by the CooldownAdmin. If the pause is 4. longer than 10 days, the cooldowns are expected to expire.
  4. Introduce a slash() function. The slash() function allows the SlashingAdmin to seize some of the underlying stored in the stake to be transferred to a different address, for subsequent auctioning and recollateralization of the protocol. The exchange rate will automatically update to reflect the change in the underlying/total stake shares ratio.
@The-3D The-3D linked a pull request Jan 26, 2021 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant