The Chrome code follows a now outdated pattern where the group name (e.g. from base::FieldTrialList::FindFullName("MarkNonSecureAs")) is used as a literal that controls what behavior to use.
This has bit us a number times in assorted places (e.g. with Test configuration; also, Dogfood Finch trial names are supposed to end in _Dogfood, and ours cannot because we do exact string matches. Changing the Chrome code to compare against experiment name prefixes was the old way of having a more flexible study setup.
Replacement: Feature api (go/feature-api) is one route.
Most likely key/value params (go/finch-params) is the way to go, as it provides us with deeper control over experiments beyond just turning things on and off.
Comment 1 by est...@chromium.org
, Nov 10 2017