Page MenuHomePhabricator

Add a link (Structured task): Release as "turned off" to English Wikipedia
Closed, ResolvedPublic

Description

User story & summary:

As an English Wikipedia Admin, I want to have the ability to enable and disable the "Add a link (Structured task)" via the associated Community Configuration form

Background & research:

We have released the "Add a link" Structured task to most Wikipedias as enabled. We feel confident in doing this as we've conducted several A/B tests that show this task is helping new editors get started:

However, we recognize that patrollers are sometimes frustrated with these tasks. We've outlined patroller feedback and some of the improvements we've completed to address concerns: https://www.mediawiki.org/wiki/Growth/Personalized_first_day/Structured_tasks/Community_feedback

Most Wikipedias have decided that the benefits of this task outweigh the additional burden it places on patrollers. However, at some of our larger wikis, we are first talking about the task with communities and letting communities decide if they want to enable this task.

Implementation:
Acceptance Criteria:

Given I access https://en.wikipedia.org/wiki/Special:CommunityConfiguration/GrowthSuggestedEdits
When I view the "Add a link (Structured task)" section,
Then checkmark is selected next to "The task is disabled."
AND an admin has the ability to uncheck the checkbox (and Save changes and enable the task)

Event Timeline

Michael renamed this task from Add a link (Structured task): Release as "turned off" to English Wikipedia to Add a link (Structured task): Release as "turned off" to English Wikipedia.Jul 24 2024, 10:42 AM
Urbanecm_WMF triaged this task as Medium priority.
Urbanecm_WMF subscribed.

Per Slack discussion.

Mentioned in SAL (#wikimedia-operations) [2024-07-29T17:51:26Z] <urbanecm> mwmaint1002: kill extensions/GrowthExperiments/maintenance/refreshLinkRecommendations.php for enwiki (T370802)

have someone with the needed rights edit https://en.wikipedia.org/wiki/MediaWiki:GrowthExperimentsSuggestedEdits.json to set "link_recommendation -> disabled" to "true" (because the configuration defaults to it being enabled)

Done, https://en.wikipedia.org/w/index.php?title=MediaWiki:GrowthExperimentsSuggestedEdits.json&diff=prev&oldid=1237412036.

run the revalidate script to ensure that the task queue is filled with tasks based on the latest configuration

This part works...:

[urbanecm@mwmaint1002 ~]$ mwscript extensions/GrowthExperiments/maintenance/revalidateLinkRecommendations.php --wiki=enwiki --all --verbose
Revalidating link recommendations:
  fetching task batch starting with page 0
  Politics of Angola is outdated, regenerating... success
  Actinium is outdated, regenerating... ^C
[urbanecm@mwmaint1002 ~]$

however, generating the link recommendations fails on 'link-recommendation' is not a link recommendation task type:

[urbanecm@mwmaint1002 ~]$ mwscript extensions/GrowthExperiments/maintenance/refreshLinkRecommendations.php --wiki=enwiki --verbose
'link-recommendation' is not a link recommendation task type
[urbanecm@mwmaint1002 ~]$

It doesn't make sense to run the revalidation script in full if the regular script keeps failing. I filled T371316: refreshLinkRecommendations.php does not run when link-recommendation task type is disabled to fix that...

Okay, progress:

[urbanecm@mwmaint1002 ~]$ mwscript extensions/GrowthExperiments/maintenance/refreshLinkRecommendations.php --wiki=enwiki
Refreshing link recommendations...
  processing topic biography...
    no new tasks needed
  processing topic women...
    no new tasks needed
  processing topic food-and-drink...
    no new tasks needed
  processing topic internet-culture...
    no new tasks needed
  processing topic linguistics...
    no new tasks needed
  processing topic literature...
    no new tasks needed
  processing topic books...
    no new tasks needed
  processing topic entertainment...
    no new tasks needed
  processing topic films...
    no new tasks needed
  processing topic media...
    no new tasks needed
  processing topic music...
    no new tasks needed
  processing topic radio...
    no new tasks needed
  processing topic software...
    no new tasks needed
  processing topic television...
    no new tasks needed
  processing topic video-games...
    no new tasks needed
  processing topic performing-arts...
    no new tasks needed
  processing topic philosophy-and-religion...
    no new tasks needed
  processing topic sports...
^C
[urbanecm@mwmaint1002 ~]$

Now, revalidation.

I was considering whether to run revalidation for everything, or just for few tasks.

mysql:[email protected] [enwiki]> select count(*) from growthexperiments_link_recommendations where JSON_EXTRACT(gelr_data, '$.meta.task_timestamp') > 1721140709; -- July 16
+----------+
| count(*) |
+----------+
|      206 |
+----------+
1 row in set (2.041 sec)

mysql:[email protected] [enwiki]> select count(*) from growthexperiments_link_recommendations where JSON_EXTRACT(gelr_data, '$.meta.task_timestamp') > 1719758309; -- June 30, 2024
+----------+
| count(*) |
+----------+
|      245 |
+----------+
1 row in set (0.280 sec)

mysql:[email protected] [enwiki]>

Looks like only a couple of tasks are less than a month old. Let's just revalidate everything, there is no point in keeping few hundreds of tasks. The speed difference will be invisible.

Mentioned in SAL (#wikimedia-operations) [2024-07-30T14:45:53Z] <urbanecm> mwmaint1002: mwscript extensions/GrowthExperiments/maintenance/revalidateLinkRecommendations.php --wiki=enwiki --all --verbose (T370802; log kept at mwmaint1002:/home/urbanecm/revalidateLinkRecommendations-T370802-july-2024.log)

Revalidation is now in progress. I estimate it will take two to three days to finish. Once that, we should be good to enable the frontend flag. Moving to Blocked in the meantime.

Members of the restricted group can monitor the progress via mwmaint1002:/home/urbanecm/revalidateLinkRecommendations-T370802-july-2024.log.

Change #1059370 had a related patch set uploaded (by Urbanecm; author: Urbanecm):

[operations/mediawiki-config@master] [Growth] enwiki: Enable frontend for Add Link

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

Invalidation is now finished. It now needs the frontend enabled, to ensure Add Link can be enabled via CommunityConfiguration. I uploaded https://gerrit.wikimedia.org/r/1059370 for that, and it can be deployed in the next week.

Invalidation is now finished. It now needs the frontend enabled, to ensure Add Link can be enabled via CommunityConfiguration. I uploaded https://gerrit.wikimedia.org/r/1059370 for that, and it can be deployed in the next week.

I verified at testwiki that frontend enabled + CC flag disabled results in legacy Add Link being enabled instead of the old one. So, we should be ready to go.

Change #1059370 merged by jenkins-bot:

[operations/mediawiki-config@master] [Growth] enwiki: Enable frontend for Add Link

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

Mentioned in SAL (#wikimedia-operations) [2024-08-06T13:03:38Z] <zabe@deploy1003> Started scap sync-world: Backport for [[gerrit:1050378|group0, frwiki, itwiki: enable shellbox-video (T356241)]], [[gerrit:1059370|[Growth] enwiki: Enable frontend for Add Link (T370802)]]

Mentioned in SAL (#wikimedia-operations) [2024-08-06T13:08:14Z] <zabe@deploy1003> hnowlan, urbanecm, zabe: Backport for [[gerrit:1050378|group0, frwiki, itwiki: enable shellbox-video (T356241)]], [[gerrit:1059370|[Growth] enwiki: Enable frontend for Add Link (T370802)]] synced to the testservers (https://wikitech.wikimedia.org/wiki/Mwdebug)

Mentioned in SAL (#wikimedia-operations) [2024-08-06T13:14:20Z] <zabe@deploy1003> Finished scap: Backport for [[gerrit:1050378|group0, frwiki, itwiki: enable shellbox-video (T356241)]], [[gerrit:1059370|[Growth] enwiki: Enable frontend for Add Link (T370802)]] (duration: 10m 41s)

Etonkovidova subscribed.

Checked enwiki wmf.18 - works as expected; the task type Add a link (Structured task)
is present on Special:CommunityConfiguration/GrowthSuggestedEdits and it is disabled (the checkbox is marked). Add a link (Structured task) is not present in the taskstype list on Special:Homepage or on Special:NewcomerTasksInfo

Note:
The count for Add links between articles tasks is zero - see[[ https://en.wikipedia.org/wiki/Special:NewcomerTasksInfo | Special:NewcomerTasksInfo ]]. The task type is still present in the SE task type module on Special:Homepage.