KIP-33: Liquidity Recovery


  • On Aug. 3rd 2020, a team member erroneously locked up some liquidity funds on Balancer.
  • Cooperative Kleros developed a recovery contract which can only be executed by Kleros governance.
  • In case of 'Yes' the Cooperative will regain full control over the funds.
  • In case of 'No', funds will stay locked in the pool. They will still provide liquidity to Balancer but the Cooperative will not have control over them nor will collect BAL rewards for this liquidity.


Coopérative Kleros provides funds to improve PNK pairs liquidity for a number of exchanges in both the centralized and decentralized space. One of those exchanges is Balancer, which currently has around 1.5M$ of Coopérative Kleros funds providing both ETH and PNK to facilitate trading.

On August the 3rd 2020, one team member made an erroneous transaction resulting in a portion of Coopérative Kleros' liquidity being sent to an incorrect contract thus rendering it 'locked' from withdrawal by the Cooperative. The team member in question resigned and has since been replaced.

Although these funds are 'locked' in name, they still provide liquidity to anyone using the Balancer exchange pool and would continue to do so into the future even if this proposal were to be rejected.

We have, however, developed a recovery contract mechanism which, when activated by the governor, will return the funds to Coopérative Kleros.

Note that those funds were assigned to be used as liquidity anyway and are not needed for operational purposes. In fact, the Cooperative treasury has never been higher.

Also note that even if those funds were to be written-off (for the cooperative, but not for the ecosystem as they would still provide liquidity), the cooperative would still be overall profitable in its liquidity providing activities (mainly because of the 2M$ worth of UNI received).


Give PNK's controller role to the recovery contract at address 0x5F7C8c12ec3A545c71E56cb0609db769155d169E (note that etherscan verification is down but you can verify the source code yourself). This role is required to perform the recovery and will be automatically restored after the operation.

The recovery contract will send the assets locked in the pool to the Coopérative Kleros multisig wallet. The Coopérative will then create a new pool on Balancer and give the liquidity tokens of this new pool to the previous pool owners

This will restore the lost funds.

Q & A

Why can't Cooperative Kleros just do it?

The Cooperative cannot technically do it without using governance. The recovery contract requires an action from the Kleros governor, thus a governance vote.

What would be the advantages of performing the recovery?

Cooperative Kleros would regain full control of the funds to use as it sees fit. There is currently no plan of removing the liquidity from Balancer. However, regaining control of this liquidity would allow the Coopérative to benefit from BAL rewards and to potentially reallocate those funds for other purposes in the future.

What would be the issues with leaving them locked?

The main issue is that these funds would be permanently locked in the Balancer pool and would not be available for other Coopérative operations. As it stands, although the funds are providing liquidity for the PNK token, the cooperative is not receiving BAL rewards which are instead burned.

If it were to regain control of the funds and add them correctly to the Balancer pool, it would then receive BAL rewards once more which can be added to the cooperative treasury.

What would be the actions performed by this recovery contract?

  • First, almost all the PNK stored in the Balancer pool would be pulled out. The right to do so would be temporarily granted to the recovery contract by the Governor contract.
  • Second, the recovery contract would swap the recovered PNK for WETH repeatedly, taking advantage of the imbalance in the Balancer pool.
  • Third, all recovered funds would be sent to CoopĂ©rative Kleros and all rights over the PNK token would be restored.

This proposal has been put to vote.