chore(perf): refresh the Lighthouse baseline from a pinned-browser CI run - #2134
Conversation
… run The committed baseline carried `updatedAt: 2026-08-13T12:02`, so every PR this week was graded against five-day-old measurements. That is what blocked #2112 all afternoon: `desktop /therapy-compass` measured ~956ms on PR runners against a 793ms baseline, tripping the +20%/+100ms tolerance by roughly four milliseconds, passing twice and failing three times on identical code. Measured on main at 533989f (the #2112 merge commit) via the dispatch-only refresh job, on the pinned Chromium 151 the gate itself uses. Nothing here is a local measurement: the baseline is a browser- and runner-specific artefact and the workflow refuses to produce it anywhere else. The drift is real but two-directional, which is the argument for refreshing rather than raising a ceiling: desktop-documents-search 783 -> 866 (+83) desktop-therapy-compass 793 -> 849 (+56) desktop-dsm 846 -> 849 (+3) desktop-root 868 -> 822 (-46) desktop-forms 876 -> 756 (-120) mobile-* (all five) (-98 to -113) Most routes got FASTER since 13 August. A stale baseline is not merely lenient; it had stopped describing the application in either direction, and the two desktop regressions were invisible underneath that. The remaining question this does not answer: ~56-83ms of genuine growth on two desktop routes, neither of which changed its own code in that window. That is shared-chunk growth across the intervening merges and deserves its own investigation rather than being absorbed silently here. Only metric values and `updatedAt` change; routes, strategies, tolerances, enforcement and the pinned Lighthouse version are untouched.
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in:57 minutes Limit details: You’ve used the included review currently available. Your 102 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits within each organization. For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
Comment |
This pull request has been ignored for the connected project Preview Branches by Supabase. |
Uh oh!
There was an error while loading. Please reload this page.
Summary
updatedAt: 2026-08-13T12:02, so every PR this week was graded against five-day-old measurements. That is what blocked fix(home): give the shared mode home the full hero design on phones #2112 all afternoon:desktop /therapy-compassmeasured ~956 ms on PR runners against a 793 ms baseline, tripping the +20%/+100 ms tolerance by roughly four milliseconds — passing twice and failing three times on identical code.mainat533989f(the fix(home): give the shared mode home the full hero design on phones #2112 merge commit) through the dispatch-only refresh job, on the pinned Chromium 151 the gate itself uses. Nothing here is a local measurement: the baseline is a browser- and runner-specific artefact and the workflow refuses to produce it anywhere else.desktop-documents-searchdesktop-therapy-compassdesktop-dsmdesktop-rootdesktop-formsmobile-*(all five)Most routes got faster since 13 August. A stale baseline is not merely lenient — it had stopped describing the application in either direction, and the two desktop regressions were invisible underneath that.
Verification
npx vitest run tests/check-lighthouse-budget.test.ts—Tests 64 passed (64)npx prettier --check lighthouse-budget.json—All matched files use Prettier code style!updatedAtchange.routes,strategies,tolerance,enforce: trueand the pinnedlighthouseVersion: 12.8.2are untouched — confirmed by filtering the diff for any non-metric line.chromeVersionacross all ten cells (Chrome/151.0.0.0), which the refresh job asserts and which keeps the baseline internally consistent.Not run: browser, build, or provider-backed gates. This diff is one data file.
Risk and rollout
desktop-documents-searchanddesktop-therapy-compassmeans a future regression on those two routes must exceed a higher bar before the budget notices. That is the correct trade against a baseline that no longer described reality — but it is the reason the two increases are called out individually above rather than buried in an aggregate.desktop-formsmove down, tightening those budgets.Notes
maincommits:desktop-therapy-compassread 864 ms on5ef065cand 849 ms on533989f. The 15 ms spread between them is runner scatter, and it is roughly the margin by which fix(home): give the shared mode home the full hero design on phones #2112 kept failing — useful context for how tight that cell sits.main's CI from cancelling itself. It does not makeLighthouse budgetrun onmain— that job is path-scoped and skips on most pushes, which is the mechanism that let this baseline go five days without anyone noticing. Worth a follow-up: either schedule the refresh, or alert when the baseline exceeds an age.Generated by Claude Code