diff --git a/.github/workflows/generate-test-seed.yml b/.github/workflows/generate-test-seed.yml index c8a849ea..a79f8efa 100644 --- a/.github/workflows/generate-test-seed.yml +++ b/.github/workflows/generate-test-seed.yml @@ -4,7 +4,6 @@ on: pull_request: paths: - '.github/workflows/generate-test-seed.yml' - - 'seed/seed.json' - 'studies/**' jobs: @@ -23,14 +22,6 @@ jobs: - name: Fetch base commit run: git fetch --depth=1 origin "$BASE_SHA" - - name: Setup Python - uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5 - with: - python-version: '3.11' - - - name: Install python requirements - run: pip install -r seed/requirements.txt - - name: Comment "Generation In Progress" uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 with: @@ -64,10 +55,7 @@ jobs: - name: Generate seed run: | - # Use only python implementation for now. - python seed/serialize.py seed/seed.json --version "$SEED_VERSION" - # TODO: enable this when per-file studies will be synced with seed.json. - # npm run seed_tools -- create_seed studies seed.bin --version "$SEED_VERSION" + npm run seed_tools create -- --version "$SEED_VERSION" - name: Upload seed env: diff --git a/.github/workflows/test-src.yml b/.github/workflows/test-src.yml index 5d0b05fd..d091ba01 100644 --- a/.github/workflows/test-src.yml +++ b/.github/workflows/test-src.yml @@ -24,3 +24,14 @@ jobs: - name: build run: npm run build + + - name: Setup Python + uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5 + with: + python-version: '3.11' + + - name: Install python seed generator requirements + run: pip install -r seed/requirements.txt + + - name: Compare python and typescript seed generator + run: npm run seed_tools compare_python_gen diff --git a/studies/AllowCertainClientHintsStudy.json5 b/studies/AllowCertainClientHintsStudy.json5 new file mode 100644 index 00000000..cd4ca57e --- /dev/null +++ b/studies/AllowCertainClientHintsStudy.json5 @@ -0,0 +1,34 @@ +[ + { + name: 'AllowCertainClientHintsStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'AllowCertainClientHints', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '104.1.44.59', + channel: [ + 'RELEASE', + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveAIChatEnabledStudy.json5 b/studies/BraveAIChatEnabledStudy.json5 new file mode 100644 index 00000000..e3b7e42f --- /dev/null +++ b/studies/BraveAIChatEnabledStudy.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'BraveAIChatEnabledStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'AIChat', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '119.1.60.0', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/BraveAdblockExperimentalListDefaultStudy.json5 b/studies/BraveAdblockExperimentalListDefaultStudy.json5 new file mode 100644 index 00000000..a94a9f9c --- /dev/null +++ b/studies/BraveAdblockExperimentalListDefaultStudy.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'BraveAdblockExperimentalListDefaultStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveAdblockExperimentalListDefault', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '123.1.66.53', + channel: [ + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveAdblockMobileNotificationsListDefault.json5 b/studies/BraveAdblockMobileNotificationsListDefault.json5 new file mode 100644 index 00000000..ca42919e --- /dev/null +++ b/studies/BraveAdblockMobileNotificationsListDefault.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'BraveAdblockMobileNotificationsListDefault', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveAdblockMobileNotificationsListDefault', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'RELEASE', + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveAds.CreativeAdModelBasedPredictorRecencyStudy.json5 b/studies/BraveAds.CreativeAdModelBasedPredictorRecencyStudy.json5 new file mode 100644 index 00000000..3f61f55a --- /dev/null +++ b/studies/BraveAds.CreativeAdModelBasedPredictorRecencyStudy.json5 @@ -0,0 +1,43 @@ +[ + { + name: 'BraveAds.CreativeAdModelBasedPredictorRecencyStudy', + experiment: [ + { + name: 'NoRecency', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'CreativeNotificationAdModelBasedPredictor', + 'CreativeNewTabPageAdModelBasedPredictor', + 'CreativeInlineContentAdModelBasedPredictor', + ], + }, + param: [ + { + name: 'last_seen_ad_predictor_weight', + value: '0.0', + }, + { + name: 'last_seen_advertiser_predictor_weight', + value: '0.0', + }, + ], + }, + ], + filter: { + max_version: '128.1.69.51', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveAdsAdEventStudy.json5 b/studies/BraveAdsAdEventStudy.json5 new file mode 100644 index 00000000..91e915b0 --- /dev/null +++ b/studies/BraveAdsAdEventStudy.json5 @@ -0,0 +1,44 @@ +[ + { + name: 'BraveAdsAdEventStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'AdEvent', + ], + }, + param: [ + { + name: 'debounce_clicked_ad_event_for', + value: '1s', + }, + { + name: 'deduplicate_clicked_ad_event_for', + value: '1s', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveAdsConversionsStudy.json5 b/studies/BraveAdsConversionsStudy.json5 new file mode 100644 index 00000000..746f82e3 --- /dev/null +++ b/studies/BraveAdsConversionsStudy.json5 @@ -0,0 +1,40 @@ +[ + { + name: 'BraveAdsConversionsStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'Conversions', + ], + }, + param: [ + { + name: 'creative_set_conversion_cap', + value: '0', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveAdsExclusionRulesStudy.json5 b/studies/BraveAdsExclusionRulesStudy.json5 new file mode 100644 index 00000000..aade3ee6 --- /dev/null +++ b/studies/BraveAdsExclusionRulesStudy.json5 @@ -0,0 +1,40 @@ +[ + { + name: 'BraveAdsExclusionRulesStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'ExclusionRules', + ], + }, + param: [ + { + name: 'should_exclude_ad_if_creative_set_exceeds_conversion_cap', + value: '0', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveAdsNewTabPageAdsStudy.json5 b/studies/BraveAdsNewTabPageAdsStudy.json5 new file mode 100644 index 00000000..8916704d --- /dev/null +++ b/studies/BraveAdsNewTabPageAdsStudy.json5 @@ -0,0 +1,40 @@ +[ + { + name: 'BraveAdsNewTabPageAdsStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'NewTabPageAds', + ], + }, + param: [ + { + name: 'minimum_wait_time', + value: '1m', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveAdsSiteVisitStudy.json5 b/studies/BraveAdsSiteVisitStudy.json5 new file mode 100644 index 00000000..14703b48 --- /dev/null +++ b/studies/BraveAdsSiteVisitStudy.json5 @@ -0,0 +1,44 @@ +[ + { + name: 'BraveAdsSiteVisitStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'SiteVisitFeature', + ], + }, + param: [ + { + name: 'page_land_after', + value: '5s', + }, + { + name: 'page_land_cap', + value: '0', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveAdsTextClassificationPageProbabilitiesStudy.json5 b/studies/BraveAdsTextClassificationPageProbabilitiesStudy.json5 new file mode 100644 index 00000000..fb8b2f7b --- /dev/null +++ b/studies/BraveAdsTextClassificationPageProbabilitiesStudy.json5 @@ -0,0 +1,40 @@ +[ + { + name: 'BraveAdsTextClassificationPageProbabilitiesStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'TextClassification', + ], + }, + param: [ + { + name: 'page_probabilities_history_size', + value: '15', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveAggressiveModeRetirementExperiment.json5 b/studies/BraveAggressiveModeRetirementExperiment.json5 new file mode 100644 index 00000000..8bd3370d --- /dev/null +++ b/studies/BraveAggressiveModeRetirementExperiment.json5 @@ -0,0 +1,34 @@ +[ + { + name: 'BraveAggressiveModeRetirementExperiment', + experiment: [ + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'BraveShowStrictFingerprintingMode', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '120.1.63.110', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveAutoTranslateStudy.json5 b/studies/BraveAutoTranslateStudy.json5 new file mode 100644 index 00000000..45b0b2be --- /dev/null +++ b/studies/BraveAutoTranslateStudy.json5 @@ -0,0 +1,34 @@ +[ + { + name: 'BraveAutoTranslateStudy', + experiment: [ + { + name: 'AutoTranslateDisabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'BraveEnableAutoTranslate', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '107.1.47.31', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveCleanupSessionCookiesOnSessionRestore.json5 b/studies/BraveCleanupSessionCookiesOnSessionRestore.json5 new file mode 100644 index 00000000..91263bdf --- /dev/null +++ b/studies/BraveCleanupSessionCookiesOnSessionRestore.json5 @@ -0,0 +1,27 @@ +[ + { + name: 'BraveCleanupSessionCookiesOnSessionRestore', + experiment: [ + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'BraveCleanupSessionCookiesOnSessionRestore', + ], + }, + }, + ], + filter: { + min_version: '111.1.50.0', + channel: [ + 'RELEASE', + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'MAC', + ], + }, + }, +] diff --git a/studies/BraveDebounceStudy.json5 b/studies/BraveDebounceStudy.json5 new file mode 100644 index 00000000..8fdbe144 --- /dev/null +++ b/studies/BraveDebounceStudy.json5 @@ -0,0 +1,43 @@ +[ + { + name: 'BraveDebounceStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveDebounce', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveDebounce', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '94.1.32.25', + channel: [ + 'RELEASE', + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveFallbackDoHStudy.json5 b/studies/BraveFallbackDoHStudy.json5 new file mode 100644 index 00000000..30c254cd --- /dev/null +++ b/studies/BraveFallbackDoHStudy.json5 @@ -0,0 +1,37 @@ +[ + { + name: 'BraveFallbackDoHStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 50, + feature_association: { + enable_feature: [ + 'BraveFallbackDoHProvider', + ], + }, + param: [ + { + name: 'BraveFallbackDoHProviderEndpoint', + value: 'quad9', + }, + ], + }, + { + name: 'Default', + probability_weight: 50, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveFeedUpdateStudy.json5 b/studies/BraveFeedUpdateStudy.json5 new file mode 100644 index 00000000..cb369fde --- /dev/null +++ b/studies/BraveFeedUpdateStudy.json5 @@ -0,0 +1,30 @@ +[ + { + name: 'BraveFeedUpdateStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveNewsFeedUpdate', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/BraveForgetFirstPartyStorage.json5 b/studies/BraveForgetFirstPartyStorage.json5 new file mode 100644 index 00000000..940273e6 --- /dev/null +++ b/studies/BraveForgetFirstPartyStorage.json5 @@ -0,0 +1,119 @@ +[ + { + name: 'BraveForgetFirstPartyStorage', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveForgetFirstPartyStorage', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveForgetFirstPartyStorage', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '114.1.53.83', + channel: [ + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, + { + name: 'BraveForgetFirstPartyStorage', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveForgetFirstPartyStorage', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveForgetFirstPartyStorage', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '116.1.57.0', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, + { + name: 'BraveForgetFirstPartyStorage', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveForgetFirstPartyStorage', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveForgetFirstPartyStorage', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '112.1.51.57', + channel: [ + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveGoogleSignInPermissionStudy.json5 b/studies/BraveGoogleSignInPermissionStudy.json5 new file mode 100644 index 00000000..7dff42b5 --- /dev/null +++ b/studies/BraveGoogleSignInPermissionStudy.json5 @@ -0,0 +1,81 @@ +[ + { + name: 'BraveGoogleSignInPermissionStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveGoogleSignInPermission', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveGoogleSignInPermission', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '111.1.51.5', + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, + { + name: 'BraveGoogleSignInPermissionStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveGoogleSignInPermission', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveGoogleSignInPermission', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '111.1.51.5', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveHorizontalTabsUpdateEnabledStudy.json5 b/studies/BraveHorizontalTabsUpdateEnabledStudy.json5 new file mode 100644 index 00000000..024c37fb --- /dev/null +++ b/studies/BraveHorizontalTabsUpdateEnabledStudy.json5 @@ -0,0 +1,55 @@ +[ + { + name: 'BraveHorizontalTabsUpdateEnabledStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveHorizontalTabsUpdate', + ], + }, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, + { + name: 'BraveHorizontalTabsUpdateEnabledStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveHorizontalTabsUpdate', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/BraveLocalhostAccessPermissionStudy.json5 b/studies/BraveLocalhostAccessPermissionStudy.json5 new file mode 100644 index 00000000..5b0f2733 --- /dev/null +++ b/studies/BraveLocalhostAccessPermissionStudy.json5 @@ -0,0 +1,32 @@ +[ + { + name: 'BraveLocalhostAccessPermissionStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveLocalhostAccessPermission', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '115.1.55.5', + channel: [ + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveP3AConstellationEnabled.json5 b/studies/BraveP3AConstellationEnabled.json5 new file mode 100644 index 00000000..d657749d --- /dev/null +++ b/studies/BraveP3AConstellationEnabled.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'BraveP3AConstellationEnabled', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveP3AConstellation', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveP3AJSONOtherDeprecation.json5 b/studies/BraveP3AJSONOtherDeprecation.json5 new file mode 100644 index 00000000..37928e4e --- /dev/null +++ b/studies/BraveP3AJSONOtherDeprecation.json5 @@ -0,0 +1,32 @@ +[ + { + name: 'BraveP3AJSONOtherDeprecation', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveP3AOtherJSONDeprecation', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveP3ANebulaNightlyBeta.json5 b/studies/BraveP3ANebulaNightlyBeta.json5 new file mode 100644 index 00000000..519f989f --- /dev/null +++ b/studies/BraveP3ANebulaNightlyBeta.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'BraveP3ANebulaNightlyBeta', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveP3ADifferentialSampling', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveP3ANebulaRelease.json5 b/studies/BraveP3ANebulaRelease.json5 new file mode 100644 index 00000000..1006d251 --- /dev/null +++ b/studies/BraveP3ANebulaRelease.json5 @@ -0,0 +1,32 @@ +[ + { + name: 'BraveP3ANebulaRelease', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveP3ADifferentialSampling', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveP3ATypicalJSONDeprecationEnabled.json5 b/studies/BraveP3ATypicalJSONDeprecationEnabled.json5 new file mode 100644 index 00000000..97378561 --- /dev/null +++ b/studies/BraveP3ATypicalJSONDeprecationEnabled.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'BraveP3ATypicalJSONDeprecationEnabled', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveP3ATypicalJSONDeprecation', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveRequestOTRTabRolloutStudy.json5 b/studies/BraveRequestOTRTabRolloutStudy.json5 new file mode 100644 index 00000000..9028d71e --- /dev/null +++ b/studies/BraveRequestOTRTabRolloutStudy.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'BraveRequestOTRTabRolloutStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveRequestOTRTab', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/BraveRewardsAllowSelfCustodyProvidersStudy.json5 b/studies/BraveRewardsAllowSelfCustodyProvidersStudy.json5 new file mode 100644 index 00000000..a84f71c2 --- /dev/null +++ b/studies/BraveRewardsAllowSelfCustodyProvidersStudy.json5 @@ -0,0 +1,29 @@ +[ + { + name: 'BraveRewardsAllowSelfCustodyProvidersStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveRewardsAllowSelfCustodyProviders', + ], + }, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveRewardsWebUiPanelStudy.json5 b/studies/BraveRewardsWebUiPanelStudy.json5 new file mode 100644 index 00000000..2814a368 --- /dev/null +++ b/studies/BraveRewardsWebUiPanelStudy.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'BraveRewardsWebUiPanelStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveRewardsWebUIPanel', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '103.1.43.9', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/BraveRoundTimeStampsStudy.json5 b/studies/BraveRoundTimeStampsStudy.json5 new file mode 100644 index 00000000..a4d1682b --- /dev/null +++ b/studies/BraveRoundTimeStampsStudy.json5 @@ -0,0 +1,35 @@ +[ + { + name: 'BraveRoundTimeStampsStudy', + experiment: [ + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'BraveRoundTimeStamps', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '125.*', + max_version: '130.1.72.75', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveScreenFingerprintingBlockerStudy.json5 b/studies/BraveScreenFingerprintingBlockerStudy.json5 new file mode 100644 index 00000000..d18d8b22 --- /dev/null +++ b/studies/BraveScreenFingerprintingBlockerStudy.json5 @@ -0,0 +1,89 @@ +[ + { + name: 'BraveScreenFingerprintingBlockerStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveBlockScreenFingerprinting', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '108.1.48.19', + channel: [ + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, + { + name: 'BraveScreenFingerprintingBlockerStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveBlockScreenFingerprinting', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '111.1.50.93', + channel: [ + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, + { + name: 'BraveScreenFingerprintingBlockerStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveBlockScreenFingerprinting', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '111.1.50.93', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/BraveSearchAdStudy.json5 b/studies/BraveSearchAdStudy.json5 new file mode 100644 index 00000000..9f73f9fa --- /dev/null +++ b/studies/BraveSearchAdStudy.json5 @@ -0,0 +1,67 @@ +[ + { + name: 'BraveSearchAdStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'ShouldLaunchBraveAdsAsInProcessService', + 'ShouldAlwaysRunBraveAdsService', + 'ShouldSupportSearchResultAds', + 'ShouldAlwaysTriggerBraveSearchResultAdEvents', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, + { + name: 'BraveSearchAdStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'ShouldAlwaysRunBraveAdsService', + 'ShouldSupportSearchResultAds', + 'ShouldAlwaysTriggerBraveSearchResultAdEvents', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '122.1.65.32', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'IOS', + ], + }, + }, +] diff --git a/studies/BraveSearchPromotionBannerStudy.json5 b/studies/BraveSearchPromotionBannerStudy.json5 new file mode 100644 index 00000000..f122b702 --- /dev/null +++ b/studies/BraveSearchPromotionBannerStudy.json5 @@ -0,0 +1,77 @@ +[ + { + name: 'BraveSearchPromotionBannerStudy', + experiment: [ + { + name: 'banner_type_B', + probability_weight: 33, + feature_association: { + enable_feature: [ + 'BraveSearchOmniboxBanner', + ], + }, + param: [ + { + name: 'banner_type', + value: 'type_B', + }, + ], + }, + { + name: 'banner_type_C', + probability_weight: 33, + feature_association: { + enable_feature: [ + 'BraveSearchOmniboxBanner', + ], + }, + param: [ + { + name: 'banner_type', + value: 'type_C', + }, + ], + }, + { + name: 'banner_type_D', + probability_weight: 34, + feature_association: { + enable_feature: [ + 'BraveSearchOmniboxBanner', + ], + }, + param: [ + { + name: 'banner_type', + value: 'type_D', + }, + ], + }, + ], + filter: { + min_version: '117.1.60.41', + channel: [ + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + country: [ + 'CA', + 'DE', + 'FR', + 'GB', + 'US', + 'AT', + 'ES', + 'MX', + 'BR', + 'AR', + 'IN', + ], + }, + }, +] diff --git a/studies/BraveSearchPromotionBannerStudyOnStable.json5 b/studies/BraveSearchPromotionBannerStudyOnStable.json5 new file mode 100644 index 00000000..eb2e15c2 --- /dev/null +++ b/studies/BraveSearchPromotionBannerStudyOnStable.json5 @@ -0,0 +1,79 @@ +[ + { + name: 'BraveSearchPromotionBannerStudyOnStable', + experiment: [ + { + name: 'banner_type_B', + probability_weight: 2, + feature_association: { + enable_feature: [ + 'BraveSearchOmniboxBanner', + ], + }, + param: [ + { + name: 'banner_type', + value: 'type_B', + }, + ], + }, + { + name: 'banner_type_C', + probability_weight: 2, + feature_association: { + enable_feature: [ + 'BraveSearchOmniboxBanner', + ], + }, + param: [ + { + name: 'banner_type', + value: 'type_C', + }, + ], + }, + { + name: 'banner_type_D', + probability_weight: 2, + feature_association: { + enable_feature: [ + 'BraveSearchOmniboxBanner', + ], + }, + param: [ + { + name: 'banner_type', + value: 'type_D', + }, + ], + }, + { + name: 'Default', + probability_weight: 94, + }, + ], + filter: { + min_version: '117.1.60.41', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + country: [ + 'CA', + 'DE', + 'FR', + 'GB', + 'AT', + 'ES', + 'MX', + 'BR', + 'AR', + 'IN', + ], + }, + }, +] diff --git a/studies/BraveTranslateStudy.json5 b/studies/BraveTranslateStudy.json5 new file mode 100644 index 00000000..2a5b6838 --- /dev/null +++ b/studies/BraveTranslateStudy.json5 @@ -0,0 +1,36 @@ +[ + { + name: 'BraveTranslateStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'UseBraveTranslateGo', + 'Translate', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '104.1.43.54', + max_version: '106.1.45.44', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveWalletAnkrBalancesEnabled.json5 b/studies/BraveWalletAnkrBalancesEnabled.json5 new file mode 100644 index 00000000..da670a65 --- /dev/null +++ b/studies/BraveWalletAnkrBalancesEnabled.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'BraveWalletAnkrBalancesEnabled', + experiment: [ + { + name: 'Enabled', + probability_weight: 0, + feature_association: { + enable_feature: [ + 'BraveWalletAnkrBalances', + ], + }, + }, + { + name: 'Default', + probability_weight: 100, + }, + ], + filter: { + min_version: '120.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/BraveWebViewRoundedCornersStudy.json5 b/studies/BraveWebViewRoundedCornersStudy.json5 new file mode 100644 index 00000000..240ca6c3 --- /dev/null +++ b/studies/BraveWebViewRoundedCornersStudy.json5 @@ -0,0 +1,27 @@ +[ + { + name: 'BraveWebViewRoundedCornersStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'brave-web-view-rounded-corners', + ], + }, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/BraveWebcompatExceptionsServiceReleaseStudy.json5 b/studies/BraveWebcompatExceptionsServiceReleaseStudy.json5 new file mode 100644 index 00000000..cf41a243 --- /dev/null +++ b/studies/BraveWebcompatExceptionsServiceReleaseStudy.json5 @@ -0,0 +1,32 @@ +[ + { + name: 'BraveWebcompatExceptionsServiceReleaseStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveWebcompatExceptionsService', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '128.1.69.150', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/BraveWebcompatExceptionsServiceStudy.json5 b/studies/BraveWebcompatExceptionsServiceStudy.json5 new file mode 100644 index 00000000..0b3fd820 --- /dev/null +++ b/studies/BraveWebcompatExceptionsServiceStudy.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'BraveWebcompatExceptionsServiceStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveWebcompatExceptionsService', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '128.1.70.66', + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/CanvasKillSwitches.json5 b/studies/CanvasKillSwitches.json5 new file mode 100644 index 00000000..2ff68695 --- /dev/null +++ b/studies/CanvasKillSwitches.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'CanvasKillSwitches', + experiment: [ + { + name: 'Disabled_EmergencyKillSwitch', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'Canvas2DHibernation', + 'EvictionUnlocksResources', + ], + }, + }, + ], + filter: { + max_version: '125.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/ClampPlatformVersionClientHint.json5 b/studies/ClampPlatformVersionClientHint.json5 new file mode 100644 index 00000000..76783d22 --- /dev/null +++ b/studies/ClampPlatformVersionClientHint.json5 @@ -0,0 +1,30 @@ +[ + { + name: 'ClampPlatformVersionClientHint', + experiment: [ + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'ClampPlatformVersionClientHint', + ], + }, + }, + ], + filter: { + min_version: '114.1.52.78', + channel: [ + 'RELEASE', + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/CloseWatcher.json5 b/studies/CloseWatcher.json5 new file mode 100644 index 00000000..e2ad2112 --- /dev/null +++ b/studies/CloseWatcher.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'CloseWatcher', + experiment: [ + { + name: 'Disabled_EmergencyKillSwitch', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'CloseWatcher', + ], + }, + }, + ], + filter: { + min_version: '120.*', + max_version: '122.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/CollectWebGPUSupportMetricsKillSwitch.json5 b/studies/CollectWebGPUSupportMetricsKillSwitch.json5 new file mode 100644 index 00000000..c2c7d35f --- /dev/null +++ b/studies/CollectWebGPUSupportMetricsKillSwitch.json5 @@ -0,0 +1,28 @@ +[ + { + name: 'CollectWebGPUSupportMetricsKillSwitch', + experiment: [ + { + name: 'Disabled_CollectWebGPUSupportMetrics', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'CollectWebGPUSupportMetrics', + ], + }, + }, + ], + filter: { + min_version: '119.*', + max_version: '119.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'LINUX', + ], + }, + }, +] diff --git a/studies/CookieListDefaultStudy.json5 b/studies/CookieListDefaultStudy.json5 new file mode 100644 index 00000000..ebf0acaf --- /dev/null +++ b/studies/CookieListDefaultStudy.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'CookieListDefaultStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveAdblockCookieListDefault', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'RELEASE', + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/CosmeticFilteringChildFramesStudy.json5 b/studies/CosmeticFilteringChildFramesStudy.json5 new file mode 100644 index 00000000..5c36a183 --- /dev/null +++ b/studies/CosmeticFilteringChildFramesStudy.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'CosmeticFilteringChildFramesStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveAdblockCosmeticFilteringChildFrames', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '106.1.46.14', + channel: [ + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/CrossPlatformVPNStudy.json5 b/studies/CrossPlatformVPNStudy.json5 new file mode 100644 index 00000000..789665c8 --- /dev/null +++ b/studies/CrossPlatformVPNStudy.json5 @@ -0,0 +1,34 @@ +[ + { + name: 'CrossPlatformVPNStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveVPN', + 'BraveVPNLinkSubscriptionAndroidUI', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '110.1.49.120', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/Default1pBlockingStudy.json5 b/studies/Default1pBlockingStudy.json5 new file mode 100644 index 00000000..e7523d27 --- /dev/null +++ b/studies/Default1pBlockingStudy.json5 @@ -0,0 +1,81 @@ +[ + { + name: 'Default1pBlockingStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 0, + feature_association: { + enable_feature: [ + 'BraveAdblockDefault1pBlocking', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'BraveAdblockDefault1pBlocking', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '92.1.30.57', + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, + { + name: 'Default1pBlockingStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 0, + feature_association: { + enable_feature: [ + 'BraveAdblockDefault1pBlocking', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'BraveAdblockDefault1pBlocking', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '92.1.30.57', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/DefaultBraveCommandsStudy.json5 b/studies/DefaultBraveCommandsStudy.json5 new file mode 100644 index 00000000..627d0b2e --- /dev/null +++ b/studies/DefaultBraveCommandsStudy.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'DefaultBraveCommandsStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveCommands', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/DefaultBraveOmniboxMoreHistoryStudy.json5 b/studies/DefaultBraveOmniboxMoreHistoryStudy.json5 new file mode 100644 index 00000000..763172d2 --- /dev/null +++ b/studies/DefaultBraveOmniboxMoreHistoryStudy.json5 @@ -0,0 +1,30 @@ +[ + { + name: 'DefaultBraveOmniboxMoreHistoryStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'HistoryMoreSearchResults', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/DefaultPassthroughCommandDecoderStudy.json5 b/studies/DefaultPassthroughCommandDecoderStudy.json5 new file mode 100644 index 00000000..9eae9995 --- /dev/null +++ b/studies/DefaultPassthroughCommandDecoderStudy.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'DefaultPassthroughCommandDecoderStudy', + experiment: [ + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'DefaultPassthroughCommandDecoder', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '125.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'ANDROID', + ], + }, + }, +] diff --git a/studies/DefaultPlaylistStudy.json5 b/studies/DefaultPlaylistStudy.json5 new file mode 100644 index 00000000..8ec1071f --- /dev/null +++ b/studies/DefaultPlaylistStudy.json5 @@ -0,0 +1,30 @@ +[ + { + name: 'DefaultPlaylistStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'Playlist', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/DisableCnameUncloakingForAndroid.json5 b/studies/DisableCnameUncloakingForAndroid.json5 new file mode 100644 index 00000000..14cef9e0 --- /dev/null +++ b/studies/DisableCnameUncloakingForAndroid.json5 @@ -0,0 +1,30 @@ +[ + { + name: 'DisableCnameUncloakingForAndroid', + experiment: [ + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'BraveAdblockCnameUncloaking', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'ANDROID', + ], + }, + }, +] diff --git a/studies/DisableReduceLanguage.json5 b/studies/DisableReduceLanguage.json5 new file mode 100644 index 00000000..1189650b --- /dev/null +++ b/studies/DisableReduceLanguage.json5 @@ -0,0 +1,38 @@ +[ + { + name: 'DisableReduceLanguage', + experiment: [ + { + name: 'Default', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveReduceLanguage', + ], + }, + }, + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveReduceLanguage', + ], + }, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/EphemeralStorageStudy.json5 b/studies/EphemeralStorageStudy.json5 new file mode 100644 index 00000000..2b1e6650 --- /dev/null +++ b/studies/EphemeralStorageStudy.json5 @@ -0,0 +1,81 @@ +[ + { + name: 'EphemeralStorageStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'EphemeralStorage', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'EphemeralStorage', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '89.1.21.73', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, + { + name: 'EphemeralStorageStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'EphemeralStorage', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'EphemeralStorage', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '89.1.21.73', + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/ExtensionsManifestV2Study.json5 b/studies/ExtensionsManifestV2Study.json5 new file mode 100644 index 00000000..4ca4b5be --- /dev/null +++ b/studies/ExtensionsManifestV2Study.json5 @@ -0,0 +1,32 @@ +[ + { + name: 'ExtensionsManifestV2Study', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'ExtensionsManifestV2', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '125.1.68.25', + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/ExtensionsManifestV2StudyRelease.json5 b/studies/ExtensionsManifestV2StudyRelease.json5 new file mode 100644 index 00000000..0dc3738b --- /dev/null +++ b/studies/ExtensionsManifestV2StudyRelease.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'ExtensionsManifestV2StudyRelease', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'ExtensionsManifestV2', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '125.1.68.25', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/HangWatcher.json5 b/studies/HangWatcher.json5 new file mode 100644 index 00000000..cf8d018e --- /dev/null +++ b/studies/HangWatcher.json5 @@ -0,0 +1,57 @@ +[ + { + name: 'HangWatcher', + experiment: [ + { + name: 'HangWatcherEnableDumps', + probability_weight: 50, + feature_association: { + enable_feature: [ + 'EnableHangWatcher', + ], + }, + param: [ + { + name: 'ui_thread_log_level', + value: '2', + }, + { + name: 'io_thread_log_level', + value: '2', + }, + { + name: 'renderer_process_main_thread_log_level', + value: '2', + }, + { + name: 'renderer_process_io_thread_log_level', + value: '2', + }, + { + name: 'utility_process_main_thread_log_level', + value: '2', + }, + { + name: 'utility_process_io_thread_log_level', + value: '2', + }, + ], + }, + { + name: 'Default', + probability_weight: 50, + }, + ], + filter: { + min_version: '97.1.36.14', + channel: [ + 'NIGHTLY', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/HeapProfilingMacKillSwitch.json5 b/studies/HeapProfilingMacKillSwitch.json5 new file mode 100644 index 00000000..a9754972 --- /dev/null +++ b/studies/HeapProfilingMacKillSwitch.json5 @@ -0,0 +1,28 @@ +[ + { + name: 'HeapProfilingMacKillSwitch', + experiment: [ + { + name: 'Disabled_EmergencyKillSwitch', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'HeapProfilerReporting', + ], + }, + }, + ], + filter: { + min_version: '122.*', + max_version: '125.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'MAC', + ], + }, + }, +] diff --git a/studies/InnerHTMLParserFastpathStudy.json5 b/studies/InnerHTMLParserFastpathStudy.json5 new file mode 100644 index 00000000..6ee1a353 --- /dev/null +++ b/studies/InnerHTMLParserFastpathStudy.json5 @@ -0,0 +1,34 @@ +[ + { + name: 'InnerHTMLParserFastpathStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'InnerHTMLParserFastpath', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + max_version: '114.1.52.999', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/MacCoreLocationBackendStudy.json5 b/studies/MacCoreLocationBackendStudy.json5 new file mode 100644 index 00000000..f2f18edc --- /dev/null +++ b/studies/MacCoreLocationBackendStudy.json5 @@ -0,0 +1,40 @@ +[ + { + name: 'MacCoreLocationBackendStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'MacCoreLocationBackend', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'MacCoreLocationBackend', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '91.1.26.74', + channel: [ + 'RELEASE', + 'BETA', + 'NIGHTLY', + ], + platform: [ + 'MAC', + ], + }, + }, +] diff --git a/studies/MetricsAndCrashSampling.json5 b/studies/MetricsAndCrashSampling.json5 new file mode 100644 index 00000000..69284658 --- /dev/null +++ b/studies/MetricsAndCrashSampling.json5 @@ -0,0 +1,30 @@ +[ + { + name: 'MetricsAndCrashSampling', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'MetricsReporting', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'ANDROID', + ], + }, + }, +] diff --git a/studies/ModuleFileNamePatchStudy.json5 b/studies/ModuleFileNamePatchStudy.json5 new file mode 100644 index 00000000..24b1bed8 --- /dev/null +++ b/studies/ModuleFileNamePatchStudy.json5 @@ -0,0 +1,30 @@ +[ + { + name: 'ModuleFileNamePatchStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'ModuleFileNamePatch', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '112.1.51.89', + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + ], + }, + }, +] diff --git a/studies/ModuleFileNamePatchStudyRelease.json5 b/studies/ModuleFileNamePatchStudyRelease.json5 new file mode 100644 index 00000000..941e0240 --- /dev/null +++ b/studies/ModuleFileNamePatchStudyRelease.json5 @@ -0,0 +1,29 @@ +[ + { + name: 'ModuleFileNamePatchStudyRelease', + experiment: [ + { + name: 'Enabled', + probability_weight: 15, + feature_association: { + enable_feature: [ + 'ModuleFileNamePatch', + ], + }, + }, + { + name: 'Default', + probability_weight: 85, + }, + ], + filter: { + min_version: '112.1.51.89', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + ], + }, + }, +] diff --git a/studies/NavigationThreadingOptimizationsCompatOldVersions.json5 b/studies/NavigationThreadingOptimizationsCompatOldVersions.json5 new file mode 100644 index 00000000..fed3af11 --- /dev/null +++ b/studies/NavigationThreadingOptimizationsCompatOldVersions.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'NavigationThreadingOptimizationsCompatOldVersions', + experiment: [ + { + name: 'Disabled', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'NavigationThreadingOptimizations', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + max_version: '102.1.39.0', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/NewiOSPlaylistUIStudy.json5 b/studies/NewiOSPlaylistUIStudy.json5 new file mode 100644 index 00000000..82d27114 --- /dev/null +++ b/studies/NewiOSPlaylistUIStudy.json5 @@ -0,0 +1,29 @@ +[ + { + name: 'NewiOSPlaylistUIStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'NewPlaylistUI', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'IOS', + ], + }, + }, +] diff --git a/studies/PartitionedCookies.json5 b/studies/PartitionedCookies.json5 new file mode 100644 index 00000000..3ef1b5a8 --- /dev/null +++ b/studies/PartitionedCookies.json5 @@ -0,0 +1,34 @@ +[ + { + name: 'PartitionedCookies', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'PartitionedCookies', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '122.1.63.0', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/PostFREFixMetricsAndCrashSampling.json5 b/studies/PostFREFixMetricsAndCrashSampling.json5 new file mode 100644 index 00000000..df97f75e --- /dev/null +++ b/studies/PostFREFixMetricsAndCrashSampling.json5 @@ -0,0 +1,30 @@ +[ + { + name: 'PostFREFixMetricsAndCrashSampling', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'PostFREFixMetricsReporting', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'ANDROID', + ], + }, + }, +] diff --git a/studies/PrettyPrintJSONDocument.json5 b/studies/PrettyPrintJSONDocument.json5 new file mode 100644 index 00000000..8405a13c --- /dev/null +++ b/studies/PrettyPrintJSONDocument.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'PrettyPrintJSONDocument', + experiment: [ + { + name: 'Disabled_EmergencyKillSwitch', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'PrettyPrintJSONDocument', + ], + }, + }, + ], + filter: { + min_version: '117.0.0.0', + max_version: '119.1.61.0', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/PrivateNetworkAccessKillswitch.json5 b/studies/PrivateNetworkAccessKillswitch.json5 new file mode 100644 index 00000000..1f539d11 --- /dev/null +++ b/studies/PrivateNetworkAccessKillswitch.json5 @@ -0,0 +1,32 @@ +[ + { + name: 'PrivateNetworkAccessKillswitch', + experiment: [ + { + name: 'Disabled_PrivateNetworkAccessKillSwitch', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'PrivateNetworkAccessForNavigations', + 'PrivateNetworkAccessForNavigationsWarningOnly', + ], + }, + }, + ], + filter: { + min_version: '123.*', + max_version: '125.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/RendererAllocatesImagesKillSwitch.json5 b/studies/RendererAllocatesImagesKillSwitch.json5 new file mode 100644 index 00000000..8b514ed8 --- /dev/null +++ b/studies/RendererAllocatesImagesKillSwitch.json5 @@ -0,0 +1,28 @@ +[ + { + name: 'RendererAllocatesImagesKillSwitch', + experiment: [ + { + name: 'Disabled_RendererAllocatesImages', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'RendererAllocatesImages', + ], + }, + }, + ], + filter: { + min_version: '122.*', + max_version: '124.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'MAC', + ], + }, + }, +] diff --git a/studies/SidebarEnabledStudy.json5 b/studies/SidebarEnabledStudy.json5 new file mode 100644 index 00000000..9be18c92 --- /dev/null +++ b/studies/SidebarEnabledStudy.json5 @@ -0,0 +1,43 @@ +[ + { + name: 'SidebarEnabledStudy', + experiment: [ + { + name: 'group_A', + probability_weight: 2, + feature_association: { + enable_feature: [ + 'SidebarShowAlwaysOnStable', + ], + }, + }, + { + name: 'group_B', + probability_weight: 2, + feature_association: { + enable_feature: [ + 'SidebarShowAlwaysOnStable', + ], + }, + param: [ + { + name: 'open_one_shot_leo_panel', + value: 'true', + }, + ], + }, + { + name: 'Default', + probability_weight: 96, + }, + ], + filter: { + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + ], + }, + }, +] diff --git a/studies/SmilAutoSuspendOnLagKillSwitch.json5 b/studies/SmilAutoSuspendOnLagKillSwitch.json5 new file mode 100644 index 00000000..5a2d7de1 --- /dev/null +++ b/studies/SmilAutoSuspendOnLagKillSwitch.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'SmilAutoSuspendOnLagKillSwitch', + experiment: [ + { + name: 'Disabled_EmergencyKillSwitch', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'SmilAutoSuspendOnLag', + ], + }, + }, + ], + filter: { + min_version: '118.*', + max_version: '120.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/Speedreader TTS.json5 b/studies/Speedreader TTS.json5 new file mode 100644 index 00000000..7bb072ea --- /dev/null +++ b/studies/Speedreader TTS.json5 @@ -0,0 +1,37 @@ +[ + { + name: 'Speedreader TTS', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'Speedreader', + ], + }, + param: [ + { + name: 'tts', + value: 'true', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + ], + }, + }, +] diff --git a/studies/UndecryptablePasswords.json5 b/studies/UndecryptablePasswords.json5 new file mode 100644 index 00000000..24267b24 --- /dev/null +++ b/studies/UndecryptablePasswords.json5 @@ -0,0 +1,33 @@ +[ + { + name: 'UndecryptablePasswords', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'SkipUndecryptablePasswords', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '127.1.68.107', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/UseWritePixelsYUV.json5 b/studies/UseWritePixelsYUV.json5 new file mode 100644 index 00000000..6bb457ec --- /dev/null +++ b/studies/UseWritePixelsYUV.json5 @@ -0,0 +1,31 @@ +[ + { + name: 'UseWritePixelsYUV', + experiment: [ + { + name: 'Disabled_UseWritePixelsYUV', + probability_weight: 100, + feature_association: { + disable_feature: [ + 'UseWritePixelsYUV', + ], + }, + }, + ], + filter: { + min_version: '123.*', + max_version: '125.*', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + 'ANDROID', + ], + }, + }, +] diff --git a/studies/UserActivityStudy.json5 b/studies/UserActivityStudy.json5 new file mode 100644 index 00000000..61948c38 --- /dev/null +++ b/studies/UserActivityStudy.json5 @@ -0,0 +1,51 @@ +[ + { + name: 'UserActivityStudy', + experiment: [ + { + name: 'Triggers', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'UserActivity', + ], + }, + param: [ + { + name: 'triggers', + value: '0D0B14110D0B14110D0B14110D0B1411=-1.0;0D0B1411070707=-1.0;07070707=-1.0;0B1512=0.5;0B1513=0.5;0B1514=0.5;06=1.0;04=0.5', + }, + { + name: 'time_window', + value: '1h', + }, + { + name: 'threshold', + value: '0.5', + }, + { + name: 'idle_time_threshold', + value: '5s', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '108.1.47.73', + channel: [ + 'NIGHTLY', + 'BETA', + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/WhatsNewStudy.json5 b/studies/WhatsNewStudy.json5 new file mode 100644 index 00000000..72b20d93 --- /dev/null +++ b/studies/WhatsNewStudy.json5 @@ -0,0 +1,32 @@ +[ + { + name: 'WhatsNewStudy', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + param: [ + { + name: 'target_major_version_stable', + value: '1.65', + }, + ], + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '119.1.60.114', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + 'MAC', + 'LINUX', + ], + }, + }, +] diff --git a/studies/WorkaroundNewWindowFlash.json5 b/studies/WorkaroundNewWindowFlash.json5 new file mode 100644 index 00000000..7d47f250 --- /dev/null +++ b/studies/WorkaroundNewWindowFlash.json5 @@ -0,0 +1,75 @@ +[ + { + name: 'WorkaroundNewWindowFlash', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveWorkaroundNewWindowFlash', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveWorkaroundNewWindowFlash', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '127.1.70.49', + channel: [ + 'NIGHTLY', + 'BETA', + ], + platform: [ + 'WINDOWS', + ], + }, + }, + { + name: 'WorkaroundNewWindowFlash', + experiment: [ + { + name: 'Enabled', + probability_weight: 100, + feature_association: { + enable_feature: [ + 'BraveWorkaroundNewWindowFlash', + ], + }, + }, + { + name: 'Disabled', + probability_weight: 0, + feature_association: { + disable_feature: [ + 'BraveWorkaroundNewWindowFlash', + ], + }, + }, + { + name: 'Default', + probability_weight: 0, + }, + ], + filter: { + min_version: '127.1.70.49', + channel: [ + 'RELEASE', + ], + platform: [ + 'WINDOWS', + ], + }, + }, +]