Refund dYdX user funds lost from high price impact out of ProtoRev profits

8aqhwk

3 Likes

But what happens if tomorrow a user creates a proposal asking for a refund on a 50$ trade because he got routed through a low liquidity pool and lost 75% of his money?

Are we going to deny that because the amount is too small? 50$ are a lot of money in other countries even if it seems like a very small amount for us.

I see the main responsibilities for this issue here at dydx, skip and the user himself. They had all the information they needed and unfortunately that’s how crypto works.

Let‘s create another scenario. Someone gets scammed and there are $1M funds that are lost to the scammers. In this case the user won’t receive any compensation.
And I can tell you 100%, this scenario already happened.

5 Likes

I was hesitant about refunding because it may sent a bad precedent but as @zmanian points out cross chain routing is way far to be perfect, I am not overlooking the irresponsible behavior on the part of the user, and frankly speaking that amount of money isn’t owned for a person living paycheck to paycheck, so i propose to refound only 19.44% of 620K which represents half of his loss (120571 USD) payed in USDC or USDT not in OSMO, a little expensive lesson to learn for both sides of the equation.

Interesting angle to use a part of the ProtoRev to act like some kind of bounty-program for bad trading experiences. However, it is extremely difficult to determine who is to blame in the end.

Creating some kind of program also gives an area of attack for abuse where a user can create an illiquid pool and use that pool to a bad trade and then come back to claim a refund. That is surely not what we would / should want. Of course the user will take some financial damage, but Osmosis will take reputational damage. Which in time will add up and do much much more damage than any bad trade can do.

In this specific case; I do agree with @Winfred. Why are we not having this conversation with Squid and dYdX? They messed up and Osmosis has to pay? How does that work?
In real life; someone else damages the house of your neighbor and because you happen to live beside them and the vandal used your lawn to get to the neighbors house you have to pay? Is that how the world works nowadays? If there needs to be a refund; it is dYdX and Squid who have to act up. They messed up, they need to be responsible.
Osmosis can’t be held responsible for all shitty front-ends we might see in the future.

In the current form where Osmosis takes all the blame while not being able to do anything about it, this would be a very hard veto from my side. Especially since it can never ever be held like a one-time scenario. There will always be special cases and thus always exceptions making it a “one-time scenario”.

We should also surely not forget that “one-time scenarios” do not exist in legal terms. Setting a precedent is setting a precedent which can be used in future cases to argue that refunds and compensation should happen. Osmosis can’t and shouldn’t take any responsibility for any shitty front-end build in the potential future.

5 Likes

This is the correct question

3 Likes

Can the user prove that they actually made the transaction and not an automated system running on the same account? The more I look at this the more it looks like a failed bot trade.

Governance does not exist to help with stuff like that.

3rd edit: just a moment while I parse the brain teaser but since I think this is a brain teaser I don’t think we should be refunding.

4th edit:

I view this proposal as literally hostile. This is not a new user or somebody new to crypto.

this is somebody participating in advanced forms of arbitrage hundreds of sub one osmo IBC transactions.

If they can do that then they really ought to have been more careful with their million dollars and I’m saying this as someone who has made their own painful mistakes and with empathy on that level (but that level only)

I really need to get that validator back up so I can make the veto count.

5th edit:

The proposal seems to actually link to a client update transaction made by @icycro.

The account is a relayer and I’ve decided to stop deleting my past comments in the brain teaser.

6th edit:

Ok so Mintscan is squid router.

The user might not have an osmo account they control?

7th edit:

  • We should not refund the user in question
  • If the squid contract is flawed we should gov-remove it if we can
  • We should stop using contracts OR we should make Osmosis permissionless for contract uploads.
    • It is for the reason that I said we should go permissionless before: at the time I was quite worried about voting yes on a flawed contract and it seems that I did do that.
    • Myself and notional were not capable of evaluating every contract.
    • We were approving developers and we were not approving specific contracts so treating it as a vote on contracts did not make sense.
  • Osmosis should encourage the usage of its native apis, because they were clearly safe in this case.

I don’t get it yet people.

Respectfully,

-Jacob

3 Likes

I would like to remind EVERYONE about the ‘Juno Confiscation’ situation and how destructive that has been to Juno community.

