@vybestack/llxprt-code-core 0.7.0-nightly.251213.e273961ea → 0.7.0-nightly.251214.7c8736a50

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.
@@ -138,7 +138,7 @@ export { AnthropicProvider } from './providers/anthropic/AnthropicProvider.js';
138
138
  export { GeminiProvider } from './providers/gemini/GeminiProvider.js';
139
139
  export * from './providers/ProviderManager.js';
140
140
  export * from './providers/errors.js';
141
- export { LoadBalancingProvider, type LoadBalancingProviderConfig, type LoadBalancerSubProfile, type LoadBalancerStats, type ResolvedSubProfile, } from './providers/LoadBalancingProvider.js';
141
+ export { LoadBalancingProvider, type LoadBalancingProviderConfig, type LoadBalancerSubProfile, type LoadBalancerStats, type ExtendedLoadBalancerStats, type BackendMetrics, type CircuitBreakerState, type ResolvedSubProfile, } from './providers/LoadBalancingProvider.js';
142
142
  export type { DumpMode } from './providers/utils/dumpContext.js';
143
143
  export * from './providers/tokenizers/ITokenizer.js';
144
144
  export * from './providers/tokenizers/OpenAITokenizer.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,32 @@ export interface LoadBalancingProviderConfig {
36
36
  subProfiles: ResolvedSubProfile[] | LoadBalancerSubProfile[];
37
37
  lbProfileEphemeralSettings?: Record<string, unknown>;
38
38
  }
39
+ /**
40
+ * Backend performance metrics
41
+ * @plan PLAN-20251212issue489 - Phase 1
42
+ */
43
+ export interface BackendMetrics {
44
+ requests: number;
45
+ successes: number;
46
+ failures: number;
47
+ timeouts: number;
48
+ tokens: number;
49
+ totalLatencyMs: number;
50
+ avgLatencyMs: number;
51
+ }
52
+ /**
53
+ * Circuit breaker state for a backend
54
+ * @plan PLAN-20251212issue489 - Phase 1
55
+ */
56
+ export interface CircuitBreakerState {
57
+ state: 'closed' | 'open' | 'half-open';
58
+ failures: Array<{
59
+ timestamp: number;
60
+ error: Error;
61
+ }>;
62
+ openedAt?: number;
63
+ lastAttempt?: number;
64
+ }
39
65
  /**
40
66
  * Load balancer statistics interface
41
67
  */
@@ -45,6 +71,15 @@ export interface LoadBalancerStats {
45
71
  lastSelected: string | null;
46
72
  profileCounts: Record<string, number>;
47
73
  }
74
+ /**
75
+ * Extended load balancer statistics with metrics
76
+ * @plan PLAN-20251212issue489 - Phase 1
77
+ */
78
+ export interface ExtendedLoadBalancerStats extends LoadBalancerStats {
79
+ backendMetrics: Record<string, BackendMetrics>;
80
+ circuitBreakerStates: Record<string, CircuitBreakerState>;
81
+ currentTPM: Record<string, number>;
82
+ }
48
83
  /**
49
84
  * Resolved sub-profile with all settings needed for provider instantiation
50
85
  * @plan PLAN-20251211issue486c
@@ -81,6 +116,9 @@ export declare class LoadBalancingProvider implements IProvider {
81
116
  private stats;
82
117
  private lastSelected;
83
118
  private totalRequests;
119
+ private circuitBreakerStates;
120
+ private tpmBuckets;
121
+ private backendMetrics;
84
122
  constructor(config: LoadBalancingProviderConfig, providerManager: ProviderManager);
85
123
  /**
86
124
  * Validate the load balancing configuration
@@ -128,8 +166,9 @@ export declare class LoadBalancingProvider implements IProvider {
128
166
  /**
129
167
  * Get load balancer statistics
130
168
  * Phase 5: Stats Integration
169
+ * @plan PLAN-20251212issue489 - Phase 2: Updated to return ExtendedLoadBalancerStats
131
170
  */
132
- getStats(): LoadBalancerStats;
171
+ getStats(): ExtendedLoadBalancerStats;
133
172
  /**
134
173
  * Reset statistics (optional method for testing/debugging)
135
174
  * Phase 5: Stats Integration
@@ -138,6 +177,7 @@ export declare class LoadBalancingProvider implements IProvider {
138
177
  /**
139
178
  * Extract failover settings from ephemeral settings
140
179
  * @plan PLAN-20251212issue488
180
+ * @plan PLAN-20251212issue489 - Phase 1: Extended with advanced settings
141
181
  */
142
182
  private extractFailoverSettings;
143
183
  /**
@@ -150,9 +190,80 @@ export declare class LoadBalancingProvider implements IProvider {
150
190
  * @plan PLAN-20251212issue488
151
191
  */
152
192
  private buildResolvedOptions;
193
+ /**
194
+ * Initialize circuit breaker state for a backend
195
+ * @plan PLAN-20251212issue489 - Phase 2
196
+ */
197
+ private initCircuitBreakerState;
198
+ /**
199
+ * Check if backend is healthy (circuit breaker check)
200
+ * @plan PLAN-20251212issue489 - Phase 2
201
+ */
202
+ private isBackendHealthy;
203
+ /**
204
+ * Record successful backend request (circuit breaker)
205
+ * @plan PLAN-20251212issue489 - Phase 2
206
+ */
207
+ private recordBackendSuccess;
208
+ /**
209
+ * Record backend failure (circuit breaker)
210
+ * @plan PLAN-20251212issue489 - Phase 2
211
+ */
212
+ private recordBackendFailure;
213
+ /**
214
+ * Wrap iterator with timeout for first chunk
215
+ * @plan PLAN-20251212issue489 - Phase 3
216
+ */
217
+ private wrapWithTimeout;
218
+ /**
219
+ * Check if error is a timeout error
220
+ * @plan PLAN-20251212issue489 - Phase 3
221
+ */
222
+ private isTimeoutError;
223
+ /**
224
+ * Update TPM tracking with new tokens
225
+ * @plan PLAN-20251212issue489 - Phase 4
226
+ */
227
+ private updateTPM;
228
+ /**
229
+ * Calculate TPM for a profile using 5-minute rolling window
230
+ * @plan PLAN-20251212issue489 - Phase 4
231
+ */
232
+ private calculateTPM;
233
+ /**
234
+ * Check if backend should be skipped due to low TPM
235
+ * @plan PLAN-20251212issue489 - Phase 4
236
+ */
237
+ private shouldSkipOnTPM;
238
+ /**
239
+ * Extract token count from response chunks
240
+ * @plan PLAN-20251212issue489 - Phase 4/5
241
+ */
242
+ private extractTokenCount;
243
+ /**
244
+ * Initialize backend metrics
245
+ * @plan PLAN-20251212issue489 - Phase 5
246
+ */
247
+ private initBackendMetrics;
248
+ /**
249
+ * Record request start and return start time
250
+ * @plan PLAN-20251212issue489 - Phase 5
251
+ */
252
+ private recordRequestStart;
253
+ /**
254
+ * Record successful request
255
+ * @plan PLAN-20251212issue489 - Phase 5
256
+ */
257
+ private recordRequestSuccess;
258
+ /**
259
+ * Record failed request
260
+ * @plan PLAN-20251212issue489 - Phase 5
261
+ */
262
+ private recordRequestFailure;
153
263
  /**
154
264
  * Execute with failover strategy
155
265
  * @plan PLAN-20251212issue488
266
+ * @plan PLAN-20251212issue489 - Phase 2: Updated with circuit breaker integration
156
267
  */
157
268
  private executeWithFailover;
158
269
  /**
@@ -45,6 +45,12 @@ export class LoadBalancingProvider {
45
45
  stats = new Map();
46
46
  lastSelected = null;
47
47
  totalRequests = 0;
48
+ // Circuit breaker state tracking (Phase 2, Issue #489)
49
+ circuitBreakerStates = new Map();
50
+ // TPM buckets: Map<minuteBucket, Map<profileName, tokenCount>> (Phase 4, Issue #489)
51
+ tpmBuckets = new Map();
52
+ // Backend metrics tracking (Phase 5, Issue #489)
53
+ backendMetrics = new Map();
48
54
  constructor(config, providerManager) {
49
55
  this.config = config;
50
56
  this.providerManager = providerManager;
@@ -143,6 +149,8 @@ export class LoadBalancingProvider {
143
149
  this.logger.debug(() => `Selected sub-profile: ${subProfile.name} for request`);
144
150
  // Phase 5: Track stats for selected sub-profile
145
151
  this.incrementStats(subProfile.name);
152
+ // Record request start for backend metrics (Issue #489)
153
+ const startTime = this.recordRequestStart(subProfile.name);
146
154
  // Phase 3 Step 2: Get delegate provider from ProviderManager
147
155
  const delegateProvider = this.providerManager.getProviderByName(subProfile.providerName);
148
156
  // Phase 3 Step 3: Throw descriptive error if provider not found
@@ -212,7 +220,24 @@ export class LoadBalancingProvider {
212
220
  `authToken: ${resolvedOptions.resolved?.authToken ? 'present' : 'missing'}`);
213
221
  }
214
222
  // Phase 3 Step 5: Delegate to provider.generateChatCompletion() and yield all chunks
215
- yield* delegateProvider.generateChatCompletion(resolvedOptions);
223
+ // Wrap to track backend metrics (Issue #489)
224
+ try {
225
+ const chunks = [];
226
+ for await (const chunk of delegateProvider.generateChatCompletion(resolvedOptions)) {
227
+ chunks.push(chunk);
228
+ yield chunk;
229
+ }
230
+ // Extract tokens and record success
231
+ const tokensUsed = this.extractTokenCount(chunks);
232
+ if (tokensUsed > 0) {
233
+ this.updateTPM(subProfile.name, tokensUsed);
234
+ }
235
+ this.recordRequestSuccess(subProfile.name, startTime, tokensUsed);
236
+ }
237
+ catch (error) {
238
+ this.recordRequestFailure(subProfile.name, startTime, error instanceof Error ? error : new Error(String(error)));
239
+ throw error;
240
+ }
216
241
  }
217
242
  /**
218
243
  * Get default model (stub for Phase 1)
@@ -250,17 +275,35 @@ export class LoadBalancingProvider {
250
275
  /**
251
276
  * Get load balancer statistics
252
277
  * Phase 5: Stats Integration
278
+ * @plan PLAN-20251212issue489 - Phase 2: Updated to return ExtendedLoadBalancerStats
253
279
  */
