CREAM exploit: compensation for losses caused by early Vault exits

The Gro core team recommends a compensation fund of 180k vesting $GRO (worth around $1.8m) from the Gro DAO treasury to compensate Vault users due to downside from any users who left the protocol early. This would be a 4.3% recovery from total funds lost and 3x the amount lost from early exits.

In addition, affected Vault users can expect a separate airdrop from the $CREAM recently received by Gro DAO. This will be announced in the coming days.

Summary

Vault is designed to absorb losses to protect PWRD. During the CREAM exploit this mechanism worked effectively.

However, losses were not realised by CREAM themselves since there are still funds in their contract. This meant that Gro didn’t realise those losses, and Vault users protected other Vault users who withdrew before losses were realised. As Gro community member instadappfan123 put it: “I opted to shield PWRD holders from losses, not other vault owners”.

The core team recommends allocating 180,000 GRO from the Gro DAO treasury for this part of the loss as vesting GRO.

There will be a further airdrop from the $CREAM recently received by Gro DAO, and this will be announced in the coming days.

Background: CREAM exploit recap

This is a short summary of the CREAM hack. You can read more about it on twitter here.

  • On Wednesday 27th October, CREAM finance was hacked and lost ~$130mn. Unfortunately, Gro protocol had 2 of its 7 strategies allocated into CREAM at the time of attack, totalling $9.24m (15% of TVL).
  • Because the CREAM losses were not realised on CREAM’s side, Gro protocol could not automatically account for the loss, and required manual intervention to assess and realise it.
  • Before the loss was realised, some Vault users withdrew their funds quickly, to avoid sharing the Vault downside.
  • The core team took action to prevent further front-running as described in the timeline above. The value of the funds withdrawn from the protocol in this time period was $2.95m, meaning the remaining Vault users had an additional 1.4% loss.
  • Since the exploit, $782k has been recovered by the Gro team and redistributed to Vault holders.

In addition, CREAM confirmed it would release 1,453,415 $CREAM governance tokens and the Gro team has recovered a share of these.

Proposal to use $GRO to compensate Vault holders for extra losses suffered by other Vault holders leaving

We propose Gro DAO airdrops $GRO worth 3x the value of front-running losses to affected users.

3x multiple is a proposal, and the team is seeking feedback from the community on whether this is good, too high or too low.

  • $605k (1.4%) additional losses were shared between remaining Vault holders
  • We propose Gro DAO provide 3x this nominal value as an airdrop to affected users
  • The airdrop would be delivered through the rewards centre (as with other airdrops)
  • 3x nominal value is proposed to acknowledge that users may want to leave before vest completed, and that a governance token is more volatile than a stablecoin
  • This is to compensate Vault users for losses suffered due to front-running by other Vault users
  • This amounts to a 4.3% recovery for affected users

Other compensation will come from further recoveries from CREAM protocol

  • $782k has been recovered by GRO from CREAM contracts directly into Vault strategies
  • Recently CREAM confirmed it would release 1,453,415 $CREAM governance tokens and the Gro team has recovered a share of these
  • Proceeds from this and any other recovery will be delivered to affected Vault users through a retroactive airdrop. The exact details are currently being finalised.
  • In addition, the CREAM hacker paid $9mn to Yearn, which Yearn forwarded to CREAM
  • Further funds recovered directly from CREAM contracts will be distributed to current Vault holders as they are recovered

Looking forward

Although the protocol worked as designed in protecting PWRD, Vault users should not be able to frontrun each other. This is the result of a corner case where losses aren’t realised, but there is a human understanding that there will be losses in the future.

These scenarios may always need human intervention when there is no data to show an unrealised loss.

The core team is considering solutions for how to automate more aspects of the protocol and loss realisation.

8 Likes

Thanks Charlie. Idea sounds solid. Some questions:

  • How big the effect on the treasury, 1.8m dollars sounds quite big. What will the (future) effect be on the DAO?
  • What will happen if, in the future, more cream funds are recovered. Will that go into treasury?
  • Is this going to be a DAO proposal which people has to vote on?
2 Likes

Thanks team for this post! Some thoughts that I have

If people want to exit early with the amount of airdrop, unfortunately they’ll be:

  • Getting only 10% of their total airdrop, which would be less than what they have lost additionally 605 * 3 * 10% = 1815 * 10% = 181.5
  • I believe, correct me if I’m wrong, they will have to also exit their vesting position for previous claims, which they may not want to do. People’s reasons to exit their airdropped GRO for the front-running will be various but may also include having to close certain losses, or having to pay for bills etc. Of course you can say that these are risks that investors need to bear and consider by themselves. But sometimes life happens

Considering the above I would be inclined to give the airdrop directly to users instead of going through the vesting mechanic, at a scaled down multiplier like 2 times (or something else). I understand that there may be further sell pressure, and there’s been a lot of chitter-chatter on the price movement. But I wholly believe in doing what’s right to compensate for an unintended/unforeseen feature of the product. I know, and believe, that the team is working hard on the protocol and product to further grow it, but I think this will show further commitment and a doubling down from the team to grow the project.

To assist in alleviating sell pressure maybe we can increase staking incentives (not ideal in the long-run I know) or other possible incentives (may require development). But at the very least users will be given a greater degree of optionality. If successful, game theoretic assumptions tell us that people would/should rationally (bold assumption here) to stay

