Replace shiled_id with experiments for activity-stream and messaging-system

This commit is contained in:
Nan Jiang 2020-03-24 15:34:10 -04:00 коммит произвёл Jeff Klukas
Родитель 033ba4c9ff
Коммит 7e1786b5b2
25 изменённых файлов: 261 добавлений и 20 удалений

Просмотреть файл

@ -20,6 +20,18 @@
"description": "An event identifier", "description": "An event identifier",
"type": "string" "type": "string"
}, },
"experiments": {
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"type": "object"
},
"locale": { "locale": {
"type": "string" "type": "string"
}, },
@ -50,7 +62,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"source": { "source": {

Просмотреть файл

@ -12,6 +12,18 @@
"description": "A 0-based index to record which tile in the 'tiles' list the user just interacted with", "description": "A 0-based index to record which tile in the 'tiles' list the user just interacted with",
"type": "integer" "type": "integer"
}, },
"experiments": {
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"type": "object"
},
"impression_id": { "impression_id": {
"description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id", "description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id",
"pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$", "pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$",
@ -50,7 +62,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"source": { "source": {

Просмотреть файл

@ -8,6 +8,18 @@
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$",
"type": "string" "type": "string"
}, },
"experiments": {
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"type": "object"
},
"locale": { "locale": {
"type": "string" "type": "string"
}, },
@ -112,7 +124,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"user_prefs": { "user_prefs": {

Просмотреть файл

@ -4,6 +4,18 @@
"addon_version": { "addon_version": {
"type": "string" "type": "string"
}, },
"experiments": {
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"type": "object"
},
"impression_id": { "impression_id": {
"description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id", "description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id",
"pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$", "pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$",
@ -16,7 +28,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"spoc_fills": { "spoc_fills": {

Просмотреть файл

@ -43,6 +43,18 @@
"description": "A string that describes the context about this event", "description": "A string that describes the context about this event",
"type": "string" "type": "string"
}, },
"experiments": {
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"type": "object"
},
"impression_id": { "impression_id": {
"description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id", "description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id",
"pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$", "pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$",
@ -61,7 +73,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"version": { "version": {

Просмотреть файл

@ -20,6 +20,18 @@
"description": "A string that describes the context about this event", "description": "A string that describes the context about this event",
"type": "string" "type": "string"
}, },
"experiments": {
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"type": "object"
},
"locale": { "locale": {
"type": "string" "type": "string"
}, },
@ -33,7 +45,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"version": { "version": {

Просмотреть файл

@ -16,6 +16,18 @@
"description": "A string that describes the context about this event", "description": "A string that describes the context about this event",
"type": "string" "type": "string"
}, },
"experiments": {
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"type": "object"
},
"locale": { "locale": {
"type": "string" "type": "string"
}, },
@ -29,7 +41,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"version": { "version": {

Просмотреть файл

@ -12,6 +12,18 @@
"description": "A string that describes the context about this event", "description": "A string that describes the context about this event",
"type": "string" "type": "string"
}, },
"experiments": {
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"type": "object"
},
"impression_id": { "impression_id": {
"description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id", "description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id",
"pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$", "pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$",
@ -30,7 +42,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"version": { "version": {

Просмотреть файл

@ -9,8 +9,9 @@
}, },
@ACTIVITY-STREAM_SESSIONID_1_JSON@, @ACTIVITY-STREAM_SESSIONID_1_JSON@,
@ACTIVITY-STREAM_PAGE_1_JSON@, @ACTIVITY-STREAM_PAGE_1_JSON@,
@ACTIVITY-STREAM_EXPERIMENTS_1_JSON@,
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"event": { "event": {

Просмотреть файл

@ -5,8 +5,9 @@
"properties": { "properties": {
@ACTIVITY-STREAM_IMPRESSIONID_1_JSON@, @ACTIVITY-STREAM_IMPRESSIONID_1_JSON@,
@ACTIVITY-STREAM_PAGE_1_JSON@, @ACTIVITY-STREAM_PAGE_1_JSON@,
@ACTIVITY-STREAM_EXPERIMENTS_1_JSON@,
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"addon_version": { "addon_version": {

Просмотреть файл

@ -8,11 +8,12 @@
@COMMON_PATTERN_UUID_1_JSON@ @COMMON_PATTERN_UUID_1_JSON@
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
@ACTIVITY-STREAM_SESSIONID_1_JSON@, @ACTIVITY-STREAM_SESSIONID_1_JSON@,
@ACTIVITY-STREAM_PAGE_1_JSON@, @ACTIVITY-STREAM_PAGE_1_JSON@,
@ACTIVITY-STREAM_EXPERIMENTS_1_JSON@,
"addon_version": { "addon_version": {
"type": "string" "type": "string"
}, },

Просмотреть файл

@ -4,6 +4,7 @@
"title": "spoc-fills", "title": "spoc-fills",
"properties": { "properties": {
@ACTIVITY-STREAM_IMPRESSIONID_1_JSON@, @ACTIVITY-STREAM_IMPRESSIONID_1_JSON@,
@ACTIVITY-STREAM_EXPERIMENTS_1_JSON@,
"locale": { "locale": {
"type": "string" "type": "string"
}, },
@ -14,7 +15,7 @@
"type": "string" "type": "string"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"release_channel": { "release_channel": {

Просмотреть файл

@ -0,0 +1,12 @@
"experiments": {
"description": "An object to record all active experiments, experiments IDs are stored as keys, and the value object stores the branch information. Example: {\"experiment_1\": {\"branch\": \"control\"}, \"experiment_2\": {\"branch\": \"treatment\"}}. This deprecates the \"shield_id\" used in activity-stream and messaging-system.",
"additionalProperties": {
"properties": {
"branch": {
"type": "string"
}
},
"type": "object"
},
"type": "object"
}

Просмотреть файл

@ -3,6 +3,7 @@
"type": "object", "type": "object",
"title": "cfr", "title": "cfr",
"properties": { "properties": {
@ACTIVITY-STREAM_EXPERIMENTS_1_JSON@,
"client_id": { "client_id": {
"type": "string", "type": "string",
@COMMON_PATTERN_UUID_1_JSON@ @COMMON_PATTERN_UUID_1_JSON@
@ -13,7 +14,7 @@
"pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$" "pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"event": { "event": {

Просмотреть файл

@ -3,12 +3,13 @@
"type": "object", "type": "object",
"title": "onboarding", "title": "onboarding",
"properties": { "properties": {
@ACTIVITY-STREAM_EXPERIMENTS_1_JSON@,
"client_id": { "client_id": {
"type": "string", "type": "string",
@COMMON_PATTERN_UUID_1_JSON@ @COMMON_PATTERN_UUID_1_JSON@
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"event": { "event": {

Просмотреть файл

@ -3,12 +3,13 @@
"type": "object", "type": "object",
"title": "snippets", "title": "snippets",
"properties": { "properties": {
@ACTIVITY-STREAM_EXPERIMENTS_1_JSON@,
"client_id": { "client_id": {
"type": "string", "type": "string",
@COMMON_PATTERN_UUID_1_JSON@ @COMMON_PATTERN_UUID_1_JSON@
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"event": { "event": {

Просмотреть файл

@ -3,13 +3,14 @@
"type": "object", "type": "object",
"title": "undesired-events", "title": "undesired-events",
"properties": { "properties": {
@ACTIVITY-STREAM_EXPERIMENTS_1_JSON@,
"impression_id": { "impression_id": {
"description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id", "description": "A UUID representing this user. Note that it's not client_id, nor can it be used to link to a client_id",
"type": "string", "type": "string",
"pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$" "pattern": "^\\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\}$"
}, },
"shield_id": { "shield_id": {
"description": "A semicolon separated string to store a list of Shield study IDs", "description": "[DEPRECATED]: use `experiments` instead. A semicolon separated string to store a list of Shield study IDs",
"type": "string" "type": "string"
}, },
"event": { "event": {

Просмотреть файл

@ -0,0 +1,24 @@
{
"locale": "en-US",
"client_id": "4dd69e99-07e7-c040-a514-ccde0cfd4881",
"version": "72.0a1",
"release_channel": "nightly",
"addon_version": "20191119043902",
"user_prefs": 255,
"session_id": "{3e3fce7a-d015-7d44-9404-3547a600a9ec}",
"page": "about:newtab",
"event": "CLICK",
"source": "TOP_SITES",
"action_position": 0,
"value": "{\"icon_type\": \"rich_icon\"}",
"profile_creation_date": 16587,
"region": "CA",
"experiments": {
"exp_id_foo": {
"branch": "control"
},
"exp_id_bar": {
"branch": "treatment"
}
}
}

Просмотреть файл

@ -0,0 +1,31 @@
{
"action": "activity_stream_impression_stats",
"client_id": "n/a",
"session_id": "n/a",
"locale": "en-US",
"topic": "activity-stream",
"version": "65.0a1",
"release_channel": "nightly",
"addon_version": "20181206092619",
"user_prefs": 63,
"page": "about:newtab",
"source": "TOP_STORIES",
"click": 0,
"tiles": [
{
"id": 30001,
"pos": 0
}
],
"impression_id": "{94642acb-4996-034b-916c-147da723cc41}",
"profile_creation_date": 17817,
"region": "US",
"experiments": {
"exp_id_foo": {
"branch": "control"
},
"exp_id_bar": {
"branch": "treatment"
}
}
}

Просмотреть файл

@ -8,7 +8,6 @@
"session_id": "{3e3fce7a-d015-7d44-9404-3547a600a9ec}", "session_id": "{3e3fce7a-d015-7d44-9404-3547a600a9ec}",
"page": "about:home", "page": "about:home",
"profile_creation_date": 16587, "profile_creation_date": 16587,
"shield_id": "activity-stream-shield-study-bug-1238122",
"session_duration": 7000, "session_duration": 7000,
"perf": { "perf": {
"load_trigger_type": "first_window_opened", "load_trigger_type": "first_window_opened",
@ -28,5 +27,13 @@
"topsites_data_late_by_ms": 197, "topsites_data_late_by_ms": 197,
"highlights_data_late_by_ms": 241, "highlights_data_late_by_ms": 241,
"topsites_first_painted_ts": 1578946834726 "topsites_first_painted_ts": 1578946834726
},
"experiments": {
"exp_id_foo": {
"branch": "control"
},
"exp_id_bar": {
"branch": "treatment"
}
} }
} }

Просмотреть файл

@ -55,5 +55,13 @@
"reason": "flight_duplicate", "reason": "flight_duplicate",
"full_recalc": 0 "full_recalc": 0
} }
] ],
"experiments": {
"exp_id_foo": {
"branch": "control"
},
"exp_id_bar": {
"branch": "treatment"
}
}
} }

Просмотреть файл

@ -0,0 +1,20 @@
{
"impression_id": "{94642acb-4996-034b-916c-147da723cc41}",
"event": "IMPRESSION",
"value": "n/a",
"message_id": "n/a",
"bucket_id": "CFR_M1",
"locale": "en-US",
"version": "71.0a1",
"release_channel": "nightly",
"addon_version": "20181206092619",
"profile_creation_date": 17817,
"experiments": {
"exp_id_foo": {
"branch": "control"
},
"exp_id_bar": {
"branch": "treatment"
}
}
}

Просмотреть файл

@ -0,0 +1,19 @@
{
"client_id": "94642acb-4996-034b-916c-147da723cc41",
"event": "IMPRESSION",
"event_context": "n/a",
"message_id": "12345",
"locale": "en-US",
"version": "71.0a1",
"release_channel": "nightly",
"addon_version": "20181206092619",
"profile_creation_date": 17817,
"experiments": {
"exp_id_foo": {
"branch": "control"
},
"exp_id_bar": {
"branch": "treatment"
}
}
}

Просмотреть файл

@ -7,5 +7,13 @@
"version": "71.0a1", "version": "71.0a1",
"release_channel": "nightly", "release_channel": "nightly",
"addon_version": "20181206092619", "addon_version": "20181206092619",
"profile_creation_date": 17817 "profile_creation_date": 17817,
"experiments": {
"exp_id_foo": {
"branch": "control"
},
"exp_id_bar": {
"branch": "treatment"
}
}
} }

Просмотреть файл

@ -5,5 +5,13 @@
"version": "71.0a1", "version": "71.0a1",
"release_channel": "nightly", "release_channel": "nightly",
"addon_version": "20181206092619", "addon_version": "20181206092619",
"profile_creation_date": 17817 "profile_creation_date": 17817,
"experiments": {
"exp_id_foo": {
"branch": "control"
},
"exp_id_bar": {
"branch": "treatment"
}
}
} }