Frontend (Vitest)
Configuration: agency-ui/vitest.config.ts. Pure TS/unit tests — no browser E2E yet.
Commands
cd agency-ui
npm ci
npm test # vitest run
npm run typecheck # vue-tsc
npm run build # Vite production bundle
npm run test:watch
Umbrella: ./dev test-ui (vitest + typecheck + build) or ./dev test-all.
Coverage areas (unit)
REST client (apiFetch), WebSocket reconnect, inbound routing, task filters, HITL interruptions store, observe/catalog deltas, execution timeline ingest, UI store tree mutations, applyAgencyEvent, schema registry keys.
Typecheck
UINode is a closed union (SCHEMA_TYPES). isValidNode rejects unknown
types including Vuetify names. vue-tsc is a required CI job.
Required CI jobs: npm test + npm run typecheck + npm run build.
Workflow: agency-ui/.github/workflows/tests.yml — see Continuous integration.