Testing
End-to-end
Playwright is installed at the repo root (see package.json).
Install dependencies:
npm ci
Run a small smoke test:
npm run smoke
Run the full E2E suite:
npm run test:e2e
Environment variables
The Playwright config supports:
PLAYWRIGHT_PORT/PLAYWRIGHT_HOST/PLAYWRIGHT_BASE_URLPYTHON_EXE(orPYTHON) to choose the Python interpreter for the dev server
The default config starts tools/dev_server.py automatically.
Spec/tooling checks
npm run spec:lint: validates the UI spec contractnpm run ci:guard: runs pattern-based guards (seetools/forbid_patterns.mjs)node tools/run_checks.mjs: runs a fast local check suite (guards + module boundaries + Node unit tests + syntax checks)
Node unit tests
The repo includes a small set of dependency-free Node tests under tests/unit/.
node --test tests/unit/*.test.mjs