style(13-03): apply Prettier formatting across repo

Mechanical reformat — no logic changes. 398 files changed, 19125
insertions(+), 16457 deletions(-). Prettier 3.8.4 with .prettierrc
(singleQuote:true, semi:true, tabWidth:2, trailingComma:all,
printWidth:100). Isolated per D-13-08 for reviewability.
This commit is contained in:
Lucas Berger
2026-06-11 20:35:18 -04:00
parent 4bc0445173
commit 982438dc10
398 changed files with 19050 additions and 16382 deletions
@@ -1,28 +1,28 @@
---
phase: 07-mobile-test-harness
plan: "01"
plan: '01'
subsystem: test-harness
tags: [playwright, e2e, mobile-emulation, vitest, typecheck]
dependency_graph:
requires: []
provides:
- "@playwright/test@1.60.0 devDependency in apps/pwa"
- "playwright.config.ts with iPhone/WebKit + Pixel/Chromium matrix"
- "test:e2e scripts in apps/pwa and root package.json"
- "vitest glob isolation from e2e/**"
- "tsconfig.e2e.json typecheck gate covering playwright.config.ts + e2e/"
- "e2e/global-setup.ts stub (Plan 02 will implement)"
- '@playwright/test@1.60.0 devDependency in apps/pwa'
- 'playwright.config.ts with iPhone/WebKit + Pixel/Chromium matrix'
- 'test:e2e scripts in apps/pwa and root package.json'
- 'vitest glob isolation from e2e/**'
- 'tsconfig.e2e.json typecheck gate covering playwright.config.ts + e2e/'
- 'e2e/global-setup.ts stub (Plan 02 will implement)'
affects:
- "apps/pwa test infrastructure"
- "Phase 07 plans 0204 (all import from @playwright/test)"
- 'apps/pwa test infrastructure'
- 'Phase 07 plans 0204 (all import from @playwright/test)'
tech_stack:
added:
- "@playwright/test@1.60.0 — Playwright E2E runner with device emulation"
- "@types/node@^22.19.19 — Node type defs for playwright.config.ts"
- "WebKit browser engine (downloaded to ~/.cache/ms-playwright/webkit-2287)"
- "Chromium browser engine (downloaded to ~/.cache/ms-playwright/chromium-1223)"
- '@playwright/test@1.60.0 — Playwright E2E runner with device emulation'
- '@types/node@^22.19.19 — Node type defs for playwright.config.ts'
- 'WebKit browser engine (downloaded to ~/.cache/ms-playwright/webkit-2287)'
- 'Chromium browser engine (downloaded to ~/.cache/ms-playwright/chromium-1223)'
patterns:
- "tsconfig.e2e.json — separate tsconfig extending main tsconfig with node types, covers e2e/ and playwright.config.ts without contaminating src/ DOM types"
- 'tsconfig.e2e.json — separate tsconfig extending main tsconfig with node types, covers e2e/ and playwright.config.ts without contaminating src/ DOM types'
- "vitest exclude: ['e2e/**'] — prevents Playwright *.spec.ts glob collision with jsdom runner"
key_files:
created:
@@ -35,13 +35,13 @@ key_files:
- package.json
- pnpm-lock.yaml
decisions:
- "D-DEV-TSCONFIG: Added tsconfig.e2e.json (separate tsconfig) rather than polluting apps/pwa/tsconfig.json with Node types — playwright.config.ts uses process.env which requires @types/node; DOM+Node type coexistence in the same tsconfig causes issues for browser-targeted src/**/*"
- "D-DEV-GLOBALSETUP-STUB: Created e2e/global-setup.ts stub immediately because Playwright resolves globalSetup at config load time (not run time); --list and all config validation requires the file to exist"
- "D-DEV-TYPECHECK-SCRIPT: Updated typecheck script to run both tsc passes sequentially (src + e2e) so the root pnpm -r typecheck gate covers both"
- "D-DEV-BROWSERS-NO-DEPS: Used playwright install without --with-deps (requires sudo on this host); system deps for WebKit assumed already present; CI Dockerfile must use --with-deps"
- 'D-DEV-TSCONFIG: Added tsconfig.e2e.json (separate tsconfig) rather than polluting apps/pwa/tsconfig.json with Node types — playwright.config.ts uses process.env which requires @types/node; DOM+Node type coexistence in the same tsconfig causes issues for browser-targeted src/**/*'
- 'D-DEV-GLOBALSETUP-STUB: Created e2e/global-setup.ts stub immediately because Playwright resolves globalSetup at config load time (not run time); --list and all config validation requires the file to exist'
- 'D-DEV-TYPECHECK-SCRIPT: Updated typecheck script to run both tsc passes sequentially (src + e2e) so the root pnpm -r typecheck gate covers both'
- 'D-DEV-BROWSERS-NO-DEPS: Used playwright install without --with-deps (requires sudo on this host); system deps for WebKit assumed already present; CI Dockerfile must use --with-deps'
metrics:
duration_seconds: 310
completed_date: "2026-06-11"
completed_date: '2026-06-11'
tasks_completed: 3
files_changed: 7
---
@@ -76,6 +76,7 @@ The foundation for the Phase 7 mobile test harness:
### Auto-fixed Issues
**1. [Rule 3 - Blocking] globalSetup path resolves at config load time, not run time**
- **Found during:** Task 2 verification (`playwright test --list`)
- **Issue:** The plan stated "the reference is forward-declared and resolves at run time" but Playwright resolves `globalSetup` at config load time. `--list` failed with `Cannot find module './e2e/global-setup.ts'`.
- **Fix:** Created `e2e/global-setup.ts` as a minimal stub exporting an empty async function. Plan 02 replaces this with the full health poll + DB seed implementation.
@@ -83,6 +84,7 @@ The foundation for the Phase 7 mobile test harness:
- **Commit:** 44fea2c
**2. [Rule 3 - Blocking] playwright.config.ts uses process.env — requires @types/node**
- **Found during:** Task 3 `tsc --noEmit` run
- **Issue:** `tsconfig.json` targets `lib: ["ES2023", "DOM", "DOM.Iterable"]` with no Node types. `playwright.config.ts` uses `process.env` which TS resolves from `@types/node`. Running `tsc --noEmit` with `playwright.config.ts` in scope produced 6 `Cannot find name 'process'` errors.
- **Fix:** Created `tsconfig.e2e.json` extending the main tsconfig with `types: ["node"]` and `lib: ["ES2023"]` (no DOM), scoped to `playwright.config.ts` and `e2e/**/*`. Added `@types/node@^22.0.0` to `devDependencies`. Updated `typecheck` script to run both passes. The main `tsconfig.json` `include` stays at `["src/**/*"]` — no DOM/Node type contamination.
@@ -91,9 +93,9 @@ The foundation for the Phase 7 mobile test harness:
## Known Stubs
| Stub | File | Line | Reason |
|------|------|------|--------|
| Empty `globalSetup()` function | `apps/pwa/e2e/global-setup.ts` | 14 | Stub to satisfy Playwright config path resolution; Plan 02 implements health poll + DB seed (D-07/D-08) |
| Stub | File | Line | Reason |
| ------------------------------ | ------------------------------ | ---- | ------------------------------------------------------------------------------------------------------- |
| Empty `globalSetup()` function | `apps/pwa/e2e/global-setup.ts` | 14 | Stub to satisfy Playwright config path resolution; Plan 02 implements health poll + DB seed (D-07/D-08) |
The stub does not prevent this plan's goal (harness foundation). Plan 02 is the direct dependent that resolves it.