Summary
Implement mid-execution escalation: when an agent encounters a decision point requiring user input, the graph pauses indefinitely in a WAITING_FOR_INPUT state, notifies the user via Chat, and resumes when they respond.
Context
Per the Dashboard Workflow Roadmap, Section 2.4. Currently, agents either complete autonomously or escalate at the end (budget/retry exhaustion). This adds a mid-stream pause mechanism for ambiguous decisions that need human judgment.
Design
Escalation Flow
- Agent encounters decision point exceeding its authority
- Graph enters
WAITING_FOR_INPUT state (reuses existing ESCALATED non-terminal status)
- Token budget clock pauses
- Chat UI receives SSE event triggering notification badge on Chat activity bar icon
- Planner reformulates the question as a clear prompt for the user
- User responds in Chat
- Response feeds back into the graph at the requesting node
- Token budget clock resumes
Timeout Behavior
Pause indefinitely until user responds. No auto-cancel, no best-guess attempts. The task waits.
SSE Events
# New SSE event type
{
"type": "waiting_for_input",
"task_id": "...",
"agent_id": "dev",
"question": "Should I use REST or GraphQL for this endpoint?",
"context": "...",
"timestamp": "..."
}
# Resume event
{
"type": "input_received",
"task_id": "...",
"response": "Use GraphQL",
"timestamp": "..."
}
Acceptance Criteria
Dependencies
Effort
Medium (1-2 sessions)
Source
Dashboard Workflow Roadmap, Section 2.4 — Mid-Execution Escalation
Summary
Implement mid-execution escalation: when an agent encounters a decision point requiring user input, the graph pauses indefinitely in a
WAITING_FOR_INPUTstate, notifies the user via Chat, and resumes when they respond.Context
Per the Dashboard Workflow Roadmap, Section 2.4. Currently, agents either complete autonomously or escalate at the end (budget/retry exhaustion). This adds a mid-stream pause mechanism for ambiguous decisions that need human judgment.
Design
Escalation Flow
WAITING_FOR_INPUTstate (reuses existingESCALATEDnon-terminal status)Timeout Behavior
Pause indefinitely until user responds. No auto-cancel, no best-guess attempts. The task waits.
SSE Events
Acceptance Criteria
WAITING_FOR_INPUTgraph state (reusingESCALATEDnon-terminal status)waiting_for_inputevent emitted with question and contextDependencies
Effort
Medium (1-2 sessions)
Source
Dashboard Workflow Roadmap, Section 2.4 — Mid-Execution Escalation