Agent: programmer (
programmer)
Confidence: 80%
Cost: $0.7080
Duration: 2m 19s
Task ID:08ac2732-b794-4492-b40b-f6de232b08c1
修改摘要
問題
pipelineRunId 從未被賦值給 pipeline task,導致 !task.pipelineRunId guard 永遠為 true,pipeline task 完成時 worker-scheduler 和 pipeline-engine 都會處理 HANDOFF,造成下游 agent 被 dispatch 兩次。
修改(2 個檔案,commit 9b0f7c2)
src/agents/worker-scheduler.ts:
- L225: 在
enqueueTask()opts 型別中新增pipelineRunId?: string - L259: 在 task 物件建立時賦值
pipelineRunId: opts?.pipelineRunId
src/agents/pipeline-engine.ts:
- L735:
enqueueTask()呼叫改為enqueueTask(stage.agentName, prompt, 7, { pipelineRunId: run.id })
驗證
tsgo --noEmit: 通過,零錯誤- 現有呼叫點向後相容(
pipelineRunId是 optional,不傳則undefined)
—HANDOFF—
TO: reviewer
INTENT: handoff
ARTIFACT_TYPE: code-change
SUMMARY: 修復 pipelineRunId guard 無效導致 HANDOFF 雙重 dispatch 的 bug