Should Compound Retroactively Airdrop Tokens to Early Users?

Here’s the latest on the early user analysis:

  • At each transaction in the early-user history, accrued interest is now converted into a USD equivalent based on the price of the asset on the date of the transaction from the CoinGecko API. This is now implemented for both V1 and V2.
  • For both V1 and V2, the most complicated step IMO is the reconciliation of interest accumulated in the period between the last transaction as an early user and the EarlyUserCutoffBlock. This step is essential for proper handling of users who deposited/borrowed very early on and simply held their position(s) through and beyond the EarlyUserCutoffBlock. The updated scripts now handle reconciliation of outstanding early-user supply and borrow interest for both V1 and V2.
  • I’m continuing to sanity-check the output for addresses with increasingly complex transaction histories.
  • For V2 interest, I’ve traced back the contract-related issue from the previous update to whether to credit borrow interest on RepayBorrow() events to the payer or to the borrower in the event that these are different addresses. I had initially chosen to credit the payer, but I realize now that it needs to be credited to the borrower (sorry payer), otherwise we mess with the tracking of accountBorrows in a way that causes certain contracts to get showered with more accrued interest than they should.

Once the results are updated to account for this latest change, I’ll post output with a list of users and their accrued supply+borrow interest (in USD-equivalent at the time of accrual) across all V1 and V2 assets during the early-user window.

In the meantime, I should note that in cleaning/reorganizing the early user analysis Github repo, the location of the version 1 distribution lists has changed. The link posted earlier in this forum will no longer work. These obsolete files are still available in the version_1 folder in the Github repo in case you have reason to refer back to them.

16 Likes