chromium/tools/metrics/histograms/metadata/page/enums.xml

<!--
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>

<enum name="AdUserActivationStatus">
  <int value="0" label="No activation"/>
  <int value="1" label="Received activation"/>
</enum>

<enum name="CookieReadStatus">
  <int value="0" label="kNone"/>
  <int value="1" label="kNotOnboardedAllowed"/>
  <int value="2" label="kNotOnboardedBlocked"/>
  <int value="3" label="kNotOnboardedAllowedAd"/>
  <int value="4" label="kNotOnboardedBlockedAd"/>
  <int value="5" label="kAllowed"/>
  <int value="6" label="kAllowedAd"/>
  <int value="7" label="kAllowedOther"/>
  <int value="8" label="kAllowedOtherAd"/>
  <int value="9" label="kAllowedHeuristics"/>
  <int value="10" label="kAllowedHeuristicsAd"/>
  <int value="11" label="kAllowedMetadataGrant"/>
  <int value="12" label="kAllowedMetadataGrantAd"/>
  <int value="13" label="kAllowedTrial"/>
  <int value="14" label="kAllowedTrialAd"/>
  <int value="15" label="kAllowedTopLevelTrial"/>
  <int value="16" label="kAllowedTopLevelTrialAd"/>
  <int value="17" label="kBlocked"/>
  <int value="18" label="kBlockedAd"/>
  <int value="19" label="kBlockedOtherAd"/>
  <int value="20" label="kBlockedSkippedHeuristicsAd"/>
  <int value="21" label="kBlockedSkippedMetadataGrantAd"/>
  <int value="22" label="kBlockedSkippedTrialAd"/>
  <int value="23" label="kBlockedSkippedTopLevelTrialAd"/>
</enum>

<enum name="CrossOriginAdStatus">
  <int value="0" label="Ad Origin indeterminable"/>
  <int value="1" label="Main Frame Origin same as Ad"/>
  <int value="2" label="Main Frame Origin differs from Ad"/>
</enum>

<enum name="CrossOriginCreativeStatus">
  <int value="0" label="Ad Creative Origin indeterminable"/>
  <int value="1" label="Main Frame Origin same as Ad Creative"/>
  <int value="2" label="Main Frame Origin differs from Ad Creative"/>
</enum>

<enum name="CrossOriginCreativeStatusWithThrottling">
  <int value="0" label="Ad Creative Origin Unknown and Ad Not Throttled"/>
  <int value="1" label="Ad Creative Origin Unknown and Ad Throttled"/>
  <int value="2"
      label="Ad Creative Origin Same as Main Frame and Ad Not Throttled"/>
  <int value="3"
      label="Ad Creative Origin Differs from Main Frame and Ad Not Throttled"/>
</enum>

<enum name="HeavyAdStatus2">
  <int value="0" label="Not heavy"/>
  <int value="1" label="Network">
    The ad exceeded the network threshold for the Heavy Ad Intervention.
  </int>
  <int value="2" label="Total CPU">
    The ad exceeded the total CPU usage threshold for the Heavy Ad Intervention.
  </int>
  <int value="3" label="Peak CPU">
    The ad exceeded the peak CPU usage threshold for the Heavy Ad Intervention.
  </int>
</enum>

