diff --git a/workspace/heartbeat.py b/workspace/heartbeat.py index d345d5a7..d51f61eb 100644 --- a/workspace/heartbeat.py +++ b/workspace/heartbeat.py @@ -6,6 +6,14 @@ Every 30 seconds: 3. Store completed delegation results for the agent to pick up Resilient: recreates HTTP client on failure, auto-restarts on crash. + +Fix #354 (auto-resume after async A2A delegations): when multiple +delegate_task calls fire in parallel and exceed the per-turn timeout, +the claude-code subprocess ends before results arrive. The proxy-path +results are now stored with method='delegate_result' (fix #376 / +a2a_proxy_helpers.go logA2ADelegationResult), so _check_delegations +finds them on the next heartbeat tick and sends a self-message to +wake the agent with the results. """ import asyncio