-
Notifications
You must be signed in to change notification settings - Fork 12
Schema Change for Adding Rollouts #183
Comments
Related documentation is mainly this Nimbus Rollouts Technical Plan In particular, adding a per-experiment
|
Will see if any tests are relevant here |
Looks like the ticket for Mobile has already been filed and implemented
And filed & in-progress for desktop as well |
Considering the changes recently introduced by #182, the testing recipes might need to take into account the multifeature changes as well. For testing we would also need to use both single feature and multifeature experiments that use the new schema for Rollouts. |
Looks like the ticket for QA on Desktop and Mobile is here: |
Merged the schema change, but have not yet made a release. We have some sample data candidates here that I'd like to wait for before the release: But also, since we've gone back & forth so much on that data, I'd also like to wait until QA for the clients is complete so we know exactly what data was practically useful. |
Current testing data based on #179 (comment) (feature config values - e.g. loadMore -> true/false - and channel may change as testing is performed. Filters that can be found on Stage may be added to change the order in which we enroll in the available recipes): Desktop: Desktop Rollout with pocketNewtab enabled
Desktop Rollout with privatebrowsing disabled
Desktop Experiment with isRollout false pocketNewtab enabled / disabled
Desktop Multifeature Experiment with isRollout false pocketNewtab and privatebrowsing enabled / disabled
Firefox Android: Android Rollout with homescreen enabled
Android Rollout with homescreen disabled
Android Experiment with isRollout false homescreen enabled /disabled
Android Multifeature Experiment with isRollout false homescreen and fenix-default-browser enabled / disabled
Firefox iOS: iOS Rollout with homescreen enabled
iOS Rollout with homescreen disabled
iOS Experiment with isRollout false homescreen enabled / disabled
iOS Multifeature Experiment with isRollout false homescreen and fenix-default-browser enabled / disabled
|
Final testing data used: Desktop: Desktop Rollout with pocketNewtab enabled
Desktop Rollout with privatebrowsing disabled
Desktop Experiment with isRollout false pocketNewtab enabled / disabled
Desktop Multifeature Experiment with isRollout false pocketNewtab and privatebrowsing enabled / disabled
Firefox Android: Android Rollout with homescreen enabled
Android Rollout with homescreen disabled
Android Experiment with isRollout false homescreen enabled /disabled
Android Multifeature Experiment with isRollout false homescreen and fenix-default-browser enabled / disabled
Firefox iOS: iOS Rollout with homescreen enabled
iOS Rollout with homescreen disabled
iOS Experiment with isRollout false homescreen enabled / disabled
iOS Multifeature Experiment with isRollout false homescreen and fenix-default-browser enabled / disabled
|
We have finished testing. You can find the TestRail test runs here.
Desktop Version/Platforms Tested:
Mobile version/Platform Tested:
|
Amazing thank you I'll wait for https://bugzilla.mozilla.org/show_bug.cgi?id=1752146 to be resolved and then move this forward. |
After the clarification of an expected behavior, this issue was also filed: |
Okay blocking on https://mozilla-hub.atlassian.net/browse/EXP-2117 and then we can land the Experimenter parts |
Thank you @heres-maria for the thorough testing! |
@jaredlockhart trying to wade through these comments. Is this issue good to close now, or do we still need to wait? Can this be released (I'm seeing the last release was 1.7.0 back in December)? |
The new version v1.8.0 is being consumed by experimenter now. Closing this 👍 |
Welcome Change Captain! ⛵️
When making schema changes, follow this guidance to avoid breaking changes:
Rather than modifying an existing field, consider adding a new field with a new name and later
deprecating the old field when it is no longer used
new old field should be ignored)
When deprecating an existing field, consider making it optional/nullable rather than removing it
altogether and then removing it entirely when all clients/active experiments no longer depend on
it
Proposing Schema Changes
fields, their types, and their uses
their use for each of desktop/mobile
link to the PR requesting feedback
changes
Nimbus Engineering
to add a warning to the Nimbus UI that the field will be deprecated and provide guidance about
how experiment/feature owners should migrate away from their dependence on the deprecated
field
When Client Changes Are Complete
sample data to the relevant (desktop/mobile) client(s) and verifying the intended behaviour
When Client QA is Complete
When Bugs Are Resolved and Clients Are Released
Comment below indicating which version of each client application includes the changes
have the change at the time of making the change
File tickets/epics in
Nimbus Engineering
to implement the changes in Experimenter and add them in a comment below, including:
fields are no longer supported
from UI/APIs
easily reverted if necessary
File tickets/epics in Jetstream to adapt it
to any incoming changes that affect its analysis
to go out as close together as possible
When Experimenter Changes Are Complete
The text was updated successfully, but these errors were encountered: