Add a new multi-value VALUE_TYPE for about://flags that allows to override a variation parameter. |
|||||||||||
Issue descriptionFeature description: Add a new multi-value type for about://flags that integrates well with finch variation parameters. The pre-set value is selected by a finch experiment. Nevertheless, the user can easily change the value for herself in about://flags. This way, one code supports well - early feedback (by being easily configurable) as well as - later stage A:B experiments, etc. (via variations parameters).
,
May 4 2016
,
May 4 2016
,
May 20 2016
Hope to start next week.
,
May 27 2016
I did the first thoughts and discussions for this bug this week. Hope to get to coding next week.
,
Jun 3 2016
After the discussions, the plan is to have a new FEATURE_WITH_VARIATIONS_VALUE type. This enables to switch a feature on and off. When it is on, one can pick from a predefined list of combinations of parameters to configure this feature. I am pretty far in the first implementation, hope to land it next week.
,
Jun 6 2016
,
Jun 10 2016
The CL is in code review. Really want to land it next week.
,
Jun 13 2016
,
Jun 13 2016
Adjusting priority because this blocks Issue 606320
,
Jun 17 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1383d1d3c2b2696f18e2af907915fbd3da5602bd commit 1383d1d3c2b2696f18e2af907915fbd3da5602bd Author: jkrcal <jkrcal@chromium.org> Date: Fri Jun 17 12:40:56 2016 Allow overriding variation parameter via chrome://flags. Introduces a new type of FeatureEntry - FEATURE_WITH_VARIATIONS_VALUE which allows the user for a given feature to choose among predefined variations of its parameters. When defining such a feature type (using the FEATURE_WITH_VARIATIONS_VALUE_TYPE macro), one also needs to specify the trial name to which the feature belongs. A new experiment group called "AboutFlags" is selected for the trial and the parameters are associated with this group. The precedence is as follows (params for a trial are associated from the first source where they appear): command-line params (--force-fieldtrial-params=...) about:flags (added by this CL) field trial testing config server config A minor refactoring change: In FeatureEntry, renames the notion "choice" to "option" to make it clear it denotes more than just instances of the Choice struct. It has been the case before; now it is even more overloaded covering also FeatureVariations. Added a few functions to make the code less dependent on how we order the options in the UI. BUG= 609059 Review-Url: https://codereview.chromium.org/2036193002 Cr-Commit-Position: refs/heads/master@{#400416} [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/chrome/browser/about_flags.cc [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/chrome/browser/about_flags.h [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/chrome/browser/about_flags_unittest.cc [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/chrome/browser/chrome_browser_main.cc [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/BUILD.gn [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/DEPS [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/feature_entry.cc [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/feature_entry.h [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/feature_entry_macros.h [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/flags_state.cc [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/flags_state.h [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/flags_state_unittest.cc [modify] https://crrev.com/1383d1d3c2b2696f18e2af907915fbd3da5602bd/components/flags_ui/resources/flags.html
,
Jun 20 2016
,
Jun 20 2016
The required code change has landed. There are some smaller follow-up tasks but the feature is ready to be exploited by 606320.
,
Jul 13 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/05f7ce3363a189c35495863316bb8c1aed91b8c8 commit 05f7ce3363a189c35495863316bb8c1aed91b8c8 Author: jkrcal <jkrcal@chromium.org> Date: Wed Jul 13 16:42:09 2016 Clean-up the code for default variations in chrome://flags. The CL 2129543002 introduced an option to override variation parameters using a feature in chrome://flags. The list of options for the given feature always includes "Default", "Enabled", and "Disabled". Even though the semantics of "Enabled" was meant as 'enabled with the default parameter values', the API forced to specify the variation for "Enabled" as well. This is unnecessarily cumbersome and confusing. This CL makes the "Enabled" option completely automatic - no need to specify its variation any more. BUG= 609059 Review-Url: https://codereview.chromium.org/2146903002 Cr-Commit-Position: refs/heads/master@{#405190} [modify] https://crrev.com/05f7ce3363a189c35495863316bb8c1aed91b8c8/chrome/browser/about_flags.cc [modify] https://crrev.com/05f7ce3363a189c35495863316bb8c1aed91b8c8/components/flags_ui/feature_entry.cc [modify] https://crrev.com/05f7ce3363a189c35495863316bb8c1aed91b8c8/components/flags_ui/feature_entry.h [modify] https://crrev.com/05f7ce3363a189c35495863316bb8c1aed91b8c8/components/flags_ui/feature_entry_macros.h [modify] https://crrev.com/05f7ce3363a189c35495863316bb8c1aed91b8c8/components/flags_ui/flags_state.cc [modify] https://crrev.com/05f7ce3363a189c35495863316bb8c1aed91b8c8/components/flags_ui/flags_state_unittest.cc |
|||||||||||
►
Sign in to add a comment |
|||||||||||
Comment 1 by jkrcal@chromium.org
, May 4 2016