feat: add live progress during orchestrator plan generation

New SSE event orchestrator:planProgress streams phase/detail updates
from the planner to the frontend in real-time. The panel now shows
a scrollable log of planning steps instead of just "Generating plan..."

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
arkon
2026-03-21 20:03:24 +01:00
co-authored by Claude Opus 4.6
parent 6e64ddd853
commit 7b7cf958c0
7 changed files with 52 additions and 4 deletions
+2 -2
View File
@@ -62,6 +62,7 @@ const POST_PHASE_DELAY_MS = 1000;
export interface OrchestratorLoopEvents {
stateChanged: (state: OrchestratorState, prevState: OrchestratorState) => void;
planProgress: (phase: string, detail: string) => void;
planReady: (plan: OrchestratorPlan) => void;
phaseStarted: (phase: OrchestratorPhase) => void;
phaseCompleted: (phase: OrchestratorPhase) => void;
@@ -143,8 +144,7 @@ export class OrchestratorLoop extends EventEmitter {
try {
const plan = await this.planner.generatePlan(goal, (phase, detail) => {
// Forward planning progress — could emit an event here
console.log(`[Orchestrator] Planning: ${phase} — ${detail}`);
this.emit('planProgress', phase, detail);
});
if (this.currentState() !== 'planning') {