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.