1import { defineConfig } from "@playwright/test";
2
3export default defineConfig({
4 tsconfig: "../tsconfig.playwright.json",
5 testDir: "./test",
6 // Windows CI runs every fixture e2e concurrently; absorb runner flakiness.
7 retries: process.env.CI ? 2 : 0,
8 // A systemic failure (runner capacity, broken build) otherwise burns
9 // retries x timeout on every remaining spec — fail the suite fast.
10 maxFailures: process.env.CI ? 5 : 0,
11 // Cold dev boots (vite + workerd + module-runner connect) and the
12 // edit-poll-restore HMR specs need headroom over the usual 60s.
13 timeout: 120_000,
14 expect: {
15 timeout: 10_000,
16 },
17 projects: [
18 {
19 name: "chromium",
20 use: {
21 browserName: "chromium",
22 colorScheme: "light",
23 deviceScaleFactor: 1,
24 viewport: { width: 1280, height: 720 },
25 },
26 },
27 ],
28});