@llumiverse/core 1.0.0-dev.20260224.234313Z → 1.0.0-dev.20260331.080752Z
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.
- package/lib/cjs/CompletionStream.js +31 -9
- package/lib/cjs/CompletionStream.js.map +1 -1
- package/lib/cjs/Driver.js +105 -6
- package/lib/cjs/Driver.js.map +1 -1
- package/lib/cjs/conversation-utils.js +59 -0
- package/lib/cjs/conversation-utils.js.map +1 -1
- package/lib/cjs/index.js +2 -2
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/validation.js +1 -1
- package/lib/cjs/validation.js.map +1 -1
- package/lib/esm/CompletionStream.js +31 -9
- package/lib/esm/CompletionStream.js.map +1 -1
- package/lib/esm/Driver.js +105 -6
- package/lib/esm/Driver.js.map +1 -1
- package/lib/esm/conversation-utils.js +58 -0
- package/lib/esm/conversation-utils.js.map +1 -1
- package/lib/esm/index.js +2 -2
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/validation.js +1 -1
- package/lib/esm/validation.js.map +1 -1
- package/lib/types/CompletionStream.d.ts.map +1 -1
- package/lib/types/Driver.d.ts +27 -2
- package/lib/types/Driver.d.ts.map +1 -1
- package/lib/types/conversation-utils.d.ts +15 -0
- package/lib/types/conversation-utils.d.ts.map +1 -1
- package/lib/types/index.d.ts +2 -2
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/validation.d.ts +1 -1
- package/package.json +3 -3
- package/src/CompletionStream.ts +39 -10
- package/src/Driver.error.test.ts +261 -0
- package/src/Driver.ts +121 -10
- package/src/conversation-utils.ts +66 -0
- package/src/index.ts +2 -2
- package/src/validation.ts +2 -2
package/lib/esm/Driver.js
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
* Base abstract class is then implemented by each environment
|
|
4
4
|
* (eg: OpenAI, HuggingFace, etc.)
|
|
5
5
|
*/
|
|
6
|
+
import { LlumiverseError } from "@llumiverse/common";
|
|
6
7
|
import { DefaultCompletionStream, FallbackCompletionStream } from "./CompletionStream.js";
|
|
7
8
|
import { formatTextPrompt } from "./formatters/index.js";
|
|
8
|
-
import { Modalities } from "@llumiverse/common";
|
|
9
9
|
import { validateResult } from "./validation.js";
|
|
10
10
|
// Helper to create logger methods that support both message-only and object-first signatures
|
|
11
11
|
function createConsoleLoggerMethod(consoleMethod) {
|
|
@@ -93,8 +93,15 @@ export class AbstractDriver {
|
|
|
93
93
|
async execute(segments, options) {
|
|
94
94
|
const prompt = await this.createPrompt(segments, options);
|
|
95
95
|
return this._execute(prompt, options).catch((error) => {
|
|
96
|
-
|
|
97
|
-
|
|
96
|
+
// Don't wrap if already a LlumiverseError
|
|
97
|
+
if (LlumiverseError.isLlumiverseError(error)) {
|
|
98
|
+
throw error;
|
|
99
|
+
}
|
|
100
|
+
throw this.formatLlumiverseError(error, {
|
|
101
|
+
provider: this.provider,
|
|
102
|
+
model: options.model,
|
|
103
|
+
operation: 'execute',
|
|
104
|
+
});
|
|
98
105
|
});
|
|
99
106
|
}
|
|
100
107
|
async _execute(prompt, options) {
|
|
@@ -114,8 +121,17 @@ export class AbstractDriver {
|
|
|
114
121
|
return { ...result, prompt, execution_time };
|
|
115
122
|
}
|
|
116
123
|
catch (error) {
|
|
117
|
-
|
|
118
|
-
|
|
124
|
+
// Don't wrap if already a LlumiverseError
|
|
125
|
+
if (LlumiverseError.isLlumiverseError(error)) {
|
|
126
|
+
throw error;
|
|
127
|
+
}
|
|
128
|
+
// Log the original error for debugging
|
|
129
|
+
this.logger.error({ err: error, data: { provider: this.provider, model: options.model, operation: 'execute', prompt } }, `Error during execution in provider ${this.provider}:`);
|
|
130
|
+
throw this.formatLlumiverseError(error, {
|
|
131
|
+
provider: this.provider,
|
|
132
|
+
model: options.model,
|
|
133
|
+
operation: 'execute',
|
|
134
|
+
});
|
|
119
135
|
}
|
|
120
136
|
}
|
|
121
137
|
isImageModel(_model) {
|
|
@@ -123,9 +139,10 @@ export class AbstractDriver {
|
|
|
123
139
|
}
|
|
124
140
|
// by default no stream is supported. we block and we return all at once
|
|
125
141
|
async stream(segments, options) {
|
|
142
|
+
this.logger.info(options, `Executing prompt with provider ${this.provider} with options: ${JSON.stringify(options)}`);
|
|
126
143
|
const prompt = await this.createPrompt(segments, options);
|
|
127
144
|
const canStream = await this.canStream(options);
|
|
128
|
-
if (
|
|
145
|
+
if (canStream) {
|
|
129
146
|
return new DefaultCompletionStream(this, prompt, options);
|
|
130
147
|
}
|
|
131
148
|
else if (this.isImageModel(options.model)) {
|
|
@@ -181,6 +198,88 @@ export class AbstractDriver {
|
|
|
181
198
|
// Default implementation returns undefined - drivers can override
|
|
182
199
|
return undefined;
|
|
183
200
|
}
|
|
201
|
+
/**
|
|
202
|
+
* Format an error into LlumiverseError. Override in driver implementations
|
|
203
|
+
* to provide provider-specific error parsing.
|
|
204
|
+
*
|
|
205
|
+
* The default implementation uses common patterns:
|
|
206
|
+
* - Status 429, 408: retryable (rate limit, timeout)
|
|
207
|
+
* - Status 529: retryable (overloaded)
|
|
208
|
+
* - Status 5xx: retryable (server errors)
|
|
209
|
+
* - Status 4xx (except above): not retryable (client errors)
|
|
210
|
+
* - Error messages containing "rate limit", "timeout", etc.: retryable
|
|
211
|
+
*
|
|
212
|
+
* @param error - The error to format
|
|
213
|
+
* @param context - Context about where the error occurred
|
|
214
|
+
* @returns A standardized LlumiverseError
|
|
215
|
+
*/
|
|
216
|
+
formatLlumiverseError(error, context) {
|
|
217
|
+
// Extract status code from common locations (only if numeric)
|
|
218
|
+
let code;
|
|
219
|
+
const rawCode = error?.status
|
|
220
|
+
|| error?.statusCode
|
|
221
|
+
|| error?.code;
|
|
222
|
+
if (typeof rawCode === 'number') {
|
|
223
|
+
code = rawCode;
|
|
224
|
+
}
|
|
225
|
+
// Extract error name if available
|
|
226
|
+
const errorName = error?.name;
|
|
227
|
+
// Extract message
|
|
228
|
+
const message = error instanceof Error
|
|
229
|
+
? error.message
|
|
230
|
+
: String(error);
|
|
231
|
+
// Determine retryability
|
|
232
|
+
const retryable = this.isRetryableError(code, message);
|
|
233
|
+
return new LlumiverseError(`[${this.provider}] ${message}`, retryable, context, error, code, errorName);
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Determine if an error is retryable based on status code and message.
|
|
237
|
+
* Can be overridden by drivers for provider-specific logic.
|
|
238
|
+
*
|
|
239
|
+
* @param statusCode - The HTTP status code (if available)
|
|
240
|
+
* @param message - The error message
|
|
241
|
+
* @returns True if retryable, false if not retryable, undefined if unknown
|
|
242
|
+
*/
|
|
243
|
+
isRetryableError(statusCode, message) {
|
|
244
|
+
// Numeric status codes
|
|
245
|
+
if (statusCode !== undefined) {
|
|
246
|
+
if (statusCode === 429 || statusCode === 408)
|
|
247
|
+
return true; // Rate limit, timeout
|
|
248
|
+
if (statusCode === 529)
|
|
249
|
+
return true; // Overloaded
|
|
250
|
+
if (statusCode >= 500 && statusCode < 600)
|
|
251
|
+
return true; // Server errors
|
|
252
|
+
return false; // 4xx client errors not retryable
|
|
253
|
+
}
|
|
254
|
+
// Message-based detection for non-HTTP errors
|
|
255
|
+
const lowerMessage = message.toLowerCase();
|
|
256
|
+
// Rate limit variations
|
|
257
|
+
if (lowerMessage.includes('rate') && lowerMessage.includes('limit'))
|
|
258
|
+
return true;
|
|
259
|
+
// Timeout variations (timeout, timed out, time out)
|
|
260
|
+
if (lowerMessage.includes('timeout'))
|
|
261
|
+
return true;
|
|
262
|
+
if (lowerMessage.includes('timed') && lowerMessage.includes('out'))
|
|
263
|
+
return true;
|
|
264
|
+
if (lowerMessage.includes('time') && lowerMessage.includes('out'))
|
|
265
|
+
return true;
|
|
266
|
+
// Resource exhausted variations
|
|
267
|
+
if (lowerMessage.includes('resource') && lowerMessage.includes('exhaust'))
|
|
268
|
+
return true;
|
|
269
|
+
// Other retryable patterns
|
|
270
|
+
if (lowerMessage.includes('retry'))
|
|
271
|
+
return true;
|
|
272
|
+
if (lowerMessage.includes('overload'))
|
|
273
|
+
return true;
|
|
274
|
+
if (lowerMessage.includes('throttl'))
|
|
275
|
+
return true;
|
|
276
|
+
if (lowerMessage.includes('429'))
|
|
277
|
+
return true;
|
|
278
|
+
if (lowerMessage.includes('529'))
|
|
279
|
+
return true;
|
|
280
|
+
// Unknown errors - let consumer decide retry strategy
|
|
281
|
+
return undefined;
|
|
282
|
+
}
|
|
184
283
|
async requestImageGeneration(_prompt, _options) {
|
|
185
284
|
throw new Error("Image generation not implemented.");
|
|
186
285
|
//Cannot be made abstract, as abstract methods are required in the derived class
|
package/lib/esm/Driver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Driver.js","sourceRoot":"","sources":["../../src/Driver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,
|
|
1
|
+
{"version":3,"file":"Driver.js","sourceRoot":"","sources":["../../src/Driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -481,4 +481,62 @@ function truncateLargeTextInternal(obj, maxChars) {
|
|
|
481
481
|
}
|
|
482
482
|
return obj;
|
|
483
483
|
}
|
|
484
|
+
const HEARTBEAT_OPEN_TAG = '<heartbeat>';
|
|
485
|
+
const HEARTBEAT_CLOSE_TAG = '</heartbeat>';
|
|
486
|
+
const HEARTBEAT_PLACEHOLDER = '[Heartbeat removed from conversation history]';
|
|
487
|
+
/**
|
|
488
|
+
* Strip heartbeat status messages from conversation to reduce context bloat.
|
|
489
|
+
*
|
|
490
|
+
* Heartbeat messages are periodic workstream status updates injected by the
|
|
491
|
+
* workstream management system. They are wrapped with `<heartbeat>...</heartbeat>`
|
|
492
|
+
* tags at the point of injection.
|
|
493
|
+
*
|
|
494
|
+
* This function recursively walks the conversation and replaces any string
|
|
495
|
+
* wrapped in heartbeat tags with a short placeholder.
|
|
496
|
+
*
|
|
497
|
+
* @param obj The conversation object to strip heartbeats from
|
|
498
|
+
* @param options Optional settings for turn-based stripping (default keepForTurns: 1)
|
|
499
|
+
* @returns A new object with old heartbeat messages replaced
|
|
500
|
+
*/
|
|
501
|
+
export function stripHeartbeatsFromConversation(obj, options) {
|
|
502
|
+
const { keepForTurns = 1 } = options ?? {};
|
|
503
|
+
const currentTurn = options?.currentTurn ?? getConversationMeta(obj).turnNumber;
|
|
504
|
+
// If keepForTurns is Infinity, never strip
|
|
505
|
+
if (keepForTurns === Infinity) {
|
|
506
|
+
return obj;
|
|
507
|
+
}
|
|
508
|
+
// Keep heartbeats if we haven't exceeded the turn threshold
|
|
509
|
+
if (keepForTurns > 0 && currentTurn < keepForTurns) {
|
|
510
|
+
return obj;
|
|
511
|
+
}
|
|
512
|
+
return stripHeartbeatsInternal(obj);
|
|
513
|
+
}
|
|
514
|
+
function stripHeartbeatsInternal(obj) {
|
|
515
|
+
if (obj === null || obj === undefined)
|
|
516
|
+
return obj;
|
|
517
|
+
// Replace heartbeat-tagged strings with placeholder
|
|
518
|
+
if (typeof obj === 'string') {
|
|
519
|
+
if (obj.startsWith(HEARTBEAT_OPEN_TAG) && obj.endsWith(HEARTBEAT_CLOSE_TAG)) {
|
|
520
|
+
return HEARTBEAT_PLACEHOLDER;
|
|
521
|
+
}
|
|
522
|
+
return obj;
|
|
523
|
+
}
|
|
524
|
+
if (Array.isArray(obj)) {
|
|
525
|
+
return obj.map(item => stripHeartbeatsInternal(item));
|
|
526
|
+
}
|
|
527
|
+
if (typeof obj === 'object') {
|
|
528
|
+
const result = {};
|
|
529
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
530
|
+
// Preserve metadata
|
|
531
|
+
if (key === META_KEY) {
|
|
532
|
+
result[key] = value;
|
|
533
|
+
}
|
|
534
|
+
else {
|
|
535
|
+
result[key] = stripHeartbeatsInternal(value);
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
return result;
|
|
539
|
+
}
|
|
540
|
+
return obj;
|
|
541
|
+
}
|
|
484
542
|
//# sourceMappingURL=conversation-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-utils.js","sourceRoot":"","sources":["../../src/conversation-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"conversation-utils.js","sourceRoot":"","sources":["../../src/conversation-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,iBAAiB,GAAG,2CAA2C,CAAC;AACtE,MAAM,oBAAoB,GAAG,8CAA8C,CAAC;AAC5E,MAAM,iBAAiB,GAAG,2CAA2C,CAAC;AACtE,MAAM,qBAAqB,GAAG,gDAAgD,CAAC;AAE/E,mEAAmE;AACnE,MAAM,QAAQ,GAAG,kBAAkB,CAAC;AAmCpC;;GAEG;AACH,SAAS,mBAAmB,CAAC,GAAY;IACrC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,GAAG,GAAG,CAAC,CAAC,KAAgC,CAAC;IAC/C,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,GAAG,GAAG,GAAG,CAAC,MAAiC,CAAC;IAClD,OAAO,GAAG,CAAC,KAAK,YAAY,UAAU,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAS,6BAA6B,CAAC,GAAY;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,GAAG,GAAG,CAAC,CAAC,KAAgC,CAAC;IAC/C,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,GAAG,GAAG,GAAG,CAAC,MAAiC,CAAC;IAClD,8DAA8D;IAC9D,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAgC,CAAC;IACnD,OAAO,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,GAAY;IACxC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,GAAG,GAAG,CAAC,CAAC,QAAmC,CAAC;IAClD,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,GAAG,GAAG,GAAG,CAAC,MAAiC,CAAC;IAClD,OAAO,GAAG,CAAC,KAAK,YAAY,UAAU,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAS,gCAAgC,CAAC,GAAY;IAClD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,GAAG,GAAG,CAAC,CAAC,QAAmC,CAAC;IAClD,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,GAAG,GAAG,GAAG,CAAC,MAAiC,CAAC;IAClD,8DAA8D;IAC9D,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAgC,CAAC;IACnD,OAAO,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,GAAY;IACrC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,GAAG,GAAG,CAAC,CAAC,KAAgC,CAAC;IAC/C,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,GAAG,GAAG,GAAG,CAAC,MAAiC,CAAC;IAClD,OAAO,GAAG,CAAC,KAAK,YAAY,UAAU,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAS,6BAA6B,CAAC,GAAY;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,GAAG,GAAG,CAAC,CAAC,KAAgC,CAAC;IAC/C,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,GAAG,GAAG,GAAG,CAAC,MAAiC,CAAC;IAClD,8DAA8D;IAC9D,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAgC,CAAC;IACnD,OAAO,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAAC,GAAY;IAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAClE,MAAM,MAAM,GAAG,CAAC,CAAC,SAAoC,CAAC;IACtD,OAAO,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;QACjC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC;QACpC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,SAAS,2BAA2B,CAAC,GAAY;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5D,MAAM,GAAG,GAAG,CAAC,CAAC,MAAiC,CAAC;IAChD,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,SAAS,8BAA8B,CAAC,GAAY;IAChD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IACxC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5D,MAAM,GAAG,GAAG,CAAC,CAAC,MAAiC,CAAC;IAChD,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,GAAY;IACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACpE,MAAM,UAAU,GAAG,CAAC,CAAC,UAAqC,CAAC;IAC3D,OAAO,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ,IAAK,UAAU,CAAC,IAAe,CAAC,MAAM,GAAG,IAAI,CAAC;AAC5F,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,KAAiB;IACzC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,MAAc;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAqB;IACrD,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC5D,MAAM,IAAI,GAAI,YAAwC,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO,IAAwB,CAAC;QACpC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;AAC7B,CAAC;AAED,6FAA6F;AAC7F,MAAM,iBAAiB,GAAG,oBAAoB,CAAC;AAE/C;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAqB,EAAE,IAAsB;IAC7E,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,qFAAqF;QACrF,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IACnE,CAAC;IACD,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC5D,OAAO,EAAE,GAAG,YAAsB,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAC3D,CAAC;IACD,OAAO,YAAY,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAc,YAAqB;IACtE,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC5D,MAAM,CAAC,GAAG,YAAuC,CAAC;QAClD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,CAAC,iBAAiB,CAAQ,CAAC;QACvC,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,YAAqB;IAC3D,MAAM,IAAI,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAC/C,OAAO,mBAAmB,CAAC,YAAY,EAAE,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,2BAA2B,CAAC,GAAY,EAAE,OAAsB;IAC5E,MAAM,EAAE,YAAY,GAAG,QAAQ,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAClD,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;IAEhF,oEAAoE;IACpE,uDAAuD;IACvD,IAAI,YAAY,GAAG,CAAC,IAAI,WAAW,GAAG,YAAY,EAAE,CAAC;QACjD,OAAO,yBAAyB,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED,qCAAqC;IACrC,OAAO,mCAAmC,CAAC,GAAG,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAAC,GAAY;IAC3C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAElD,IAAI,GAAG,YAAY,UAAU,EAAE,CAAC;QAC5B,OAAO,EAAE,OAAO,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;IAChD,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,CAAC,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAAC,GAAY;IACrD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAElD,kCAAkC;IAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,GAA8B,CAAC;QACzC,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/D,OAAO,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,CAAC,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED,SAAS,mCAAmC,CAAC,GAAY;IACrD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAElD,6BAA6B;IAC7B,IAAI,GAAG,YAAY,UAAU,EAAE,CAAC;QAC5B,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAED,+BAA+B;IAC/B,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,GAA8B,CAAC;QACzC,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/D,OAAO,iBAAiB,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAClB,sEAAsE;YACtE,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,6BAA6B,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;YACvC,CAAC;YACD,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,gCAAgC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;YAC1C,CAAC;YACD,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,6BAA6B,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;YACvC,CAAC;YACD,OAAO,mCAAmC,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,oBAAoB;YACpB,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACnB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,GAAG,CAAC,GAAG,mCAAmC,CAAC,KAAK,CAAC,CAAC;YAC7D,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iCAAiC,CAAC,GAAY,EAAE,OAAsB;IAClF,MAAM,EAAE,YAAY,GAAG,QAAQ,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAClD,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;IAEhF,gFAAgF;IAChF,2DAA2D;IAC3D,IAAI,YAAY,GAAG,CAAC,IAAI,WAAW,GAAG,YAAY,EAAE,CAAC;QACjD,OAAO,GAAG,CAAC;IACf,CAAC;IAED,OAAO,yCAAyC,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,yCAAyC,CAAC,GAAY;IAC3D,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAElD,yCAAyC;IACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACvF,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAClB,0DAA0D;YAC1D,IAAI,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;YACrD,CAAC;YACD,2DAA2D;YAC3D,IAAI,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;YACvC,CAAC;YACD,yDAAyD;YACzD,IAAI,2BAA2B,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;YACrD,CAAC;YACD,4DAA4D;YAC5D,IAAI,8BAA8B,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;YACxD,CAAC;YACD,OAAO,yCAAyC,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,oBAAoB;YACpB,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACnB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,GAAG,CAAC,GAAG,yCAAyC,CAAC,KAAK,CAAC,CAAC;YACnE,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED,2DAA2D;AAC3D,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,+BAA+B,CAAC,GAAY,EAAE,OAAsB;IAChF,MAAM,SAAS,GAAG,OAAO,EAAE,aAAa,CAAC;IAEzC,kDAAkD;IAClD,IAAI,CAAC,SAAS,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,GAAG,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,GAAG,eAAe,CAAC;IAC7C,OAAO,yBAAyB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAY,EAAE,QAAgB;IAC7D,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAElD,yBAAyB;IACzB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,GAAG,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;YACxB,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,qBAAqB,CAAC;QAC9D,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,uCAAuC;YACvC,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACnB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,GAAG,CAAC,GAAG,yBAAyB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC7D,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAM,kBAAkB,GAAG,aAAa,CAAC;AACzC,MAAM,mBAAmB,GAAG,cAAc,CAAC;AAC3C,MAAM,qBAAqB,GAAG,+CAA+C,CAAC;AAE9E;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,+BAA+B,CAAC,GAAY,EAAE,OAAsB;IAChF,MAAM,EAAE,YAAY,GAAG,CAAC,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAC3C,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;IAEhF,2CAA2C;IAC3C,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,GAAG,CAAC;IACf,CAAC;IAED,4DAA4D;IAC5D,IAAI,YAAY,GAAG,CAAC,IAAI,WAAW,GAAG,YAAY,EAAE,CAAC;QACjD,OAAO,GAAG,CAAC;IACf,CAAC;IAED,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAY;IACzC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAElD,oDAAoD;IACpD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC1E,OAAO,qBAAqB,CAAC;QACjC,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,oBAAoB;YACpB,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACnB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,GAAG,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;YACjD,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC"}
|
package/lib/esm/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
export * from "@llumiverse/common";
|
|
2
|
+
export * from "./conversation-utils.js";
|
|
1
3
|
export * from "./Driver.js";
|
|
2
4
|
export * from "./json.js";
|
|
3
5
|
export * from "./stream.js";
|
|
4
|
-
export * from "./conversation-utils.js";
|
|
5
|
-
export * from "@llumiverse/common";
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
package/lib/esm/validation.js
CHANGED
|
@@ -60,7 +60,7 @@ export function validateResult(data, schema) {
|
|
|
60
60
|
const validate = ajv.compile(schema);
|
|
61
61
|
const valid = validate(json);
|
|
62
62
|
if (!valid && validate.errors) {
|
|
63
|
-
|
|
63
|
+
const errors = [];
|
|
64
64
|
for (const e of validate.errors) {
|
|
65
65
|
const path = e.instancePath.split("/").slice(1);
|
|
66
66
|
const value = resolveField(json, path);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC;IAChB,WAAW,EAAE,OAAO;IACpB,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,KAAK;IACb,WAAW,EAAE,IAAI;IACjB,gBAAgB,EAAE,SAAS;CAC9B,CAAC,CAAC;AAEH,uDAAuD;AACvD,6CAA6C;AAC7C,UAAU,CAAC,GAAG,CAAC,CAAA;AAGf,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAE3B;IADX,YACW,IAAuC,EAC9C,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAA;QAHP,SAAI,GAAJ,IAAI,CAAmC;QAI9C,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;IACjC,CAAC;CACJ;AAED,SAAS,qBAAqB,CAAC,IAAwB;IACnD,IAAI,SAAsC,CAAC;IAC3C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACD,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBAClB,SAAS,GAAG,IAAI,eAAe,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACjE,CAAC;QACL,CAAC;IACL,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,SAAS,GAAG,IAAI,eAAe,CAAC,YAAY,EAAE,wDAAwD,CAAC,CAAC;IAC5G,CAAC;IACD,MAAM,SAAS,CAAC;AACpB,CAAC;AAGD,MAAM,UAAU,cAAc,CAAC,IAAwB,EAAE,MAAc;IACnE,IAAI,IAAI,CAAC;IACT,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QACxD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAChC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC;gBACD,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBAClB,MAAM,IAAI,eAAe,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;YAC1D,CAAC;QACL,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACxD,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE7B,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC5B,
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompletionStream.d.ts","sourceRoot":"","sources":["../../src/CompletionStream.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"CompletionStream.d.ts","sourceRoot":"","sources":["../../src/CompletionStream.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EAIpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,qBAAa,uBAAuB,CAAC,OAAO,GAAG,GAAG,CAAE,YAAW,gBAAgB,CAAC,OAAO,CAAC;IAKjE,MAAM,EAAE,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC;IACtD,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,gBAAgB;IALpC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;gBAEhC,MAAM,EAAE,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,EACtD,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,gBAAgB;IAI7B,CAAC,MAAM,CAAC,aAAa,CAAC;CA6NhC;AAED,qBAAa,wBAAwB,CAAC,OAAO,GAAG,GAAG,CAAE,YAAW,gBAAgB,CAAC,OAAO,CAAC;IAIlE,MAAM,EAAE,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC;IACtD,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,gBAAgB;IAJpC,UAAU,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;gBAEhC,MAAM,EAAE,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,EACtD,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,gBAAgB;IAG7B,CAAC,MAAM,CAAC,aAAa,CAAC;CAqChC"}
|
package/lib/types/Driver.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Base abstract class is then implemented by each environment
|
|
4
4
|
* (eg: OpenAI, HuggingFace, etc.)
|
|
5
5
|
*/
|
|
6
|
-
import { AIModel, Completion, CompletionChunkObject, CompletionStream, DataSource, DriverOptions, EmbeddingsOptions, EmbeddingsResult, ExecutionOptions, ExecutionResponse, Logger, ModelSearchPayload, PromptOptions, PromptSegment, TrainingJob, TrainingOptions, TrainingPromptOptions } from "@llumiverse/common";
|
|
6
|
+
import { AIModel, Completion, CompletionChunkObject, CompletionStream, DataSource, DriverOptions, EmbeddingsOptions, EmbeddingsResult, ExecutionOptions, ExecutionResponse, LlumiverseErrorContext, Logger, ModelSearchPayload, PromptOptions, PromptSegment, Providers, TrainingJob, TrainingOptions, TrainingPromptOptions, LlumiverseError } from "@llumiverse/common";
|
|
7
7
|
export declare function createLogger(logger: Logger | "console" | undefined): Logger;
|
|
8
8
|
export interface Driver<PromptT = unknown> {
|
|
9
9
|
/**
|
|
@@ -35,7 +35,7 @@ export interface Driver<PromptT = unknown> {
|
|
|
35
35
|
export declare abstract class AbstractDriver<OptionsT extends DriverOptions = DriverOptions, PromptT = unknown> implements Driver<PromptT> {
|
|
36
36
|
options: OptionsT;
|
|
37
37
|
logger: Logger;
|
|
38
|
-
abstract provider: string;
|
|
38
|
+
abstract provider: Providers | string;
|
|
39
39
|
constructor(opts: OptionsT);
|
|
40
40
|
createTrainingPrompt(options: TrainingPromptOptions): Promise<string>;
|
|
41
41
|
startTraining(_dataset: DataSource, _options: TrainingOptions): Promise<TrainingJob>;
|
|
@@ -81,6 +81,31 @@ export declare abstract class AbstractDriver<OptionsT extends DriverOptions = Dr
|
|
|
81
81
|
* @returns The updated conversation context, or undefined if not supported
|
|
82
82
|
*/
|
|
83
83
|
buildStreamingConversation(_prompt: PromptT, _result: unknown[], _toolUse: unknown[] | undefined, _options: ExecutionOptions): unknown | undefined;
|
|
84
|
+
/**
|
|
85
|
+
* Format an error into LlumiverseError. Override in driver implementations
|
|
86
|
+
* to provide provider-specific error parsing.
|
|
87
|
+
*
|
|
88
|
+
* The default implementation uses common patterns:
|
|
89
|
+
* - Status 429, 408: retryable (rate limit, timeout)
|
|
90
|
+
* - Status 529: retryable (overloaded)
|
|
91
|
+
* - Status 5xx: retryable (server errors)
|
|
92
|
+
* - Status 4xx (except above): not retryable (client errors)
|
|
93
|
+
* - Error messages containing "rate limit", "timeout", etc.: retryable
|
|
94
|
+
*
|
|
95
|
+
* @param error - The error to format
|
|
96
|
+
* @param context - Context about where the error occurred
|
|
97
|
+
* @returns A standardized LlumiverseError
|
|
98
|
+
*/
|
|
99
|
+
formatLlumiverseError(error: unknown, context: LlumiverseErrorContext): LlumiverseError;
|
|
100
|
+
/**
|
|
101
|
+
* Determine if an error is retryable based on status code and message.
|
|
102
|
+
* Can be overridden by drivers for provider-specific logic.
|
|
103
|
+
*
|
|
104
|
+
* @param statusCode - The HTTP status code (if available)
|
|
105
|
+
* @param message - The error message
|
|
106
|
+
* @returns True if retryable, false if not retryable, undefined if unknown
|
|
107
|
+
*/
|
|
108
|
+
protected isRetryableError(statusCode: number | undefined, message: string): boolean | undefined;
|
|
84
109
|
abstract requestTextCompletion(prompt: PromptT, options: ExecutionOptions): Promise<Completion>;
|
|
85
110
|
abstract requestTextCompletionStream(prompt: PromptT, options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
|
|
86
111
|
requestImageGeneration(_prompt: PromptT, _options: ExecutionOptions): Promise<Completion>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Driver.d.ts","sourceRoot":"","sources":["../../src/Driver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"Driver.d.ts","sourceRoot":"","sources":["../../src/Driver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,OAAO,EACP,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,MAAM,EACN,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,SAAS,EACT,WAAW,EACX,eAAe,EACf,qBAAqB,EACrB,eAAe,EAClB,MAAM,oBAAoB,CAAC;AAoC5B,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,UAQlE;AAED,MAAM,WAAW,MAAM,CAAC,OAAO,GAAG,OAAO;IAErC;;;;;OAKG;IACH,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtE,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAElF,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IAInG,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;IAEjG,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEnF,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEpD,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAGpD,UAAU,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAG5D,mBAAmB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAG1C,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAGvC,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE1E;;;OAGG;IACH,OAAO,CAAC,IAAI,IAAI,CAAC;CACpB;AAED;;GAEG;AACH,8BAAsB,cAAc,CAAC,QAAQ,SAAS,aAAa,GAAG,aAAa,EAAE,OAAO,GAAG,OAAO,CAAE,YAAW,MAAM,CAAC,OAAO,CAAC;IAC9H,OAAO,EAAE,QAAQ,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAC;gBAE1B,IAAI,EAAE,QAAQ;IAKpB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAQ3E,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAIpF,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAIpD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAIpD,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB;IAgBtD,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAelG,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAiC/F,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAKzC,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAatG;;;;;OAKG;cACa,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjF,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAI3F;;;;;;;;OAQG;IACH,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,gBAAgB;IAI9C;;;;OAIG;IACG,mBAAmB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAI/C;;;;;;;;;OASG;IACH,0BAA0B,CACtB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAAE,EAClB,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,EAC/B,QAAQ,EAAE,gBAAgB,GAC3B,OAAO,GAAG,SAAS;IAKtB;;;;;;;;;;;;;;OAcG;IACI,qBAAqB,CACxB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,sBAAsB,GAChC,eAAe;IAgClB;;;;;;;OAOG;IACH,SAAS,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAkChG,QAAQ,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAE/F,QAAQ,CAAC,2BAA2B,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAEzH,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAM/F,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAGpE,QAAQ,CAAC,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAG/C,QAAQ,CAAC,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAElF;;;OAGG;IACH,OAAO,IAAI,IAAI;CAGlB"}
|
|
@@ -111,4 +111,19 @@ export declare function stripBase64ImagesFromConversation(obj: unknown, options?
|
|
|
111
111
|
* @returns A new object with large text content truncated
|
|
112
112
|
*/
|
|
113
113
|
export declare function truncateLargeTextInConversation(obj: unknown, options?: StripOptions): unknown;
|
|
114
|
+
/**
|
|
115
|
+
* Strip heartbeat status messages from conversation to reduce context bloat.
|
|
116
|
+
*
|
|
117
|
+
* Heartbeat messages are periodic workstream status updates injected by the
|
|
118
|
+
* workstream management system. They are wrapped with `<heartbeat>...</heartbeat>`
|
|
119
|
+
* tags at the point of injection.
|
|
120
|
+
*
|
|
121
|
+
* This function recursively walks the conversation and replaces any string
|
|
122
|
+
* wrapped in heartbeat tags with a short placeholder.
|
|
123
|
+
*
|
|
124
|
+
* @param obj The conversation object to strip heartbeats from
|
|
125
|
+
* @param options Optional settings for turn-based stripping (default keepForTurns: 1)
|
|
126
|
+
* @returns A new object with old heartbeat messages replaced
|
|
127
|
+
*/
|
|
128
|
+
export declare function stripHeartbeatsFromConversation(obj: unknown, options?: StripOptions): unknown;
|
|
114
129
|
//# sourceMappingURL=conversation-utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-utils.d.ts","sourceRoot":"","sources":["../../src/conversation-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAUH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAiKD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,OAAO,GAAG,gBAAgB,CAQ3E;AAKD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAS1F;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,GAAG,OAAO,EAAE,YAAY,EAAE,OAAO,GAAG,CAAC,EAAE,GAAG,SAAS,CAQ3F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAGxE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAYzF;AA2BD;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAwBlE;AAkDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAW/F;AAmDD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAU7F"}
|
|
1
|
+
{"version":3,"file":"conversation-utils.d.ts","sourceRoot":"","sources":["../../src/conversation-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAUH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAiKD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,OAAO,GAAG,gBAAgB,CAQ3E;AAKD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAS1F;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,GAAG,OAAO,EAAE,YAAY,EAAE,OAAO,GAAG,CAAC,EAAE,GAAG,SAAS,CAQ3F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAGxE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAYzF;AA2BD;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAwBlE;AAkDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAW/F;AAmDD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAU7F;AAqCD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAe7F"}
|
package/lib/types/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
export * from "@llumiverse/common";
|
|
2
|
+
export * from "./conversation-utils.js";
|
|
1
3
|
export * from "./Driver.js";
|
|
2
4
|
export * from "./json.js";
|
|
3
5
|
export * from "./stream.js";
|
|
4
|
-
export * from "./conversation-utils.js";
|
|
5
|
-
export * from "@llumiverse/common";
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
|
@@ -3,5 +3,5 @@ export declare class ValidationError extends Error implements ResultValidationEr
|
|
|
3
3
|
code: 'validation_error' | 'json_error';
|
|
4
4
|
constructor(code: 'validation_error' | 'json_error', message: string);
|
|
5
5
|
}
|
|
6
|
-
export declare function validateResult(data: CompletionResult[], schema:
|
|
6
|
+
export declare function validateResult(data: CompletionResult[], schema: object): CompletionResult[];
|
|
7
7
|
//# sourceMappingURL=validation.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@llumiverse/core",
|
|
3
|
-
"version": "1.0.0-dev.
|
|
3
|
+
"version": "1.0.0-dev.20260331.080752Z",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Provide an universal API to LLMs. Support for existing LLMs can be added by writing a driver.",
|
|
6
6
|
"files": [
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"url": "git+ssh://git@github.com/vertesia/llumiverse.git"
|
|
64
64
|
},
|
|
65
65
|
"devDependencies": {
|
|
66
|
-
"@vertesia/api-fetch-client": "^0.
|
|
66
|
+
"@vertesia/api-fetch-client": "^0.82.4",
|
|
67
67
|
"rimraf": "^6.1.2",
|
|
68
68
|
"ts-dual-module": "^0.6.3",
|
|
69
69
|
"typescript": "^5.9.3",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"ajv": "^8.18.0",
|
|
75
75
|
"ajv-formats": "^3.0.1",
|
|
76
76
|
"jsonrepair": "^3.13.2",
|
|
77
|
-
"@llumiverse/common": "1.0.0-dev.
|
|
77
|
+
"@llumiverse/common": "1.0.0-dev.20260331.080752Z"
|
|
78
78
|
},
|
|
79
79
|
"ts_dual_module": {
|
|
80
80
|
"outDir": "lib",
|
package/src/CompletionStream.ts
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
CompletionStream,
|
|
3
|
+
DriverOptions,
|
|
4
|
+
ExecutionOptions,
|
|
5
|
+
ExecutionResponse,
|
|
6
|
+
ExecutionTokenUsage,
|
|
7
|
+
ToolUse,
|
|
8
|
+
LlumiverseError
|
|
9
|
+
} from "@llumiverse/common";
|
|
2
10
|
import { AbstractDriver } from "./Driver.js";
|
|
3
11
|
|
|
4
12
|
export class DefaultCompletionStream<PromptT = any> implements CompletionStream<PromptT> {
|
|
@@ -144,13 +152,20 @@ export class DefaultCompletionStream<PromptT = any> implements CompletionStream<
|
|
|
144
152
|
}
|
|
145
153
|
}
|
|
146
154
|
} catch (error: any) {
|
|
147
|
-
|
|
148
|
-
|
|
155
|
+
// Don't wrap if already a LlumiverseError
|
|
156
|
+
if (LlumiverseError.isLlumiverseError(error)) {
|
|
157
|
+
throw error;
|
|
158
|
+
}
|
|
159
|
+
throw this.driver.formatLlumiverseError(error, {
|
|
160
|
+
provider: this.driver.provider,
|
|
161
|
+
model: this.options.model,
|
|
162
|
+
operation: 'stream',
|
|
163
|
+
});
|
|
149
164
|
}
|
|
150
165
|
|
|
151
|
-
// Return undefined
|
|
152
|
-
//
|
|
153
|
-
const tokens: ExecutionTokenUsage | undefined = resultTokens ?
|
|
166
|
+
// Return undefined only if we never received any token data from the provider.
|
|
167
|
+
// Use !== undefined (not truthiness) because resultTokens === 0 is valid (e.g. empty output with stop).
|
|
168
|
+
const tokens: ExecutionTokenUsage | undefined = resultTokens !== undefined ?
|
|
154
169
|
{ prompt: promptTokens, result: resultTokens, total: resultTokens + promptTokens, } : undefined
|
|
155
170
|
|
|
156
171
|
// Convert accumulated tool_use Map to array
|
|
@@ -214,8 +229,15 @@ export class DefaultCompletionStream<PromptT = any> implements CompletionStream<
|
|
|
214
229
|
this.driver.validateResult(this.completion, this.options);
|
|
215
230
|
}
|
|
216
231
|
} catch (error: any) {
|
|
217
|
-
|
|
218
|
-
|
|
232
|
+
// Don't wrap if already a LlumiverseError
|
|
233
|
+
if (LlumiverseError.isLlumiverseError(error)) {
|
|
234
|
+
throw error;
|
|
235
|
+
}
|
|
236
|
+
throw this.driver.formatLlumiverseError(error, {
|
|
237
|
+
provider: this.driver.provider,
|
|
238
|
+
model: this.options.model,
|
|
239
|
+
operation: 'stream',
|
|
240
|
+
});
|
|
219
241
|
}
|
|
220
242
|
}
|
|
221
243
|
|
|
@@ -256,8 +278,15 @@ export class FallbackCompletionStream<PromptT = any> implements CompletionStream
|
|
|
256
278
|
yield content;
|
|
257
279
|
this.completion = completion; // Return the original completion with untouched CompletionResult[]
|
|
258
280
|
} catch (error: any) {
|
|
259
|
-
|
|
260
|
-
|
|
281
|
+
// Don't wrap if already a LlumiverseError
|
|
282
|
+
if (LlumiverseError.isLlumiverseError(error)) {
|
|
283
|
+
throw error;
|
|
284
|
+
}
|
|
285
|
+
throw this.driver.formatLlumiverseError(error, {
|
|
286
|
+
provider: this.driver.provider,
|
|
287
|
+
model: this.options.model,
|
|
288
|
+
operation: 'stream',
|
|
289
|
+
});
|
|
261
290
|
}
|
|
262
291
|
}
|
|
263
292
|
}
|