demo · v138

Visibility timeline replay

Pre-v138 crash reports said "the page died". v138 adds is_top_level_visibility_state: the actual visibility of the top-level page at the moment of death. This page simulates 60s of page life with visibility transitions, drops a crash at any moment, and shows the resulting report JSON.

Unflagged in Chrome 138. Reports posted to Reporting-Endpoints now include the top-level visibility (visible / hidden). Lets triage filter out backgrounded-tab OOMs from foreground UX impact, by orders of magnitude.
crash reporting visibility field — v138
page lifetime · drag to pick crash moment
crash at t=
visibility
background ratio (so far)

Generated report

What the field unlocks

  1. Crash + backgrounded tab = browser proactively killed it for memory. Not a bug — expected lifecycle.
  2. Crash + visible tab = real user-impact event. This is what your on-call should be paged for.
  3. Pre-v138, the two were lumped together in your dashboard. Many teams' crash dashboards were 80% background events drowning out the 20% real ones.
  4. The new field lets your reporting endpoint filter at ingest time — and finally compute "crashes per user-visible session", the metric you actually want.

see also