mission-control/tests
Nyk 6e3fad558d feat(metrics): add task regression trend endpoint 2026-03-05 18:49:05 +07:00
..
fixtures/openclaw merge: resolve PR conflicts and add OpenClaw offline E2E harness 2026-03-04 23:11:59 +07:00
README.md merge: resolve PR conflicts and add OpenClaw offline E2E harness 2026-03-04 23:11:59 +07:00
agent-attribution.spec.ts fix(agents): enforce attribution scope and add e2e coverage 2026-03-05 12:39:53 +07:00
agent-costs.spec.ts feat(costs): add task-level token attribution and task-cost rollups 2026-03-05 14:04:29 +07:00
agent-diagnostics.spec.ts fix(agents): enforce diagnostics self-scope and validation 2026-03-05 12:12:32 +07:00
agents-crud.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
alerts-crud.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
auth-guards.spec.ts test: add 52 Playwright E2E tests covering all critical fixes 2026-02-27 15:38:49 +07:00
csrf-validation.spec.ts feat: scope workflows and webhooks to workspace (#132) 2026-03-04 09:28:43 +07:00
delete-body.spec.ts test: add 52 Playwright E2E tests covering all critical fixes 2026-02-27 15:38:49 +07:00
device-identity.spec.ts feat: Ed25519 device identity for WebSocket challenge-response handshake (#85) 2026-03-03 14:30:25 +07:00
direct-cli.spec.ts feat: aggregate token usage from db with stable agent grouping 2026-03-03 21:06:54 +07:00
docs-knowledge.spec.ts feat(docs): add docs knowledge APIs for issue 189 2026-03-05 15:06:06 +07:00
gateway-connect.spec.ts fix(gateway): use stored token for websocket connect payload 2026-03-05 13:31:37 +07:00
github-sync.spec.ts feat: add GitHub Issues sync (Phase 1, Issue #58) 2026-03-02 12:45:39 +07:00
helpers.ts feat: audit hardening, webhook retry, and local Claude session tracking (#68) 2026-03-02 22:17:35 +07:00
legacy-cookie-removed.spec.ts test: add 52 Playwright E2E tests covering all critical fixes 2026-02-27 15:38:49 +07:00
limit-caps.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
login-flow.spec.ts feat: scope workflows and webhooks to workspace (#132) 2026-03-04 09:28:43 +07:00
mentions.spec.ts feat: add validated @mentions for tasks and comments 2026-03-04 23:37:45 +07:00
notifications.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
openapi.spec.ts feat: add OpenAPI 3.1 documentation with Scalar UI 2026-03-02 11:03:16 +07:00
openclaw-harness.spec.ts merge: resolve PR conflicts and add OpenClaw offline E2E harness 2026-03-04 23:11:59 +07:00
quality-review.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
rate-limiting.spec.ts feat: scope workflows and webhooks to workspace (#132) 2026-03-04 09:28:43 +07:00
search-and-export.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
task-comments.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
task-outcomes.spec.ts feat(tasks): add outcome tracking and feedback analytics 2026-03-05 14:17:21 +07:00
task-queue.spec.ts feat(tasks): add agent queue polling endpoint 2026-03-05 13:22:12 +07:00
task-regression.spec.ts feat(metrics): add task regression trend endpoint 2026-03-05 18:49:05 +07:00
tasks-crud.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
timing-safe-auth.spec.ts test: add 52 Playwright E2E tests covering all critical fixes 2026-02-27 15:38:49 +07:00
user-management.spec.ts feat: audit hardening, webhook retry, and local Claude session tracking (#68) 2026-03-02 22:17:35 +07:00
webhooks-crud.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
workflows-crud.spec.ts test: add 94 E2E tests covering all CRUD routes + fix middleware location 2026-03-02 02:21:10 +07:00
workload-signals.spec.ts fix(workload): harden signal recommendations and add route e2e coverage 2026-03-05 12:35:01 +07:00

README.md

E2E Tests

Playwright end-to-end specs for Mission Control API and UI.

Running

# Start the dev server first (or let Playwright auto-start via reuseExistingServer)
pnpm dev --hostname 127.0.0.1 --port 3005

# Run all tests
pnpm test:e2e

# Run offline OpenClaw harness (no OpenClaw install required)
pnpm test:e2e:openclaw

# Run a specific spec
pnpm exec playwright test tests/tasks-crud.spec.ts

Test Environment

Tests require .env.local with:

  • API_KEY=test-api-key-e2e-12345
  • MC_DISABLE_RATE_LIMIT=1 (bypasses mutation/read rate limits, keeps login rate limit active)

OpenClaw Offline Harness

The harness runs Mission Control against fixture data and mock binaries/gateway:

  • fixtures: tests/fixtures/openclaw/
  • mock CLI: scripts/e2e-openclaw/bin/{openclaw,clawdbot}
  • mock gateway: scripts/e2e-openclaw/mock-gateway.mjs

Profiles:

  • pnpm test:e2e:openclaw:local - local mode (gateway not running)
  • pnpm test:e2e:openclaw:gateway - gateway mode (mock gateway running)

Spec Files

Security & Auth

  • auth-guards.spec.ts — All API routes return 401 without auth
  • csrf-validation.spec.ts — CSRF origin header validation
  • legacy-cookie-removed.spec.ts — Old cookie format rejected
  • login-flow.spec.ts — Login, session, redirect lifecycle
  • rate-limiting.spec.ts — Login brute-force protection
  • timing-safe-auth.spec.ts — Constant-time API key comparison

CRUD Lifecycle

  • tasks-crud.spec.ts — Tasks POST/GET/PUT/DELETE with filters, Aegis gate
  • agents-crud.spec.ts — Agents CRUD, lookup by name/id, admin-only delete
  • task-comments.spec.ts — Threaded comments on tasks
  • workflows-crud.spec.ts — Workflow template CRUD
  • webhooks-crud.spec.ts — Webhooks with secret masking and regeneration
  • alerts-crud.spec.ts — Alert rule CRUD with full lifecycle
  • user-management.spec.ts — User admin CRUD

Features

  • notifications.spec.ts — Notification delivery and read tracking
  • quality-review.spec.ts — Quality reviews with batch lookup
  • search-and-export.spec.ts — Global search, data export, activity feed

Infrastructure

  • limit-caps.spec.ts — Endpoint limit caps enforced
  • delete-body.spec.ts — DELETE body standardization

Shared

  • helpers.ts — Factory functions (createTestTask, createTestAgent, etc.) and cleanup helpers