<enum name="InternalErrorLoadEvent">
  <summary>Internal Errors in the page_load_metrics system</summary>
  <int value="0" label="Invalid timing IPC sent from renderer (deprecated)"/>
  <int value="1"
      label="IPC received while not tracking a relevant committed load"/>
  <int value="2" label="IPC received from a frame we navigated away from"/>
  <int value="3" label="IPC received from a bad URL scheme"/>
  <int value="4" label="No IPCs received for this navigation"/>
  <int value="5" label="Page end reported before navigation start"/>
  <int value="6"
      label="Multiple aborted provisional loads at navigation start"/>
  <int value="7"
      label="User input received while not tracking a relevant committed load
             (deprecated)"/>
  <int value="8" label="Inter process TimeTicks skew"/>
  <int value="9" label="No commit or failed provisional load received"/>
  <int value="10" label="No page load end time recorded"/>
  <int value="11" label="Timing IPC received from subframe (deprecated)"/>
  <int value="12" label="Invalid timing IPC (invalid timing descendent)"/>
  <int value="13" label="Invalid timing IPC (invalid behavior descendent)"/>
  <int value="14" label="Invalid timing IPC (invalid timing)"/>
  <int value="15"
      label="Subframe navigation start before main frame navigation start"/>
  <int value="16"
      label="IPC received from subframe while not tracking a committed load"/>
  <int value="17"
      label="PageLoadFeatures received from browser process while not
             tracking a relevant committed load"/>
</enum>

<enum name="LcppPredictResult">
  <int value="0" label="Success">Prediction is success.</int>
  <int value="1" label="Failure: No hit">
    Prediction failed. No learned locator hit the actual LCP.
  </int>
  <int value="2" label="Failure(False positive): Unrecorded LCP">
    Prediction failed. LCP is predicted but the actual LCP is unrecorded one.
  </int>
  <int value="3" label="Failure(False positive): Duplication">
    Prediction failed. LCP is predicted but the actual LCP is one with the same
    locator.
  </int>
  <int value="4" label="Failure(False positive): Another indexed LCP.">
    Prediction failed. LCP is predicted but the actual LCP is one with another
    leaned locator.
  </int>
</enum>

<enum name="LinkPreviewUsage">
  <int value="0" label="Not used"/>
  <int value="1" label="Used but not promited"/>
  <int value="2" label="Used and promoted"/>
</enum>

<enum name="MhtmlLoadResult">
  <int value="0" label="Success">Archive loaded successfully</int>
  <int value="1" label="Empty file">
    Failed to load archive because the file was empty
  </int>
  <int value="2" label="URL scheme not allowed">
    Failed to load archive because the url wasn't http(s), file, or content
  </int>
  <int value="3" label="Invalid archive">
    Failed to load archive because it was not valid MHTML
  </int>
  <int value="4" label="Missing main resource">
    Failed to load archive because it had no main resource
  </int>
</enum>

<!-- LINT.IfChange(NavigationAbandonReasonEnum) -->

<enum name="NavigationAbandonReasonEnum">
  <int value="0" label="kFrameRemoved"/>
  <int value="1" label="kExplicitCancellation"/>
  <int value="2" label="kInternalCancellation"/>
  <int value="3" label="kRenderProcessGone"/>
  <int value="4" label="kNeverStarted"/>
  <int value="5" label="kFailedSecurityCheck"/>
  <int value="6" label="kOther"/>
  <int value="7" label="kHidden"/>
  <int value="8" label="kErrorPage"/>
  <int value="9" label="kAppBackgrounded"/>
  <int value="10" label="kNewReloadNavigation"/>
  <int value="11" label="kNewHistoryNavigation"/>
  <int value="12" label="kNewOtherNavigationBrowserInitiated"/>
  <int value="13" label="kNewOtherNavigationRendererInitiated"/>
</enum>