254
280
  getStats() {
255
281
  const profileCounts = {};
256
282
  for (const [name, count] of this.stats) {
257
283
  profileCounts[name] = count;
258
284
  }
285
+ const circuitBreakerStates = {};
286
+ for (const [name, state] of this.circuitBreakerStates) {
287
+ circuitBreakerStates[name] = { ...state };
288
+ }
289
+ // Calculate current TPM for each profile (Phase 4, Issue #489)
290
+ const currentTPM = {};
291
+ for (const subProfile of this.config.subProfiles) {
292
+ currentTPM[subProfile.name] = this.calculateTPM(subProfile.name);
293
+ }
294
+ // Get backend metrics (Phase 5, Issue #489)
295
+ const backendMetricsRecord = {};
296
+ for (const [name, metrics] of this.backendMetrics) {
297
+ backendMetricsRecord[name] = { ...metrics };
298
+ }
259
299
  return {
260
300
  profileName: this.config.profileName,
261
301
  totalRequests: this.totalRequests,
262
302
  lastSelected: this.lastSelected,
263
303
  profileCounts,
304
+ backendMetrics: backendMetricsRecord,
305
+ circuitBreakerStates,
306
+ currentTPM,
264
307
  };
265
308
  }
266
309
  /**
@@ -275,6 +318,7 @@ export class LoadBalancingProvider {
275
318
  /**
276
319
  * Extract failover settings from ephemeral settings
277
320
  * @plan PLAN-20251212issue488
321
+ * @plan PLAN-20251212issue489 - Phase 1: Extended with advanced settings
278
322
  */
279
323
  extractFailoverSettings() {
280
324
  const ephemeral = this.config.lbProfileEphemeralSettings ?? {};
@@ -289,6 +333,23 @@ export class LoadBalancingProvider {
289
333
  failoverStatusCodes: Array.isArray(ephemeral.failover_status_codes)
290
334
  ? ephemeral.failover_status_codes.filter((n) => typeof n === 'number')
291
335
  : undefined,
336
+ // Advanced failover settings (Phase 3, Issue #489)
337
+ tpmThreshold: typeof ephemeral.tpm_threshold === 'number'
338
+ ? ephemeral.tpm_threshold
339
+ : undefined,
340
+ timeoutMs: typeof ephemeral.timeout_ms === 'number'
341
+ ? ephemeral.timeout_ms
342
+ : undefined,
343
+ circuitBreakerEnabled: ephemeral.circuit_breaker_enabled === true,
344
+ circuitBreakerFailureThreshold: typeof ephemeral.circuit_breaker_failure_threshold === 'number'
345
+ ? ephemeral.circuit_breaker_failure_threshold
346
+ : 3,
347
+ circuitBreakerFailureWindowMs: typeof ephemeral.circuit_breaker_failure_window_ms === 'number'
348
+ ? ephemeral.circuit_breaker_failure_window_ms
349
+ : 60000,
350
+ circuitBreakerRecoveryTimeoutMs: typeof ephemeral.circuit_breaker_recovery_timeout_ms === 'number'
351
+ ? ephemeral.circuit_breaker_recovery_timeout_ms
352
+ : 30000,
292
353
  };
293
354
  }
