Analytics/Wikimetrics/Adding New Features/CentralAuth Cohorts

From Wikitech

Background

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


Notes:

  • 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)