<!-- LINT.ThenChange(//components/page_load_metrics/browser/observers/abandoned_page_load_metrics_observer.h:AbandonReason) -->

<!-- LINT.IfChange(NavigationMilestoneEnum2) -->

<enum name="NavigationMilestoneEnum2">
  <int value="0" label="kNavigationStart"/>
  <int value="1" label="kLoaderStart"/>
  <int value="2" label="kFirstRedirectedRequestStart"/>
  <int value="3" label="kFirstRedirectResponseStart"/>
  <int value="4" label="kFirstRedirectResponseLoaderCallback"/>
  <int value="5" label="kNonRedirectedRequestStart"/>
  <int value="6" label="kNonRedirectResponseStart"/>
  <int value="7" label="kNonRedirectResponseLoaderCallback"/>
  <int value="8" label="kCommitSent"/>
  <int value="9" label="kCommitReceived"/>
  <int value="10" label="kDidCommit"/>
  <int value="11" label="kParseStart"/>
  <int value="12" label="kFirstContentfulPaint"/>
  <int value="13" label="kDOMContentLoaded"/>
  <int value="14" label="kLoadEventStarted"/>
  <int value="15" label="kLargestContentfulPaint"/>
  <int value="16" label="kAFTStart"/>
  <int value="17" label="kAFTEnd"/>
  <int value="18" label="kHeaderChunkStart"/>
  <int value="19" label="kHeaderChunkEnd"/>
  <int value="20" label="kBodyChunkStart"/>
  <int value="21" label="kBodyChunkEnd"/>
</enum>

<!-- LINT.ThenChange(//components/page_load_metrics/browser/observers/abandoned_page_load_metrics_observer.h:NavigationMilestone) -->

<enum name="OriginTrialStatusChange">
  <int value="0"
      label="kDisabled: Origin-specific origin trial token was disabled (i.e.
             removed from the top-level site's partition)"/>
  <int value="1"
      label="kDisabled_MatchesSubdomains: Subdomain-matching origin trial
             token was disabled (i.e. removed from the top-level site's
             partition)"/>
  <int value="2"
      label="kEnabled: Origin-specific token was used to enable the origin
             trial"/>
  <int value="3"
      label="kEnabled_MatchesSubdomains: Subdomain-matching token was used to
             enable the origin trial"/>
</enum>

<enum name="PageActionCTREvent">
  <int value="0" label="Shown"/>
  <int value="1" label="Clicked"/>
</enum>

<enum name="PageActionIconType">
  <int value="0" label="Bookmarks Star"/>
  <int value="1" label="Click to Call"/>
  <int value="2" label="Cookie Controls"/>
  <int value="3" label="File System Access"/>
  <int value="4" label="Find"/>
  <int value="5" label="Memory Saver"/>
  <int value="6" label="Intent Picker"/>
  <int value="7" label="Local Card Migration"/>
  <int value="8" label="Manage Passwords"/>
  <int value="9" label="Payments Offer Notification"/>
  <int value="10" label="Price Tracking"/>
  <int value="11" label="PWA Install"/>
  <int value="12" label="QR Code Generator"/>
  <int value="13" label="(Deprecated) Reader Mode"/>
  <int value="14" label="Autofill Address"/>
  <int value="15" label="Save Card"/>
  <int value="16" label="Send Tab to Self"/>
  <int value="17" label="Sharing Hub"/>
  <int value="18" label="Side Search"/>
  <int value="19" label="SMS Remote Fetcher"/>
  <int value="20" label="Translate"/>
  <int value="21" label="Virtual Card Enroll"/>
  <int value="22" label="Virtual Card Manual Fallback"/>
  <int value="23" label="Zoom"/>
  <int value="24" label="Save IBAN"/>
  <int value="25" label="Mandatory Reauth"/>
  <int value="26" label="Price Insights"/>
  <int value="27" label="Read Anything"/>
  <int value="28" label="Product Specifications"/>
  <int value="29" label="Lens Overlay"/>
</enum>

<enum name="PageActionPageEvent">
  <int value="0" label="Page Shown"/>
  <int value="1" label="Action Shown"/>
  <int value="2" label="Multiple Actions Shown"/>
</enum>

<enum name="PageLoadBackForwardCacheEvent">
  <int value="0" label="Enter back-forward cache"/>
  <int value="1" label="Restore from back-forward cache"/>
</enum>

<enum name="PageLoadPrerenderEvent">
  <int value="0" label="Prerendered Main Frame Navigation"/>
  <int value="1" label="Prerender Activation Navigation"/>
</enum>

<enum name="PageLoadPrerenderObserverEvent">
  <int value="0" label="OnPrerenderStart"/>
  <int value="1" label="DidActivatePrerenderedPage"/>
  <int value="2" label="OnFirstPaintInPage"/>
  <int value="3" label="OnFirstContentfulPaintInPage"/>
  <int value="4" label="OnFirstInputInPage"/>
  <int value="5" label="OnComplete"/>
  <int value="6" label="FlushMetricsOnAppEnterBackground"/>
  <int value="7" label="RecordSessionEndHistograms"/>
  <int value="8" label="RecordLayoutShiftScoreMetrics"/>
  <int value="9" label="RecordNormalizedResponsivenessMetrics"/>
</enum>

<enum name="PageLoadPrerenderVisibilityAtActivation">
  <int value="0" label="Hidden"/>
  <int value="1" label="Occluded"/>
  <int value="2" label="Visible"/>
</enum>

<!-- LINT.IfChange(PageLoadTimingStatus) -->

<enum name="PageLoadTimingStatus">
  <summary>Status of PageLoadTimings received from the render process</summary>
  <int value="0" label="Valid"/>
  <int value="1" label="Empty timing"/>
  <int value="2" label="Null navigation start"/>
  <int value="3" label="Script load longer than parse duration"/>
  <int value="4" label="Script execution longer than parse duration"/>
  <int value="5"
      label="Script load from doc.write longer than total script load"/>
  <int value="6"
      label="Script execution from doc.write longer than total script
             execution"/>
  <int value="7" label="Invalid order - response start / parse start"/>
  <int value="8" label="Invalid order - parse start / parse stop"/>
  <int value="9" label="Invalid order - parse stop / dom content loaded"/>
  <int value="10" label="Invalid order - dom content loaded / load"/>
  <int value="11" label="Invalid order - parse start / first paint"/>
  <int value="12" label="Invalid order - first paint / first text paint"/>
  <int value="13" label="Invalid order - first paint / first image paint"/>
  <int value="14" label="Invalid order - first paint / first contentful paint"/>
  <int value="15" label="Invalid order - first paint / first meaningful paint"/>
  <int value="16" label="Invalid order - first meaningful paint / interactive"/>
  <int value="17" label="First input delay without first input timestamp"/>
  <int value="18" label="First input timestamp without first input delay"/>
  <int value="19" label="Longest input delay without longest input timestamp"/>
  <int value="20" label="Longest input timestamp without longest input delay"/>
  <int value="21" label="First scroll delay without first scroll timestamp"/>
  <int value="22" label="First scroll timestamp without first scroll delay"/>
  <int value="23"
      label="Longest input timestamp earlier than first input timestamp"/>
  <int value="24" label="Longest input delay less than first input delay"/>
  <int value="25" label="Invalid order - parse start / activation start"/>
  <int value="26" label="Invalid order - activation start / first paint"/>
</enum>

<!-- LINT.ThenChange(//components/page_load_metrics/browser/page_load_metrics_update_dispatcher.h:PageLoadTimingStatus) -->

<enum name="PageLoadTrackerPageType">
  <int value="0" label="Primary Page"/>
  <int value="1" label="Prerender Page"/>
  <int value="2" label="FencedFrames Page"/>
</enum>

<enum name="PageVisitType">
  <int value="0"
      label="Independent Visit; the page is opened from UI or in new tab, and
             not followed by any link navigation. (obsolete)"/>
  <int value="1"
      label="Origin Visit; the page is opened from UI or in new tab, and
             followed by a link navigation. (obsolete)"/>
  <int value="2"
      label="PassingVisit; the page is visited and followed by link
             navigations."/>
  <int value="3"
      label="TerminalVisit; the page is visited by a link navigation, but not
             followed by any link navigation."/>
  <int value="4"
      label="HistoryVisit; the page is visited by a history navigation."/>
  <int value="5"
      label="Independent Link Visit; the page is opened in a new tab, and not
             followed by any link navigation."/>
  <int value="6"
      label="Independent UI Visit; the page is opened from UI, and not
             followed by any link navigation."/>
  <int value="7"
      label="Origin Link Visit; the page is opened in a new tab, and followed
             by a link navigation."/>
  <int value="8"
      label="Origin UI Visit; the page is opened from UI, and followed by a
             link navigation."/>
</enum>

<enum name="PreviewFinalStatus">
  <int value="0" label="just previewed"/>
  <int value="1" label="previewed and promoted"/>
</enum>

<enum name="ThirdPartyCookieAllowMechanism">
  <int value="0" label="kNone: No allow mechanism applied (Not recorded)."/>
  <int value="1"
      label="kAllowByExplicitSetting: Allowed by explicit cookie content
             setting (e.g. UserBypass)."/>
  <int value="2"
      label="kAllowByGlobalSetting: Allowed by global 3p cookie setting
             setting (e.g. Enterprise Policy: BlockThirdPartyCookies, UX,
             Default allow)."/>
  <int value="3"
      label="kAllowBy3PCDMetadata: (Deprecated) Allowed by 3PCD metadata
             grants content settings (Global Allowlist)."/>
  <int value="4"
      label="kAllowBy3PCD: Allowed by third-party deprecation trial."/>
  <int value="5" label="kAllowBy3PCDHeuristics: Allowed by 3PCD heuristics."/>
  <int value="6" label="kAllowByStorageAccess: Allowed by Storage access API."/>
  <int value="7"
      label="kAllowByTopLevelStorageAccess: Allowed by top-level Storage
             access API."/>
  <int value="8"
      label="kAllowByCORSException: Allowed by opting into CORS protections."/>
  <int value="9"
      label="kAllowByTopLevel3PCD: Allowed by top-level third-party
             deprecation trial."/>
  <int value="10"
      label="kAllowByEnterprisePolicyCookieAllowedForUrls: Allowed by
             CookiesAllowedForUrls Enterprise Policy."/>
  <int value="11"
      label="kAllowBy3PCDMetadataSourceUnspecified: Allowed by entries with
             unspecified source within the 3PCD metadata grants content
             settings (Global Allowlist)."/>
  <int value="12"
      label="kAllowBy3PCDMetadataSourceTest: Allowed by test entries within
             the 3PCD metadata grants content settings (Global Allowlist)."/>
  <int value="13"
      label="kAllowBy3PCDMetadataSource1pDt: Allowed by 1P DT entries within
             the 3PCD metadata grants content settings (Global Allowlist)."/>
  <int value="14"
      label="kAllowBy3PCDMetadataSource3pDt: Allowed by 3P DT entries within
             the 3PCD metadata grants content settings (Global Allowlist)"/>
  <int value="15"
      label="kAllowBy3PCDMetadataSourceDogFood: Allowed by dogfood entries
             within the 3PCD metadata grants content settings (Global
             Allowlist)."/>
  <int value="16"
      label="kAllowBy3PCDMetadataSourceCriticalSector: Allowed by critical
             sector entries within the 3PCD metadata grants content settings
             (Global Allowlist)."/>
  <int value="17"
      label="kAllowBy3PCDMetadataSourceCuj: Allowed by critical user journey
             entries within the 3PCD metadata grants content settings (Global
             Allowlist)."/>
  <int value="18"
      label="kAllowBy3PCDMetadataSourceGovEduTld: Allowed by government and
             education TLD entries within the 3PCD metadata grants content
             settings (Global Allowlist)."/>
  <int value="19" label="kAllowByScheme: Allowed by the top-level scheme."/>
  <int value="20"
      label="kAllowByTrackingProtectionException: Allowed by explicit
             tracking protection content setting."/>
</enum>

</enums>

</histogram-configuration>