@oar-sh/oar 0.9.2 → 0.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/CHANGELOG.md +269 -0
  2. package/README.md +407 -424
  3. package/bin/oar.js +25 -10
  4. package/package.json +7 -4
  5. package/server/README.md +1 -1
  6. package/server/claude-worker/claude-session-process.mjs +981 -44
  7. package/server/claude-worker/claude-session-worker.mjs +45 -4
  8. package/server/claude-worker/claude-turn-publisher.mjs +81 -20
  9. package/server/claude-worker/claude-worker-link-wiring.mjs +9 -0
  10. package/server/copilot-worker/copilot-ask-user-tool.mjs +89 -0
  11. package/server/copilot-worker/copilot-continuation-signals.mjs +55 -0
  12. package/server/copilot-worker/copilot-question-bridge.mjs +34 -12
  13. package/server/copilot-worker/copilot-sdk-event-normalizer.mjs +101 -12
  14. package/server/copilot-worker/copilot-sdk-session-process.mjs +2269 -492
  15. package/server/copilot-worker/copilot-sdk-session-worker.mjs +82 -20
  16. package/server/db-schema.mjs +20 -0
  17. package/server/migrations/0004-steer-settle-markers.mjs +119 -0
  18. package/server/public/app/api-client.js +22 -2
  19. package/server/public/app/ask-user-view.js +102 -13
  20. package/server/public/app/attachments-view.js +37 -2
  21. package/server/public/app/background-task-timeout-options.mjs +9 -0
  22. package/server/public/app/background-tasks-view.mjs +33 -18
  23. package/server/public/app/bootstrap.js +34 -8
  24. package/server/public/app/composer-control-state.mjs +52 -34
  25. package/server/public/app/conversation-draft-sync.mjs +187 -0
  26. package/server/public/app/conversation-list-filter.mjs +86 -0
  27. package/server/public/app/conversation-provider-indicator.mjs +8 -0
  28. package/server/public/app/conversation-view.js +919 -194
  29. package/server/public/app/emoji-view.js +2 -0
  30. package/server/public/app/font-scaling.js +4 -37
  31. package/server/public/app/journal-view.js +145 -5
  32. package/server/public/app/model-selector-options.mjs +1 -1
  33. package/server/public/app/question-multi-select.mjs +52 -0
  34. package/server/public/app/relay-prompt-sanitizer.mjs +17 -2
  35. package/server/public/app/settings-modal.js +8 -6
  36. package/server/public/app/socket-handlers.js +19 -0
  37. package/server/public/app/steered-turn-merge.mjs +100 -0
  38. package/server/public/app/store.js +126 -15
  39. package/server/public/app/sync-outbox.mjs +16 -8
  40. package/server/public/app/tool-activity-emoji.mjs +36 -0
  41. package/server/public/app/transcript-viewport-anchor.mjs +210 -0
  42. package/server/public/index.html +206 -9
  43. package/server/public/sw.js +7 -0
  44. package/server/relay-tools.md +2 -0
  45. package/server/repositories/message-repository.mjs +61 -18
  46. package/server/repositories/question-repository.mjs +15 -0
  47. package/server/repositories/session-repository.mjs +7 -31
  48. package/server/routes/messages-routes.mjs +488 -46
  49. package/server/routes/sessions-routes.mjs +298 -55
  50. package/server/server-runtime.mjs +65 -25
  51. package/server/services/live-turn-picker.mjs +47 -0
  52. package/server/services/relay-prompt-sanitizer.mjs +17 -2
  53. package/server/services/relay-question-context.mjs +46 -0
  54. package/server/services/sdk-session-import-service.mjs +49 -7
  55. package/server/services/session-worker-registry-service.mjs +75 -0
  56. package/server/services/session-worker-supervisor-service.mjs +7 -1
  57. package/server/services/session-worker-websocket-service.mjs +23 -1
  58. package/server/services/steer-resend.mjs +45 -0
  59. package/shared/background-task-timeout.mjs +12 -4
  60. package/shared/control-poller.mjs +4 -1
  61. package/shared/question-multi-select.mjs +16 -0
  62. package/shared/relay-stop-failure.mjs +15 -0
  63. package/shared/slash-command-guard.mjs +76 -0
  64. package/shared/steer-note.mjs +66 -0
  65. package/shared/steer-settle-failure.mjs +89 -0
  66. package/shared/steer-settle-markers.mjs +18 -0
  67. package/shared/worker-crash-guard.mjs +40 -25
  68. package/shared/worker-runtime/heartbeat.mjs +55 -1
  69. package/shared/worker-runtime/runner-link-wiring.mjs +44 -0
  70. package/shared/worker-runtime/worker-websocket-link.mjs +119 -8
  71. package/server/claude-worker/claude-session-test-harness.mjs +0 -250
  72. package/server/claude-worker/fixtures/workflow-run-record.json +0 -1
  73. package/server/copilot-worker/copilot-sdk-test-harness.mjs +0 -382
  74. package/server/copilot-worker/fixtures/abort-turn.json +0 -588
  75. package/server/copilot-worker/fixtures/ask-user-turn.json +0 -1154
  76. package/server/copilot-worker/fixtures/background-timer-continuation.json +0 -445
  77. package/server/copilot-worker/fixtures/background-timer-turn.json +0 -497
  78. package/server/copilot-worker/fixtures/happy-turn.json +0 -566
  79. package/server/copilot-worker/fixtures/quota-turn.json +0 -647
  80. package/server/copilot-worker/fixtures/reasoning-turn.json +0 -625
  81. package/server/copilot-worker/fixtures/resume-turn.json +0 -700
  82. package/server/copilot-worker/fixtures/subagent-turn.json +0 -1378
  83. package/server/copilot-worker/fixtures/tool-permission-turn.json +0 -1293
  84. package/server/routes/messages-routes-test-harness.mjs +0 -111
  85. package/server/services/fixtures/claude-auth-stub.cmd +0 -1
  86. package/server/services/fixtures/claude-auth-stub.mjs +0 -76
  87. package/server/services/fixtures/claude-auth-stub.sh +0 -4
  88. package/server/services/fixtures/cli-install-stub.cmd +0 -1
  89. package/server/services/fixtures/cli-install-stub.mjs +0 -98
  90. package/server/services/fixtures/cli-install-stub.sh +0 -4
  91. package/server/services/fixtures/grok-stub.cmd +0 -1
  92. package/server/services/fixtures/grok-stub.mjs +0 -89
  93. package/server/services/fixtures/grok-stub.sh +0 -4
  94. package/shared/fixtures/copilot-catalog-raw-2026-09-07.json +0 -2363
