Web vitals
Read-only Core Web Vitals cards: LCP, INP, CLS. Ratings good · needs-improvement · poor from mock fixture budgets. Fail-closed when unbound or missing. Missing ≠ good. Metrics are navigation-scoped. Not live masterengine.ai. Not kernel source of truth.
How to read · mock budgets only
- LCP / INP / CLS ratings here come from mock fixture budgets — specimen only. No live RUM, no PerformanceObserver, no CrUX field data.
- Navigation-scoped: each metric row carries mock
navigationId+navigationURL. Hard/vs soft route change are different navigations. - Soft-nav cue: hard-nav homepage green can hide soft-nav INP/LCP (Chrome 152 Live Metrics / web-vitals v6).
- good may show only when a bound metric value is within the good budget in the fixture — never a live field handshake.
- needs-improvement and poor are honest non-good ratings — never greenwashed as good.
- Unbound / Missing is fail-closed: not good, no pretend-good, no invented value. Missing ≠ good. Unbound ≠ good.
- Env / RUM endpoint names only (see
env.example). Secret values never ship in this pack.
Good —
Needs improvement —
Poor —
Unbound / Missing (fail-closed) —
navigationId —
navigationURL —
Metric rows (mock budget specimen)
- Awaiting local fixture…
Awaiting local fixture…