Introducing DssGovRewards

I’ve created a repository called dss-gov-rewards which houses the contracts to enable paying out rewards to MKR locked in governance.

Why?

Maker security relies on binding MKR holders to the consequences of their votes. This assumption is broken for MKR that is borrowed on a lending platform. We have solved the most extreme version of this with flash loans, but the underlying problem remains. Fundamentally, Maker is not secure if there is more MKR available to borrow than there is locked in Chief/DssGov. The simplest and probably most robust way to solve this is to pay people to lock their MKR in chief and thus keep their MKR off the market.

Implementation

dss-gov-rewards is a lightly modified rewards contract from the UNI LP pool rewards. MKR IOU tokens can be deposited in, and you get rewards out. Both the staking and rewards tokens are arbitrary, so this can be used for rewards in either DAI or MKR depending on what governance wants to do. Additionally because this is a separate module from dss-gov, it can be deployed for the current Chief as well as DssGov.

I’ve also added DaiRewardsDistributor as an example of how rewards can be done via the keg module. The idea here is to siphon off some % of the MKR burn and redirect it to rewards. The nice thing about this is we can adjust that % to control for how much of a ratio we want of MKR on the market vs locked in governance. Alternatively the rewards can be made in MKR as well if the community desires.

Another bonus of this module sitting completely outside governance is that we can upgrade it very easily. We simply shut off rewards to the existing contract and switch them to a new contract. IOU tokens are completely opt-in to whichever contract they want, so people will move over naturally. This may be useful in the case where DeFi liquidity pools start automatically depositing into rewards (similar to what Compound does with Dai and the DSR).

Security

This module is using code that has already been audited and tested in production, so it should be safe to use. Additionally, since it is sitting outside the core Maker system, and only interacts with the IOU tokens there is limited room for catastrophic bugs. Worst case scenario we can just turn off the reward stream and we burn a few days of revenue.

Discussion

Looking for feedback on the route governance wants to take with this.

Do we want to distribute rewards in MKR or DAI?
Should we divert some portion of the MKR burner into rewards (% of profit) or should we pull it as a fixed operating cost?
What % of profit should be used? Should we target some ratio of MKR on the market vs locked in governance.

Please note that I’m expecting for historical reasons the Foundation cannot comment or be involved with this project.

36 Likes

This is awesome Sam! TY! Finally we can move 1 step forward to incentivizing the dedicated and devoted MKR community.

Personally I would advocate for payments w/DAI via the burner — just my early thoughts. Will be interesting to see what the community thinks!

4 Likes

I think paying DAI as kind of dividend as a % of operating profit if fine

Issuing MKR will complicate stuff and will be odd when at the same time we burn MKR.

If it’s not too complicated, issuing them with stability (operating expense) would be cool. We can start small and increase it to be a dividend aristocrat on which the Maker Community can take retirement on :slight_smile:

7 Likes

Personally I agree with issuing DAI instead of MKR for a couple reasons.

  1. We eliminate some auction inefficiency.
  2. I prefer giving individuals the option to buy more MKR instead of forcing them to.
  3. Human nature is a part of this equation, and I can see more hype being driven by dividend payout analogues. The burner can be a little abstract, but I think most people understand getting cash.
10 Likes

What would you say to the people concerned about tax implications (hence the engineering of the buyback mechanism to begin with). I hear this argument the most (from Americans) and hope it doesn’t create too much friction in this methodology being implemented.

7 Likes

Dividends and taxes are something we should consider, but they are not the main reason behind this module. The main reason is to secure the system against having too much MKR on the market. This is a classic prisoners dilemma game theory problem where individual defectors (MKR holders who loan their MKR) are rewarded with interest on their MKR. The only way to prevent this in my view is to give them a better offer. So yes taxes are unfortunate depending on your politics, but I don’t see any other way to solve this.

Keep in mind I suspect we may not need to go very high to beat the market. Aave offers 1.25% interest on MKR, so with 29M in fees / year we would only need to run the rewards at 20% of the burner to match that.

