fix(runner): preserve injection flag after max-iteration drain

Keep late follow-up injections observable when they are drained during max-iteration shutdown so loop-level response suppression still makes the right decision.

Made-with: Cursor
This commit is contained in:
Xubin Ren
2026-04-14 00:30:30 +08:00
committed by Xubin Ren
parent a1e1eed2f1
commit a38bc637bd
2 changed files with 67 additions and 1 deletions
+3 -1
View File
@@ -515,10 +515,12 @@ class AgentRunner:
# independent inbound messages by _dispatch's finally block.
# We ignore should_continue here because the for-loop has already
# exhausted all iterations.
_, injection_cycles = await self._try_drain_injections(
drained_after_max_iterations, injection_cycles = await self._try_drain_injections(
spec, messages, None, injection_cycles,
phase="after max_iterations",
)
if drained_after_max_iterations:
had_injections = True
return AgentRunResult(
final_content=final_content,