From 40f6205cdfe7de566bfc074513daaa5a6f426b39 Mon Sep 17 00:00:00 2001 From: pku-xht Date: Fri, 21 Aug 2026 03:55:33 +0800 Subject: [PATCH] test(snapshot): stabilize DSH SDK route usage --- .../subagent-dsh-sdk/child-mock-llm.ts | 2 +- .../subagent-dsh-sdk/mock-delegating-llm.ts | 2 +- .../notifications.expected.jsonl | 4 +- .../session.1.jsonl | 34 ++++++------ .../session.jsonl | 54 +++++++++---------- 5 files changed, 48 insertions(+), 48 deletions(-) diff --git a/examples/python-sdk-agent/tests/fixtures/subagent/subagent-dsh-sdk/child-mock-llm.ts b/examples/python-sdk-agent/tests/fixtures/subagent/subagent-dsh-sdk/child-mock-llm.ts index 0954f7a4b5..6eb50efc7f 100644 --- a/examples/python-sdk-agent/tests/fixtures/subagent/subagent-dsh-sdk/child-mock-llm.ts +++ b/examples/python-sdk-agent/tests/fixtures/subagent/subagent-dsh-sdk/child-mock-llm.ts @@ -35,7 +35,7 @@ class RouteEchoAdapter extends LlmAdapter { yield { type: 'block-start', index: 0, blockType: 'text' } yield { type: 'text-delta', index: 0, text: reply } yield { type: 'block-end', index: 0, block: { type: 'text', text: reply } } - yield { type: 'usage', usage: { inputTokens: 3, outputTokens: reply.length } } + yield { type: 'usage', usage: { inputTokens: 3, outputTokens: 5 } } yield { type: 'finish', reason: { kind: 'stop' } } } } diff --git a/examples/python-sdk-agent/tests/fixtures/subagent/subagent-dsh-sdk/mock-delegating-llm.ts b/examples/python-sdk-agent/tests/fixtures/subagent/subagent-dsh-sdk/mock-delegating-llm.ts index 74692dfddb..856d271b94 100644 --- a/examples/python-sdk-agent/tests/fixtures/subagent/subagent-dsh-sdk/mock-delegating-llm.ts +++ b/examples/python-sdk-agent/tests/fixtures/subagent/subagent-dsh-sdk/mock-delegating-llm.ts @@ -48,7 +48,7 @@ class MockDelegatingAdapter extends LlmAdapter { yield { type: 'block-start', index: 0, blockType: 'text' } yield { type: 'text-delta', index: 0, text: reply } yield { type: 'block-end', index: 0, block: { type: 'text', text: reply } } - yield { type: 'usage', usage: { inputTokens: 10, outputTokens: reply.length } } + yield { type: 'usage', usage: { inputTokens: 10, outputTokens: 5 } } yield { type: 'finish', reason: { kind: 'stop' } } } } diff --git a/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/notifications.expected.jsonl b/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/notifications.expected.jsonl index 3be42f6a0f..77daa04bb0 100644 --- a/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/notifications.expected.jsonl +++ b/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/notifications.expected.jsonl @@ -20,9 +20,9 @@ {"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"assistant/chunk","seq":18,"time":0,"data":{"turn":1,"step":2,"chunk":{"type":"block-start","index":0,"blockType":"text"}}}}} {"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"assistant/chunk","seq":19,"time":0,"data":{"turn":1,"step":2,"chunk":{"type":"text-delta","index":0,"text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}}}}} {"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"assistant/chunk","seq":20,"time":0,"data":{"turn":1,"step":2,"chunk":{"type":"block-end","index":0,"block":{"type":"text","text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}}}}}} -{"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"assistant/chunk","seq":21,"time":0,"data":{"turn":1,"step":2,"chunk":{"type":"usage","usage":{"inputTokens":10,"outputTokens":167}}}}}} +{"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"assistant/chunk","seq":21,"time":0,"data":{"turn":1,"step":2,"chunk":{"type":"usage","usage":{"inputTokens":10,"outputTokens":5}}}}}} {"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"assistant/chunk","seq":22,"time":0,"data":{"turn":1,"step":2,"chunk":{"type":"finish","reason":{"kind":"stop"}}}}}} -{"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"assistant/message","seq":23,"time":0,"data":{"turn":1,"step":2,"message":{"role":"assistant","content":[{"type":"text","text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}],"source":{"kind":"model","provider":"mock","model":"mock-delegate"},"id":"{{sessionId}}"},"usage":{"inputTokens":10,"outputTokens":167}},"sourceEventSeqs":[18,19,20,21,22],"surfaceOp":"append"}}} +{"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"assistant/message","seq":23,"time":0,"data":{"turn":1,"step":2,"message":{"role":"assistant","content":[{"type":"text","text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}],"source":{"kind":"model","provider":"mock","model":"mock-delegate"},"id":"{{sessionId}}"},"usage":{"inputTokens":10,"outputTokens":5}},"sourceEventSeqs":[18,19,20,21,22],"surfaceOp":"append"}}} {"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"step/end","seq":24,"time":0,"data":{"turn":1,"step":2}}}} {"method":"session.event","params":{"sessionId":"{{sessionId}}","event":{"type":"turn/end","seq":25,"time":0,"data":{"turn":1,"reason":{"kind":"completed"}}}}} {"method":"session.status","params":{"sessionId":"{{sessionId}}","status":"idle"}} diff --git a/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/session.1.jsonl b/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/session.1.jsonl index fde0cd24dc..721740f498 100644 --- a/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/session.1.jsonl +++ b/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/session.1.jsonl @@ -1,17 +1,17 @@ -{"type":"session","version":0,"id":"session-d9caef61eced4f94a2d4f6265020896e","createdAt":1787254273406,"cwd":"{{cwd}}","delegationDepth":0} -{"type":"agent/inbox/spliced","seq":0,"time":1787254273407,"data":{"target":"next-turn","start":0,"inserted":[{"content":[{"type":"text","text":"report your route and workspace"}],"source":{"kind":"user"},"role":"user","id":"18ece5d3-8dc4-4841-bc67-3287b1eb8ab2"}]}} -{"type":"turn/start","seq":1,"time":1787254273408,"data":{"turn":1}} -{"type":"agent/inbox/spliced","seq":2,"time":1787254273408,"data":{"target":"next-turn","start":0,"removedCount":1,"inserted":[]}} -{"type":"step/start","seq":3,"time":1787254273432,"data":{"turn":1,"step":1}} -{"type":"user/message","seq":4,"time":1787254273432,"data":{"content":[{"type":"text","text":"report your route and workspace"}],"source":{"kind":"user"},"role":"user","id":"18ece5d3-8dc4-4841-bc67-3287b1eb8ab2"},"surfaceOp":"append"} -{"type":"session/title","seq":5,"time":1787254273433,"data":{"title":"report your route and workspace","messageSeqs":[4],"source":{"kind":"fallback"}}} -{"type":"request/header","seq":6,"time":1787254273433,"data":{"header":{"config":{"provider":"mock","model":"mock-routed","reasoningEffort":"max","maxTokens":777},"system":"{{system}}","tools":"{{tools}}"},"reason":"initial"}} -{"type":"request/context","seq":7,"time":1787254273433,"data":{"provider":"mock","model":"mock-routed"}} -{"type":"assistant/chunk","seq":8,"time":1787254273438,"data":{"turn":1,"step":1,"chunk":{"type":"block-start","index":0,"blockType":"text"}}} -{"type":"assistant/chunk","seq":9,"time":1787254273438,"data":{"turn":1,"step":1,"chunk":{"type":"text-delta","index":0,"text":"child route: mock/mock-routed/max/777; cwd: {{cwd}}"}}} -{"type":"assistant/chunk","seq":10,"time":1787254273438,"data":{"turn":1,"step":1,"chunk":{"type":"block-end","index":0,"block":{"type":"text","text":"child route: mock/mock-routed/max/777; cwd: {{cwd}}"}}}} -{"type":"assistant/chunk","seq":11,"time":1787254273438,"data":{"turn":1,"step":1,"chunk":{"type":"usage","usage":{"inputTokens":3,"outputTokens":151}}}} -{"type":"assistant/chunk","seq":12,"time":1787254273438,"data":{"turn":1,"step":1,"chunk":{"type":"finish","reason":{"kind":"stop"}}}} -{"type":"assistant/message","seq":13,"time":1787254273438,"data":{"turn":1,"step":1,"message":{"role":"assistant","content":[{"type":"text","text":"child route: mock/mock-routed/max/777; cwd: {{cwd}}"}],"source":{"kind":"model","provider":"mock","model":"mock-routed"},"id":"0f6dd3aa-2d48-4c64-9130-4812a99e1e31"},"usage":{"inputTokens":3,"outputTokens":151}},"sourceEventSeqs":[8,9,10,11,12],"surfaceOp":"append"} -{"type":"step/end","seq":14,"time":1787254273438,"data":{"turn":1,"step":1}} -{"type":"turn/end","seq":15,"time":1787254273438,"data":{"turn":1,"reason":{"kind":"completed"}}} +{"type":"session","version":0,"id":"session-ba921540ee4946da82d61dfded7ea44f","createdAt":1787255668561,"cwd":"{{cwd}}","delegationDepth":0} +{"type":"agent/inbox/spliced","seq":0,"time":1787255668562,"data":{"target":"next-turn","start":0,"inserted":[{"content":[{"type":"text","text":"report your route and workspace"}],"source":{"kind":"user"},"role":"user","id":"18ece5d3-8dc4-4841-bc67-3287b1eb8ab2"}]}} +{"type":"turn/start","seq":1,"time":1787255668563,"data":{"turn":1}} +{"type":"agent/inbox/spliced","seq":2,"time":1787255668563,"data":{"target":"next-turn","start":0,"removedCount":1,"inserted":[]}} +{"type":"step/start","seq":3,"time":1787255668586,"data":{"turn":1,"step":1}} +{"type":"user/message","seq":4,"time":1787255668586,"data":{"content":[{"type":"text","text":"report your route and workspace"}],"source":{"kind":"user"},"role":"user","id":"18ece5d3-8dc4-4841-bc67-3287b1eb8ab2"},"surfaceOp":"append"} +{"type":"session/title","seq":5,"time":1787255668587,"data":{"title":"report your route and workspace","messageSeqs":[4],"source":{"kind":"fallback"}}} +{"type":"request/header","seq":6,"time":1787255668587,"data":{"header":{"config":{"provider":"mock","model":"mock-routed","reasoningEffort":"max","maxTokens":777},"system":"{{system}}","tools":"{{tools}}"},"reason":"initial"}} +{"type":"request/context","seq":7,"time":1787255668587,"data":{"provider":"mock","model":"mock-routed"}} +{"type":"assistant/chunk","seq":8,"time":1787255668592,"data":{"turn":1,"step":1,"chunk":{"type":"block-start","index":0,"blockType":"text"}}} +{"type":"assistant/chunk","seq":9,"time":1787255668592,"data":{"turn":1,"step":1,"chunk":{"type":"text-delta","index":0,"text":"child route: mock/mock-routed/max/777; cwd: {{cwd}}"}}} +{"type":"assistant/chunk","seq":10,"time":1787255668592,"data":{"turn":1,"step":1,"chunk":{"type":"block-end","index":0,"block":{"type":"text","text":"child route: mock/mock-routed/max/777; cwd: {{cwd}}"}}}} +{"type":"assistant/chunk","seq":11,"time":1787255668592,"data":{"turn":1,"step":1,"chunk":{"type":"usage","usage":{"inputTokens":3,"outputTokens":5}}}} +{"type":"assistant/chunk","seq":12,"time":1787255668592,"data":{"turn":1,"step":1,"chunk":{"type":"finish","reason":{"kind":"stop"}}}} +{"type":"assistant/message","seq":13,"time":1787255668592,"data":{"turn":1,"step":1,"message":{"role":"assistant","content":[{"type":"text","text":"child route: mock/mock-routed/max/777; cwd: {{cwd}}"}],"source":{"kind":"model","provider":"mock","model":"mock-routed"},"id":"0f6dd3aa-2d48-4c64-9130-4812a99e1e31"},"usage":{"inputTokens":3,"outputTokens":5}},"sourceEventSeqs":[8,9,10,11,12],"surfaceOp":"append"} +{"type":"step/end","seq":14,"time":1787255668592,"data":{"turn":1,"step":1}} +{"type":"turn/end","seq":15,"time":1787255668592,"data":{"turn":1,"reason":{"kind":"completed"}}} diff --git a/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/session.jsonl b/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/session.jsonl index 61c0ec7a1a..9f97efb750 100644 --- a/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/session.jsonl +++ b/examples/python-sdk-agent/tests/snapshots/subagent-dsh-sdk-dynamic-route/session.jsonl @@ -1,27 +1,27 @@ -{"type":"session","version":0,"id":"sdk-snapshot-dsh-sdk","createdAt":1787254272178,"cwd":"{{cwd}}","delegationDepth":0} -{"type":"agent/inbox/spliced","seq":0,"time":1787254272180,"data":{"target":"next-turn","start":0,"inserted":[{"content":[{"type":"text","text":"Delegate once using the requested child route."}],"source":{"kind":"user"},"role":"user","id":"7f17592a-8a93-4bb4-851c-f5e942372b06"}]}} -{"type":"turn/start","seq":1,"time":1787254272180,"data":{"turn":1}} -{"type":"agent/inbox/spliced","seq":2,"time":1787254272180,"data":{"target":"next-turn","start":0,"removedCount":1,"inserted":[]}} -{"type":"step/start","seq":3,"time":1787254272210,"data":{"turn":1,"step":1}} -{"type":"user/message","seq":4,"time":1787254272210,"data":{"content":[{"type":"text","text":"Delegate once using the requested child route."}],"source":{"kind":"user"},"role":"user","id":"7f17592a-8a93-4bb4-851c-f5e942372b06"},"surfaceOp":"append"} -{"type":"session/title","seq":5,"time":1787254272211,"data":{"title":"Delegate once using the requested","messageSeqs":[4],"source":{"kind":"fallback"}}} -{"type":"request/header","seq":6,"time":1787254272211,"data":{"header":{"config":{"provider":"mock","model":"mock-delegate"},"system":"{{system}}","tools":"{{tools}}"},"reason":"initial"}} -{"type":"request/context","seq":7,"time":1787254272211,"data":{"provider":"mock","model":"mock-delegate"}} -{"type":"assistant/chunk","seq":8,"time":1787254272214,"data":{"turn":1,"step":1,"chunk":{"type":"block-start","index":0,"blockType":"tool-call"}}} -{"type":"assistant/chunk","seq":9,"time":1787254272215,"data":{"turn":1,"step":1,"chunk":{"type":"tool-call-delta","index":0,"id":"call-delegate","name":"subagent","argumentsDelta":"{\"description\":\"route probe\",\"prompt\":\"report your route and workspace\",\"provider\":\"mock\",\"model\":\"mock-routed\",\"reasoning_effort\":\"max\"}"}}} -{"type":"assistant/chunk","seq":10,"time":1787254272215,"data":{"turn":1,"step":1,"chunk":{"type":"block-end","index":0,"block":{"type":"tool-call","id":"call-delegate","name":"subagent","arguments":"{\"description\":\"route probe\",\"prompt\":\"report your route and workspace\",\"provider\":\"mock\",\"model\":\"mock-routed\",\"reasoning_effort\":\"max\"}"}}}} -{"type":"assistant/chunk","seq":11,"time":1787254272215,"data":{"turn":1,"step":1,"chunk":{"type":"usage","usage":{"inputTokens":10,"outputTokens":5}}}} -{"type":"assistant/chunk","seq":12,"time":1787254272215,"data":{"turn":1,"step":1,"chunk":{"type":"finish","reason":{"kind":"tool-calls"}}}} -{"type":"assistant/message","seq":13,"time":1787254272215,"data":{"turn":1,"step":1,"message":{"role":"assistant","content":[{"type":"tool-call","id":"call-delegate","name":"subagent","arguments":"{\"description\":\"route probe\",\"prompt\":\"report your route and workspace\",\"provider\":\"mock\",\"model\":\"mock-routed\",\"reasoning_effort\":\"max\"}"}],"source":{"kind":"model","provider":"mock","model":"mock-delegate"},"id":"09f8526a-e0ff-493f-8f43-b7f6b5558541"},"usage":{"inputTokens":10,"outputTokens":5}},"sourceEventSeqs":[8,9,10,11,12],"surfaceOp":"append"} -{"type":"tool/call","seq":14,"time":1787254272215,"data":{"turn":1,"step":1,"callId":"call-delegate","name":"subagent","arguments":"{\"description\":\"route probe\",\"prompt\":\"report your route and workspace\",\"provider\":\"mock\",\"model\":\"mock-routed\",\"reasoning_effort\":\"max\"}"}} -{"type":"tool/result","seq":15,"time":1787254273451,"data":{"turn":1,"step":1,"message":{"source":{"kind":"tool","callId":"call-delegate"},"content":[{"type":"tool-result","toolCallId":"call-delegate","content":[{"type":"text","text":"child route: mock/mock-routed/max/777; cwd: {{cwd}}"}],"isError":false}],"role":"user","id":"321d12a1-7801-4614-b800-c8c7ff267f52"}},"sourceEventSeqs":[14],"surfaceOp":"append"} -{"type":"step/end","seq":16,"time":1787254273451,"data":{"turn":1,"step":1}} -{"type":"step/start","seq":17,"time":1787254273455,"data":{"turn":1,"step":2}} -{"type":"assistant/chunk","seq":18,"time":1787254273459,"data":{"turn":1,"step":2,"chunk":{"type":"block-start","index":0,"blockType":"text"}}} -{"type":"assistant/chunk","seq":19,"time":1787254273460,"data":{"turn":1,"step":2,"chunk":{"type":"text-delta","index":0,"text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}}} -{"type":"assistant/chunk","seq":20,"time":1787254273460,"data":{"turn":1,"step":2,"chunk":{"type":"block-end","index":0,"block":{"type":"text","text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}}}} -{"type":"assistant/chunk","seq":21,"time":1787254273460,"data":{"turn":1,"step":2,"chunk":{"type":"usage","usage":{"inputTokens":10,"outputTokens":167}}}} -{"type":"assistant/chunk","seq":22,"time":1787254273460,"data":{"turn":1,"step":2,"chunk":{"type":"finish","reason":{"kind":"stop"}}}} -{"type":"assistant/message","seq":23,"time":1787254273460,"data":{"turn":1,"step":2,"message":{"role":"assistant","content":[{"type":"text","text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}],"source":{"kind":"model","provider":"mock","model":"mock-delegate"},"id":"373cadb7-313d-44e7-a31a-ec0a675e0255"},"usage":{"inputTokens":10,"outputTokens":167}},"sourceEventSeqs":[18,19,20,21,22],"surfaceOp":"append"} -{"type":"step/end","seq":24,"time":1787254273460,"data":{"turn":1,"step":2}} -{"type":"turn/end","seq":25,"time":1787254273460,"data":{"turn":1,"reason":{"kind":"completed"}}} +{"type":"session","version":0,"id":"sdk-snapshot-dsh-sdk","createdAt":1787255667334,"cwd":"{{cwd}}","delegationDepth":0} +{"type":"agent/inbox/spliced","seq":0,"time":1787255667336,"data":{"target":"next-turn","start":0,"inserted":[{"content":[{"type":"text","text":"Delegate once using the requested child route."}],"source":{"kind":"user"},"role":"user","id":"7f17592a-8a93-4bb4-851c-f5e942372b06"}]}} +{"type":"turn/start","seq":1,"time":1787255667336,"data":{"turn":1}} +{"type":"agent/inbox/spliced","seq":2,"time":1787255667336,"data":{"target":"next-turn","start":0,"removedCount":1,"inserted":[]}} +{"type":"step/start","seq":3,"time":1787255667368,"data":{"turn":1,"step":1}} +{"type":"user/message","seq":4,"time":1787255667368,"data":{"content":[{"type":"text","text":"Delegate once using the requested child route."}],"source":{"kind":"user"},"role":"user","id":"7f17592a-8a93-4bb4-851c-f5e942372b06"},"surfaceOp":"append"} +{"type":"session/title","seq":5,"time":1787255667369,"data":{"title":"Delegate once using the requested","messageSeqs":[4],"source":{"kind":"fallback"}}} +{"type":"request/header","seq":6,"time":1787255667369,"data":{"header":{"config":{"provider":"mock","model":"mock-delegate"},"system":"{{system}}","tools":"{{tools}}"},"reason":"initial"}} +{"type":"request/context","seq":7,"time":1787255667369,"data":{"provider":"mock","model":"mock-delegate"}} +{"type":"assistant/chunk","seq":8,"time":1787255667373,"data":{"turn":1,"step":1,"chunk":{"type":"block-start","index":0,"blockType":"tool-call"}}} +{"type":"assistant/chunk","seq":9,"time":1787255667373,"data":{"turn":1,"step":1,"chunk":{"type":"tool-call-delta","index":0,"id":"call-delegate","name":"subagent","argumentsDelta":"{\"description\":\"route probe\",\"prompt\":\"report your route and workspace\",\"provider\":\"mock\",\"model\":\"mock-routed\",\"reasoning_effort\":\"max\"}"}}} +{"type":"assistant/chunk","seq":10,"time":1787255667373,"data":{"turn":1,"step":1,"chunk":{"type":"block-end","index":0,"block":{"type":"tool-call","id":"call-delegate","name":"subagent","arguments":"{\"description\":\"route probe\",\"prompt\":\"report your route and workspace\",\"provider\":\"mock\",\"model\":\"mock-routed\",\"reasoning_effort\":\"max\"}"}}}} +{"type":"assistant/chunk","seq":11,"time":1787255667373,"data":{"turn":1,"step":1,"chunk":{"type":"usage","usage":{"inputTokens":10,"outputTokens":5}}}} +{"type":"assistant/chunk","seq":12,"time":1787255667373,"data":{"turn":1,"step":1,"chunk":{"type":"finish","reason":{"kind":"tool-calls"}}}} +{"type":"assistant/message","seq":13,"time":1787255667373,"data":{"turn":1,"step":1,"message":{"role":"assistant","content":[{"type":"tool-call","id":"call-delegate","name":"subagent","arguments":"{\"description\":\"route probe\",\"prompt\":\"report your route and workspace\",\"provider\":\"mock\",\"model\":\"mock-routed\",\"reasoning_effort\":\"max\"}"}],"source":{"kind":"model","provider":"mock","model":"mock-delegate"},"id":"09f8526a-e0ff-493f-8f43-b7f6b5558541"},"usage":{"inputTokens":10,"outputTokens":5}},"sourceEventSeqs":[8,9,10,11,12],"surfaceOp":"append"} +{"type":"tool/call","seq":14,"time":1787255667374,"data":{"turn":1,"step":1,"callId":"call-delegate","name":"subagent","arguments":"{\"description\":\"route probe\",\"prompt\":\"report your route and workspace\",\"provider\":\"mock\",\"model\":\"mock-routed\",\"reasoning_effort\":\"max\"}"}} +{"type":"tool/result","seq":15,"time":1787255668605,"data":{"turn":1,"step":1,"message":{"source":{"kind":"tool","callId":"call-delegate"},"content":[{"type":"tool-result","toolCallId":"call-delegate","content":[{"type":"text","text":"child route: mock/mock-routed/max/777; cwd: {{cwd}}"}],"isError":false}],"role":"user","id":"321d12a1-7801-4614-b800-c8c7ff267f52"}},"sourceEventSeqs":[14],"surfaceOp":"append"} +{"type":"step/end","seq":16,"time":1787255668605,"data":{"turn":1,"step":1}} +{"type":"step/start","seq":17,"time":1787255668609,"data":{"turn":1,"step":2}} +{"type":"assistant/chunk","seq":18,"time":1787255668612,"data":{"turn":1,"step":2,"chunk":{"type":"block-start","index":0,"blockType":"text"}}} +{"type":"assistant/chunk","seq":19,"time":1787255668613,"data":{"turn":1,"step":2,"chunk":{"type":"text-delta","index":0,"text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}}} +{"type":"assistant/chunk","seq":20,"time":1787255668613,"data":{"turn":1,"step":2,"chunk":{"type":"block-end","index":0,"block":{"type":"text","text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}}}} +{"type":"assistant/chunk","seq":21,"time":1787255668613,"data":{"turn":1,"step":2,"chunk":{"type":"usage","usage":{"inputTokens":10,"outputTokens":5}}}} +{"type":"assistant/chunk","seq":22,"time":1787255668613,"data":{"turn":1,"step":2,"chunk":{"type":"finish","reason":{"kind":"stop"}}}} +{"type":"assistant/message","seq":23,"time":1787255668613,"data":{"turn":1,"step":2,"message":{"role":"assistant","content":[{"type":"text","text":"child reported:\nchild route: mock/mock-routed/max/777; cwd: {{cwd}}"}],"source":{"kind":"model","provider":"mock","model":"mock-delegate"},"id":"373cadb7-313d-44e7-a31a-ec0a675e0255"},"usage":{"inputTokens":10,"outputTokens":5}},"sourceEventSeqs":[18,19,20,21,22],"surfaceOp":"append"} +{"type":"step/end","seq":24,"time":1787255668613,"data":{"turn":1,"step":2}} +{"type":"turn/end","seq":25,"time":1787255668613,"data":{"turn":1,"reason":{"kind":"completed"}}}