OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 syntax = "proto2"; | 5 syntax = "proto2"; |
6 | 6 |
7 option optimize_for = LITE_RUNTIME; | 7 option optimize_for = LITE_RUNTIME; |
8 | 8 |
9 package variations; | 9 package variations; |
10 | 10 |
(...skipping 26 matching lines...) Expand all Loading... | |
37 // Ex: PERMANENT | 37 // Ex: PERMANENT |
38 optional Consistency consistency = 7 [default = SESSION]; | 38 optional Consistency consistency = 7 [default = SESSION]; |
39 | 39 |
40 // Name of the experiment that gets the default experience. This experiment | 40 // Name of the experiment that gets the default experience. This experiment |
41 // must be included in the list below. | 41 // must be included in the list below. |
42 // Ex: "default" | 42 // Ex: "default" |
43 optional string default_experiment_name = 8; | 43 optional string default_experiment_name = 8; |
44 | 44 |
45 // An experiment within the study. | 45 // An experiment within the study. |
46 // | 46 // |
47 // Next tag: 11 | 47 // Next tag: 12 |
48 message Experiment { | 48 message Experiment { |
49 // A named parameter value for this experiment. | 49 // A named parameter value for this experiment. |
50 // | 50 // |
51 // Next tag: 3 | 51 // Next tag: 3 |
52 message Param { | 52 message Param { |
53 // The name of the parameter. | 53 // The name of the parameter. |
54 optional string name = 1; | 54 optional string name = 1; |
55 | 55 |
56 // The value of the parameter. | 56 // The value of the parameter. |
57 optional string value = 2; | 57 optional string value = 2; |
(...skipping 14 matching lines...) Expand all Loading... | |
72 // Optional id used to allow this experiment to trigger experimental | 72 // Optional id used to allow this experiment to trigger experimental |
73 // behavior on Google web properties. | 73 // behavior on Google web properties. |
74 optional uint64 google_web_trigger_experiment_id = 8; | 74 optional uint64 google_web_trigger_experiment_id = 8; |
75 | 75 |
76 // Optional id used to uniquely identify this experiment for Google Update. | 76 // Optional id used to uniquely identify this experiment for Google Update. |
77 optional uint64 google_update_experiment_id = 4; | 77 optional uint64 google_update_experiment_id = 4; |
78 | 78 |
79 // Optional id used to uniquely identify this experiment for Chrome Sync. | 79 // Optional id used to uniquely identify this experiment for Chrome Sync. |
80 optional uint64 chrome_sync_experiment_id = 10; | 80 optional uint64 chrome_sync_experiment_id = 10; |
81 | 81 |
82 // Specifies the feature association parameters for this experiment group. | |
83 // | |
84 // Next tag: 5 | |
85 message FeatureAssociation { | |
86 // Optional list of features to enable when this experiment is selected. | |
87 // Command-line overrides take precedence over this setting. No feature | |
88 // listed here should exist in the |disable_feature| list. | |
89 repeated string enable_feature = 1; | |
90 | |
91 // Optional list of features to disable when this experiment is selected. | |
92 // Command-line overrides take precedence over this setting. No feature | |
93 // listed here should exist in the |enable_feature| list. | |
94 repeated string disable_feature = 2; | |
95 | |
96 // Similar to |forcing_flag|, this is an optional name of a feature which | |
97 // will cause this experiment to be forced on, if that feature is enabled | |
98 // from the command-line. Experiment with this set are not eligible for | |
99 // selection via a random dice roll. | |
100 optional string forcing_feature_on = 3; | |
101 | |
102 // Similar to |forcing_flag|, this is an optional name of a feature which | |
103 // 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
| |
104 // disabled from the command-line. Experiment with this set are not | |
105 // eligible for selection via a random dice roll. | |
106 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 :)
| |
107 } | |
108 optional FeatureAssociation feature_association = 11; | |
109 | |
82 // Optional name of a Chrome flag that, when present, causes this experiment | 110 // Optional name of a Chrome flag that, when present, causes this experiment |
83 // to be forced. If the forcing_flag field is set, users will not be | 111 // to be forced. If the forcing_flag field is set, users will not be |
84 // assigned to this experiment unless that flag is present in Chrome's | 112 // assigned to this experiment unless that flag is present in Chrome's |
85 // command line. | 113 // command line. |
86 optional string forcing_flag = 5; | 114 optional string forcing_flag = 5; |
87 | 115 |
88 // Parameter values for this experiment. | 116 // Parameter values for this experiment. |
89 repeated Param param = 6; | 117 repeated Param param = 6; |
90 | 118 |
91 enum Type { | 119 enum Type { |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
253 // This is recommended for most studies that include client code. | 281 // This is recommended for most studies that include client code. |
254 ACTIVATION_EXPLICIT = 0; | 282 ACTIVATION_EXPLICIT = 0; |
255 // The study will be automatically activated when it is created. This | 283 // The study will be automatically activated when it is created. This |
256 // is recommended for studies that do not have any client logic. | 284 // is recommended for studies that do not have any client logic. |
257 ACTIVATION_AUTO = 1; | 285 ACTIVATION_AUTO = 1; |
258 } | 286 } |
259 | 287 |
260 // Activation type for this study. Defaults to ACTIVATION_EXPLICIT if omitted. | 288 // Activation type for this study. Defaults to ACTIVATION_EXPLICIT if omitted. |
261 optional ActivationType activation_type = 12; | 289 optional ActivationType activation_type = 12; |
262 } | 290 } |
OLD | NEW |