<!--
Copyright 2023 The Chromium Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<!--
This file describes the enumerations referenced by entries in histograms.xml for
this directory. Some enums may instead be listed in the central enums.xml file
at src/tools/metrics/histograms/enums.xml when multiple files use them.
For best practices on writing enumerations descriptions, see
https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md#Enum-Histograms
Please follow the instructions in the OWNERS file in this directory to find a
reviewer. If no OWNERS file exists, please consider signing up at
go/reviewing-metrics (Googlers only), as all subdirectories are expected to
have an OWNERS file. As a last resort you can send the CL to
[email protected].
-->
<histogram-configuration>
<!-- Enum types -->
<enums>
<!-- LINT.IfChange(AdProtoDecompressionOutcome) -->
<enum name="AdProtoDecompressionOutcome">
<int value="0" label="Success"/>
<int value="1" label="Failure"/>
</enum>
<!-- LINT.ThenChange(//content/browser/interest_group/interest_group_storage.cc:AdProtoDecompressionOutcome) -->
<enum name="AutograntViaFedCmOutcome">
<int value="0" label="Allowed"/>
<int value="1" label="Denied by permissions policy"/>
<int value="2" label="Denied by permission"/>
<int value="3" label="Denied by preventSilentAccess"/>
</enum>
<enum name="BooleanInherited">
<int value="0" label="Not inherited"/>
<int value="1" label="Inherited"/>
</enum>
<enum name="ClearSiteDataParameters">
<int value="0" label="No valid types"/>
<int value="1" label="Cookies"/>
<int value="2" label="Storage"/>
<int value="3" label="Cookies and Storage"/>
<int value="4" label="Cache"/>
<int value="5" label="Cookies and Cache"/>
<int value="6" label="Storage and Cache"/>
<int value="7" label="Cookies, Storage, and Cache"/>
<int value="8" label="Storage buckets"/>
<int value="9" label="Storage buckets and Cookies"/>
<int value="10" label="Storage buckets and Storage"/>
<int value="11" label="Storage buckets, Cookies, and Storage"/>
<int value="12" label="Storage buckets and Cache"/>
<int value="13" label="Storage buckets, Cookies, and Cache"/>
<int value="14" label="Storage buckets, Storage, and Cache"/>
<int value="15" label="Storage buckets, Cookies, Storage, and Cache"/>
<int value="16" label="Client Hints"/>
<int value="17" label="Client Hints and Cookies"/>
<int value="18" label="Client Hints and Storage"/>
<int value="19" label="Client Hints, Cookies, and Storage"/>
<int value="20" label="Client Hints and Cache"/>
<int value="21" label="Client Hints, Cookies, and Cache"/>
<int value="22" label="Client Hints, Storage, and Cache"/>
<int value="23" label="Client Hints, Cookies, Storage, and Cache"/>
<int value="24" label="Client Hints and Storage buckets"/>
<int value="25" label="Client Hints, Storage buckets, and Cookies"/>
<int value="26" label="Client Hints, Storage buckets, and Storage"/>
<int value="27" label="Client Hints, Storage buckets, Cookies, and Storage"/>
<int value="28" label="Client Hints, Storage buckets, and Cache"/>
<int value="29" label="Client Hints, Storage buckets, Cookies and Cache"/>
<int value="30" label="Client Hints, Storage buckets, Storage and Cache"/>
<int value="31"
label="Client Hints, Storage buckets, Cookies, Storage, and Cache"/>
</enum>
<enum name="ClipboardFormatRead">
<int value="0" label="Text"/>
<int value="1" label="Html"/>
<int value="2" label="Rtf"/>
<int value="3" label="Image"/>
<int value="4" label="Bookmark"/>
<int value="5" label="Data"/>
<int value="6" label="CustomData"/>
<int value="7" label="WebSmartPaste"/>
<int value="8" label="Svg"/>
<int value="9" label="Filenames"/>
<int value="10" label="Png"/>
</enum>
<enum name="ClipboardFormatWrite">
<int value="0" label="Text"/>
<int value="1" label="Html"/>
<int value="2" label="Rtf"/>
<int value="3" label="Image"/>
<int value="4" label="Bookmark"/>
<int value="5" label="Data"/>
<int value="6" label="CustomData"/>
<int value="7" label="WebSmartPaste"/>
<int value="8" label="Svg"/>
<int value="9" label="Filenames"/>
</enum>
<enum name="FileReaderLoaderFailureType">
<int value="0" label="Mojo pipe creation failed"/>
<int value="1" label="Data incomplete after synchronous reading"/>
<int value="2" label="OnComplete never called after synchronous reading"/>
<int value="3"
label="Backend read error, see Storage.Blob.FileReaderLoader.ReadError"/>
<int value="4" label="The size read does not match the size reported"/>
<int value="5"
label="The data pipe is not readable and there are bytes left to read"/>
<int value="6" label="The data pipe closed early"/>
<int value="7" label="Data pipe reading failed with an unexpected error"/>
<int value="8" label="File reader client reporter a problem"/>
</enum>
<enum name="FileReaderLoaderMojoResult">
<int value="0" label="MOJO_RESULT_OK"/>
<int value="1" label="MOJO_RESULT_CANCELLED"/>
<int value="2" label="MOJO_RESULT_UNKNOWN"/>
<int value="3" label="MOJO_RESULT_INVALID_ARGUMENT"/>
<int value="4" label="MOJO_RESULT_DEADLINE_EXCEEDED"/>
<int value="5" label="MOJO_RESULT_NOT_FOUND"/>
<int value="6" label="MOJO_RESULT_ALREADY_EXISTS"/>
<int value="7" label="MOJO_RESULT_PERMISSION_DENIED"/>
<int value="8" label="MOJO_RESULT_RESOURCE_EXHAUSTED"/>
<int value="9" label="MOJO_RESULT_FAILED_PRECONDITION"/>
<int value="10" label="MOJO_RESULT_ABORTED"/>
<int value="11" label="MOJO_RESULT_OUT_OF_RANGE"/>
<int value="12" label="MOJO_RESULT_UNIMPLEMENTED"/>
<int value="13" label="MOJO_RESULT_INTERNAL"/>
<int value="14" label="MOJO_RESULT_UNAVAILABLE"/>
<int value="15" label="MOJO_RESULT_DATA_LOSS"/>
<int value="16" label="MOJO_RESULT_BUSY"/>
<int value="17" label="MOJO_RESULT_SHOULD_WAIT"/>
</enum>
<enum name="FileSystemAccessPermissionRequestOutcome">
<int value="0" label="Blocked by Content Setting"/>
<int value="1" label="Blocked from invalid frame"/>
<int value="2" label="Blocked for lack of user activation"/>
<int value="3" label="Blocked from third-party context"/>
<int value="4" label="Granted"/>
<int value="5" label="Denied by user"/>
<int value="6" label="Dismissed by user"/>
<int value="7" label="Request was aborted"/>
<int value="8" label="Granted by Content Setting"/>
<int value="9" label="Granted by persisted permission"/>
</enum>
<enum name="FileSystemAccessRestorePermissionPromptOutcome">
<int value="0" label="Allowed every time by user"/>
<int value="1" label="Allowed one time by user"/>
<int value="2" label="Ignored by user"/>
<int value="3" label="Rejected by user"/>
<int value="4" label="Dismissed by user"/>
</enum>
<enum name="FileSystemAccessWatchWithChangeInfoResult">
<int value="0" label="Successfully setup watch"/>
<int value="1" label="Linux, the OS inotify limit was reached"/>
<int value="2"
label="Windows, a fatal error occured when trying to open a file entry
to watch"/>
<int value="3"
label="Windows, reached the root directory and couldn't watch it"/>
<int value="4" label="Windows, error when calling CreateIoCompletionPort"/>
<int value="5" label="Windows, error when calling ReadDirectoryChangesW"/>
<int value="6" label="Mac, error when the resolved target path is empty"/>
<int value="7" label="Mac, error when starting the FSEvents event stream"/>
</enum>
<enum name="ImportantSitesReason">
<int value="0" label="Engagement"/>
<int value="1" label="Durable"/>
<int value="2" label="Bookmarks"/>
<int value="3" label="Home Screen"/>
<int value="4" label="Notifications"/>
</enum>
<!-- LINT.IfChange(InterestGroupStorageInitializationResult) -->
<enum name="InterestGroupStorageInitializationResult">
<int value="0" label="SuccessAlreadyCurrent"/>
<int value="1" label="SuccessUpgraded"/>
<int value="2" label="SuccessCreateSchema"/>
<int value="3" label="SuccessCreateSchemaAfterIncompatibleRaze"/>
<int value="4" label="SuccessCreateSchemaAfterNoMetaTableRaze"/>
<int value="5" label="FailedCreateInMemory"/>
<int value="6" label="FailedCreateDirectory"/>
<int value="7" label="FailedCreateFile"/>
<int value="8" label="FailedToRazeIncompatible"/>
<int value="9" label="FailedToRazeNoMetaTable"/>
<int value="10" label="FailedMetaTableInit"/>
<int value="11" label="FailedCreateSchema"/>
<int value="12" label="FailedCreateSchemaAfterIncompatibleRaze"/>
<int value="13" label="FailedCreateSchemaAfterNoMetaTableRaze"/>
<int value="14" label="FailedUpgradeDB"/>
</enum>
<!-- LINT.ThenChange(//content/browser/interest_group/interest_group_storage.cc:InterestGroupStorageInitializationResult) -->
<!-- LINT.IfChange(InterestGroupStorageJSONDeserializationResult) -->
<enum name="InterestGroupStorageJSONDeserializationResult">
<int value="0" label="Succeeded"/>
<int value="1" label="Failed"/>
</enum>
<!-- LINT.ThenChange(//content/browser/interest_group/interest_group_storage.cc:InterestGroupStorageJSONDeserializationResult) -->
<!-- LINT.IfChange(InterestGroupStorageJSONSerializationResult) -->
<enum name="InterestGroupStorageJSONSerializationResult">
<int value="0" label="Succeeded"/>
<int value="1" label="Failed"/>
</enum>
<!-- LINT.ThenChange(//content/browser/interest_group/interest_group_storage.cc:InterestGroupStorageJSONSerializationResult) -->
<!-- LINT.IfChange(InterestGroupStorageProtoDeserializationResult) -->
<enum name="InterestGroupStorageProtoDeserializationResult">
<int value="0" label="Succeeded"/>
<int value="1" label="Failed"/>
</enum>
<!-- LINT.ThenChange(//content/browser/interest_group/interest_group_storage.cc:InterestGroupStorageProtoDeserializationResult) -->
<!-- LINT.IfChange(InterestGroupStorageProtoSerializationResult) -->
<enum name="InterestGroupStorageProtoSerializationResult">
<int value="0" label="Succeeded"/>
<int value="1" label="Failed"/>
</enum>
<!-- LINT.ThenChange(//content/browser/interest_group/interest_group_storage.cc:InterestGroupStorageProtoSerializationResult) -->
<!-- LINT.IfChange(InterestGroupStorageVacuumResult) -->
<enum name="InterestGroupStorageVacuumResult">
<int value="0" label="Succeeded"/>
<int value="1" label="Failed"/>
</enum>
<!-- LINT.ThenChange(//content/browser/interest_group/interest_group_storage.cc:InterestGroupStorageVacuumResult) -->
<enum name="RequestStorageResult">
<int value="0" label="Approved due to existing storage access"/>
<int value="1" label="Approved with new grant"/>
<int value="2" label="Rejected with missing user gesture"/>
<int value="3" label="Rejected due to missing origin"/>
<int value="4" label="Rejected due to opaque origin"/>
<int value="5" label="Rejected due to existing denial"/>
<int value="6" label="Rejected due to missing sandbox token"/>
<int value="7" label="Rejected due to denied prompt"/>
<int value="8"
label="Rejected due to a call being made from an invalid context"/>
<int value="9" label="Rejected due to insecure context"/>
<int value="10" label="Approved due to being called from top-level frame"/>
<int value="11" label="Rejected due to credentialless iframe"/>
<int value="12" label="Approved with a new or existing grant"/>
<int value="13" label="Rejected due to fenced frame"/>
<int value="14" label="Rejected due to invalid origin"/>
</enum>
<enum name="SharedStorageHeaderObserverPermissionsPolicyDoubleCheckStatus">
<int value="0" label="SubresourceSourceNoRFH">
The RenderFrameHost was null, so no double check was run. Any previous
permissions policy checks were only done in the renderer, so this double
check was required, and hence any operations were dropped.
</int>
<int value="1" label="SubresourceSourceDefer">
The RenderFrameHost has not yet committed. Defer the operations until a
corresponding commit notification is received. If none is received, they
will be dropped when the RenderFrameHost dies.
</int>
<int value="2" label="SubresourceSourceOtherLifecycleState">
The RenderFrameHost's LifecycleState is neither PendingCommit nor Active. We
do not handle these cases as the PermissionsPolicy that we have access to
may not be correct. Any operations are dropped.
</int>
<int value="3" label="SubresourceSourceNoPolicy">
The RenderFrameHost was non-null, but it had a null PermissionsPolicy, so no
double check was run. Any previous PermissionsPolicy checks were done in the
renderer, so this double check was required, and hence any operations were
dropped.
</int>
<int value="4" label="NavigationSourceNoPolicy">
The parent PermissionPolicy for the navigating RenderFrameHost was null, so
no double check was run. The request source was an iframe navigation, which
already has a PermissionsPolicy check in the browser process, however, so
the double check was not required, and any operations were allowed to
proceed, pending a user profile check.
</int>
<int value="5" label="DisallowedMainFrameNavigation">
The request source was a main frame navigation, which is not supported, so
any operations were dropped.
</int>
<int value="6" label="Disabled">
The double check was run, and Shared Storage was reported as disabled for
the request's origin. Any operations were dropped.
</int>
<int value="7" label="Enabled">
The double check was run, and Shared Storage was reported as enabled for the
request's origin. Any operations were allowed to proceed, pending a user
profile check.
</int>
</enum>
<enum name="SharedStorageSelectUrlBudgetStatus">
<int value="0" label="SufficientBudget"/>
<int value="1" label="InsufficientSiteNavigationBudget"/>
<int value="2" label="InsufficientOverallPageloadBudget"/>
<int value="3" label="InsufficientSitePageloadBudget"/>
<int value="4" label="Other">
The budget was not checked or an error occurred.
</int>
</enum>
<enum name="SharedStorageWorkletDestroyedStatus">
<int value="0" label="DidNotEnterKeepAlive"/>
<int value="1" label="KeepAliveEndedDueToOperationsFinished"/>
<int value="2" label="KeepAliveEndedDueToTimeout"/>
<int value="3" label="Other">
Keep alive entered but reason for termination not given.
</int>
</enum>
<enum name="SharedStorageWorkletErrorType">
<int value="0" label="AddModuleWebVisible">
Errors in `addModule()` or `createWorklet()` visible to the document.
</int>
<int value="1" label="(Obsolete) AddModuleNonWebVisible">
Errors in `addModule()` not visible to the document.
</int>
<int value="2" label="RunWebVisible">
Errors in `run()` visible to the document.
</int>
<int value="3" label="(Obsolete) RunNonWebVisible">
Errors in `run()` not visible to the document.
</int>
<int value="4" label="SelectURLWebVisible">
Errors in `selectURL()` visible to the document.
</int>
<int value="5" label="(Obsolete) SelectURLNonWebVisible">
Errors in `selectURL()` not visible to the document.
</int>
<int value="6" label="Success"/>
<int value="7" label="AddModuleNonWebVisibleMulipleWorkletsDisabled">
Error in `addModule()` or `createWorklet()` not visible to the document:
browser received message from renderer trying to create multiple worklets
when "SharedStorageAPIM125" feature disabled.
</int>
<int value="8" label="AddModuleNonWebVisibleCrossOriginWorkletsDisabled">
Error in `addModule()` or `createWorklet()` not visible to the document:
browser received message from renderer trying to cross-origin worklet when
"SharedStorageAPIM125" feature disabled.
</int>
<int value="9"
label="kAddModuleNonWebVisibleCrossOriginSharedStorageDisabled">
Error in `addModule()` or `createWorklet()` not visible to the document:
cross-origin worklet cannot be created because shared storage is disabled
for the origin's site.
</int>
<int value="10" label="kAddModuleNonWebVisibleOther">
Other errors in `addModule()` or `createWorklet()` not visible to the
document.
</int>
<int value="11" label="RunNonWebVisibleInvalidContextId">
Error in `run()` not visible to the document: browser received message from
renderer with invalid context ID.
</int>
<int value="12" label="RunNonWebVisibleKeepAliveFalse">
Error in `run()` not visible to the document: browser received message from
renderer with keepAlive set to false.
</int>
<int value="13" label="RunNonWebVisibleCrossOriginSharedStorageDisabled">
Error in `run()` not visible to the document: cross-origin worklet operation
cannot be completed because shared storage is disabled for the origin's
site.
</int>
<int value="14" label="RunNonWebVisibleModuleScriptNotLoaded">
Error in `run()` not visible to the document: the module script hasn't been
loaded.
</int>
<int value="15" label="RunNonWebVisibleOperationNotFound">
Error in `run()` not visible to the document: cannot find operation name.
</int>
<int value="16" label="RunNonWebVisibleEmptyOperationDefinitionInstance">
Error in `run()` not visible to the document: the operation definition
instance was empty.
</int>
<int value="17" label="RunNonWebVisibleCannotDeserializeData">
Error in `run()` not visible to the document: cannot deserialize data.
</int>
<int value="18" label="RunNonWebVisibleEmptyScriptResult">
Error in `run()` not visible to the document: result of invoking script was
empty.
</int>
<int value="19" label="RunNonWebVisibleOther">
Other errors in `run()` not visible to the document.
</int>
<int value="20" label="SelectURLNonWebVisibleInvalidURLArrayLength">
Error in `selectURL()` not visible to the document: browser received message
from renderer with an invalid URL array length.
</int>
<int value="21" label="SelectURLNonWebVisibleInvalidFencedFrameURL">
Error in `selectURL()` not visible to the document: browser received message
from renderer with an invalid fenced frame URL.
</int>
<int value="22" label="SelectURLNonWebVisibleInvalidReportingURL">
Error in `selectURL()` not visible to the document: browser received message
from renderer with an invalid reporting URL.
</int>
<int value="23" label="SelectURLNonWebVisibleInvalidContextId">
Error in `selectURL()` not visible to the document: browser received message
from renderer with invalid context ID.
</int>
<int value="24" label="SelectURLNonWebVisibleKeepAliveFalse">
Error in `selectURL()` not visible to the document: browser received message
from renderer with keepAlive set to false.
</int>
<int value="25"
label="SelectURLNonWebVisibleCrossOriginSharedStorageDisabled">
Error in `selectURL()` not visible to the document: cross-origin worklet
operation cannot be completed because shared storage is disabled for the
origin's site.
</int>
<int value="26" label="SelectURLNonWebVisibleModuleScriptNotLoaded">
Error in `selectURL()` not visible to the document: the module script hasn't
been loaded.
</int>
<int value="27" label="SelectURLNonWebVisibleOperationNotFound">
Error in `selectURL()` not visible to the document: cannot find operation
name.
</int>
<int value="28"
label="SelectURLNonWebVisibleEmptyOperationDefinitionInstance">
Error in `selectURL()` not visible to the document: the operation definition
instance was empty.
</int>
<int value="29" label="SelectURLNonWebVisibleCannotDeserializeData">
Error in `selectURL()` not visible to the document: cannot deserialize data.
</int>
<int value="30" label="SelectURLNonWebVisibleEmptyScriptResult">
Error in `selectURL()` not visible to the document: result of invoking
script was empty.
</int>
<int value="31" label="SelectURLNonWebVisibleReturnValueToInt">
Error in `selectURL()` not visible to the document: promise did not resolve
to an uint32 number.
</int>
<int value="32" label="SelectURLNonWebVisibleReturnValueOutOfRange">
Error in `selectURL()` not visible to the document: promise resolved to a
number outside the length of the input urls.
</int>
<int value="33" label="SelectURLNonWebVisibleUnexpectedIndexReturned">
Error in `selectURL()` not visible to the document: browser received message
from renderer with unexpected index number returned.
</int>
<int value="34" label="SelectURLNonWebVisibleInsufficientBudget">
Error in `selectURL()` not visible to the document: insufficient budget.
</int>
<int value="35" label="SelectURLNonWebVisibleOther">
Other errors in `selectURL()` not visible to the document.
</int>
<int value="36" label="RunNonWebVisibleInvalidFilteringIdMaxBytes">
Error in `run()` not visible to the document: browser received message from
renderer with invalid filtering ID byte size.
</int>
<int value="37" label="SelectURLNonWebVisibleInvalidFilteringIdMaxBytes">
Error in `selectURL()` not visible to the document: browser received message
from renderer with invalid filtering ID byte size.
</int>
</enum>
<enum name="SqlRecoveryResult">
<summary>
Outcome of attempting to recover a database with sql::Recovery. See
sql::Recovery::Result for descriptions.
</summary>
<int value="0" label="kUnknown"/>
<int value="1" label="kSuccess"/>
<int value="2" label="kFailedRecoveryInit"/>
<int value="3" label="kFailedRecoveryRun"/>
<int value="4" label="kFailedToOpenRecoveredDatabase"/>
<int value="5" label="kFailedMetaTableDoesNotExist"/>
<int value="6" label="kFailedMetaTableInit"/>
<int value="7" label="kFailedMetaTableVersionWasInvalid"/>
<int value="8" label="kFailedBackupInit"/>
<int value="9" label="kFailedBackupRun"/>
</enum>
<enum name="StorageAccessAPIRequestOutcome">
<summary>
Possible outcomes of a Storage Access API permission request.
</summary>
<int value="0" label="Granted by First-Party Set"/>
<int value="1" label="Granted by implicit grant allowance"/>
<int value="2" label="Granted by user"/>
<int value="3" label="Denied by First-Party Set"/>
<int value="4" label="Denied by user"/>
<int value="5"
label="Denied by missing prerequisite (user gesture, feature enabled)"/>
<int value="6" label="Dismissed by user"/>
<int value="7" label="Reused previous decision (made by user)"/>
<int value="8" label="Denied by top-level user interaction heuristic"/>
<int value="9" label="Access was allowed through cookie settings"/>
<int value="10" label="Reused implicit grant (e.g. from First-Party-Sets)"/>
<int value="11" label="Access was denied through cookie settings"/>
<int value="12"
label="Allowed by requesting origin and embedding origin being
same-site"/>
<int value="13"
label="Denied due to an abort by browser (e.g. RenderFrameHost was
deleted)"/>
<int value="14" label="Allowed by FedCM connection"/>
</enum>
<enum name="StorageAccessResult">
<int value="0" label="Storage access blocked"/>
<int value="1" label="Storage access allowed"/>
<int value="2" label="Access grant used to allow access"/>
<int value="3"
label="Storage access allowed by force-allowed third-party-cookies
(deprecated)"/>
<int value="4"
label="Storage access allowed by the top-level version of the API"/>
<int value="5" label="Storage access allowed by 3PCD setting"/>
<int value="6"
label="Storage access allowed by 3PCD metadata grants content settings"/>
<int value="7" label="Temporary storage access allowed by 3PCD heuristics"/>
<int value="8" label="Storage access allowed due to CORS opt in"/>
<int value="9" label="Storage access allowed by top-level 3PCD setting"/>
</enum>
<enum name="StorageBucketDurabilityParameter">
<int value="0" label="Not provided"/>
<int value="1" label="Relaxed"/>
<int value="2" label="Strict"/>
</enum>
<enum name="StorageBucketPersistedParameter">
<int value="0" label="Not provided"/>
<int value="1" label="Not persisted"/>
<int value="2" label="Persisted"/>
</enum>
<enum name="StoragePressureBubbleUserAction">
<int value="0" label="The bubble was shown."/>
<int value="1" label="The user ignored the bubble."/>
<int value="2" label="The user clicked on the positive button."/>
</enum>
<enum name="SyncFileSystemNotificationSource">
<int value="0" label="XMPP"/>
<int value="1" label="Polling"/>
</enum>
<enum name="SyncFileSystemSyncAction">
<int value="0" label="None"/>
<int value="1" label="Added"/>
<int value="2" label="Updated"/>
<int value="3" label="Deleted"/>
</enum>
<enum name="TopLevelStorageAccessRequestOutcome">
<summary>
Possible outcomes of a Top-Level Storage Access API permission request.
</summary>
<int value="0" label="Granted by First-Party Set"/>
<int value="1" label="(Obsolete) Granted by implicit grant allowance"/>
<int value="2" label="(Obsolete) Granted by user"/>
<int value="3" label="Denied by First-Party Set"/>
<int value="4" label="(Obsolete) Denied by user"/>
<int value="5"
label="Denied by missing prerequisite (user gesture, feature enabled)"/>
<int value="6" label="(Obsolete) Dismissed by user"/>
<int value="7" label="(Obsolete) Reused previous decision (made by user)"/>
<int value="8" label="Access was denied through cookie settings"/>
</enum>
</enums>
</histogram-configuration>