We should not be refunding or confiscating assets because of our personal ‘morale takes’ on the situation - this is completely backwards and goes against everything decentralized finance stands for.

I will Veto this if this proposal ever gets published.

3 Likes

Exactly.

We either start refunding everyone or we refund no-one.

VETO’ing this should it ever be posted officially, and open to follow-up discussion about actual mass scale refunding because of bad routing or not going forward.

4 Likes

This, mein anon internet user, this exactly.

2 Likes

gov prop fees would probably prevent small loss claims, but there’s definitely a difference between 6fig claim and a 2 fig claim.
Not too sure your last scenario is even relevant, the fact is protorev captured this and not arb bots means gov is being asked to make a decision.
Osmosis was the only protocol that profited from this obvious routing mistake and is in a position to enable a refund. We can not just promote ibc when it suits us and then point fingers when things go wrong, I like to think we are all better than that. Good to keep in mind that squid has been a huge benefit to osmosis.

1 Like

A couple issues. Protorev automatically deducts 20% to pay skip. As the prop is currently worded, Skip would get paid regardless and the community alone would be paying for this user error. Shouldn’t SKIP be paying back a portion as well? If Skip is not required to pay back any funds then they are incentivized to have bad trading routes so that they get more funds and osmosis community pays back users. Not to say they would do this, but proper alignment needs to be put in place.

Also this sets bad precedent. Should every $500 that was user mistake be returned to user if that is significant portion of their portfolio?

If this passes, the protorev proposal needs to be revisited and their has to be norms established. i.e. timeframe to settle disputes such as this.

10 Likes

Timeframes will be especially important given that if a burn proposal passes (or any protorev proposal in the future) the funds won’t actually be available to make refund requests like this for long.

Imo unless we’re building out a policy that refunds traders for poor execution as a matter of course (i.e., a trading subsidy for all trades), we shouldn’t be entertaining this, and should be treating this as though the funds have already been disposed of.

If anything, this shows just how important it is to make a decision on the protorev funds ASAP. Otherwise the funds will be sitting in the module wide open to asynchronous requests like this. It’ll end up too confusing and time-consuming for the protocol to deal with.

1 Like

tl;dr: This is messy. User should have been more careful, dydx/squid should be responsible, but we can use common sense and fix it…but then what is the arbitrary $ amount for these refunds? Do we turn protorev into a refund machine? (a topic for a different day)

  • The UX failure primarily came from dYdX/Squid improper routing, so I’m not sure why they aren’t being held most accountable here.

  • Then again, we have yet another case of a lack of accountability by a user who recklessly yeeted 600k while ignoring an output display of ~$1 = ~$0.60.

  • We’re honestly lucky Protorev caught this as there are probably 3-5 arbitrage bots at a minimum that were going to fix the price differential from the reckless swap.

  • Then again, common sense says that just means we have the ability to fix this and put systems in place to prevent this going forward to help the onboarding people in the coming months/years.

Honestly, this conversation will eventually move to “What are we using Protorev for? A price impact/trader refund backrunner or Protocol revenue generator?”

That is a separate issue that can be argued, but unfortunately without precedent, this is going to be a one-off case until then.

I personally see both sides of the equation. The lack of accountability and haphazardly throwing around $600k without reading any type of output is obscene. Even with that, it was the fault of dYdX/Squid front ends. Alas, everyone makes mistakes and this is a big one that can actually be fixed. (then again, what is the arbitrary rebate $ amount we’re going to set for these refunds going forward).

2 Likes

I know I’d said final comment, scratch that. I’m back.

Really really feeling strongly against this and urging everyone to vote no with veto on the prop. If we start refunding people who are transacting on other DEXes, this will open up a can of worms and attract more requests for refunds from people who aren’t even users of or aligned with Osmosis.

Imo it’s a terrible thing to even consider.

We all came here knowing the risks involved with interacting with permissionless systems. Had it not been protorev, it would have been someone else or arb bots.

We should treat this situation similarly.

Refunding someone just because they lost $250K, as many have stated stated, sets a really bad precedent. It also feels like manipulation of the highest degree.

This guy approved a transaction that indicated 0.6XX as the exchange rate. He conducted a 600K transaction quite negligently which for me indicates he’s not exactly struggling financially in life.

There are people who have been screwed over for much smaller amounts, but amounts that are life changing for their situations. Why haven’t they been refunded?

Can we please not turn Osmosis into some elitist bullshit society where the rich get refunds but the plebs can go to hell?

thank you very much.

3 Likes

This individual has already posted in this discussion ten times, emphasizing a clear stance against compensating those who incurred losses due to protocol incompetence. While users bear a degree of responsibility when engaging in exchanges, there should also be an expectation that they won’t suffer significant losses immediately due to a routing mistake upon token swapping. Instead of consistently placing the burden on users who get “rugged,” let’s hold the projects in this space more accountable to safeguard people’s funds. Without addressing this issue, crypto adoption will continue to face obstacles, with protocols benefiting from millions while often maintaining anonymity and avoiding accountability for users’ financial losses.

3 Likes

Not sure what the relevance in saying I posted several times is…

My point above is simply that everyone either gets a refund or no one does, but there shouldn’t be special accommodation for select individuals.

For me, to be quite sincere, if this becomes how Osmosis chooses to deal with its users, I will look at other DEX alternatives outside of Cosmos to do my trading from because equality is something that means a lot to me.

2 Likes

Love this. The question isn’t about who is at fault or who bears responsibility, it is quite clear that osmosis was not at fault here and it’s was clearly a ux issue on squid’s part. The question is more of good will and further shaping how protorev should be used in the future (Barry’s point).
imo the user should always be reimbursed and dex’s should strive to be as capital efficient as possible. Replacing arb bots with the community (burning protorev) is simply not good and will lead to competing dexs taking advantage.

I don’t see how voting for reimbursement here sets bad precedent when it should be made very hard if not impossible for something like this to happen again.

3 Likes

By definition of arbs then everyone should always be refunded their price impact…. That’s precedent.

Also SKIP would need to agree to return funds as well. Any proposal that does not have SKIP return funds as well is non-starter. We can’t have them profitting off bad routes while the osmosis community pays for it. That only incentivizes them to create bad routes so that they profit with the users unaffected because osmosis holder is subsidizing the user these costs

5 Likes

Unfortunately, Skip Protocol refuses to take responsibility, and there’s no expectation that they’ll bear any financial burden, even if the mistake stems from their team’s incompetence. As a small trader, I recently lost funds on an IBC trade in Keplr Wallet due to Skip’s failure to route through the optimal pool path for the token I was swapping. Despite the incorrect UI in Keplr and my awareness of the expected funds, I didn’t receive them. Despite Skip acknowledging the mistake and implementing new safety measures, as evident on their Twitter, they provided no support or compensation. Why should I, as a small trader, bear the full burden of their error? Where is the accountability and compassion in this space?

I am also in support of refunding the user.

We should be looking at a more holistic view of the situation and the business case for a refund, instead of nitpicking blame/responsibility/philosophy.

Like @zmanian said, cross-chain routing is still in its infancy and so special considerations must be given.

The situation can be condensed as follows:

  • Ethereum user wants to check out Cosmos
  • Ethereum user attempts to move USDC from Eth to Cosmos
  • Ethereum user loses 40% of their USDC due to bad UX while routing into Cosmos USDC
  • Protorev captured the profits (as intended) from this bad UX
  • There is now an opportunity to refund part of the profits extracted from this bad UX

I contend that this was a failure of UX at every level:

  • Frontend (dYdX) should not have allowed a 40% price impact swap
  • Router (Squid) should not have allowed a 40% price impact swap
  • Dex backend (Osmosis) should not have allowed a 40% price impact swap

The overarching goals of Osmosis and Cosmos at large currently are focused on new user adoption, TVL and liquidity inflows, simple and friendly UX, and showcasing Cosmos/IBC technologies. The loss of 40% of a new user’s funds on what should have been a simple USDC stableswap directly harms these overarching goals. No matter who is to blame, the outcome of a refusal to remedy the situation is to cast Osmosis/Cosmos in a negative light, which could have damaging ripple effects on further growth.

There is no need for anyone to “pay out of pocket”. Protorev did its job and extracted profits from the bad swap. Now the Osmosis community has the opportunity to return a portion of those profits extracted from the harmed user. This will result in an appreciative new user, and more broadly sends a message of goodwill that Osmosis takes care of its end users. This is exactly the outcome that we need to keep Osmosis growing strong with new users.

5 Likes