Recipe List
Viewset for viewing and uploading recipes.
GET /api/v3/recipe/?format=api
https://normandy.cdn.mozilla.net/api/v3/recipe/?format=api&page=2", "previous": null, "results": [ { "approved_revision": null, "id": 1265, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Undo a preference rollout", "type": "object", "required": [ "rolloutSlug" ], "properties": { "rolloutSlug": { "description": "Unique identifer for the rollout to undo", "type": "string", "pattern": "^[a-z0-9\\-_]+$" } } }, "name": "preference-rollback", "id": 6, "implementation_url": null }, "approval_request": null, "arguments": { "rolloutSlug": "bug-1821419-rollout-tweetdeck-web-compatibility-2-release-110-110" }, "experimenter_slug": "bug-1821419-rollout-tweetdeck-web-compatibility-2-release-110-110", "capabilities": [ "jexl.transform.bucketSample", "action.preference-rollback" ], "comment": "rollback 1262", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2023-03-15T20:06:34.006478Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "[\"tweetdeck-web-compat\",normandy.userId]|bucketSample(0,10000,10000)", "filter_object": [ { "type": "namespaceSample", "start": 0, "count": 10000, "namespace": "tweetdeck-web-compat" } ], "id": 3933, "identicon_seed": "v1:jjSbWhBqqzkm", "metadata": {}, "name": "Rollback Tweetdeck web compatibility 2 (1262)", "recipe": { "approved_revision_id": null, "id": 1265, "latest_revision_id": 3933 }, "updated": "2023-03-15T20:06:34.166489Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 1264, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Undo a preference rollout", "type": "object", "required": [ "rolloutSlug" ], "properties": { "rolloutSlug": { "description": "Unique identifer for the rollout to undo", "type": "string", "pattern": "^[a-z0-9\\-_]+$" } } }, "name": "preference-rollback", "id": 6, "implementation_url": null }, "approval_request": null, "arguments": { "rolloutSlug": "bug-1821419-rollout-tweetdeck-web-compatibility-2-release-110-110" }, "experimenter_slug": "bug-1821419-rollout-tweetdeck-web-compatibility-2-release-110-110", "capabilities": [ "jexl.transform.bucketSample", "action.preference-rollback" ], "comment": "rollback 1262", "creator": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "date_created": "2023-03-15T20:06:33.792851Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "[\"tweetdeck-web-compat\",normandy.userId]|bucketSample(0,10000,10000)", "filter_object": [ { "type": "namespaceSample", "start": 0, "count": 10000, "namespace": "tweetdeck-web-compat" } ], "id": 3932, "identicon_seed": "v1:EaLpJpLNHZCQ", "metadata": {}, "name": "Rollback Tweetdeck web compatibility 2 (1262)", "recipe": { "approved_revision_id": null, "id": 1264, "latest_revision_id": 3932 }, "updated": "2023-03-15T20:06:33.939298Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 1202, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": null, "arguments": { "engagementButtonLabel": "test", "includeTelemetryUUID": false, "learnMoreMessage": "test", "learnMoreUrl": "test", "message": "test", "postAnswerUrl": "test", "repeatOption": "once", "surveyId": "test", "thanksMessage": "test" }, "experimenter_slug": "", "capabilities": [ "jexl.transform.bucketSample", "action.show-heartbeat", "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1" ], "comment": "testing, added 94 under version", "creator": { "id": 67, "first_name": "El", "last_name": "Shallal", "email": "eshallal@mozilla.com" }, "date_created": "2022-02-24T21:07:17.392567Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "([\"global-v5\",normandy.userId]|bucketSample(0,100,10000)) && (normandy.channel in [\"release\"]) && (normandy.locale in [\"en-CA\"]) && ((env.version|versionCompare(\"94.!\")>=0)&&(env.version|versionCompare(\"94.*\")<0))", "filter_object": [ { "count": 100, "namespace": "global-v5", "start": 0, "type": "namespaceSample" }, { "channels": [ "release" ], "type": "channel" }, { "locales": [ "en-CA" ], "type": "locale" }, { "type": "version", "versions": [ 94 ] } ], "id": 3796, "identicon_seed": "v1:NPrEUnzawstj", "metadata": {}, "name": "test-jon", "recipe": { "approved_revision_id": null, "id": 1202, "latest_revision_id": 3796 }, "updated": "2022-03-18T22:13:01.800649Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 1046, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a preference.", "type": "object", "required": [ "slug", "preferenceName", "preferenceType", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "preferenceName": { "description": "Full dotted-path of the preference that controls this experiment", "type": "string" }, "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "value", "ratio" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "value": { "description": "Value to set the preference to for this branch", "type": [ "string", "number", "boolean" ] }, "ratio": { "description": "Ratio of users who should be grouped into this branch", "type": "integer", "minimum": 1 } } } } } }, "name": "preference-experiment", "id": 3, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/preference-experiment/implementation/sha384-o1w_DJcXVnm6ppFcrPr78-Q32ZVXgi6lfYm9wUS3JBj5466SxrFpXaFt_KgJC87O/" }, "approval_request": null, "arguments": { "branches": [ { "ratio": 1, "slug": "first-run-and-live-pcd", "value": "first-run-and-live-pcd" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/testing-ability-to-get-the-right-experiments-to-only-new-users/", "isEnrollmentPaused": false, "isHighPopulation": false, "preferenceBranchType": "default", "preferenceName": "testing.normandy.new-user-targeting", "preferenceType": "string", "slug": "bug-1659580-new-user-method-testing-first-run-and-live-pcd-79-79" }, "experimenter_slug": "testing-ability-to-get-the-right-experiments-to-only-new-users", "capabilities": [ "action.preference-experiment", "jexl.transform.bucketSample", "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1" ], "comment": "set up first run + live pcd", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-08-18T20:01:21.063686Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(normandy.isFirstRun || normandy.studies.pref[normandy.recipe.arguments.slug].expired == false)\n&& !(normandy.liveTelemetry.main.environment.profile.creationDate < 18492)", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"79.!\")>=0)&&(env.version|versionCompare(\"79.*\")<0)) && ([normandy.userId,\"first-run-testing\"]|bucketSample(8000,2000,10000)) && ((normandy.isFirstRun || normandy.studies.pref[normandy.recipe.arguments.slug].expired == false)\n&& !(normandy.liveTelemetry.main.environment.profile.creationDate < 18492))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 79 ] }, { "count": 2000, "input": [ "normandy.userId", "\"first-run-testing\"" ], "start": 8000, "total": 10000, "type": "bucketSample" } ], "id": 3288, "identicon_seed": "v1:RpimcZBEsWAc", "metadata": {}, "name": "Testing ability to get the right experiments to only new users - First Run + Live Telemetry", "recipe": { "approved_revision_id": null, "id": 1046, "latest_revision_id": 3288 }, "updated": "2020-08-18T20:01:21.358075Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 1044, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a preference.", "type": "object", "required": [ "slug", "preferenceName", "preferenceType", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "preferenceName": { "description": "Full dotted-path of the preference that controls this experiment", "type": "string" }, "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "value", "ratio" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "value": { "description": "Value to set the preference to for this branch", "type": [ "string", "number", "boolean" ] }, "ratio": { "description": "Ratio of users who should be grouped into this branch", "type": "integer", "minimum": 1 } } } } } }, "name": "preference-experiment", "id": 3, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/preference-experiment/implementation/sha384-o1w_DJcXVnm6ppFcrPr78-Q32ZVXgi6lfYm9wUS3JBj5466SxrFpXaFt_KgJC87O/" }, "approval_request": null, "arguments": { "branches": [ { "ratio": 1, "slug": "live-pcd", "value": "live-pcd" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/testing-ability-to-get-the-right-experiments-to-only-new-users/", "isEnrollmentPaused": false, "isHighPopulation": false, "preferenceBranchType": "default", "preferenceName": "testing.normandy.new-user-targeting", "preferenceType": "string", "slug": "bug-1659580-new-user-method-testing-live-pcd-79-79" }, "experimenter_slug": "testing-ability-to-get-the-right-experiments-to-only-new-users", "capabilities": [ "action.preference-experiment", "jexl.transform.bucketSample", "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1" ], "comment": "Change to version 79", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-08-18T19:58:01.282213Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.liveTelemetry.main.environment.profile.creationDate >= 18492", "filter_expression": "(normandy.channel in [\"release\"]) && ([normandy.userId,\"first-run-testing\"]|bucketSample(2000,2000,10000)) && ((env.version|versionCompare(\"79.!\")>=0)&&(env.version|versionCompare(\"79.*\")<0)) && (normandy.liveTelemetry.main.environment.profile.creationDate >= 18492)", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "count": 2000, "input": [ "normandy.userId", "\"first-run-testing\"" ], "start": 2000, "total": 10000, "type": "bucketSample" }, { "type": "version", "versions": [ 79 ] } ], "id": 3286, "identicon_seed": "v1:RpimcZBEsWAc", "metadata": {}, "name": "Testing ability to get the right experiments to only new users - Live PCD", "recipe": { "approved_revision_id": null, "id": 1044, "latest_revision_id": 3286 }, "updated": "2020-08-18T19:58:01.619014Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 1042, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": { "approved": false, "approver": { "id": 42, "first_name": "Rosanne", "last_name": "Scholl", "email": "rscholl@mozilla.com" }, "comment": "batch rejecting obsolete recipes", "created": "2020-08-13T19:17:06.829068Z", "creator": { "id": 11, "first_name": "Kamyar", "last_name": "Ardekani", "email": "kardekani@mozilla.com" }, "id": 2258, "revision": { "id": 3278, "recipe_id": 1042 } }, "arguments": { "repeatOption": "once", "surveyId": "hb-social-viral-loop-survey-rev2", "message": "Please help make Firefox better by taking this short survey", "learnMoreMessage": "Learn More", "learnMoreUrl": "https://support.mozilla.org/kb/rate-your-firefox-experience-heartbeat", "engagementButtonLabel": "Take Survey", "thanksMessage": "Thanks", "postAnswerUrl": "https://qsurvey.mozilla.com/s3/Social-Loop-rev2", "includeTelemetryUUID": true }, "experimenter_slug": null, "capabilities": [ "jexl.transform.stableSample", "action.show-heartbeat" ], "comment": "", "creator": { "id": 11, "first_name": "Kamyar", "last_name": "Ardekani", "email": "kardekani@mozilla.com" }, "date_created": "2020-08-13T19:16:28.080582Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(\n!normandy.isFirstrun &&\n((normandy.request_time / 1000 / 60 / 60 / 24) - normandy.telemetry.main.environment.profile.creationDate <= 7)\n)", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-ZA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ([normandy.recipe.id,normandy.userId]|stableSample(0.05)) && ((\n!normandy.isFirstrun &&\n((normandy.request_time / 1000 / 60 / 60 / 24) - normandy.telemetry.main.environment.profile.creationDate <= 7)\n))", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-ZA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "input": [ "normandy.recipe.id", "normandy.userId" ], "rate": 0.05, "type": "stableSample" } ], "id": 3278, "identicon_seed": "v1:70sitguwyh", "metadata": {}, "name": "HB: Social Viral Loop Survey - rev2", "recipe": { "approved_revision_id": null, "id": 1042, "latest_revision_id": 3278 }, "updated": "2020-08-13T19:16:28.928673Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 1026, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": null, "arguments": { "branches": [ { "preferences": { "browser.newtabpage.activity-stream.discoverystream.personalization.version": { "preferenceBranchType": "default", "preferenceType": "integer", "preferenceValue": 2 } }, "ratio": 50, "slug": "variant" }, { "preferences": { "browser.newtabpage.activity-stream.discoverystream.personalization.version": { "preferenceBranchType": "default", "preferenceType": "integer", "preferenceValue": 1 } }, "ratio": 50, "slug": "control" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/activity-stream-pocket-new-tab-spoc-personalization-v2-rollout/", "isEnrollmentPaused": false, "slug": "bug-1649637-rollout-activity-stream-pocket-new-tab-spoc-personaliz-release-78-80-error", "userFacingDescription": "Topic-based Sponsored Content tagging.", "userFacingName": "activity-stream-pocket-new-tab-spoc-personalization-v2-rollout" }, "experimenter_slug": "", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mark as error", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-07-28T18:55:29.319076Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"78.!\")>=0)&&(env.version|versionCompare(\"80.*\")<0)) && (normandy.locale in [\"en-US\"]) && (normandy.country in [\"US\"]) && ([normandy.userId,\"as-pnt-spoc-v2\"]|bucketSample(0,5000,10000))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "type": "version", "versions": [ 78, 79, 80 ] }, { "locales": [ "en-US" ], "type": "locale" }, { "countries": [ "US" ], "type": "country" }, { "count": 5000, "input": [ "normandy.userId", "\"as-pnt-spoc-v2\"" ], "start": 0, "total": 10000, "type": "bucketSample" } ], "id": 3252, "identicon_seed": "v1:xzVBglzvGVVp", "metadata": {}, "name": "activity-stream-pocket-new-tab-spoc-personalization-v2-rollout (error)", "recipe": { "approved_revision_id": null, "id": 1026, "latest_revision_id": 3252 }, "updated": "2020-07-28T18:55:29.319855Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.241687Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2142, "revision": { "id": 3144, "recipe_id": 865 } }, "arguments": { "branches": [ { "preferences": { "dom.missing_prop_counters.enabled": { "preferenceBranchType": "default", "preferenceType": "boolean", "preferenceValue": true } }, "ratio": 50, "slug": "enabled" }, { "preferences": { "dom.missing_prop_counters.enabled": { "preferenceBranchType": "default", "preferenceType": "boolean", "preferenceValue": false } }, "ratio": 50, "slug": "disabled" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/unimplemented-htmldocument-api-use-counters-in-beta/", "slug": "pref-unimplemented-htmldocument-api-use-counters-in-beta-beta-71-bug-1591985", "userFacingDescription": "In order to learn how often websites use web platform features that Firefox doesn't support, this study counts how often sites try to use some of these features.", "userFacingName": "Measure how often webpages use features Firefox doesn't support", "isEnrollmentPaused": false }, "experimenter_slug": "unimplemented-htmldocument-api-use-counters-in-beta", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:45.693192Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"beta\"]) && ((env.version|versionCompare(\"71.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"global-v1-beta\",normandy.userId]|bucketSample(2000,200,10000))", "filter_object": [ { "channels": [ "beta" ], "type": "channel" }, { "versions": [ 71 ], "type": "version" }, { "count": 200, "input": [ "\"global-v1-beta\"", "normandy.userId" ], "start": 2000, "total": 10000, "type": "bucketSample" } ], "id": 3144, "identicon_seed": "v1:ry64yufvw8r", "metadata": {}, "name": "Unimplemented HTMLDocument API use counters in beta", "recipe": { "approved_revision_id": 3144, "id": 865, "latest_revision_id": 3144 }, "updated": "2020-06-10T17:04:45.693492Z" }, "id": 865, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.241687Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2142, "revision": { "id": 3144, "recipe_id": 865 } }, "arguments": { "branches": [ { "preferences": { "dom.missing_prop_counters.enabled": { "preferenceBranchType": "default", "preferenceType": "boolean", "preferenceValue": true } }, "ratio": 50, "slug": "enabled" }, { "preferences": { "dom.missing_prop_counters.enabled": { "preferenceBranchType": "default", "preferenceType": "boolean", "preferenceValue": false } }, "ratio": 50, "slug": "disabled" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/unimplemented-htmldocument-api-use-counters-in-beta/", "slug": "pref-unimplemented-htmldocument-api-use-counters-in-beta-beta-71-bug-1591985", "userFacingDescription": "In order to learn how often websites use web platform features that Firefox doesn't support, this study counts how often sites try to use some of these features.", "userFacingName": "Measure how often webpages use features Firefox doesn't support", "isEnrollmentPaused": false }, "experimenter_slug": "unimplemented-htmldocument-api-use-counters-in-beta", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:45.693192Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"beta\"]) && ((env.version|versionCompare(\"71.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"global-v1-beta\",normandy.userId]|bucketSample(2000,200,10000))", "filter_object": [ { "channels": [ "beta" ], "type": "channel" }, { "versions": [ 71 ], "type": "version" }, { "count": 200, "input": [ "\"global-v1-beta\"", "normandy.userId" ], "start": 2000, "total": 10000, "type": "bucketSample" } ], "id": 3144, "identicon_seed": "v1:ry64yufvw8r", "metadata": {}, "name": "Unimplemented HTMLDocument API use counters in beta", "recipe": { "approved_revision_id": 3144, "id": 865, "latest_revision_id": 3144 }, "updated": "2020-06-10T17:04:45.693492Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.337955Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2143, "revision": { "id": 3143, "recipe_id": 855 } }, "arguments": { "branches": [ { "preferences": { "browser.messaging-system.whatsNewPanel.enabled": { "preferenceBranchType": "default", "preferenceType": "boolean", "preferenceValue": true } }, "ratio": 1, "slug": "whatsnew" }, { "preferences": { "browser.messaging-system.whatsNewPanel.enabled": { "preferenceBranchType": "default", "preferenceType": "boolean", "preferenceValue": false } }, "ratio": 1, "slug": "holdback" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/hold-back-experiment-for-whats-new-panel/", "slug": "pref-hold-back-experiment-for-whats-new-panel-release-70-71-bug-1590517", "userFacingDescription": "The What's New Panel is a new icon on the Firefox toolbar that informs users about new features after a new release. The icon will 'recede' into the hamburger menu after a number of days after the release. This hold-back study will allow us to measure the effect of this new format.", "userFacingName": "What's New Panel: Hold-back Study", "isEnrollmentPaused": false }, "experimenter_slug": "hold-back-experiment-for-whats-new-panel", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:45.528493Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(normandy.version >= \"69\" && normandy.version < \"70\") || normandy.experiments.active[\"pref-hold-back-experiment-for-whats-new-panel-release-70-71-bug-1590517\"]", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"69.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(4025,1000,10000)) && ((normandy.version >= \"69\" && normandy.version < \"70\") || normandy.experiments.active[\"pref-hold-back-experiment-for-whats-new-panel-release-70-71-bug-1590517\"])", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 69, 70, 71 ], "type": "version" }, { "count": 1000, "input": [ "\"global-v1\"", "normandy.userId" ], "start": 4025, "total": 10000, "type": "bucketSample" } ], "id": 3143, "identicon_seed": "v1:6k3dtx9b3hr", "metadata": {}, "name": "hold-back experiment for What's New Panel", "recipe": { "approved_revision_id": 3143, "id": 855, "latest_revision_id": 3143 }, "updated": "2020-06-10T17:04:45.528817Z" }, "id": 855, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.337955Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2143, "revision": { "id": 3143, "recipe_id": 855 } }, "arguments": { "branches": [ { "preferences": { "browser.messaging-system.whatsNewPanel.enabled": { "preferenceBranchType": "default", "preferenceType": "boolean", "preferenceValue": true } }, "ratio": 1, "slug": "whatsnew" }, { "preferences": { "browser.messaging-system.whatsNewPanel.enabled": { "preferenceBranchType": "default", "preferenceType": "boolean", "preferenceValue": false } }, "ratio": 1, "slug": "holdback" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/hold-back-experiment-for-whats-new-panel/", "slug": "pref-hold-back-experiment-for-whats-new-panel-release-70-71-bug-1590517", "userFacingDescription": "The What's New Panel is a new icon on the Firefox toolbar that informs users about new features after a new release. The icon will 'recede' into the hamburger menu after a number of days after the release. This hold-back study will allow us to measure the effect of this new format.", "userFacingName": "What's New Panel: Hold-back Study", "isEnrollmentPaused": false }, "experimenter_slug": "hold-back-experiment-for-whats-new-panel", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:45.528493Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(normandy.version >= \"69\" && normandy.version < \"70\") || normandy.experiments.active[\"pref-hold-back-experiment-for-whats-new-panel-release-70-71-bug-1590517\"]", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"69.!\")>=0)&&(env.version|versionCompare(\"71.*\")<0)) && ([\"global-v1\",normandy.userId]|bucketSample(4025,1000,10000)) && ((normandy.version >= \"69\" && normandy.version < \"70\") || normandy.experiments.active[\"pref-hold-back-experiment-for-whats-new-panel-release-70-71-bug-1590517\"])", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 69, 70, 71 ], "type": "version" }, { "count": 1000, "input": [ "\"global-v1\"", "normandy.userId" ], "start": 4025, "total": 10000, "type": "bucketSample" } ], "id": 3143, "identicon_seed": "v1:6k3dtx9b3hr", "metadata": {}, "name": "hold-back experiment for What's New Panel", "recipe": { "approved_revision_id": 3143, "id": 855, "latest_revision_id": 3143 }, "updated": "2020-06-10T17:04:45.528817Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.426659Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2144, "revision": { "id": 3142, "recipe_id": 859 } }, "arguments": { "branches": [ { "preferences": { "gfx.webrender.all.qualified": { "preferenceBranchType": "user", "preferenceType": "boolean", "preferenceValue": true } }, "ratio": 50, "slug": "enabled" }, { "preferences": { "gfx.webrender.all.qualified": { "preferenceBranchType": "user", "preferenceType": "boolean", "preferenceValue": false } }, "ratio": 50, "slug": "disabled" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/webrender-intel-performance-70/", "slug": "pref-webrender-intel-performance-70-release-70-bug-1580917", "userFacingDescription": "This is to study the performance of WebRender in Firefox 70.", "userFacingName": "WebRender Study", "isEnrollmentPaused": false }, "experimenter_slug": "webrender-intel-performance-70", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:45.364584Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.os.isWindows && \nnormandy.os.windowsVersion >= 10.0 && \nnormandy.telemetry.main.environment.system.gfx.features.wrQualified.status == \"available\" &&\nnormandy.telemetry.main.environment.system.gfx.adapters[0].vendorID == \"0x8086\" &&\n!normandy.telemetry.main.environment.system.gfx.monitors[1]", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"70.*\")<0)) && ([\"webrender-70\",normandy.userId]|bucketSample(950,50,1000)) && (normandy.os.isWindows && \nnormandy.os.windowsVersion >= 10.0 && \nnormandy.telemetry.main.environment.system.gfx.features.wrQualified.status == \"available\" &&\nnormandy.telemetry.main.environment.system.gfx.adapters[0].vendorID == \"0x8086\" &&\n!normandy.telemetry.main.environment.system.gfx.monitors[1])", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70 ], "type": "version" }, { "count": 50, "input": [ "\"webrender-70\"", "normandy.userId" ], "start": 950, "total": 1000, "type": "bucketSample" } ], "id": 3142, "identicon_seed": "v1:8bwyktd1vjv", "metadata": {}, "name": "WebRender Intel Performance 70", "recipe": { "approved_revision_id": 3142, "id": 859, "latest_revision_id": 3142 }, "updated": "2020-06-10T17:04:45.364880Z" }, "id": 859, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.426659Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2144, "revision": { "id": 3142, "recipe_id": 859 } }, "arguments": { "branches": [ { "preferences": { "gfx.webrender.all.qualified": { "preferenceBranchType": "user", "preferenceType": "boolean", "preferenceValue": true } }, "ratio": 50, "slug": "enabled" }, { "preferences": { "gfx.webrender.all.qualified": { "preferenceBranchType": "user", "preferenceType": "boolean", "preferenceValue": false } }, "ratio": 50, "slug": "disabled" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/webrender-intel-performance-70/", "slug": "pref-webrender-intel-performance-70-release-70-bug-1580917", "userFacingDescription": "This is to study the performance of WebRender in Firefox 70.", "userFacingName": "WebRender Study", "isEnrollmentPaused": false }, "experimenter_slug": "webrender-intel-performance-70", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:45.364584Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.os.isWindows && \nnormandy.os.windowsVersion >= 10.0 && \nnormandy.telemetry.main.environment.system.gfx.features.wrQualified.status == \"available\" &&\nnormandy.telemetry.main.environment.system.gfx.adapters[0].vendorID == \"0x8086\" &&\n!normandy.telemetry.main.environment.system.gfx.monitors[1]", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"70.*\")<0)) && ([\"webrender-70\",normandy.userId]|bucketSample(950,50,1000)) && (normandy.os.isWindows && \nnormandy.os.windowsVersion >= 10.0 && \nnormandy.telemetry.main.environment.system.gfx.features.wrQualified.status == \"available\" &&\nnormandy.telemetry.main.environment.system.gfx.adapters[0].vendorID == \"0x8086\" &&\n!normandy.telemetry.main.environment.system.gfx.monitors[1])", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70 ], "type": "version" }, { "count": 50, "input": [ "\"webrender-70\"", "normandy.userId" ], "start": 950, "total": 1000, "type": "bucketSample" } ], "id": 3142, "identicon_seed": "v1:8bwyktd1vjv", "metadata": {}, "name": "WebRender Intel Performance 70", "recipe": { "approved_revision_id": 3142, "id": 859, "latest_revision_id": 3142 }, "updated": "2020-06-10T17:04:45.364880Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.514722Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2145, "revision": { "id": 3141, "recipe_id": 884 } }, "arguments": { "branches": [ { "preferences": { "browser.newtabpage.activity-stream.asrouter.providers.snippets": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "{\"id\":\"snippets\",\"enabled\":true,\"type\":\"remote\",\"url\":\"https://snippets.cdn.mozilla.net/%STARTPAGE_VERSION%/%NAME%/%VERSION%/%APPBUILDID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/experiment-interval-treatment/%DISTRIBUTION_VERSION%/\",\"updateCycleInMs\":3600000}" } }, "ratio": 1, "slug": "treatment" }, { "preferences": { "browser.newtabpage.activity-stream.asrouter.providers.snippets": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "{\"id\":\"snippets\",\"enabled\":true,\"type\":\"remote\",\"url\":\"https://snippets.cdn.mozilla.net/%STARTPAGE_VERSION%/%NAME%/%VERSION%/%APPBUILDID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/experiment-interval-control/%DISTRIBUTION_VERSION%/\",\"updateCycleInMs\":14400000}" } }, "ratio": 1, "slug": "control" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/reduce-snippets-update-interval-down-to-1-hour-from-4/", "slug": "pref-reduce-snippets-update-interval-down-to-1-hour-from-beta-71-72-bug-1595007", "userFacingDescription": "Test infrastructure impact of reducing snippet update interval from 4 hours down to 1 hour.", "userFacingName": "Reduced Snippet Update Interval", "isEnrollmentPaused": false }, "experimenter_slug": "reduce-snippets-update-interval-down-to-1-hour-from-4", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:45.165648Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.locale in [\"en-US\"]) && (normandy.channel in [\"beta\"]) && ((env.version|versionCompare(\"71.!\")>=0)&&(env.version|versionCompare(\"72.*\")<0)) && ([\"global-v1-beta\",normandy.userId]|bucketSample(2200,5000,10000))", "filter_object": [ { "locales": [ "en-US" ], "type": "locale" }, { "channels": [ "beta" ], "type": "channel" }, { "versions": [ 71, 72 ], "type": "version" }, { "count": 5000, "input": [ "\"global-v1-beta\"", "normandy.userId" ], "start": 2200, "total": 10000, "type": "bucketSample" } ], "id": 3141, "identicon_seed": "v1:jyyve0eijme", "metadata": {}, "name": "Reduce Snippets Update Interval down to 1 hour (from 4)", "recipe": { "approved_revision_id": 3141, "id": 884, "latest_revision_id": 3141 }, "updated": "2020-06-10T17:04:45.165983Z" }, "id": 884, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.514722Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2145, "revision": { "id": 3141, "recipe_id": 884 } }, "arguments": { "branches": [ { "preferences": { "browser.newtabpage.activity-stream.asrouter.providers.snippets": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "{\"id\":\"snippets\",\"enabled\":true,\"type\":\"remote\",\"url\":\"https://snippets.cdn.mozilla.net/%STARTPAGE_VERSION%/%NAME%/%VERSION%/%APPBUILDID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/experiment-interval-treatment/%DISTRIBUTION_VERSION%/\",\"updateCycleInMs\":3600000}" } }, "ratio": 1, "slug": "treatment" }, { "preferences": { "browser.newtabpage.activity-stream.asrouter.providers.snippets": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "{\"id\":\"snippets\",\"enabled\":true,\"type\":\"remote\",\"url\":\"https://snippets.cdn.mozilla.net/%STARTPAGE_VERSION%/%NAME%/%VERSION%/%APPBUILDID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/experiment-interval-control/%DISTRIBUTION_VERSION%/\",\"updateCycleInMs\":14400000}" } }, "ratio": 1, "slug": "control" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/reduce-snippets-update-interval-down-to-1-hour-from-4/", "slug": "pref-reduce-snippets-update-interval-down-to-1-hour-from-beta-71-72-bug-1595007", "userFacingDescription": "Test infrastructure impact of reducing snippet update interval from 4 hours down to 1 hour.", "userFacingName": "Reduced Snippet Update Interval", "isEnrollmentPaused": false }, "experimenter_slug": "reduce-snippets-update-interval-down-to-1-hour-from-4", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:45.165648Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.locale in [\"en-US\"]) && (normandy.channel in [\"beta\"]) && ((env.version|versionCompare(\"71.!\")>=0)&&(env.version|versionCompare(\"72.*\")<0)) && ([\"global-v1-beta\",normandy.userId]|bucketSample(2200,5000,10000))", "filter_object": [ { "locales": [ "en-US" ], "type": "locale" }, { "channels": [ "beta" ], "type": "channel" }, { "versions": [ 71, 72 ], "type": "version" }, { "count": 5000, "input": [ "\"global-v1-beta\"", "normandy.userId" ], "start": 2200, "total": 10000, "type": "bucketSample" } ], "id": 3141, "identicon_seed": "v1:jyyve0eijme", "metadata": {}, "name": "Reduce Snippets Update Interval down to 1 hour (from 4)", "recipe": { "approved_revision_id": 3141, "id": 884, "latest_revision_id": 3141 }, "updated": "2020-06-10T17:04:45.165983Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.606319Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2146, "revision": { "id": 3140, "recipe_id": 843 } }, "arguments": { "branches": [ { "preferences": { "startup.homepage_welcome_url": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "about:welcome" }, "trailhead.firstrun.branches": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "sync-supercharge" } }, "ratio": 1, "slug": "sync-supercharge" }, { "preferences": { "startup.homepage_welcome_url": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "about:welcome" }, "trailhead.firstrun.branches": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "join-privacy" } }, "ratio": 1, "slug": "join-privacy" } ], "slug": "multi-preference-experiment-stub-attribution-test-1571777", "userFacingDescription": "Test for attribution code and about:welcome bug 1571777", "userFacingName": "Stub attribution test for about:welcome, see bug 1571777", "isEnrollmentPaused": false }, "experimenter_slug": null, "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "action.multi-preference-experiment" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:44.957729Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.attribution.medium == \"rhelmer\"\n&& normandy.attribution.campaign == \"stubtest\"\n&& (\n !\"trailhead.firstrun.didSeeAboutWelcome\"|preferenceIsUserSet\n || \"multi-preference-experiment-stub-attribution-test-1571777\" in normandy.experiments.active\n)", "filter_expression": "(normandy.channel in [\"beta\",\"nightly\"]) && ((env.version|versionCompare(\"71.!\")>=0)&&(env.version|versionCompare(\"72.*\")<0)) && (normandy.attribution.medium == \"rhelmer\"\n&& normandy.attribution.campaign == \"stubtest\"\n&& (\n !\"trailhead.firstrun.didSeeAboutWelcome\"|preferenceIsUserSet\n || \"multi-preference-experiment-stub-attribution-test-1571777\" in normandy.experiments.active\n))", "filter_object": [ { "channels": [ "beta", "nightly" ], "type": "channel" }, { "versions": [ 71, 72 ], "type": "version" } ], "id": 3140, "identicon_seed": "v1:6w8spleoh7l", "metadata": {}, "name": "multi-preference-experiment-stub-attribution-test-1571777", "recipe": { "approved_revision_id": 3140, "id": 843, "latest_revision_id": 3140 }, "updated": "2020-06-10T17:04:44.962256Z" }, "id": 843, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.606319Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2146, "revision": { "id": 3140, "recipe_id": 843 } }, "arguments": { "branches": [ { "preferences": { "startup.homepage_welcome_url": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "about:welcome" }, "trailhead.firstrun.branches": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "sync-supercharge" } }, "ratio": 1, "slug": "sync-supercharge" }, { "preferences": { "startup.homepage_welcome_url": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "about:welcome" }, "trailhead.firstrun.branches": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "join-privacy" } }, "ratio": 1, "slug": "join-privacy" } ], "slug": "multi-preference-experiment-stub-attribution-test-1571777", "userFacingDescription": "Test for attribution code and about:welcome bug 1571777", "userFacingName": "Stub attribution test for about:welcome, see bug 1571777", "isEnrollmentPaused": false }, "experimenter_slug": null, "capabilities": [ "capabilities-v1", "jexl.transform.versionCompare", "jexl.context.env.version", "action.multi-preference-experiment" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:44.957729Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.attribution.medium == \"rhelmer\"\n&& normandy.attribution.campaign == \"stubtest\"\n&& (\n !\"trailhead.firstrun.didSeeAboutWelcome\"|preferenceIsUserSet\n || \"multi-preference-experiment-stub-attribution-test-1571777\" in normandy.experiments.active\n)", "filter_expression": "(normandy.channel in [\"beta\",\"nightly\"]) && ((env.version|versionCompare(\"71.!\")>=0)&&(env.version|versionCompare(\"72.*\")<0)) && (normandy.attribution.medium == \"rhelmer\"\n&& normandy.attribution.campaign == \"stubtest\"\n&& (\n !\"trailhead.firstrun.didSeeAboutWelcome\"|preferenceIsUserSet\n || \"multi-preference-experiment-stub-attribution-test-1571777\" in normandy.experiments.active\n))", "filter_object": [ { "channels": [ "beta", "nightly" ], "type": "channel" }, { "versions": [ 71, 72 ], "type": "version" } ], "id": 3140, "identicon_seed": "v1:6w8spleoh7l", "metadata": {}, "name": "multi-preference-experiment-stub-attribution-test-1571777", "recipe": { "approved_revision_id": 3140, "id": 843, "latest_revision_id": 3140 }, "updated": "2020-06-10T17:04:44.962256Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.691504Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2147, "revision": { "id": 3139, "recipe_id": 965 } }, "arguments": { "branches": [ { "preferences": { "browser.contentblocking.category": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "strict" }, "urlclassifier.features.socialtracking.skipURLs": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "connect.facebook.net,*.facebook.com" }, "urlclassifier.trackingSkipURLs": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "connect.facebook.net,*.facebook.com" } }, "ratio": 50, "slug": "treatment" }, { "preferences": { "browser.contentblocking.category": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "standard" }, "urlclassifier.features.socialtracking.skipURLs": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "connect.facebook.net,*.facebook.com" }, "urlclassifier.trackingSkipURLs": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "connect.facebook.net,*.facebook.com" } }, "ratio": 50, "slug": "control" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/baseline-strict-mode-by-default-retention-study/", "slug": "bug-1633652-pref-baseline-strict-mode-by-default-retention-study-release-76-80", "userFacingDescription": "This study examines how well Strict Mode works in Firefox.", "userFacingName": "Tracking Protection Study", "isEnrollmentPaused": false }, "experimenter_slug": "baseline-strict-mode-by-default-retention-study", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:44.751483Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"76.!\")>=0)&&(env.version|versionCompare(\"80.*\")<0)) && ([normandy.userId,\"global-v2\"]|bucketSample(8101,50,10000))", "filter_object": [ { "type": "channel", "channels": [ "release" ] }, { "type": "version", "versions": [ 76, 77, 78, 79, 80 ] }, { "type": "bucketSample", "input": [ "normandy.userId", "\"global-v2\"" ], "start": 8101, "count": 50, "total": 10000 } ], "id": 3139, "identicon_seed": "v1:OfuliEmgZIHK", "metadata": {}, "name": "Baseline Strict Mode by Default Retention Study", "recipe": { "approved_revision_id": 3139, "id": 965, "latest_revision_id": 3139 }, "updated": "2020-06-10T17:04:44.751794Z" }, "id": 965, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a set of preferences.", "type": "object", "required": [ "slug", "userFacingName", "userFacingDescription", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "userFacingName": { "description": "User-facing name of the experiment", "type": "string", "minLength": 1 }, "userFacingDescription": { "description": "User-facing description of the experiment", "type": "string", "minLength": 1 }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "preferences" ], "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 }, "preferences": { "description": "The set of preferences to be set if this branch is chosen", "type": "object", "patternProperties": { ".*": { "type": "object", "properties": { "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "preferenceValue": { "description": "Value for this preference when this branch is chosen", "type": [ "string", "number", "boolean" ] } }, "required": [ "preferenceType", "preferenceBranchType", "preferenceValue" ] } } } } } } } }, "name": "multi-preference-experiment", "id": 9, "implementation_url": null }, "approval_request": { "approved": true, "approver": { "id": 60, "first_name": "Tiffany", "last_name": "Tran", "email": "ttran@mozilla.com" }, "comment": "r+ to setting isEnrollmentPaused to false", "created": "2020-06-10T17:17:34.691504Z", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "id": 2147, "revision": { "id": 3139, "recipe_id": 965 } }, "arguments": { "branches": [ { "preferences": { "browser.contentblocking.category": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "strict" }, "urlclassifier.features.socialtracking.skipURLs": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "connect.facebook.net,*.facebook.com" }, "urlclassifier.trackingSkipURLs": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "connect.facebook.net,*.facebook.com" } }, "ratio": 50, "slug": "treatment" }, { "preferences": { "browser.contentblocking.category": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "standard" }, "urlclassifier.features.socialtracking.skipURLs": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "connect.facebook.net,*.facebook.com" }, "urlclassifier.trackingSkipURLs": { "preferenceBranchType": "default", "preferenceType": "string", "preferenceValue": "connect.facebook.net,*.facebook.com" } }, "ratio": 50, "slug": "control" } ], "experimentDocumentUrl": "https://experimenter.services.mozilla.com/experiments/baseline-strict-mode-by-default-retention-study/", "slug": "bug-1633652-pref-baseline-strict-mode-by-default-retention-study-release-76-80", "userFacingDescription": "This study examines how well Strict Mode works in Firefox.", "userFacingName": "Tracking Protection Study", "isEnrollmentPaused": false }, "experimenter_slug": "baseline-strict-mode-by-default-retention-study", "capabilities": [ "jexl.transform.bucketSample", "jexl.transform.versionCompare", "action.multi-preference-experiment", "jexl.context.env.version", "capabilities-v1" ], "comment": "mass edit to fix isEnrollmentPaused missing", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2020-06-10T17:04:44.751483Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"76.!\")>=0)&&(env.version|versionCompare(\"80.*\")<0)) && ([normandy.userId,\"global-v2\"]|bucketSample(8101,50,10000))", "filter_object": [ { "type": "channel", "channels": [ "release" ] }, { "type": "version", "versions": [ 76, 77, 78, 79, 80 ] }, { "type": "bucketSample", "input": [ "normandy.userId", "\"global-v2\"" ], "start": 8101, "count": 50, "total": 10000 } ], "id": 3139, "identicon_seed": "v1:OfuliEmgZIHK", "metadata": {}, "name": "Baseline Strict Mode by Default Retention Study", "recipe": { "approved_revision_id": 3139, "id": 965, "latest_revision_id": 3139 }, "updated": "2020-06-10T17:04:44.751794Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 970, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": null, "arguments": { "repeatOption": "once", "surveyId": "hb-privacy-messaging-2-BRANCHNUM-survey-BUGNUM", "message": "Please help make Firefox better by taking this short survey", "learnMoreMessage": "Learn More", "learnMoreUrl": "https://support.mozilla.org/kb/rate-your-firefox-experience-heartbeat", "engagementButtonLabel": "Take Survey", "thanksMessage": "Thanks", "postAnswerUrl": "https://qsurvey.mozilla.com/s3/settings-survey?b=BRANCHNUM", "includeTelemetryUUID": true }, "experimenter_slug": null, "capabilities": [ "jexl.transform.bucketSample", "action.show-heartbeat", "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1" ], "comment": "", "creator": { "id": 4, "first_name": "Rob", "last_name": "Rayborn", "email": "rrayborn@mozilla.com" }, "date_created": "2020-05-23T05:58:38.693598Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.telemetry.heartbeat.payload.surveyId in [\"hb-privacy-messaging-BRANCHNUM-message1-BUGNUM\",\"hb-privacy-messaging-BRANCHNUM-message2-BUGNUM\"]\n&& False", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-NZ\",\"en-CA\",\"en-ZA\",\"en-US\"]) && (normandy.country in [\"US\",\"CA\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"80.*\")<0)) && ([\"message-testing\",normandy.userId]|bucketSample(100,50,10000)) && (normandy.telemetry.heartbeat.payload.surveyId in [\"hb-privacy-messaging-BRANCHNUM-message1-BUGNUM\",\"hb-privacy-messaging-BRANCHNUM-message2-BUGNUM\"]\n&& False)", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-NZ", "en-CA", "en-ZA", "en-US" ], "type": "locale" }, { "countries": [ "US", "CA" ], "type": "country" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80 ], "type": "version" }, { "count": 50, "input": [ "\"message-testing\"", "normandy.userId" ], "start": 100, "total": 10000, "type": "bucketSample" } ], "id": 3101, "identicon_seed": "v1:oec41jool5s", "metadata": {}, "name": "HB: Privacy Experiment II, BRANCH, Survey [BUG] TEMPLATE", "recipe": { "approved_revision_id": null, "id": 970, "latest_revision_id": 3101 }, "updated": "2020-05-23T05:58:39.525638Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 972, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": null, "arguments": { "repeatOption": "once", "surveyId": "hb-privacy-messaging-2-BRANCHNUM-message1-BUGNUM", "message": "MESSAGE 1", "learnMoreMessage": "?", "learnMoreUrl": "https://support.mozilla.org/kb/rate-your-firefox-experience-heartbeat", "engagementButtonLabel": "Learn More", "thanksMessage": "Thanks", "postAnswerUrl": "https://mozilla.org", "includeTelemetryUUID": false }, "experimenter_slug": null, "capabilities": [ "jexl.transform.bucketSample", "action.show-heartbeat", "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1" ], "comment": "", "creator": { "id": 4, "first_name": "Rob", "last_name": "Rayborn", "email": "rrayborn@mozilla.com" }, "date_created": "2020-05-23T05:58:30.235642Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "False", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-NZ\",\"en-CA\",\"en-ZA\",\"en-US\"]) && (normandy.country in [\"US\",\"CA\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"80.*\")<0)) && ([\"message-testing\",normandy.userId]|bucketSample(100,50,10000)) && (False)", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-NZ", "en-CA", "en-ZA", "en-US" ], "type": "locale" }, { "countries": [ "US", "CA" ], "type": "country" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80 ], "type": "version" }, { "count": 50, "input": [ "\"message-testing\"", "normandy.userId" ], "start": 100, "total": 10000, "type": "bucketSample" } ], "id": 3100, "identicon_seed": "v1:p1o72b6d5bm", "metadata": {}, "name": "HB: Privacy Experiment II, BRANCH, Message 1 [BUG] TEMPLATE", "recipe": { "approved_revision_id": null, "id": 972, "latest_revision_id": 3100 }, "updated": "2020-05-23T05:58:31.146964Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 971, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": null, "arguments": { "repeatOption": "once", "surveyId": "hb-privacy-messaging-2-BRANCHNUM-message2-BUGNUM", "message": "MESSAGE 2", "learnMoreMessage": "?", "learnMoreUrl": "https://support.mozilla.org/kb/rate-your-firefox-experience-heartbeat", "engagementButtonLabel": "Learn More", "thanksMessage": "Thanks", "postAnswerUrl": "https://mozilla.org", "includeTelemetryUUID": false }, "experimenter_slug": null, "capabilities": [ "jexl.transform.bucketSample", "action.show-heartbeat", "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1" ], "comment": "", "creator": { "id": 4, "first_name": "Rob", "last_name": "Rayborn", "email": "rrayborn@mozilla.com" }, "date_created": "2020-05-23T05:58:23.932743Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.telemetry.heartbeat.payload.surveyId in [\"hb-privacy-messaging-BRANCHNUM-message1-BUGNUM\"] \n&& False", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-NZ\",\"en-CA\",\"en-ZA\",\"en-US\"]) && (normandy.country in [\"US\",\"CA\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"80.*\")<0)) && ([\"message-testing\",normandy.userId]|bucketSample(100,50,10000)) && (normandy.telemetry.heartbeat.payload.surveyId in [\"hb-privacy-messaging-BRANCHNUM-message1-BUGNUM\"] \n&& False)", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-NZ", "en-CA", "en-ZA", "en-US" ], "type": "locale" }, { "countries": [ "US", "CA" ], "type": "country" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80 ], "type": "version" }, { "count": 50, "input": [ "\"message-testing\"", "normandy.userId" ], "start": 100, "total": 10000, "type": "bucketSample" } ], "id": 3099, "identicon_seed": "v1:x89kdmhidg", "metadata": {}, "name": "HB: Privacy Experiment II, BRANCH, Message 2 [BUG] TEMPLATE", "recipe": { "approved_revision_id": null, "id": 971, "latest_revision_id": 3099 }, "updated": "2020-05-23T05:58:24.676822Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 969, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": null, "arguments": { "repeatOption": "once", "surveyId": "hb-fb-container-1636144", "message": "Please help make Firefox better by taking this short survey", "learnMoreMessage": "Learn More", "learnMoreUrl": "https://support.mozilla.org/kb/rate-your-firefox-experience-heartbeat", "engagementButtonLabel": "Take Survey", "thanksMessage": "Thanks", "postAnswerUrl": "https://qsurvey.mozilla.com/s3/container-feedback", "includeTelemetryUUID": false }, "experimenter_slug": null, "capabilities": [ "jexl.transform.stableSample", "action.show-heartbeat" ], "comment": "", "creator": { "id": 4, "first_name": "Rob", "last_name": "Rayborn", "email": "rrayborn@mozilla.com" }, "date_created": "2020-05-22T21:44:27.563011Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.addons['@contain-facebook'].isActive", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-ZA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ([normandy.recipe.id,normandy.userId]|stableSample(0.03)) && (normandy.addons['@contain-facebook'].isActive)", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-ZA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" }, { "input": [ "normandy.recipe.id", "normandy.userId" ], "rate": 0.03, "type": "stableSample" } ], "id": 3090, "identicon_seed": "v1:um4wyr3nvdc", "metadata": {}, "name": "HB: Firefox Facebook Container Survey [1636144]", "recipe": { "approved_revision_id": null, "id": 969, "latest_revision_id": 3090 }, "updated": "2020-05-22T21:44:28.347944Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 957, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": null, "arguments": { "repeatOption": "once", "surveyId": "donotuse-hb-privacy-messaging-survey-4-1631129", "message": "Please help make Firefox better by taking this short survey", "learnMoreMessage": "Learn More", "learnMoreUrl": "https://support.mozilla.org/kb/rate-your-firefox-experience-heartbeat", "engagementButtonLabel": "Take Survey", "thanksMessage": "Thanks", "postAnswerUrl": "https://qsurvey.mozilla.com/s3/settings-survey?b=4", "includeTelemetryUUID": true }, "experimenter_slug": null, "capabilities": [ "jexl.transform.bucketSample", "action.show-heartbeat", "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1" ], "comment": "", "creator": { "id": 4, "first_name": "Rob", "last_name": "Rayborn", "email": "rrayborn@mozilla.com" }, "date_created": "2020-05-01T19:43:40.488331Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "'app.normandy.priv-message-control'|preferenceExists", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-NZ\",\"en-CA\",\"en-ZA\",\"en-US\"]) && (normandy.country in [\"US\",\"CA\"]) && (normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"70.!\")>=0)&&(env.version|versionCompare(\"76.*\")<0)) && ([\"global-v2\",normandy.userId]|bucketSample(150,50,10000)) && ('app.normandy.priv-message-control'|preferenceExists)", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-NZ", "en-CA", "en-ZA", "en-US" ], "type": "locale" }, { "countries": [ "US", "CA" ], "type": "country" }, { "channels": [ "release" ], "type": "channel" }, { "versions": [ 70, 71, 72, 73, 74, 75, 76 ], "type": "version" }, { "count": 50, "input": [ "\"global-v2\"", "normandy.userId" ], "start": 150, "total": 10000, "type": "bucketSample" } ], "id": 3063, "identicon_seed": "v1:n2wpbp04y9o", "metadata": {}, "name": "[DO NOT USE] HB: Privacy Experiment, Non-Message Control, Survey [1631129]", "recipe": { "approved_revision_id": null, "id": 957, "latest_revision_id": 3063 }, "updated": "2020-05-01T19:43:41.325759Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 861, "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": "unused recipe" }, "experimenter_slug": "fingerprinting-protections-retention-study-v2", "capabilities": [ "action.console-log" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2019-10-29T22:20:30.328510Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "false", "filter_expression": "false", "filter_object": [], "id": 2782, "identicon_seed": "v1:hir8yh9xdg", "metadata": {}, "name": "accidental dupe of 858", "recipe": { "approved_revision_id": null, "id": 861, "latest_revision_id": 2782 }, "updated": "2019-10-29T22:20:30.328875Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 796, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": { "approved": false, "approver": { "id": 42, "first_name": "Rosanne", "last_name": "Scholl", "email": "rscholl@mozilla.com" }, "comment": "batch rejecting obsolete recipes", "created": "2019-06-14T23:59:08.815025Z", "creator": { "id": 6, "first_name": "Josh", "last_name": "Gaunt", "email": "jgaunt@mozilla.com" }, "id": 1686, "revision": { "id": 2574, "recipe_id": 796 } }, "arguments": { "repeatOption": "once", "surveyId": "hb-proxy-vpn-ux", "message": "Please help make Firefox better by taking this short survey", "learnMoreMessage": "Learn More", "learnMoreUrl": "https://support.mozilla.org/en-US/kb/rate-your-firefox-experience-heartbeat", "engagementButtonLabel": "Take Survey", "thanksMessage": "Thanks", "postAnswerUrl": "https://qsurvey.mozilla.com/s3/Proxy-VPN-UX-User-Survey", "includeTelemetryUUID": true }, "experimenter_slug": null, "capabilities": [ "jexl.transform.bucketSample", "action.show-heartbeat" ], "comment": "", "creator": { "id": 6, "first_name": "Josh", "last_name": "Gaunt", "email": "jgaunt@mozilla.com" }, "date_created": "2019-06-13T21:56:36.751655Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(\n normandy.addons['uBlock0@raymondhill.net'].isActive ||\n normandy.addons['firefox@ghostery.com'].isActive ||\n normandy.addons['jid1-CKHySAadH4nL6Q@jetpack'].isActive ||\n normandy.addons['jid1-MnnxcxisBPnSXQ@jetpack'].isActive ||\n normandy.addons['woop-NoopscooPsnSXQ@jetpack'].isActive ||\n normandy.addons['nortonsafeweb@symantec.com'].isActive\n) &&\nnormandy.telemetry.main.payload.processes.parent.scalars[\"dom.parentprocess.private_window_used\"]", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-ZA\",\"en-US\"]) && ([\"global-v1\",normandy.userId]|bucketSample(690,460,10000)) && ((\n normandy.addons['uBlock0@raymondhill.net'].isActive ||\n normandy.addons['firefox@ghostery.com'].isActive ||\n normandy.addons['jid1-CKHySAadH4nL6Q@jetpack'].isActive ||\n normandy.addons['jid1-MnnxcxisBPnSXQ@jetpack'].isActive ||\n normandy.addons['woop-NoopscooPsnSXQ@jetpack'].isActive ||\n normandy.addons['nortonsafeweb@symantec.com'].isActive\n) &&\nnormandy.telemetry.main.payload.processes.parent.scalars[\"dom.parentprocess.private_window_used\"])", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-ZA", "en-US" ], "type": "locale" }, { "type": "bucketSample", "input": [ "\"global-v1\"", "normandy.userId" ], "start": 690, "count": 460, "total": 10000 } ], "id": 2574, "identicon_seed": "v1:ivhojfu1gr", "metadata": {}, "name": "Heartbeat: Proxy VPN UX User Survey", "recipe": { "approved_revision_id": null, "id": 796, "latest_revision_id": 2574 }, "updated": "2019-06-13T21:56:37.738419Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 728, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Show a Heartbeat survey.", "description": "This action shows a single survey.", "type": "object", "required": [ "surveyId", "message", "thanksMessage", "postAnswerUrl", "learnMoreMessage", "learnMoreUrl" ], "properties": { "repeatOption": { "type": "string", "enum": [ "once", "xdays", "nag" ], "description": "Determines how often a prompt is shown executes.", "default": "once" }, "repeatEvery": { "description": "For repeatOption=xdays, how often (in days) the prompt is displayed.", "default": null, "type": [ "number", "null" ] }, "includeTelemetryUUID": { "type": "boolean", "description": "Include unique user ID in post-answer-url and Telemetry", "default": false }, "surveyId": { "type": "string", "description": "Slug uniquely identifying this survey in telemetry" }, "message": { "description": "Message to show to the user", "type": "string" }, "engagementButtonLabel": { "description": "Text for the engagement button. If specified, this button will be shown instead of rating stars.", "default": null, "type": [ "string", "null" ] }, "thanksMessage": { "description": "Thanks message to show to the user after they've rated Firefox", "type": "string" }, "postAnswerUrl": { "description": "URL to redirect the user to after rating Firefox or clicking the engagement button", "default": null, "type": [ "string", "null" ] }, "learnMoreMessage": { "description": "Message to show to the user to learn more", "default": null, "type": [ "string", "null" ] }, "learnMoreUrl": { "description": "URL to show to the user when they click Learn More", "default": null, "type": [ "string", "null" ] } } }, "name": "show-heartbeat", "id": 2, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/show-heartbeat/implementation/sha384-VTOdZHFMo1LOw0JWf6_jAGBb9r5sBbb7BQrmI8n3wy3oVO3ywb1g3ulD1BagmaMA/" }, "approval_request": null, "arguments": { "repeatOption": "once", "surveyId": "hb-longitude", "message": "Please help make Firefox better by taking this short survey", "learnMoreMessage": "Learn More", "learnMoreUrl": "https://support.mozilla.org/kb/rate-your-firefox-experience-heartbeat", "engagementButtonLabel": "Take Survey", "thanksMessage": "Thanks", "postAnswerUrl": "https://www.mozilla.org/en-US/dafadfa", "includeTelemetryUUID": true }, "experimenter_slug": null, "capabilities": [ "action.show-heartbeat" ], "comment": "", "creator": { "id": 4, "first_name": "Rob", "last_name": "Rayborn", "email": "rrayborn@mozilla.com" }, "date_created": "2019-03-28T21:11:36.618982Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(\n [normandy.userId, normandy.recipe.id]|bucketSample((normandy.request_time // (24*60*60*1000)), 14, 10000) \n && !normandy.isFirstRun\n)", "filter_expression": "(normandy.locale in [\"en-AU\",\"en-GB\",\"en-CA\",\"en-NZ\",\"en-ZA\",\"en-US\"]) && (normandy.channel in [\"release\"]) && ((\n [normandy.userId, normandy.recipe.id]|bucketSample((normandy.request_time // (24*60*60*1000)), 14, 10000) \n && !normandy.isFirstRun\n))", "filter_object": [ { "locales": [ "en-AU", "en-GB", "en-CA", "en-NZ", "en-ZA", "en-US" ], "type": "locale" }, { "channels": [ "release" ], "type": "channel" } ], "id": 2351, "identicon_seed": "v1:x4u7eqrrd7", "metadata": {}, "name": "Heartbeat: Longitudinal Analysis 2019", "recipe": { "approved_revision_id": null, "id": 728, "latest_revision_id": 2351 }, "updated": "2019-03-28T21:11:37.379130Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 653, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Change preferences permanently", "type": "object", "required": [ "slug", "preferences" ], "properties": { "slug": { "description": "Unique identifer for the rollout, used in telemetry and rollbacks", "type": "string", "pattern": "^[a-z0-9\\-_]+$" }, "preferences": { "description": "The preferences to change, and their values", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "preferenceName", "value" ], "properties": { "preferenceName": { "description": "Full dotted-path of the preference being changed", "type": "string" }, "value": { "description": "Value to set the preference to", "type": [ "string", "integer", "boolean" ] } } } } } }, "name": "preference-rollout", "id": 5, "implementation_url": null }, "approval_request": null, "arguments": { "slug": "pref-rollout-network-cookie-", "preferences": [ { "preferenceName": "network.cookie.cookieBehavior", "value": 4 } ] }, "experimenter_slug": null, "capabilities": [ "action.preference-rollout", "jexl.transform.stableSample", "jexl.transform.versionCompare", "jexl.context.env.version", "capabilities-v1" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2018-12-05T20:41:50.409185Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "", "filter_expression": "(normandy.channel in [\"release\"]) && ((env.version|versionCompare(\"66.!\")>=0)&&(env.version|versionCompare(\"66.*\")<0)) && ([normandy.recipe.id,normandy.userId]|stableSample(0.01))", "filter_object": [ { "channels": [ "release" ], "type": "channel" }, { "versions": [ 66 ], "type": "version" }, { "input": [ "normandy.recipe.id", "normandy.userId" ], "rate": 0.01, "type": "stableSample" } ], "id": 2080, "identicon_seed": "v1:8xz5cf68bed", "metadata": {}, "name": "[WIP] Pref Rollout: Network Cookie Behavior [Bug ...]", "recipe": { "approved_revision_id": null, "id": 653, "latest_revision_id": 2080 }, "updated": "2018-12-05T20:41:50.448731Z" }, "signature": null, "uses_only_baseline_capabilities": false }, { "approved_revision": null, "id": 589, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Run a feature experiment activated by a preference.", "type": "object", "required": [ "slug", "preferenceName", "preferenceType", "branches" ], "properties": { "slug": { "description": "Unique identifier for this experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "experimentDocumentUrl": { "description": "URL of a document describing the experiment", "type": "string", "format": "uri", "default": "" }, "preferenceName": { "description": "Full dotted-path of the preference that controls this experiment", "type": "string" }, "preferenceType": { "description": "Data type of the preference that controls this experiment", "type": "string", "enum": [ "string", "integer", "boolean" ] }, "preferenceBranchType": { "description": "Controls whether the default or user value of the preference is modified", "type": "string", "enum": [ "user", "default" ], "default": "default" }, "isHighPopulation": { "description": "Marks the preference experiment as a high population experiment, that should be excluded from certain types of telemetry", "type": "boolean", "default": "false" }, "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", "value", "ratio" ], "properties": { "slug": { "description": "Unique identifier for this branch of the experiment", "type": "string", "pattern": "^[A-Za-z0-9\\-_]+$" }, "value": { "description": "Value to set the preference to for this branch", "type": [ "string", "number", "boolean" ] }, "ratio": { "description": "Ratio of users who should be grouped into this branch", "type": "integer", "minimum": 1 } } } } } }, "name": "preference-experiment", "id": 3, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/preference-experiment/implementation/sha384-o1w_DJcXVnm6ppFcrPr78-Q32ZVXgi6lfYm9wUS3JBj5466SxrFpXaFt_KgJC87O/" }, "approval_request": null, "arguments": { "preferenceBranchType": "default", "slug": "prefflip-study-firefox-monitor-tag-group-1483104", "experimentDocumentUrl": "https://bugzilla.mozilla.org/show_bug.cgi?id=1483104", "isHighVolume": false, "preferenceName": "extensions.fxmonitor.enabled", "preferenceType": "boolean", "isEnrollmentPaused": false, "branches": [ { "slug": "treatment", "value": true, "ratio": 1 }, { "slug": "control", "value": false, "ratio": 1 } ] }, "experimenter_slug": null, "capabilities": [ "action.preference-experiment" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2018-09-24T19:55:28.004292Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.channel == 'release'\n&& normandy.version >= '62.'\n&& normandy.version < '63.'\n&& normandy.locale in ['en-CA', 'en-GB', 'en-US', 'en-ZA']\n&& [normandy.userId, 'Monitor']|bucketSample(10, 5, 1000)\n&& (\n (\n normandy.request_time > '2018-09-25T07:15:00'|date\n && normandy.country in [\"US\", \"CA\", \"MX\"]\n )\n || normandy.request_time > '2018-09-25T13:00:00'|date\n)", "filter_expression": "normandy.channel == 'release'\n&& normandy.version >= '62.'\n&& normandy.version < '63.'\n&& normandy.locale in ['en-CA', 'en-GB', 'en-US', 'en-ZA']\n&& [normandy.userId, 'Monitor']|bucketSample(10, 5, 1000)\n&& (\n (\n normandy.request_time > '2018-09-25T07:15:00'|date\n && normandy.country in [\"US\", \"CA\", \"MX\"]\n )\n || normandy.request_time > '2018-09-25T13:00:00'|date\n)", "filter_object": [], "id": 1861, "identicon_seed": "v1:xgk1flvymzn", "metadata": {}, "name": "Pref Study: Firefox Monitor - Rollout tag group [Bug 1483104]", "recipe": { "approved_revision_id": null, "id": 589, "latest_revision_id": 1861 }, "updated": "2018-09-24T19:55:28.355317Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 588, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Change preferences permanently", "type": "object", "required": [ "slug", "preferences" ], "properties": { "slug": { "description": "Unique identifer for the rollout, used in telemetry and rollbacks", "type": "string", "pattern": "^[a-z0-9\\-_]+$" }, "preferences": { "description": "The preferences to change, and their values", "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "preferenceName", "value" ], "properties": { "preferenceName": { "description": "Full dotted-path of the preference being changed", "type": "string" }, "value": { "description": "Value to set the preference to", "type": [ "string", "integer", "boolean" ] } } } } } }, "name": "preference-rollout", "id": 5, "implementation_url": null }, "approval_request": null, "arguments": { "slug": "rollout-firefox-monitor-1488532", "preferences": [ { "preferenceName": "extensions.fxmonitor.enabled", "value": true } ] }, "experimenter_slug": null, "capabilities": [ "action.preference-rollout" ], "comment": "", "creator": { "id": 1, "first_name": "Michael", "last_name": "Cooper", "email": "mcooper@mozilla.com" }, "date_created": "2018-09-24T19:52:55.397447Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "normandy.channel == 'release'\n&& normandy.version >= '62.'\n&& normandy.version < '63.'\n&& normandy.locale in ['en-CA', 'en-GB', 'en-US', 'en-ZA']\n&& [normandy.userId, 'Monitor']|bucketSample(15, 95, 1000)\n&& (\n (\n normandy.request_time > '2018-09-25T07:15:00'|date\n && normandy.country in [\"US\", \"CA\", \"MX\"]\n )\n || normandy.request_time > '2018-09-25T13:00:00'|date\n)", "filter_expression": "normandy.channel == 'release'\n&& normandy.version >= '62.'\n&& normandy.version < '63.'\n&& normandy.locale in ['en-CA', 'en-GB', 'en-US', 'en-ZA']\n&& [normandy.userId, 'Monitor']|bucketSample(15, 95, 1000)\n&& (\n (\n normandy.request_time > '2018-09-25T07:15:00'|date\n && normandy.country in [\"US\", \"CA\", \"MX\"]\n )\n || normandy.request_time > '2018-09-25T13:00:00'|date\n)", "filter_object": [], "id": 1860, "identicon_seed": "v1:8324sifmmfu", "metadata": {}, "name": "Rollout: Firefox Monitor - Enable [Bug1483104]", "recipe": { "approved_revision_id": null, "id": 588, "latest_revision_id": 1860 }, "updated": "2018-09-24T19:52:55.416870Z" }, "signature": null, "uses_only_baseline_capabilities": true }, { "approved_revision": null, "id": 383, "latest_revision": { "action": { "arguments_schema": { "$schema": "http://json-schema.org/draft-04/schema#", "title": "Enroll a user in an opt-out SHIELD study", "type": "object", "required": [ "name", "description", "addonUrl", "extensionApiId" ], "properties": { "name": { "description": "User-facing name of the study", "type": "string", "minLength": 1 }, "description": { "description": "User-facing description of the study", "type": "string", "minLength": 1 }, "addonUrl": { "description": "URL of the add-on XPI file", "type": "string", "format": "uri", "minLength": 1 }, "extensionApiId": { "description": "The record ID of the extension used for Normandy API calls.", "type": "integer" }, "isEnrollmentPaused": { "description": "If true, new users will not be enrolled in the study.", "type": "boolean", "default": false } } }, "name": "opt-out-study", "id": 4, "implementation_url": "https://normandy.cdn.mozilla.net/api/v1/action/opt-out-study/implementation/sha384-QKoPs61T67mshtL1-RGVzzj7xgQbzCCit0fDUfnxE7UPiAKpHpFe5R7P-9Zr6jRZ/" }, "approval_request": null, "arguments": { "name": "Pioneer Enrollment - US", "description": "Prompts users to enroll in Pioneer: https://support.mozilla.org/en-US/kb/about-firefox-pioneer", "addonUrl": "https://net-mozaws-prod-us-west-2-normandy.s3.amazonaws.com/extensions/pioneer-enrollment-study%40mozilla.org-2.0.4-signed.xpi", "isEnrollmentPaused": false, "extensionApiId": 31 }, "experimenter_slug": null, "capabilities": [ "action.opt-out-study" ], "comment": "", "creator": null, "date_created": "2018-08-13T17:17:43.128322Z", "enabled_states": [], "enabled": false, "extra_capabilities": [], "extra_filter_expression": "(\n [normandy.userId, normandy.recipe.id]|bucketSample((normandy.request_time / (24*60*60*1000)), 2, 1000)\n && normandy.locale == 'en-US'\n && normandy.country == 'US'\n && !normandy.isFirstRun\n && normandy.version >= '57.0'\n && normandy.channel == 'release'\n)", "filter_expression": "(\n [normandy.userId, normandy.recipe.id]|bucketSample((normandy.request_time / (24*60*60*1000)), 2, 1000)\n && normandy.locale == 'en-US'\n && normandy.country == 'US'\n && !normandy.isFirstRun\n && normandy.version >= '57.0'\n && normandy.channel == 'release'\n)", "filter_object": [], "id": 1678, "identicon_seed": "v1:nkgp9712ou", "metadata": {}, "name": "Opt-out - Pioneer Enrollment Study US only", "recipe": { "approved_revision_id": null, "id": 383, "latest_revision_id": 1678 }, "updated": "2018-08-13T17:17:43.128655Z" }, "signature": null, "uses_only_baseline_capabilities": true } ] }{ "count": 1295, "next": "