feat: make interrupt state not final for multi-agents (#13850)

Make `interrupted` an agent state and make it not final. As a result, a
`wait` won't return on an interrupted agent and no notification will be
send to the parent agent.

The rationals are:
* If a user interrupt a sub-agent for any reason, you don't want the
parent agent to instantaneously ask the sub-agent to restart
* If a parent agent interrupt a sub-agent, no need to add a noisy
notification in the parent agen
This commit is contained in:
jif-oai
2026-03-16 16:39:40 +00:00
committed by GitHub
parent 18ad67549c
commit 3f266bcd68
29 changed files with 151 additions and 4 deletions

View File

@@ -1518,6 +1518,8 @@ pub enum AgentStatus {
PendingInit,
/// Agent is currently running.
Running,
/// Agent's current turn was interrupted and it may receive more input.
Interrupted,
/// Agent is done. Contains the final assistant message.
Completed(Option<String>),
/// Agent encountered an error.