feat(14-08): add phaseDispatchManager to TestHarness

- Import PhaseDispatchManager type and DefaultPhaseDispatchManager
- Add phaseDispatchManager property to TestHarness interface
- Wire DefaultPhaseDispatchManager with phaseRepository and eventBus
This commit is contained in:
Lukas May
2026-02-02 13:47:09 +01:00
parent 26778c60f5
commit 38ee2d17c4

View File

@@ -15,8 +15,9 @@ import { MockAgentManager, type MockAgentScenario } from '../agent/mock-manager.
import type { PendingQuestions, QuestionItem } from '../agent/types.js';
import type { Decision, PhaseBreakdown, TaskBreakdown } from '../agent/schema.js';
import type { WorktreeManager, Worktree, WorktreeDiff, MergeResult } from '../git/types.js';
import type { DispatchManager } from '../dispatch/types.js';
import type { DispatchManager, PhaseDispatchManager } from '../dispatch/types.js';
import { DefaultDispatchManager } from '../dispatch/manager.js';
import { DefaultPhaseDispatchManager } from '../dispatch/phase-manager.js';
import type { CoordinationManager } from '../coordination/types.js';
import { DefaultCoordinationManager } from '../coordination/manager.js';
import type { TaskRepository } from '../db/repositories/task-repository.js';
@@ -195,6 +196,8 @@ export interface TestHarness {
worktreeManager: MockWorktreeManager;
/** Real dispatch manager wired to mocks */
dispatchManager: DispatchManager;
/** Real phase dispatch manager wired to phaseRepository */
phaseDispatchManager: PhaseDispatchManager;
/** Real coordination manager wired to mocks */
coordinationManager: CoordinationManager;
@@ -418,6 +421,11 @@ export function createTestHarness(): TestHarness {
eventBus
);
const phaseDispatchManager = new DefaultPhaseDispatchManager(
phaseRepository,
eventBus
);
const coordinationManager = new DefaultCoordinationManager(
worktreeManager,
taskRepository,
@@ -453,6 +461,7 @@ export function createTestHarness(): TestHarness {
mockAgentManager: agentManager, // Alias for clarity in tests
worktreeManager,
dispatchManager,
phaseDispatchManager,
coordinationManager,
// Repositories