Skip to content

Follow-ups: E2E CI tightening (retries, scoping, shard reuse, seeding, dedup) #227

Description

@chiptus

Parent

#217

What to build

A grab-bag of deferred follow-ups from the E2E speed-up work (#217#223, shipped in #224/#225), each independently actionable:

  1. Drop smoke suite retries from 2 to 0 once the smoke workflow (e2e-smoke.yml) has proven stable for a reasonable stretch post the wait-time fixes in Fix real-time waits in E2E specs #218. Was deliberately left at 2 initially to avoid immediately blocking PRs on flakes (see Speed up E2E tests: smoke suite for PRs, nightly full suite, fake clocks #217 user story 11).
  2. Changed-file-based test scoping for the smoke suite — map changed source files to related specs so the smoke suite can run more than the fixed 5-spec critical path when relevant, instead of the same fixed set on every PR (Speed up E2E tests: smoke suite for PRs, nightly full suite, fake clocks #217 user story 12 / Out of Scope).
  3. Build-artifact reuse across nightly matrix shards — build once and share across the 4 shards × 3 browsers instead of rebuilding per-shard, to cut nightly full-suite runtime (Speed up E2E tests: smoke suite for PRs, nightly full suite, fake clocks #217 user story 13 / Out of Scope).
  4. Lighter/faster Supabase seeding to replace supabase db reset in CI, investigated as a possible speed win (Speed up E2E tests: smoke suite for PRs, nightly full suite, fake clocks #217 user story 13 / Out of Scope).
  5. De-duplicate shared setup between e2e-smoke.yml and e2e-tests.yml — flagged in code review of ci(e2e): split PR smoke suite from nightly full suite #224: the two workflows largely duplicate their setup steps (checkout, pnpm/node setup, install, Playwright-version lookup, browser cache, conditional install/install-deps, Supabase start/reset, build). Extract into a reusable composite action or workflow_call so a future change to Node/pnpm/Playwright caching doesn't need editing in two places.

Acceptance criteria

  • Smoke suite retries dropped to 0 (or a documented decision to keep 2, if instability is found)
  • A changed-file → spec mapping (or explicit decision not to pursue it) is in place for the smoke suite
  • Nightly workflow builds once and reuses the artifact across shards, or a documented reason not to
  • Supabase seeding in CI is faster than a full db reset, or a documented reason not to change it
  • Shared setup steps between the two E2E workflows are deduplicated into one reusable unit

Blocked by

  • None — can start immediately (each item is independently actionable; no need to do them together)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions