Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve dispute resolution #67

Open
4 tasks done
refund-agent2 opened this issue Feb 23, 2023 · 13 comments
Open
4 tasks done

Improve dispute resolution #67

refund-agent2 opened this issue Feb 23, 2023 · 13 comments
Labels
a:proposal bisq.wiki/Project_management#Proposal needs:triage bisq.wiki/Project_management#Triage

Comments

@refund-agent2
Copy link

refund-agent2 commented Feb 23, 2023

This is a Bisq Network project. Please familiarize yourself with the project management process.

Description

This project contains diverse proposals to reduce arbitration cases and make it clear that arbitration was the last resource.

Rationale

Requiring arbitration became worse for traders since we can't fully reimburse them. This project aims to reduce reduce arbitration cases by extending mediation process after a suggestion is delivered and improving communication during the dispute resolution process. Arbitration cases can be divided into:
Unresponsive trader: We need to make sure who is not responsive before opening arbitration. This is the most frequent, and there's not much we can do about it as long as they don't explain they've went away.
Bugs: We need to make sure they're reported. Manual payout must be the default option in this cases, as full reimbursements suppose risk for the DAO.
Traders disagree with mediator: A trader should let know the mediator why they're not accepting a suggestion, most of them are mistakes. This is the most infrequent arbitration case.

Criteria for delivery

Improve something is a never ending project, so I'll limit the scope of this project in time: All tasks will be completed and code will be ready to be included into next Bisq release before the end of March and measures of success will be taken 3 cycles after measures are implemented.

Measures of success

  • Increase manual payouts.
  • Mediators are informed by traders when funds are not released before opening arbitration.
  • Reduce total arbitration cases (37 per cycle in last 3 cycles).
  • Unresponsive traders % increased (90% during last 3 cycles). Increasing unresponsive traders is only desirable if we reduce total arbitration cases.

Risks

I considered asking for software checking if a deposit tx was spent to close a ticket, but I think that human actions are enough to close a ticket, so I don't think that sensitive areas will be modified. Risks that I can think about are:

  • Overloading users with info. Reducing text fields should be a secondary goal.
  • Mediators increase work load as some tickets are not closed.

Tasks

  • Message at mediation chat when traders accept/rejects mediation or opens arbitration. @jmacxx PR6597
  • Change system and chat messages at mediation and arbitration. @jmacxx and @refund-agent2 PR6597
  • Keep mediation ticket open after sending proposal. Mediator decides when to close a ticket. PR6597
  • Limit the minimum trade amount when creating an offer to 50% of the max amount. PR6593

Estimates

Less than 1300 USD.

Notes

The features required have changed a lot since the creation of this project, thanks to @jmacxx and the rest of the support team for clarifying the features and providing feedback.

@refund-agent2 refund-agent2 added a:proposal bisq.wiki/Project_management#Proposal needs:triage bisq.wiki/Project_management#Triage labels Feb 23, 2023
@w0000000t
Copy link

w0000000t commented Feb 23, 2023

Personally, I don't see any critical point to this idea; would require reworking some areas, but doesn't look like this should introduce risk of new issues to me

@ghost
Copy link

ghost commented Feb 24, 2023

Regarding task 1 (Follow up mediation suggestion) - does that also include the ability for the mediator to make revised/corrected payout suggestions? I think it would be nice to have, just asking to make sure we're on the same page regarding work.

@refund-agent2
Copy link
Author

Definitely would be nice to have, but since it has been stalled for so long, I don't know if it will keep this project stalled.
@pazza83 @leo816 Do you frequently need to correct payout suggestions? This feature would be great as a manual payout is difficult and time consuming, but if it's difficult to implement and not used much it's better not to implement it.
I would include it if you think it's possible to do it in about two-three weeks. Otherwise, I'd rather keep it with an automatic message and keeping tickets open until they're closed by the mediator.

@pazza83
Copy link

pazza83 commented Feb 24, 2023

