Debt floor and smallholder consequences

Hello all,

I hadn’t followed the recent increases to the dust/debt floor parameters for the various vaults, and wanted to chime in with some thoughts.

Specifically, I think we should be allowing repayments to vaults where the repayment<existing debt<debt floor, instead of requiring that repayments = debt where debt<debt floor.

As a smallholder of an ETH-A vault with less than 5000 DAI with a recent windfall, I thought I’d put some of it toward paying off my DAI debt, and realized that this wasn’t possible unless I paid off the debt in its entirety.

I get the logic behind raising the debt floor: we want the minimum size of a vault position to be such that profits from liquidating it are equal to at least the cost of participating in the liquidation auction.

So, payments that take the vault debt from above the threshold to below the threshold are a no go. Mints are also a no go. That much is clear.

But a payment on a debt already below the floor only reduces the size of the pool of capital that’s at risk of undercollateralizing the peg, ie, positions that wouldn’t get liquidated during a flash crash.

In the meantime, smallholders like me who may or may not have the capital to pay off what can be several thousand dollars all at once are forced to allow interest to accrue continuously until they can save up the money to pay it off in one go. Gross.

Is there something I’m missing here?

If the debt floor were not reflective of the natural equilibrium point for liquidation participation, and that point was actually lower, bad actors could repay just enough to stay below that threshold, keep from being liquidated. However, this seems like a non-issue for 2 reasons:

  1. If the debt floor is higher than the natural participation threshold, then we’re already liquidating sufficient positions. Debt floor should be set based not just on auction participation costs, but also on the basis of where too much capital exists below the liquidation participation threshold in aggregate. Remember, you can’t open a vault under the debt floor, and you can’t repay when the repayment would take your debt below the floor.
  2. There are immensely diminishing returns for a bad actor in this situation, and they’re one-way. If I wanted to game the system in this scenario, I’d need a huge number of legacy vaults that happened to fall below the debt floor after a debt floor increase–something that you couldn’t initiate. Once I played keep-away from the liquidators, I can’t mint more DAI unless I put myself back above the debt floor. You could certainly capitalize on that opportunity if you happened into it, but it’s an edge case of an edge case.

Thoughts?

3 Likes

I’m not going to endorse any particular action here or opine about this specific situation, but we need to keep our eye on customer experience. I’ll leave it to others to weigh in more specifically.

1 Like

The debt floor being raised in general is annoying as it creates a huge barrier to entry for people like me who are trying to get going in the crypto space and want the benefits of having a Maker vault, but have <$1000 to invest at a time and also have difficulty saving money at all.

This may be hard for some to believe but not everyone works a white-collar job, or even a decent job. I’m a grunt, I do “shitwork” for a living, earn anywhere between $200 and $500 a week (depending on availability of work; there are some weeks I can’t get any work), and I have a family that I need to feed. I want to build a passive income for them so that if something happens to me they’re taken care of in some way; this was going a lot better before the debt ceiling was raised. Now, between the gas prices and some (poor, I think) decisions on the DAO’s part, it is almost impossible for me to get any traction whatsoever with Maker. I’ve made more progress on that front just this week with Bancor than I have in my entire time using Maker. I can’t be the only one here in the situation.

Overall, I think the move may have shafted a lot more people than the others seem to realize. It was my understanding that one of the foci of this DAO was to make available to the common man the set of tools for high finance. If I’m correct about this, then have we strayed from that focus? Because it certainly feels to me like we have.

Yes. We should allow those payments. But we should lower the debt floor, it is too high for the system to be in any way usable by people like me.

These types of smart contract transactions aren’t really useable for people with your capital amount at this moment. Gas fees are a much larger percent of your portfolio, making it irrational to use. Until these services are available on L2 or L1 gas fees go down, unfortunately dust/debt floors will not go down.

1 Like

“Go pound sand.” Best response, clearly we’re at the forefront of financially liberating people. What about the OP? What about allowing low-income holders to get out of the system so they don’t drown in stability fees? If we tell them to get bent then we’re not much better than TradFi imho.

1 Like

That’s not what he said. The fixed costs and transaction costs are simply difficult to overcome.

That doesn’t mean we can’t try to figure something out. I think we should, but don’t know what. But gas fees aren’t set by Maker and that puts a lot of sand in the gears.

3 Likes

We have no control over what gas fees are and the scaling solutions to make gas fees less aren’t here yet. Getting mad at Maker for raising the debt floor because we have to in order to protect ourselves is misplaced energy. Trust me, we want to keep every user we can.

2 Likes

Yes, of course, you’re right; I am experiencing a migraine and what you said simply rubbed me the wrong way in this more irritable state. My fault, I apologize.

Is the debt floor universal? Or can we set it on a per-ilk/vault-type basis? Not to be that guy that suggests YAVT, but perhaps we could experiment with a vault type with a lower debt floor and <dust debt repayments but with a vastly lower DC and see how that plays out alongside the current setup? The thought being that we should have options for everybody, wider nets and all that. This doesn’t solve the gas costs obviously but those are largely outside our control anyway, and the Ethereum Foundation is working on scalability.

