auto-sync: 2026-06-04 23:51:44
This commit is contained in:
+10
-2
@@ -573,7 +573,8 @@ curl -X POST http://{self.api_host}:{self.api_port}/api/projects/{project_id}/ta
|
||||
stdout=asyncio.subprocess.PIPE,
|
||||
stderr=asyncio.subprocess.PIPE,
|
||||
)
|
||||
self._register_session(session_id, agent_id, task_id, proc.pid)
|
||||
self._register_session(session_id, agent_id, task_id, proc.pid,
|
||||
broadcast_task_ids=broadcast_task_ids)
|
||||
logger.info("Spawned agent %s (session=%s, pid=%d)",
|
||||
agent_id, session_id, proc.pid)
|
||||
|
||||
@@ -759,7 +760,14 @@ curl -X POST http://{api_host}:{api_port}/api/projects/{project_id}/tasks/{task_
|
||||
agent_id, session_id, outcome, exit_code, task_status)
|
||||
|
||||
# 广播反馈追踪(Phase 1 bug fix)
|
||||
if task_id and task_id != "broadcast" and hasattr(self, '_ticker') and self._ticker:
|
||||
if task_id == "broadcast" and hasattr(self, '_ticker') and self._ticker:
|
||||
# 广播任务:从 session 信息取真实 task_id 列表,逐一回调 tracker
|
||||
sess_info = self._sessions.get(session_id or "main", {})
|
||||
bt_ids = sess_info.get("broadcast_task_ids") or []
|
||||
outcome_str = "claimed" if cls.get("status") == "ok" else "no_reply"
|
||||
for real_task_id in bt_ids:
|
||||
self._ticker.record_broadcast_response(real_task_id, agent_id, outcome_str)
|
||||
elif task_id and hasattr(self, '_ticker') and self._ticker:
|
||||
outcome_str = "claimed" if cls.get("status") == "ok" else "no_reply"
|
||||
self._ticker.record_broadcast_response(task_id, agent_id, outcome_str)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user