@dexto/core 1.8.12 → 1.9.1

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 (124) hide show
  1. package/dist/approval/manager.cjs +37 -325
  2. package/dist/approval/manager.d.ts +10 -109
  3. package/dist/approval/manager.d.ts.map +1 -1
  4. package/dist/approval/manager.js +37 -316
  5. package/dist/approval/schemas.cjs +8 -51
  6. package/dist/approval/schemas.d.ts +5 -179
  7. package/dist/approval/schemas.d.ts.map +1 -1
  8. package/dist/approval/schemas.js +8 -47
  9. package/dist/approval/types.cjs +0 -6
  10. package/dist/approval/types.d.ts +2 -27
  11. package/dist/approval/types.d.ts.map +1 -1
  12. package/dist/approval/types.js +0 -6
  13. package/dist/context/compaction/strategies/reactive-overflow-compaction.cjs +2 -0
  14. package/dist/context/compaction/strategies/reactive-overflow-compaction.d.ts.map +1 -1
  15. package/dist/context/compaction/strategies/reactive-overflow-compaction.js +2 -0
  16. package/dist/context/content-clone.cjs +55 -10
  17. package/dist/context/content-clone.d.ts +1 -0
  18. package/dist/context/content-clone.d.ts.map +1 -1
  19. package/dist/context/content-clone.js +53 -9
  20. package/dist/context/manager.cjs +25 -4
  21. package/dist/context/manager.d.ts +4 -2
  22. package/dist/context/manager.d.ts.map +1 -1
  23. package/dist/context/manager.js +25 -4
  24. package/dist/context/schemas.cjs +15 -1
  25. package/dist/context/schemas.d.ts.map +1 -1
  26. package/dist/context/schemas.js +15 -1
  27. package/dist/context/types.d.ts +11 -0
  28. package/dist/context/types.d.ts.map +1 -1
  29. package/dist/errors/DextoRuntimeError.cjs +3 -1
  30. package/dist/errors/DextoRuntimeError.d.ts +5 -3
  31. package/dist/errors/DextoRuntimeError.d.ts.map +1 -1
  32. package/dist/errors/DextoRuntimeError.js +3 -1
  33. package/dist/errors/index.d.ts +1 -1
  34. package/dist/errors/index.d.ts.map +1 -1
  35. package/dist/errors/types.d.ts +1 -0
  36. package/dist/errors/types.d.ts.map +1 -1
  37. package/dist/events/index.d.ts +2 -2
  38. package/dist/events/index.d.ts.map +1 -1
  39. package/dist/llm/executor/provider-error.cjs +25 -4
  40. package/dist/llm/executor/provider-error.d.ts.map +1 -1
  41. package/dist/llm/executor/provider-error.js +25 -4
  42. package/dist/llm/executor/stream-processor.cjs +98 -7
  43. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  44. package/dist/llm/executor/stream-processor.js +98 -7
  45. package/dist/llm/executor/turn-executor.cjs +96 -28
  46. package/dist/llm/executor/turn-executor.d.ts +2 -0
  47. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  48. package/dist/llm/executor/turn-executor.js +96 -28
  49. package/dist/llm/providers/local/schemas.d.ts +2 -2
  50. package/dist/llm/services/factory.cjs +3 -2
  51. package/dist/llm/services/factory.d.ts.map +1 -1
  52. package/dist/llm/services/factory.js +3 -2
  53. package/dist/llm/services/types.d.ts +8 -0
  54. package/dist/llm/services/types.d.ts.map +1 -1
  55. package/dist/llm/services/vercel.cjs +6 -1
  56. package/dist/llm/services/vercel.d.ts +3 -2
  57. package/dist/llm/services/vercel.d.ts.map +1 -1
  58. package/dist/llm/services/vercel.js +6 -1
  59. package/dist/session/chat-session.cjs +4 -0
  60. package/dist/session/chat-session.d.ts +2 -1
  61. package/dist/session/chat-session.d.ts.map +1 -1
  62. package/dist/session/chat-session.js +4 -0
  63. package/dist/session/message-queue.cjs +48 -75
  64. package/dist/session/message-queue.d.ts +1 -2
  65. package/dist/session/message-queue.d.ts.map +1 -1
  66. package/dist/session/message-queue.js +48 -75
  67. package/dist/session/session-manager.cjs +14 -32
  68. package/dist/session/session-manager.d.ts +5 -2
  69. package/dist/session/session-manager.d.ts.map +1 -1
  70. package/dist/session/session-manager.js +14 -32
  71. package/dist/storage/approvals/types.cjs +2 -9
  72. package/dist/storage/approvals/types.d.ts +4 -16
  73. package/dist/storage/approvals/types.d.ts.map +1 -1
  74. package/dist/storage/approvals/types.js +2 -8
  75. package/dist/storage/database/types.d.ts +5 -0
  76. package/dist/storage/database/types.d.ts.map +1 -1
  77. package/dist/storage/index.cjs +0 -2
  78. package/dist/storage/index.d.ts +2 -2
  79. package/dist/storage/index.d.ts.map +1 -1
  80. package/dist/storage/index.js +1 -2
  81. package/dist/storage/message-queue/types.d.ts +14 -6
  82. package/dist/storage/message-queue/types.d.ts.map +1 -1
  83. package/dist/storage/stores/backend.cjs +68 -32
  84. package/dist/storage/stores/backend.d.ts +17 -8
  85. package/dist/storage/stores/backend.d.ts.map +1 -1
  86. package/dist/storage/stores/backend.js +69 -33
  87. package/dist/storage/stores/in-memory.cjs +26 -11
  88. package/dist/storage/stores/in-memory.d.ts.map +1 -1
  89. package/dist/storage/stores/in-memory.js +27 -12
  90. package/dist/test-utils/in-memory-storage.cjs +11 -0
  91. package/dist/test-utils/in-memory-storage.js +11 -0
  92. package/dist/test-utils/session-state-stores.cjs +25 -9
  93. package/dist/test-utils/session-state-stores.js +26 -10
  94. package/dist/tools/approval/tool-approval-policy.cjs +87 -0
  95. package/dist/tools/approval/tool-approval-policy.d.ts +34 -0
  96. package/dist/tools/approval/tool-approval-policy.d.ts.map +1 -0
  97. package/dist/tools/approval/tool-approval-policy.js +64 -0
  98. package/dist/tools/error-codes.cjs +0 -1
  99. package/dist/tools/error-codes.d.ts +0 -1
  100. package/dist/tools/error-codes.d.ts.map +1 -1
  101. package/dist/tools/error-codes.js +0 -1
  102. package/dist/tools/errors.cjs +0 -15
  103. package/dist/tools/errors.d.ts +0 -9
  104. package/dist/tools/errors.d.ts.map +1 -1
  105. package/dist/tools/errors.js +0 -15
  106. package/dist/tools/index.cjs +2 -0
  107. package/dist/tools/index.d.ts +1 -1
  108. package/dist/tools/index.d.ts.map +1 -1
  109. package/dist/tools/index.js +5 -1
  110. package/dist/tools/tool-manager.cjs +94 -312
  111. package/dist/tools/tool-manager.d.ts +4 -19
  112. package/dist/tools/tool-manager.d.ts.map +1 -1
  113. package/dist/tools/tool-manager.js +95 -316
  114. package/dist/tools/types.d.ts +10 -9
  115. package/dist/tools/types.d.ts.map +1 -1
  116. package/dist/utils/service-initializer.cjs +3 -0
  117. package/dist/utils/service-initializer.d.ts +2 -1
  118. package/dist/utils/service-initializer.d.ts.map +1 -1
  119. package/dist/utils/service-initializer.js +3 -0
  120. package/package.json +2 -2
  121. package/dist/tools/pattern-utils.cjs +0 -33
  122. package/dist/tools/pattern-utils.d.ts +0 -20
  123. package/dist/tools/pattern-utils.d.ts.map +0 -1
  124. package/dist/tools/pattern-utils.js +0 -10
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ var import_ai = require("ai");
26
26
  var import_DextoRuntimeError = require("../../errors/DextoRuntimeError.js");
