Commit Graph

602 Commits

Author SHA1 Message Date
Lukas May
95c3f5f6b8 docs(15-03): create agent inbox wireframe
- ASCII wireframes for inbox list and message detail views
- Multi-question Q&A layout with radio/checkbox variants
- Component specifications: InboxList, MessageCard, MessageDetail, QuestionForm, OptionGroup, FreeTextInput
- Interaction flow for answer submission and real-time updates
- Filter/sort options for message management
2026-02-02 14:58:01 +01:00
Lukas May
31bb8c7758 docs(15-01): create initiative dashboard wireframe
- ASCII wireframe showing initiative list with status, progress, actions
- Empty state wireframe for no initiatives
- Component specs: InitiativeCard, ProgressBar, StatusBadge, ActionMenu, SpawnArchitectDropdown
- Interaction notes for navigation, spawning architects, filtering
- Data requirements and responsive behavior documentation
2026-02-02 14:57:42 +01:00
Lukas May
aa82eeea63 docs(15): update roadmap with plan breakdown 2026-02-02 14:54:37 +01:00
Lukas May
736852376b docs(15): create phase plans
Phase 15: Frontend Wireframes
- 3 plans in 1 wave (all parallel)
- Plan 01: Initiative Dashboard wireframe
- Plan 02: Initiative Detail wireframe (phase/task hierarchy)
- Plan 03: Agent Inbox wireframe (Q&A flow)
- Ready for execution
2026-02-02 14:54:23 +01:00
Lukas May
8d6e2e4607 docs(14): complete Parallel Phase Execution phase 2026-02-02 13:50:37 +01:00
Lukas May
aace6a3c11 docs(14-08): complete phase dispatch E2E tests plan
Tasks completed: 2/2
- Add phaseDispatchManager to TestHarness
- Create phase dispatch E2E tests

SUMMARY: .planning/phases/14-parallel-phase-execution/14-08-SUMMARY.md
2026-02-02 13:49:55 +01:00
Lukas May
491dcc5fec docs(14-07): complete unit tests for phase dependencies and dispatch
Tasks completed: 2/2
- Add PhaseRepository dependency tests (createDependency, getDependencies, getDependents)
- Add DefaultPhaseDispatchManager tests (queuePhase, getNextDispatchablePhase, dispatchNextPhase, completePhase, blockPhase)

SUMMARY: .planning/phases/14-parallel-phase-execution/14-07-SUMMARY.md
2026-02-02 13:49:20 +01:00
Lukas May
1aac486f48 test(14-07): add DefaultPhaseDispatchManager tests
- Add queuePhase tests (add to queue, emit event, include deps)
- Add getNextDispatchablePhase tests (empty, no deps first, skip incomplete, oldest)
- Add dispatchNextPhase tests (update status, emit event, remove from queue)
- Add completePhase tests (update status, remove from queue, emit event)
- Add blockPhase tests (update status, add to blocked, emit event)
- Add dependency scenario test (diamond dependency pattern)
2026-02-02 13:48:35 +01:00
Lukas May
03fefd896a test(14-08): add phase dispatch E2E tests
- Test independent phases dispatch in parallel
- Test dependent phase waits for prerequisite
- Test diamond dependency pattern (A -> B,C -> D)
- Test blocked phase prevents dispatch
- Test blocked phase propagates down dependency chain
2026-02-02 13:48:28 +01:00
Lukas May
38ee2d17c4 feat(14-08): add phaseDispatchManager to TestHarness
- Import PhaseDispatchManager type and DefaultPhaseDispatchManager
- Add phaseDispatchManager property to TestHarness interface
- Wire DefaultPhaseDispatchManager with phaseRepository and eventBus
2026-02-02 13:47:09 +01:00
Lukas May
26778c60f5 test(14-07): add PhaseRepository dependency tests
- Add createDependency tests (create, FK constraint, multiple deps)
- Add getDependencies tests (empty, with deps, direct only)
- Add getDependents tests (empty, with dependents, direct only)
- Add phase_dependencies table to test-helpers.ts
2026-02-02 13:46:53 +01:00
Lukas May
96b585a2e0 docs(14-06): complete phase CLI commands plan
- Updated STATE.md with plan 6 progress and decisions
- Created 14-06-SUMMARY.md documenting plan completion
2026-02-02 13:45:12 +01:00
Lukas May
8ad262d05e feat(cli): add phase dependency and dispatch commands
Add phase command group with dependency management and dispatch operations:
- cw phase add-dependency: Create dependency between phases
- cw phase dependencies: List dependencies for a phase
- cw phase queue: Queue phase for execution
- cw phase dispatch: Dispatch next available phase
- cw phase queue-status: Show queued, ready, and blocked phases
2026-02-02 13:43:52 +01:00
Lukas May
8bbd313488 docs(14-04): complete DefaultPhaseDispatchManager adapter plan
Tasks completed: 2/2
- Implement DefaultPhaseDispatchManager with in-memory queue
- Export DefaultPhaseDispatchManager from dispatch module

