Help talk:Paragraph-based Edit Conflict Interface

About this board

Feedback and discussion page for the Paragraph-based Edit Conflict Interface.

Update: We completely revised the interface for this feature based on user feedback and user test.

Report a new bug in Phabricator

You can post in any language here, preferably English or German.

Triggers without an edit conflict

Summary by Thiemo Kreuz (WMDE)
Jalapeño (talkcontribs)

Hey there,

I'm working on a draft page on the English Wikipedia, more specifically a draft for YouTuber JackSucksAtLife. The issue is that it detects an edit conflict, when there was nothing edited for 3 hours. I just opened up the page and edited it, and then it says that there was an edit conflict. I have no more details. Could someone investigate this?

Thiemo Kreuz (WMDE) (talkcontribs)

I'm afraid this is a long known issue with the conflict detection in MediaWiki core and nothing that can be fixed in this extension. Sorry.

Won't work, page reloads every time the save button is clicked

Summary by Thiemo Kreuz (WMDE)

Issue with the $wgDiff3 configuration.

FunkyBeats99 (talkcontribs)

On my local dev wiki, the (just installed) feature is broken : I choose thanks to the radio buttons which version I want to keep, but when I click save, the page reloads and every conflict paragraph is highlighted in red. None of the options I chose are memorized. If I start over and try to save again, the same thing happens.

Thiemo Kreuz (WMDE) (talkcontribs)

Unfortunately that's not enough information. How was the conflict resolution interface triggered? How many rows of radio buttons appeared? Is JavaScript enabled? Does the JavaScript console show some error? It might also be the configuration of your webserver or PHP somehow not accepting array-structured form variables. But this is all speculation. Sorry.

FunkyBeats99 (talkcontribs)

Thanks for your swift response.

I trigger myself the conflict resolution thanks to two separate accounts (since it is my dev wiki) on two separate browsers (I tried a bunch, does not seem to be the cause of it).

I run MediaWiki 1.35.6 on a local EasyPHP dev server (Apache 2.4.25 x86 - PHP 7.4.19 x86 - MySQL 5.7.17 x86).

Javascript is enabled and works fine. No particular message in browser console either.

The error happens whether there is more than one paragraph or just one.

It seems that if I choose the newest, not saved yet, revision, the page reloads with a red "alert" background-color on conflicting paragraphs and deletes all choices.

If I choose the already saved revision, the paragraphs that had conflicts just disappear, but the page is still not saved: the interface shows then only the unchanged paragraphs, which is really weird.

I hear you about the PHP version, but every other extension works perfectly, so that would be odd.

Might be linked to my other extension configurations, I'll try on a fresh install and keep you posted.

Thiemo Kreuz (WMDE) (talkcontribs)