@@ -1,1378 +0,0 @@
1
- [
2
- {
3
- "type": "session.managed_settings_resolved",
4
- "data": {
5
- "source": "none",
6
- "serverManaged": false,
7
- "deviceManaged": false,
8
- "clientManaged": false,
9
- "failClosed": false,
10
- "sandboxEnabledByUndeterminedPolicy": false,
11
- "bypassPermissionsDisabled": false,
12
- "managedKeys": []
13
- },
14
- "id": "0778cf0c-30df-4a95-9257-dd00224dcf7c",
15
- "timestamp": "2026-08-31T10:41:39.909Z",
16
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884",
17
- "ephemeral": true
18
- },
19
- {
20
- "type": "session.start",
21
- "data": {
22
- "sessionId": "6816d315-2590-48c6-81d9-9ed1abfd860a",
23
- "version": 1,
24
- "producer": "copilot-agent",
25
- "copilotVersion": "0.0.0",
26
- "startTime": "2026-08-31T10:41:39.876Z",
27
- "selectedModel": "gpt-5-mini",
28
- "contextTier": null,
29
- "context": {
30
- "cwd": "/tmp/copilot-sdk-phase2/ws"
31
- },
32
- "remoteSteerable": false,
33
- "alreadyInUse": false
34
- },
35
- "id": "e1bcdc49-06c5-4f94-931b-d18eee087884",
36
- "timestamp": "2026-08-31T10:41:39.885Z",
37
- "parentId": null
38
- },
39
- {
40
- "type": "pending_messages.modified",
41
- "data": {},
42
- "ephemeral": true,
43
- "id": "e687ef74-35dc-46a8-9d2b-7409b6541419",
44
- "timestamp": "2026-08-31T10:41:39.912Z",
45
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
46
- },
47
- {
48
- "type": "pending_messages.modified",
49
- "data": {},
50
- "ephemeral": true,
51
- "id": "dfb66c8b-d5d8-4a20-b843-6854451b69d4",
52
- "timestamp": "2026-08-31T10:41:39.915Z",
53
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
54
- },
55
- {
56
- "type": "session.skills_loaded",
57
- "data": {
58
- "skills": [
59
- {
60
- "name": "customize-cloud-agent",
61
- "commandName": "customize-cloud-agent",
62
- "description": "Skill for customizing the Copilot cloud agent (formerly known as Copilot coding agent) environment, including copilot-setup-steps.yml configuration, preinstalling tools and dependencies, runners, and settings. Use when the user mentions copilot-setup-steps, copilot setup steps, or wants to configure the cloud agent environment.",
63
- "source": "builtin",
64
- "userInvocable": false,
65
- "enabled": true,
66
- "path": "/home/relay/.cache/copilot/pkg/linux-x64/1.0.82/builtin/customize-cloud-agent/SKILL.md"
67
- },
68
- {
69
- "name": "github-pr-media",
70
- "commandName": "github-pr-media",
71
- "description": "Upload an image or video to GitHub's user attachments API and embed it in a pull request description or comment. Use when asked to add screenshots, diagrams, recordings, or other media to a PR or GitHub comment.",
72
- "source": "builtin",
73
- "userInvocable": false,
74
- "enabled": true,
75
- "path": "/home/relay/.cache/copilot/pkg/linux-x64/1.0.82/builtin/github-pr-media/SKILL.md"
76
- }
77
- ]
78
- },
79
- "ephemeral": true,
80
- "id": "c030a179-b6bb-4b5c-bff1-f7b5c9828d32",
81
- "timestamp": "2026-08-31T10:41:39.919Z",
82
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
83
- },
84
- {
85
- "type": "session.title_changed",
86
- "data": {
87
- "title": "SPAWN_SUB: delegate this to the probe-helper agent using the task tool."
88
- },
89
- "ephemeral": true,
90
- "id": "823a177d-743c-490c-87a2-eccea42d8df8",
91
- "timestamp": "2026-08-31T10:41:39.919Z",
92
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
93
- },
94
- {
95
- "type": "session.mcp_server_status_changed",
96
- "data": {
97
- "serverName": "github-mcp-server",
98
- "status": "pending"
99
- },
100
- "ephemeral": true,
101
- "id": "575fc1c0-2d31-4f55-b4cc-d7b08f396762",
102
- "timestamp": "2026-08-31T10:41:39.928Z",
103
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
104
- },
105
- {
106
- "type": "session.mcp_server_status_changed",
107
- "data": {
108
- "serverName": "github-mcp-server",
109
- "status": "connected"
110
- },
111
- "ephemeral": true,
112
- "id": "7f40ffcf-bbc5-47df-bf01-d0121e6cf6c8",
113
- "timestamp": "2026-08-31T10:41:40.283Z",
114
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
115
- },
116
- {
117
- "type": "session.mcp_servers_loaded",
118
- "data": {
119
- "servers": [
120
- {
121
- "name": "github-mcp-server",
122
- "status": "connected",
123
- "source": "builtin"
124
- }
125
- ]
126
- },
127
- "ephemeral": true,
128
- "id": "3bcdf0a7-516b-42b6-ab9c-883f0e28bd63",
129
- "timestamp": "2026-08-31T10:41:40.284Z",
130
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
131
- },
132
- {
133
- "type": "session.tools_updated",
134
- "data": {
135
- "model": "spike-model"
136
- },
137
- "ephemeral": true,
138
- "id": "e65b16ce-6d37-4970-bdd5-9a43db63b005",
139
- "timestamp": "2026-08-31T10:41:40.552Z",
140
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
141
- },
142
- {
143
- "type": "user.message",
144
- "data": {
145
- "content": "SPAWN_SUB: delegate this to the probe-helper agent using the task tool.",
146
- "transformedContent": "<current_datetime>2026-08-31T10:41:40.553+00:00</current_datetime>\n\nSPAWN_SUB: delegate this to the probe-helper agent using the task tool.",
147
- "supportedNativeDocumentMimeTypes": [],
148
- "delivery": "idle",
149
- "interactionId": "92d278d4-4d1e-4553-9f90-7094659f5d4f",
150
- "turnId": "0",
151
- "parentAgentTaskId": "ca9a448b-01b4-4047-9822-1303f65f8822"
152
- },
153
- "id": "d96667e7-cf8b-49c6-8efa-76d1df3ebd0b",
154
- "timestamp": "2026-08-31T10:41:40.553Z",
155
- "parentId": "e1bcdc49-06c5-4f94-931b-d18eee087884"
156
- },
157
- {
158
- "type": "system.message",
159
- "data": {
160
- "content": "<scrubbed system prompt>"
161
- },
162
- "id": "7bbd1ff9-5e28-49c2-bc30-718cdc346c6d",
163
- "timestamp": "2026-08-31T10:41:40.555Z",
164
- "parentId": "d96667e7-cf8b-49c6-8efa-76d1df3ebd0b"
165
- },
166
- {
167
- "type": "model.turn_started",
168
- "data": {
169
- "kind": "turn_started",
170
- "model": "spike-model",
171
- "modelInfo": {
172
- "id": "spike-model",
173
- "name": "spike-model",
174
- "capabilities": {
175
- "supports": {
176
- "vision": false,
177
- "adaptive_thinking": "unsupported"
178
- },
179
- "limits": {
180
- "max_prompt_tokens": 128000,
181
- "max_context_window_tokens": 200000,
182
- "vision": {
183
- "max_prompt_image_size": 3145728,
184
- "max_prompt_images": 1,
185
- "supported_media_types": [
186
- "image/jpeg",
187
- "image/png",
188
- "image/webp"
189
- ]
190
- }
191
- }
192
- },
193
- "supported_endpoints": [
194
- "/chat/completions"
195
- ]
196
- },
197
- "turn": 0,
198
- "timestampMs": 1788172900558
199
- },
200
- "ephemeral": true,
201
- "id": "a7e76157-c518-437f-9d96-31d69ecf039e",
202
- "timestamp": "2026-08-31T10:41:40.558Z",
203
- "parentId": "7bbd1ff9-5e28-49c2-bc30-718cdc346c6d"
204
- },
205
- {
206
- "type": "assistant.turn_start",
207
- "data": {
208
- "turnId": "0",
209
- "interactionId": "92d278d4-4d1e-4553-9f90-7094659f5d4f"
210
- },
211
- "id": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b",
212
- "timestamp": "2026-08-31T10:41:40.558Z",
213
- "parentId": "7bbd1ff9-5e28-49c2-bc30-718cdc346c6d"
214
- },
215
- {
216
- "type": "session.usage_info",
217
- "ephemeral": true,
218
- "data": {
219
- "tokenLimit": 128000,
220
- "currentTokens": 13297,
221
- "messagesLength": 2,
222
- "systemTokens": 6143,
223
- "conversationTokens": 47,
224
- "toolDefinitionsTokens": 7107,
225
- "isInitial": true
226
- },
227
- "id": "4837d103-f5c4-458d-a65b-015b28a51cfe",
228
- "timestamp": "2026-08-31T10:41:40.580Z",
229
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
230
- },
231
- {
232
- "type": "model.call_start",
233
- "data": {
234
- "turnId": "0",
235
- "model": "spike-model"
236
- },
237
- "ephemeral": true,
238
- "id": "01d41686-5859-42e2-b88f-9b81b6b38206",
239
- "timestamp": "2026-08-31T10:41:40.581Z",
240
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
241
- },
242
- {
243
- "type": "model.model_call_started",
244
- "data": {
245
- "kind": "model_call_started",
246
- "model": "spike-model",
247
- "modelInfo": {
248
- "id": "spike-model",
249
- "name": "spike-model",
250
- "capabilities": {
251
- "supports": {
252
- "vision": false,
253
- "adaptive_thinking": "unsupported"
254
- },
255
- "limits": {
256
- "max_prompt_tokens": 128000,
257
- "max_context_window_tokens": 200000,
258
- "vision": {
259
- "max_prompt_image_size": 3145728,
260
- "max_prompt_images": 1,
261
- "supported_media_types": [
262
- "image/jpeg",
263
- "image/png",
264
- "image/webp"
265
- ]
266
- }
267
- }
268
- },
269
- "supported_endpoints": [
270
- "/chat/completions"
271
- ]
272
- },
273
- "turn": 0,
274
- "timestampMs": 1788172900581
275
- },
276
- "ephemeral": true,
277
- "id": "a76657fa-ef29-4c3f-a9e5-472e8e4bcad9",
278
- "timestamp": "2026-08-31T10:41:40.581Z",
279
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
280
- },
281
- {
282
- "type": "assistant.tool_call_delta",
283
- "data": {
284
- "toolCallId": "call_task_1",
285
- "toolName": "task",
286
- "toolType": "function",
287
- "inputDelta": "{\"agent_type\":\"probe-helper\",\"name\":\"Probe Helper\",\"description\":\"probe helper run\",\"prompt\":\"Say SUBAGENT_REPLY and nothing else.\"}"
288
- },
289
- "ephemeral": true,
290
- "id": "048df287-3f9d-4c28-8d89-adace179d6a0",
291
- "timestamp": "2026-08-31T10:41:40.589Z",
292
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
293
- },
294
- {
295
- "type": "assistant.usage",
296
- "data": {
297
- "model": "spike-model",
298
- "inputTokens": 0,
299
- "outputTokens": 0,
300
- "cacheReadTokens": 0,
301
- "cacheWriteTokens": 0,
302
- "reasoningTokens": 0,
303
- "cost": 0,
304
- "duration": 11,
305
- "timeToFirstTokenMs": 7.553618,
306
- "outputTtftMs": 7.592873000000001,
307
- "interTokenLatencyMs": 0.14764300000000002,
308
- "initiator": "user",
309
- "interactionType": "conversation-agent",
310
- "isByok": true,
311
- "isAuto": false,
312
- "maxPromptTokens": 128000,
313
- "transport": "http",
314
- "apiCallId": "chatcmpl-sub-1",
315
- "rte": false,
316
- "apiEndpoint": "/chat/completions",
317
- "quotaSnapshots": {},
318
- "reasoningEffort": "medium",
319
- "availableToolCount": 23,
320
- "toolTokenCount": 7107,
321
- "frontierSource": "estimated",
322
- "cacheDetailsReported": false,
323
- "numToolCalls": 1,
324
- "toolCounts": {
325
- "task": 1
326
- },
327
- "finishReason": "tool_calls",
328
- "contentFilterTriggered": false
329
- },
330
- "ephemeral": true,
331
- "id": "8b6ecaef-af47-4b22-9643-92303f36cc65",
332
- "timestamp": "2026-08-31T10:41:40.593Z",
333
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
334
- },
335
- {
336
- "type": "model.model_call_success",
337
- "data": {
338
- "kind": "model_call_success",
339
- "turn": 0,
340
- "modelCallDurationMs": 11,
341
- "ttftMs": 7.553618,
342
- "outputTtftMs": 7.592873000000001,
343
- "interTokenLatencyMs": 0.14764300000000002,
344
- "modelCall": {
345
- "model": "spike-model",
346
- "api_id": "chatcmpl-sub-1",
347
- "api_endpoint": "/chat/completions",
348
- "request_id": null,
349
- "client_request_id": null,
350
- "service_request_id": null,
351
- "rte": false,
352
- "initiator": "user",
353
- "transport": "http"
354
- },
355
- "responseChunk": {
356
- "object": "chat.completion.chunk",
357
- "id": "chatcmpl-sub-1",
358
- "choices": [
359
- {
360
- "delta": {
361
- "role": "assistant",
362
- "content": null,
363
- "refusal": null,
364
- "tool_calls": [
365
- {
366
- "id": "call_task_1",
367
- "type": "function",
368
- "function": {
369
- "name": "task",
370
- "arguments": "{\"agent_type\":\"probe-helper\",\"name\":\"Probe Helper\",\"description\":\"probe helper run\",\"prompt\":\"Say SUBAGENT_REPLY and nothing else.\"}"
371
- },
372
- "index": 0
373
- }
374
- ]
375
- },
376
- "finish_reason": "tool_calls",
377
- "index": 0
378
- }
379
- ],
380
- "created": 1788172900,
381
- "model": "spike-model"
382
- },
383
- "quotaSnapshots": {},
384
- "rte": false,
385
- "reasoningEffort": "medium",
386
- "maxPromptTokens": 128000,
387
- "toolCount": 23,
388
- "toolTokenCount": 7107
389
- },
390
- "ephemeral": true,
391
- "id": "498bbb96-16a9-496a-8491-948c666f879c",
392
- "timestamp": "2026-08-31T10:41:40.594Z",
393
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
394
- },
395
- {
396
- "type": "model.call_finished",
397
- "data": {
398
- "turnId": "0",
399
- "dispatchDurationMs": 11,
400
- "outcome": "success",
401
- "editClassifierVersion": 1,
402
- "interactionId": "92d278d4-4d1e-4553-9f90-7094659f5d4f",
403
- "containsBuiltInFileEditRequest": false
404
- },
405
- "ephemeral": true,
406
- "id": "7ddd981b-63ca-475d-8338-dbf1aee936e6",
407
- "timestamp": "2026-08-31T10:41:40.595Z",
408
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
409
- },
410
- {
411
- "type": "model.message",
412
- "data": {
413
- "kind": "message",
414
- "turn": 0,
415
- "modelCall": {
416
- "model": "spike-model",
417
- "api_id": "chatcmpl-sub-1",
418
- "api_endpoint": "/chat/completions",
419
- "request_id": null,
420
- "client_request_id": null,
421
- "service_request_id": null,
422
- "rte": false,
423
- "initiator": "user",
424
- "transport": "http"
425
- },
426
- "message": {
427
- "role": "assistant",
428
- "content": null,
429
- "refusal": null,
430
- "tool_calls": [
431
- {
432
- "id": "call_task_1",
433
- "type": "function",
434
- "function": {
435
- "name": "task",
436
- "arguments": "{\"agent_type\":\"probe-helper\",\"name\":\"Probe Helper\",\"description\":\"probe helper run\",\"prompt\":\"Say SUBAGENT_REPLY and nothing else.\"}"
437
- }
438
- }
439
- ],
440
- "apiCallId": "chatcmpl-sub-1"
441
- }
442
- },
443
- "ephemeral": true,
444
- "id": "5e1b2c4a-9c89-4fa3-800a-b4ae8aa37fc3",
445
- "timestamp": "2026-08-31T10:41:40.595Z",
446
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
447
- },
448
- {
449
- "type": "assistant.message",
450
- "data": {
451
- "messageId": "dc756f8f-64d9-47a9-bec6-0e99e00e2a83",
452
- "model": "spike-model",
453
- "content": "",
454
- "toolRequests": [
455
- {
456
- "toolCallId": "call_task_1",
457
- "name": "task",
458
- "arguments": {
459
- "agent_type": "probe-helper",
460
- "name": "Probe Helper",
461
- "description": "probe helper run",
462
- "prompt": "Say SUBAGENT_REPLY and nothing else."
463
- },
464
- "type": "function",
465
- "intentionSummary": "probe helper run"
466
- }
467
- ],
468
- "interactionId": "92d278d4-4d1e-4553-9f90-7094659f5d4f",
469
- "turnId": "0",
470
- "rte": false,
471
- "apiCallId": "chatcmpl-sub-1"
472
- },
473
- "id": "65db6830-c248-4afc-8058-fd7021618894",
474
- "timestamp": "2026-08-31T10:41:40.596Z",
475
- "parentId": "f2f7ae39-1df7-4a11-aa0a-36d933debe5b"
476
- },
477
- {
478
- "type": "tool.execution_start",
479
- "data": {
480
- "toolCallId": "call_task_1",
481
- "toolName": "task",
482
- "arguments": {
483
- "agent_type": "probe-helper",
484
- "name": "Probe Helper",
485
- "description": "probe helper run",
486
- "prompt": "Say SUBAGENT_REPLY and nothing else."
487
- },
488
- "turnId": "0",
489
- "model": "spike-model"
490
- },
491
- "id": "4d7a15fd-c973-41c5-a6bc-f34fc2fa7bfc",
492
- "timestamp": "2026-08-31T10:41:40.597Z",
493
- "parentId": "65db6830-c248-4afc-8058-fd7021618894"
494
- },
495
- {
496
- "type": "session.background_tasks_changed",
497
- "data": {},
498
- "ephemeral": true,
499
- "id": "8ec5edad-a735-4a68-aaf6-2ff024a43a23",
500
- "timestamp": "2026-08-31T10:41:40.600Z",
501
- "parentId": "4d7a15fd-c973-41c5-a6bc-f34fc2fa7bfc"
502
- },
503
- {
504
- "type": "subagent.started",
505
- "data": {
506
- "toolCallId": "call_task_1",
507
- "agentName": "probe-helper",
508
- "agentDisplayName": "Probe Helper",
509
- "agentDescription": "Answers a single fixed question for the probe.",
510
- "model": "gpt-5-mini",
511
- "resumable": false,
512
- "agentType": "probe-helper",
513
- "executionMode": "sync"
514
- },
515
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
516
- "id": "427dc6b7-9727-4763-883a-79711e5d3465",
517
- "timestamp": "2026-08-31T10:41:40.610Z",
518
- "parentId": "4d7a15fd-c973-41c5-a6bc-f34fc2fa7bfc"
519
- },
520
- {
521
- "type": "subagent.configured",
522
- "data": {
523
- "model": "gpt-5-mini",
524
- "multiTurn": true
525
- },
526
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
527
- "id": "fc1cd1f1-de46-4a98-97ae-2892a69a32e3",
528
- "timestamp": "2026-08-31T10:41:40.637Z",
529
- "parentId": "427dc6b7-9727-4763-883a-79711e5d3465"
530
- },
531
- {
532
- "type": "session.tools_updated",
533
- "data": {
534
- "model": "spike-model"
535
- },
536
- "ephemeral": true,
537
- "id": "1dac27af-5214-4c3a-9c2f-c5950531c366",
538
- "timestamp": "2026-08-31T10:41:40.642Z",
539
- "parentId": null
540
- },
541
- {
542
- "type": "user.message",
543
- "data": {
544
- "content": "Say SUBAGENT_REPLY and nothing else.",
545
- "transformedContent": "<current_datetime>2026-08-31T10:41:40.642+00:00</current_datetime>\n\nSay SUBAGENT_REPLY and nothing else.",
546
- "source": "agent-6816d315-2590-48c6-81d9-9ed1abfd860a",
547
- "supportedNativeDocumentMimeTypes": [],
548
- "delivery": "idle",
549
- "interactionId": "a7e19960-4573-483d-b06f-76a7dbe2a183",
550
- "turnId": "0",
551
- "parentAgentTaskId": "a60c9fe2-b27e-4633-bd6f-f1aa7953c3d3"
552
- },
553
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
554
- "id": "b1e39548-a095-4a37-950d-8a2b85578de5",
555
- "timestamp": "2026-08-31T10:41:40.646Z",
556
- "parentId": "fc1cd1f1-de46-4a98-97ae-2892a69a32e3"
557
- },
558
- {
559
- "type": "system.message",
560
- "data": {
561
- "content": "<scrubbed system prompt>"
562
- },
563
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
564
- "id": "2e6915d4-d33b-4573-a0e8-1eb6d51f67da",
565
- "timestamp": "2026-08-31T10:41:40.647Z",
566
- "parentId": "b1e39548-a095-4a37-950d-8a2b85578de5"
567
- },
568
- {
569
- "type": "assistant.turn_start",
570
- "data": {
571
- "turnId": "0",
572
- "interactionId": "a7e19960-4573-483d-b06f-76a7dbe2a183"
573
- },
574
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
575
- "id": "1e66c36d-e13e-479e-988f-70c86073919c",
576
- "timestamp": "2026-08-31T10:41:40.648Z",
577
- "parentId": "2e6915d4-d33b-4573-a0e8-1eb6d51f67da"
578
- },
579
- {
580
- "type": "assistant.message_start",
581
- "data": {
582
- "messageId": "d778ff74-0fcd-4dce-90e8-679525c642d0"
583
- },
584
- "ephemeral": true,
585
- "id": "182ef073-8342-4c6b-add3-93dac42db1ba",
586
- "timestamp": "2026-08-31T10:41:40.648Z",
587
- "parentId": "4bea4e80-2289-4e44-84e7-e72c7389ec2d"
588
- },
589
- {
590
- "type": "session.usage_info",
591
- "data": {
592
- "tokenLimit": 128000,
593
- "currentTokens": 1562,
594
- "messagesLength": 2,
595
- "systemTokens": 576,
596
- "conversationTokens": 39,
597
- "toolDefinitionsTokens": 947,
598
- "isInitial": true
599
- },
600
- "ephemeral": true,
601
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
602
- "id": "738662a2-f401-423a-8353-6d7c8b6348e9",
603
- "timestamp": "2026-08-31T10:41:40.649Z",
604
- "parentId": "1e66c36d-e13e-479e-988f-70c86073919c"
605
- },
606
- {
607
- "type": "model.call_start",
608
- "data": {
609
- "turnId": "0",
610
- "model": "spike-model"
611
- },
612
- "ephemeral": true,
613
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
614
- "id": "16336246-a6f9-4d6d-9d1e-b5a3aff78bda",
615
- "timestamp": "2026-08-31T10:41:40.650Z",
616
- "parentId": "1e66c36d-e13e-479e-988f-70c86073919c"
617
- },
618
- {
619
- "type": "session.background_tasks_changed",
620
- "data": {},
621
- "ephemeral": true,
622
- "id": "364be7dc-5a4f-4da8-9a53-5c0344d9a718",
623
- "timestamp": "2026-08-31T10:41:40.651Z",
624
- "parentId": "1e66c36d-e13e-479e-988f-70c86073919c"
625
- },
626
- {
627
- "type": "assistant.usage",
628
- "data": {
629
- "model": "spike-model",
630
- "inputTokens": 0,
631
- "outputTokens": 0,
632
- "cacheReadTokens": 0,
633
- "cacheWriteTokens": 0,
634
- "reasoningTokens": 0,
635
- "cost": 0,
636
- "duration": 125,
637
- "timeToFirstTokenMs": 2.332187,
638
- "outputTtftMs": 2.350341,
639
- "interTokenLatencyMs": 30.33372575,
640
- "initiator": "sub-agent",
641
- "interactionType": "conversation-subagent",
642
- "isByok": true,
643
- "isAuto": false,
644
- "maxPromptTokens": 128000,
645
- "transport": "http",
646
- "apiCallId": "chatcmpl-sub-2",
647
- "rte": false,
648
- "apiEndpoint": "/chat/completions",
649
- "quotaSnapshots": {},
650
- "reasoningEffort": "medium",
651
- "availableToolCount": 3,
652
- "toolTokenCount": 947,
653
- "frontierSource": "estimated",
654
- "cacheDetailsReported": false,
655
- "numToolCalls": 0,
656
- "toolCounts": {},
657
- "finishReason": "stop",
658
- "contentFilterTriggered": false,
659
- "parentToolCallId": "call_task_1"
660
- },
661
- "ephemeral": true,
662
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
663
- "id": "c3d88534-c3db-4646-a474-ae4c17e5d1e7",
664
- "timestamp": "2026-08-31T10:41:40.772Z",
665
- "parentId": "1e66c36d-e13e-479e-988f-70c86073919c"
666
- },
667
- {
668
- "type": "model.message",
669
- "data": {
670
- "kind": "message",
671
- "turn": 0,
672
- "modelCall": {
673
- "model": "spike-model",
674
- "api_id": "chatcmpl-sub-1",
675
- "api_endpoint": "/chat/completions",
676
- "request_id": null,
677
- "client_request_id": null,
678
- "service_request_id": null,
679
- "rte": false,
680
- "initiator": "user",
681
- "transport": "http"
682
- },
683
- "message": {
684
- "role": "tool",
685
- "tool_call_id": "call_task_1",
686
- "content": "SUBAGENT_REPLY"
687
- }
688
- },
689
- "ephemeral": true,
690
- "id": "26532048-e9c9-4646-a06c-de425a3baa70",
691
- "timestamp": "2026-08-31T10:41:40.774Z",
692
- "parentId": "1e66c36d-e13e-479e-988f-70c86073919c"
693
- },
694
- {
695
- "type": "model.call_finished",
696
- "data": {
697
- "turnId": "0",
698
- "dispatchDurationMs": 125,
699
- "outcome": "success",
700
- "editClassifierVersion": 1,
701
- "interactionId": "a7e19960-4573-483d-b06f-76a7dbe2a183",
702
- "containsBuiltInFileEditRequest": false
703
- },
704
- "ephemeral": true,
705
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
706
- "id": "72e97617-841d-4502-91c1-c6931d5a8c74",
707
- "timestamp": "2026-08-31T10:41:40.775Z",
708
- "parentId": "1e66c36d-e13e-479e-988f-70c86073919c"
709
- },
710
- {
711
- "type": "tool.execution_complete",
712
- "data": {
713
- "toolCallId": "call_task_1",
714
- "model": "spike-model",
715
- "interactionId": "92d278d4-4d1e-4553-9f90-7094659f5d4f",
716
- "turnId": "0",
717
- "rte": false,
718
- "success": true,
719
- "result": {
720
- "content": "SUBAGENT_REPLY",
721
- "detailedContent": "SUBAGENT_REPLY"
722
- },
723
- "toolTelemetry": {
724
- "properties": {
725
- "prompt_length": "36",
726
- "response_length": "14",
727
- "agent_name_hash": "7174f503d8bdb06579835688983b42b8e2aa38c017487c6fadc1922413ebaae9",
728
- "agent_type": "custom-agent",
729
- "execution_mode": "sync",
730
- "resolved_model": "gpt-5-mini"
731
- },
732
- "restrictedProperties": {
733
- "agent_name": "probe-helper",
734
- "agent_id": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4"
735
- },
736
- "metrics": {
737
- "numberOfToolCallsMadeByAgent": 0,
738
- "response_length": 14
739
- }
740
- }
741
- },
742
- "id": "03712977-737e-4924-bdce-8915d796443a",
743
- "timestamp": "2026-08-31T10:41:40.775Z",
744
- "parentId": "1e66c36d-e13e-479e-988f-70c86073919c"
745
- },
746
- {
747
- "type": "session.background_tasks_changed",
748
- "data": {},
749
- "ephemeral": true,
750
- "id": "7472f914-8fa9-42a9-b214-19738dbc4d41",
751
- "timestamp": "2026-08-31T10:41:40.775Z",
752
- "parentId": "03712977-737e-4924-bdce-8915d796443a"
753
- },
754
- {
755
- "type": "model.tool_execution",
756
- "data": {
757
- "kind": "tool_execution",
758
- "turn": 0,
759
- "toolCallId": "call_task_1",
760
- "toolResult": {
761
- "textResultForLlm": "SUBAGENT_REPLY",
762
- "resultType": "success",
763
- "toolTelemetry": {
764
- "properties": {
765
- "prompt_length": "36",
766
- "response_length": "14",
767
- "agent_name_hash": "7174f503d8bdb06579835688983b42b8e2aa38c017487c6fadc1922413ebaae9",
768
- "agent_type": "custom-agent",
769
- "execution_mode": "sync",
770
- "resolved_model": "gpt-5-mini"
771
- },
772
- "restrictedProperties": {
773
- "agent_name": "probe-helper",
774
- "agent_id": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4"
775
- },
776
- "metrics": {
777
- "numberOfToolCallsMadeByAgent": 0,
778
- "response_length": 14
779
- }
780
- }
781
- },
782
- "durationMs": 175.920307,
783
- "rte": false
784
- },
785
- "ephemeral": true,
786
- "id": "40f9678a-02ff-49d3-9c76-270922b58496",
787
- "timestamp": "2026-08-31T10:41:40.777Z",
788
- "parentId": "03712977-737e-4924-bdce-8915d796443a"
789
- },
790
- {
791
- "type": "assistant.message",
792
- "data": {
793
- "messageId": "d778ff74-0fcd-4dce-90e8-679525c642d0",
794
- "model": "spike-model",
795
- "content": "SUBAGENT_REPLY",
796
- "toolRequests": [],
797
- "interactionId": "a7e19960-4573-483d-b06f-76a7dbe2a183",
798
- "turnId": "0",
799
- "rte": false,
800
- "apiCallId": "chatcmpl-sub-2",
801
- "parentToolCallId": "call_task_1"
802
- },
803
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
804
- "id": "4049a0c0-f1ed-4f96-a6eb-a2f01de2eb99",
805
- "timestamp": "2026-08-31T10:41:40.778Z",
806
- "parentId": "03712977-737e-4924-bdce-8915d796443a"
807
- },
808
- {
809
- "type": "session.background_tasks_changed",
810
- "data": {},
811
- "ephemeral": true,
812
- "id": "9f5c03a9-9269-492e-8539-4dc7f73ad32c",
813
- "timestamp": "2026-08-31T10:41:40.780Z",
814
- "parentId": "4049a0c0-f1ed-4f96-a6eb-a2f01de2eb99"
815
- },
816
- {
817
- "type": "assistant.turn_end",
818
- "data": {
819
- "turnId": "0"
820
- },
821
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
822
- "id": "482a6dad-0375-4d77-840b-17b05b8e8a42",
823
- "timestamp": "2026-08-31T10:41:40.781Z",
824
- "parentId": "4049a0c0-f1ed-4f96-a6eb-a2f01de2eb99"
825
- },
826
- {
827
- "type": "session.background_tasks_changed",
828
- "data": {},
829
- "ephemeral": true,
830
- "id": "9eca5ffb-3969-44d3-8e5e-eb6846f596fb",
831
- "timestamp": "2026-08-31T10:41:40.781Z",
832
- "parentId": "482a6dad-0375-4d77-840b-17b05b8e8a42"
833
- },
834
- {
835
- "type": "model.turn_ended",
836
- "data": {
837
- "kind": "turn_ended",
838
- "model": "spike-model",
839
- "modelInfo": {
840
- "id": "spike-model",
841
- "name": "spike-model",
842
- "capabilities": {
843
- "supports": {
844
- "vision": false,
845
- "adaptive_thinking": "unsupported"
846
- },
847
- "limits": {
848
- "max_prompt_tokens": 128000,
849
- "max_context_window_tokens": 200000,
850
- "vision": {
851
- "max_prompt_image_size": 3145728,
852
- "max_prompt_images": 1,
853
- "supported_media_types": [
854
- "image/jpeg",
855
- "image/png",
856
- "image/webp"
857
- ]
858
- }
859
- }
860
- },
861
- "supported_endpoints": [
862
- "/chat/completions"
863
- ]
864
- },
865
- "turn": 0,
866
- "timestampMs": 1788172900781
867
- },
868
- "ephemeral": true,
869
- "id": "df5cd03f-aab3-4049-abae-27987bfcbe9f",
870
- "timestamp": "2026-08-31T10:41:40.781Z",
871
- "parentId": "482a6dad-0375-4d77-840b-17b05b8e8a42"
872
- },
873
- {
874
- "type": "assistant.turn_end",
875
- "data": {
876
- "turnId": "0"
877
- },
878
- "id": "3cb6a41a-1301-4cf4-89aa-49866f1419dd",
879
- "timestamp": "2026-08-31T10:41:40.782Z",
880
- "parentId": "482a6dad-0375-4d77-840b-17b05b8e8a42"
881
- },
882
- {
883
- "type": "subagent.completed",
884
- "data": {
885
- "toolCallId": "call_task_1",
886
- "agentName": "probe-helper",
887
- "agentDisplayName": "Probe Helper",
888
- "model": "gpt-5-mini",
889
- "firstDispatchedModel": "spike-model",
890
- "totalToolCalls": 0,
891
- "durationMs": 176
892
- },
893
- "agentId": "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4",
894
- "id": "76c63bc4-7401-4b65-82f9-369b6a4af888",
895
- "timestamp": "2026-08-31T10:41:40.783Z",
896
- "parentId": "3cb6a41a-1301-4cf4-89aa-49866f1419dd"
897
- },
898
- {
899
- "type": "model.turn_started",
900
- "data": {
901
- "kind": "turn_started",
902
- "model": "spike-model",
903
- "modelInfo": {
904
- "id": "spike-model",
905
- "name": "spike-model",
906
- "capabilities": {
907
- "supports": {
908
- "vision": false,
909
- "adaptive_thinking": "unsupported"
910
- },
911
- "limits": {
912
- "max_prompt_tokens": 128000,
913
- "max_context_window_tokens": 200000,
914
- "vision": {
915
- "max_prompt_image_size": 3145728,
916
- "max_prompt_images": 1,
917
- "supported_media_types": [
918
- "image/jpeg",
919
- "image/png",
920
- "image/webp"
921
- ]
922
- }
923
- }
924
- },
925
- "supported_endpoints": [
926
- "/chat/completions"
927
- ]
928
- },
929
- "turn": 1,
930
- "timestampMs": 1788172900783
931
- },
932
- "ephemeral": true,
933
- "id": "f8b4d7c2-3d34-40f7-b770-b3a864dc1ee0",
934
- "timestamp": "2026-08-31T10:41:40.783Z",
935
- "parentId": "76c63bc4-7401-4b65-82f9-369b6a4af888"
936
- },
937
- {
938
- "type": "assistant.turn_start",
939
- "data": {
940
- "turnId": "1",
941
- "interactionId": "92d278d4-4d1e-4553-9f90-7094659f5d4f"
942
- },
943
- "id": "a48e090e-d273-40c7-ac17-e7fee935fe27",
944
- "timestamp": "2026-08-31T10:41:40.783Z",
945
- "parentId": "76c63bc4-7401-4b65-82f9-369b6a4af888"
946
- },
947
- {
948
- "type": "session.background_tasks_changed",
949
- "data": {},
950
- "ephemeral": true,
951
- "id": "25f52efe-d8c4-462a-a30c-8785ea6be5cb",
952
- "timestamp": "2026-08-31T10:41:40.785Z",
953
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
954
- },
955
- {
956
- "type": "session.background_tasks_changed",
957
- "data": {},
958
- "ephemeral": true,
959
- "id": "854ad23a-54e3-468e-b620-dcd6c071c03e",
960
- "timestamp": "2026-08-31T10:41:40.787Z",
961
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
962
- },
963
- {
964
- "type": "session.usage_info",
965
- "ephemeral": true,
966
- "data": {
967
- "tokenLimit": 128000,
968
- "currentTokens": 13355,
969
- "messagesLength": 4,
970
- "systemTokens": 6143,
971
- "conversationTokens": 105,
972
- "toolDefinitionsTokens": 7107,
973
- "isInitial": false
974
- },
975
- "id": "9e1cceda-915a-4c0f-9d0b-58cd47ae2246",
976
- "timestamp": "2026-08-31T10:41:40.804Z",
977
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
978
- },
979
- {
980
- "type": "model.call_start",
981
- "data": {
982
- "turnId": "1",
983
- "model": "spike-model"
984
- },
985
- "ephemeral": true,
986
- "id": "b9b36b3c-446e-46c1-a8c9-90c319be6951",
987
- "timestamp": "2026-08-31T10:41:40.806Z",
988
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
989
- },
990
- {
991
- "type": "model.model_call_started",
992
- "data": {
993
- "kind": "model_call_started",
994
- "model": "spike-model",
995
- "modelInfo": {
996
- "id": "spike-model",
997
- "name": "spike-model",
998
- "capabilities": {
999
- "supports": {
1000
- "vision": false,
1001
- "adaptive_thinking": "unsupported"
1002
- },
1003
- "limits": {
1004
- "max_prompt_tokens": 128000,
1005
- "max_context_window_tokens": 200000,
1006
- "vision": {
1007
- "max_prompt_image_size": 3145728,
1008
- "max_prompt_images": 1,
1009
- "supported_media_types": [
1010
- "image/jpeg",
1011
- "image/png",
1012
- "image/webp"
1013
- ]
1014
- }
1015
- }
1016
- },
1017
- "supported_endpoints": [
1018
- "/chat/completions"
1019
- ]
1020
- },
1021
- "turn": 1,
1022
- "timestampMs": 1788172900806
1023
- },
1024
- "ephemeral": true,
1025
- "id": "f439a262-ed93-40c4-bfb5-8d2fc409bd94",
1026
- "timestamp": "2026-08-31T10:41:40.807Z",
1027
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1028
- },
1029
- {
1030
- "type": "assistant.message_start",
1031
- "data": {
1032
- "messageId": "e54f9a7d-06ad-4134-a232-4addac7eea1b"
1033
- },
1034
- "ephemeral": true,
1035
- "id": "afc5e3cf-64bc-41df-9d38-96e19311d27d",
1036
- "timestamp": "2026-08-31T10:41:40.810Z",
1037
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1038
- },
1039
- {
1040
- "type": "assistant.message_delta",
1041
- "data": {
1042
- "messageId": "e54f9a7d-06ad-4134-a232-4addac7eea1b",
1043
- "deltaContent": "PARENT"
1044
- },
1045
- "ephemeral": true,
1046
- "id": "8268c290-0723-4537-9a14-d5ee1b1e22a5",
1047
- "timestamp": "2026-08-31T10:41:40.810Z",
1048
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1049
- },
1050
- {
1051
- "type": "assistant.message_delta",
1052
- "data": {
1053
- "messageId": "e54f9a7d-06ad-4134-a232-4addac7eea1b",
1054
- "deltaContent": "_"
1055
- },
1056
- "ephemeral": true,
1057
- "id": "6b007960-0191-4c5d-b1f5-21050fef218e",
1058
- "timestamp": "2026-08-31T10:41:40.850Z",
1059
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1060
- },
1061
- {
1062
- "type": "assistant.message_delta",
1063
- "data": {
1064
- "messageId": "e54f9a7d-06ad-4134-a232-4addac7eea1b",
1065
- "deltaContent": "DONE"
1066
- },
1067
- "ephemeral": true,
1068
- "id": "5d13776f-99c2-4178-b433-d0718bff051b",
1069
- "timestamp": "2026-08-31T10:41:40.890Z",
1070
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1071
- },
1072
- {
1073
- "type": "assistant.usage",
1074
- "data": {
1075
- "model": "spike-model",
1076
- "inputTokens": 0,
1077
- "outputTokens": 0,
1078
- "cacheReadTokens": 0,
1079
- "cacheWriteTokens": 0,
1080
- "reasoningTokens": 0,
1081
- "cost": 0,
1082
- "duration": 125,
1083
- "timeToFirstTokenMs": 1.6371490000000002,
1084
- "outputTtftMs": 1.676663,
1085
- "interTokenLatencyMs": 29.9559,
1086
- "initiator": "agent",
1087
- "interactionType": "conversation-agent",
1088
- "isByok": true,
1089
- "isAuto": false,
1090
- "maxPromptTokens": 128000,
1091
- "transport": "http",
1092
- "apiCallId": "chatcmpl-sub-3",
1093
- "rte": false,
1094
- "apiEndpoint": "/chat/completions",
1095
- "quotaSnapshots": {},
1096
- "reasoningEffort": "medium",
1097
- "availableToolCount": 23,
1098
- "toolTokenCount": 7107,
1099
- "frontierSource": "estimated",
1100
- "cacheDetailsReported": false,
1101
- "numToolCalls": 0,
1102
- "toolCounts": {},
1103
- "finishReason": "stop",
1104
- "contentFilterTriggered": false
1105
- },
1106
- "ephemeral": true,
1107
- "id": "fc54f30c-841c-4e81-ab5c-199a7674dad1",
1108
- "timestamp": "2026-08-31T10:41:40.932Z",
1109
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1110
- },
1111
- {
1112
- "type": "model.model_call_success",
1113
- "data": {
1114
- "kind": "model_call_success",
1115
- "turn": 1,
1116
- "modelCallDurationMs": 125,
1117
- "ttftMs": 1.6371490000000002,
1118
- "outputTtftMs": 1.676663,
1119
- "interTokenLatencyMs": 29.9559,
1120
- "modelCall": {
1121
- "model": "spike-model",
1122
- "api_id": "chatcmpl-sub-3",
1123
- "api_endpoint": "/chat/completions",
1124
- "request_id": null,
1125
- "client_request_id": null,
1126
- "service_request_id": null,
1127
- "rte": false,
1128
- "initiator": "agent",
1129
- "transport": "http"
1130
- },
1131
- "responseChunk": {
1132
- "object": "chat.completion.chunk",
1133
- "id": "chatcmpl-sub-3",
1134
- "choices": [
1135
- {
1136
- "delta": {
1137
- "responses_message_status": "completed",
1138
- "role": "assistant",
1139
- "content": "PARENT_DONE",
1140
- "refusal": null
1141
- },
1142
- "finish_reason": "stop",
1143
- "index": 0
1144
- }
1145
- ],
1146
- "created": 1788172900,
1147
- "model": "spike-model"
1148
- },
1149
- "quotaSnapshots": {},
1150
- "rte": false,
1151
- "reasoningEffort": "medium",
1152
- "maxPromptTokens": 128000,
1153
- "toolCount": 23,
1154
- "toolTokenCount": 7107
1155
- },
1156
- "ephemeral": true,
1157
- "id": "5993b16e-123a-4d34-b753-6d336f072a06",
1158
- "timestamp": "2026-08-31T10:41:40.934Z",
1159
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1160
- },
1161
- {
1162
- "type": "model.call_finished",
1163
- "data": {
1164
- "turnId": "1",
1165
- "dispatchDurationMs": 125,
1166
- "outcome": "success",
1167
- "editClassifierVersion": 1,
1168
- "interactionId": "92d278d4-4d1e-4553-9f90-7094659f5d4f",
1169
- "containsBuiltInFileEditRequest": false
1170
- },
1171
- "ephemeral": true,
1172
- "id": "ec08c935-1cd7-40c7-8907-b21b3820ef87",
1173
- "timestamp": "2026-08-31T10:41:40.934Z",
1174
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1175
- },
1176
- {
1177
- "type": "model.message",
1178
- "data": {
1179
- "kind": "message",
1180
- "turn": 1,
1181
- "modelCall": {
1182
- "model": "spike-model",
1183
- "api_id": "chatcmpl-sub-3",
1184
- "api_endpoint": "/chat/completions",
1185
- "request_id": null,
1186
- "client_request_id": null,
1187
- "service_request_id": null,
1188
- "rte": false,
1189
- "initiator": "agent",
1190
- "transport": "http"
1191
- },
1192
- "message": {
1193
- "content": "PARENT_DONE",
1194
- "role": "assistant",
1195
- "refusal": null,
1196
- "apiCallId": "chatcmpl-sub-3"
1197
- }
1198
- },
1199
- "ephemeral": true,
1200
- "id": "c6a9cc7f-a2bb-430c-baa9-870a998e235e",
1201
- "timestamp": "2026-08-31T10:41:40.934Z",
1202
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1203
- },
1204
- {
1205
- "type": "assistant.message",
1206
- "data": {
1207
- "messageId": "e54f9a7d-06ad-4134-a232-4addac7eea1b",
1208
- "model": "spike-model",
1209
- "content": "PARENT_DONE",
1210
- "toolRequests": [],
1211
- "interactionId": "92d278d4-4d1e-4553-9f90-7094659f5d4f",
1212
- "turnId": "1",
1213
- "rte": false,
1214
- "apiCallId": "chatcmpl-sub-3"
1215
- },
1216
- "id": "bd902a94-5dec-4889-8b59-8d78d2a2cda4",
1217
- "timestamp": "2026-08-31T10:41:40.935Z",
1218
- "parentId": "a48e090e-d273-40c7-ac17-e7fee935fe27"
1219
- },
1220
- {
1221
- "type": "model.turn_ended",
1222
- "data": {
1223
- "kind": "turn_ended",
1224
- "model": "spike-model",
1225
- "modelInfo": {
1226
- "id": "spike-model",
1227
- "name": "spike-model",
1228
- "capabilities": {
1229
- "supports": {
1230
- "vision": false,
1231
- "adaptive_thinking": "unsupported"
1232
- },
1233
- "limits": {
1234
- "max_prompt_tokens": 128000,
1235
- "max_context_window_tokens": 200000,
1236
- "vision": {
1237
- "max_prompt_image_size": 3145728,
1238
- "max_prompt_images": 1,
1239
- "supported_media_types": [
1240
- "image/jpeg",
1241
- "image/png",
1242
- "image/webp"
1243
- ]
1244
- }
1245
- }
1246
- },
1247
- "supported_endpoints": [
1248
- "/chat/completions"
1249
- ]
1250
- },
1251
- "turn": 1,
1252
- "timestampMs": 1788172900936
1253
- },
1254
- "ephemeral": true,
1255
- "id": "a88bb0bb-c465-46e2-8dfd-6851a0d9c626",
1256
- "timestamp": "2026-08-31T10:41:40.936Z",
1257
- "parentId": "bd902a94-5dec-4889-8b59-8d78d2a2cda4"
1258
- },
1259
- {
1260
- "type": "assistant.turn_end",
1261
- "data": {
1262
- "turnId": "1"
1263
- },
1264
- "id": "b8f78612-1b7b-400d-9406-c342ebedc6a6",
1265
- "timestamp": "2026-08-31T10:41:40.936Z",
1266
- "parentId": "bd902a94-5dec-4889-8b59-8d78d2a2cda4"
1267
- },
1268
- {
1269
- "type": "assistant.idle",
1270
- "data": {},
1271
- "ephemeral": true,
1272
- "id": "5886527b-9111-4904-8527-6c141818fa88",
1273
- "timestamp": "2026-08-31T10:41:40.939Z",
1274
- "parentId": "b8f78612-1b7b-400d-9406-c342ebedc6a6"
1275
- },
1276
- {
1277
- "type": "session.idle",
1278
- "data": {
1279
- "mode": "interactive"
1280
- },
1281
- "ephemeral": true,
1282
- "id": "0bc2d651-b355-4997-b75c-696439fa47aa",
1283
- "timestamp": "2026-08-31T10:41:40.940Z",
1284
- "parentId": "b8f78612-1b7b-400d-9406-c342ebedc6a6"
1285
- },
1286
- {
1287
- "type": "session.shutdown",
1288
- "data": {
1289
- "shutdownType": "routine",
1290
- "totalPremiumRequests": 0,
1291
- "totalNanoAiu": 0,
1292
- "totalApiDurationMs": 261,
1293
- "sessionStartTime": 1788172899876,
1294
- "eventsFileSizeBytes": 38926,
1295
- "codeChanges": {
1296
- "linesAdded": 0,
1297
- "linesRemoved": 0,
1298
- "filesModified": []
1299
- },
1300
- "modelMetrics": {
1301
- "spike-model": {
1302
- "requests": {
1303
- "count": 3,
1304
- "cost": 0
1305
- },
1306
- "usage": {
1307
- "inputTokens": 0,
1308
- "outputTokens": 0,
1309
- "cacheReadTokens": 0,
1310
- "cacheWriteTokens": 0,
1311
- "reasoningTokens": 0
1312
- },
1313
- "totalNanoAiu": 0
1314
- }
1315
- },
1316
- "agentMetrics": {
1317
- "main": {
1318
- "totalApiDurationMs": 136,
1319
- "totalNanoAiu": 0,
1320
- "modelMetrics": {
1321
- "spike-model": {
1322
- "requests": {
1323
- "count": 2,
1324
- "cost": 0
1325
- },
1326
- "usage": {
1327
- "inputTokens": 0,
1328
- "outputTokens": 0,
1329
- "cacheReadTokens": 0,
1330
- "cacheWriteTokens": 0,
1331
- "reasoningTokens": 0
1332
- },
1333
- "totalNanoAiu": 0
1334
- }
1335
- }
1336
- },
1337
- "8d7d9f98-1ca2-4ac3-b2d2-306a630570e4": {
1338
- "agentName": "probe-helper",
1339
- "agentDisplayName": "Probe Helper",
1340
- "totalApiDurationMs": 125,
1341
- "totalNanoAiu": 0,
1342
- "modelMetrics": {
1343
- "spike-model": {
1344
- "requests": {
1345
- "count": 1,
1346
- "cost": 0
1347
- },
1348
- "usage": {
1349
- "inputTokens": 0,
1350
- "outputTokens": 0,
1351
- "cacheReadTokens": 0,
1352
- "cacheWriteTokens": 0,
1353
- "reasoningTokens": 0
1354
- },
1355
- "totalNanoAiu": 0
1356
- }
1357
- }
1358
- }
1359
- },
1360
- "currentModel": "spike-model",
1361
- "currentTokens": 13410,
1362
- "systemTokens": 6143,
1363
- "conversationTokens": 112,
1364
- "toolDefinitionsTokens": 7152
1365
- },
1366
- "id": "08be1d92-cc4b-4bd2-a8f6-ed83b6e94a5d",
1367
- "timestamp": "2026-08-31T10:41:43.442Z",
1368
- "parentId": "b8f78612-1b7b-400d-9406-c342ebedc6a6"
1369
- },
1370
- {
1371
- "type": "session.background_tasks_changed",
1372
- "data": {},
1373
- "ephemeral": true,
1374
- "id": "ee8b7ab2-aada-471a-bd7b-3d20e15ebfb9",
1375
- "timestamp": "2026-08-31T10:41:43.447Z",
1376
- "parentId": "08be1d92-cc4b-4bd2-a8f6-ed83b6e94a5d"
1377
- }
1378
- ]