Files
Codewalkers/docs/testing.md
Lukas May 342b490fe7 feat: Task decomposition for Tailwind/Radix/shadcn foundation setup
Decomposed "Foundation Setup - Install Dependencies & Configure Tailwind"
phase into 6 executable tasks:

1. Install Tailwind CSS, PostCSS & Autoprefixer
2. Map MUI theme to Tailwind design tokens
3. Setup CSS variables for dynamic theming
4. Install Radix UI primitives
5. Initialize shadcn/ui and setup component directory
6. Move MUI to devDependencies and verify setup

Tasks follow logical dependency chain with final human verification
checkpoint before proceeding with component migration.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-10 09:48:51 +01:00

2.9 KiB

Testing

src/test/ — Test infrastructure, fixtures, and test suites.

Framework

vitest (Vite-native test runner)

Test Categories

Unit Tests

Located alongside source files (*.test.ts):

  • src/agent/*.test.ts — Manager, output handler, completion detection, file I/O, process manager
  • src/db/repositories/drizzle/*.test.ts — Repository adapters
  • src/dispatch/*.test.ts — Dispatch manager
  • src/git/manager.test.ts — Worktree operations
  • src/process/*.test.ts — Process registry and manager
  • src/logging/*.test.ts — Log manager and writer

E2E Tests (Mocked Agents)

src/test/e2e/:

File Scenarios
happy-path.test.ts Single task, parallel, complex flows
architect-workflow.test.ts Discussion + breakdown agent workflows
decompose-workflow.test.ts Task decomposition with child tasks
phase-dispatch.test.ts Phase-level dispatch with dependencies
recovery-scenarios.test.ts Crash recovery, agent resume
edge-cases.test.ts Boundary conditions
extended-scenarios.test.ts Advanced multi-phase workflows

Integration Tests (Real Providers)

src/test/integration/real-providers/skipped by default (cost real money):

File Provider Cost
claude-manager.test.ts Claude CLI ~$0.10
codex-manager.test.ts Codex varies
schema-retry.test.ts Claude CLI ~$0.10
crash-recovery.test.ts Claude CLI ~$0.10

Enable with env vars: REAL_CLAUDE_TESTS=1, REAL_CODEX_TESTS=1

Test Infrastructure

TestHarness (src/test/harness.ts)

Central test utility providing:

  • In-memory SQLite database with schema applied
  • All 10 repository instances
  • MockAgentManager — simulates agent behavior (done, questions, error)
  • MockWorktreeManager — in-memory worktree simulator
  • CapturingEventBus — captures events for assertions
  • DefaultDispatchManager and DefaultPhaseDispatchManager
  • 25+ helper methods for test scenarios

Fixtures (src/test/fixtures.ts)

Pre-built task hierarchies for testing:

Fixture Structure
SIMPLE_FIXTURE 1 initiative → 1 phase → 1 group → 3 tasks (A→B, A→C deps)
PARALLEL_FIXTURE 1 initiative → 1 phase → 2 groups → 4 independent tasks
COMPLEX_FIXTURE 1 initiative → 2 phases → 4 groups → cross-phase dependencies

Real Provider Harness (src/test/integration/real-providers/harness.ts)

  • Creates real database, real agent manager with real CLI tools
  • Provides describeRealClaude() / describeRealCodex() that skip when env var not set
  • MINIMAL_PROMPTS — cheap prompts for testing output parsing

Running Tests

# Unit tests
npm test

# Specific test file
npm test -- src/agent/manager.test.ts

# Real provider tests (costs money!)
REAL_CLAUDE_TESTS=1 npm test -- src/test/integration/real-providers/ --test-timeout=300000