Runs and debugs Room TBA Playwright E2E, integration tests in CI, workflow gating, E2E database, and staging smoke. Use when e2e fails in GitHub Actions, EMAXCONNSESSION pool errors, run/e2e label, e2e-reusable.yml, or test:integration:live locally.
インストール
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Runs and debugs Room TBA Playwright E2E, integration tests in CI, workflow gating, E2E database, and staging smoke. Use when e2e fails in GitHub Actions, EMAXCONNSESSION pool errors, run/e2e label, e2e-reusable.yml, or test:integration:live locally.
Ordinary pushes after ready do not re-trigger E2E; add label again.
Blocking job order (e2e-reusable.yml)
bun run e2e:reset-db
bun run build:e2e
Start preview (bun run preview:e2e)
bun run test:integration (with PREVIEW_BASE_URL)
bun run e2e (PLAYWRIGHT_SKIP_WEBSERVER=1)
Wall clock ~28–35 min in CI.
Workflows
File
Name
.github/workflows/ci.yml
verify, migrations
.github/workflows/e2e.yml
E2E (PR blocking)
.github/workflows/e2e-advisory.yml
E2E advisory
.github/workflows/e2e-staging.yml
E2E staging + nightly
.github/workflows/staging-smoke.yml
Live staging smoke
Common CI failures
Error
Likely cause
Mitigation
EMAXCONNSESSION max clients reached
Too many parallel PG connections in integration job
CI sets PLAYWRIGHT_WORKERS=1 and DATABASE_POOL_MAX=4; integration runs with --concurrency 1
Preview failed to start
build:e2e or port conflict
Read job log before Playwright step
staging-smoke /admin redirect
Staging deploy lag vs test expectation
Wait for Vercel staging deploy; check live URL
Integration pass locally, fail CI
Missing preview or wrong PREVIEW_BASE_URL
Use test:integration:live
Before marking PR ready
bun run lint && bun test src
bun run test:integration:live # API/service changes
bun run e2e # UI/map/proposal flows
bun run build # substantive changes
staging → main runs E2E + staging-smoke. If only notification/API changes, verify + migrations may suffice for feature PR; release PR still hits full stack. Admin merge only when failures are known infra flakes, not regressions.