The issue comes down to liquidation costs which is the reason for the dust floor to begin with. Check out DeFi Explore and you’ll notice a whole bunch of active vaults that can be liquidated but haven’t due to not being profitable for keepers. If we lowered the dust floor, more of these underwater vaults would accumulate and this could create systemic risk for the protocol. To answer your question, yes it is possible to set the debt floor per ilk.

1 Like

Debt floor is set on a per-vault basis. That said, the point of the debt floor is to ensure that liquidations happen when they should.

Scaling is coming, whether by migration to L2s, reduced congestion because others migrate to L2s, and soon enough (ETHGlobal summit today had October '21 as the target date!) the merge.

I hope that that reenables people like you and I who don’t have a lot of capital to access these financial primitives.

However, scaling will likely continue to be an arms race: build a network 100x as performant as ETH1 to handle more volume, and instead, increased adoption puts us at 10x the number of transactions, but ecosystem growth and complexity of what we’re doing on the network will also increase by 10x, and then we’re back where we are now.

Not unlike dialup to DSL to cable to fiber: the content and number of users will likely keep pace with and/or outstrip the network.

For Maker and the vaults, that means that any of the processes that are contingent on the degree of network congestion are going to cause some problems.

I think we’re going away from my original question, however:

What’s the problem (game theoretic, technical, or otherwise) with allowing repayments in the scenario where 0<debt after repayment<debt floor?

If there’s not something I’m missing, I don’t see why we don’t at least work to make that happen.

1 Like

I get why there’s a dust floor. That piece makes sense. I’m not asking why there’s a dust floor.

Why can’t you partially repay a vault while it’s below the debt floor to begin with?

1 Like

While this guy is upset about raising the debt floor, that’s not what I’m asking about.

If we let people partially repay their debts who are already under the debt floor now, we reduce the risk of under-collateralization/peg instability overall, and at least don’t fuck over the most under-resourced users of the protocol.

2 Likes

I think it’s valid point considering the raising of the debt floor is what caused the issue to begin with, and considering how we approach that particular lever so this doesn’t happen in the first place I think is worthwhile. But you also are right in that this is for a different thread and gets away from your original question.

My guess is that since the floor was so low at the start, it simply may not have been considered a realistic possibility that such a situation would really arise; no one could have predicted just how well things have gone for DeFi over the past year or two. As for what we can do about it, agreed, I don’t see why we shouldn’t work towards allowing this.

That I’m not sure. Hopefully @Protocol-Engineering can chime in on the reasoning behind this.

New to the Maker forums, who’s @Smart-Contracts?

Lol edit: okay so that’s the actual team making the Maker contracts, I should have taken the 5 seconds to click the username

1 Like

Just chiming back in here to add: I skimmed some of the original threads on raising the dust floor from last year, and one of the salient points raised was that knowing what the floor Should be a priori is really hard.

You have to estimate gas costs (which is already a huge issue, hopefully 1559 helps us all out here), and you have to estimate the proceeds of the auction. Very tricky.

While I want to move forward with the thrust of my OP, which is just getting the ability to partially repay debts for vaults that are already under the debt ceiling, I think there’s absolutely a broader discussion to be had about trying to calculate a debt floor on the fly instead of making it something we have to set arbitrarily via governance, particularly because it’s intended to mitigate a risk that, should it occur (ie, spike in gas prices) will happen fast, faster than governance.

I’m curious why 5000 DAI (seems like a very round figure to me) is the floor for ETH-A vaults. Like I said, skimmed a handful of threads but didn’t see anything that got into the numbers off the top of my head, but that’s me not looking–anyone here followed that conversation closely enough to throw me a link?

eg, what’s the expected gross profit on a liquidation auction as a percentage of the loan balance? That seems like the relevant info here.

1 Like

There is some analysis here: [Signal Request] Adjusting Dust Parameter (2021-2)

3 Likes

I’m not a SC dev, but I can chime in and say that repaying nothing but the full debt of a Vault under the dust limit is not possible, and would require a rewrite of the vat - the “vault engine” of the Maker Protocol, due to the following line of code: dss/vat.sol at master · makerdao/dss · GitHub
I am not sure why exactly it was designed this way, to not allow partial repayments of dusty vaults, but when MCD was deployed, the dust limit was 20 Dai, so the gas fee landscape has definitely changed significantly since the code was written.

4 Likes

@lollike is correct. This can’t be easily changed. Even if we could though enabling partial repayments would defeat the point of the dust limit as someone could open a vault with dust debt then repay most but not all of it and repeat. This would allow spam attacks which is what the dust limit is there to prevent.

9 Likes

Thanks for popping in to offer some informed perspective–

If it’s a technical limitation of how dust is set up, that’s unfortunate.

However, to your second point, that’s not what I’m suggesting.

Currently, my understanding is that you already can’t open a vault with debt debt floor result in debt < debt floor afterward.

If you’re already above the debt floor, things stay exactly the same. But if you’re not, then allow partial repayment.

Spammers would need to have opened vaults, and then a raise of the debt floor would have to occur to be in this condition, making an a priori attack a lot more difficult, no?