Page MenuHomePhabricator

Variant C/D: support consistent suggested edits queue
Closed, ResolvedPublic

Description

In order to implement a mobile preview that displays the first suggested edit (as T258021: Variant C/D: mobile preview for suggested edits module with first suggested edit calls for) and have that first suggested edit actually match the the first edit in the queue that the user sees when navigating to the suggested edits module, we will need to somehow guarantee that the user sees the same suggested edits queue in these two situations.

One way to implement this could be to only request the queue from the server once, and reuse it on the client side. This would require client-side rendering of the mobile preview, and disallowing no-JS navigation to the suggested edits module (which makes some sense, since it's currently a JS-only module anyway).

If we render the mobile preview server-side, or allow no-JS browser navigation to the suggested edits module as a separate request, we'll need to implement some kind of queue consistency/freezing feature in the backend.

Event Timeline

I'd go for the easy approach here. When server-side-rendering the panel, encode the details in a machine-readable way, and in JS read it and doctor it on the start of the result set.

That would also allow for a low-effort, low-efficiency version of the server-side rendering performance improvement on the homepage (low-efficiency in that the user will still have to wait for the JS to load, and for the RESTBase / AQS requests, but not for the task search itself).

One required tweak is that we'll have to push the filtering of protected pages to the server side. That also has the benefit of not requiring a buffer (e.g. fetching 250 tasks when we only want to display 200) anymore.

Change 621595 had a related patch set uploaded (by Gergő Tisza; owner: Gergő Tisza):
[mediawiki/extensions/GrowthExperiments@master] [WIP] Fix the first element of the suggested edits task queue on page load

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

Change 621595 merged by jenkins-bot:
[mediawiki/extensions/GrowthExperiments@master] Fix the first element of the suggested edits task queue on page load

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

Change 626597 had a related patch set uploaded (by Kosta Harlan; owner: Kosta Harlan):
[mediawiki/extensions/GrowthExperiments@master] Protect against empty task preview data

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

Change 626597 merged by jenkins-bot:
[mediawiki/extensions/GrowthExperiments@master] Protect against empty task preview data

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

Etonkovidova added a subscriber: Etonkovidova.

Checked as a part of T258021.