Obsolete:Wikimetrics/Adding New Features/CentralAuth Cohorts

From Wikitech
As of 2019-03-25 Wikimetrics is inoperative. See Phabricator task. Please use https://eventmetrics.wmflabs.org instead to get metrics for your event.
This page contains historical information. It may be outdated or unreliable.


Users can use one account to log into any wiki (Single User Login - SUL), obscuring the fact that Mediawiki's legacy implementation requires separate accounts on each wiki. CentralAuth is a centralized database of accounts that links a user's accounts across wikis.

CentralAuth documentation: https://www.mediawiki.org/wiki/Extension:CentralAuth

We want wikimetrics reports to include users’ activity on other projects without having to research their account names on each project/wiki.

Use Case

Program manager has a list of wiki users in a CSV file.  Some users in this cohort are active across various wikis (let’s call them CentralAuthUsers).  The program manager wants to run reports against her list of users and - for the CentralAuthUsers - include their accounts on other wikis in the new cohort on wikimetrics.

For example, I used CentralAuth and created the accounts FooBar on both enwiki and frwiki.   If the program manager has only one of my accounts (FooBar|enwiki) in her CSV list, when she uploads the CSV to create a new cohort, she has the option to include all other accounts in CentralAuth associated with FooBar|enwiki.  So in the end, the cohort will include both Foobar|enwiki and Foobar|frwiki.

User Story

As a program manager,

I can select the checkbox labeled XYZ when uploading my cohort,

so wikimetrics will automatically add CentralAuth users’ accounts from other projects


  • the only time user sees this is when uploading a cohort.  No other references to CentralAuthUser are necessary.
  • The UI does not need to distinguish cohorts that include accounts taken CentralAuth
  • short form: program manager checks “expand...” when uploading cohort

XYZ possibilities

1 ☒ Expand cohort to include accounts of users who are known to have accounts in other projects.
2 ☒ Add to cohort user’s accounts in other projects (given by CentralAuth)
3 ☒ Find and include user’s accounts in other projects (given by CentralAuth)
4 ☒ use CentralAuth to add a user’s accounts in other projects to this cohort.
5 ☒ Expand cohort to all user’s accounts across projects (via CentralAuth)