SUMMARY: .planning/phases/14-parallel-phase-execution/14-04-SUMMARY.md
2026-02-02 13:42:30 +01:00
Lukas May
ede1af3ba0 docs(14-05): complete tRPC Phase Procedures plan
Tasks completed: 2/2
- Add PhaseDispatchManager to tRPC context
- Add phase dependency and dispatch procedures

SUMMARY: .planning/phases/14-parallel-phase-execution/14-05-SUMMARY.md
2026-02-02 13:42:21 +01:00
Lukas May
5e6d507eb8 feat(14-05): add phase dependency and dispatch procedures
- Import PhaseDispatchManager type from dispatch module
- Add requirePhaseDispatchManager helper function
- Add createPhaseDependency: creates dependency between two phases
- Add getPhaseDependencies: returns phase IDs that a phase depends on
- Add queuePhase: queues phase for dispatch
- Add dispatchNextPhase: dispatches next available phase
- Add getPhaseQueueState: returns phase queue state

All procedures follow existing naming conventions and error handling patterns.
2026-02-02 13:40:51 +01:00
Lukas May
053168f6cf feat(14-04): export DefaultPhaseDispatchManager from dispatch module
- Add export for phase dispatch adapter
- Consistent with DefaultDispatchManager export pattern
2026-02-02 13:40:33 +01:00
Lukas May
1ba95871f5 feat(14-04): implement DefaultPhaseDispatchManager adapter
- In-memory queue with Map<string, QueuedPhase>
- Dependency checking via phaseRepository.getDependencies()
- queuePhase: fetch phase, get dependencies, emit PhaseQueuedEvent
- getNextDispatchablePhase: filter queue, sort by queuedAt
- dispatchNextPhase: update status to in_progress, emit PhaseStartedEvent
- completePhase: update status to completed, emit PhaseCompletedEvent
- blockPhase: update status to blocked, emit PhaseBlockedEvent
- getPhaseQueueState: return queued, ready, blocked arrays
2026-02-02 13:40:17 +01:00
Lukas May
28622cbd04 feat(14-05): add PhaseDispatchManager to tRPC context
- Import PhaseDispatchManager type from dispatch module
- Add optional phaseDispatchManager to TRPCContext interface
- Add phaseDispatchManager to CreateContextOptions
- Wire phaseDispatchManager through createContext function

Includes blocking fix: added 'blocked' status to phases schema enum
2026-02-02 13:39:47 +01:00
Lukas May
772fbe6fd1 docs(14-03): complete PhaseDispatchManager Port Interface plan
Tasks completed: 2/2
- Define PhaseDispatchManager port interface
- Export phase dispatch types

SUMMARY: .planning/phases/14-parallel-phase-execution/14-03-SUMMARY.md
2026-02-02 13:37:38 +01:00
Lukas May
a890df75d5 feat(14-03): export phase dispatch types from dispatch module
- Export QueuedPhase interface
- Export PhaseDispatchResult interface
- Export PhaseDispatchManager port interface
2026-02-02 13:36:25 +01:00
Lukas May
22cd82da40 feat(14-03): define PhaseDispatchManager port interface
- Add QueuedPhase interface (phaseId, initiativeId, queuedAt, dependsOn)
- Add PhaseDispatchResult interface (success, phaseId, reason)
- Add PhaseDispatchManager interface with queue/dispatch operations
- Methods mirror DispatchManager for consistency
2026-02-02 13:36:12 +01:00
Lukas May
4aecd68c17 docs(14-02): complete phase domain events plan
Tasks completed: 2/2
- Add phase domain events to types.ts
- Export phase events from events module

SUMMARY: .planning/phases/14-parallel-phase-execution/14-02-SUMMARY.md
2026-02-02 13:35:03 +01:00
Lukas May
ee43fc8d8c docs(14-01): complete phase dependencies schema plan
Tasks completed: 2/2
- Add phase_dependencies table to schema
- Add dependency methods to PhaseRepository

