Page MenuHomePhabricator

[Zebra AB test] Fix the mixing of global and user IDs for AB Test Enrollment Bucketing
Closed, ResolvedPublic3 Estimated Story Points

Assigned To
Authored By
KSarabia-WMF
May 18 2023, 7:37 PM
Referenced Files
F37085035: Screenshot 2023-05-30 at 4.15.11 PM.png
May 30 2023, 11:36 PM
F37085032: Screenshot 2023-05-30 at 4.12.49 PM.png
May 30 2023, 11:36 PM
F37085036: Screenshot 2023-05-30 at 4.13.54 PM.png
May 30 2023, 11:36 PM
F37085033: Screenshot 2023-05-30 at 4.16.56 PM.png
May 30 2023, 11:36 PM
Unknown Object (File)
May 30 2023, 11:22 PM
Unknown Object (File)
May 30 2023, 11:22 PM
Unknown Object (File)
May 30 2023, 11:22 PM
Unknown Object (File)
May 30 2023, 11:22 PM

Description

Currently, control bucket users in the test deploy to hewiki are seeing both control and treatment experiences, same with treatment bucket users.

The bucketing mechanisms on client and server are different code paths. Server is a mod function and client is using mw.experiment

mw.config.get('wgUserId') !== central id used on the server.

Current logic is bucketing based on the global ID, but using local id client-side.

Option 1:
Remove L99 and use the local ID.

Option 2:
Pass the central ID via virtual package file

QA Steps

Success Criteria: Verify that the AB test is bucketing users based on the local user ID, not the global centralAuth ID.

  1. Log in on the beta cluster (beta enwiki)
  2. Paste this code in the dev console and note whether the user ID an even or odd number mw.user.getId()
  3. In the dev console, inspect the network tab and find the eventLogging event with the experiment_name skin-vector-zebra-experiment
  4. Note whether the group is control or treatment, and whether the zebra design is visible or not.

Repeat this process on spanish beta cluster (beta eswiki).

Try using an account whose local user ID is even on one wiki and odd on the other.

A/C

  • Users with an even number user ID are consistently bucketed into the control group and see the current design.
  • Users with an odd number user ID are consistently bucketed into the treatment group and see the zebra design.

QA Results - Beta

ACStatusDetails
1โœ…T336969#8890683
2โœ…T336969#8890683

Event Timeline

LGoto triaged this task as High priority.May 22 2023, 5:12 PM
LGoto set the point value for this task to 3.

Change 922155 had a related patch set uploaded (by Kimberly Sarabia; author: Kimberly Sarabia):

[mediawiki/skins/Vector@master] Remove centraluserid dependency

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

Change 922155 merged by jenkins-bot:

[mediawiki/skins/Vector@master] Remove centraluserid dependency in ABRequirement.php

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

Change 922572 had a related patch set uploaded (by Kimberly Sarabia; author: Kimberly Sarabia):

[operations/mediawiki-config@master] Turn on the A/B test for testwiki

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

Change 922397 had a related patch set uploaded (by Samtar; author: Kimberly Sarabia):

[mediawiki/skins/Vector@wmf/1.41.0-wmf.9] Remove centraluserid dependency in ABRequirement.php

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

Change 922398 had a related patch set uploaded (by Samtar; author: Kimberly Sarabia):

[mediawiki/skins/Vector@wmf/1.41.0-wmf.10] Remove centraluserid dependency in ABRequirement.php

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

Change 922397 merged by jenkins-bot:

[mediawiki/skins/Vector@wmf/1.41.0-wmf.9] Remove centraluserid dependency in ABRequirement.php

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

Change 922398 merged by jenkins-bot:

[mediawiki/skins/Vector@wmf/1.41.0-wmf.10] Remove centraluserid dependency in ABRequirement.php

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

