Page MenuHomePhabricator

Implement opt-out user preference for TwoColConflict
Closed, ResolvedPublic5 Estimated Story Points

Description

Even once TwoColConflict is the default conflict workflow for a wiki, it should still be possible for individual users to choose to continue using the old workflow.

Acceptance criteria:

  • Create a new user preference in the Editing tab, which determines which conflict workflow will be used.
  • Preference defaults to TwoColConflict
  • Preference is only visible when TwoColConflict is configured as the default, and is invisible when configured as a beta feature.
  • If the user has opted out of the beta feature, transfer that over to the opt-out user preference.
  • Include browser tests.

Event Timeline

awight created this task.Feb 24 2020, 3:24 PM
Restricted Application added a project: archived--TCB-Team. · View Herald TranscriptFeb 24 2020, 3:24 PM
Restricted Application added a subscriber: Aklapper. · View Herald Transcript

it should still be possible for individual users to choose to continue using the old workflow.

What is the reason for this decision? No-JS? Asking because the more combinations and options, the more code maintenance and QA costs... :)

thiemowmde set the point value for this task to 5.Feb 25 2020, 1:31 PM

it should still be possible for individual users to choose to continue using the old workflow.

What is the reason for this decision? No-JS? Asking because the more combinations and options, the more code maintenance and QA costs... :)

Absolutely, we are aware of that and considered it in our decision making process. Our main reason, beyond supporting non-JS use cases, is that we felt we should also support users who base their conflict editing workflows on the current default interface (which is very different) and have a strong preference for not changing their workflow. While many people have given us thumbs up for the TwoColConflict interface, giving us the confidence to go ahead, we have also received feedback from several wikis/users that they want to be able to opt out.

Needs UI language for the preference. Needs UX decision about whether opting-out is unchecking a default-checked box, or checking an unchecked box. Involves CommComm.

Reminder: i18n messages require some lead time before deployment, to hopefully get translations, and for the "full scap" to refresh the l10n cache. Best is if the basic patch goes out with a train deployment (Tuesdays).

@Hanna_Petruschat_WMDE

I think it was decided that the setting should be in Preferences > Editing > General options.

My suggestion:

  • Text: "To resolve edit conflicts, use the Two Column Edit Conflict View."
  • The checkbox should already be checked, because the default will be "enabled for everyone", and people can individually disable it if they wish so.

Thanks @JStrodt_WMDE for the proposal.

I agree to use a positive phrasing. Looking at the other entries I could also imagine to follow their structure of sentences, e.g.

  • "Enable Two Column Edit Conflict View to resolve edit conflicts"

OR

  • "Enable the new edit conflict resolution Interface" (And then similar to the editor subtitle:) "This is sometimes called the Two Column Edit Conflict View"

The checkmark should be set, I agree.

@Hanna_Petruschat_WMDE

  • "Enable Two Column Edit Conflict View to resolve edit conflicts"

I also thought about that one, and that works for me as well. As long as we link to the help page to explain the name. (https://www.mediawiki.org/wiki/Help:Two_Column_Edit_Conflict_View).

  • "Enable the new edit conflict resolution Interface" (And then similar to the editor subtitle:) "This is sometimes called the Two Column Edit Conflict View"

I wouldn't use the word "new" as it gets old pretty quickly.

Change 576868 had a related patch set uploaded (by WMDE-Fisch; owner: WMDE-Fisch):
[mediawiki/extensions/TwoColConflict@master] [WIP] Add user preference to opt out from the interface

https://gerrit.wikimedia.org/r/576868

@JStrodt_WMDE and @Hanna_Petruschat_WMDE, personally I would prefer to turn the option around, while still using a positive wording. I find it problematic to give users an option they can use to express their dissatisfaction. ("Why is this enabled by default? I never asked for this.")

Suggestion: "Manually resolve edit conflicts by providing the full wikitext of both versions". I feel this describes the main benefit of the old interface.

@JStrodt_WMDE and @Hanna_Petruschat_WMDE, personally I would prefer to turn the option around, while still using a positive wording. I find it problematic to give users an option they can use to express their dissatisfaction. ("Why is this enabled by default? I never asked for this.")

I would imagine that this works similar in both directions. In either case we're enabling the feature by default. So the complaint "I never asked for this." is something we need to expect anyways. But providing the option to opt-out from the feature makes it a bit more transparent in my opinion. I think that it's hard to provide a good understandable description on what it means to use the old interface instead of something new. This is also not very flexible. Imagine at some point there's a third interface. Describing the new feature where we can use the link to the help page feels a bit more straight forward.

We could also think of providing a per-wiki setting if this should be enabled as opt-out or opt-in. This would be something that defaults to opt-out on the Wikimedia wikis but for third parties it could make sense to configure it the other way. They could let their users test the feature in an opt-in way then. In that case it makes even more sense to use a checkbox that focuses on describing the Two-Column-Edit-Conflict-Merge interface.

Third-parties can just not install the extension.

WMDE-Fisch added a comment.EditedMar 5 2020, 11:52 AM

Third-parties can just not install the extension.

Just to clarify that: My use case was about third parties that want to have a user based opt-in instead of opt-out. Not if they want the extension at all. Also this was just meant as an example that in my opinion backups the current text to rather talk about Two-Column-Edit-Conflict-Merge interface in the settings instead of talking about the "core" interface.

@Hanna_Petruschat_WMDE

  • "Enable Two Column Edit Conflict View to resolve edit conflicts"

I also thought about that one, and that works for me as well. As long as we link to the help page to explain the name. (https://www.mediawiki.org/wiki/Help:Two_Column_Edit_Conflict_View).

@Hanna_Petruschat_WMDE @Lena_WMDE and @JStrodt_WMDE agreed on the text above. The setting will then also be enabled by default to allow the opt-out.

Change 577276 had a related patch set uploaded (by WMDE-Fisch; owner: WMDE-Fisch):
[mediawiki/extensions/TwoColConflict@master] Add browser test for the opt out feature

https://gerrit.wikimedia.org/r/577276

Change 576868 merged by jenkins-bot:
[mediawiki/extensions/TwoColConflict@master] Add user preference to opt out from the interface

https://gerrit.wikimedia.org/r/576868

Change 577276 merged by jenkins-bot:
[mediawiki/extensions/TwoColConflict@master] Add browser test for the opt out feature

https://gerrit.wikimedia.org/r/577276

thiemowmde closed this task as Resolved.Mar 17 2020, 12:40 PM
thiemowmde moved this task from Demo to Done on the WMDE-QWERTY-Sprint-2020-03-04 board.