SUMMARY: .planning/phases/14-parallel-phase-execution/14-01-SUMMARY.md
2026-02-02 13:34:32 +01:00
Lukas May
e8ee7f39d7 feat(14-02): export phase events from events module
- PhaseQueuedEvent
- PhaseStartedEvent
- PhaseCompletedEvent
- PhaseBlockedEvent
2026-02-02 13:33:32 +01:00
Lukas May
8e68a6e89e feat(14-01): add dependency methods to PhaseRepository
- Add createDependency(phaseId, dependsOnPhaseId) to interface and adapter
- Add getDependencies(phaseId) returning IDs of phases this phase depends on
- Add getDependents(phaseId) returning IDs of phases that depend on this phase
- Import phaseDependencies table in DrizzlePhaseRepository
- Follow exact pattern from DrizzleTaskRepository.createDependency
2026-02-02 13:33:16 +01:00
Lukas May
cd02439ca9 feat(14-02): add phase domain events
- PhaseQueuedEvent for tracking phases awaiting execution
- PhaseStartedEvent for phase execution start
- PhaseCompletedEvent for phase completion with success flag
- PhaseBlockedEvent for blocked phases with reason
2026-02-02 13:32:24 +01:00
Lukas May
a55d08fffe feat(14-01): add phase_dependencies table to schema
- Add phase_dependencies table mirroring task_dependencies pattern
- Add phaseId and dependsOnPhaseId FK columns with cascade delete
- Add phasesRelations with dependsOn and dependents many relations
- Add phaseDependenciesRelations with phase and dependsOnPhase one relations
- Export PhaseDependency and NewPhaseDependency types
2026-02-02 13:32:19 +01:00
Lukas May
7146c8f823 docs(14): update roadmap with phase 14 plan breakdown 2026-02-02 11:02:56 +01:00
Lukas May
4b454cadf3 docs(14): create phase plans for parallel phase execution
Phase 14: Parallel Phase Execution
- 8 plans in 5 waves
- 4 parallel in Wave 1, 3, 5
- Adds phase_dependencies schema (mirrors task_dependencies)
- PhaseDispatchManager port and adapter
- tRPC procedures and CLI commands
- Unit tests and E2E tests
2026-02-02 11:02:39 +01:00
Lukas May
dddd553450 docs: create milestone v1.3 Parallel Execution & UI Design (2 phases)
Phases:
- 14. Parallel Phase Execution: add phase dependencies, concurrent execution
- 15. Frontend Wireframes: markdown diagrams for UI screens
2026-02-02 10:59:29 +01:00
Lukas May
9f149f5f9b chore: archive v1.2 milestone
- Added v1.2 entry to MILESTONES.md
- Created milestones/v1.2-ROADMAP.md archive
- Updated ROADMAP.md with archive link
- Evolved PROJECT.md with v1.2 validated requirements
- Updated STATE.md for next milestone planning
2026-02-02 10:46:41 +01:00
Lukas May
2dc51c74d3 docs(13-01): complete Real Claude CLI Integration Tests plan
Tasks completed: 3/3
- Create real Claude CLI integration test file
- Fix ClaudeAgentManager to parse structured_output
- Run real Claude tests and document findings

SUMMARY: .planning/phases/13-real-claude-e2e-tests/13-01-SUMMARY.md

Milestone v1.2 complete (21 plans, 4 phases)
2026-02-02 10:41:47 +01:00
Lukas May
accbaca49d docs(13-01): document Claude CLI structured_output findings
- Add proper test timeouts (120s for real API calls)
- Document key finding: result field is empty, structured_output has data
- Add validation cost estimates (~$0.025 per simple call)
- Confirm MockAgentManager accurately simulates real CLI behavior
2026-02-02 10:40:05 +01:00
Lukas May
5605547aea fix(13-01): parse structured_output from Claude CLI response
- Add structured_output field to ClaudeCliResult interface
- Read from structured_output when present (--json-schema response)
- Fall back to parsing result for backwards compatibility
2026-02-02 10:38:10 +01:00
Lukas May
3c98dbe541 test(13-01): create real Claude CLI integration tests
- Add test file for validating JSON schemas with real Claude CLI
- Tests are skipped by default (REAL_CLAUDE_TESTS=1 to enable)
- Covers execute, discuss, breakdown, and decompose modes
- Helper function callClaudeCli() handles CLI invocation
2026-02-02 10:37:40 +01:00
Lukas May
6835dd45d5 docs(13): create phase plan for real Claude CLI integration tests
Phase 13: Real Claude E2E Tests
- 1 plan in 1 wave
- Validates JSON schemas with actual Claude CLI
- Fixes structured_output parsing in ClaudeAgentManager
- Tests skipped by default (expensive)
2026-02-02 10:31:45 +01:00
Lukas May
5de7cd5f04 docs(12-08): complete TestHarness helpers & decompose E2E tests plan
Tasks completed: 2/2
- Add TestHarness decompose mode helpers
- Add decompose mode E2E tests

