mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-05-07 23:02:39 +02:00
fix(multi-agent): defensive message extraction on subagent task return
This commit is contained in:
parent
07a84d1a41
commit
997d860790
1 changed files with 10 additions and 3 deletions
|
|
@ -69,9 +69,16 @@ def build_task_tool_with_parent_config(
|
||||||
raise ValueError(msg)
|
raise ValueError(msg)
|
||||||
|
|
||||||
state_update = {k: v for k, v in result.items() if k not in EXCLUDED_STATE_KEYS}
|
state_update = {k: v for k, v in result.items() if k not in EXCLUDED_STATE_KEYS}
|
||||||
message_text = (
|
messages = result["messages"]
|
||||||
result["messages"][-1].text.rstrip() if result["messages"][-1].text else ""
|
if not messages:
|
||||||
)
|
msg = (
|
||||||
|
"CompiledSubAgent returned an empty 'messages' list. "
|
||||||
|
"Subagents must produce at least one message so the parent has "
|
||||||
|
"output to forward back to the user."
|
||||||
|
)
|
||||||
|
raise ValueError(msg)
|
||||||
|
last_text = getattr(messages[-1], "text", None) or ""
|
||||||
|
message_text = last_text.rstrip()
|
||||||
return Command(
|
return Command(
|
||||||
update={
|
update={
|
||||||
**state_update,
|
**state_update,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue