Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(55)

Unified Diff: components/variations/proto/study.proto

Issue 1306653004: Expand FeatureList to support FieldTrial association. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address Rob's comments. Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/variations/proto/study.proto
diff --git a/components/variations/proto/study.proto b/components/variations/proto/study.proto
index d86a36239b2b5818ce7ed40ddae34a3dc59bc77f..0e3c240406b9414942233d92aeef0ea39b2572b2 100644
--- a/components/variations/proto/study.proto
+++ b/components/variations/proto/study.proto
@@ -44,7 +44,7 @@ message Study {
// An experiment within the study.
//
- // Next tag: 11
+ // Next tag: 12
message Experiment {
// A named parameter value for this experiment.
//
@@ -79,6 +79,34 @@ message Study {
// Optional id used to uniquely identify this experiment for Chrome Sync.
optional uint64 chrome_sync_experiment_id = 10;
+ // Specifies the feature association parameters for this experiment group.
+ //
+ // Next tag: 5
+ message FeatureAssociation {
+ // Optional list of features to enable when this experiment is selected.
+ // Command-line overrides take precedence over this setting. No feature
+ // listed here should exist in the |disable_feature| list.
+ repeated string enable_feature = 1;
+
+ // Optional list of features to disable when this experiment is selected.
+ // Command-line overrides take precedence over this setting. No feature
+ // listed here should exist in the |enable_feature| list.
+ repeated string disable_feature = 2;
+
+ // Similar to |forcing_flag|, this is an optional name of a feature which
+ // will cause this experiment to be forced on, if that feature is enabled
+ // from the command-line. Experiment with this set are not eligible for
+ // selection via a random dice roll.
+ optional string forcing_feature_on = 3;
+
+ // Similar to |forcing_flag|, this is an optional name of a feature which
+ // will cause this experiment to be forced off, if that feature is
Ilya Sherman 2015/09/16 00:50:44 It's weird to say "will cause this experiment to b
Alexei Svitkine (slow) 2015/09/23 22:01:27 Good catch, you're right - the wording is incorrec
+ // disabled from the command-line. Experiment with this set are not
+ // eligible for selection via a random dice roll.
+ optional string forcing_feature_off = 4;
Ilya Sherman 2015/09/16 00:50:44 Am I understanding correctly that only one of forc
Ilya Sherman 2015/09/16 00:50:44 Am I understanding correctly that for a single exp
Alexei Svitkine (slow) 2015/09/23 22:01:27 I considered this approach earlier but didn't like
Alexei Svitkine (slow) 2015/09/23 22:01:27 Correct. The following are mutually exclusive: {f
Ilya Sherman 2015/09/24 01:11:32 Hmm. Any experiment that has a forcing_feature_on
Alexei Svitkine (slow) 2015/09/24 20:49:20 Again, I think that reduces flexibility. We've see
Ilya Sherman 2015/09/25 03:47:22 Well, the field could be repeated, if the concern
Alexei Svitkine (slow) 2015/09/25 03:56:51 Groups have other features though, such as associa
Ilya Sherman 2015/09/25 04:33:36 Alright, you've convinced me :)
+ }
+ optional FeatureAssociation feature_association = 11;
+
// Optional name of a Chrome flag that, when present, causes this experiment
// to be forced. If the forcing_flag field is set, users will not be
// assigned to this experiment unless that flag is present in Chrome's

Powered by Google App Engine
This is Rietveld 408576698