27
27
  var import_types = require("../../errors/types.js");
28
28
  var import_error_codes = require("../error-codes.js");
29
+ const INSUFFICIENT_CREDITS_BALANCE_PATTERN = /Insufficient credits\. Balance: \$(-?\d+(?:\.\d+)?)\./;
29
30
  function isRecord(value) {
30
31
  return typeof value === "object" && value !== null;
31
32
  }
@@ -116,6 +117,12 @@ function extractBalance(value) {
116
117
  }
117
118
  return void 0;
118
119
  }
120
+ function extractBalanceFromMessage(message) {
121
+ const match = INSUFFICIENT_CREDITS_BALANCE_PATTERN.exec(message);
122
+ if (match === null) return void 0;
123
+ const balance = Number(match[1]);
124
+ return Number.isFinite(balance) ? balance : void 0;
125
+ }
119
126
  function errorTypeForStatus(status) {
120
127
  if (status === 402) return import_types.ErrorType.PAYMENT_REQUIRED;
121
128
  if (status === 403) return import_types.ErrorType.FORBIDDEN;
@@ -140,6 +147,11 @@ function buildContext(input, details) {
140
147
  ...details
141
148
  };
142
149
  }
150
+ function retryDispositionForProviderError(details) {
151
+ if (details.isRetryable === true) return "retryable";
152
+ if (details.isRetryable === false) return "non_retryable";
153
+ return "unknown";
154
+ }
143
155
  function extractProviderErrorDetails(input) {
144
156
  const details = {
145
157
  provider: input.provider,
@@ -169,7 +181,10 @@ function mapProviderError(input) {
169
181
  import_types.ErrorScope.LLM,
170
182
  import_types.ErrorType.USER,
171
183
  message2,
172
- buildContext(input, extractProviderErrorDetails(input))
184
+ buildContext(input, extractProviderErrorDetails(input)),
185
+ void 0,
186
+ void 0,
187
+ "non_retryable"
173
188
  );
174
189
  }
175
190
  return new import_DextoRuntimeError.DextoRuntimeError(
@@ -185,8 +200,9 @@ function mapProviderError(input) {
185
200
  const message = providerMessage(details, input.error.message);
186
201
  const code = errorCodeForStatus(status, details);
187
202
  const type = errorTypeForStatus(status);
203
+ const retryDisposition = retryDispositionForProviderError(details);
188
204
  if (status === 402) {
189
- const balance = extractBalance(parseJsonObject(details.responseBody));
205
+ const balance = extractBalance(parseJsonObject(details.responseBody)) ?? extractBalanceFromMessage(message);
190
206
  return new import_DextoRuntimeError.DextoRuntimeError(
191
207
  code,
192
208
  import_types.ErrorScope.LLM,
@@ -196,7 +212,9 @@ function mapProviderError(input) {
196
212
  ...buildContext(input, details),
197
213
  ...balance === void 0 ? {} : { balance }
198
214
  },
199
- "Run `dexto billing` to check your balance"
215
+ "Run `dexto billing` to check your balance",
216
+ void 0,
217
+ retryDisposition
200
218
  );
201
219
  }
202
220
  return new import_DextoRuntimeError.DextoRuntimeError(
@@ -204,7 +222,10 @@ function mapProviderError(input) {
204
222
  import_types.ErrorScope.LLM,
205
223
  type,
206
224
  status === void 0 ? message : `Provider error ${status}: ${message}`,
207
- buildContext(input, details)
225
+ buildContext(input, details),
226
+ void 0,
227
+ void 0,
228
+ retryDisposition
208
229
  );
209
230
  }
210
231
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"file":"provider-error.d.ts","sourceRoot":"","sources":["../../../src/llm/executor/provider-error.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,yBAAyB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5C,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAmKF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,qBAAqB,GAAG,uBAAuB,CAuBjG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,KAAK,CAqDpE"}
1
+ {"version":3,"file":"provider-error.d.ts","sourceRoot":"","sources":["../../../src/llm/executor/provider-error.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,yBAAyB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5C,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAiLF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,qBAAqB,GAAG,uBAAuB,CAuBjG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,KAAK,CAgEpE"}
@@ -3,6 +3,7 @@ import { APICallError } from "ai";
3
3
  import { DextoRuntimeError } from "../../errors/DextoRuntimeError.js";
4
4
  import { ErrorScope, ErrorType } from "../../errors/types.js";
5
5
  import { LLMErrorCode } from "../error-codes.js";
6
+ const INSUFFICIENT_CREDITS_BALANCE_PATTERN = /Insufficient credits\. Balance: \$(-?\d+(?:\.\d+)?)\./;
6
7
  function isRecord(value) {
7
8
  return typeof value === "object" && value !== null;
8
9
  }
@@ -93,6 +94,12 @@ function extractBalance(value) {
93
94
  }
94
95
  return void 0;
95
96
  }
97
+ function extractBalanceFromMessage(message) {
98
+ const match = INSUFFICIENT_CREDITS_BALANCE_PATTERN.exec(message);
99
+ if (match === null) return void 0;
100
+ const balance = Number(match[1]);
101
+ return Number.isFinite(balance) ? balance : void 0;
102
+ }
96
103
  function errorTypeForStatus(status) {
97
104
  if (status === 402) return ErrorType.PAYMENT_REQUIRED;
98
105
  if (status === 403) return ErrorType.FORBIDDEN;
@@ -117,6 +124,11 @@ function buildContext(input, details) {
117
124
  ...details
118
125
  };
119
126
  }
127
+ function retryDispositionForProviderError(details) {
128
+ if (details.isRetryable === true) return "retryable";
129
+ if (details.isRetryable === false) return "non_retryable";
130
+ return "unknown";
131
+ }
120
132
  function extractProviderErrorDetails(input) {
121
133
  const details = {
122
134
  provider: input.provider,
@@ -146,7 +158,10 @@ function mapProviderError(input) {
146
158
  ErrorScope.LLM,
147
159
  ErrorType.USER,
148
160
  message2,
149
- buildContext(input, extractProviderErrorDetails(input))
161
+ buildContext(input, extractProviderErrorDetails(input)),
162
+ void 0,
163
+ void 0,
164
+ "non_retryable"
150
165
  );
151
166
  }
152
167
  return new DextoRuntimeError(
@@ -162,8 +177,9 @@ function mapProviderError(input) {
162
177
  const message = providerMessage(details, input.error.message);
163
178
  const code = errorCodeForStatus(status, details);
164
179
  const type = errorTypeForStatus(status);
180
+ const retryDisposition = retryDispositionForProviderError(details);
165
181
  if (status === 402) {
166
- const balance = extractBalance(parseJsonObject(details.responseBody));
182
+ const balance = extractBalance(parseJsonObject(details.responseBody)) ?? extractBalanceFromMessage(message);
167
183
  return new DextoRuntimeError(
168
184
  code,
169
185
  ErrorScope.LLM,
@@ -173,7 +189,9 @@ function mapProviderError(input) {
173
189
  ...buildContext(input, details),
174
190
  ...balance === void 0 ? {} : { balance }
175
191
  },
176
- "Run `dexto billing` to check your balance"
192
+ "Run `dexto billing` to check your balance",
193
+ void 0,
194
+ retryDisposition
177
195
  );
178
196
  }
179
197
  return new DextoRuntimeError(
@@ -181,7 +199,10 @@ function mapProviderError(input) {
181
199
  ErrorScope.LLM,
182
200
  type,
183
201
  status === void 0 ? message : `Provider error ${status}: ${message}`,
184
- buildContext(input, details)
202
+ buildContext(input, details),
203
+ void 0,
204
+ void 0,
205
+ retryDisposition
185
206
  );
186
207
  }
187
208
  export {
@@ -21,12 +21,23 @@ __export(stream_processor_exports, {
21
21
  StreamProcessor: () => StreamProcessor
22
22
  });
23
23
  module.exports = __toCommonJS(stream_processor_exports);
24
+ var import_api = require("@opentelemetry/api");
24
25
  var import_types2 = require("../../logger/v2/types.js");
25
26
  var import_usage_metadata = require("../usage-metadata.js");
26
27
  var import_provider_error = require("./provider-error.js");
27
28
  function finiteUsageCount(value) {
28
29
  return typeof value === "number" && Number.isFinite(value) ? value : void 0;
29
30
  }
31
+ function assistantOutputForFinishReason(finishReason) {
32
+ switch (finishReason) {
33
+ case "cancelled":
34
+ return { status: "stopped", reason: "cancelled" };
35
+ case "error":
36
+ return { status: "stopped", reason: "failed" };
37
+ default:
38
+ return { status: "complete" };
39
+ }
40
+ }
30
41
  class StreamProcessor {
31
42
  /**
32
43
  * @param contextManager Context manager for message persistence
@@ -65,7 +76,21 @@ class StreamProcessor {
65
76
  pendingToolCalls = /* @__PURE__ */ new Map();
66
77
  partialToolCalls = /* @__PURE__ */ new Map();
67
78
  async process(streamFn) {
79
+ const startedAtMs = Date.now();
80
+ const setStreamAttribute = (name, value) => {
81
+ import_api.trace.getActiveSpan()?.setAttribute(`llm.stream.${name}`, value);
82
+ };
83
+ const markTiming = (name) => {
84
+ const elapsedMs = Date.now() - startedAtMs;
85
+ setStreamAttribute(`${name}_ms`, elapsedMs);
86
+ return elapsedMs;
87
+ };
68
88
  const stream = streamFn();
89
+ let lastDeltaReceivedAtMs = null;
90
+ let lastReasoningDeltaReceivedAtMs = null;
91
+ let lastTextDeltaReceivedAtMs = null;
92
+ let reasoningDeltaCount = 0;
93
+ let textDeltaCount = 0;
69
94
  const handleToolInputStart = (evt) => {
70
95
  const toolCallId = evt.toolCallId ?? evt.id ?? void 0;
71
96
  const toolName = evt.toolName ?? evt.name ?? "unknown";
@@ -112,8 +137,19 @@ class StreamProcessor {
112
137
  for await (const event of stream.fullStream) {
113
138
  switch (event.type) {
114
139
  case "text-delta":
140
+ if (textDeltaCount === 0) {
141
+ markTiming("first_text_delta_received");
142
+ }
143
+ textDeltaCount += 1;
144
+ setStreamAttribute("text_delta_count", textDeltaCount);
145
+ lastTextDeltaReceivedAtMs = markTiming("last_text_delta_received");
146
+ lastDeltaReceivedAtMs = lastTextDeltaReceivedAtMs;
147
+ setStreamAttribute("last_delta_received_ms", lastDeltaReceivedAtMs);
148
+ setStreamAttribute("last_delta_kind", "text");
115
149
  if (!this.assistantMessageId) {
116
- this.assistantMessageId = await this.contextManager.addAssistantMessage("", [], {}).then(() => {
150
+ this.assistantMessageId = await this.contextManager.addAssistantMessage("", [], {
151
+ assistantOutput: { status: "draft" }
152
+ }).then(() => {
117
153
  return this.getLastMessageId();
118
154
  });
119
155
  }
@@ -128,8 +164,20 @@ class StreamProcessor {
128
164
  content: event.text
129
165
  });
130
166
  }
167
+ markTiming("last_text_delta_emitted");
131
168
  break;
132
169
  case "reasoning-delta":
170
+ if (reasoningDeltaCount === 0) {
171
+ markTiming("first_reasoning_delta_received");
172
+ }
173
+ reasoningDeltaCount += 1;
174
+ setStreamAttribute("reasoning_delta_count", reasoningDeltaCount);
175
+ lastReasoningDeltaReceivedAtMs = markTiming(
176
+ "last_reasoning_delta_received"
177
+ );
178
+ lastDeltaReceivedAtMs = lastReasoningDeltaReceivedAtMs;
179
+ setStreamAttribute("last_delta_received_ms", lastDeltaReceivedAtMs);
180
+ setStreamAttribute("last_delta_kind", "reasoning");
133
181
  this.reasoningText += event.text;
134
182
  if (event.providerMetadata) {
135
183
  this.mergeReasoningMetadata(event.providerMetadata);
@@ -140,6 +188,7 @@ class StreamProcessor {
140
188
  content: event.text
141
189
  });
142
190
  }
191
+ markTiming("last_reasoning_delta_emitted");
143
192
  break;
144
193
  case "tool-input-start": {
145
194
  handleToolInputStart(event);
@@ -203,6 +252,25 @@ class StreamProcessor {
203
252
  }
204
253
  break;
205
254
  case "finish": {
255
+ const finishEventReceivedAtMs = markTiming("finish_event_received");
256
+ if (lastTextDeltaReceivedAtMs !== null) {
257
+ setStreamAttribute(
258
+ "finish_after_last_text_delta_ms",
259
+ finishEventReceivedAtMs - lastTextDeltaReceivedAtMs
260
+ );
261
+ }
262
+ if (lastReasoningDeltaReceivedAtMs !== null) {
263
+ setStreamAttribute(
264
+ "finish_after_last_reasoning_delta_ms",
265
+ finishEventReceivedAtMs - lastReasoningDeltaReceivedAtMs
266
+ );
267
+ }
268
+ if (lastDeltaReceivedAtMs !== null) {
269
+ setStreamAttribute(
270
+ "finish_after_last_delta_ms",
271
+ finishEventReceivedAtMs - lastDeltaReceivedAtMs
272
+ );
273
+ }
206
274
  this.finishReason = event.finishReason;
207
275
  const providerMetadata = this.getProviderMetadata(event);
208
276
  const fallbackUsage = this.normalizeUsage(
@@ -259,14 +327,22 @@ class StreamProcessor {
259
327
  provider: this.config.provider,
260
328
  model: this.config.model
261
329
  });
262
- await this.persistAssistantResponseMetadata(usage, pricingMetadata);
330
+ markTiming("metadata_persist_started");
331
+ await this.persistAssistantResponseMetadata(
332
+ usage,
333
+ pricingMetadata,
334
+ assistantOutputForFinishReason(this.finishReason)
335
+ );
336
+ markTiming("metadata_persist_finished");
263
337
  const hasContent = this.accumulatedText || this.reasoningText;
264
338
  if (this.finishReason !== "tool-calls" || hasContent) {
339
+ markTiming("llm_response_emit_started");
265
340
  this.emitLLMResponse({
266
341
  tokenUsage: usage,
267
342
  finishReason: this.finishReason,
268
343
  ...pricingMetadata
269
344
  });
345
+ markTiming("llm_response_emitted");
270
346
  }
271
347
  break;
272
348
  }
@@ -290,7 +366,8 @@ class StreamProcessor {
290
366
  });
291
367
  await this.persistAssistantResponseMetadata(
292
368
  this.actualTokens,
293
- abortPricingMetadata
369
+ abortPricingMetadata,
370
+ { status: "stopped", reason: "cancelled" }
294
371
  );
295
372
  this.emitLLMResponse({
296
373
  tokenUsage: this.actualTokens,
@@ -319,7 +396,8 @@ class StreamProcessor {
319
396
  });
320
397
  await this.persistAssistantResponseMetadata(
321
398
  this.actualTokens,
322
- abortPricingMetadata
399
+ abortPricingMetadata,
400
+ { status: "stopped", reason: "cancelled" }
323
401
  );
324
402
  this.emitLLMResponse({
325
403
  tokenUsage: this.actualTokens,
@@ -338,6 +416,15 @@ class StreamProcessor {
338
416
  provider: this.config.provider,
339
417
  model: this.config.model
340
418
  });
419
+ const failurePricingMetadata = (0, import_usage_metadata.getUsagePricingMetadata)({
420
+ provider: this.config.provider,
421
+ model: this.config.model,
422
+ tokenUsage: this.actualTokens
423
+ });
424
+ await this.persistAssistantResponseMetadata(this.actualTokens, failurePricingMetadata, {
425
+ status: "stopped",
426
+ reason: "failed"
427
+ });
341
428
  if (!this.emitFatalErrors) {
342
429
  this.logger.error("Stream processing failed", { error: mappedError });
343
430
  throw error;
@@ -357,6 +444,7 @@ class StreamProcessor {
357
444
  this.logger.error("Stream processing failed", { error: mappedError });
358
445
  throw mappedError;
359
446
  }
447
+ markTiming("full_stream_iterator_completed");
360
448
  return {
361
449
  text: this.accumulatedText,
362
450
  finishReason: this.finishReason,
@@ -432,7 +520,7 @@ class StreamProcessor {
432
520
  finishReason: config.finishReason
433
521
  });
434
522
  }
435
- async persistAssistantResponseMetadata(tokenUsage, pricingMetadata) {
523
+ async persistAssistantResponseMetadata(tokenUsage, pricingMetadata, assistantOutput) {
436
524
  if (!this.assistantMessageId) {
437
525
  return;
438
526
  }
@@ -450,7 +538,8 @@ class StreamProcessor {
450
538
  ...this.reasoningText && { reasoning: this.reasoningText },
451
539
  ...this.reasoningMetadata && {
452
540
  reasoningMetadata: this.reasoningMetadata
453
- }
541
+ },
542
+ assistantOutput
454
543
  });
455
544
  }
456
545
  mergeReasoningMetadata(providerMetadata) {
@@ -476,7 +565,9 @@ class StreamProcessor {
476
565
  this.reasoningMetadata = merged;
477
566
  }
478
567
  async createAssistantMessage() {
479
- await this.contextManager.addAssistantMessage("", [], {});
568
+ await this.contextManager.addAssistantMessage("", [], {
569
+ assistantOutput: { status: "draft" }
570
+ });
480
571
  return this.getLastMessageId();
481
572
  }
482
573
  async getLastMessageId() {
@@ -1 +1 @@
1
- {"version":3,"file":"stream-processor.d.ts","sourceRoot":"","sources":["../../../src/llm/executor/stream-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,IAAI,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAmB,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAKvD,OAAO,KAAK,EAAE,WAAW,EAAoB,gBAAgB,EAAc,MAAM,YAAY,CAAC;AAiD9F,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,gFAAgF;IAChF,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,qBAAa,eAAe;IA6BpB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IAEd,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,eAAe;IAlC3B,OAAO,CAAC,kBAAkB,CAAuB;IACjD,OAAO,CAAC,YAAY,CAAmE;IACvF,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,iBAAiB,CAAsC;IAC/D,OAAO,CAAC,eAAe,CAAc;IACrC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAClD,OAAO,CAAC,cAAc,CAAuB;IAC7C;;;OAGG;IACH,OAAO,CAAC,gBAAgB,CAAgD;IACxE,OAAO,CAAC,gBAAgB,CAAkE;IAE1F;;;;;;;;;OASG;gBAES,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,eAAe,EACzB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,qBAAqB,EACrC,MAAM,EAAE,MAAM,EACN,SAAS,GAAE,OAAc,EACzB,eAAe,GAAE,OAAc;IAMrC,OAAO,CACT,QAAQ,EAAE,MAAM,gBAAgB,CAAC,aAAa,EAAE,OAAO,CAAC,GACzD,OAAO,CAAC,qBAAqB,CAAC;IAwZjC,OAAO,CAAC,kCAAkC;IAoB1C,OAAO,CAAC,cAAc;IA4CtB,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,0BAA0B;IAclC,OAAO,CAAC,eAAe;YA8BT,gCAAgC;IA0B9C,OAAO,CAAC,sBAAsB;YAwChB,sBAAsB;YAKtB,gBAAgB;IAO9B;;;;OAIG;YACW,2BAA2B;IAQzC;;OAEG;YACW,wBAAwB;YAQxB,yBAAyB;CAuC1C"}
1
+ {"version":3,"file":"stream-processor.d.ts","sourceRoot":"","sources":["../../../src/llm/executor/stream-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,IAAI,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAmB,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAKvD,OAAO,KAAK,EAAE,WAAW,EAAoB,gBAAgB,EAAc,MAAM,YAAY,CAAC;AA4D9F,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,gFAAgF;IAChF,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,qBAAa,eAAe;IA6BpB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IAEd,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,eAAe;IAlC3B,OAAO,CAAC,kBAAkB,CAAuB;IACjD,OAAO,CAAC,YAAY,CAAmE;IACvF,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,iBAAiB,CAAsC;IAC/D,OAAO,CAAC,eAAe,CAAc;IACrC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAClD,OAAO,CAAC,cAAc,CAAuB;IAC7C;;;OAGG;IACH,OAAO,CAAC,gBAAgB,CAAgD;IACxE,OAAO,CAAC,gBAAgB,CAAkE;IAE1F;;;;;;;;;OASG;gBAES,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,eAAe,EACzB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,qBAAqB,EACrC,MAAM,EAAE,MAAM,EACN,SAAS,GAAE,OAAc,EACzB,eAAe,GAAE,OAAc;IAMrC,OAAO,CACT,QAAQ,EAAE,MAAM,gBAAgB,CAAC,aAAa,EAAE,OAAO,CAAC,GACzD,OAAO,CAAC,qBAAqB,CAAC;IAsejC,OAAO,CAAC,kCAAkC;IAoB1C,OAAO,CAAC,cAAc;IA4CtB,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,0BAA0B;IAclC,OAAO,CAAC,eAAe;YA8BT,gCAAgC;IA4B9C,OAAO,CAAC,sBAAsB;YAwChB,sBAAsB;YAOtB,gBAAgB;IAO9B;;;;OAIG;YACW,2BAA2B;IAQzC;;OAEG;YACW,wBAAwB;YAQxB,yBAAyB;CAuC1C"}
@@ -1,10 +1,21 @@
1
1
  import "../../chunk-C6A6W6XS.js";
2
+ import { trace } from "@opentelemetry/api";
2
3
  import { DextoLogComponent } from "../../logger/v2/types.js";
3
4
  import { getUsagePricingMetadata } from "../usage-metadata.js";
4
5
  import { extractProviderErrorDetails, mapProviderError } from "./provider-error.js";
5
6
  function finiteUsageCount(value) {
6
7
  return typeof value === "number" && Number.isFinite(value) ? value : void 0;
7
8
  }
9
+ function assistantOutputForFinishReason(finishReason) {
10
+ switch (finishReason) {
11
+ case "cancelled":
12
+ return { status: "stopped", reason: "cancelled" };
13
+ case "error":
14
+ return { status: "stopped", reason: "failed" };
15
+ default:
16
+ return { status: "complete" };
17
+ }
18
+ }
8
19
  class StreamProcessor {
9
20
  /**
10
21
  * @param contextManager Context manager for message persistence
@@ -43,7 +54,21 @@ class StreamProcessor {
43
54
  pendingToolCalls = /* @__PURE__ */ new Map();
44
55
  partialToolCalls = /* @__PURE__ */ new Map();
45
56
  async process(streamFn) {
57
+ const startedAtMs = Date.now();
58
+ const setStreamAttribute = (name, value) => {
59
+ trace.getActiveSpan()?.setAttribute(`llm.stream.${name}`, value);
60
+ };
61
+ const markTiming = (name) => {
62
+ const elapsedMs = Date.now() - startedAtMs;
63
+ setStreamAttribute(`${name}_ms`, elapsedMs);
64
+ return elapsedMs;
65
+ };
46
66
  const stream = streamFn();
67
+ let lastDeltaReceivedAtMs = null;
68
+ let lastReasoningDeltaReceivedAtMs = null;
69
+ let lastTextDeltaReceivedAtMs = null;
70
+ let reasoningDeltaCount = 0;
71
+ let textDeltaCount = 0;
47
72
  const handleToolInputStart = (evt) => {
48
73
  const toolCallId = evt.toolCallId ?? evt.id ?? void 0;
49
74
  const toolName = evt.toolName ?? evt.name ?? "unknown";
@@ -90,8 +115,19 @@ class StreamProcessor {
90
115
  for await (const event of stream.fullStream) {
91
116
  switch (event.type) {
92
117
  case "text-delta":
118
+ if (textDeltaCount === 0) {
119
+ markTiming("first_text_delta_received");
120
+ }
121
+ textDeltaCount += 1;
122
+ setStreamAttribute("text_delta_count", textDeltaCount);
123
+ lastTextDeltaReceivedAtMs = markTiming("last_text_delta_received");
124
+ lastDeltaReceivedAtMs = lastTextDeltaReceivedAtMs;
125
+ setStreamAttribute("last_delta_received_ms", lastDeltaReceivedAtMs);
126
+ setStreamAttribute("last_delta_kind", "text");
93
127
  if (!this.assistantMessageId) {
94
- this.assistantMessageId = await this.contextManager.addAssistantMessage("", [], {}).then(() => {
128
+ this.assistantMessageId = await this.contextManager.addAssistantMessage("", [], {
129
+ assistantOutput: { status: "draft" }
130
+ }).then(() => {
95
131
  return this.getLastMessageId();
96
132
  });
97
133
  }
@@ -106,8 +142,20 @@ class StreamProcessor {
106
142
  content: event.text
107
143
  });
108
144
  }
145
+ markTiming("last_text_delta_emitted");
109
146
  break;
110
147
  case "reasoning-delta":
148
+ if (reasoningDeltaCount === 0) {
149
+ markTiming("first_reasoning_delta_received");
150
+ }
151
+ reasoningDeltaCount += 1;
152
+ setStreamAttribute("reasoning_delta_count", reasoningDeltaCount);
153
+ lastReasoningDeltaReceivedAtMs = markTiming(
154
+ "last_reasoning_delta_received"
155
+ );
156
+ lastDeltaReceivedAtMs = lastReasoningDeltaReceivedAtMs;
157
+ setStreamAttribute("last_delta_received_ms", lastDeltaReceivedAtMs);
158
+ setStreamAttribute("last_delta_kind", "reasoning");
111
159
  this.reasoningText += event.text;
112
160
  if (event.providerMetadata) {
113
161
  this.mergeReasoningMetadata(event.providerMetadata);
@@ -118,6 +166,7 @@ class StreamProcessor {
118
166
  content: event.text
119
167
  });
120
168
  }
169
+ markTiming("last_reasoning_delta_emitted");
121
170
  break;
122
171
  case "tool-input-start": {
123
172
  handleToolInputStart(event);
@@ -181,6 +230,25 @@ class StreamProcessor {
181
230
  }
182
231
  break;
183
232
  case "finish": {
233
+ const finishEventReceivedAtMs = markTiming("finish_event_received");
234
+ if (lastTextDeltaReceivedAtMs !== null) {
235
+ setStreamAttribute(
236
+ "finish_after_last_text_delta_ms",
237
+ finishEventReceivedAtMs - lastTextDeltaReceivedAtMs
238
+ );
239
+ }
240
+ if (lastReasoningDeltaReceivedAtMs !== null) {
241
+ setStreamAttribute(
242
+ "finish_after_last_reasoning_delta_ms",
243
+ finishEventReceivedAtMs - lastReasoningDeltaReceivedAtMs
244
+ );
245
+ }
246
+ if (lastDeltaReceivedAtMs !== null) {
247
+ setStreamAttribute(
248
+ "finish_after_last_delta_ms",
249
+ finishEventReceivedAtMs - lastDeltaReceivedAtMs
250
+ );
251
+ }
184
252
  this.finishReason = event.finishReason;
185
253
  const providerMetadata = this.getProviderMetadata(event);
186
254
  const fallbackUsage = this.normalizeUsage(
@@ -237,14 +305,22 @@ class StreamProcessor {
237
305
  provider: this.config.provider,
238
306
  model: this.config.model
239
307
  });
240
- await this.persistAssistantResponseMetadata(usage, pricingMetadata);
308
+ markTiming("metadata_persist_started");
309
+ await this.persistAssistantResponseMetadata(
310
+ usage,
311
+ pricingMetadata,
312
+ assistantOutputForFinishReason(this.finishReason)
313
+ );
314
+ markTiming("metadata_persist_finished");
241
315
  const hasContent = this.accumulatedText || this.reasoningText;
242
316
  if (this.finishReason !== "tool-calls" || hasContent) {
317
+ markTiming("llm_response_emit_started");
243
318
  this.emitLLMResponse({
244
319
  tokenUsage: usage,
245
320
  finishReason: this.finishReason,
246
321
  ...pricingMetadata
247
322
  });
323
+ markTiming("llm_response_emitted");
248
324
  }
249
325
  break;
250
326
  }
@@ -268,7 +344,8 @@ class StreamProcessor {
268
344
  });
269
345
  await this.persistAssistantResponseMetadata(
270
346
  this.actualTokens,
271
- abortPricingMetadata
347
+ abortPricingMetadata,
348
+ { status: "stopped", reason: "cancelled" }
272
349
  );
273
350
  this.emitLLMResponse({
274
351
  tokenUsage: this.actualTokens,
@@ -297,7 +374,8 @@ class StreamProcessor {
297
374
  });
298
375
  await this.persistAssistantResponseMetadata(
299
376
  this.actualTokens,
300
- abortPricingMetadata
377
+ abortPricingMetadata,
378
+ { status: "stopped", reason: "cancelled" }
301
379
  );
302
380
  this.emitLLMResponse({
303
381
  tokenUsage: this.actualTokens,
@@ -316,6 +394,15 @@ class StreamProcessor {
316
394
  provider: this.config.provider,
317
395
  model: this.config.model
318
396
  });
397
+ const failurePricingMetadata = getUsagePricingMetadata({
398
+ provider: this.config.provider,
399
+ model: this.config.model,
400
+ tokenUsage: this.actualTokens
401
+ });
402
+ await this.persistAssistantResponseMetadata(this.actualTokens, failurePricingMetadata, {
403
+ status: "stopped",
404
+ reason: "failed"
405
+ });
319
406
  if (!this.emitFatalErrors) {
320
407
  this.logger.error("Stream processing failed", { error: mappedError });
321
408
  throw error;
@@ -335,6 +422,7 @@ class StreamProcessor {
335
422
  this.logger.error("Stream processing failed", { error: mappedError });
336
423
  throw mappedError;
337
424
  }
425
+ markTiming("full_stream_iterator_completed");
338
426
  return {
339
427
  text: this.accumulatedText,
340
428
  finishReason: this.finishReason,
@@ -410,7 +498,7 @@ class StreamProcessor {
410
498
  finishReason: config.finishReason
411
499
  });
412
500
  }
413
- async persistAssistantResponseMetadata(tokenUsage, pricingMetadata) {
501
+ async persistAssistantResponseMetadata(tokenUsage, pricingMetadata, assistantOutput) {
414
502
  if (!this.assistantMessageId) {
415
503
  return;
416
504
  }
@@ -428,7 +516,8 @@ class StreamProcessor {
428
516
  ...this.reasoningText && { reasoning: this.reasoningText },
429
517
  ...this.reasoningMetadata && {
430
518
  reasoningMetadata: this.reasoningMetadata
431
- }
519
+ },
520
+ assistantOutput
432
521
  });
433
522
  }
434
523
  mergeReasoningMetadata(providerMetadata) {
@@ -454,7 +543,9 @@ class StreamProcessor {
454
543
  this.reasoningMetadata = merged;
455
544
  }
456
545
  async createAssistantMessage() {
457
- await this.contextManager.addAssistantMessage("", [], {});
546
+ await this.contextManager.addAssistantMessage("", [], {
547
+ assistantOutput: { status: "draft" }
548
+ });
458
549
  return this.getLastMessageId();
459
550
  }
460
551
  async getLastMessageId() {