Enable Firefox Labs when Telemetry or Studies are Disabled
Categories
(Firefox :: Nimbus Desktop Client, enhancement, P3)
Tracking
()
People
(Reporter: beth, Assigned: beth)
References
(Blocks 1 open bug, Regressed 2 open bugs)
Details
Attachments
(6 files)
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review |
In bug 1937147 we ported Firefox Labs to be powered by Nimbus, our A/B testing and feature delivery platform, which (as its configured) requires both telemetry and studies to be enabled in order to function. Nimbus was originally designed to be an A/B test platform and so it made sense at the time that if telemetry was disabled that Nimbus should be disabled because there if you need to collect data in order to do quantatative experimentation. However, as Nimbus has grown into more of a feature delivery platform, it no longer makes sense to gate everything behind having telemetry or even studies enabled. We should add a new preference toggle that enables/disables Firefox Labs and update the Nimbus logic as follows:
- Telemetry disabled -> Experiments and rollouts are disabled except for Firefox Labs opt-ins(i.e., when
recipe.isFirefoxLabsOptIn = true) - Studies disabled -> Experiments and rollouts are disabled EXCEPT for Firefox Labs opt-ins (i.e., when
recipe.isFirefoxLabsOptIn = true) - Firefox Labs disabled -> Firefox Labs is disabled and experiments and rollouts work as normal
To implement this, we need to:
- Add a new pref to enable/disable Firefox Labs;
- Expose said pref on the Firefox Labs page;
- Update the Firefox labs page to not be hidden if there are no studies. Instead, it should say there are no available opt-ins / Firefox Labs is disabled;
- Update
ExperimentManager._handleStudiesOptOutto exclude Firefox Labs opt-ins (unless they are also disabled); - Update
RemoteSettingsExperimentLoader.onEnabledPrefChangedto disable the itself if both Firefox Labs and either studies or telemetry is disabled; - Add new
MatchStatusentries for studies being disabled and Firefox Labs being disabled; - Update
EnrollmentsContext.checkRecipeto add additional checks for:- Firefox Labs being disabled if the recipe is a Firefox Labs Opt-In
- Studies/telemetry being disabled if the recipe is a traditional experiment/rollout
| Assignee | ||
Comment 1•7 months ago
|
||
We do not want users to confuse these opt-ins with regular studies,
especially when studies are disabled, as that may lead them to believe
that we are running studies without their consent.
Updated•7 months ago
|
| Assignee | ||
Comment 2•7 months ago
|
||
We have been accruing internal state inside ExperimentAPI.sys.mjs that
we do not want to expose as mutable to outside of the module. That state
is now bundled into the ExperimentAPI object itself as private
elements.
| Assignee | ||
Comment 3•7 months ago
|
||
Both Firefox Labs and one of either studies or telemetry must now be
disabled to fully disable Nimbus.
| Assignee | ||
Comment 4•7 months ago
|
||
| Assignee | ||
Comment 5•7 months ago
|
||
Updated•7 months ago
|
Backed out for causing bc failures.
- Backout link
- Push with failures
- Failure Log bc failures
- Failure Log mochitest failures
| Assignee | ||
Updated•7 months ago
|
Updated•7 months ago
|
| Assignee | ||
Updated•7 months ago
|
| Assignee | ||
Updated•7 months ago
|
Comment 10•7 months ago
|
||
Comment 11•7 months ago
|
||
Backed out for causing marionette failures @ test_no_errors_clean_profile.py
| Assignee | ||
Comment 12•7 months ago
|
||
| Assignee | ||
Updated•7 months ago
|
Comment 13•7 months ago
|
||
Comment 14•7 months ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/a9b317048a30
https://hg.mozilla.org/mozilla-central/rev/b43818080a5e
https://hg.mozilla.org/mozilla-central/rev/ca7925e6e415
https://hg.mozilla.org/mozilla-central/rev/65bd329624d3
https://hg.mozilla.org/mozilla-central/rev/733ee3e7e1b1
https://hg.mozilla.org/mozilla-central/rev/efb03dd2507e
Comment 15•6 months ago
|
||
:beth does this need a relnote for 146? Please nominate if so.
| Assignee | ||
Comment 16•6 months ago
•
|
||
Release Note Request (optional, but appreciated)
[Why is this notable]: Firefox Labs is now available to all users, regardless of whether or not they choose to participate in studies or submit telemetry. That means we have more features in the hands of more people.
[Affects Firefox for Android]: No
[Suggested wording]:
[Links (documentation, blog post, etc)]:
Comment 17•6 months ago
|
||
Added to Fx146 release notes
https://www.firefox.com/en-US/firefox/146.0a1/releasenotes/
Updated•6 months ago
|
Description
•