Another possibility is to just have a higher multiplier, like 5 - 6x, so as to be closer to the additional amount of loss incurred by Vault users due to the front-running. This also considers current price action

With regards to users having to exit their other vesting positions if they want to claim the compensation early, I suggest the team to look into the percentage share of to-be-airdropped Vault users that also have a vesting and staking position. This would help the team to assess negative, or perceived negative, effect of enforcing the compensation to be paid out through the vesting mechanism

Disclaimer: I have a position in Vault

Thanks for drafting this proposal. I think 3x provision is generous, one slight change on this would be to make this an airdrop without vesting mechanism. Couple of reasons:

  1. This isn’t a regular airdrop but a targeted one for vault users who lost money due to front-running immediately after the hack.
  2. Folks who will remain in the vault will be getting any future cream recoveries, so why make this airdrop vested, which will punish folks leaving for whatever reasons.
  3. We should even reduce the multiplier to 2x but remove the vesting mechanism.

Hoping there’s a thorough discussion of this before making any decisions.

Thanks,
Metaape

2 Likes

I agree with the direct airdrop. I have a position in vault.

Thank you very much for the proposal. I fully support it!

I am confident that the terms of the refund must match the terms of the loss. I lost USD and at that time the price of GRO was much higher, so the refund in GRO 3x is fair.
In addition, the funds that I lost were not subject to vesting. This means that compensation should not be with vesting either. While you make a decision, both GRO and CREAM continue to fall.

Thanks for all the feedback.

In response to @Organized_Chaos yes this should go to a DAO vote.

It seems there is a general request from Vault Holders for it to be unvested (as the loss was in freely tradeable stable assets). I can see the logic for this however cannot see why it should be greater than 1x if it’s fully liquid. I imagine most GRO holders not in Vault would agree?

Proposal for the DAO vote is therefore one of two options:

  • 1x unvested GRO i.e. you recover the equivalent losses caused by early Vault exits, fully liquid
  • 3x vested GRO i.e. you recover more than your losses caused by early Vault exits, but not immediately liquid

This aims to balance the interests of Vault, GRO and PWRD holders.

Would be great to get any further feedback on this.

Sounds good but can we assume the current price of $gro instead of the original assumption of 10$ per gro just so we can accurately reflect the current reality. Thanks

Thanks Charlie for the reply!

I am personally fine for a 1x unvested GRO airdrop but I’ll give some reasons in favour of 1+ - 2x (or maybe just 1.5x) unvested GRO:

  • Additional lost compounding from Vault’s yield
  • Being an unexpected design/technical consequence that both took the community and the team by surprise I think giving out a boost in compensation signals a strong commitment from the team to the community to improve upon the design.

Going forward if things are further clarified to product users in documentation and in app I don’t think it’s necessary to give out further compensation since this particular risk would be made clear. Therefore, the payout should be treated as a pricey learning lesson by both the team and community for this particular kind of risk/flaw

1 Like

Fully agree with compensation, as Vault owners were intended to cover for PWRD users, not early Vault exiters. No preference between 1x unvested or 3x vested proposals. Any form of compensation is appreciated.

Deep thanks to the GRO team.

3 Likes

Following the community suggestions above we will propose a solution which gives users and the DAO a choice.

As part of the rewards centre and tokenomics updates, users will have the choice to immediately exit their vested $GRO for 30% of the value, OR vest over 12 months for 100% of the value.

We propose a choice for the DAO of 2x or 3x the front-running losses, in Vested GRO, and users can choose to exit immediately or stay. This allows users who commit to the protocol to recoup much more than they lost from front-running exits!

This proposal balances the interests of Vault holders by giving them flexibility, with the interests of GRO holders, by reducing the immediate supply of GRO into the market.

The net loss to Vault holders following the $CREAM recoveries is $6.31m (15.0% of Vault TVL) of which $413.3k (1.0% of Vault TVL) is caused by early Vault exits.

In addition, a further $46.6k of CREAM is due to Vault holders in a Uniswap v3 pool (which uses different data structures) that the Gro team had not included previously. The proposal includes the $ equivalent of this in Vested GRO (with the same 3x multiple).

We have put this up for a DAO vote at https://vote.gro.xyz

The price used for GRO is $8.20, which is the market price according to CoinGecko as at the time of the Snapshot vote. This would result in 112k or 168k GRO being distributed (depending on the outcome of the vote).

Sorry, I’m late for posting - can understand that the vote is currently ongoing.

Firstly, the option on the vote for ‘No, zero Vested’ isn’t clear - I think a lot of community members assumed it meant just airdrop the GRO tokens at the loss value with zero vesting.

If the vote does tick over due to ambiguity/inconclusiveness I think the team should consider splitting offering the compensation with the treasuries stablecoins (or even GVT which is acquired from the treasury depositing).

Some examples, assuming I have lost $10k with the vault exits:

$10k stablecoin(s) given immediately with 0% vesting or the option of taking $20k worth of GRO 100% vested. It could be a combination of GRO incentives aligned with the initial proposal such as:
$20k GRO, 30% available, 70% vested.
$30k GRO 15% available, 85% vested.
$40k GRO 0% available, 100% vested.

Keeping it simple though, IMO compensation should be given in the form of stablecoins with a reward (long term) for taking $GRO.