You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jan 29, 2025. It is now read-only.
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
When modifying a field by adding and deprecating, document:
The expected behaviour of the old field in terms of the new
The expected behaviour when both fields are present. (e.g. in the presence of both fields, the
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
Assign this issue to yourself
Add a comment below describing the changes at a high level, including all new/deprecated
fields, their types, and their uses
Link to any related proposal documentation
Create a PR which introduces the schema changes and includes the following
For deprecated fields, file a ticket in 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
File tickets/epics for all Nimbus Clients for the new changes to be QAed by supplying the new
sample data to the relevant (desktop/mobile) client(s) and verifying the intended behaviour
New Fields:
The Nimbus Experiment schema will gain a new top level localizations property, which is an object mapping locale codes to the localized text for each locale the experiment targets
freshstrangemusic
changed the title
Schema Change for <changes>
Schema Change for Experiment Localization
Mar 7, 2023
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: