Page MenuHomePhabricator

Community configuration descriptions should warn when changes aren't immediate
Closed, ResolvedPublic

Description

Some community configuration settings around link recommendations only affect the generation of new link recommendation tasks, and do not affect existing tasks. Whenever this is the case, form field descriptions should warn about it so editors don't get confused about changes seemingly not taking effect.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript
kostajh triaged this task as Medium priority.May 12 2022, 8:54 AM

Change 791798 had a related patch set uploaded (by Gergő Tisza; author: Gergő Tisza):

[mediawiki/extensions/GrowthExperiments@master] Community confiugration: Indicate when changes are not immediate

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

Tgr changed the task status from Open to In Progress.May 15 2022, 5:55 PM
Tgr claimed this task.

@KStoller-WMF @Trizek-WMF we are discussing what the wording for this should be. There is a comment thread at https://gerrit.wikimedia.org/r/c/mediawiki/extensions/GrowthExperiments/+/791798/1/i18n/extension/en.json#83; could you please have a look at that and comment here with what your proposal would be for wording?

Thank you for the ping, Kosta.

The proposed wording is

"Changes to this setting won't take effect immediately."

The wording is fine if we have a link to more explanation, with one link dedicated to each field. A question mark icon close the the sentence and leading to a proper help page, or a FAQ item seems to be the best option there. The icon right as a "know more" link is now a common practice. A global link at the top of this long configuration page may not be helpful, as people expect to have explanations right where they are applied.

Can we reduce the regeneration time? Or force it (sort of cache purge)?

Can we provide a guess time for the wiki?

"Changes to this setting won't take effect immediately. You will have to wait for X days until the list of links is renewed."

Can we reduce the regeneration time? Or force it (sort of cache purge)?

Currently it's basically infinite (tasks are only regenerated at the pace they are used up by new users). A purge is costly so starting one every time someone edits the page seems a little scary. Plus, we'd have to update the way the tasks are stored so they hold enough information on whether they need to be regenerated - possible but significant amount of work. (Or we just regenerate every task, but that would be quite expensive.)

Can we provide a guess time for the wiki?

I guess some sort of "progress marker" (as a separate special page) wouldn't be that hard to do (on top of the above), though IMO way more work than worth it as I don't see much practical benefit.

Predicting in advance how much time it will take is not really feasible (other than us just making a guess on how long it takes to regenerate everything and hardcoding that into the text).

We spoke a bit about this during the last Ambassadors meeting:

I'm fine with: "Changes to this setting won't take effect immediately.", with a link to an FAQ for further details. But I think we should add to the FAQ to make the explanation clearer.

Current copy:

About "Add a link", we changed the list of sections where links can't be added. But it is not working.
The configuration for this feature is only applied when the list of links is empty. When the list is empty, the system rebuilds a new list with the new excluded sections. As a consequence, it can take a few days to see this change being applied.
As a consequence, we encourage you to edit the list of excluded sections carefully, to add the maximum of needed sections to the list at once.
Please contact us if you need more details about the time it would take for your wiki.

Proposed Copy:

The "Add links between articles" configuration change isn't working.
When you update the configuration for "Add links between articles," the change will impact all future suggestions that are added to the Suggested Edits queue. However, the existing suggestions that are already in the queue will remain. In other words, if you add a word to the list of section names in which no links should be recommended, new suggestions will adhere to this rule, but previously generated suggestions remain in the queue of Suggested Edits. This is because it is extremely resource intensive to completely refresh the list of Suggested Edits every time the Growth Configuration form is changed.

@Tgr is that explanation accurate? Is this also true for "Add a suggested image"?

Does this help unblock this task, or should we consider pulling this out of the current sprint?

Some configuration fields are immediate; specifically, the list of excluded sections and the maximum number of link suggestions to show only affect new tasks, and the other settings affect all tasks. (Also, decreasing the maximum number of link suggestions to show takes effect on all tasks, but increasing doesn't.) There are a couple other settings that are only exposed via raw JSON that only take effect for new tasks, but that's probably not too interesting.

I wouldn't say it's prohibitively resource-intensive to automatically update all tasks after a configuration (though it would definitely take hours if not days), it would just take some work for us to set it up.

Does this help unblock this task, or should we consider pulling this out of the current sprint?

I think this wasn't really blocked, just unfinished. (The copy for the FAQ is helpful though.) I'll update the patch.

Here is an alternate copy which is more explicit about the fact that tasks with the old settings might stick around for an arbitrarily long time:

I changed the configuration for "Add links between articles" in Special:EditGrowthConfig, but it isn't working.

Some of the configuration settings (such as the list of sections to exclude) are applied when a new suggestion is generated and added to the Suggested Edits queue, and do not affect suggestions already in the queue. Old suggestions remain in the queue until they are shown to a user. As the queue typically contains tens of thousands of items, it might take very long for all suggestions with the old configuration to be flushed out of the system. See T313642 for plans to improve this situation.

(Accordingly, filed T313642: Automatically update Add Link tasks when community configuration is changed.)

I edited the FAQ to add @Tgr's copy. I however kept "As a consequence, we encourage you to edit the list of excluded sections carefully, to add the maximum of needed sections to the list at once." as it is still true.

Change 791798 merged by jenkins-bot:

[mediawiki/extensions/GrowthExperiments@master] Community configuration: Indicate when changes are not immediate

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