Page MenuHomePhabricator

Provide infrastructure for a staged roll out.
Closed, ResolvedPublic5 Estimated Story Points

Description

Set up a RL module that is provided by the Gather extension which should override the watchstar script on all pages.

  • If beta load the collections watchstar code
  • If stable load the mobile.watchstar.init module
  • In stable no gather code should be present.

In addition to this, we must setup some infrastructure in stable to allow us to do a staged roll out (global config variable should default to false):

  • If a global config variable is set AND the current user is logged in and owns any collections, then they see the collections watchstar in stable.
  • If a global config variable is set AND the current user is anon in approx 5% sample, they see the collections star in stable.

Event Timeline

Jdlrobson raised the priority of this task from to Needs Triage.
Jdlrobson updated the task description. (Show Details)
Jdlrobson moved this task to This Sprint on the Gather board.
Jdlrobson subscribed.
Jdlrobson set Security to None.
Jdlrobson edited a custom field.
Jdlrobson updated the task description. (Show Details)

Mmm.. so looks like mobile.experiments will work nicely here for this.
The problem is minimising the code we load on startup.
Best option seems to be to add mobile.watchstar as a dependency to ext.gather.init and use the Watchstar when not in beta. This results in duplicate code to ext.watchstar.init but avoids an additional HTTP request.

Change 210874 had a related patch set uploaded (by Jdlrobson):
WIP: Delegate watchstar loading to Gather

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

Ping. Help needed getting this reviewed.

@Jdlrobson: You might want to create another card for tracking the initial rollout at <percent>.

Closing this as it's a technical task and the associated patch has been merged.

Change 212585 had a related patch set uploaded (by Phuedx):
Hygiene: Separate watchstar from content overlay

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

Change 212585 merged by jenkins-bot:
Hygiene: Separate watchstar from content overlay

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

Change 210874 merged by jenkins-bot:
Delegate watchstar loading to Gather

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