Recipe List
Viewset for viewing and uploading recipes.
GET /api/v3/recipe/?format=api&ordering=-action&page=52
https://normandy.cdn.mozilla.net/api/v3/recipe/?format=api&ordering=-action&page=53", "previous": "https://normandy.cdn.mozilla.net/api/v3/recipe/?format=api&ordering=-action&page=51", "results": [ { "approved_revision": null, "id": 6, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Log a message to the console", "type": "object", "required": [ "message" ], "properties": { "message": { "description": "Message to log to the console", "type": "string", "default": "" } } }, "name": "console-log", "id": 1, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/console-log/implementation/sha384-dwDUzk7p67hyOW81gMBIWnhrBFoOvbRvrt2ftxkMrqBjbADVA_1TjHuv0i7bbFrN/" }, "approval_request": null, "arguments": { "message": "success" }, "experimenter_slug": null, "capabilities": [ "action.console-log" ], "comment": "", "creator": null, "date_created": "2016-08-09T00:56:27.717266Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.locale in ['en-US', 'fr']", "filter_expression": "normandy.locale in ['en-US', 'fr']", "filter_object": [], "id": 1438, "identicon_seed": "v1:6", "metadata": {}, "name": "Locale Filtering Tests", "recipe": { "approved_revision_id": null, "id": 6, "latest_revision_id": 1438 }, "updated": "2017-02-01T23:53:26.642116Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2020-05-20T17:12:14.712072Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2107, "revision": { "id": 3084, "recipe_id": 966 } }, "arguments": { "branches": [ { "extensionApiId": 109, "ratio": 100, "slug": "only-branch" } ], "slug": "bug-1635674-addon-https-upgrade-study-v2-release-75-77", "userFacingDescription": "This add-on tests an approach to upgrading certain HTTP connections to HTTPS.", "userFacingName": "HTTPS Upgrade Study", "isEnrollmentPaused": true }, "experimenter_slug": "https-upgrade-study-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-05-20T17:09:42.674724Z", "enabled_states": [ { "id": 1605, "created": "2020-05-26T16:40:34.848808Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1596, "created": "2020-05-20T17:13:04.396436Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1585 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"75.!\")>=0)&&(env.version|versionCompare(\"77.*\")<0)) && ([normandy.userId,\"global-v2\"]|bucketSample(8151,50,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 75, 76, 77 ] }, { "count": 50, "input": [ "normandy.userId", "\"global-v2\"" ], "start": 8151, "total": 10000, "type": "bucketSample" } ], "id": 3084, "identicon_seed": "v1:nwAuMKUcpiqY", "metadata": {}, "name": "HTTPS Upgrade Study V2", "recipe": { "approved_revision_id": 3084, "id": 966, "latest_revision_id": 3084 }, "updated": "2020-05-26T16:40:34.849923Z" }, "id": 966, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2020-05-20T17:12:14.712072Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2107, "revision": { "id": 3084, "recipe_id": 966 } }, "arguments": { "branches": [ { "extensionApiId": 109, "ratio": 100, "slug": "only-branch" } ], "slug": "bug-1635674-addon-https-upgrade-study-v2-release-75-77", "userFacingDescription": "This add-on tests an approach to upgrading certain HTTP connections to HTTPS.", "userFacingName": "HTTPS Upgrade Study", "isEnrollmentPaused": true }, "experimenter_slug": "https-upgrade-study-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-05-20T17:09:42.674724Z", "enabled_states": [ { "id": 1605, "created": "2020-05-26T16:40:34.848808Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1596, "created": "2020-05-20T17:13:04.396436Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1585 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"75.!\")>=0)&&(env.version|versionCompare(\"77.*\")<0)) && ([normandy.userId,\"global-v2\"]|bucketSample(8151,50,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 75, 76, 77 ] }, { "count": 50, "input": [ "normandy.userId", "\"global-v2\"" ], "start": 8151, "total": 10000, "type": "bucketSample" } ], "id": 3084, "identicon_seed": "v1:nwAuMKUcpiqY", "metadata": {}, "name": "HTTPS Upgrade Study V2", "recipe": { "approved_revision_id": 3084, "id": 966, "latest_revision_id": 3084 }, "updated": "2020-05-26T16:40:34.849923Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2020-10-20T18:40:57.566412Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2354, "revision": { "id": 3386, "recipe_id": 1074 } }, "arguments": { "branches": [ { "extensionApiId": 112, "ratio": 100, "slug": "single-branch" } ], "isEnrollmentPaused": false, "slug": "bug-1669522-addon-third-party-dns-resolver-usage-study-v2-release-81-82", "userFacingDescription": "This study examines how DNS resolvers are chosen by our platform code.", "userFacingName": "Third-party DNS resolver usage study V2" }, "experimenter_slug": "third-party-dns-resolver-usage-study-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "fix targeted rollout slug", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-10-20T18:40:55.801925Z", "enabled_states": [ { "id": 1898, "created": "2020-10-27T16:05:38.828166Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1897, "created": "2020-10-20T18:41:59.761985Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1896 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.rollouts.pref[\"bug-1648229-rollout-comcast-steering-rollout-release-78-80\"].state == \"active\"", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"81.!\")>=0)&&(env.version|versionCompare(\"82.*\")<0)) && ([\"global-v4\",normandy.userId]|bucketSample(5750,100,10000)) && (normandy.rollouts.pref[\"bug-1648229-rollout-comcast-steering-rollout-release-78-80\"].state == \"active\")", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 81, 82 ] }, { "count": 100, "namespace": "global-v4", "start": 5750, "total": 10000, "type": "namespaceSample" } ], "id": 3386, "identicon_seed": "v1:hlXRZviplnBt", "metadata": {}, "name": "Third-party DNS resolver usage study V2", "recipe": { "approved_revision_id": 3386, "id": 1074, "latest_revision_id": 3386 }, "updated": "2020-10-27T16:05:38.833096Z" }, "id": 1074, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2020-10-20T18:40:57.566412Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2354, "revision": { "id": 3386, "recipe_id": 1074 } }, "arguments": { "branches": [ { "extensionApiId": 112, "ratio": 100, "slug": "single-branch" } ], "isEnrollmentPaused": false, "slug": "bug-1669522-addon-third-party-dns-resolver-usage-study-v2-release-81-82", "userFacingDescription": "This study examines how DNS resolvers are chosen by our platform code.", "userFacingName": "Third-party DNS resolver usage study V2" }, "experimenter_slug": "third-party-dns-resolver-usage-study-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "fix targeted rollout slug", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-10-20T18:40:55.801925Z", "enabled_states": [ { "id": 1898, "created": "2020-10-27T16:05:38.828166Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1897, "created": "2020-10-20T18:41:59.761985Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1896 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.rollouts.pref[\"bug-1648229-rollout-comcast-steering-rollout-release-78-80\"].state == \"active\"", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"81.!\")>=0)&&(env.version|versionCompare(\"82.*\")<0)) && ([\"global-v4\",normandy.userId]|bucketSample(5750,100,10000)) && (normandy.rollouts.pref[\"bug-1648229-rollout-comcast-steering-rollout-release-78-80\"].state == \"active\")", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 81, 82 ] }, { "count": 100, "namespace": "global-v4", "start": 5750, "total": 10000, "type": "namespaceSample" } ], "id": 3386, "identicon_seed": "v1:hlXRZviplnBt", "metadata": {}, "name": "Third-party DNS resolver usage study V2", "recipe": { "approved_revision_id": 3386, "id": 1074, "latest_revision_id": 3386 }, "updated": "2020-10-27T16:05:38.833096Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+", "created": "2020-08-11T17:01:59.771582Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "id": 2255, "revision": { "id": 3276, "recipe_id": 1039 } }, "arguments": { "branches": [ { "extensionApiId": 111, "ratio": 100, "slug": "single-branch" } ], "isEnrollmentPaused": false, "slug": "bug-1657699-addon-third-party-dns-resolver-usage-study-release-79-80", "userFacingDescription": "This study examines how DNS resolvers are chosen by our platform code.", "userFacingName": "Third-party DNS resolver usage study" }, "experimenter_slug": "comcast-resolver-usage-study", "capabilities": [ "action.branched-addon-study", "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version" ], "comment": "fix filter expression", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "date_created": "2020-08-11T17:01:58.553005Z", "enabled_states": [ { "id": 1769, "created": "2020-08-18T16:36:03.682413Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1763, "created": "2020-08-11T17:02:47.700830Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.rollouts.pref[\"bug-1648229-rollout-comcast-steering-rollout-release-78-80\"].state == \"active\"", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"79.!\")>=0)&&(env.version|versionCompare(\"80.*\")<0)) && (normandy.rollouts.pref[\"bug-1648229-rollout-comcast-steering-rollout-release-78-80\"].state == \"active\")", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 79, 80 ] } ], "id": 3276, "identicon_seed": "v1:bUxForwVlHKg", "metadata": {}, "name": "Third-party DNS resolver usage study", "recipe": { "approved_revision_id": 3276, "id": 1039, "latest_revision_id": 3276 }, "updated": "2020-08-18T16:36:03.685047Z" }, "id": 1039, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+", "created": "2020-08-11T17:01:59.771582Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "id": 2255, "revision": { "id": 3276, "recipe_id": 1039 } }, "arguments": { "branches": [ { "extensionApiId": 111, "ratio": 100, "slug": "single-branch" } ], "isEnrollmentPaused": false, "slug": "bug-1657699-addon-third-party-dns-resolver-usage-study-release-79-80", "userFacingDescription": "This study examines how DNS resolvers are chosen by our platform code.", "userFacingName": "Third-party DNS resolver usage study" }, "experimenter_slug": "comcast-resolver-usage-study", "capabilities": [ "action.branched-addon-study", "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version" ], "comment": "fix filter expression", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "date_created": "2020-08-11T17:01:58.553005Z", "enabled_states": [ { "id": 1769, "created": "2020-08-18T16:36:03.682413Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1763, "created": "2020-08-11T17:02:47.700830Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.rollouts.pref[\"bug-1648229-rollout-comcast-steering-rollout-release-78-80\"].state == \"active\"", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"79.!\")>=0)&&(env.version|versionCompare(\"80.*\")<0)) && (normandy.rollouts.pref[\"bug-1648229-rollout-comcast-steering-rollout-release-78-80\"].state == \"active\")", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 79, 80 ] } ], "id": 3276, "identicon_seed": "v1:bUxForwVlHKg", "metadata": {}, "name": "Third-party DNS resolver usage study", "recipe": { "approved_revision_id": 3276, "id": 1039, "latest_revision_id": 3276 }, "updated": "2020-08-18T16:36:03.685047Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2019-11-28T04:25:28.260143Z", "creator": { "id": 38, "first_name": "Benson", "last_name": "Wong", "email": "bwong@mozilla.com" }, "id": 1921, "revision": { "id": 2853, "recipe_id": 883 } }, "arguments": { "branches": [ { "extensionApiId": 97, "ratio": 1, "slug": "doh-rollout-heuristics" }, { "extensionApiId": 97, "ratio": 1, "slug": "doh-rollout-disabled" } ], "isEnrollmentPaused": true, "slug": "pref-doh-us-engagement-study-v3-release-70-72-bug-1590831", "userFacingDescription": "This Firefox experiment will measure the impact on user engagement and retention when DNS over HTTPS is rolled out in the United States. Users who are part of the study will receive a notification before DNS over HTTPS is enabled. Set network.trr.mode to ‘5’ in about:config to permanently disable DoH. This experiment does not collect personally-identifiable information, DNS queries, or answers.", "userFacingName": "DNS over HTTPS US Rollout" }, "experimenter_slug": "doh-us-engagement-study-v3", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 38, "first_name": "Benson", "last_name": "Wong", "email": "bwong@mozilla.com" }, "date_created": "2019-11-28T04:25:13.161569Z", "enabled_states": [ { "id": 1387, "created": "2019-12-16T21:19:48.103929Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1364, "created": "2019-11-28T04:32:58.622092Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1363 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.addons[\"doh-rollout@mozilla.org\"].isActive", "filter_expression": "(normandy.locale in [\"en-GB\",\"en-US\",\"en-CA\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"72.*\")<0)) && ([\"doh-rollout\",normandy.userId]|bucketSample(100,100,10000)) && (normandy.addons[\"doh-rollout@mozilla.org\"].isActive)", "filter_object": [ { "locales": [ "en-GB", "en-US", "en-CA" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71, 72 ], "type": "version" }, { "count": 100, "input": [ "\"doh-rollout\"", "normandy.userId" ], "start": 100, "total": 10000, "type": "bucketSample" } ], "id": 2853, "identicon_seed": "v1:phc5lv0w1dk", "metadata": {}, "name": "DoH US Engagement Study V3", "recipe": { "approved_revision_id": 2853, "id": 883, "latest_revision_id": 2853 }, "updated": "2019-12-16T21:19:48.105248Z" }, "id": 883, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2019-11-28T04:25:28.260143Z", "creator": { "id": 38, "first_name": "Benson", "last_name": "Wong", "email": "bwong@mozilla.com" }, "id": 1921, "revision": { "id": 2853, "recipe_id": 883 } }, "arguments": { "branches": [ { "extensionApiId": 97, "ratio": 1, "slug": "doh-rollout-heuristics" }, { "extensionApiId": 97, "ratio": 1, "slug": "doh-rollout-disabled" } ], "isEnrollmentPaused": true, "slug": "pref-doh-us-engagement-study-v3-release-70-72-bug-1590831", "userFacingDescription": "This Firefox experiment will measure the impact on user engagement and retention when DNS over HTTPS is rolled out in the United States. Users who are part of the study will receive a notification before DNS over HTTPS is enabled. Set network.trr.mode to ‘5’ in about:config to permanently disable DoH. This experiment does not collect personally-identifiable information, DNS queries, or answers.", "userFacingName": "DNS over HTTPS US Rollout" }, "experimenter_slug": "doh-us-engagement-study-v3", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 38, "first_name": "Benson", "last_name": "Wong", "email": "bwong@mozilla.com" }, "date_created": "2019-11-28T04:25:13.161569Z", "enabled_states": [ { "id": 1387, "created": "2019-12-16T21:19:48.103929Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1364, "created": "2019-11-28T04:32:58.622092Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1363 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.addons[\"doh-rollout@mozilla.org\"].isActive", "filter_expression": "(normandy.locale in [\"en-GB\",\"en-US\",\"en-CA\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"72.*\")<0)) && ([\"doh-rollout\",normandy.userId]|bucketSample(100,100,10000)) && (normandy.addons[\"doh-rollout@mozilla.org\"].isActive)", "filter_object": [ { "locales": [ "en-GB", "en-US", "en-CA" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71, 72 ], "type": "version" }, { "count": 100, "input": [ "\"doh-rollout\"", "normandy.userId" ], "start": 100, "total": 10000, "type": "bucketSample" } ], "id": 2853, "identicon_seed": "v1:phc5lv0w1dk", "metadata": {}, "name": "DoH US Engagement Study V3", "recipe": { "approved_revision_id": 2853, "id": 883, "latest_revision_id": 2853 }, "updated": "2019-12-16T21:19:48.105248Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+ pausing", "created": "2020-04-21T16:37:10.297121Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "id": 2062, "revision": { "id": 3021, "recipe_id": 941 } }, "arguments": { "slug": "bug-1623996-addon-https-upgrade-study-release-75-76", "userFacingDescription": "This add-on tests an approach to upgrading certain HTTP connections to HTTPS.", "userFacingName": "HTTPS Upgrade Study", "isEnrollmentPaused": true, "branches": [ { "extensionApiId": 108, "ratio": 1, "slug": "only-branch" } ] }, "experimenter_slug": "https-upgrade-study", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "date_created": "2020-04-21T16:37:01.386791Z", "enabled_states": [ { "id": 1550, "created": "2020-04-28T16:01:01.569844Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1529, "created": "2020-04-21T17:01:47.370768Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": true, "carryover_from": 1518 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"75.!\")>=0)&&(env.version|versionCompare(\"76.*\")<0)) && ([\"global-v2\",normandy.userId]|bucketSample(7451,50,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 75, 76 ], "type": "version" }, { "count": 50, "input": [ "\"global-v2\"", "normandy.userId" ], "start": 7451, "total": 10000, "type": "bucketSample" } ], "id": 3021, "identicon_seed": "v1:fuu5stitxg", "metadata": {}, "name": "HTTPS Upgrade Study", "recipe": { "approved_revision_id": 3021, "id": 941, "latest_revision_id": 3021 }, "updated": "2020-04-28T16:01:01.571183Z" }, "id": 941, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+ pausing", "created": "2020-04-21T16:37:10.297121Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "id": 2062, "revision": { "id": 3021, "recipe_id": 941 } }, "arguments": { "slug": "bug-1623996-addon-https-upgrade-study-release-75-76", "userFacingDescription": "This add-on tests an approach to upgrading certain HTTP connections to HTTPS.", "userFacingName": "HTTPS Upgrade Study", "isEnrollmentPaused": true, "branches": [ { "extensionApiId": 108, "ratio": 1, "slug": "only-branch" } ] }, "experimenter_slug": "https-upgrade-study", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "date_created": "2020-04-21T16:37:01.386791Z", "enabled_states": [ { "id": 1550, "created": "2020-04-28T16:01:01.569844Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1529, "created": "2020-04-21T17:01:47.370768Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": true, "carryover_from": 1518 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"75.!\")>=0)&&(env.version|versionCompare(\"76.*\")<0)) && ([\"global-v2\",normandy.userId]|bucketSample(7451,50,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 75, 76 ], "type": "version" }, { "count": 50, "input": [ "\"global-v2\"", "normandy.userId" ], "start": 7451, "total": 10000, "type": "bucketSample" } ], "id": 3021, "identicon_seed": "v1:fuu5stitxg", "metadata": {}, "name": "HTTPS Upgrade Study", "recipe": { "approved_revision_id": 3021, "id": 941, "latest_revision_id": 3021 }, "updated": "2020-04-28T16:01:01.571183Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2020-02-11T17:35:24.755970Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1977, "revision": { "id": 2918, "recipe_id": 908 } }, "arguments": { "slug": "addon-search-interventions-release-72-74-bug-1581260", "userFacingDescription": "Interventions are designed to provide quick answers and solutions to common Firefox issues in the context of a user looking for those answers.", "userFacingName": "Search Interventions", "isEnrollmentPaused": false, "branches": [ { "ratio": 1, "slug": "treatment", "extensionApiId": 106 }, { "ratio": 1, "slug": "control", "extensionApiId": 106 } ] }, "experimenter_slug": "search-interventions", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-02-11T17:35:12.988158Z", "enabled_states": [ { "id": 1457, "created": "2020-03-03T20:10:20.995314Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1430, "created": "2020-02-11T17:40:27.110430Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-ZA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"72.!\")>=0)&&(env.version|versionCompare(\"74.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(9645,200,10000))", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-ZA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 72, 73, 74 ], "type": "version" }, { "type": "bucketSample", "input": [ "\"global-v1\"", "normandy.userId" ], "start": 9645, "count": 200, "total": 10000 } ], "id": 2918, "identicon_seed": "v1:eqqr5zbrubs", "metadata": {}, "name": "Search Interventions", "recipe": { "approved_revision_id": 2918, "id": 908, "latest_revision_id": 2918 }, "updated": "2020-03-03T20:10:20.996826Z" }, "id": 908, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2020-02-11T17:35:24.755970Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1977, "revision": { "id": 2918, "recipe_id": 908 } }, "arguments": { "slug": "addon-search-interventions-release-72-74-bug-1581260", "userFacingDescription": "Interventions are designed to provide quick answers and solutions to common Firefox issues in the context of a user looking for those answers.", "userFacingName": "Search Interventions", "isEnrollmentPaused": false, "branches": [ { "ratio": 1, "slug": "treatment", "extensionApiId": 106 }, { "ratio": 1, "slug": "control", "extensionApiId": 106 } ] }, "experimenter_slug": "search-interventions", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-02-11T17:35:12.988158Z", "enabled_states": [ { "id": 1457, "created": "2020-03-03T20:10:20.995314Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1430, "created": "2020-02-11T17:40:27.110430Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-ZA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"72.!\")>=0)&&(env.version|versionCompare(\"74.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(9645,200,10000))", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-ZA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 72, 73, 74 ], "type": "version" }, { "type": "bucketSample", "input": [ "\"global-v1\"", "normandy.userId" ], "start": 9645, "count": 200, "total": 10000 } ], "id": 2918, "identicon_seed": "v1:eqqr5zbrubs", "metadata": {}, "name": "Search Interventions", "recipe": { "approved_revision_id": 2918, "id": 908, "latest_revision_id": 2918 }, "updated": "2020-03-03T20:10:20.996826Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to change in pref filter value from \"true\" to true", "created": "2021-05-06T23:31:24.191451Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2557, "revision": { "id": 3611, "recipe_id": 1148 } }, "arguments": { "branches": [ { "extensionApiId": 115, "ratio": 100, "slug": "observeration-branch" } ], "isEnrollmentPaused": false, "slug": "bug-1693618-addon-dnssec-interference-measurement-v2-beta-89-90", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V2" }, "experimenter_slug": "dnssec-interference-measurement-v2", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "fix type of telemetry filter", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2021-05-06T23:31:19.614623Z", "enabled_states": [ { "id": 2150, "created": "2021-05-25T18:48:19.235385Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2140, "created": "2021-05-07T00:01:25.402951Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": true, "carryover_from": 2138 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"beta\"]) && ((env.version|versionCompare(\"89.!\")>=0)&&(env.version|versionCompare(\"90.*\")<0)) && ([\"global-v3-beta\",normandy.userId]|bucketSample(2000,500,10000)) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && (normandy.os.isWindows||normandy.os.isMac)", "filter_object": [ { "channels": [ "beta" ], "type": "channel" }, { "type": "version", "versions": [ 89, 90 ] }, { "count": 500, "namespace": "global-v3-beta", "start": 2000, "type": "namespaceSample" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" } ], "id": 3611, "identicon_seed": "v1:kdVgzGJJzoXO", "metadata": {}, "name": "DNSSEC Interference Measurement V2", "recipe": { "approved_revision_id": 3611, "id": 1148, "latest_revision_id": 3611 }, "updated": "2021-05-25T18:48:19.240864Z" }, "id": 1148, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to change in pref filter value from \"true\" to true", "created": "2021-05-06T23:31:24.191451Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2557, "revision": { "id": 3611, "recipe_id": 1148 } }, "arguments": { "branches": [ { "extensionApiId": 115, "ratio": 100, "slug": "observeration-branch" } ], "isEnrollmentPaused": false, "slug": "bug-1693618-addon-dnssec-interference-measurement-v2-beta-89-90", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V2" }, "experimenter_slug": "dnssec-interference-measurement-v2", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "fix type of telemetry filter", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2021-05-06T23:31:19.614623Z", "enabled_states": [ { "id": 2150, "created": "2021-05-25T18:48:19.235385Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2140, "created": "2021-05-07T00:01:25.402951Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": true, "carryover_from": 2138 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"beta\"]) && ((env.version|versionCompare(\"89.!\")>=0)&&(env.version|versionCompare(\"90.*\")<0)) && ([\"global-v3-beta\",normandy.userId]|bucketSample(2000,500,10000)) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && (normandy.os.isWindows||normandy.os.isMac)", "filter_object": [ { "channels": [ "beta" ], "type": "channel" }, { "type": "version", "versions": [ 89, 90 ] }, { "count": 500, "namespace": "global-v3-beta", "start": 2000, "type": "namespaceSample" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" } ], "id": 3611, "identicon_seed": "v1:kdVgzGJJzoXO", "metadata": {}, "name": "DNSSEC Interference Measurement V2", "recipe": { "approved_revision_id": 3611, "id": 1148, "latest_revision_id": 3611 }, "updated": "2021-05-25T18:48:19.240864Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to recipe", "created": "2020-06-23T18:31:01.591293Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "id": 2171, "revision": { "id": 3181, "recipe_id": 1000 } }, "arguments": { "branches": [ { "extensionApiId": 110, "ratio": 100, "slug": "control" } ], "isEnrollmentPaused": false, "slug": "bug-1644947-addon-google-accounts-login-check-release-75-77", "userFacingDescription": "This study will help us understand if Firefox users are being signed out of their Google accounts unintentionally. Learning about the Google accounts login state for our users will help us deliver an optimal experience in Firefox.", "userFacingName": "Google Accounts Login Check" }, "experimenter_slug": "google-login-cookie-check", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "Fixed timestamp", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "date_created": "2020-06-23T18:30:48.393494Z", "enabled_states": [ { "id": 1671, "created": "2020-06-30T16:39:55.154252Z", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1653, "created": "2020-06-23T18:43:43.027256Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.telemetry.main.environment.profile.creationDate <= 18429", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"75.!\")>=0)&&(env.version|versionCompare(\"77.*\")<0)) && ([normandy.userId,\"global-v2\"]|bucketSample(9166,3,10000)) && (normandy.telemetry.main.environment.profile.creationDate <= 18429)", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 75, 76, 77 ] }, { "count": 3, "input": [ "normandy.userId", "\"global-v2\"" ], "start": 9166, "total": 10000, "type": "bucketSample" } ], "id": 3181, "identicon_seed": "v1:VEMOUSPxgwqh", "metadata": {}, "name": "Google Accounts Login Check", "recipe": { "approved_revision_id": 3181, "id": 1000, "latest_revision_id": 3181 }, "updated": "2020-06-30T16:39:55.155435Z" }, "id": 1000, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to recipe", "created": "2020-06-23T18:31:01.591293Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "id": 2171, "revision": { "id": 3181, "recipe_id": 1000 } }, "arguments": { "branches": [ { "extensionApiId": 110, "ratio": 100, "slug": "control" } ], "isEnrollmentPaused": false, "slug": "bug-1644947-addon-google-accounts-login-check-release-75-77", "userFacingDescription": "This study will help us understand if Firefox users are being signed out of their Google accounts unintentionally. Learning about the Google accounts login state for our users will help us deliver an optimal experience in Firefox.", "userFacingName": "Google Accounts Login Check" }, "experimenter_slug": "google-login-cookie-check", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "Fixed timestamp", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "date_created": "2020-06-23T18:30:48.393494Z", "enabled_states": [ { "id": 1671, "created": "2020-06-30T16:39:55.154252Z", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1653, "created": "2020-06-23T18:43:43.027256Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.telemetry.main.environment.profile.creationDate <= 18429", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"75.!\")>=0)&&(env.version|versionCompare(\"77.*\")<0)) && ([normandy.userId,\"global-v2\"]|bucketSample(9166,3,10000)) && (normandy.telemetry.main.environment.profile.creationDate <= 18429)", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 75, 76, 77 ] }, { "count": 3, "input": [ "normandy.userId", "\"global-v2\"" ], "start": 9166, "total": 10000, "type": "bucketSample" } ], "id": 3181, "identicon_seed": "v1:VEMOUSPxgwqh", "metadata": {}, "name": "Google Accounts Login Check", "recipe": { "approved_revision_id": 3181, "id": 1000, "latest_revision_id": 3181 }, "updated": "2020-06-30T16:39:55.155435Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+", "created": "2023-01-05T22:12:34.478193Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "id": 2806, "revision": { "id": 3901, "recipe_id": 1250 } }, "arguments": { "branches": [ { "extensionApiId": 119, "ratio": 100, "slug": "dns-studycom" } ], "isEnrollmentPaused": false, "slug": "bug-1808792-addon-dnssec-interference-measurement-v6-release-105-112", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V6" }, "experimenter_slug": "dnssec-interference-measurement-v6", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "Update sampling filter", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "date_created": "2023-01-05T22:08:08.843780Z", "enabled_states": [ { "id": 2474, "created": "2023-01-17T19:44:31.468554Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2471, "created": "2023-01-05T22:14:35.580377Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"112.*\")<0)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && ([\"global-v7\",normandy.userId]|bucketSample(2700,25,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111, 112 ] }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "type": "namespaceSample", "start": 2700, "count": 25, "namespace": "global-v7" } ], "id": 3901, "identicon_seed": "v1:ZIftAPIEdknN", "metadata": {}, "name": "DNSSEC Interference Measurement V6", "recipe": { "approved_revision_id": 3901, "id": 1250, "latest_revision_id": 3901 }, "updated": "2023-01-17T19:44:31.474525Z" }, "id": 1250, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+", "created": "2023-01-05T22:12:34.478193Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "id": 2806, "revision": { "id": 3901, "recipe_id": 1250 } }, "arguments": { "branches": [ { "extensionApiId": 119, "ratio": 100, "slug": "dns-studycom" } ], "isEnrollmentPaused": false, "slug": "bug-1808792-addon-dnssec-interference-measurement-v6-release-105-112", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V6" }, "experimenter_slug": "dnssec-interference-measurement-v6", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "Update sampling filter", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "date_created": "2023-01-05T22:08:08.843780Z", "enabled_states": [ { "id": 2474, "created": "2023-01-17T19:44:31.468554Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2471, "created": "2023-01-05T22:14:35.580377Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"112.*\")<0)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && ([\"global-v7\",normandy.userId]|bucketSample(2700,25,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111, 112 ] }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "type": "namespaceSample", "start": 2700, "count": 25, "namespace": "global-v7" } ], "id": 3901, "identicon_seed": "v1:ZIftAPIEdknN", "metadata": {}, "name": "DNSSEC Interference Measurement V6", "recipe": { "approved_revision_id": 3901, "id": 1250, "latest_revision_id": 3901 }, "updated": "2023-01-17T19:44:31.474525Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+ to relaunch", "created": "2020-06-30T17:04:31.358839Z", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "id": 2192, "revision": { "id": 3204, "recipe_id": 1008 } }, "arguments": { "branches": [ { "ratio": 100, "slug": "control", "extensionApiId": 110 } ], "isEnrollmentPaused": false, "slug": "bug-1649504-addon-google-accounts-login-check-v2-release-75-78", "userFacingDescription": "This study will help us understand if Firefox users are being signed out of their Google accounts unintentionally. Learning about the Google accounts login state for our users will help us deliver an optimal experience in Firefox.", "userFacingName": "Google Accounts Login Check V2" }, "experimenter_slug": "google-accounts-login-check-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "Relaunch from recipe#1000", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "date_created": "2020-06-30T17:04:28.566756Z", "enabled_states": [ { "id": 1689, "created": "2020-07-07T16:36:00.694505Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1679, "created": "2020-06-30T17:11:10.018937Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.telemetry.main.environment.profile.creationDate <= 18436", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"75.!\")>=0)&&(env.version|versionCompare(\"78.*\")<0)) && ([normandy.userId,\"global-v2\"]|bucketSample(9369,9,10000)) && (normandy.telemetry.main.environment.profile.creationDate <= 18436)", "filter_object": [ { "type": "channel", "channels": [ "release" ] }, { "type": "version", "versions": [ 75, 76, 77, 78 ] }, { "type": "bucketSample", "input": [ "normandy.userId", "\"global-v2\"" ], "start": 9369, "count": 9, "total": 10000 } ], "id": 3204, "identicon_seed": "v1:zEOfStxscZcb", "metadata": {}, "name": "Google Accounts Login Check V2", "recipe": { "approved_revision_id": 3204, "id": 1008, "latest_revision_id": 3204 }, "updated": "2020-07-07T16:36:00.695786Z" }, "id": 1008, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+ to relaunch", "created": "2020-06-30T17:04:31.358839Z", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "id": 2192, "revision": { "id": 3204, "recipe_id": 1008 } }, "arguments": { "branches": [ { "ratio": 100, "slug": "control", "extensionApiId": 110 } ], "isEnrollmentPaused": false, "slug": "bug-1649504-addon-google-accounts-login-check-v2-release-75-78", "userFacingDescription": "This study will help us understand if Firefox users are being signed out of their Google accounts unintentionally. Learning about the Google accounts login state for our users will help us deliver an optimal experience in Firefox.", "userFacingName": "Google Accounts Login Check V2" }, "experimenter_slug": "google-accounts-login-check-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "Relaunch from recipe#1000", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "date_created": "2020-06-30T17:04:28.566756Z", "enabled_states": [ { "id": 1689, "created": "2020-07-07T16:36:00.694505Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1679, "created": "2020-06-30T17:11:10.018937Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.telemetry.main.environment.profile.creationDate <= 18436", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"75.!\")>=0)&&(env.version|versionCompare(\"78.*\")<0)) && ([normandy.userId,\"global-v2\"]|bucketSample(9369,9,10000)) && (normandy.telemetry.main.environment.profile.creationDate <= 18436)", "filter_object": [ { "type": "channel", "channels": [ "release" ] }, { "type": "version", "versions": [ 75, 76, 77, 78 ] }, { "type": "bucketSample", "input": [ "normandy.userId", "\"global-v2\"" ], "start": 9369, "count": 9, "total": 10000 } ], "id": 3204, "identicon_seed": "v1:zEOfStxscZcb", "metadata": {}, "name": "Google Accounts Login Check V2", "recipe": { "approved_revision_id": 3204, "id": 1008, "latest_revision_id": 3204 }, "updated": "2020-07-07T16:36:00.695786Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 58, "first_name": "Tim", "last_name": "Smith", "email": "tismith@mozilla.com" }, "comment": "r+", "created": "2020-01-06T17:44:24.025811Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1950, "revision": { "id": 2888, "recipe_id": 885 } }, "arguments": { "slug": "addon-doh-us-engagement-study-v4-release-70-72-bug-1599650", "userFacingDescription": "This Firefox experiment will measure the impact on user engagement and retention when DNS over HTTPS is rolled out in the United States. Users who are part of the study will receive a notification before DNS over HTTPS is enabled. Set network.trr.mode to ‘5’ in about:config to permanently disable DoH. This experiment does not collect personally-identifiable information, DNS queries, or answers.", "userFacingName": "DNS over HTTPS US Rollout", "isEnrollmentPaused": true, "branches": [ { "extensionApiId": 97, "ratio": 1, "slug": "doh-rollout-heuristics" }, { "extensionApiId": 97, "ratio": 1, "slug": "doh-rollout-disabled" } ] }, "experimenter_slug": "doh-us-engagement-study-v4", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-01-06T17:44:14.206328Z", "enabled_states": [ { "id": 1635, "created": "2020-06-16T18:35:35.190665Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1398, "created": "2020-01-06T17:55:55.010695Z", "creator": { "id": 58, "first_name": "Tim", "last_name": "Smith", "email": "tismith@mozilla.com" }, "enabled": true, "carryover_from": 1372 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(\n \"browser.search.region\"|preferenceValue == \"US\"\n || normandy.addons[\"doh-rollout@mozilla.org\"].active\n)\n&& normandy.os.isWindows\n&& \"devtools.policy.disabled\"|preferenceValue != true\n&& \"datareporting.policy.dataSubmissionEnabled\"|preferenceValue != false\n&& \"identity.fxaccounts.enabled\"|preferenceValue != false", "filter_expression": "(normandy.locale in [\"en-GB\",\"en-US\",\"en-CA\",\"en-AU\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"doh-rollout\",normandy.userId]|bucketSample(200,150,10000)) && ((\n \"browser.search.region\"|preferenceValue == \"US\"\n || normandy.addons[\"doh-rollout@mozilla.org\"].active\n)\n&& normandy.os.isWindows\n&& \"devtools.policy.disabled\"|preferenceValue != true\n&& \"datareporting.policy.dataSubmissionEnabled\"|preferenceValue != false\n&& \"identity.fxaccounts.enabled\"|preferenceValue != false)", "filter_object": [ { "locales": [ "en-GB", "en-US", "en-CA", "en-AU" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71 ], "type": "version" }, { "count": 150, "input": [ "\"doh-rollout\"", "normandy.userId" ], "start": 200, "total": 10000, "type": "bucketSample" } ], "id": 2888, "identicon_seed": "v1:613irhuzmy6", "metadata": {}, "name": "DoH US Engagement Study V4", "recipe": { "approved_revision_id": 2888, "id": 885, "latest_revision_id": 2888 }, "updated": "2020-06-16T18:35:35.192068Z" }, "id": 885, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 58, "first_name": "Tim", "last_name": "Smith", "email": "tismith@mozilla.com" }, "comment": "r+", "created": "2020-01-06T17:44:24.025811Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1950, "revision": { "id": 2888, "recipe_id": 885 } }, "arguments": { "slug": "addon-doh-us-engagement-study-v4-release-70-72-bug-1599650", "userFacingDescription": "This Firefox experiment will measure the impact on user engagement and retention when DNS over HTTPS is rolled out in the United States. Users who are part of the study will receive a notification before DNS over HTTPS is enabled. Set network.trr.mode to ‘5’ in about:config to permanently disable DoH. This experiment does not collect personally-identifiable information, DNS queries, or answers.", "userFacingName": "DNS over HTTPS US Rollout", "isEnrollmentPaused": true, "branches": [ { "extensionApiId": 97, "ratio": 1, "slug": "doh-rollout-heuristics" }, { "extensionApiId": 97, "ratio": 1, "slug": "doh-rollout-disabled" } ] }, "experimenter_slug": "doh-us-engagement-study-v4", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-01-06T17:44:14.206328Z", "enabled_states": [ { "id": 1635, "created": "2020-06-16T18:35:35.190665Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1398, "created": "2020-01-06T17:55:55.010695Z", "creator": { "id": 58, "first_name": "Tim", "last_name": "Smith", "email": "tismith@mozilla.com" }, "enabled": true, "carryover_from": 1372 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(\n \"browser.search.region\"|preferenceValue == \"US\"\n || normandy.addons[\"doh-rollout@mozilla.org\"].active\n)\n&& normandy.os.isWindows\n&& \"devtools.policy.disabled\"|preferenceValue != true\n&& \"datareporting.policy.dataSubmissionEnabled\"|preferenceValue != false\n&& \"identity.fxaccounts.enabled\"|preferenceValue != false", "filter_expression": "(normandy.locale in [\"en-GB\",\"en-US\",\"en-CA\",\"en-AU\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"doh-rollout\",normandy.userId]|bucketSample(200,150,10000)) && ((\n \"browser.search.region\"|preferenceValue == \"US\"\n || normandy.addons[\"doh-rollout@mozilla.org\"].active\n)\n&& normandy.os.isWindows\n&& \"devtools.policy.disabled\"|preferenceValue != true\n&& \"datareporting.policy.dataSubmissionEnabled\"|preferenceValue != false\n&& \"identity.fxaccounts.enabled\"|preferenceValue != false)", "filter_object": [ { "locales": [ "en-GB", "en-US", "en-CA", "en-AU" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71 ], "type": "version" }, { "count": 150, "input": [ "\"doh-rollout\"", "normandy.userId" ], "start": 200, "total": 10000, "type": "bucketSample" } ], "id": 2888, "identicon_seed": "v1:613irhuzmy6", "metadata": {}, "name": "DoH US Engagement Study V4", "recipe": { "approved_revision_id": 2888, "id": 885, "latest_revision_id": 2888 }, "updated": "2020-06-16T18:35:35.192068Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2019-10-01T16:34:47.109706Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1836, "revision": { "id": 2742, "recipe_id": 845 } }, "arguments": { "branches": [ { "extensionApiId": 94, "ratio": 1, "slug": "treatment" }, { "extensionApiId": 94, "ratio": 1, "slug": "control" } ], "slug": "addon-activity-stream-search-topsites-release-69-1576277", "userFacingDescription": "We believe we can deliver an enhanced product experience by exposing these Topsites in a new context, allowing users to navigate even more quickly and easily than they can today.", "userFacingName": "TopSites for Search", "isEnrollmentPaused": true }, "experimenter_slug": null, "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2019-10-01T16:34:41.220815Z", "enabled_states": [ { "id": 1339, "created": "2019-11-19T17:36:21.887218Z", "creator": { "id": 6, "first_name": "Josh", "last_name": "Gaunt", "email": "jgaunt@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1205, "created": "2019-10-01T16:35:41.575172Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1187 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "\"browser.newtabpage.activity-stream.feeds.topsites\"|preferenceValue != false\n&& \"browser.privatebrowsingautostart\"|preferenceValue != true", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"69.!\")>=0)&&(env.version|versionCompare(\"69.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(3265,90,10000)) && (\"browser.newtabpage.activity-stream.feeds.topsites\"|preferenceValue != false\n&& \"browser.privatebrowsingautostart\"|preferenceValue != true)", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 69 ], "type": "version" }, { "count": 90, "input": [ "\"global-v1\"", "normandy.userId" ], "start": 3265, "total": 10000, "type": "bucketSample" } ], "id": 2742, "identicon_seed": "v1:ga1j81clzw", "metadata": {}, "name": "Activity Stream Search TopSites", "recipe": { "approved_revision_id": 2742, "id": 845, "latest_revision_id": 2742 }, "updated": "2019-11-19T17:36:21.888760Z" }, "id": 845, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2019-10-01T16:34:47.109706Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1836, "revision": { "id": 2742, "recipe_id": 845 } }, "arguments": { "branches": [ { "extensionApiId": 94, "ratio": 1, "slug": "treatment" }, { "extensionApiId": 94, "ratio": 1, "slug": "control" } ], "slug": "addon-activity-stream-search-topsites-release-69-1576277", "userFacingDescription": "We believe we can deliver an enhanced product experience by exposing these Topsites in a new context, allowing users to navigate even more quickly and easily than they can today.", "userFacingName": "TopSites for Search", "isEnrollmentPaused": true }, "experimenter_slug": null, "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2019-10-01T16:34:41.220815Z", "enabled_states": [ { "id": 1339, "created": "2019-11-19T17:36:21.887218Z", "creator": { "id": 6, "first_name": "Josh", "last_name": "Gaunt", "email": "jgaunt@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1205, "created": "2019-10-01T16:35:41.575172Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1187 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "\"browser.newtabpage.activity-stream.feeds.topsites\"|preferenceValue != false\n&& \"browser.privatebrowsingautostart\"|preferenceValue != true", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"69.!\")>=0)&&(env.version|versionCompare(\"69.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(3265,90,10000)) && (\"browser.newtabpage.activity-stream.feeds.topsites\"|preferenceValue != false\n&& \"browser.privatebrowsingautostart\"|preferenceValue != true)", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 69 ], "type": "version" }, { "count": 90, "input": [ "\"global-v1\"", "normandy.userId" ], "start": 3265, "total": 10000, "type": "bucketSample" } ], "id": 2742, "identicon_seed": "v1:ga1j81clzw", "metadata": {}, "name": "Activity Stream Search TopSites", "recipe": { "approved_revision_id": 2742, "id": 845, "latest_revision_id": 2742 }, "updated": "2019-11-19T17:36:21.888760Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "comment": "r+", "created": "2022-12-09T21:58:53.749949Z", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "id": 2803, "revision": { "id": 3898, "recipe_id": 1249 } }, "arguments": { "branches": [ { "extensionApiId": 118, "ratio": 100, "slug": "dnssec-experiment-moznet" } ], "isEnrollmentPaused": false, "slug": "bug-1803490-addon-dnssec-interference-measurement-v5-release-105-111", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V5" }, "experimenter_slug": "dnssec-interference-measurement-v5", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "Update namespace bucket sample start to 2600", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "date_created": "2022-12-09T21:48:53.297783Z", "enabled_states": [ { "id": 2468, "created": "2022-12-20T18:44:25.676179Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2466, "created": "2022-12-09T21:59:49.326001Z", "creator": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"111.*\")<0)) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && (normandy.os.isWindows||normandy.os.isMac) && ([\"global-v7\",normandy.userId]|bucketSample(2600,100,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111 ] }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "count": 100, "namespace": "global-v7", "start": 2600, "type": "namespaceSample" } ], "id": 3898, "identicon_seed": "v1:sNaLBeHlCysV", "metadata": {}, "name": "DNSSEC Interference Measurement V5", "recipe": { "approved_revision_id": 3898, "id": 1249, "latest_revision_id": 3898 }, "updated": "2022-12-20T18:44:25.681789Z" }, "id": 1249, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "comment": "r+", "created": "2022-12-09T21:58:53.749949Z", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "id": 2803, "revision": { "id": 3898, "recipe_id": 1249 } }, "arguments": { "branches": [ { "extensionApiId": 118, "ratio": 100, "slug": "dnssec-experiment-moznet" } ], "isEnrollmentPaused": false, "slug": "bug-1803490-addon-dnssec-interference-measurement-v5-release-105-111", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V5" }, "experimenter_slug": "dnssec-interference-measurement-v5", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "Update namespace bucket sample start to 2600", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "date_created": "2022-12-09T21:48:53.297783Z", "enabled_states": [ { "id": 2468, "created": "2022-12-20T18:44:25.676179Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2466, "created": "2022-12-09T21:59:49.326001Z", "creator": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"111.*\")<0)) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && (normandy.os.isWindows||normandy.os.isMac) && ([\"global-v7\",normandy.userId]|bucketSample(2600,100,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111 ] }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "count": 100, "namespace": "global-v7", "start": 2600, "type": "namespaceSample" } ], "id": 3898, "identicon_seed": "v1:sNaLBeHlCysV", "metadata": {}, "name": "DNSSEC Interference Measurement V5", "recipe": { "approved_revision_id": 3898, "id": 1249, "latest_revision_id": 3898 }, "updated": "2022-12-20T18:44:25.681789Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "comment": "lgtm", "created": "2020-03-17T16:47:49.452958Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2019, "revision": { "id": 2963, "recipe_id": 919 } }, "arguments": { "slug": "addon-search-interventions-v2-release-73-74-bug-1619705", "userFacingDescription": "Interventions are designed to provide quick answers and solutions to common Firefox issues in the context of a user looking for those answers.", "userFacingName": "Search Interventions", "isEnrollmentPaused": true, "branches": [ { "extensionApiId": 107, "ratio": 50, "slug": "control" }, { "extensionApiId": 107, "ratio": 50, "slug": "treatment" } ] }, "experimenter_slug": "search-interventions-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-03-17T16:47:41.741448Z", "enabled_states": [ { "id": 1579, "created": "2020-05-12T16:37:40.947244Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1474, "created": "2020-03-17T17:05:50.026110Z", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "enabled": true, "carryover_from": 1456 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-US\",\"en-ZA\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"73.!\")>=0)&&(env.version|versionCompare(\"74.*\")<0)) && ([\"global-v2\",normandy.userId]|bucketSample(2500,200,10000))", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-US", "en-ZA" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 73, 74 ], "type": "version" }, { "count": 200, "input": [ "\"global-v2\"", "normandy.userId" ], "start": 2500, "total": 10000, "type": "bucketSample" } ], "id": 2963, "identicon_seed": "v1:6tiex0rvq6", "metadata": {}, "name": "Search Interventions V2", "recipe": { "approved_revision_id": 2963, "id": 919, "latest_revision_id": 2963 }, "updated": "2020-05-12T16:37:40.948615Z" }, "id": 919, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "comment": "lgtm", "created": "2020-03-17T16:47:49.452958Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2019, "revision": { "id": 2963, "recipe_id": 919 } }, "arguments": { "slug": "addon-search-interventions-v2-release-73-74-bug-1619705", "userFacingDescription": "Interventions are designed to provide quick answers and solutions to common Firefox issues in the context of a user looking for those answers.", "userFacingName": "Search Interventions", "isEnrollmentPaused": true, "branches": [ { "extensionApiId": 107, "ratio": 50, "slug": "control" }, { "extensionApiId": 107, "ratio": 50, "slug": "treatment" } ] }, "experimenter_slug": "search-interventions-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-03-17T16:47:41.741448Z", "enabled_states": [ { "id": 1579, "created": "2020-05-12T16:37:40.947244Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1474, "created": "2020-03-17T17:05:50.026110Z", "creator": { "id": 51, "first_name": "Jared", "last_name": "Kerim", "email": "jkerim@mozilla.com" }, "enabled": true, "carryover_from": 1456 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-US\",\"en-ZA\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"73.!\")>=0)&&(env.version|versionCompare(\"74.*\")<0)) && ([\"global-v2\",normandy.userId]|bucketSample(2500,200,10000))", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-US", "en-ZA" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 73, 74 ], "type": "version" }, { "count": 200, "input": [ "\"global-v2\"", "normandy.userId" ], "start": 2500, "total": 10000, "type": "bucketSample" } ], "id": 2963, "identicon_seed": "v1:6tiex0rvq6", "metadata": {}, "name": "Search Interventions V2", "recipe": { "approved_revision_id": 2963, "id": 919, "latest_revision_id": 2963 }, "updated": "2020-05-12T16:37:40.948615Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "comment": "r+", "created": "2023-02-27T17:07:00.866151Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2823, "revision": { "id": 3924, "recipe_id": 1261 } }, "arguments": { "branches": [ { "ratio": 100, "slug": "dnssec-experiment-moznet", "extensionApiId": 121 } ], "isEnrollmentPaused": false, "slug": "bug-1818839-addon-dnssec-interference-measurement-v8-release-105-112", "userFacingDescription": "We intend to diagnose the impact of ordering on query failures for DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V8" }, "experimenter_slug": "dnssec-interference-measurement-v8", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "experimenter import, upload extension, ignored clients that have disabled telemetry, mac and windows only", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2023-02-27T17:06:58.203291Z", "enabled_states": [ { "id": 2502, "created": "2023-03-07T16:34:01.734552Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2494, "created": "2023-02-27T17:40:31.013703Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"112.*\")<0)) && ([\"global-v7\",normandy.userId]|bucketSample(2825,100,10000)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true)", "filter_object": [ { "type": "channel", "channels": [ "release" ] }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111, 112 ] }, { "type": "namespaceSample", "start": 2825, "count": 100, "namespace": "global-v7" }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true } ], "id": 3924, "identicon_seed": "v1:teAPVJYKqGxk", "metadata": {}, "name": "DNSSEC Interference Measurement V8", "recipe": { "approved_revision_id": 3924, "id": 1261, "latest_revision_id": 3924 }, "updated": "2023-03-07T16:34:01.740215Z" }, "id": 1261, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "comment": "r+", "created": "2023-02-27T17:07:00.866151Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2823, "revision": { "id": 3924, "recipe_id": 1261 } }, "arguments": { "branches": [ { "ratio": 100, "slug": "dnssec-experiment-moznet", "extensionApiId": 121 } ], "isEnrollmentPaused": false, "slug": "bug-1818839-addon-dnssec-interference-measurement-v8-release-105-112", "userFacingDescription": "We intend to diagnose the impact of ordering on query failures for DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V8" }, "experimenter_slug": "dnssec-interference-measurement-v8", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "experimenter import, upload extension, ignored clients that have disabled telemetry, mac and windows only", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2023-02-27T17:06:58.203291Z", "enabled_states": [ { "id": 2502, "created": "2023-03-07T16:34:01.734552Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2494, "created": "2023-02-27T17:40:31.013703Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"112.*\")<0)) && ([\"global-v7\",normandy.userId]|bucketSample(2825,100,10000)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true)", "filter_object": [ { "type": "channel", "channels": [ "release" ] }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111, 112 ] }, { "type": "namespaceSample", "start": 2825, "count": 100, "namespace": "global-v7" }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true } ], "id": 3924, "identicon_seed": "v1:teAPVJYKqGxk", "metadata": {}, "name": "DNSSEC Interference Measurement V8", "recipe": { "approved_revision_id": 3924, "id": 1261, "latest_revision_id": 3924 }, "updated": "2023-03-07T16:34:01.740215Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "comment": "r+", "created": "2023-01-13T22:13:55.816100Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2809, "revision": { "id": 3905, "recipe_id": 1252 } }, "arguments": { "branches": [ { "extensionApiId": 120, "ratio": 100, "slug": "dnssec-experiment-moznet" } ], "isEnrollmentPaused": false, "slug": "bug-1810222-addon-dnssec-interference-measurement-v7-release-105-112", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V7" }, "experimenter_slug": "dnssec-interference-measurement-v7", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "update start count", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2023-01-13T22:09:47.370103Z", "enabled_states": [ { "id": 2477, "created": "2023-01-27T15:10:43.810054Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2473, "created": "2023-01-13T22:15:45.707495Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"112.*\")<0)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && ([\"global-v7\",normandy.userId]|bucketSample(2725,100,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111, 112 ] }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "count": 100, "namespace": "global-v7", "start": 2725, "type": "namespaceSample" } ], "id": 3905, "identicon_seed": "v1:LTsEYneLEwdT", "metadata": {}, "name": "DNSSEC Interference Measurement V7", "recipe": { "approved_revision_id": 3905, "id": 1252, "latest_revision_id": 3905 }, "updated": "2023-01-27T15:10:43.814533Z" }, "id": 1252, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "comment": "r+", "created": "2023-01-13T22:13:55.816100Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2809, "revision": { "id": 3905, "recipe_id": 1252 } }, "arguments": { "branches": [ { "extensionApiId": 120, "ratio": 100, "slug": "dnssec-experiment-moznet" } ], "isEnrollmentPaused": false, "slug": "bug-1810222-addon-dnssec-interference-measurement-v7-release-105-112", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V7" }, "experimenter_slug": "dnssec-interference-measurement-v7", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "update start count", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2023-01-13T22:09:47.370103Z", "enabled_states": [ { "id": 2477, "created": "2023-01-27T15:10:43.810054Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2473, "created": "2023-01-13T22:15:45.707495Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"112.*\")<0)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && ([\"global-v7\",normandy.userId]|bucketSample(2725,100,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111, 112 ] }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "count": 100, "namespace": "global-v7", "start": 2725, "type": "namespaceSample" } ], "id": 3905, "identicon_seed": "v1:LTsEYneLEwdT", "metadata": {}, "name": "DNSSEC Interference Measurement V7", "recipe": { "approved_revision_id": 3905, "id": 1252, "latest_revision_id": 3905 }, "updated": "2023-01-27T15:10:43.814533Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+", "created": "2020-11-17T17:52:27.713914Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2391, "revision": { "id": 3431, "recipe_id": 1090 } }, "arguments": { "branches": [ { "ratio": 100, "slug": "observeration-branch", "extensionApiId": 113 } ], "isEnrollmentPaused": false, "slug": "bug-1655504-addon-dnssec-interference-measurement-beta-82-83", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement" }, "experimenter_slug": "dsn-sec-interference-measurment", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "recipe", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2020-11-17T17:51:51.022991Z", "enabled_states": [ { "id": 1956, "created": "2020-11-30T17:28:17.994505Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1948, "created": "2020-11-17T18:19:11.918034Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"beta\"]) && ((env.version|versionCompare(\"82.!\")>=0)&&(env.version|versionCompare(\"83.*\")<0)) && ([normandy.userId,\"global-v4\"]|bucketSample(7400,100,10000)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true)", "filter_object": [ { "type": "channel", "channels": [ "beta" ] }, { "type": "version", "versions": [ 82, 83 ] }, { "type": "bucketSample", "input": [ "normandy.userId", "\"global-v4\"" ], "start": 7400, "count": 100, "total": 10000 }, { "type": "platform", "platforms": [ "all_windows", "all_mac" ] }, { "type": "preferenceValue", "value": true, "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled" } ], "id": 3431, "identicon_seed": "v1:cMhrbEtqMeWK", "metadata": {}, "name": "DNSSEC Interference Measurement", "recipe": { "approved_revision_id": 3431, "id": 1090, "latest_revision_id": 3431 }, "updated": "2020-11-30T17:28:17.999027Z" }, "id": 1090, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+", "created": "2020-11-17T17:52:27.713914Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2391, "revision": { "id": 3431, "recipe_id": 1090 } }, "arguments": { "branches": [ { "ratio": 100, "slug": "observeration-branch", "extensionApiId": 113 } ], "isEnrollmentPaused": false, "slug": "bug-1655504-addon-dnssec-interference-measurement-beta-82-83", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement" }, "experimenter_slug": "dsn-sec-interference-measurment", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "recipe", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2020-11-17T17:51:51.022991Z", "enabled_states": [ { "id": 1956, "created": "2020-11-30T17:28:17.994505Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1948, "created": "2020-11-17T18:19:11.918034Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"beta\"]) && ((env.version|versionCompare(\"82.!\")>=0)&&(env.version|versionCompare(\"83.*\")<0)) && ([normandy.userId,\"global-v4\"]|bucketSample(7400,100,10000)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true)", "filter_object": [ { "type": "channel", "channels": [ "beta" ] }, { "type": "version", "versions": [ 82, 83 ] }, { "type": "bucketSample", "input": [ "normandy.userId", "\"global-v4\"" ], "start": 7400, "count": 100, "total": 10000 }, { "type": "platform", "platforms": [ "all_windows", "all_mac" ] }, { "type": "preferenceValue", "value": true, "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled" } ], "id": 3431, "identicon_seed": "v1:cMhrbEtqMeWK", "metadata": {}, "name": "DNSSEC Interference Measurement", "recipe": { "approved_revision_id": 3431, "id": 1090, "latest_revision_id": 3431 }, "updated": "2020-11-30T17:28:17.999027Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 6, "first_name": "Josh", "last_name": "Gaunt", "email": "jgaunt@mozilla.com" }, "comment": "approved", "created": "2019-12-10T23:45:38.930978Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1929, "revision": { "id": 2861, "recipe_id": 890 } }, "arguments": { "slug": "addon-fingerprinting-implementation-retention-study-v1-release-69-71-bug-1595604", "userFacingDescription": "This study helps Firefox developers explore new tracking protection features by comparing different strategies for blocking third-party code that may be used to track web browsing activity.", "userFacingName": "Browser fingerprinting protection study", "isEnrollmentPaused": false, "branches": [ { "extensionApiId": 103, "ratio": 1, "slug": "treatmentscript" }, { "extensionApiId": 102, "ratio": 1, "slug": "treatmentdomain" }, { "extensionApiId": 101, "ratio": 1, "slug": "control" } ] }, "experimenter_slug": "fingerprinting-implementation-retention-study-v1", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2019-12-10T23:45:35.403954Z", "enabled_states": [ { "id": 1408, "created": "2020-01-14T17:31:49.910371Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1376, "created": "2019-12-10T23:47:15.877214Z", "creator": { "id": 6, "first_name": "Josh", "last_name": "Gaunt", "email": "jgaunt@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(\n \"browser.contentblocking.category\"|preferenceValue == \"standard\"\n || normandy.addons[\"FPBlock-control@mozilla.org\"].isActive\n || normandy.addons[\"FPBlock-treatmentDomain@mozilla.org\"].isActive\n || normandy.addons[\"FPBlock-treatmentScript@mozilla.org\"].isActive\n)", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"69.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(6490,200,10000)) && ((\n \"browser.contentblocking.category\"|preferenceValue == \"standard\"\n || normandy.addons[\"FPBlock-control@mozilla.org\"].isActive\n || normandy.addons[\"FPBlock-treatmentDomain@mozilla.org\"].isActive\n || normandy.addons[\"FPBlock-treatmentScript@mozilla.org\"].isActive\n))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 69, 70, 71 ], "type": "version" }, { "count": 200, "input": [ "\"global-v1\"", "normandy.userId" ], "start": 6490, "total": 10000, "type": "bucketSample" } ], "id": 2861, "identicon_seed": "v1:k6n1gjhfjnd", "metadata": {}, "name": "Fingerprinting Implementation Retention Study V1", "recipe": { "approved_revision_id": 2861, "id": 890, "latest_revision_id": 2861 }, "updated": "2020-01-14T17:31:49.911769Z" }, "id": 890, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 6, "first_name": "Josh", "last_name": "Gaunt", "email": "jgaunt@mozilla.com" }, "comment": "approved", "created": "2019-12-10T23:45:38.930978Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1929, "revision": { "id": 2861, "recipe_id": 890 } }, "arguments": { "slug": "addon-fingerprinting-implementation-retention-study-v1-release-69-71-bug-1595604", "userFacingDescription": "This study helps Firefox developers explore new tracking protection features by comparing different strategies for blocking third-party code that may be used to track web browsing activity.", "userFacingName": "Browser fingerprinting protection study", "isEnrollmentPaused": false, "branches": [ { "extensionApiId": 103, "ratio": 1, "slug": "treatmentscript" }, { "extensionApiId": 102, "ratio": 1, "slug": "treatmentdomain" }, { "extensionApiId": 101, "ratio": 1, "slug": "control" } ] }, "experimenter_slug": "fingerprinting-implementation-retention-study-v1", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2019-12-10T23:45:35.403954Z", "enabled_states": [ { "id": 1408, "created": "2020-01-14T17:31:49.910371Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1376, "created": "2019-12-10T23:47:15.877214Z", "creator": { "id": 6, "first_name": "Josh", "last_name": "Gaunt", "email": "jgaunt@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(\n \"browser.contentblocking.category\"|preferenceValue == \"standard\"\n || normandy.addons[\"FPBlock-control@mozilla.org\"].isActive\n || normandy.addons[\"FPBlock-treatmentDomain@mozilla.org\"].isActive\n || normandy.addons[\"FPBlock-treatmentScript@mozilla.org\"].isActive\n)", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"69.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(6490,200,10000)) && ((\n \"browser.contentblocking.category\"|preferenceValue == \"standard\"\n || normandy.addons[\"FPBlock-control@mozilla.org\"].isActive\n || normandy.addons[\"FPBlock-treatmentDomain@mozilla.org\"].isActive\n || normandy.addons[\"FPBlock-treatmentScript@mozilla.org\"].isActive\n))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 69, 70, 71 ], "type": "version" }, { "count": 200, "input": [ "\"global-v1\"", "normandy.userId" ], "start": 6490, "total": 10000, "type": "bucketSample" } ], "id": 2861, "identicon_seed": "v1:k6n1gjhfjnd", "metadata": {}, "name": "Fingerprinting Implementation Retention Study V1", "recipe": { "approved_revision_id": 2861, "id": 890, "latest_revision_id": 2861 }, "updated": "2020-01-14T17:31:49.911769Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 58, "first_name": "Tim", "last_name": "Smith", "email": "tismith@mozilla.com" }, "comment": "r+", "created": "2019-12-16T21:03:38.726211Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1941, "revision": { "id": 2879, "recipe_id": 875 } }, "arguments": { "slug": "pref-doh-us-engagement-study-v2-helper-1590831", "userFacingDescription": "Helps maintain the integrity of the DNS over HTTPS Rollout", "userFacingName": "DNS over HTTPS US Rollout", "isEnrollmentPaused": false, "branches": [ { "extensionApiId": 105, "ratio": 1, "slug": "helper" } ] }, "experimenter_slug": "doh-us-engagement-study-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2019-12-16T21:03:29.584922Z", "enabled_states": [ { "id": 1385, "created": "2019-12-16T21:07:02.102755Z", "creator": { "id": 58, "first_name": "Tim", "last_name": "Smith", "email": "tismith@mozilla.com" }, "enabled": true, "carryover_from": 1306 } ], "enabled": true, "extra_capabilities": [], "extra_filter_expression": "(\n \"browser.search.region\"|preferenceValue == \"US\"\n && normandy.os.isWindows\n && \"devtools.policy.disabled\"|preferenceValue != true\n && \"datareporting.policy.dataSubmissionEnabled\"|preferenceValue != false\n && \"identity.fxaccounts.enabled\"|preferenceValue != false\n)\n|| normandy.addons[\"doh-rollout@mozilla.org\"].isActive\n|| \"doh-rollout.enabled\"|preferenceValue", "filter_expression": "(normandy.locale in [\"en-GB\",\"en-CA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"doh-rollout\",normandy.userId]|bucketSample(0,200,10000)) && ((\n \"browser.search.region\"|preferenceValue == \"US\"\n && normandy.os.isWindows\n && \"devtools.policy.disabled\"|preferenceValue != true\n && \"datareporting.policy.dataSubmissionEnabled\"|preferenceValue != false\n && \"identity.fxaccounts.enabled\"|preferenceValue != false\n)\n|| normandy.addons[\"doh-rollout@mozilla.org\"].isActive\n|| \"doh-rollout.enabled\"|preferenceValue)", "filter_object": [ { "locales": [ "en-GB", "en-CA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71 ], "type": "version" }, { "count": 200, "input": [ "\"doh-rollout\"", "normandy.userId" ], "start": 0, "total": 10000, "type": "bucketSample" } ], "id": 2879, "identicon_seed": "v1:xz70cvkfueg", "metadata": {}, "name": "DoH US Engagement Study V2 - Add-on helper", "recipe": { "approved_revision_id": 2879, "id": 875, "latest_revision_id": 2879 }, "updated": "2019-12-16T21:07:02.104119Z" }, "id": 875, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 58, "first_name": "Tim", "last_name": "Smith", "email": "tismith@mozilla.com" }, "comment": "r+", "created": "2019-12-16T21:03:38.726211Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1941, "revision": { "id": 2879, "recipe_id": 875 } }, "arguments": { "slug": "pref-doh-us-engagement-study-v2-helper-1590831", "userFacingDescription": "Helps maintain the integrity of the DNS over HTTPS Rollout", "userFacingName": "DNS over HTTPS US Rollout", "isEnrollmentPaused": false, "branches": [ { "extensionApiId": 105, "ratio": 1, "slug": "helper" } ] }, "experimenter_slug": "doh-us-engagement-study-v2", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2019-12-16T21:03:29.584922Z", "enabled_states": [ { "id": 1385, "created": "2019-12-16T21:07:02.102755Z", "creator": { "id": 58, "first_name": "Tim", "last_name": "Smith", "email": "tismith@mozilla.com" }, "enabled": true, "carryover_from": 1306 } ], "enabled": true, "extra_capabilities": [], "extra_filter_expression": "(\n \"browser.search.region\"|preferenceValue == \"US\"\n && normandy.os.isWindows\n && \"devtools.policy.disabled\"|preferenceValue != true\n && \"datareporting.policy.dataSubmissionEnabled\"|preferenceValue != false\n && \"identity.fxaccounts.enabled\"|preferenceValue != false\n)\n|| normandy.addons[\"doh-rollout@mozilla.org\"].isActive\n|| \"doh-rollout.enabled\"|preferenceValue", "filter_expression": "(normandy.locale in [\"en-GB\",\"en-CA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"doh-rollout\",normandy.userId]|bucketSample(0,200,10000)) && ((\n \"browser.search.region\"|preferenceValue == \"US\"\n && normandy.os.isWindows\n && \"devtools.policy.disabled\"|preferenceValue != true\n && \"datareporting.policy.dataSubmissionEnabled\"|preferenceValue != false\n && \"identity.fxaccounts.enabled\"|preferenceValue != false\n)\n|| normandy.addons[\"doh-rollout@mozilla.org\"].isActive\n|| \"doh-rollout.enabled\"|preferenceValue)", "filter_object": [ { "locales": [ "en-GB", "en-CA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71 ], "type": "version" }, { "count": 200, "input": [ "\"doh-rollout\"", "normandy.userId" ], "start": 0, "total": 10000, "type": "bucketSample" } ], "id": 2879, "identicon_seed": "v1:xz70cvkfueg", "metadata": {}, "name": "DoH US Engagement Study V2 - Add-on helper", "recipe": { "approved_revision_id": 2879, "id": 875, "latest_revision_id": 2879 }, "updated": "2019-12-16T21:07:02.104119Z" }, "signature": { "timestamp": "2024-05-05T00:01:07.790945Z", "signature": "bdn3NgV-kxxyM8vQNBQh1QWji3TBa1c2WGCkkbxF64KQ16IA1h67es9YqwbtOd4ffFgBXYiiFqALeNznSLtaqBqrDBTWaJNYYK5cx8srXExVCQVywrix-dICn2WO_Nc9", "x5u": "https://content-signature-2.cdn.mozilla.net/chains/normandy.content-signature.mozilla.org-2024-06-09-11-51-07.chain", "public_key": "" }, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to 1%", "created": "2022-12-02T21:26:38.763256Z", "creator": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "id": 2800, "revision": { "id": 3893, "recipe_id": 1247 } }, "arguments": { "branches": [ { "extensionApiId": 117, "ratio": 100, "slug": "dns-studycom" } ], "isEnrollmentPaused": false, "slug": "bug-1801384-addon-dnssec-interference-measurement-v4-release-105-110", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V4" }, "experimenter_slug": "dnssec-interference-measurement-with-per-client-measurements-v4", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "Increase to 1%", "creator": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "date_created": "2022-12-02T19:19:22.593264Z", "enabled_states": [ { "id": 2467, "created": "2022-12-16T21:59:25.929727Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2464, "created": "2022-12-02T22:01:29.947737Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": true, "carryover_from": 2463 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"110.*\")<0)) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && (normandy.os.isWindows||normandy.os.isMac) && ([\"global-v7\",normandy.userId]|bucketSample(2500,100,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110 ] }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "count": 100, "namespace": "global-v7", "start": 2500, "type": "namespaceSample" } ], "id": 3893, "identicon_seed": "v1:DuDnjsxABJwx", "metadata": {}, "name": "DNSSEC Interference Measurement V4", "recipe": { "approved_revision_id": 3893, "id": 1247, "latest_revision_id": 3893 }, "updated": "2022-12-16T21:59:25.934358Z" }, "id": 1247, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to 1%", "created": "2022-12-02T21:26:38.763256Z", "creator": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "id": 2800, "revision": { "id": 3893, "recipe_id": 1247 } }, "arguments": { "branches": [ { "extensionApiId": 117, "ratio": 100, "slug": "dns-studycom" } ], "isEnrollmentPaused": false, "slug": "bug-1801384-addon-dnssec-interference-measurement-v4-release-105-110", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V4" }, "experimenter_slug": "dnssec-interference-measurement-with-per-client-measurements-v4", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "Increase to 1%", "creator": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "date_created": "2022-12-02T19:19:22.593264Z", "enabled_states": [ { "id": 2467, "created": "2022-12-16T21:59:25.929727Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2464, "created": "2022-12-02T22:01:29.947737Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": true, "carryover_from": 2463 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"110.*\")<0)) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && (normandy.os.isWindows||normandy.os.isMac) && ([\"global-v7\",normandy.userId]|bucketSample(2500,100,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110 ] }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "count": 100, "namespace": "global-v7", "start": 2500, "type": "namespaceSample" } ], "id": 3893, "identicon_seed": "v1:DuDnjsxABJwx", "metadata": {}, "name": "DNSSEC Interference Measurement V4", "recipe": { "approved_revision_id": 3893, "id": 1247, "latest_revision_id": 3893 }, "updated": "2022-12-16T21:59:25.934358Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "comment": "r+", "created": "2023-03-20T22:51:11.951026Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2843, "revision": { "id": 3953, "recipe_id": 1277 } }, "arguments": { "branches": [ { "ratio": 100, "slug": "dnssec-experiment-moznet", "extensionApiId": 122 } ], "isEnrollmentPaused": false, "slug": "bug-1823530-addon-dnssec-interference-measurement-v9-release-105-112", "userFacingDescription": "We intend to diagnose the impact of interactions with other DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V9" }, "experimenter_slug": "dnssec-interference-measurement-v9", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "recipe import, disable telemetry clients, mac and windows only", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2023-03-20T22:51:09.206018Z", "enabled_states": [ { "id": 2548, "created": "2023-03-28T17:23:02.033111Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2516, "created": "2023-03-20T23:07:26.682578Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"112.*\")<0)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && ([\"global-v7\",normandy.userId]|bucketSample(2925,100,10000))", "filter_object": [ { "type": "channel", "channels": [ "release" ] }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111, 112 ] }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "type": "namespaceSample", "start": 2925, "count": 100, "namespace": "global-v7" } ], "id": 3953, "identicon_seed": "v1:rheRgBAJRcKl", "metadata": {}, "name": "DNSSEC Interference Measurement V9", "recipe": { "approved_revision_id": 3953, "id": 1277, "latest_revision_id": 3953 }, "updated": "2023-03-28T17:23:02.039806Z" }, "id": 1277, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "comment": "r+", "created": "2023-03-20T22:51:11.951026Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2843, "revision": { "id": 3953, "recipe_id": 1277 } }, "arguments": { "branches": [ { "ratio": 100, "slug": "dnssec-experiment-moznet", "extensionApiId": 122 } ], "isEnrollmentPaused": false, "slug": "bug-1823530-addon-dnssec-interference-measurement-v9-release-105-112", "userFacingDescription": "We intend to diagnose the impact of interactions with other DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V9" }, "experimenter_slug": "dnssec-interference-measurement-v9", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "recipe import, disable telemetry clients, mac and windows only", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2023-03-20T22:51:09.206018Z", "enabled_states": [ { "id": 2548, "created": "2023-03-28T17:23:02.033111Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2516, "created": "2023-03-20T23:07:26.682578Z", "creator": { "id": 45, "first_name": "Nan", "last_name": "Jiang", "email": "najiang@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"105.!\")>=0)&&(env.version|versionCompare(\"112.*\")<0)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && ([\"global-v7\",normandy.userId]|bucketSample(2925,100,10000))", "filter_object": [ { "type": "channel", "channels": [ "release" ] }, { "type": "version", "versions": [ 105, 106, 107, 108, 109, 110, 111, 112 ] }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "type": "namespaceSample", "start": 2925, "count": 100, "namespace": "global-v7" } ], "id": 3953, "identicon_seed": "v1:rheRgBAJRcKl", "metadata": {}, "name": "DNSSEC Interference Measurement V9", "recipe": { "approved_revision_id": 3953, "id": 1277, "latest_revision_id": 3953 }, "updated": "2023-03-28T17:23:02.039806Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "comment": "r+ 1% of release 97 + 98, windows/mac, only users with telemetry enabled", "created": "2022-02-23T19:23:14.251544Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2688, "revision": { "id": 3757, "recipe_id": 1199 } }, "arguments": { "branches": [ { "extensionApiId": 116, "ratio": 100, "slug": "observeration-branch" } ], "isEnrollmentPaused": false, "slug": "bug-1747088-addon-dnssec-interference-measurement-v3-release-97-98", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V3" }, "experimenter_slug": "dnssec-interference-measurement-v3", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "changed start bucket", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2022-02-23T19:18:25.991983Z", "enabled_states": [ { "id": 2327, "created": "2022-03-02T22:53:11.347874Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2320, "created": "2022-02-23T19:25:09.614534Z", "creator": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"97.!\")>=0)&&(env.version|versionCompare(\"98.*\")<0)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && ([\"global-v5\",normandy.userId]|bucketSample(2600,100,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 97, 98 ] }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "count": 100, "namespace": "global-v5", "start": 2600, "type": "namespaceSample" } ], "id": 3757, "identicon_seed": "v1:rRQeUvIhokRM", "metadata": {}, "name": "DNSSEC Interference Measurement V3", "recipe": { "approved_revision_id": 3757, "id": 1199, "latest_revision_id": 3757 }, "updated": "2022-03-02T22:53:11.351782Z" }, "id": 1199, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "comment": "r+ 1% of release 97 + 98, windows/mac, only users with telemetry enabled", "created": "2022-02-23T19:23:14.251544Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "id": 2688, "revision": { "id": 3757, "recipe_id": 1199 } }, "arguments": { "branches": [ { "extensionApiId": 116, "ratio": 100, "slug": "observeration-branch" } ], "isEnrollmentPaused": false, "slug": "bug-1747088-addon-dnssec-interference-measurement-v3-release-97-98", "userFacingDescription": "We intend to measure rates of interference with DNSSEC record types by network middleboxes compared to other DNS record types.", "userFacingName": "DNSSEC Interference Measurement V3" }, "experimenter_slug": "dnssec-interference-measurement-v3", "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "jexl.transform.bucketSample", "action.branched-addon-study", "jexl.transform.preferenceValue" ], "comment": "changed start bucket", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2022-02-23T19:18:25.991983Z", "enabled_states": [ { "id": 2327, "created": "2022-03-02T22:53:11.347874Z", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 2320, "created": "2022-02-23T19:25:09.614534Z", "creator": { "id": 63, "first_name": "Ethan", "last_name": "Donowitz", "email": "edonowitz@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"97.!\")>=0)&&(env.version|versionCompare(\"98.*\")<0)) && (normandy.os.isWindows||normandy.os.isMac) && ('datareporting.healthreport.uploadEnabled'|preferenceValue == true) && ([\"global-v5\",normandy.userId]|bucketSample(2600,100,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 97, 98 ] }, { "platforms": [ "all_windows", "all_mac" ], "type": "platform" }, { "comment": "Exclude users with telemetry disabled", "comparison": "equal", "pref": "datareporting.healthreport.uploadEnabled", "type": "preferenceValue", "value": true }, { "count": 100, "namespace": "global-v5", "start": 2600, "type": "namespaceSample" } ], "id": 3757, "identicon_seed": "v1:rRQeUvIhokRM", "metadata": {}, "name": "DNSSEC Interference Measurement V3", "recipe": { "approved_revision_id": 3757, "id": 1199, "latest_revision_id": 3757 }, "updated": "2022-03-02T22:53:11.351782Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2020-02-05T17:38:48.425954Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1974, "revision": { "id": 2915, "recipe_id": 902 } }, "arguments": { "slug": "addon-search-tips-aka-nudges-release-72-74-bug-1603564", "userFacingDescription": "Search Tips are designed to increase engagement with the QuantumBar.", "userFacingName": "Search Tips", "isEnrollmentPaused": true, "branches": [ { "extensionApiId": 106, "ratio": 50, "slug": "control" }, { "extensionApiId": 106, "ratio": 50, "slug": "treatment" } ] }, "experimenter_slug": "search-tips-aka-nudges", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-02-05T17:37:35.271187Z", "enabled_states": [ { "id": 1486, "created": "2020-03-24T18:35:14.832561Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1427, "created": "2020-02-05T18:24:09.979369Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1412 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-ZA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"72.!\")>=0)&&(env.version|versionCompare(\"74.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(9360,200,10000))", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-ZA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 72, 73, 74 ], "type": "version" }, { "count": 200, "input": [ "\"global-v1\"", "normandy.userId" ], "start": 9360, "total": 10000, "type": "bucketSample" } ], "id": 2915, "identicon_seed": "v1:jb25xvporji", "metadata": {}, "name": "Search Tips aka Nudges", "recipe": { "approved_revision_id": 2915, "id": 902, "latest_revision_id": 2915 }, "updated": "2020-03-24T18:35:14.834009Z" }, "id": 902, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "comment": "r+", "created": "2020-02-05T17:38:48.425954Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 1974, "revision": { "id": 2915, "recipe_id": 902 } }, "arguments": { "slug": "addon-search-tips-aka-nudges-release-72-74-bug-1603564", "userFacingDescription": "Search Tips are designed to increase engagement with the QuantumBar.", "userFacingName": "Search Tips", "isEnrollmentPaused": true, "branches": [ { "extensionApiId": 106, "ratio": 50, "slug": "control" }, { "extensionApiId": 106, "ratio": 50, "slug": "treatment" } ] }, "experimenter_slug": "search-tips-aka-nudges", "capabilities": [ "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1", "jexl.transform.bucketSample", "action.branched-addon-study" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-02-05T17:37:35.271187Z", "enabled_states": [ { "id": 1486, "created": "2020-03-24T18:35:14.832561Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1427, "created": "2020-02-05T18:24:09.979369Z", "creator": { "id": 14, "first_name": "Rehan", "last_name": "Dalal", "email": "rdalal@mozilla.com" }, "enabled": true, "carryover_from": 1412 } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-ZA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"72.!\")>=0)&&(env.version|versionCompare(\"74.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(9360,200,10000))", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-ZA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 72, 73, 74 ], "type": "version" }, { "count": 200, "input": [ "\"global-v1\"", "normandy.userId" ], "start": 9360, "total": 10000, "type": "bucketSample" } ], "id": 2915, "identicon_seed": "v1:jb25xvporji", "metadata": {}, "name": "Search Tips aka Nudges", "recipe": { "approved_revision_id": 2915, "id": 902, "latest_revision_id": 2915 }, "updated": "2020-03-24T18:35:14.834009Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+ for testing", "created": "2019-11-18T08:49:15.122917Z", "creator": { "id": 52, "first_name": "Ciprian", "last_name": "Muresan", "email": "cmuresan@mozilla.com" }, "id": 1897, "revision": { "id": 2823, "recipe_id": 878 } }, "arguments": { "branches": [ { "extensionApiId": 94, "ratio": 1, "slug": "treatment" }, { "extensionApiId": 94, "ratio": 1, "slug": "control" } ], "isEnrollmentPaused": true, "slug": "branched-addon-stub-attribution-test-pi-283", "userFacingDescription": "We believe we can deliver an enhanced product experience by exposing these Topsites in a new context, allowing users to navigate even more quickly and easily than they can today.", "userFacingName": "TopSites for Search" }, "experimenter_slug": null, "capabilities": [ "action.branched-addon-study", "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version" ], "comment": "", "creator": { "id": 52, "first_name": "Ciprian", "last_name": "Muresan", "email": "cmuresan@mozilla.com" }, "date_created": "2019-11-18T08:49:10.080865Z", "enabled_states": [ { "id": 1335, "created": "2019-11-19T12:29:25.045193Z", "creator": { "id": 52, "first_name": "Ciprian", "last_name": "Muresan", "email": "cmuresan@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1333, "created": "2019-11-19T10:19:49.222619Z", "creator": { "id": 52, "first_name": "Ciprian", "last_name": "Muresan", "email": "cmuresan@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.attribution.medium == \"rhelmer\"\n&& normandy.attribution.campaign == \"stubtest\"\n&& \n(\n!\"trailhead.firstrun.didSeeAboutWelcome\"|preferenceIsUserSet\n|| normandy.experiments.active[\"branched-addon-stub-attribution-test-pi-283\"]\n)", "filter_expression": "(normandy.channel in [\"beta\",\"nightly\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"72.*\")<0)) && (normandy.attribution.medium == \"rhelmer\"\n&& normandy.attribution.campaign == \"stubtest\"\n&& \n(\n!\"trailhead.firstrun.didSeeAboutWelcome\"|preferenceIsUserSet\n|| normandy.experiments.active[\"branched-addon-stub-attribution-test-pi-283\"]\n))", "filter_object": [ { "channels": [ "beta", "nightly" ], "type": "channel" }, { "versions": [ 70, 71, 72 ], "type": "version" } ], "id": 2823, "identicon_seed": "v1:pvhybx2lspc", "metadata": {}, "name": "[cmuresan][pi-283]branched-addon-stub-attribution-test-paused-enrollment", "recipe": { "approved_revision_id": 2823, "id": 878, "latest_revision_id": 2823 }, "updated": "2019-11-19T12:29:25.046522Z" }, "id": 878, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an add-on experiment, with managed branches", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Machine-readable identifier", "type": "string", "minLength": 1 }, "userFacingName": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false }, "branches": { "description": "List of experimental branches", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "slug", "ratio", "extensionApiId" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment.", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "ratio": { "description": "Ratio of users who should be grouped into this branch.", "type": "integer", "minimum": 1 }, "extensionApiId": { "description": "The record ID of the add-on uploaded to the Normandy server. May be null, in which case no add-on will be installed.", "type": [ "number", "null" ], "default": null } } } } } }, "name": "branched-addon-study", "id": 8, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "comment": "r+ for testing", "created": "2019-11-18T08:49:15.122917Z", "creator": { "id": 52, "first_name": "Ciprian", "last_name": "Muresan", "email": "cmuresan@mozilla.com" }, "id": 1897, "revision": { "id": 2823, "recipe_id": 878 } }, "arguments": { "branches": [ { "extensionApiId": 94, "ratio": 1, "slug": "treatment" }, { "extensionApiId": 94, "ratio": 1, "slug": "control" } ], "isEnrollmentPaused": true, "slug": "branched-addon-stub-attribution-test-pi-283", "userFacingDescription": "We believe we can deliver an enhanced product experience by exposing these Topsites in a new context, allowing users to navigate even more quickly and easily than they can today.", "userFacingName": "TopSites for Search" }, "experimenter_slug": null, "capabilities": [ "action.branched-addon-study", "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version" ], "comment": "", "creator": { "id": 52, "first_name": "Ciprian", "last_name": "Muresan", "email": "cmuresan@mozilla.com" }, "date_created": "2019-11-18T08:49:10.080865Z", "enabled_states": [ { "id": 1335, "created": "2019-11-19T12:29:25.045193Z", "creator": { "id": 52, "first_name": "Ciprian", "last_name": "Muresan", "email": "cmuresan@mozilla.com" }, "enabled": false, "carryover_from": null }, { "id": 1333, "created": "2019-11-19T10:19:49.222619Z", "creator": { "id": 52, "first_name": "Ciprian", "last_name": "Muresan", "email": "cmuresan@mozilla.com" }, "enabled": true, "carryover_from": null } ], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.attribution.medium == \"rhelmer\"\n&& normandy.attribution.campaign == \"stubtest\"\n&& \n(\n!\"trailhead.firstrun.didSeeAboutWelcome\"|preferenceIsUserSet\n|| normandy.experiments.active[\"branched-addon-stub-attribution-test-pi-283\"]\n)", "filter_expression": "(normandy.channel in [\"beta\",\"nightly\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"72.*\")<0)) && (normandy.attribution.medium == \"rhelmer\"\n&& normandy.attribution.campaign == \"stubtest\"\n&& \n(\n!\"trailhead.firstrun.didSeeAboutWelcome\"|preferenceIsUserSet\n|| normandy.experiments.active[\"branched-addon-stub-attribution-test-pi-283\"]\n))", "filter_object": [ { "channels": [ "beta", "nightly" ], "type": "channel" }, { "versions": [ 70, 71, 72 ], "type": "version" } ], "id": 2823, "identicon_seed": "v1:pvhybx2lspc", "metadata": {}, "name": "[cmuresan][pi-283]branched-addon-stub-attribution-test-paused-enrollment", "recipe": { "approved_revision_id": 2823, "id": 878, "latest_revision_id": 2823 }, "updated": "2019-11-19T12:29:25.046522Z" }, "signature": null, "uses_only_baseline_capabilities": false } ] }{ "count": 1303, "next": "