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
3 // found in the LICENSE file.
5 // Sync protocol datatype extension for experimental feature flags.
9 option optimize_for = LITE_RUNTIME;
10 option retain_unknown_fields = true;
14 // A flag to enable support for keystore encryption.
15 message KeystoreEncryptionFlags {
16 optional bool enabled = 1;
19 // Whether history delete directives are enabled.
20 message HistoryDeleteDirectives {
21 optional bool enabled = 1;
24 // Whether this client should cull (delete) expired autofill
25 // entries when autofill sync is enabled.
26 message AutofillCullingFlags {
27 optional bool enabled = 1;
30 // Whether the favicon sync datatypes are enabled, and what parameters
31 // they should operate under.
32 message FaviconSyncFlags {
33 optional bool enabled = 1;
34 optional int32 favicon_sync_limit = 2 [default = 200];
37 // Flags for enabling the experimental no-precommit GU feature.
38 message PreCommitUpdateAvoidanceFlags {
39 optional bool enabled = 1;
42 // Contains one flag or set of related flags. Each node of the experiments type
43 // will have a unique_client_tag identifying which flags it contains. By
44 // convention, the tag name should match the sub-message name.
45 message ExperimentsSpecifics {
46 optional KeystoreEncryptionFlags keystore_encryption = 1;
47 optional HistoryDeleteDirectives history_delete_directives = 2;
48 optional AutofillCullingFlags autofill_culling = 3;
49 optional FaviconSyncFlags favicon_sync = 4;
50 optional PreCommitUpdateAvoidanceFlags pre_commit_update_avoidance = 5;