Page MenuHomePhabricator

Deploy Similar Editors
Open, MediumPublic

Description

This task is to track SimilarEditors deployment

#WhereWhyWhen
1Beta ClusterQA testingTBD
2TestwikiFirst production deploy - brief testing to ensure no glitchesTBD
3English WikipediaV1 deploy to gather checkuser feedback to improve scriptTBD
4Other projectsThis will be on a case by case basis - depending on where we have checkusers interested in testing + we have dataTBD

Open questions:

  1. Does the script have data to allow us to test on beta cluster and testwiki? If not, we can consider other ways to test.

Event Timeline

@Niharika I don't think SimilarEditors will work well with the real Similarusers service in beta or testwiki.

As it stands, the service looks up users in enwiki. There is a parameter for changing the language code in the URL (which would help for testwiki, but not beta), but it is currently not configurable via the API if I'm reading correctly: https://gerrit.wikimedia.org/g/mediawiki/services/similar-users/+/3d524fee469f97e3441e1058736d23fee54f8011/similar_users/wsgi.py#99

The Special:SimilarEditors UI requires that the queried user exists on the wiki, and displays links to local user pages, i.e. assuming that all the similar users also exist on the wiki. This all makes sense given what the tool does.

We could adapt the UI to not care if the users exist on the wiki, and always link to user pages on enwiki. This might not be great in terms of both user experience (confusing) and code maintenance (we'd need to untangle it all again when the tool is updated to be used on more wikis).

Or we could test the extension with our mock service on beta and testwiki, and then test its use of the real service on enwiki. Would this be too risky?

@Tchanders thanks for the explanation! we would not be inviting actual users to try the tool on beta or testwiki environments. Those environments are for our own QA purposes only. So with regards to testing on beta and testwiki I am flexible with whichever option seems sensible to you.

This tool will eventually work on more languages beyond English. We will need to work with Research + CPT to scale it accordingly. So we probably shouldn't always link to enwiki as we will need to change that in the future anyway.

Or we could test the extension with our mock service on beta and testwiki, and then test its use of the real service on enwiki. Would this be too risky?

I am not sure there is a risk. If it feels risky we can always restrict usage to 'staff' group for beta and test. What do you think?

Looking at the service (https://gerrit.wikimedia.org/r/q/project:mediawiki/services/similar-users), it uses ORM (SQLAlchemy) which is highly discouraged. Where should I file a bug to get it fixed?

I believe the service is owned by the Platform Team and was deployed before we started work on this extension (so isn't related to this deployment task). Perhaps file it separately and tag them?

Work has stalled on all parts of the project, so I'm not sure how likely it is that any fixes are made. Is it important enough to un-deploy?