From 50dd582641fdbb2bb5c487e0ee8aaa18361fd8da Mon Sep 17 00:00:00 2001 From: sususu Date: Sun, 13 Sep 2026 16:23:13 +0800 Subject: [PATCH] fix(devin): update streaming tool call step metadata if arriving in subsequent frames --- internal/runtime/executor/devin_executor.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/internal/runtime/executor/devin_executor.go b/internal/runtime/executor/devin_executor.go index 7a920676e..dc9e5e4a7 100644 --- a/internal/runtime/executor/devin_executor.go +++ b/internal/runtime/executor/devin_executor.go @@ -700,6 +700,12 @@ func (e *DevinExecutor) streamDevinFrames( if !emitInteractionsEvent(startEvent) { return } + } else if tc.Name != "" || tc.ID != "" { + updateEvent, _ := sjson.SetBytes([]byte(`{"event_type":"step.start","index":0,"step":{"type":"function_call","name":"","id":"","call_id":"","arguments":{}}}`), "index", sIdx) + updateEvent, _ = sjson.SetBytes(updateEvent, "step.name", tc.Name) + updateEvent, _ = sjson.SetBytes(updateEvent, "step.id", tc.ID) + updateEvent, _ = sjson.SetBytes(updateEvent, "step.call_id", tc.ID) + _ = emitInteractionsEvent(updateEvent) } if tc.Arguments != "" {