@pazza83 @leo816 Do you frequently need to correct payout suggestions?

Not often. Maybe once every few cycles. The feature would be nice to have but would not need to be used often. Usually the reason it would be needed is if I have made an error or something has happened after mediation proposal (eg funds being refunded or payment arriving).

I think most manual payouts I make are result of either a bug or user error (user deleting needed data).

@pazza83
Copy link

pazza83 commented Feb 24, 2023

My thoughts are:

Unresponsive traders
As they take up to 90% of arbitration cases I would like to see a solution implemented for these trades that can avoid arbitration / funds going to the donation addresses if possible. I think this would benefit both the DAO and the responsive peer.

Bugs
Agreed these should be reported. One of the issues I see is that traders can become unresponsive after they have accepted mediation. I suppose if they are infrequent Bisq traders they have no reason to regularly check in on the app to see if the other peer has accepted or if there has been a bug. There is also the issue that manual payouts require a somewhat higher level of technical skill than trading and users are required to provide a hex code to complete the trade. I think this can put some traders off. I frequently see traders become unresponsive when being asked to supply the info needed to make a manual payout. I think some of them prefer to reply on arbitration, or just lose interest in resolving the issue over time.

Traders disagree with mediator
I think quite a number of traders that disagree with the mediation suggestion do let mediators know. From my perspective the disagreements are often not based on the trading rules or suggested penalty amounts, but are often based on annoyance of being penalized for their actions. These trades usually end in mediation with both traders being responsive.

With regards the criteria's for success:

Increase manual payouts.

Yes, manual payouts should increase in cases where both traders thought they had accepted mediation but a bug meant the trade was not paid out.

I think having the option to re-send mediation acceptance message would be useful. This would make it more likely a message gets through when the first one does not get sent due to a tor issue. This could be implemented in the same way re-send payment confirmation works.

Also from experience of trading on Bisq I not confident that the status of the mediation ticket is always accurate. For example as a trader on Bisq sometimes I might wait for the UI to show me that my peer has accepted mediation before I accept. In many cases when I do choose to accept mediation the payout occurs immediately and I was not informed the other peer had already accepted. Maybe if the status of the messages between peers was more accurate it would decrease arbitration.

For example allow peers to see if their counterparty had accepted mediation proposal or conversely rejected it and seeing what the reason was for rejection, therefore allowing a manual payout to be considered.

I think traders on Bisq are left in the dark about their peers actions during the mediation process. This could be improved.

Reduce total arbitration cases (37 per cycle in last 3 cycles).

Agreed, I think it should be measured as a percentage of arbitration cases for total number of trades. I think the best ways to drastically reduce this is have a protocol to deal with unresponsive peers and avoid sending funds to the donation address if possible.

Unresponsive traders % increased (90% during last 3 cycles)

I would like to see the percentage of unresponsive traders cases as a percentage of total arbitration cases decrease.

@refund-agent2
Copy link
Author

Avoid arbitration in case of unresponsive peers that will require to change the trading protocol. If it was possible to avoid arbitration for this cases, it would be possible for all the cases.
Leaving that out of this project does not mean that it is not important, but it needs to be considered apart.

I don't think that knowing if your peer has accepted mediation should change whether one accepts it or not. I am not sure if there are alerts when your peer accepts mediation. If there are, it does not change the fact that traders should accept mediation as soon as possible and inform the mediator if the suggested payout is not broadcasted in the next 48h.

One case that happens sometimes is that a peer, according to their replies in arbitration, didn't know they had to accept mediation or did not know their peer had to accept mediation as well. An automatic message and not closing the ticket when suggestion is submitted should improve that.

@pazza83
Copy link

pazza83 commented Feb 25, 2023

I don't think that knowing if your peer has accepted mediation should change whether one accepts it or not. I am not sure if there are alerts when your peer accepts mediation. If there are, it does not change the fact that traders should accept mediation as soon as possible and inform the mediator if the suggested payout is not broadcasted in the next 48h.