Phase 12 complete (8/8 plans).

SUMMARY: .planning/phases/12-phase-task-decomposition/12-08-SUMMARY.md
2026-02-01 11:58:26 +01:00
Lukas May
9b370a2617 test(12-08): add E2E tests for decompose workflow
- Add tests for spawn decompose agent with completion
- Add tests for Q&A flow with questions and resume
- Add tests for multiple questions handling
- Add tests for task persistence from decomposition
- Add tests for all task types (auto, checkpoint variants)
- Add tests for task dependencies
- Add full workflow test: initiative -> phase -> plan -> decompose -> tasks
2026-02-01 11:56:55 +01:00
Lukas May
7c9200d755 docs(12-07): complete Unit Tests for Decompose Mode & PlanRepository plan
- Add 5 MockAgentManager decompose mode tests
- Add 3 PlanRepository getNextNumber tests
- Update STATE.md with plan 7 completion
2026-02-01 11:56:52 +01:00
Lukas May
4263c0884e feat(12-08): add TestHarness decompose mode helpers
- Add setArchitectDecomposeComplete and setArchitectDecomposeQuestions helpers
- Add planRepository to harness for plan operations
- Add createPlan and getTasksForPlan convenience methods
- Import TaskBreakdown and Plan types
2026-02-01 11:55:28 +01:00
Lukas May
a61530359a test(12-07): add PlanRepository getNextNumber tests
Add tests for getNextNumber method:
- Returns 1 for phase with no plans
- Returns max + 1 for phase with existing plans
- Not affected by plans in other phases
2026-02-01 11:54:43 +01:00
Lukas May
a79b15376e test(12-07): add MockAgentManager decompose mode tests
Add tests for decompose mode scenarios:
- Spawn agent in decompose mode
- Complete with tasks on decompose_complete
- Pause on questions in decompose mode
- Emit stopped event with decompose_complete reason
- Set result message with task count
2026-02-01 11:54:20 +01:00
Lukas May
da5401e3cf docs(12-06): complete Plan CLI Commands & Architect Decompose plan
- Add 12-06-SUMMARY.md documenting plan and architect CLI commands
- Update STATE.md position to plan 6/8 and 47 plans completed
2026-02-01 11:52:45 +01:00
Lukas May
6a2b835fdf feat(12-06): add plan CLI commands and architect decompose command
Add CLI commands for plan management:
- cw plan list --phase <id>: List plans in a phase
- cw plan create --phase <id> --name <name>: Create a plan
- cw plan get <id>: Get plan details
- cw plan tasks <id>: List tasks in a plan

Add architect decompose command:
- cw architect decompose <planId>: Spawn agent to decompose plan into tasks
2026-02-01 11:51:54 +01:00
Lukas May
0bb6d63bb7 docs(12-05): complete Decompose Prompts & Spawn Procedure plan
Tasks completed: 3/3
- Create buildDecomposePrompt function
- Export buildDecomposePrompt from agent index
- Add spawnArchitectDecompose tRPC procedure

SUMMARY: .planning/phases/12-phase-task-decomposition/12-05-SUMMARY.md
2026-02-01 11:51:25 +01:00
Lukas May
1fcbdf5e10 feat(12-05): add spawnArchitectDecompose tRPC procedure
- Import buildDecomposePrompt from agent prompts
- Add spawnArchitectDecompose procedure for decompose mode
- Validates plan and phase exist before spawning
- Spawns agent with decompose mode and comprehensive prompt
2026-02-01 11:50:35 +01:00
Lukas May
7ff979becf feat(12-05): export buildDecomposePrompt from agent module
- Add buildDecomposePrompt to public exports
2026-02-01 11:49:57 +01:00
Lukas May
48336ec39d feat(12-05): create buildDecomposePrompt function
- Add buildDecomposePrompt for decompose mode agent operations
- Import Phase and Plan types from schema
- Comprehensive prompt explaining task breakdown rules, types, and output format
2026-02-01 11:49:45 +01:00
Lukas May
8844842fed docs(12-04): complete Plan & Task tRPC procedures plan
Tasks completed: 3/3
- Add PlanRepository to tRPC context
- Add Plan tRPC procedures (CRUD)
- Add createTasksFromDecomposition procedure

SUMMARY: .planning/phases/12-phase-task-decomposition/12-04-SUMMARY.md
2026-02-01 11:48:21 +01:00