That sounds really strange. Sorry, I have no idea. I even went back and tested this older version (it's almost 2 years old by now) and it seems to work fine for me. The error sounds like parts (?) of the POST request are lost. Maybe it's an overly aggressive security or spam protection plugin in Apache or PHP?

Tinss (talkcontribs)

After several hours of digging deep in the code, I finally figured out was was causing the issue (at least for me). In includes/GlobalFunctions.php.

function wfMerge(
	string $old,
	string $mine,
	string $yours,
	?string &$simplisticMergeAttempt,
	string &$mergeLeftovers = null
): bool {
	global $wgDiff3;

	# This check may also protect against code injection in
	# case of broken installations.
	$haveDiff3 = $wgDiff3 && file_exists( $wgDiff3 );

	if ( !$haveDiff3 ) {
		wfDebug( "diff3 not found" );
		return false;

file_exists ($wgDiff3) always returns false even if the diff3 tool exists and it's path is correctly set. For that matter, it appears that checking if a file exist outside the server directory always fail, so I suspect this is a security feature.

Just commenting out the return false part fixed everything,

Unhelpful on a long thread with many replies on talk page

PamD (talkcontribs)

Two of us were trying to reply at the same time in I had to choose between the other editor's comment and mine. I opted for theirs, and had to copy mine from the right-hand column of the diff display, cancel my edit, go back in and find the right place in the thread again (hoping that no-one else was also replying), and paste it back in again. I don't know what would have happened if they;'d politely opted for my post instead of theirs: some kind of Mexican standoff? In the old system I could at least see what was going on. Not impressed with the new system, as yet. PamD (talk) 13:51, 18 July 2022 (UTC)

Johanna Strodt (WMDE) (talkcontribs)

Hello @PamD, thank you for your message, and apologies for taking so long to reply (vacation time).

Our team has looked into this and would need a bit more information to see what happened here. Are this and this the two edits that triggered the conflict?

From what got stored in these two edits, it looks like they should have triggered a special talk page interface that looks like this:

This interface was made specifically for talk pages and it allows you to save both edits, just like you wanted in this case.

The reason it didn't work here might be that the detection for this special case only works when no other edit was made to the page. Was your original edit possibly fixing e.g. a typo somewhere else on the page?

"I don't know what would have happened if they;'d politely opted for my post instead of theirs: some kind of Mexican standoff?"

While a Mexican standoff sounds interesting, that's not what would have happened. In an edit conflict, two people are editing the same page. If the other person saves the page before you do, you run into an edit conflict. To the other person, however, their work is done. They don't see any edit conflict interface.

Another question, when you say "old system", are you talking about this interface?



Reply to "Unhelpful on a long thread with many replies on talk page"

Can't get my version back

Beland (talkcontribs)

I hit an edit conflict and the merge was complicated. I decided the best thing to do was to get the changes between my version and the version I was originally changing, and then reapply those changes to the current version. But it appears there's no option to get my wikitext back intact; I can only get it in little pieces around where the edit conflicts are. -- ~~~~

Beland (talkcontribs)

Ah,I found a way to do this, but it was not where I expected. Normally the button to show changes or go back to the text you were editing is at the bottom of the form, near the "Preview" and "Publish" buttons. In the beta, it's actually next to the title of the revision, between the preview and the diff conflict resolution area.

Reply to "Can't get my version back"
Liz (talkcontribs)

For some reason, this "tool" posts my comments duplicate times, as if I have an edit conflict with myself. I then have to go back and remove the excess comments from the page. This has happened more often than not with this tool. When I have a chance, I'll try to figure out how to disable it.

Thiemo Kreuz (WMDE) (talkcontribs)

Thank you for the report. Unfortunately, I'm not sure what kind of response you expect? Are you able to post some example links where this happened? That would help a lot investigating this issue further. So far it sounds like a long known issue with the edit conflict detection algorithm in MediaWiki core, which is what TwoColConflict depends on. See for example phab:T28821, phab:T36423, phab:T59264, or phab:T222805. TwoColConflict is essentially just an interface on top of that.

Liz (talkcontribs)

Well, when the Beta feature pops up, I get a message to come here to offer feedback so that's what I did. I don't know if I have expectations, I just followed the suggestion to come here and post.

You can see one example of this if you look at my contributions and look at the posting to WP:ANI at 21:03, November 5, 2021. It posts twice in the same moment and the next edit I delete the duplicate entry.

Thiemo Kreuz (WMDE) (talkcontribs)

I would love to do something about this. Let's see. There are two edits, the first at 04:03:14 UTC, the second 27 second later. That's not exactly the same moment. Furthermore, the second edit is marked as a revert. Why is that?

KaiKemmann (talkcontribs)

This happens to me several times a month.

I encounter these "Edit conflicts with myself" when I try to edit my previous edit shortly afterwards to correct some mistake or other.

It is often not possible to choose between different versions (as there are no check boxes or rather check circles offered) so the obvious option is to click "publish" which results in the corrected text passage being appended to the one added in the previous edit.

See here where I tried to correct a small spelling mistake in my previous edit when the "Edit conflict" interface popped up ...

This post was hidden by TMg (history)
Reply to "Argh!"
Summary by Thiemo Kreuz (WMDE)

Conflict with a version from days ago. Known issue. See phab:T72163.

מיכי י-ם (talkcontribs)

אני לא יודע אנגלית לכן אני כותב בעברית. אני משתמש בפונקצייה הזו באתר שלא שייך לויקימדיה, היום ניסיתי לשמור עריכה והוא התריע לי על התנגשות עריכה עם עריכה שבוצעה לפני יומיים. (talkcontribs)

Was reporting AIV and got a message about feedback for a Beta feature. (talkcontribs)

I like this.

Johanna Strodt (WMDE) (talkcontribs)

Thank you! We're happy to hear it.

Happy new year from the Technical Wishes team!


Unable to figure out how to use feature

Danbloch (talkcontribs)

Feature showed my addition with a check and an "X". I clicked the check. I then clicked "Show preview" and nothing happened. I then gave up.

Thereza Mengs (WMDE) (talkcontribs)

Hey @Danbloch,

we tested the feature on deWiki and it worked. In order to solve your problem, could you please tell me which page you were trying to edit? And if possible also send a link to the diff of the change you were making? We will then try to solve your problem or figure out why it occurs and get back to you.

Danbloch (talkcontribs)
Thereza Mengs (WMDE) (talkcontribs)

Hello @Danbloch,

thank you for the details and information. We have reconstructed your problem and indeed found that the interface seems to fail scrolling to the preview part when clicking the "Show Preview" button. Many thanks, for your awareness and your comment! We have created a Phabricator ticket to resolve the issue. You can also follow-up the next steps there.

Reply to "Unable to figure out how to use feature"

Extension Failed to Work

Zorua Fox (talkcontribs)

When I use this extension on my wiki, i got such errorlog:

VM2235:956  Uncaught TypeError: Cannot read properties of undefined (reading '$ui')
    at RealtimePreview.isScreenWideEnough (<anonymous>:798:893)
    at <anonymous>:793:1381
    at Object.add (<anonymous>:956:537)
    at realtimepreview/init.js (<anonymous>:793:959)
    at runScript (load.php?lang=zh&modules=startup&only=scripts&raw=1&skin=citizen:12:268)
    at Array.<anonymous> (load.php?lang=zh&modules=startup&only=scripts&raw=1&skin=citizen:12:948)
    at flushCssBuffer (load.php?lang=zh&modules=startup&only=scripts&raw=1&skin=citizen:4:956)
Thiemo Kreuz (WMDE) (talkcontribs)

That's an error message from the WikiEditor extension. I can't tell how this is related, sorry. Maybe you need to update that extension first? What was on screen when this error appeared?

Zorua Fox (talkcontribs)

Thanks for the reply, but this is the only error I saw when the issue occurred, and nothing seems to be happening on my backend (including the Nginx logs).Besides my wikieditor is already up to date.

This post was hidden by Zorua Fox (history)
Reply to "Extension Failed to Work"