Description
Based on what we find via T422377: [Customize GrowthBook] Explore and evaluate what platform needs and what GrowthBook provides, we should customize the GrowthBook instances we have in both staging and production environments.
Regardless of the outcome for the spike above, there will be two different areas of work here:
- Adding missing fields that are needed to register experiments to the GrowthBook UI. For example, a field to define a related Phabricator ticket or another one to set the Stream name that the corresponding piece of code will send events to. This first piece of work can be done simply by adding Custom Fields configured according to the specific needs for every specific field
- New validation rules: Some additional validation rules to the ones that GrowthBook provides are needed. Custom Hooks is a very interesting feature for this purpose that is currently available for Features (but not for Experiments). We are with conversations with GrowthBook about having it also for Experiments. This would be the best way to address this piece of work, but they are others in case the first one cannot be used. So, the approach of the second one will depend on whether Custom Hooks are available or not for Experiments:
- Custom Hooks has been enabled for experiments: In this case a lot of additional validation rules can be added via that feature (probably all of them):
- Custom Hooks hasn't been enabled for experiments: In this case, the validation rules mentioned above will have to be implemented via Pre-launch checklists (which is more like a soft validation) + custom implementation of backend validation to ensure that experiments meet the requirements (in case a validation rule fails, experiment owners would be alerted via T427593: [GrowthBook Integration] [Spike] Add alerting and de-duplication for GrowthBook experiment validation failures)
Acceptance criteria
- Additional fields needed in the GrowthBook UI
- Missing fields have been added according to the approach defined in the related Spike
- Additional validation rules in the case Custom Hooks have been enabled:
-
Custom Hooks have been defined for all GrowthBook UI validation rules defined in the related Spike(not doable, Custom Hooks are not available yet for Experiments. We asked GrowthBook about that but we are still waiting for a response
- Additional validation rules in the case Custom Hooks haven't been enabled:
- A Pre-launch checklist has been defined with as many items as validation rules have been defined int he related Spike
- Same validation rules have been implemented in the backend in the growthBookExperimentValidator component