294
355
  /**
@@ -327,18 +388,323 @@ export class LoadBalancingProvider {
327
388
  },
328
389
  };
329
390
  }
391
+ /**
392
+ * Initialize circuit breaker state for a backend
393
+ * @plan PLAN-20251212issue489 - Phase 2
394
+ */
395
+ initCircuitBreakerState(_profileName) {
396
+ return {
397
+ state: 'closed',
398
+ failures: [],
399
+ };
400
+ }
401
+ /**
402
+ * Check if backend is healthy (circuit breaker check)
403
+ * @plan PLAN-20251212issue489 - Phase 2
404
+ */
405
+ isBackendHealthy(profileName) {
406
+ const settings = this.extractFailoverSettings();
407
+ if (!settings.circuitBreakerEnabled)
408
+ return true;
409
+ const state = this.circuitBreakerStates.get(profileName);
410
+ if (!state || state.state === 'closed')
411
+ return true;
412
+ if (state.state === 'open') {
413
+ const now = Date.now();
414
+ const recoveryTimeout = settings.circuitBreakerRecoveryTimeoutMs;
415
+ if (state.openedAt && now - state.openedAt >= recoveryTimeout) {
416
+ state.state = 'half-open';
417
+ state.lastAttempt = now;
418
+ this.logger.debug(() => `[circuit-breaker] ${profileName}: Testing recovery`);
419
+ return true;
420
+ }
421
+ return false;
422
+ }
423
+ // half-open: allow one attempt
424
+ return true;
425
+ }
426
+ /**
427
+ * Record successful backend request (circuit breaker)
428
+ * @plan PLAN-20251212issue489 - Phase 2
429
+ */
430
+ recordBackendSuccess(profileName) {
431
+ const state = this.circuitBreakerStates.get(profileName);
432
+ if (state && state.state === 'half-open') {
433
+ state.state = 'closed';
434
+ state.failures = [];
435
+ this.logger.debug(() => `[circuit-breaker] ${profileName}: Recovered`);
436
+ }
437
+ }
438
+ /**
439
+ * Record backend failure (circuit breaker)
440
+ * @plan PLAN-20251212issue489 - Phase 2
441
+ */
442
+ recordBackendFailure(profileName, error) {
443
+ const settings = this.extractFailoverSettings();
444
+ if (!settings.circuitBreakerEnabled)
445
+ return;
446
+ let state = this.circuitBreakerStates.get(profileName);
447
+ if (!state) {
448
+ state = this.initCircuitBreakerState(profileName);
449
+ this.circuitBreakerStates.set(profileName, state);
450
+ }
451
+ const now = Date.now();
452
+ state.failures.push({ timestamp: now, error });
453
+ // Prune old failures outside window
454
+ state.failures = state.failures.filter((f) => now - f.timestamp < settings.circuitBreakerFailureWindowMs);
455
+ // Check if threshold exceeded
456
+ if (state.failures.length >= settings.circuitBreakerFailureThreshold) {
457
+ state.state = 'open';
458
+ state.openedAt = now;
459
+ this.logger.debug(() => `[circuit-breaker] ${profileName}: Marked unhealthy (${state.failures.length} failures in window)`);
460
+ }
461
+ }
462
+ /**
463
+ * Wrap iterator with timeout for first chunk
464
+ * @plan PLAN-20251212issue489 - Phase 3
465
+ */
466
+ async *wrapWithTimeout(iterator, timeoutMs, profileName) {
467
+ if (!timeoutMs || timeoutMs <= 0) {
468
+ yield* iterator;
469
+ return;
470
+ }
471
+ let timeoutHandle;
472
+ const timeoutPromise = new Promise((_, reject) => {
473
+ timeoutHandle = setTimeout(() => {
474
+ reject(new Error(`Request timeout after ${timeoutMs}ms`));
475
+ }, timeoutMs);
476
+ });
477
+ try {
478
+ // Race first chunk against timeout
479
+ const iteratorResult = iterator.next();
480
+ const firstResult = await Promise.race([iteratorResult, timeoutPromise]);
481
+ // Got first chunk, clear timeout
482
+ if (timeoutHandle)
483
+ clearTimeout(timeoutHandle);
484
+ if (!firstResult.done) {
485
+ yield firstResult.value;
486
+ }
487
+ // Yield remaining chunks (no timeout after first chunk)
488
+ for await (const chunk of { [Symbol.asyncIterator]: () => iterator }) {
489
+ yield chunk;
490
+ }
491
+ }
492
+ catch (error) {
493
+ if (timeoutHandle)
494
+ clearTimeout(timeoutHandle);
495
+ this.logger.debug(() => `[LB:timeout] ${profileName}: Request timed out after ${timeoutMs}ms`);
496
+ throw error;
497
+ }
498
+ }
499
+ /**
500
+ * Check if error is a timeout error
501
+ * @plan PLAN-20251212issue489 - Phase 3
502
+ */
503
+ isTimeoutError(error) {
504
+ return error instanceof Error && error.message.includes('Request timeout');
505
+ }
506
+ /**
507
+ * Update TPM tracking with new tokens
508
+ * @plan PLAN-20251212issue489 - Phase 4
509
+ */
510
+ updateTPM(profileName, tokensUsed) {
511
+ const now = Date.now();
512
+ const minute = Math.floor(now / 60000);
513
+ let bucket = this.tpmBuckets.get(minute);
514
+ if (!bucket) {
515
+ bucket = new Map();
516
+ this.tpmBuckets.set(minute, bucket);
517
+ }
518
+ const current = bucket.get(profileName) || 0;
519
+ bucket.set(profileName, current + tokensUsed);
520
+ // Clean up old buckets (> 5 minutes old)
521
+ const cutoff = minute - 5;
522
+ for (const [bucketMinute] of this.tpmBuckets) {
523
+ if (bucketMinute < cutoff) {
524
+ this.tpmBuckets.delete(bucketMinute);
525
+ }
526
+ }
527
+ }
528
+ /**
529
+ * Calculate TPM for a profile using 5-minute rolling window
530
+ * @plan PLAN-20251212issue489 - Phase 4
531
+ */
532
+ calculateTPM(profileName) {
533
+ const now = Date.now();
534
+ const currentMinute = Math.floor(now / 60000);
535
+ let totalTokens = 0;
536
+ let oldestBucket;
537
+ // Sum tokens from last 5 minutes and track oldest bucket
538
+ for (let i = 0; i < 5; i++) {
539
+ const minute = currentMinute - i;
540
+ const bucket = this.tpmBuckets.get(minute);
541
+ if (bucket) {
542
+ const tokens = bucket.get(profileName) || 0;
543
+ if (tokens > 0) {
544
+ totalTokens += tokens;
545
+ if (oldestBucket === undefined || minute < oldestBucket) {
546
+ oldestBucket = minute;
547
+ }
548
+ }
549
+ }
550
+ }
551
+ // No tokens tracked yet
552
+ if (totalTokens === 0 || oldestBucket === undefined) {
553
+ return 0;
554
+ }
555
+ // Calculate TPM from oldest bucket to current minute (elapsed time)
556
+ // This ensures TPM decreases as time passes with no new tokens
557
+ const elapsedMinutes = currentMinute - oldestBucket + 1;
558
+ // Return tokens per minute averaged over elapsed time
559
+ return totalTokens / elapsedMinutes;
560
+ }
561
+ /**
562
+ * Check if backend should be skipped due to low TPM
563
+ * @plan PLAN-20251212issue489 - Phase 4
564
+ */
565
+ shouldSkipOnTPM(profileName, tpmThreshold) {
566
+ if (!tpmThreshold || tpmThreshold <= 0)
567
+ return false;
568
+ const currentTPM = this.calculateTPM(profileName);
569
+ // Only skip if we have some history and TPM is below threshold
570
+ if (currentTPM > 0 && currentTPM < tpmThreshold) {
571
+ this.logger.debug(() => `[LB:tpm] ${profileName}: TPM (${currentTPM.toFixed(0)}) below threshold (${tpmThreshold})`);
572
+ return true;
573
+ }
574
+ return false;
575
+ }
576
+ /**
577
+ * Extract token count from response chunks
578
+ * @plan PLAN-20251212issue489 - Phase 4/5
579
+ */
580
+ extractTokenCount(chunks) {
581
+ if (!chunks || chunks.length === 0)
582
+ return 0;
583
+ // Look for usage information in the last chunk (common pattern)
584
+ const lastChunk = chunks[chunks.length - 1];
585
+ // Gemini format: usageMetadata.promptTokenCount, usageMetadata.candidatesTokenCount
586
+ if (lastChunk.usageMetadata) {
587
+ const usageMetadata = lastChunk.usageMetadata;
588
+ const promptTokenCount = typeof usageMetadata.promptTokenCount === 'number'
589
+ ? usageMetadata.promptTokenCount
590
+ : 0;
591
+ const candidatesTokenCount = typeof usageMetadata.candidatesTokenCount === 'number'
592
+ ? usageMetadata.candidatesTokenCount
593
+ : 0;
594
+ if (promptTokenCount > 0 || candidatesTokenCount > 0) {
595
+ return promptTokenCount + candidatesTokenCount;
596
+ }
597
+ }
598
+ // Anthropic format: usage.input_tokens, usage.output_tokens
599
+ if (lastChunk.usage) {
600
+ const usage = lastChunk.usage;
601
+ const inputTokens = typeof usage.input_tokens === 'number' ? usage.input_tokens : 0;
602
+ const outputTokens = typeof usage.output_tokens === 'number' ? usage.output_tokens : 0;
603
+ if (inputTokens > 0 || outputTokens > 0) {
604
+ return inputTokens + outputTokens;
605
+ }
606
+ // OpenAI format: usage.prompt_tokens, usage.completion_tokens
607
+ const promptTokens = typeof usage.prompt_tokens === 'number' ? usage.prompt_tokens : 0;
608
+ const completionTokens = typeof usage.completion_tokens === 'number'
609
+ ? usage.completion_tokens
610
+ : 0;
611
+ if (promptTokens > 0 || completionTokens > 0) {
612
+ return promptTokens + completionTokens;
613
+ }
614
+ }
615
+ // Fallback: No token information found, return 0
616
+ return 0;
617
+ }
618
+ /**
619
+ * Initialize backend metrics
620
+ * @plan PLAN-20251212issue489 - Phase 5
621
+ */
622
+ initBackendMetrics(_profileName) {
623
+ return {
624
+ requests: 0,
625
+ successes: 0,
626
+ failures: 0,
627
+ timeouts: 0,
628
+ tokens: 0,
629
+ totalLatencyMs: 0,
630
+ avgLatencyMs: 0,
631
+ };
632
+ }
633
+ /**
634
+ * Record request start and return start time
635
+ * @plan PLAN-20251212issue489 - Phase 5
636
+ */
637
+ recordRequestStart(profileName) {
638
+ let metrics = this.backendMetrics.get(profileName);
639
+ if (!metrics) {
640
+ metrics = this.initBackendMetrics(profileName);
641
+ this.backendMetrics.set(profileName, metrics);
642
+ }
643
+ metrics.requests++;
644
+ return Date.now();
645
+ }
646
+ /**
647
+ * Record successful request
648
+ * @plan PLAN-20251212issue489 - Phase 5
649
+ */
650
+ recordRequestSuccess(profileName, startTime, tokensUsed) {
651
+ const metrics = this.backendMetrics.get(profileName);
652
+ if (!metrics)
653
+ return;
654
+ const latency = Date.now() - startTime;
655
+ metrics.successes++;
656
+ metrics.tokens += tokensUsed;
657
+ metrics.totalLatencyMs += latency;
658
+ metrics.avgLatencyMs = metrics.totalLatencyMs / metrics.requests;
659
+ }
660
+ /**
661
+ * Record failed request
662
+ * @plan PLAN-20251212issue489 - Phase 5
663
+ */
664
+ recordRequestFailure(profileName, startTime, error) {
665
+ const metrics = this.backendMetrics.get(profileName);
666
+ if (!metrics)
667
+ return;
668
+ const latency = Date.now() - startTime;
669
+ metrics.failures++;
670
+ metrics.totalLatencyMs += latency;
671
+ metrics.avgLatencyMs = metrics.totalLatencyMs / metrics.requests;
672
+ if (this.isTimeoutError(error)) {
673
+ metrics.timeouts++;
674
+ }
675
+ }
330
676
  /**
331
677
  * Execute with failover strategy
332
678
  * @plan PLAN-20251212issue488
679
+ * @plan PLAN-20251212issue489 - Phase 2: Updated with circuit breaker integration
333
680
  */