Mentioned in SAL (#wikimedia-operations) [2023-05-23T20:37:15Z] <samtar@deploy1002> Started scap: Backport for [[gerrit:922397|Remove centraluserid dependency in ABRequirement.php (T336969)]], [[gerrit:922398|Remove centraluserid dependency in ABRequirement.php (T336969)]]

Mentioned in SAL (#wikimedia-operations) [2023-05-23T20:38:50Z] <samtar@deploy1002> samtar: Backport for [[gerrit:922397|Remove centraluserid dependency in ABRequirement.php (T336969)]], [[gerrit:922398|Remove centraluserid dependency in ABRequirement.php (T336969)]] synced to the testservers: mwdebug2001.codfw.wmnet, mwdebug1001.eqiad.wmnet, mwdebug2002.codfw.wmnet, mwdebug1002.eqiad.wmnet

Mentioned in SAL (#wikimedia-operations) [2023-05-23T20:48:36Z] <samtar@deploy1002> Finished scap: Backport for [[gerrit:922397|Remove centraluserid dependency in ABRequirement.php (T336969)]], [[gerrit:922398|Remove centraluserid dependency in ABRequirement.php (T336969)]] (duration: 11m 20s)

Change 922572 merged by jenkins-bot:

[operations/mediawiki-config@master] Turn on the A/B test for testwiki

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

Mentioned in SAL (#wikimedia-operations) [2023-05-23T20:50:09Z] <samtar@deploy1002> Started scap: Backport for [[gerrit:922572|Turn on the A/B test for testwiki (T336969)]]

Mentioned in SAL (#wikimedia-operations) [2023-05-23T20:51:37Z] <samtar@deploy1002> ksarabia and samtar: Backport for [[gerrit:922572|Turn on the A/B test for testwiki (T336969)]] synced to the testservers: mwdebug1002.eqiad.wmnet, mwdebug1001.eqiad.wmnet, mwdebug2001.codfw.wmnet, mwdebug2002.codfw.wmnet

Mentioned in SAL (#wikimedia-operations) [2023-05-23T21:01:56Z] <samtar@deploy1002> Finished scap: Backport for [[gerrit:922572|Turn on the A/B test for testwiki (T336969)]] (duration: 11m 47s)

Change 923407 had a related patch set uploaded (by Kimberly Sarabia; author: Kimberly Sarabia):

[operations/mediawiki-config@master] Reapply new fix to en beta

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

Change 923407 merged by jenkins-bot:

[operations/mediawiki-config@master] Enable Vector "Zebra" AB test to enwiki beta

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

Jdrewniak renamed this task from Fix the mixing of global and user IDs for AB Test Enrollment Bucketing to [Zebra AB test] Fix the mixing of global and user IDs for AB Test Enrollment Bucketing.May 30 2023, 1:42 PM
Jdrewniak reassigned this task from KSarabia-WMF to Edtadros.
Jdrewniak updated the task description. (Show Details)

Change 924536 had a related patch set uploaded (by Kimberly Sarabia; author: Kimberly Sarabia):

[operations/mediawiki-config@master] Turn on A/B Test Hebrew

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

Change 924536 merged by jenkins-bot:

[operations/mediawiki-config@master] Turn on A/B Test Hebrew

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

Mentioned in SAL (#wikimedia-operations) [2023-05-30T20:01:55Z] <samtar@deploy1002> Started scap: Backport for [[gerrit:924536|Turn on A/B Test Hebrew (T336969)]]

Mentioned in SAL (#wikimedia-operations) [2023-05-30T20:03:35Z] <samtar@deploy1002> ksarabia and samtar: Backport for [[gerrit:924536|Turn on A/B Test Hebrew (T336969)]] synced to the testservers: mwdebug1001.eqiad.wmnet, mwdebug2002.codfw.wmnet, mwdebug1002.eqiad.wmnet, mwdebug2001.codfw.wmnet

Mentioned in SAL (#wikimedia-operations) [2023-05-30T20:10:42Z] <samtar@deploy1002> Finished scap: Backport for [[gerrit:924536|Turn on A/B Test Hebrew (T336969)]] (duration: 08m 46s)

Edtadros removed Edtadros as the assignee of this task.EditedMay 30 2023, 11:22 PM
Edtadros subscribed.

Test Result - Beta

Status: โœ… PASS
Environment: beta enwiki, beta eswiki
OS: macOS Ventura
Browser: Chrome
Device: MBP
Emulated Device:NA

Test Artifact(s):

QA Steps

Success Criteria: Verify that the AB test is bucketing users based on the local user ID, not the global centralAuth ID.

Log in on the beta cluster (beta enwiki)
Paste this code in the dev console and note whether the user ID an even or odd number mw.user.getId()
In the dev console, inspect the network tab and find the eventLogging event with the experiment_name skin-vector-zebra-experiment
Note whether the group is control or treatment, and whether the zebra design is visible or not.
Repeat this process on spanish beta cluster (beta eswiki).

Try using an account whose local user ID is even on one wiki and odd on the other.

โœ… AC1: Users with an even number user ID are consistently bucketed into the control group and see the current design.

Screenshot 2023-05-30 at 4.16.56 PM.png (1ร—1 px, 251 KB)
Screenshot 2023-05-30 at 4.13.54 PM.png (1ร—1 px, 201 KB)

โœ… AC2: Users with an odd number user ID are consistently bucketed into the treatment group and see the zebra design.

Screenshot 2023-05-30 at 4.12.49 PM.png (1ร—1 px, 264 KB)
Screenshot 2023-05-30 at 4.15.11 PM.png (1ร—1 px, 208 KB)

Change 924994 had a related patch set uploaded (by Kimberly Sarabia; author: Kimberly Sarabia):

[operations/mediawiki-config@master] Enables ab test for multiple languages

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

Change 924994 merged by jenkins-bot:

[operations/mediawiki-config@master] Enables ab test for multiple languages

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

Mentioned in SAL (#wikimedia-operations) [2023-05-31T20:03:15Z] <urbanecm@deploy1002> Started scap: Backport for [[gerrit:924994|Enables ab test for multiple languages (T336969)]]

Mentioned in SAL (#wikimedia-operations) [2023-05-31T20:05:38Z] <urbanecm@deploy1002> ksarabia and urbanecm: Backport for [[gerrit:924994|Enables ab test for multiple languages (T336969)]] synced to the testservers: mwdebug2001.codfw.wmnet, mwdebug1001.eqiad.wmnet, mwdebug1002.eqiad.wmnet, mwdebug2002.codfw.wmnet

Mentioned in SAL (#wikimedia-operations) [2023-05-31T20:15:11Z] <urbanecm@deploy1002> Finished scap: Backport for [[gerrit:924994|Enables ab test for multiple languages (T336969)]] (duration: 11m 56s)