experimenter
experimenter copied to clipboard
A web application for managing user experiments for Mozilla Firefox.
┆Issue is synchronized with this [Jira Task](https://mozilla-hub.atlassian.net/browse/EXP-2685)
Because * snake_case is idiomatic for Python * camelCase is idiomatic for javascript/typescript * The graphql library graphene automatically converts snake_case to camelCase * After we remove graphene, we want...
Because... * Not changing the treatment branch state in the db when `is_rollout=True` on the Branches page This commit... * Updates the is_rollout action to remove treatment branches when `is_rollout=True`...
…saging. This is intended to target lapsed users who are background updated to Firefox 106. We check for: - Win 10+; and - either: - no serialized targeting state from...
The API type generation/checking compares the output of the Python types generated, but not for the Apollo generated types. This means someone can modify the queries on the frontend but...
Presently, we don't have any integration tests for rollouts. Let's make some! ┆Issue is synchronized with this [Jira Task](https://mozilla-hub.atlassian.net/browse/EXP-2779)
**[Prerequisites]:** * Have a draft ready for launch open. **[Steps to reproduce]:** 1. Launch the experiment in Preview. 1. Return the experiment to Draft state. 1. Modify the experiment (the...
Presently, we copy the instance in memory with all of its fields and then explicitly set some to `None` that should not be set on the clone. However this results...
Let's add a new targeting config for mobile first run that uses the boolean property that Fenix and Firefox iOS expose that is true on the first session, and then...
We recently added integration tests using the SDK to validate jexl expressions. Now we can test each of the 'advanced' targeting options for each desktop and mobile client. However we...