Yes there are alerts when a peer accepts meditation but they are inconsistent.

I think my point is if you know your peer has accepted and then you also accept if you do not receive a payout you will message mediator who can initiate a manual payout.

Currently traders are in the dark, so they do not now what their peer has done so therefore they default to arbitration if they do not receive a payout in the time prior to the time lock rather than re-opening mediation.

@MwithM
Copy link

MwithM commented Feb 25, 2023

Quoting a user who just had their first dispute resolution case in the link above:

The mediation process is difficult. BISQ does a good job with having pop-up boxes to help explain things. The mediation is like going blind. I didn't even know there was a difference between mediation and arbitration until yesterday. This is not clear to the user. As far as liquidity goes, I do not understand why there needs to be a security deposit for the liquidity provider. Who or what is that for if it doesn't go to the winner of the arbitration?

@refund-agent2
Copy link
Author

refund-agent2 commented Mar 2, 2023

We had a call yesterday with @jmacxx and showed a demo of the work done.

We saw that mediators get a message when arbitrator does a payout. It would be better to be alerted when arbitration starts, so they can close the mediation tickets and traders know they need to attend to arbitration.

This 2 features were required:

  • Either a message is sent 48h after opening arbitration to ask if ticket can be closed and why not, or messages are sent to mediation chat when a trader clicks on "accept-reject mediation".
  • An optional feature: mediators to be able to download a trading chat log from traders if they agree to. I think that if this not tamper evident (signed) is better to keep the screenshots traders are doing right now when needed.

@refund-agent2
Copy link
Author

refund-agent2 commented Mar 9, 2023

This proposal has 3 requirements:

  1. Include explanation on how much buyer and seller get from mediation so it's easier for them to know if they should accept it.
  2. Explaining that if mediation is not accepted and arbitration is required, 1 security deposit is lost.
  3. Change the button from "reject mediation proposal" to just "send to arbitration".

Requirement 1 would be nice to have, as it's not the first time that a user gets confused when having to accept a mediation proposal.
Requirement 2 is overlayed already with PR6597, where I already asked to modify the "next steps" field. I'll submit a review to implement that requirement trying not to overload that field.
For requirement 3 I think it would be even better to have 3 buttons: accept proposal, reject proposal and send to arbitration, which would be greyed out until the timelocked DPT can be published.

@refund-agent2 refund-agent2 changed the title Improve dispute resolution at mediation and arbitration Improve dispute resolution Mar 12, 2023
@pazza83
Copy link

pazza83 commented May 2, 2023

I have upgraded to v.1.9.10 today.

Will report back how it goes with the new mediation process.

@pazza83
Copy link

pazza83 commented Aug 8, 2023

Measures of success

  • Increase manual payouts - this is definately the case both @leo816 and myself are making lots more manual payouts reducing the number of trades going to mediation. This is also allowing us to collect logs to find out why some trades are requiring manual payouts with a view to identifying any bugs.

  • Mediators are informed by traders when funds are not released before opening arbitration - This is happening. It is a lot better than previously where mediators where in the dark after the mediation proposal.

  • Reduce total arbitration cases (37 per cycle in last 3 cycles). Looks to be achieved. Last 3 cycles has 25, 40, 21. Almost all are now caused by unresponsive peers.

This project has improved the dispute resolution process many thanks @refund-agent2 and @jmacxx

Future points to action:

@refund-agent2
Copy link
Author

refund-agent2 commented Aug 9, 2023

I was waiting for the end of this cycle as this changes were introduced during cycle 47, but overall it seems that the changes made the dispute resolution better: last cycle 100% of the trades in arbitration were unresponsive traders and mediator's feedback has been positive too.
It will be difficult to compare total number of arbitration cases as volume last month was low, on the current cycle the amount of cases are growing to a normal level according to the volume.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a:proposal bisq.wiki/Project_management#Proposal needs:triage bisq.wiki/Project_management#Triage
Projects
None yet
Development

No branches or pull requests

4 participants