#802 call_agent agent-to-agent handoff (Stage 3 part 2, #801 task 21)

closed medium agentic Created 2026-07-03 01:37 · Updated 2026-07-03 01:54

Description

Edit
Implemented call_agent handoff. NEW child template api/dsl_templates/agent_call_child.py (init_goal -> while_loop run_goal(named spec kwargs) -> record_join). NEW tools.agent.call_agent in enterprise/tools/multi_agent.py mirroring spawn_subgoals: expected=1 join agent_call_<run>_<okey>, first_seed guard, JumperSleepError suspend, SCOPED reconcile _reconcile_failed_call_child (avoids over-counting a co-running delegate fan-out's failed leaf into the expected=1 handoff join). Catalog entry call_agent {agent,task} in agent_catalog.py. Registry waits_for_event=True. depth<=1 via workflow_run.tags.agent_call_depth read + catalog strip of call_agent. HITL via tools.agent.call_agent in default approval_required_tools (agent_run_goal template + MCP _BASE_APPROVALS/_BASE_CATALOG). REGISTRATION FINDING: workflow_definition has NO deploy-time seed/scan; agent_call_child must be submitted via POST /workflows python_dsl like agent_leaf (created_by api_key:agents, tenant demo); get_latest_definition is name-keyed/global so one submit resolves for all tenants. Syntax+build validated; NOT deployed/gated (separate supervised step). Parent epic 801.

Comments

Loading comments...

Context

Loading context...

Audit History

View All
Loading audit history...