Files
safe-wallet/apps/web/e2e/playwright.config.ts
Daniel DimitrovandGitHub c3616af5f3 chore: remove PR poem, one-shot clickthroughs, and Claude Stop hooks (#8154)
Cleans up three AI-workflow scaffolds and all their references:

- PR poem: drop the requirement from AGENTS.md (no template section existed).
- One-shot clickthroughs: remove the Playwright `one-shots` project and
  specs, the CI recording job in web-deploy-dev.yml, the record-oneshot.sh
  and video_to_gif.sh scripts, the package.json scripts, the PR-template
  checklist item, and all docs (root + web AGENTS.md, e2e README).
- Claude Stop hooks: remove the Stop block from .claude/settings.json,
  delete check-tests.mjs and the orphaned verify-changed-hook.mjs, and
  rewrite the AGENTS.md Fast Feedback Loop to keep manual `yarn verify`
  guidance without the hook machinery.
2026-06-18 15:46:06 +02:00

47 lines
1.2 KiB
TypeScript

import { defineConfig, devices } from '@playwright/test'
const isCI = !!process.env.CI
const hasExternalBaseURL = !!process.env.PLAYWRIGHT_BASE_URL
const baseURL = process.env.PLAYWRIGHT_BASE_URL || (isCI ? 'http://localhost:8080' : 'http://localhost:3000')
export default defineConfig({
testDir: './tests',
timeout: 60_000,
expect: { timeout: 10_000 },
fullyParallel: isCI,
forbidOnly: isCI,
retries: isCI ? 2 : 0,
workers: isCI ? undefined : 1,
reporter: [
['html', { outputFolder: './reports/html', open: isCI ? 'never' : 'on-failure' }],
...(isCI ? [['list'] as const, ['junit', { outputFile: './reports/junit/results.xml' }] as const] : []),
],
use: {
baseURL,
actionTimeout: 15_000,
navigationTimeout: 30_000,
timezoneId: 'UTC',
trace: 'retain-on-failure',
screenshot: 'only-on-failure',
video: 'retain-on-failure',
},
projects: [
{
name: 'chromium',
use: { ...devices['Desktop Chrome'] },
},
],
outputDir: './test-results',
...(isCI && !hasExternalBaseURL
? {
webServer: {
command: 'npx serve out -p 8080',
port: 8080,
timeout: 120_000,
reuseExistingServer: false,
cwd: '../',
},
}
: {}),
})