334
681
  async *executeWithFailover(options) {
335
682
  const settings = this.extractFailoverSettings();
336
683
  const errors = [];
684
+ // Check if all backends are unhealthy (circuit breakers open)
685
+ if (settings.circuitBreakerEnabled) {
686
+ const allUnhealthy = this.config.subProfiles.every((sp) => !this.isBackendHealthy(sp.name));
687
+ if (allUnhealthy) {
688
+ throw new Error('All backends are currently unhealthy (circuit breakers open). Please wait for recovery or check backend configurations.');
689
+ }
690
+ }
337
691
  for (const subProfile of this.config.subProfiles) {
692
+ // Skip unhealthy backends (circuit breaker check)
693
+ if (!this.isBackendHealthy(subProfile.name)) {
694
+ this.logger.debug(() => `[LB:failover] Skipping unhealthy backend: ${subProfile.name} (circuit breaker open)`);
695
+ continue;
696
+ }
697
+ // Skip backends with low TPM (Phase 4, Issue #489)
698
+ if (this.shouldSkipOnTPM(subProfile.name, settings.tpmThreshold)) {
699
+ this.logger.debug(() => `[LB:failover] Skipping backend: ${subProfile.name} (TPM below threshold)`);
700
+ continue;
701
+ }
338
702
  let attempts = 0;
339
703
  const maxAttempts = Math.max(1, settings.retryCount);
340
704
  while (attempts < maxAttempts) {
341
705
  attempts++;
706
+ // Record request start (Phase 5, Issue #489)
707
+ const startTime = this.recordRequestStart(subProfile.name);
342
708
  try {
343
709
  this.logger.debug(() => `[LB:failover] Trying backend: ${subProfile.name} (attempt ${attempts}/${maxAttempts})`);
344
710
  const resolvedOptions = this.buildResolvedOptions(subProfile, options);
@@ -346,17 +712,24 @@ export class LoadBalancingProvider {
346
712
  if (!delegateProvider) {
347
713
  throw new Error(`Provider "${subProfile.providerName}" not found`);
348
714
  }
349
- const iterator = delegateProvider.generateChatCompletion(resolvedOptions);
350
- const firstResult = await iterator.next();
351
- if (!firstResult.done) {
352
- yield firstResult.value;
353
- }
354
- for await (const chunk of {
355
- [Symbol.asyncIterator]: () => iterator,
356
- }) {
715
+ const rawIterator = delegateProvider.generateChatCompletion(resolvedOptions);
716
+ // Wrap with timeout (Phase 3, Issue #489)
717
+ const iterator = this.wrapWithTimeout(rawIterator, settings.timeoutMs, subProfile.name);
718
+ // Collect chunks for token extraction (Phase 4, Issue #489)
719
+ const chunks = [];
720
+ for await (const chunk of iterator) {
721
+ chunks.push(chunk);
357
722
  yield chunk;
358
723
  }
724
+ // Extract and update TPM (Phase 4, Issue #489)
725
+ const tokensUsed = this.extractTokenCount(chunks);
726
+ if (tokensUsed > 0) {
727
+ this.updateTPM(subProfile.name, tokensUsed);
728
+ }
729
+ // Record request success (Phase 5, Issue #489)
730
+ this.recordRequestSuccess(subProfile.name, startTime, tokensUsed);
359
731
  this.incrementStats(subProfile.name);
732
+ this.recordBackendSuccess(subProfile.name);
360
733
  this.logger.debug(() => `[LB:failover] Success on backend: ${subProfile.name}`);
361
734
  return;
362
735
  }
@@ -371,6 +744,9 @@ export class LoadBalancingProvider {
371
744
  }
372
745
  else {
373
746
  this.logger.debug(() => `[LB:failover] ${subProfile.name} failed after ${attempts} attempts: ${error.message}`);
747
+ // Record request failure (Phase 5, Issue #489)
748
+ this.recordRequestFailure(subProfile.name, startTime, error);
749
+ this.recordBackendFailure(subProfile.name, error);
374
750
  errors.push({ profile: subProfile.name, error: error });
375
751
  break;
376
752
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LoadBalancingProvider.js","sourceRoot":"","sources":["../../../src/providers/LoadBalancingProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAkD5E;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAgB;IAC1D,OAAO,CACL,MAAM,IAAI,OAAO;QACjB,OAAO,CAAC,IAAI,KAAK,cAAc;QAC/B,UAAU,IAAI,OAAO;QACrB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CACrD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAoD;IAEpD,OAAO,CACL,OAAO,IAAI,OAAO;QAClB,mBAAmB,IAAI,OAAO;QAC9B,aAAa,IAAI,OAAO,CACzB,CAAC;AACJ,CAAC;AAaD;;GAEG;AACH,MAAM,OAAO,qBAAqB;IASb;IACA;IATV,IAAI,GAAG,eAAe,CAAC;IACxB,eAAe,GAAG,CAAC,CAAC;IACX,MAAM,GAAG,IAAI,WAAW,CAAC,gCAAgC,CAAC,CAAC;IACpE,KAAK,GAAwB,IAAI,GAAG,EAAE,CAAC;IACvC,YAAY,GAAkB,IAAI,CAAC;IACnC,aAAa,GAAG,CAAC,CAAC;IAE1B,YACmB,MAAmC,EACnC,eAAgC;QADhC,WAAM,GAAN,MAAM,CAA6B;QACnC,oBAAe,GAAf,eAAe,CAAiB;QAEjD,iCAAiC;QACjC,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;QACJ,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,MAAmC;QACxD,oCAAoC;QACpC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QAED,2BAA2B;QAC3B,IAAI,MAAM,CAAC,QAAQ,KAAK,aAAa,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CACb,qBAAqB,MAAM,CAAC,QAAQ,0CAA0C,CAC/E,CAAC;QACJ,CAAC;QAED,qDAAqD;QACrD,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CACb,sFAAsF,CACvF,CAAC;QACJ,CAAC;QAED,4BAA4B;QAC5B,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5D,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;YACJ,CAAC;YAED,IACE,CAAC,UAAU,CAAC,YAAY;gBACxB,OAAO,UAAU,CAAC,YAAY,KAAK,QAAQ,EAC3C,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,gBAAgB,UAAU,CAAC,IAAI,6DAA6D,CAC7F,CAAC;YACJ,CAAC;YAED,+CAA+C;YAC/C,IAAI,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC9D,MAAM,IAAI,KAAK,CACb,uBAAuB,UAAU,CAAC,IAAI,sDAAsD,CAC7F,CAAC;gBACJ,CAAC;gBAED,IACE,CAAC,UAAU,CAAC,iBAAiB;oBAC7B,OAAO,UAAU,CAAC,iBAAiB,KAAK,QAAQ,EAChD,CAAC;oBACD,MAAM,IAAI,KAAK,CACb,uBAAuB,UAAU,CAAC,IAAI,wDAAwD,CAC/F,CAAC;gBACJ,CAAC;gBAED,IACE,CAAC,UAAU,CAAC,WAAW;oBACvB,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ,EAC1C,CAAC;oBACD,MAAM,IAAI,KAAK,CACb,uBAAuB,UAAU,CAAC,IAAI,kDAAkD,CACzF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,oBAAoB;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACjE,IAAI,CAAC,eAAe;YAClB,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;QAC9D,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS;QACb,4CAA4C;QAC5C,0EAA0E;QAC1E,KAAK,IAAI,CAAC,MAAM,CAAC;QACjB,KAAK,IAAI,CAAC,eAAe,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAcD,KAAK,CAAC,CAAC,sBAAsB,CAC3B,gBAAkD,EAClD,KAAuB;QAEvB,qDAAqD;QACrD,IAAI,OAA4B,CAAC;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACpC,+CAA+C;YAC/C,OAAO,GAAG;gBACR,QAAQ,EAAE,gBAAgB;gBAC1B,KAAK;aACN,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,OAAO,GAAG,gBAAgB,CAAC;QAC7B,CAAC;QAED,qBAAqB;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YACxC,KAAK,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QAED,4DAA4D;QAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CAAC,yBAAyB,UAAU,CAAC,IAAI,cAAc,CAC7D,CAAC;QAEF,gDAAgD;QAChD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAErC,6DAA6D;QAC7D,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAC7D,UAAU,CAAC,YAAY,CACxB,CAAC;QAEF,gEAAgE;QAChE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,aAAa,UAAU,CAAC,YAAY,gCAAgC,UAAU,CAAC,IAAI,GAAG,CAAC;YACxG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,2BAA2B,gBAAgB,CAAC,IAAI,kBAAkB,UAAU,CAAC,IAAI,GAAG,CACvF,CAAC;QAEF,8DAA8D;QAC9D,IAAI,eAAoC,CAAC;QAEzC,IAAI,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,4EAA4E;YAC5E,sEAAsE;YACtE,MAAM,uBAAuB,GAAG;gBAC9B,GAAG,UAAU,CAAC,iBAAiB;gBAC/B,GAAG,IAAI,CAAC,MAAM,CAAC,0BAA0B;aAC1C,CAAC;YAEF,mEAAmE;YACnE,MAAM,WAAW,GAAG,uBAAuB,CAAC,WAE/B,CAAC;YACd,MAAM,SAAS,GAAG,uBAAuB,CAAC,SAA+B,CAAC;YAC1E,MAAM,SAAS,GAAG,uBAAuB,CAAC,SAE7B,CAAC;YAEd,eAAe,GAAG;gBAChB,GAAG,OAAO;gBACV,QAAQ,EAAE;oBACR,+CAA+C;oBAC/C,GAAG,OAAO,CAAC,QAAQ;oBACnB,mEAAmE;oBACnE,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,GAAG,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC;oBAC1D,GAAG,CAAC,UAAU,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC;oBAChE,2CAA2C;oBAC3C,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,CAAC;oBACjD,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;oBAC7C,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;iBAC9C;gBACD,8EAA8E;gBAC9E,QAAQ,EAAE;oBACR,GAAG,OAAO,CAAC,QAAQ;oBACnB,iBAAiB,EAAE,uBAAuB;oBAC1C,WAAW,EAAE,UAAU,CAAC,WAAW;iBACpC;aACF,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,mDAAmD,eAAe,CAAC,QAAQ,EAAE,KAAK,IAAI;gBACtF,YAAY,eAAe,CAAC,QAAQ,EAAE,OAAO,IAAI;gBACjD,cAAc,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,IAAI;gBAC7E,gBAAgB,WAAW,gBAAgB,SAAS,IAAI;gBACxD,2BAA2B,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAC9E,qBAAqB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACxE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,+DAA+D;YAC/D,eAAe,GAAG;gBAChB,GAAG,OAAO;gBACV,QAAQ,EAAE;oBACR,+CAA+C;oBAC/C,GAAG,OAAO,CAAC,QAAQ;oBACnB,uDAAuD;oBACvD,GAAG,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxD,GAAG,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC;oBAC1D,GAAG,CAAC,UAAU,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC;iBACjE;aACF,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,uDAAuD,eAAe,CAAC,QAAQ,EAAE,KAAK,IAAI;gBAC1F,YAAY,eAAe,CAAC,QAAQ,EAAE,OAAO,IAAI;gBACjD,cAAc,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAC9E,CAAC;QACJ,CAAC;QAED,qFAAqF;QACrF,KAAK,CAAC,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,eAAe,CAAC,CAAC;IAClE,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,6CAA6C;QAC7C,+EAA+E;QAC/E,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;OAGG;IACH,cAAc;QACZ,4CAA4C;QAC5C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CACpB,QAAgB,EAChB,OAAgB,EAChB,OAAiB,EACjB,OAAqB;QAErB,MAAM,IAAI,KAAK,CACb,gBAAgB,QAAQ,iEAAiE,CAC1F,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,cAAsB;QAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC;QACnC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,MAAM,aAAa,GAA2B,EAAE,CAAC;QACjD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACvC,aAAa,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa;SACd,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IACzB,CAAC;IAED;;;OAGG;IACK,uBAAuB;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,0BAA0B,IAAI,EAAE,CAAC;QAC/D,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,GAAG,CAClB,OAAO,SAAS,CAAC,oBAAoB,KAAK,QAAQ;gBAChD,CAAC,CAAC,SAAS,CAAC,oBAAoB;gBAChC,CAAC,CAAC,CAAC,EACL,GAAG,CACJ;YACD,YAAY,EACV,OAAO,SAAS,CAAC,uBAAuB,KAAK,QAAQ;gBACnD,CAAC,CAAC,SAAS,CAAC,uBAAuB;gBACnC,CAAC,CAAC,CAAC;YACP,uBAAuB,EAAE,SAAS,CAAC,0BAA0B,KAAK,KAAK;YACvE,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;gBACjE,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,CACpC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAC1C;gBACH,CAAC,CAAC,SAAS;SACd,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,KAAc,EAAE,QAA0B;QAC/D,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAE3C,IAAI,QAAQ,CAAC,uBAAuB,IAAI,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC;YACvE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,IAAI,QAAQ,CAAC,mBAAmB,EAAE,CAAC;gBACjC,OAAO,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACK,oBAAoB,CAC1B,UAAuD,EACvD,OAA4B;QAE5B,OAAO;YACL,GAAG,OAAO;YACV,QAAQ,EAAE;gBACR,GAAG,OAAO,CAAC,QAAQ;gBACnB,KAAK,EAAE,oBAAoB,CAAC,UAAU,CAAC;oBACrC,CAAC,CAAC,UAAU,CAAC,KAAK;oBAClB,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC;gBAC9B,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,EAAE;gBACjC,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,EAAE;aACtC;SACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,CAAC,mBAAmB,CAChC,OAA4B;QAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAChD,MAAM,MAAM,GAA6C,EAAE,CAAC;QAE5D,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACjD,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;YAErD,OAAO,QAAQ,GAAG,WAAW,EAAE,CAAC;gBAC9B,QAAQ,EAAE,CAAC;gBACX,IAAI,CAAC;oBACH,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,iCAAiC,UAAU,CAAC,IAAI,aAAa,QAAQ,IAAI,WAAW,GAAG,CAC1F,CAAC;oBAEF,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC/C,UAAU,EACV,OAAO,CACR,CAAC;oBACF,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAC7D,UAAU,CAAC,YAAY,CACxB,CAAC;oBACF,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACtB,MAAM,IAAI,KAAK,CAAC,aAAa,UAAU,CAAC,YAAY,aAAa,CAAC,CAAC;oBACrE,CAAC;oBAED,MAAM,QAAQ,GACZ,gBAAgB,CAAC,sBAAsB,CAAC,eAAe,CAAC,CAAC;oBAC3D,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAE1C,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;wBACtB,MAAM,WAAW,CAAC,KAAK,CAAC;oBAC1B,CAAC;oBAED,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI;wBACxB,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ;qBACvC,EAAE,CAAC;wBACF,MAAM,KAAK,CAAC;oBACd,CAAC;oBAED,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CAAC,qCAAqC,UAAU,CAAC,IAAI,EAAE,CAC7D,CAAC;oBACF,OAAO;gBACT,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,aAAa,GAAG,QAAQ,IAAI,WAAW,CAAC;oBAC9C,MAAM,WAAW,GACf,CAAC,aAAa,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAEzD,IAAI,WAAW,EAAE,CAAC;wBAChB,IAAI,QAAQ,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;4BAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,iBAAiB,UAAU,CAAC,IAAI,YAAY,QAAQ,2BAA2B,QAAQ,CAAC,YAAY,OAAQ,KAAe,CAAC,OAAO,EAAE,CACxI,CAAC;4BACF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,CAC3C,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,iBAAiB,UAAU,CAAC,IAAI,iBAAiB,QAAQ,cAAe,KAAe,CAAC,OAAO,EAAE,CACpG,CAAC;wBACF,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,KAAc,EAAE,CAAC,CAAC;wBACjE,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,IAAI,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,YAAY;QAChB,yDAAyD;QACzD,+EAA+E;QAC/E,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACnD,OAAO,eAAe,EAAE,SAAS,IAAI,EAAE,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"LoadBalancingProvider.js","sourceRoot":"","sources":["../../../src/providers/LoadBalancingProvider.ts"],"names":[],"mappings":"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"}
@@ -137,4 +137,9 @@ export declare class LoggingProviderWrapper implements IProvider {
137
137
  * @plan PLAN-20250909-TOKTRACK
138
138
  */
139
139
  getPerformanceMetrics(): ProviderPerformanceMetrics;
140
+ /**
141
+ * Delegate getStats() to wrapped provider if it supports it (e.g., LoadBalancingProvider)
142
+ * @returns Stats from the underlying provider, or undefined if not supported
143
+ */
144
+ getStats(): unknown;
140
145
  }
@@ -806,5 +806,16 @@ export class LoggingProviderWrapper {
806
806
  getPerformanceMetrics() {
807
807
  return this.performanceTracker.getLatestMetrics();
808
808
  }
809
+ /**
810
+ * Delegate getStats() to wrapped provider if it supports it (e.g., LoadBalancingProvider)
811
+ * @returns Stats from the underlying provider, or undefined if not supported
812
+ */
813
+ getStats() {
814
+ if ('getStats' in this.wrapped &&
815
+ typeof this.wrapped.getStats === 'function') {
816
+ return this.wrapped.getStats();
817
+ }
818
+ return undefined;
819
+ }
809
820
  }
810
821
  //# sourceMappingURL=LoggingProviderWrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoggingProviderWrapper.js","sourceRoot":"","sources":["../../../src/providers/LoggingProviderWrapper.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,OAAO,EAAE,MAAM,EAAwB,MAAM,qBAAqB,CAAC;AACnE,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,aAAa,EACb,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,EACf,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAQ1D,kDAAkD;AAClD,MAAM,mBAAmB;IACH;IAApB,YAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAExD,aAAa,CAAC,OAAiB,EAAE,YAAoB;QACnD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACzB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,eAAe,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;QAEvC,qBAAqB;QACrB,eAAe,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAC5D,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC1B,OAAO;oBACL,GAAG,KAAK;oBACR,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC;iBACnD,CAAC;YACJ,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACtC,8EAA8E;gBAC9E,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CACvC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,EAChC,YAAY,CACb,CAAC;gBACF,OAAO;oBACL,GAAG,KAAK;oBACR,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;iBACvC,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,cAAc,CAAC,IAAW;QACxB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;QAEjC,IAAI,YAAY,CAAC,QAAQ,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3D,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CACvC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,EAChD,QAAQ,CACT,CAAC;YACF,IAAI,CAAC;gBACH,YAAY,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAChE,CAAC;YAAC,MAAM,CAAC;gBACP,6CAA6C;gBAC7C,YAAY,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,qBAAqB,CAAC,OAAe,EAAE,YAAoB;QACzD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACzB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACnD,CAAC;IAEO,YAAY;QAClB,OAAO,CACL,IAAI,CAAC,eAAe,CAAC,aAAa;YAClC,IAAI,CAAC,eAAe,CAAC,iBAAiB;YACtC,IAAI,CAAC,eAAe,CAAC,eAAe;YACpC,IAAI,CAAC,eAAe,CAAC,UAAU;YAC/B,IAAI,CAAC,eAAe,CAAC,YAAY;YACjC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CACxC,CAAC;IACJ,CAAC;IAEO,aAAa,CAAC,OAAe,EAAE,aAAqB;QAC1D,IAAI,QAAQ,GAAG,OAAO,CAAC;QAEvB,2CAA2C;QAC3C,IAAI,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;YACvC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;YAC1E,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,0BAA0B,EAC1B,+BAA+B,CAChC,CAAC;YACF,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,4BAA4B,EAC5B,0BAA0B,CAC3B,CAAC;YACF,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,yBAAyB,EACzB,uBAAuB,CACxB,CAAC;QACJ,CAAC;QAED,wCAAwC;QACxC,IAAI,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;YAC3C,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,0CAA0C,EAC1C,qBAAqB,CACtB,CAAC;YACF,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,8BAA8B,EAC9B,gCAAgC,CACjC,CAAC;QACJ,CAAC;QAED,uCAAuC;QACvC,IAAI,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;YACzC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,0BAA0B,EAC1B,qBAAqB,CACtB,CAAC;YACF,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,wBAAwB,EACxB,qBAAqB,CACtB,CAAC;YACF,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,CAAC;YACxE,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,oBAAoB,EAAE,qBAAqB,CAAC,CAAC;QAC3E,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;YACtC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,iDAAiD,EACjD,kBAAkB,CACnB,CAAC;QACJ,CAAC;QAED,2CAA2C;QAC3C,IAAI,IAAI,CAAC,eAAe,CAAC,kBAAkB,EAAE,CAAC;YAC5C,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,CAAC;YAC1E,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACzB,6CAA6C,EAC7C,sBAAsB,CACvB,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,sBAAsB;IAqBd;IApBX,cAAc,CAAS;IACvB,UAAU,GAAW,CAAC,CAAC;IACvB,QAAQ,GAAoC,IAAI,CAAC;IACjD,kBAAkB,CAA6B;IAC/C,sBAAsB,CAAgC;IACtD,wBAAwB,GAAmC,IAAI,CAAC;IAChE,KAAK,CAAc;IACnB,iBAAiB,GAKd,IAAI,CAAC;IAEhB;;;;OAIG;IACH,YACmB,OAAkB,EACnC,gBAA2D,EAC3D,cAAyC;QAFxB,YAAO,GAAP,OAAO,CAAW;QAInC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAEpD,iEAAiE;QACjE,gEAAgE;QAChE,IAAI,gBAAgB,IAAI,eAAe,IAAI,gBAAgB,EAAE,CAAC;YAC5D,IAAI,CAAC,QAAQ,GAAG,gBAA4C,CAAC;QAC/D,CAAC;aAAM,IACL,gBAAgB;YAChB,+BAA+B,IAAI,gBAAgB,EACnD,CAAC;YACD,6CAA6C;YAC7C,MAAM,MAAM,GAAG,gBAA0B,CAAC;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAmB,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,0BAA0B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,GAAG,IAAI,WAAW,CAAC,mBAAmB,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC;QAExE,0EAA0E;QAC1E,IACE,oBAAoB,IAAI,OAAO;YAC/B,OAAO,OAAO,CAAC,kBAAkB,KAAK,UAAU,EAChD,CAAC;YACD,MAAM,QAAQ,GAAG,OAEhB,CAAC;YACF,QAAQ,CAAC,kBAAkB,CAAC,CAAC,UAAkB,EAAE,EAAE;gBACjD,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,8BAA8B;IAC9B,8BAA8B,CAAC,QAAiC;QAC9D,IAAI,CAAC,wBAAwB,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;IAClD,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,QAAsC;QAC9D,IAAI,CAAC,sBAAsB,GAAG,QAAQ,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAClB,UAGwB;QAExB,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACH,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,yBAAyB;IACzB,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IAChC,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IAClC,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC;IAyBD,KAAK,CAAC,CAAC,sBAAsB,CAC3B,gBAAkD,EAClD,UAA4B;QAE5B,IAAI,iBAAiB,GAAwB,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC1E,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,UAAU,EAAE;YACnD,CAAC,CAAC,EAAE,GAAG,gBAAgB,EAAE,CAAC;QAE5B,gFAAgF;QAChF,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,CAAC;QACxD,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC;QAElD,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,cAAc,GAA4B;gBAC9C,GAAG,CAAC,IAAI,CAAC,wBAAwB,IAAI,EAAE,CAAC;gBACxC,GAAG,CAAC,eAAe,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACnC,GAAG,CAAC,eAAe,EAAE,QAAQ,IAAI,EAAE,CAAC;gBACpC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACrC,MAAM,EAAE,+CAA+C;gBACvD,WAAW,EAAE,aAAa;aAC3B,CAAC;YAEF,iBAAiB,CAAC,OAAO,GAAG;gBAC1B,GAAG,eAAe;gBAClB,GAAG,eAAe;gBAClB,eAAe,EACb,eAAe,EAAE,eAAe,IAAI,eAAe,CAAC,eAAe;gBACrE,MAAM,EAAE,eAAe,EAAE,MAAM,IAAI,eAAe,CAAC,MAAM;gBACzD,QAAQ,EAAE,cAAc;aACzB,CAAC;YAEF,iBAAiB,CAAC,QAAQ;gBACxB,iBAAiB,CAAC,QAAQ,IAAI,iBAAiB,CAAC,OAAO,CAAC,eAAe,CAAC;YAC1E,iBAAiB,CAAC,QAAQ,GAAG,cAAc,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACtD,iBAAiB,CAAC,QAAQ,GAAG;gBAC3B,GAAG,CAAC,IAAI,CAAC,wBAAwB,IAAI,EAAE,CAAC;gBACxC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,IAAI,EAAE,CAAC;aACtC,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CACxC,iBAAiB,EACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAClB,CAAC;QACJ,CAAC;QAED,iFAAiF;QACjF,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,EAAE,SAAS,IAAI,SAAS,CAAC;QACpE,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,uCAAuC,SAAS,gBAAgB,CAAC,CAAC,iBAAiB,CAAC,OAAO,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,OAAO,EAAE,eAAe,eAAe,CAAC,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,CAC/M,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,6BAA6B,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,WAAW,EAAE,CACnF,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,CAAC;YAChD,IAAI,CAAC,KAAK,CAAC,KAAK,CACd,GAAG,EAAE,CACH,4DAA4D,SAAS,EAAE,CAC1E,CAAC;YACF,MAAM,IAAI,2BAA2B,CAAC;gBACpC,WAAW,EAAE,0BAA0B,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG;gBAC3D,aAAa,EAAE,CAAC,UAAU,CAAC;gBAC3B,WAAW,EAAE,aAAa;gBAC1B,KAAK,EAAE,wBAAwB;gBAC/B,QAAQ,EAAE;oBACR,IAAI,EAAE,uEAAuE;oBAC7E,SAAS;iBACV;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,KAAK,CACd,GAAG,EAAE,CAAC,mDAAmD,SAAS,EAAE,CACrE,CAAC;YACF,MAAM,IAAI,2BAA2B,CAAC;gBACpC,WAAW,EAAE,0BAA0B,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG;gBAC3D,aAAa,EAAE,CAAC,QAAQ,CAAC;gBACzB,WAAW,EAAE,aAAa;gBAC1B,KAAK,EAAE,wBAAwB;gBAC/B,QAAQ,EAAE;oBACR,IAAI,EAAE,8DAA8D;oBACpE,SAAS;iBACV;aACF,CAAC,CAAC;QACL,CAAC;QAED,iDAAiD;QACjD,iBAAiB,CAAC,MAAM;YACtB,iBAAiB,CAAC,MAAM,IAAI,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC;QAChE,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,sCAAsC,CAAC,CAAC,YAAY,gBAAgB,YAAY,EAAE,WAAW,EAAE,IAAI,eAAe,OAAO,YAAY,EAAE,6BAA6B,EAAE,CACzK,CAAC;QAEF,sFAAsF;QACtF,wFAAwF;QACxF,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,sBAAsB,GACxB,OAAO,YAAY,CAAC,6BAA6B,KAAK,UAAU,CAAC;YAEnE,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC5B,iDAAiD;gBACjD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC7C,MAAM,cAAc,GAAa,EAAE,CAAC;gBACpC,IAAI,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAChD,OAAO,KAAK,IAAI,KAAK,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC;oBAC3C,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,IAAI,SAAS,CAAC,CAAC;oBAC1D,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,GAAG,EAAE,CACH,iEAAiE,YAAY,EAAE,WAAW,EAAE,IAAI,IAAI,SAAS,YAAY,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,qCAAqC,CAC3Q,CAAC;gBAEF,IAAI,CAAC;oBACH,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBACxD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,KAAK,CAAC,KAAK,CACd,GAAG,EAAE,CACH,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAClG,CAAC;gBACJ,CAAC;gBAED,sBAAsB;oBACpB,OAAO,YAAY,CAAC,6BAA6B,KAAK,UAAU,CAAC;gBAEnE,IAAI,CAAC,sBAAsB,EAAE,CAAC;oBAC5B,MAAM,IAAI,KAAK,CACb,sGAAsG;wBACpG,2EAA2E;wBAC3E,+IAA+I;wBAC/I,gBAAgB;wBAChB,WAAW,YAAY,EAAE,WAAW,EAAE,IAAI,IAAI,SAAS,IAAI;wBAC3D,iBAAiB,OAAO,YAAY,EAAE,6BAA6B,IAAI;wBACvE,gBAAgB,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI;wBACjD,qBAAqB,UAAU,CAAC,MAAM,IAAI;wBAC1C,sBAAsB,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,iBAAiB,IAAI;wBACrG,mBAAmB,CAAC,CAAC,iBAAiB,CAAC,OAAO,IAAI;wBAClD,iBAAiB,iBAAiB,CAAC,OAAO,EAAE,SAAS,IAAI,SAAS,IAAI;wBACtE,oFAAoF,CACvF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,UAAU,CAAC;QAEhD,0EAA0E;QAC1E,IAAI,UAAU,EAAE,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAmB,CAAC;gBACtC,GAAG,UAAU,CAAC,SAAS;aACxB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,YAAY,EAAE,CAAC;YAC1C,2DAA2D;YAC3D,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAmB,CACrC,YAAY,CAAC,kBAAkB,EAAE,CAClC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CAAC,qCAAqC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAC7D,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACzC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,uCAAuC,QAAQ,gBAAgB,IAAI,CAAC,UAAU,EAAE,CACnF,CAAC;QAEF,oCAAoC;QACpC,IAAI,0BAA0B,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,+CAA+C,CAAC,CAAC;YACtE,0BAA0B;gBACxB,YAAY,EAAE,6BAA6B,EAAE,IAAI,KAAK,CAAC;YACzD,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,6CAA6C,0BAA0B,EAAE,CAC5E,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,KAAK,CACd,GAAG,EAAE,CACH,oDAAoD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC/G,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,uCAAuC,0BAA0B,qBAAqB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,CAC7H,CAAC;QAEF,IAAI,0BAA0B,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,wCAAwC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,CAC/E,CAAC;gBACF,MAAM,IAAI,CAAC,UAAU,CACnB,YAAa,EACb,iBAAiB,CAAC,QAAQ,EAC1B,iBAAiB,CAAC,KAAK,EACvB,QAAQ,CACT,CAAC;gBACF,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,uCAAuC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,CAC9E,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,KAAK,CACd,GAAG,EAAE,CACH,sBAAsB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACjF,CAAC;gBACF,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QAE7D,kCAAkC;QAClC,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,0CAA0C,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,CACjF,CAAC;YACF,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC/D,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CAAC,4CAA4C,WAAW,CAAC,MAAM,EAAE,CACvE,CAAC;YACF,MAAM,SAAS,GACb,iBAAiB,CAAC,QAAQ,EAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YACtE,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CAAC,8BAA8B,SAAS,cAAc,QAAQ,EAAE,CACtE,CAAC;YACF,aAAa,CACX,YAAY,EACZ,IAAI,eAAe,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CACtD,CAAC;YACF,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,6CAA6C,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,CACpF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,8CAA8C,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,GAAG,EAAE,CACH,mCAAmC,IAAI,CAAC,OAAO,CAAC,IAAI,oBAAoB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,CAC/G,CAAC;QAEF,mEAAmE;QACnE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;QAEtE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,oDAAoD,CAAC,CAAC;QAE3E,iDAAiD;QACjD,mDAAmD;QACnD,IAAI,CAAC,YAAY,EAAE,6BAA6B,EAAE,EAAE,CAAC;YACnD,KAAK,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,yDAAyD;QACzD,KAAK,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChE,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAc,EACd,OAAmB,EACnB,KAAuB,EACvB,QAAiB;QAEjB,IAAI,CAAC;YACH,mEAAmE;YACnE,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ;gBACnC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,QAAS,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CACtD;gBACH,CAAC,CAAC,OAAO,CAAC;YACZ,uEAAuE;YACvE,MAAM,aAAa,GAAG,KAAK,CAAC;YAE5B,MAAM,KAAK,GAAG,IAAI,wBAAwB,CACxC,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,UAAU,EACf,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE,EACnC,eAAe,EACf,aAAa,EACb,SAAS,CACV,CAAC;YAEF,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAEtC,qBAAqB;YACrB,MAAM,UAAU,GAAG,yBAAyB,CAC1C,MAAM,CAAC,sBAAsB,EAAE,CAChC,CAAC;YACF,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE;gBAC1D,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBAC7C,KAAK,EAAE,aAAa;gBACpB,UAAU,EAAE,SAAS;aACtB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uCAAuC;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,uCAAuC,KAAK,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,CAAC,uBAAuB,CACpC,MAA0B,EAC1B,MAAuC;QAEvC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QACpC,IAAI,gBAAwC,CAAC;QAE7C,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,6CAA6C;gBAC7C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACvC,MAAM,OAAO,GAAG,KAAiB,CAAC;oBAClC,IAAI,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;wBAC5B,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC5C,CAAC;gBACH,CAAC;gBAED,MAAM,KAAK,CAAC;YACd,CAAC;YAED,yCAAyC;YACzC,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC/C,MAAM,WAAW,GACf,IAAI,CAAC,gCAAgC,CAAC,gBAAgB,CAAC,CAAC;gBAE1D,8CAA8C;gBAC9C,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBAE/C,6DAA6D;gBAC7D,MAAM,YAAY,GAAG,WAAW,CAAC,kBAAkB,CAAC;gBACpD,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CACtC,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,CAAC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,sCAAsC;YACtC,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC/C,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,CAAC,iBAAiB,CAC9B,MAAc,EACd,MAAuC,EACvC,QAAgB;QAEhB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QACpC,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,gBAAwC,CAAC;QAE7C,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,6EAA6E;gBAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBACjD,IAAI,OAAO,EAAE,CAAC;oBACZ,eAAe,IAAI,OAAO,CAAC;gBAC7B,CAAC;gBAED,6CAA6C;gBAC7C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACvC,MAAM,OAAO,GAAG,KAAiB,CAAC;oBAClC,IAAI,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;wBAC5B,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC5C,CAAC;gBACH,CAAC;gBAED,MAAM,KAAK,CAAC;YACd,CAAC;YACD,gBAAgB,GAAG,IAAI,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,WAAW,CACpB,MAAM,EACN,EAAE,EACF,QAAQ,EACR,SAAS,GAAG,SAAS,EACrB,KAAK,EACL,KAAK,EACL,gBAAgB,CACjB,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAChD,MAAM,IAAI,CAAC,WAAW,CACpB,MAAM,EACN,eAAe,EACf,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,SAAS,EACT,gBAAgB,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,oEAAoE;IAC5D,oBAAoB,CAAC,KAAc;QACzC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,GAAG,GAAG,KAAgC,CAAC;QAE7C,2BAA2B;QAC3B,IAAI,GAAG,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAA4B,CAAC;YACzD,IAAI,MAAM,EAAE,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACtD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAgC,CAAC;gBACtD,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACtC,OAAO,KAAK,CAAC,OAAO,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,MAAc,EACd,OAAe,EACf,QAAgB,EAChB,QAAgB,EAChB,OAAgB,EAChB,KAAe,EACf,UAAuB;QAEvB,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ;gBACnC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACjE,CAAC,CAAC,OAAO,CAAC;YAEZ,oEAAoE;YACpE,MAAM,WAAW,GAAG,UAAU;gBAC5B,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,UAAU,CAAC;gBACnD,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC;YAEjD,8CAA8C;YAC9C,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAE/C,6DAA6D;YAC7D,MAAM,YAAY,GAAG,WAAW,CAAC,kBAAkB,CAAC;YACpD,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;YAE1E,sCAAsC;YACtC,MAAM,WAAW,GACf,WAAW,CAAC,iBAAiB;gBAC7B,WAAW,CAAC,kBAAkB;gBAC9B,WAAW,CAAC,0BAA0B;gBACtC,WAAW,CAAC,oBAAoB;gBAChC,WAAW,CAAC,gBAAgB,CAAC;YAE/B,+BAA+B;YAC/B,aAAa,CACX,MAAM,EACN,IAAI,eAAe,CACjB,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,IAAI,CAAC,cAAc,EACnB,WAAW,CAAC,iBAAiB,EAC7B,WAAW,CAAC,kBAAkB,EAC9B,WAAW,CAAC,0BAA0B,EACtC,WAAW,CAAC,gBAAgB,EAC5B,WAAW,CAAC,oBAAoB,EAChC,WAAW,CACZ,CACF,CAAC;YAEF,MAAM,KAAK,GAAG,IAAI,yBAAyB,CACzC,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,UAAU,EACf,QAAQ,EACR,eAAe,EACf,QAAQ,EACR,OAAO,EACP,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAClC,CAAC;YAEF,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAEvC,qBAAqB;YACrB,MAAM,UAAU,GAAG,yBAAyB,CAC1C,MAAM,CAAC,sBAAsB,EAAE,CAChC,CAAC;YACF,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE;gBAC3D,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,QAAQ;gBACR,QAAQ;gBACR,OAAO;gBACP,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;aACzC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,wCAAwC,QAAQ,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAEO,sBAAsB;QAC5B,OAAO,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACzE,CAAC;IAEO,gBAAgB;QACtB,OAAO,UAAU,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAC3E,CAAC;IAED;;OAEG;IACK,gCAAgC,CAAC,UAAsB;QAS7D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CACzB,CAAC,EACD,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;YAC7B,MAAM,CAAC,UAAU,CAAC,uBAAuB,CAAC;YAC1C,CAAC,CACJ,CAAC;QAEF,8DAA8D;QAC9D,MAAM,iBAAiB,GACrB,UAAU,CAAC,mBAAmB,KAAK,SAAS;YAC5C,UAAU,CAAC,2BAA2B,KAAK,SAAS,CAAC;QAEvD,MAAM,WAAW,GAAG,iBAAiB;YACnC,CAAC,CAAC,IAAI,CAAC,GAAG,CACN,CAAC,EACD,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC;gBACpC,MAAM,CAAC,UAAU,CAAC,2BAA2B,CAAC;gBAC9C,CAAC,CACJ;YACH,CAAC,CAAC,IAAI,CAAC;QAET,IAAI,CAAC,KAAK,CAAC,KAAK,CACd,GAAG,EAAE,CACH,6EAA6E,UAAU,iBAAiB,WAAW,8BAA8B,UAAU,CAAC,YAAY,gBAAgB,UAAU,CAAC,uBAAuB,yBAAyB,UAAU,CAAC,mBAAmB,oBAAoB,UAAU,CAAC,2BAA2B,EAAE,CAChV,CAAC;QAEF,OAAO;YACL,iBAAiB,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC;YACvD,kBAAkB,EAAE,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC;YAC5D,0BAA0B,EAAE,CAAC,EAAE,oCAAoC;YACnE,oBAAoB,EAAE,CAAC,EAAE,oCAAoC;YAC7D,gBAAgB,EAAE,CAAC,EAAE,oCAAoC;YACzD,uBAAuB,EAAE,UAAU;YACnC,2BAA2B,EAAE,WAAW;SACzC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,8BAA8B,CAAC,QAAiB;QAS9C,mCAAmC;QACnC,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAC1B,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,0BAA0B,GAAG,CAAC,CAAC;QACnC,IAAI,oBAAoB,GAAG,CAAC,CAAC;QAC7B,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,uBAAuB,GAAG,CAAC,CAAC;QAChC,IAAI,2BAA2B,GAAG,CAAC,CAAC;QAEpC,IAAI,CAAC;YACH,4DAA4D;YAC5D,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACpC,2CAA2C;gBAC3C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;oBAC5D,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBACjE,0BAA0B;wBACxB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;oBAClD,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;oBACjE,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACzD,uBAAuB;wBACrB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;oBACpD,2BAA2B;wBACzB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;iBAAM,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACpD,2CAA2C;gBAC3C,MAAM,GAAG,GAAG,QAAmC,CAAC;gBAChD,IAAI,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAgC,CAAC;oBACnD,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;oBACrD,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBAC1D,0BAA0B,GAAG,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;oBACtE,oBAAoB,GAAG,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;oBAC1D,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAClD,uBAAuB,GAAG,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;oBACrE,2BAA2B;wBACzB,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;gBACnD,CAAC;gBAED,oCAAoC;gBACpC,IAAI,GAAG,CAAC,OAAO,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACnD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAiC,CAAC;oBACtD,IAAI,OAAO,CAAC,wBAAwB,CAAC,EAAE,CAAC;wBACtC,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,EAAE,EAAE,CAAC,CAAC;wBACpE,iBAAiB;4BACf,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,WAAW,IAAI,CAAC;gCACrC,CAAC,CAAC,WAAW;gCACb,CAAC,CAAC,iBAAiB,CAAC;oBAC1B,CAAC;oBACD,IAAI,OAAO,CAAC,yBAAyB,CAAC,EAAE,CAAC;wBACvC,MAAM,WAAW,GAAG,QAAQ,CAC1B,OAAO,CAAC,yBAAyB,CAAC,EAClC,EAAE,CACH,CAAC;wBACF,kBAAkB;4BAChB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,WAAW,IAAI,CAAC;gCACrC,CAAC,CAAC,WAAW;gCACb,CAAC,CAAC,kBAAkB,CAAC;oBAC3B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,6DAA6D;YAC7D,OAAO;gBACL,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC;gBACjD,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;gBACnD,0BAA0B,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;gBACnE,oBAAoB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;gBACvD,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC;gBAC/C,uBAAuB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;gBAC7D,2BAA2B,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC;aACtE,CAAC;QACJ,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,yCAAyC;YACzC,OAAO;gBACL,iBAAiB,EAAE,CAAC;gBACpB,kBAAkB,EAAE,CAAC;gBACrB,0BAA0B,EAAE,CAAC;gBAC7B,oBAAoB,EAAE,CAAC;gBACvB,gBAAgB,EAAE,CAAC;gBACnB,uBAAuB,EAAE,CAAC;gBAC1B,2BAA2B,EAAE,CAAC;aAC/B,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAC1B,WAQC,EACD,MAA0B;QAE1B,sCAAsC;QACtC,uEAAuE;QACvE,MAAM,KAAK,GAQP;YACF,KAAK,EAAE,WAAW,CAAC,iBAAiB,IAAI,CAAC;YACzC,MAAM,EAAE,WAAW,CAAC,kBAAkB,IAAI,CAAC;YAC3C,KAAK,EAAE,WAAW,CAAC,0BAA0B,IAAI,CAAC;YAClD,OAAO,EAAE,WAAW,CAAC,oBAAoB,IAAI,CAAC;YAC9C,IAAI,EAAE,WAAW,CAAC,gBAAgB,IAAI,CAAC;YACvC,UAAU,EAAE,WAAW,CAAC,uBAAuB,IAAI,CAAC;YACpD,WAAW,EACT,WAAW,CAAC,2BAA2B,KAAK,SAAS;gBACnD,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,WAAW,CAAC,2BAA2B;SAC9C,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,KAAK,CACd,GAAG,EAAE,CACH,kEAAkE,KAAK,CAAC,UAAU,iBAAiB,KAAK,CAAC,WAAW,EAAE,CACzH,CAAC;QAEF,+DAA+D;QAC/D,MAAM,eAAe,GAAG,MAAM,EAAE,kBAAkB,EAAE,CAAC;QACrD,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,IAAI,CAAC,KAAK,CAAC,KAAK,CACd,GAAG,EAAE,CACH,gCAAgC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,wBAAwB,IAAI,CAAC,OAAO,CAAC,IAAI,gBAAgB,KAAK,CAAC,UAAU,iBAAiB,KAAK,CAAC,WAAW,EAAE,CACrN,CAAC;gBACF,eAAe,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACpE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,wCAAwC,KAAK,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,GAAG,EAAE,CACH,oFAAoF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAC1G,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,oBAAoB,CAAC,SAAmB;QAC9C,IACE,SAAS;YACT,OAAO,SAAS,KAAK,QAAQ;YAC7B,+BAA+B,IAAI,SAAS;YAC5C,OAAQ,SAAyD;iBAC9D,6BAA6B,KAAK,UAAU,EAC/C,CAAC;YACD,OAAO,SAAmB,CAAC;QAC7B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,MAA0B,EAC1B,QAAgB,EAChB,MAAe,EACf,MAAe,EACf,SAAiB,EACjB,OAAgB,EAChB,KAAe;QAEf,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;YAErC,sDAAsD;YACtD,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;gBACjE,MAAM,QAAQ,GAAI,MAAgD;qBAC/D,QAAQ,CAAC;gBACZ,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBAClC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,+CAA+C;YAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ;gBAClC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;oBAC3B,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAgB,EAAE;iBAC3D,CAAC,CAAC,QAAQ,CAAC,UAAU;gBACxB,CAAC,CAAE,MAAiB,CAAC;YAEvB,gBAAgB;YAChB,MAAM,UAAU,GAAG,yBAAyB,CAC1C,MAAM,CAAC,sBAAsB,EAAE,CAChC,CAAC;YACF,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE;gBACpD,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,MAAM,EAAE,cAAc;gBACtB,MAAM;gBACN,QAAQ;gBACR,OAAO;gBACP,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;gBACxC,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,eAAe;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC;IAChD,CAAC;IAED,yBAAyB,CAAE,eAAgC;QACzD;;;;WAIG;QACH,MAAM,YAAY,GAAG,IAAI,CAAC,OAEzB,CAAC;QACF,YAAY,CAAC,yBAAyB,EAAE,CAAC,eAAe,CAAC,CAAC;IAC5D,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC;IAC9C,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,KAAK,CAAC;IAC9C,CAAC;IAED,UAAU;QACR,IAAI,YAAY,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,SAAS,GAAI,IAAI,CAAC,OAAuC;iBAC5D,UAAU,CAAC;YACd,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;QACD,mCAAmC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACpD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;IACtB,CAAC;IAED,SAAS,CAAE,MAAe;QACxB,IAAI,WAAW,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,SAAS,GACb,IAAI,CAAC,OACN,CAAC,SAAS,CAAC;YACZ,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,QAAgB,EAChB,MAAe,EACf,MAAgB;QAEhB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAExD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAChD,QAAQ,EACR,MAAM,EACN,MAAM,CACP,CAAC;YAEF,8DAA8D;YAC9D,IAAI,aAAa,EAAE,6BAA6B,EAAE,EAAE,CAAC;gBACnD,MAAM,IAAI,CAAC,WAAW,CACpB,aAAa,EACb,QAAQ,EACR,MAAM,EACN,MAAM,EACN,SAAS,EACT,IAAI,CACL,CAAC;YACJ,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6CAA6C;YAC7C,IAAI,aAAa,EAAE,6BAA6B,EAAE,EAAE,CAAC;gBACnD,MAAM,IAAI,CAAC,WAAW,CACpB,aAAa,EACb,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,SAAS,EACT,KAAK,EACL,KAAK,CACN,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,qBAAqB;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,CAAC;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"LoggingProviderWrapper.js","sourceRoot":"","sources":["../../../src/providers/LoggingProviderWrapper.ts"],"names":[],"mappings":"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"}
@@ -88,6 +88,18 @@ export interface EphemeralSettings {
88
88
  'prompt-caching'?: 'off' | '5m' | '1h';
89
89
  /** Load tool-specific prompts from ~/.llxprt/prompts/tools/** (default: false) */
90
90
  'enable-tool-prompts'?: boolean;
91
+ /** Minimum tokens per minute before triggering failover */
92
+ tpm_threshold?: number;
93
+ /** Maximum request duration in milliseconds before timeout */
94
+ timeout_ms?: number;
95
+ /** Enable circuit breaker pattern for failing backends */
96
+ circuit_breaker_enabled?: boolean;
97
+ /** Number of failures before opening circuit */
98
+ circuit_breaker_failure_threshold?: number;
99
+ /** Time window for counting failures in milliseconds */
100
+ circuit_breaker_failure_window_ms?: number;
101
+ /** Cooldown period before retrying after circuit opens in milliseconds */
102
+ circuit_breaker_recovery_timeout_ms?: number;
91
103
  }
92
104
  /**
93
105
  * Sub-profile configuration for load balancing (NEW ARCHITECTURE)
@@ -1 +1 @@
1
- {"version":3,"file":"modelParams.js","sourceRoot":"","sources":["../../../src/types/modelParams.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8JH;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAgB;IAEhB,OAAO,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAgB;IAEhB,OAAO,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"modelParams.js","sourceRoot":"","sources":["../../../src/types/modelParams.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA4KH;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAgB;IAEhB,OAAO,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAgB;IAEhB,OAAO,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC;AACzC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vybestack/llxprt-code-core",
3
- "version": "0.7.0-nightly.251213.e273961ea",
3
+ "version": "0.7.0-nightly.251214.7c8736a50",
4
4
  "description": "LLxprt Code Core",
5
5
  "repository": {
6
6
  "type": "git",