chore: complete v1.1 milestone
- Created MILESTONES.md with v1.0 and v1.1 entries - Evolved PROJECT.md with validated requirements and current state - Reorganized ROADMAP.md with collapsed v1.1 milestone - Created milestone archive: milestones/v1.1-ROADMAP.md - Updated STATE.md for next milestone planning
This commit is contained in:
102
.planning/milestones/v1.1-ROADMAP.md
Normal file
102
.planning/milestones/v1.1-ROADMAP.md
Normal file
@@ -0,0 +1,102 @@
|
||||
# Milestone v1.1: Test Infrastructure
|
||||
|
||||
**Status:** SHIPPED 2026-01-31
|
||||
**Phases:** 7-9 (including 8.1 inserted)
|
||||
**Total Plans:** 8
|
||||
|
||||
## Overview
|
||||
|
||||
E2E test coverage with mocked agents proving all dispatch/coordination scenarios work end-to-end. MockAgentManager enables testing without real Claude CLI, TestHarness provides full system wiring with database fixtures.
|
||||
|
||||
## Phases
|
||||
|
||||
### Phase 7: Mock Agent & Test Harness
|
||||
|
||||
**Goal**: Mock agent adapter with configurable scenarios + test harness foundation with DB-seeded fixtures
|
||||
**Depends on**: v1.0 complete
|
||||
**Plans**: 2 plans
|
||||
|
||||
Plans:
|
||||
- [x] 07-01: MockAgentManager Adapter
|
||||
- [x] 07-02: Test Harness with Database Fixtures
|
||||
|
||||
**Key deliverables:**
|
||||
- MockAgentManager implementing full AgentManager port
|
||||
- MockAgentScenario for configurable outcomes (success, crash, waiting)
|
||||
- TestHarness with full system wiring (Dispatch, Coordination, Mock agents)
|
||||
- Fixture helpers (SIMPLE_FIXTURE, PARALLEL_FIXTURE, COMPLEX_FIXTURE)
|
||||
- MockWorktreeManager with configurable merge results
|
||||
|
||||
### Phase 8: E2E Scenario Tests
|
||||
|
||||
**Goal**: Happy path tests (basic flow, dependencies, merging) + edge case tests (conflicts, interrupts, token limits)
|
||||
**Depends on**: Phase 7
|
||||
**Plans**: 2 plans
|
||||
|
||||
Plans:
|
||||
- [x] 08-01: Happy Path E2E Tests
|
||||
- [x] 08-02: Edge Case E2E Tests
|
||||
|
||||
**Key deliverables:**
|
||||
- 6 happy path tests (single task, parallel dispatch, merge flow, complex dependencies)
|
||||
- 14 edge case tests (agent crash, merge conflicts, blocked tasks, waiting agents)
|
||||
- Test patterns for E2E scenarios with fake timers
|
||||
|
||||
### Phase 8.1: Agent Output Schema (INSERTED)
|
||||
|
||||
**Goal**: Define structured agent output schema (done/question/error discriminated union) and update ClaudeAgentManager to use `--json-schema` flag for validated output parsing
|
||||
**Depends on**: Phase 8
|
||||
**Plans**: 2 plans
|
||||
|
||||
Plans:
|
||||
- [x] 08.1-01: Agent Output Schema & ClaudeAgentManager
|
||||
- [x] 08.1-02: MockAgentManager Schema Alignment
|
||||
|
||||
**Key deliverables:**
|
||||
- Zod schema with discriminated union (done/question/unrecoverable_error)
|
||||
- JSON schema export for Claude CLI --json-schema flag
|
||||
- ClaudeAgentManager parsing structured output
|
||||
- MockAgentManager aligned with schema
|
||||
- TestHarness convenience methods (setAgentDone, setAgentQuestion, setAgentError)
|
||||
|
||||
### Phase 9: Extended Scenarios
|
||||
|
||||
**Goal**: Extended E2E scenario coverage — conflict hand-back round-trip, multi-agent parallel work, recovery/resume flows
|
||||
**Depends on**: Phase 8.1
|
||||
**Plans**: 2 plans
|
||||
|
||||
Plans:
|
||||
- [x] 09-01: Conflict & Parallel E2E Tests
|
||||
- [x] 09-02: Recovery & Resume E2E Tests
|
||||
|
||||
**Key deliverables:**
|
||||
- 6 conflict and parallel tests (conflict cycle, resolution, parallel merges)
|
||||
- 8 recovery and Q&A tests (state persistence, crash recovery, multi-question flows)
|
||||
- Proof that database is source of truth for all state
|
||||
|
||||
---
|
||||
|
||||
## Milestone Summary
|
||||
|
||||
**Decimal Phases:**
|
||||
- Phase 8.1: Agent Output Schema (inserted after Phase 8 for structured agent output)
|
||||
|
||||
**Key Decisions:**
|
||||
- MockAgentManager uses in-memory Map (no database needed)
|
||||
- TestHarness pre-seeds idle agents before dispatch
|
||||
- Discriminated union on status field for agent output
|
||||
- JSON schema passed to Claude CLI via --json-schema flag
|
||||
- Database is source of truth for recovery scenarios
|
||||
|
||||
**Issues Resolved:**
|
||||
- Agent output parsing was hacky string matching — now structured schema
|
||||
- No way to test dispatch/coordination without real Claude CLI — MockAgentManager solves this
|
||||
|
||||
**Issues Deferred:**
|
||||
- None
|
||||
|
||||
**Technical Debt Incurred:**
|
||||
- None
|
||||
|
||||
---
|
||||
*For current project status, see .planning/ROADMAP.md*
|
||||
Reference in New Issue
Block a user