Compound Treasury Updates, COMP Bug Fix, Dynamic Risk Parameters
Compound Digest - October 14, 2021
Highlighting the best of the Compound ecosystem. For more updates, join the Compound community on Discord, Twitter, and Comp.xyz.
Compound Treasury Updates
Compound Treasury is continually improving to meet the demands of institutional clients. After launching the 4.00% APR account in July, the online Dashboard has been updated to include real-time balances, easy funding & withdrawal methods, custom reporting, and access controls. We’ve been delighted at the positive feedback from our early users and are rapidly expanding the product features and customer base.
Treasury has outgrown its old home living within the Compound Protocol’s website at compound.finance. Today, the product has moved to a new home: compoundtreasury.com.
Our team is hiring a Director of Marketing to help spread the word about Treasury. If you have experience scaling software businesses and want to be at the intersection of DeFi and Fintech, we invite you to apply and build the future of finance with us.
Interested in becoming a Treasury customer? Schedule a product demo with our team today.
COMP Bug Fix
When Proposal 62 was executed on September 29th, it introduced a bug into the Comptroller contract that allowed users in certain markets to accrue and claim far more COMP than intended. The end result of the bug is that 163k COMP were incorrectly claimed & returned to the community Timelock, 130k COMP remained in the Comptroller, which could have been incorrectly claimed, and ~200k misallocated COMP are currently outstanding. Users who claimed erroneously accrued COMP are strongly encouraged to return the tokens to the community Timelock.
The event has galvanized the community to implement more robust code testing and simulation ahead of future governance proposals. Below are forum posts where the community is discussing various security measures to avoid errors moving forward.
More Rigorous Process On Reviewing Large Code Changes (RE: Comp Bug 9/29/21)
Building a more robust deployment process to prevent future meltdown
The Compound community has been a pioneer of decentralized protocol development, and all community members are encouraged to help improve these standards and best practices over time.
Governance Updates
Since the last newsletter, Proposals 61, 62, and 64 all passed through the governance system with broad community support, Proposal 63 was canceled, and Proposal 65 is in the active voting stage.
Pending Votes
Proposal 65: Correct Over-Accrued COMP
Status: Active - 2 days, 3 hrs left
Proposer: Tyler Lowen
Voting Results: 0 For and 0 Against
Summary: Proposal 65 would fully restore the COMP claim functionality for all markets and return the Compound protocol to its normal operating state. The proposal also creates a list of users who accrued more COMP than they should have, and introduces a one-off function called fixBadAccruals that behaves in the following way:
If the user's amount of accrued COMP is greater than the amount they over-accrued, the amount over-accrued is subtracted from their accrued amount (compAccrued).
If the user's amount of accrued COMP is less than the amount they over-accrued (i.e. they successfully claimed more COMP than they should have), their accrued amount (compAccrued) is set to 0 and the difference (i.e. what they owe the protocol) is saved to compReceivable. This new storage variable is only used for record-keeping at the moment.
An event - CompReceivableUpdated - is emitted when compReceivable is updated.
An event - CompAccruedAdjusted - is emitted when this function updates compAccrued.
It is important to note that a subsequent proposal will be needed to update the record-keeping for users who returned over-accrued COMP to the community Timelock. All community members are encouraged to analyze the forum thread, simulation, and code before voting on the proposal
Completed Votes
Proposal 64: Fix COMP Accrual Bug
Status: Executed October 8th, 2021
Proposer: Tyler Lowen
Voting Results: 1,037,107 For and 0 Against
Summary: Proposal 64 patched the bug introduced by proposal 62 without reverting transactions when claiming COMP, which was a feature requested by third-party integrators. The proposal also allows the COMP distribution to continue for users who did not interact with the affected markets (cTUSD, cMKR, cSUSHI, cYFI, cAAVE, and cSAI). An analysis of Proposal 64 by Compound Labs CTO, Geoffrey Hayes, can be found here.
Proposal 63: Temporarily Disable COMP Rewards
Status: Cancelled October 6th, 2021
Proposer: Arr00
Voting Results: 1,045,810 For and 162,221 Against
Summary: Proposal 63 was developed and submitted to the governance system within hours of the COMP distribution bug being discovered. The proposal sought to temporarily disable the distribution of COMP rewards until a longer-term solution could be implemented. Arr00 ultimately decided to cancel the proposal after the voting period, since it would have reverted transactions and broken several third-party integrations that rely on claiming COMP. Further analysis is available on the forum thread.
Proposal 62: Split COMP rewards distribution and bug fixes
Status: Executed September 29th, 2021
Proposer: Tyler Loewen
Voting Results: 729,781 For and 0 Against
Summary: Proposal 62 updated the Comptroller logic to have two different COMP speeds for the supply and borrow side of each market on Compound, and fixed a previous compSpeed bug that prevented certain markets from having a COMP reward. As explained in the “COMP Bug Fix” section above, this proposal introduced a new bug that allowed certain borrowers to claim far more COMP than they were supposed to be able to from the Comptroller contract. More information on the proposal can be found on the forum thread.
Proposal 61: Dynamic Risk Parameters
Status: Executed September 27th, 2021
Proposer: Gauntlet
Voting Results: 1,480,497 For and 6,564 Against
Summary: Proposal 61 streams a COMP grant to the Gauntlet team, in exchange for continuous market risk management and the development of a risk management dashboard for the community. The Gauntlet team will perform regular analysis of parameters including Collateral Factor, Close Factor, Borrow Cap, Reserve Factor, and Liquidation Incentive, and create new governance proposals to optimize for yield, capital efficiency, and mitigate depositor losses. Community members can read more about the scope and cost of this program on the forum thread
Ongoing Discussions
See below for highlights from the Compound Community Forum, and join in the discussion:
Community Risk Level Consensus Check - @inkymaze asks the community for feedback on the level of risk tolerance for Gauntlet’s dynamic parameters.
Add Market: Matic - @nbax contends that Matic’s “ungovernance” process makes it a compelling alternative to existing stablecoins and would be a valuable asset to have on Compound.
Compound Risk Dashboard by Gauntlet - @shaan from Gauntlet presents the plans for the new Compound Risk Dashboard approved in Proposal 61 ‘Dynamic Risk Parameters’.
Analysis of Proposal 64 - Compound Labs team member @hayesgm shares his analysis of Proposal 64 and @tylerether explains the thought process behind Proposal 65.
Building a more robust deployment process to prevent future meltdown - @kevt explains his idea for a rollback mechanism that could be triggered by the community in the event of a flawed proposal, reversing the changes the proposal made.
Be sure to either vote on proposals with your COMP, or delegate your COMP voting rights to a representative of your choice.
Active RFPs
As a reminder, one of the best ways to participate in, and contribute to, the Compound ecosystem is to complete outstanding Request For Proposals (RFPs). The Compound Grants Program is offering substantial grants to individuals and organizations who work on the topics listed below. Have an idea in mind that's not included on the list? Feel free to apply with your own ideas here!
RFP 1: Decentralized batching contract | $25k
RFP 2: Voting with COMP collateral | $50k
RFP 3: Bringing Compound to L2's and other chains | $50k
RFP 4: Adding support for new assets on Compound | $12.5k
RFP 5: Gas optimizations | TBD
RFP 6: Improvements to the liquidations process | $50k
RFP 7: Uniswap V3 management platforms as collateral | $25k
RFP 8: Balancer V2 liquidity as collateral | $25k
RFP 9: Open source Compound Interface | $50k
RFP 10: Ripcord wallet | TBD
RFP 11: Governance/Voters rewards | TBD
RFP 12: cToken Cleanup | $250k
RFP 13: cToken Interest Rate Model Changes | $100k
RFP 14: Gas Savings for cToken and Comptroller contracts | $100k
RFP 15: Dynamic COMP reward distribution | $100k
RFP 16: Migrate legacy cTokens | $50k
RFP 17: Deploy upgradeable cETH contract and migrate users to it | $50k
RFP 18: Uniswap V3 liquidity as collateral | $100k
RFP 19: Interest rate curve research | $5k
RFP 20: Optimism Starport for Compound Gateway | $100k
Developer Community Call Recap
The Compound community held a Developer Community Call last week to discuss ongoing protocol and application development. You can access an audio recording of the call here.
Markets Update
Current supply on Compound is at $18.5B from 297k unique addresses. 33% of this supply volume is ETH, 23% is DAI, and 21% is USDC. (source).
Open borrowing is at $7.5B from 9.2k unique addresses. 43% of this borrowing volume is USDC, 42% is DAI, and 8% is USDT. (source).
For live figures please refer to our Markets page.
Image Source: IntoTheBlock
Links & Discussions
xDai introduces a new way to earn yield on bridged Dai using the Compound protocol, automatically supplying up to 21,000,000 DAI.
Several members of the Compound community shared presentations during the ETHOnline Compound Grants Summit. A replay of these presentations is available here.
Twitter user @0xTomoyo shares a well-written explanation of Compound’s liquidation mechanism.
Tweet of the Week