Commit Graph

259 Commits

Author SHA1 Message Date
Lukas May
6c3188020d docs: create milestone v2.0 Frontend (6 phases)
Phases:
- 16. frontend-scaffold: Vite project setup, tRPC client, shadcn/ui
- 17. initiative-dashboard: List view with status badges, progress bars
- 18. initiative-detail: Phase/task hierarchy accordion, queue actions
- 19. agent-inbox: Multi-question forms, answer submission, notifications
- 20. real-time-subscriptions: WebSocket transport, subscription hooks
- 21. polish-integration: Navigation, error/loading states, responsive layout
2026-02-04 16:52:29 +01:00
Lukas May
98fb3477b0 chore: complete v1.3 milestone
- Added MILESTONES.md entry
- Evolved PROJECT.md with validated requirements
- Created milestone archive: milestones/v1.3-ROADMAP.md
- Updated STATE.md
- Tagged v1.3
2026-02-04 16:46:20 +01:00
Lukas May
1156933a8e fix(15-02): remove Plan layer from UI hierarchy
Simplified to Initiative → Phase → Task (no intermediate Plan layer).
Removed PlanTree component, tasks now directly under PhaseAccordion.
2026-02-02 15:48:52 +01:00
Lukas May
05b7b717f8 docs(15): complete frontend wireframes phase
- Phase 15/15 complete: all 3 wireframe plans executed
- Milestone v1.3 shipped (Parallel Execution & UI Design)
- 61 total plans completed across 15 phases
2026-02-02 15:25:56 +01:00
Lukas May
788bfce21d docs(15-03): add agent inbox wireframe summary
Document completion of Plan 15-03 with commit reference and
component specifications for InboxList, MessageCard, MessageDetail,
QuestionForm, OptionGroup, and FreeTextInput.
2026-02-02 15:23:42 +01:00
Lukas May
51e7fbe978 docs(15-02): add plan summary for initiative detail wireframe 2026-02-02 15:23:40 +01:00
Lukas May
c1386ed227 docs(15-02): create initiative detail wireframe with hierarchical breakdown
- ASCII wireframe showing phase -> plan -> task hierarchy
- Status indicators: DONE, IN PROGRESS, PENDING, BLOCKED
- Agent assignments shown inline with tasks
- Dependency visualization with ^ indicators
- Component specs: PhaseAccordion, PlanTree, TaskRow, DependencyIndicator, DecisionList
- Interaction notes for click actions, modals, and spawn dialog
2026-02-02 14:58:06 +01:00
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