5 Likes

Love this. I think rewards in DAI out of the surplus is great for future rewards. Can we do a retroactive reward via MKR inflation to all previous MKR staked in chief similar to how uniswap rewarded early LPs?

4 Likes

@hexonaut fantastic! You are on fire! :clap: :clap: :clap: :muscle: :muscle: :muscle:

Thanks!

I also agree with most of you that paying in DAI makes a lot sense.

@hexonaut, just an idea, but would it be possible to have a ‘blacklist’ of some sort, so if some MKR holder doesn’t want to be rewarded, they can still lock their MKR in Chief/DssGov without having to incur in taxable events (such as the reward)?

Technically this is probably do-able, but black lists of any kind make me nervous in crypto.

3 Likes

As far as I understand the IOY is staked. So if you don’t want to get rewards you just do nothing. If you want to get rewards you have to stake the IOY.

The governance is still working as it is.

4 Likes

Ah yes you are correct @alexis. You need to opt into rewards. You can still do voting without rewards.

3 Likes

Excellent!
This seems to answer @Aaron_Bartsch question completely then.

1 Like

@hexonaut This is great, I hold less than 10 mkr never participated in voting but now im going to , when can we expect rewards in the mainnet.

1 Like

There is a dependency of getting the keg deployed, but after that it’s very straight forward to add. January or February seems like an achievable target, but that depends on the SC team schedule. The UI would also need to be put in place.

1 Like

Great work Sam!

Out of curiosity I checked how much Maker would need to spend yearly to match Aave’s current MKR yield. The yield there is 1.24% and if we were to match it on current $180m MKR locked inside voting contract, Maker would need to spend 2.2m DAI yearly. Actually the yield on Aave is probably even higher if you consider borrowing DAI on MKR and farming it. Yields on Balancer and Uniswap are much higher, but you need to include ETH to provide liquidity.

Obviously the idea is to attract some additional voters, but we shouldn’t fool ourselves that the yield will be tempting, unless huge share of burn is used to reward voting. I do think this is going to be positive addition.

7 Likes

I am not too sure, it seems already integrated.
But we probably don’t want contract to call get rewards to avoid farming on it and reduce attack surface.

How is it going to work with the reward duration?

Ok gotcha, We first need to build a sort of reserve than send this reserve as reward for a period of time.

2.2M / year seems very doable. We are currently burning well over that. I was expecting this to be on the order of 20% or so of the burn which doesn’t seem like a whole lot to me.

1 Like

I would love to explore this further as well. While I totally agree with the spirit of this, if enough of the surplus is being distributed via this mechanic it’s going to introduce a major inefficiency.

3 Likes

What will the gas efficiency of these rewards be? This will add a lot of overhead, resulting in less value for MKR holders. Less effect on big holders but it’ll effect smaller holders more.

A more efficient way is doing a vault type style where you get automatic compounding of MKR. Rewards are in MKR and get automatically compounded. The exchange rate just slowly ticks up. [And possibly for tax efficient as a capital gain instead of dividend]

3 Likes

I agreed with that first, and then I think you can mitigate this idea.Of course you don’t want to be “too low”.So you want to offer something interesting otherwise people will just put their tokens elsewhere. BUT on the other side if you offer yield higher than other platform you will attract more people. In a way it’s good, but you also bring the risk to see more people voting just to get reward, without taking time before taking a decision. When you have fewer rewards, you have fewer votes. But at least those votes are made by involved members.
ps: I have to admit that i don’t know everything about Maker DAO and how you are planning to reward people. Will you need to stake AND vote, only stake … If someone has as link to a topic speaking about that would be amazing.

I also agree with that, I think reward in MKR is better. As people will be able to compound and also gain "power"on their votes. If they want to swap and get DAI they are , of course free to do it. But i like the idea to be part of a DAO and be reward in gouvernance token.

1 Like