fix(ci): harden Ubuntu Lighthouse and Playwright browser setup against apt mirror flakiness - #2192
Conversation
…t apt mirror flakiness - Redirect flaky azure.archive.ubuntu.com mirror to canonical archive.ubuntu.com - Configure APT resilience settings (30s timeout, 3 retries) in /etc/apt/apt.conf.d/99flaky-mirror-resilience - Enforce bounded timeout (180s) and 3-attempt retry loop in setup-lighthouse-chromium, setup-ui-e2e, and ci.yml ui-matrix - Add unit contract assertions in tests/ci-cache-safety.test.ts
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:40 minutes Limit details: You’ve used the included review currently available. Your 85 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?Wait for the limit to reset, then comment An organization admin can change what happens after included review limits in Billing. 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 (4)
Comment |
This pull request has been ignored for the connected project Preview Branches by Supabase. |
CI triageCI failed on this PR. Automated classification of the 2 failed job(s):
Compared with main CI run #12589 (failure). Classification is evidence routing, not permission to ignore a failure. Exact quarantined Playwright identities remain governed by the flake ledger. |
Uh oh!
There was an error while loading. Please reload this page.
Summary
This PR permanently resolves Ubuntu runner flakiness during Lighthouse test runs and Playwright browser installations (such as the failure observed on PR #2184).
Root Cause
GitHub-hosted Ubuntu runners default to
azure.archive.ubuntu.com. DuringSetup pinned Chromium, Playwright runsnpx playwright install-depswhich callsapt-get update. When the Azure mirror experiences rate-limiting, connection drops, or sync issues (Ign:lines), the step hangs or fails. Additionally,setup-lighthouse-chromiumlacked per-attempt timeouts and retries.Changes
azure.archive.ubuntu.comto the official canonicalarchive.ubuntu.comin/etc/apt/sources.listand/etc/apt/sources.list.d/*.sources./etc/apt/apt.conf.d/99flaky-mirror-resiliencewithAcquire::Retries "3"and fast 30s timeouts (Acquire::http::Timeout "30",Acquire::https::Timeout "30")..github/actions/setup-lighthouse-chromium/action.yml,.github/actions/setup-ui-e2e/action.yml, and.github/workflows/ci.ymlin a bounded loop (timeout 180, 3 attempts, 5s backoff).tests/ci-cache-safety.test.tsto enforce mirror sanitization, timeout bounds, and retry loops across all browser setup actions on every PR.Verification
npm run test:ci-workflows(15/15 suites passed, 317 tests)npm run check:github-actions(passed)npm run check:ci-scope(passed)git diff --check(clean)