Files
2026-07-13 12:58:18 +08:00

71 lines
2.7 KiB
Markdown

# QA: Sub-Agents — LangGraph (FastAPI)
## Prerequisites
- Demo is deployed and accessible
- Agent backend is healthy (check `/api/copilotkit` GET — `agent_status: "reachable"`)
- `OPENAI_API_KEY` is set in the agent environment
## What this demo proves
- A supervisor LLM exposes three sub-agents (`research_agent`,
`writing_agent`, `critique_agent`) as tools.
- Each sub-agent is a real `create_agent(...)` with its own system
prompt — the supervisor does NOT just template-fill responses.
- Every delegation appends an entry to the `delegations` slot of agent
state, which the UI renders live as a delegation log.
## Test Steps
### 1. Page loads with delegation log + chat
- [ ] Navigate to `/demos/subagents`
- [ ] The delegation log (`data-testid="delegation-log"`) is visible on the left
- [ ] Header reads "Sub-agent delegations"
- [ ] Counter (`data-testid="delegation-count"`) reads "0 calls"
- [ ] Empty state copy: "Ask the supervisor to complete a task..."
- [ ] Chat is visible on the right with placeholder "Give the supervisor a task..."
### 2. Supervisor running indicator
- [ ] Send the "Write a blog post" suggestion
- [ ] Within ~2 seconds the `supervisor-running` badge appears on the log header
- [ ] The badge has the pulsing dot and "Supervisor running" label
### 3. Delegations appear live
- [ ] As the run progresses, `delegation-entry` rows appear one at a time
- [ ] Counter increments accordingly (1 calls, 2 calls, 3 calls)
- [ ] Typical sequence on the "Write a blog post" suggestion:
- [ ] First entry shows the Research badge (`🔎 Research`)
- [ ] Second entry shows the Writing badge (`✍️ Writing`)
- [ ] Third entry shows the Critique badge (`🧐 Critique`)
- [ ] Each entry shows the task on one line and the sub-agent's result
below it in the result panel
- [ ] Each entry status shows `completed`
### 4. Result quality (sanity check)
- [ ] The research entry's result is a bulleted list of 3-5 facts
- [ ] The writing entry's result is a single coherent paragraph
- [ ] The critique entry's result is 2-3 bullet/critique items
- [ ] When the supervisor finishes, the `supervisor-running` badge disappears
### 5. Multiple runs accumulate
- [ ] Send the "Explain a topic" suggestion next
- [ ] Counter continues from previous total (does not reset)
- [ ] New delegation entries are appended at the bottom
### 6. Error handling
- [ ] Sending an empty message is handled gracefully (no crash)
- [ ] No console errors during a normal run
## Expected Results
- Chat loads within 3 seconds
- First delegation appears within ~10 seconds of sending a task
- A typical 3-step plan completes in under 60 seconds
- No UI errors, broken layouts, or console warnings