@dexto/core 1.6.16 → 1.6.17

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 (50) hide show
  1. package/dist/agent/DextoAgent.cjs +21 -2
  2. package/dist/agent/DextoAgent.d.ts +1 -0
  3. package/dist/agent/DextoAgent.d.ts.map +1 -1
  4. package/dist/agent/DextoAgent.js +21 -2
  5. package/dist/agent/types.d.ts +7 -0
  6. package/dist/agent/types.d.ts.map +1 -1
  7. package/dist/context/manager.cjs +6 -1
  8. package/dist/context/manager.d.ts +3 -0
  9. package/dist/context/manager.d.ts.map +1 -1
  10. package/dist/context/manager.js +6 -1
  11. package/dist/context/types.d.ts +7 -1
  12. package/dist/context/types.d.ts.map +1 -1
  13. package/dist/events/index.d.ts +19 -17
  14. package/dist/events/index.d.ts.map +1 -1
  15. package/dist/llm/executor/stream-processor.cjs +63 -17
  16. package/dist/llm/executor/stream-processor.d.ts +2 -0
  17. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  18. package/dist/llm/executor/stream-processor.js +63 -17
  19. package/dist/llm/index.cjs +6 -0
  20. package/dist/llm/index.d.ts +3 -0
  21. package/dist/llm/index.d.ts.map +1 -1
  22. package/dist/llm/index.js +3 -0
  23. package/dist/llm/registry/index.cjs +18 -6
  24. package/dist/llm/registry/index.d.ts +9 -0
  25. package/dist/llm/registry/index.d.ts.map +1 -1
  26. package/dist/llm/registry/index.js +17 -6
  27. package/dist/llm/services/types.d.ts +2 -0
  28. package/dist/llm/services/types.d.ts.map +1 -1
  29. package/dist/llm/types.cjs +3 -0
  30. package/dist/llm/types.d.ts +2 -0
  31. package/dist/llm/types.d.ts.map +1 -1
  32. package/dist/llm/types.js +2 -0
  33. package/dist/llm/usage-metadata.cjs +50 -0
  34. package/dist/llm/usage-metadata.d.ts +12 -0
  35. package/dist/llm/usage-metadata.d.ts.map +1 -0
  36. package/dist/llm/usage-metadata.js +26 -0
  37. package/dist/llm/usage-scope.cjs +38 -0
  38. package/dist/llm/usage-scope.d.ts +3 -0
  39. package/dist/llm/usage-scope.d.ts.map +1 -0
  40. package/dist/llm/usage-scope.js +14 -0
  41. package/dist/llm/usage-summary.cjs +112 -0
  42. package/dist/llm/usage-summary.d.ts +28 -0
  43. package/dist/llm/usage-summary.d.ts.map +1 -0
  44. package/dist/llm/usage-summary.js +86 -0
  45. package/dist/session/chat-session.cjs +21 -15
  46. package/dist/session/chat-session.d.ts +0 -1
  47. package/dist/session/chat-session.d.ts.map +1 -1
  48. package/dist/session/chat-session.js +21 -15
  49. package/dist/session/session-manager.d.ts.map +1 -1
  50. package/package.json +1 -1
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var usage_summary_exports = {};
20
+ __export(usage_summary_exports, {
21
+ accumulateTokenUsage: () => accumulateTokenUsage,
22
+ createEmptyAssistantUsageSummary: () => createEmptyAssistantUsageSummary,
23
+ createEmptyCumulativeTokenUsage: () => createEmptyCumulativeTokenUsage,
24
+ summarizeAssistantUsage: () => summarizeAssistantUsage
25
+ });
26
+ module.exports = __toCommonJS(usage_summary_exports);
27
+ var import_types = require("../context/types.js");
28
+ function createEmptyCumulativeTokenUsage() {
29
+ return {
30
+ inputTokens: 0,
31
+ outputTokens: 0,
32
+ reasoningTokens: 0,
33
+ cacheReadTokens: 0,
34
+ cacheWriteTokens: 0,
35
+ totalTokens: 0
36
+ };
37
+ }
38
+ function createEmptyAssistantUsageSummary() {
39
+ return {
40
+ tokenUsage: createEmptyCumulativeTokenUsage(),
41
+ estimatedCost: 0,
42
+ hasUnpricedResponses: false
43
+ };
44
+ }
45
+ function hasUnpricedTokenUsage(usage) {
46
+ if (!usage) {
47
+ return false;
48
+ }
49
+ return (usage.inputTokens ?? 0) > 0 || (usage.outputTokens ?? 0) > 0 || (usage.reasoningTokens ?? 0) > 0 || (usage.cacheReadTokens ?? 0) > 0 || (usage.cacheWriteTokens ?? 0) > 0 || (usage.totalTokens ?? 0) > 0;
50
+ }
51
+ function accumulateTokenUsage(target, usage) {
52
+ if (!usage) {
53
+ return;
54
+ }
55
+ target.inputTokens += usage.inputTokens ?? 0;
56
+ target.outputTokens += usage.outputTokens ?? 0;
57
+ target.reasoningTokens += usage.reasoningTokens ?? 0;
58
+ target.cacheReadTokens += usage.cacheReadTokens ?? 0;
59
+ target.cacheWriteTokens += usage.cacheWriteTokens ?? 0;
60
+ target.totalTokens += usage.totalTokens ?? 0;
61
+ }
62
+ function summarizeAssistantUsage(messages, usageScopeId) {
63
+ const summary = createEmptyAssistantUsageSummary();
64
+ const modelStats = /* @__PURE__ */ new Map();
65
+ for (const message of messages) {
66
+ if (!(0, import_types.isAssistantMessage)(message)) {
67
+ continue;
68
+ }
69
+ if (usageScopeId && message.usageScopeId !== usageScopeId) {
70
+ continue;
71
+ }
72
+ accumulateTokenUsage(summary.tokenUsage, message.tokenUsage);
73
+ if (message.estimatedCost !== void 0) {
74
+ summary.estimatedCost += message.estimatedCost;
75
+ }
76
+ if (message.pricingStatus === "unpriced" || hasUnpricedTokenUsage(message.tokenUsage) && message.estimatedCost === void 0 && message.pricingStatus === void 0) {
77
+ summary.hasUnpricedResponses = true;
78
+ }
79
+ if (!message.provider || !message.model) {
80
+ continue;
81
+ }
82
+ const modelKey = `${message.provider}:${message.model}`;
83
+ const existingModelStat = modelStats.get(modelKey);
84
+ const modelStat = existingModelStat ?? (() => {
85
+ const newModelStat = {
86
+ provider: message.provider,
87
+ model: message.model,
88
+ messageCount: 0,
89
+ tokenUsage: createEmptyCumulativeTokenUsage(),
90
+ estimatedCost: 0
91
+ };
92
+ modelStats.set(modelKey, newModelStat);
93
+ return newModelStat;
94
+ })();
95
+ modelStat.messageCount += 1;
96
+ accumulateTokenUsage(modelStat.tokenUsage, message.tokenUsage);
97
+ if (message.estimatedCost !== void 0) {
98
+ modelStat.estimatedCost += message.estimatedCost;
99
+ }
100
+ }
101
+ if (modelStats.size > 0) {
102
+ summary.modelStats = [...modelStats.values()];
103
+ }
104
+ return summary;
105
+ }
106
+ // Annotate the CommonJS export names for ESM import in node:
107
+ 0 && (module.exports = {
108
+ accumulateTokenUsage,
109
+ createEmptyAssistantUsageSummary,
110
+ createEmptyCumulativeTokenUsage,
111
+ summarizeAssistantUsage
112
+ });
@@ -0,0 +1,28 @@
1
+ import { type InternalMessage } from '../context/types.js';
2
+ import type { TokenUsage } from './types.js';
3
+ export interface CumulativeTokenUsage {
4
+ inputTokens: number;
5
+ outputTokens: number;
6
+ reasoningTokens: number;
7
+ cacheReadTokens: number;
8
+ cacheWriteTokens: number;
9
+ totalTokens: number;
10
+ }
11
+ export interface AssistantUsageSummary {
12
+ tokenUsage: CumulativeTokenUsage;
13
+ estimatedCost: number;
14
+ hasUnpricedResponses: boolean;
15
+ modelStats?: AssistantUsageModelStatistics[];
16
+ }
17
+ export interface AssistantUsageModelStatistics {
18
+ provider: string;
19
+ model: string;
20
+ messageCount: number;
21
+ tokenUsage: CumulativeTokenUsage;
22
+ estimatedCost: number;
23
+ }
24
+ export declare function createEmptyCumulativeTokenUsage(): CumulativeTokenUsage;
25
+ export declare function createEmptyAssistantUsageSummary(): AssistantUsageSummary;
26
+ export declare function accumulateTokenUsage(target: CumulativeTokenUsage, usage: TokenUsage | undefined): void;
27
+ export declare function summarizeAssistantUsage(messages: readonly InternalMessage[], usageScopeId?: string): AssistantUsageSummary;
28
+ //# sourceMappingURL=usage-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage-summary.d.ts","sourceRoot":"","sources":["../../src/llm/usage-summary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,oBAAoB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IAClC,UAAU,EAAE,oBAAoB,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,6BAA6B,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,oBAAoB,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,+BAA+B,IAAI,oBAAoB,CAStE;AAED,wBAAgB,gCAAgC,IAAI,qBAAqB,CAMxE;AAiBD,wBAAgB,oBAAoB,CAChC,MAAM,EAAE,oBAAoB,EAC5B,KAAK,EAAE,UAAU,GAAG,SAAS,GAC9B,IAAI,CAYN;AAED,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,SAAS,eAAe,EAAE,EACpC,YAAY,CAAC,EAAE,MAAM,GACtB,qBAAqB,CA4DvB"}
@@ -0,0 +1,86 @@
1
+ import "../chunk-PTJYTZNU.js";
2
+ import { isAssistantMessage } from "../context/types.js";
3
+ function createEmptyCumulativeTokenUsage() {
4
+ return {
5
+ inputTokens: 0,
6
+ outputTokens: 0,
7
+ reasoningTokens: 0,
8
+ cacheReadTokens: 0,
9
+ cacheWriteTokens: 0,
10
+ totalTokens: 0
11
+ };
12
+ }
13
+ function createEmptyAssistantUsageSummary() {
14
+ return {
15
+ tokenUsage: createEmptyCumulativeTokenUsage(),
16
+ estimatedCost: 0,
17
+ hasUnpricedResponses: false
18
+ };
19
+ }
20
+ function hasUnpricedTokenUsage(usage) {
21
+ if (!usage) {
22
+ return false;
23
+ }
24
+ return (usage.inputTokens ?? 0) > 0 || (usage.outputTokens ?? 0) > 0 || (usage.reasoningTokens ?? 0) > 0 || (usage.cacheReadTokens ?? 0) > 0 || (usage.cacheWriteTokens ?? 0) > 0 || (usage.totalTokens ?? 0) > 0;
25
+ }
26
+ function accumulateTokenUsage(target, usage) {
27
+ if (!usage) {
28
+ return;
29
+ }
30
+ target.inputTokens += usage.inputTokens ?? 0;
31
+ target.outputTokens += usage.outputTokens ?? 0;
32
+ target.reasoningTokens += usage.reasoningTokens ?? 0;
33
+ target.cacheReadTokens += usage.cacheReadTokens ?? 0;
34
+ target.cacheWriteTokens += usage.cacheWriteTokens ?? 0;
35
+ target.totalTokens += usage.totalTokens ?? 0;
36
+ }
37
+ function summarizeAssistantUsage(messages, usageScopeId) {
38
+ const summary = createEmptyAssistantUsageSummary();
39
+ const modelStats = /* @__PURE__ */ new Map();
40
+ for (const message of messages) {
41
+ if (!isAssistantMessage(message)) {
42
+ continue;
43
+ }
44
+ if (usageScopeId && message.usageScopeId !== usageScopeId) {
45
+ continue;
46
+ }
47
+ accumulateTokenUsage(summary.tokenUsage, message.tokenUsage);
48
+ if (message.estimatedCost !== void 0) {
49
+ summary.estimatedCost += message.estimatedCost;
50
+ }
51
+ if (message.pricingStatus === "unpriced" || hasUnpricedTokenUsage(message.tokenUsage) && message.estimatedCost === void 0 && message.pricingStatus === void 0) {
52
+ summary.hasUnpricedResponses = true;
53
+ }
54
+ if (!message.provider || !message.model) {
55
+ continue;
56
+ }
57
+ const modelKey = `${message.provider}:${message.model}`;
58
+ const existingModelStat = modelStats.get(modelKey);
59
+ const modelStat = existingModelStat ?? (() => {
60
+ const newModelStat = {
61
+ provider: message.provider,
62
+ model: message.model,
63
+ messageCount: 0,
64
+ tokenUsage: createEmptyCumulativeTokenUsage(),
65
+ estimatedCost: 0
66
+ };
67
+ modelStats.set(modelKey, newModelStat);
68
+ return newModelStat;
69
+ })();
70
+ modelStat.messageCount += 1;
71
+ accumulateTokenUsage(modelStat.tokenUsage, message.tokenUsage);
72
+ if (message.estimatedCost !== void 0) {
73
+ modelStat.estimatedCost += message.estimatedCost;
74
+ }
75
+ }
76
+ if (modelStats.size > 0) {
77
+ summary.modelStats = [...modelStats.values()];
78
+ }
79
+ return summary;
80
+ }
81
+ export {
82
+ accumulateTokenUsage,
83
+ createEmptyAssistantUsageSummary,
84
+ createEmptyCumulativeTokenUsage,
85
+ summarizeAssistantUsage
86
+ };
@@ -21,13 +21,14 @@ __export(chat_session_exports, {
21
21
  ChatSession: () => ChatSession
22
22
  });
23
23
  module.exports = __toCommonJS(chat_session_exports);
24
+ var import_crypto = require("crypto");
24
25
  var import_factory = require("./history/factory.js");
25
26
  var import_factory2 = require("../llm/services/factory.js");
26
27
  var import_events = require("../events/index.js");
27
28
  var import_types = require("../logger/v2/types.js");
28
29
  var import_errors = require("../errors/index.js");
29
30
  var import_error_codes = require("../hooks/error-codes.js");
30
- var import_registry = require("../llm/registry/index.js");
31
+ var import_usage_metadata = require("../llm/usage-metadata.js");
31
32
  var import_codex_base_url = require("../llm/providers/codex-base-url.js");
32
33
  class ChatSession {
33
34
  /**
@@ -88,12 +89,6 @@ class ChatSession {
88
89
  * Calling cancel() aborts the in-flight LLM request and tool execution checks.
89
90
  */
90
91
  currentRunController = null;
91
- isMeaningfulTokenUsage(tokenUsage) {
92
- if (!tokenUsage) {
93
- return false;
94
- }
95
- return (tokenUsage.inputTokens ?? 0) > 0 || (tokenUsage.outputTokens ?? 0) > 0 || (tokenUsage.reasoningTokens ?? 0) > 0 || (tokenUsage.cacheReadTokens ?? 0) > 0 || (tokenUsage.cacheWriteTokens ?? 0) > 0 || (tokenUsage.totalTokens ?? 0) > 0;
96
- }
97
92
  logger;
98
93
  /**
99
94
  * Initialize the session services asynchronously.
@@ -133,7 +128,7 @@ class ChatSession {
133
128
  if (payload.tokenUsage) {
134
129
  const llmConfig = this.services.stateManager.getLLMConfig(this.id);
135
130
  const isChatGPTLogin = llmConfig.provider === "openai-compatible" && (0, import_codex_base_url.parseCodexBaseURL)(llmConfig.baseURL)?.authMode === "chatgpt";
136
- const hasMeaningfulUsage = this.isMeaningfulTokenUsage(payload.tokenUsage);
131
+ const hasMeaningfulUsage = (0, import_usage_metadata.hasMeaningfulTokenUsage)(payload.tokenUsage);
137
132
  if (isChatGPTLogin && !hasMeaningfulUsage) {
138
133
  this.services.sessionManager.markUntrackedChatGPTLoginUsage(this.id).catch((err) => {
139
134
  this.logger.warn(
@@ -146,12 +141,17 @@ class ChatSession {
146
141
  provider: payload.provider ?? llmConfig.provider,
147
142
  model: payload.model ?? llmConfig.model
148
143
  };
149
- let cost;
150
- const pricing = (0, import_registry.getModelPricing)(modelInfo.provider, modelInfo.model);
151
- if (pricing) {
152
- cost = (0, import_registry.calculateCost)(payload.tokenUsage, pricing);
153
- }
154
- this.services.sessionManager.accumulateTokenUsage(this.id, payload.tokenUsage, cost, modelInfo).catch((err) => {
144
+ const pricingMetadata = (0, import_usage_metadata.getUsagePricingMetadata)({
145
+ provider: modelInfo.provider,
146
+ model: modelInfo.model,
147
+ tokenUsage: payload.tokenUsage
148
+ });
149
+ this.services.sessionManager.accumulateTokenUsage(
150
+ this.id,
151
+ payload.tokenUsage,
152
+ payload.estimatedCost ?? pricingMetadata.estimatedCost,
153
+ modelInfo
154
+ ).catch((err) => {
155
155
  this.logger.warn(
156
156
  `Failed to accumulate token usage: ${err instanceof Error ? err.message : String(err)}`
157
157
  );
@@ -202,13 +202,18 @@ class ChatSession {
202
202
  * @private
203
203
  */
204
204
  async saveBlockedInteraction(userInput, errorMessage, _imageData, _fileData) {
205
+ const timestamp = Date.now();
205
206
  const userMessage = {
207
+ id: (0, import_crypto.randomUUID)(),
206
208
  role: "user",
209
+ timestamp,
207
210
  content: [{ type: "text", text: "[Blocked by content policy: input redacted]" }]
208
211
  };
209
212
  const errorContent = `Error: ${errorMessage}`;
210
213
  const assistantMessage = {
214
+ id: (0, import_crypto.randomUUID)(),
211
215
  role: "assistant",
216
+ timestamp: timestamp + 1,
212
217
  content: [{ type: "text", text: errorContent }]
213
218
  };
214
219
  await this.historyProvider.saveMessage(userMessage);
@@ -217,7 +222,8 @@ class ChatSession {
217
222
  this.eventBus.emit("llm:response", {
218
223
  content: errorContent,
219
224
  provider: llmConfig.provider,
220
- model: llmConfig.model
225
+ model: llmConfig.model,
226
+ ...assistantMessage.id && { messageId: assistantMessage.id }
221
227
  });
222
228
  }
223
229
  /**
@@ -98,7 +98,6 @@ export declare class ChatSession {
98
98
  * Calling cancel() aborts the in-flight LLM request and tool execution checks.
99
99
  */
100
100
  private currentRunController;
101
- private isMeaningfulTokenUsage;
102
101
  readonly logger: Logger;
103
102
  /**
104
103
  * Creates a new ChatSession instance.
@@ -1 +1 @@
1
- {"version":3,"file":"chat-session.d.ts","sourceRoot":"","sources":["../../src/session/chat-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-session.d.ts","sourceRoot":"","sources":["../../src/session/chat-session.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import "../chunk-PTJYTZNU.js";
2
+ import { randomUUID } from "crypto";
2
3
  import { createDatabaseHistoryProvider } from "./history/factory.js";
3
4
  import { createLLMService } from "../llm/services/factory.js";
4
5
  import {
@@ -8,7 +9,7 @@ import {
8
9
  import { DextoLogComponent } from "../logger/v2/types.js";
9
10
  import { DextoRuntimeError, ErrorScope, ErrorType } from "../errors/index.js";
10
11
  import { HookErrorCode } from "../hooks/error-codes.js";
11
- import { getModelPricing, calculateCost } from "../llm/registry/index.js";
12
+ import { getUsagePricingMetadata, hasMeaningfulTokenUsage } from "../llm/usage-metadata.js";
12
13
  import { parseCodexBaseURL } from "../llm/providers/codex-base-url.js";
13
14
  class ChatSession {
14
15
  /**
@@ -69,12 +70,6 @@ class ChatSession {
69
70
  * Calling cancel() aborts the in-flight LLM request and tool execution checks.
70
71
  */
71
72
  currentRunController = null;
72
- isMeaningfulTokenUsage(tokenUsage) {
73
- if (!tokenUsage) {
74
- return false;
75
- }
76
- return (tokenUsage.inputTokens ?? 0) > 0 || (tokenUsage.outputTokens ?? 0) > 0 || (tokenUsage.reasoningTokens ?? 0) > 0 || (tokenUsage.cacheReadTokens ?? 0) > 0 || (tokenUsage.cacheWriteTokens ?? 0) > 0 || (tokenUsage.totalTokens ?? 0) > 0;
77
- }
78
73
  logger;
79
74
  /**
80
75
  * Initialize the session services asynchronously.
@@ -114,7 +109,7 @@ class ChatSession {
114
109
  if (payload.tokenUsage) {
115
110
  const llmConfig = this.services.stateManager.getLLMConfig(this.id);
116
111
  const isChatGPTLogin = llmConfig.provider === "openai-compatible" && parseCodexBaseURL(llmConfig.baseURL)?.authMode === "chatgpt";
117
- const hasMeaningfulUsage = this.isMeaningfulTokenUsage(payload.tokenUsage);
112
+ const hasMeaningfulUsage = hasMeaningfulTokenUsage(payload.tokenUsage);
118
113
  if (isChatGPTLogin && !hasMeaningfulUsage) {
119
114
  this.services.sessionManager.markUntrackedChatGPTLoginUsage(this.id).catch((err) => {
120
115
  this.logger.warn(
@@ -127,12 +122,17 @@ class ChatSession {
127
122
  provider: payload.provider ?? llmConfig.provider,
128
123
  model: payload.model ?? llmConfig.model
129
124
  };
130
- let cost;
131
- const pricing = getModelPricing(modelInfo.provider, modelInfo.model);
132
- if (pricing) {
133
- cost = calculateCost(payload.tokenUsage, pricing);
134
- }
135
- this.services.sessionManager.accumulateTokenUsage(this.id, payload.tokenUsage, cost, modelInfo).catch((err) => {
125
+ const pricingMetadata = getUsagePricingMetadata({
126
+ provider: modelInfo.provider,
127
+ model: modelInfo.model,
128
+ tokenUsage: payload.tokenUsage
129
+ });
130
+ this.services.sessionManager.accumulateTokenUsage(
131
+ this.id,
132
+ payload.tokenUsage,
133
+ payload.estimatedCost ?? pricingMetadata.estimatedCost,
134
+ modelInfo
135
+ ).catch((err) => {
136
136
  this.logger.warn(
137
137
  `Failed to accumulate token usage: ${err instanceof Error ? err.message : String(err)}`
138
138
  );
@@ -183,13 +183,18 @@ class ChatSession {
183
183
  * @private
184
184
  */
185
185
  async saveBlockedInteraction(userInput, errorMessage, _imageData, _fileData) {
186
+ const timestamp = Date.now();
186
187
  const userMessage = {
188
+ id: randomUUID(),
187
189
  role: "user",
190
+ timestamp,
188
191
  content: [{ type: "text", text: "[Blocked by content policy: input redacted]" }]
189
192
  };
190
193
  const errorContent = `Error: ${errorMessage}`;
191
194
  const assistantMessage = {
195
+ id: randomUUID(),
192
196
  role: "assistant",
197
+ timestamp: timestamp + 1,
193
198
  content: [{ type: "text", text: errorContent }]
194
199
  };
195
200
  await this.historyProvider.saveMessage(userMessage);
@@ -198,7 +203,8 @@ class ChatSession {
198
203
  this.eventBus.emit("llm:response", {
199
204
  content: errorContent,
200
205
  provider: llmConfig.provider,
201
- model: llmConfig.model
206
+ model: llmConfig.model,
207
+ ...assistantMessage.id && { messageId: assistantMessage.id }
202
208
  });
203
209
  }
204
210
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dexto/core",
3
- "version": "1.6.16",
3
+ "version": "1.6.17",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",