@stackbilt/llm-providers 1.17.1 → 1.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +61 -3
  3. package/dist/canonical.d.ts +1 -0
  4. package/dist/canonical.d.ts.map +1 -1
  5. package/dist/canonical.js +1 -0
  6. package/dist/canonical.js.map +1 -1
  7. package/dist/errors.d.ts +0 -0
  8. package/dist/errors.d.ts.map +0 -0
  9. package/dist/errors.js +0 -0
  10. package/dist/errors.js.map +0 -0
  11. package/dist/factory.d.ts +0 -0
  12. package/dist/factory.d.ts.map +1 -1
  13. package/dist/factory.js +147 -5
  14. package/dist/factory.js.map +1 -1
  15. package/dist/image/index.d.ts +0 -0
  16. package/dist/image/index.d.ts.map +0 -0
  17. package/dist/image/index.js +0 -0
  18. package/dist/image/index.js.map +0 -0
  19. package/dist/image/provider.d.ts +0 -0
  20. package/dist/image/provider.d.ts.map +0 -0
  21. package/dist/image/provider.js +0 -0
  22. package/dist/image/provider.js.map +0 -0
  23. package/dist/image/types.d.ts +0 -0
  24. package/dist/image/types.d.ts.map +0 -0
  25. package/dist/image/types.js +0 -0
  26. package/dist/image/types.js.map +0 -0
  27. package/dist/index.d.ts +2 -2
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +0 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/model-catalog.d.ts +0 -0
  32. package/dist/model-catalog.d.ts.map +0 -0
  33. package/dist/model-catalog.js +0 -0
  34. package/dist/model-catalog.js.map +0 -0
  35. package/dist/providers/anthropic.d.ts +0 -0
  36. package/dist/providers/anthropic.d.ts.map +1 -1
  37. package/dist/providers/anthropic.js +9 -0
  38. package/dist/providers/anthropic.js.map +1 -1
  39. package/dist/providers/base.d.ts +0 -0
  40. package/dist/providers/base.d.ts.map +0 -0
  41. package/dist/providers/base.js +0 -0
  42. package/dist/providers/base.js.map +0 -0
  43. package/dist/providers/cerebras.d.ts +0 -0
  44. package/dist/providers/cerebras.d.ts.map +1 -1
  45. package/dist/providers/cerebras.js +12 -1
  46. package/dist/providers/cerebras.js.map +1 -1
  47. package/dist/providers/cloudflare.d.ts +3 -0
  48. package/dist/providers/cloudflare.d.ts.map +1 -1
  49. package/dist/providers/cloudflare.js +92 -3
  50. package/dist/providers/cloudflare.js.map +1 -1
  51. package/dist/providers/groq.d.ts +0 -0
  52. package/dist/providers/groq.d.ts.map +1 -1
  53. package/dist/providers/groq.js +6 -1
  54. package/dist/providers/groq.js.map +1 -1
  55. package/dist/providers/openai.d.ts +0 -0
  56. package/dist/providers/openai.d.ts.map +1 -1
  57. package/dist/providers/openai.js +8 -2
  58. package/dist/providers/openai.js.map +1 -1
  59. package/dist/types.d.ts +31 -0
  60. package/dist/types.d.ts.map +1 -1
  61. package/dist/types.js +0 -0
  62. package/dist/types.js.map +0 -0
  63. package/dist/utils/circuit-breaker.d.ts +0 -0
  64. package/dist/utils/circuit-breaker.d.ts.map +0 -0
  65. package/dist/utils/circuit-breaker.js +0 -0
  66. package/dist/utils/circuit-breaker.js.map +0 -0
  67. package/dist/utils/cost-tracker.d.ts +0 -0
  68. package/dist/utils/cost-tracker.d.ts.map +0 -0
  69. package/dist/utils/cost-tracker.js +0 -0
  70. package/dist/utils/cost-tracker.js.map +0 -0
  71. package/dist/utils/credit-ledger.d.ts +0 -0
  72. package/dist/utils/credit-ledger.d.ts.map +0 -0
  73. package/dist/utils/credit-ledger.js +0 -0
  74. package/dist/utils/credit-ledger.js.map +0 -0
  75. package/dist/utils/exhaustion.d.ts +0 -0
  76. package/dist/utils/exhaustion.d.ts.map +0 -0
  77. package/dist/utils/exhaustion.js +0 -0
  78. package/dist/utils/exhaustion.js.map +0 -0
  79. package/dist/utils/hooks.d.ts +13 -1
  80. package/dist/utils/hooks.d.ts.map +1 -1
  81. package/dist/utils/hooks.js +1 -1
  82. package/dist/utils/hooks.js.map +1 -1
  83. package/dist/utils/latency-histogram.d.ts +0 -0
  84. package/dist/utils/latency-histogram.d.ts.map +0 -0
  85. package/dist/utils/latency-histogram.js +0 -0
  86. package/dist/utils/latency-histogram.js.map +0 -0
  87. package/dist/utils/logger.d.ts +0 -0
  88. package/dist/utils/logger.d.ts.map +0 -0
  89. package/dist/utils/logger.js +0 -0
  90. package/dist/utils/logger.js.map +0 -0
  91. package/dist/utils/reasoning.d.ts +7 -0
  92. package/dist/utils/reasoning.d.ts.map +1 -0
  93. package/dist/utils/reasoning.js +22 -0
  94. package/dist/utils/reasoning.js.map +1 -0
  95. package/dist/utils/retry.d.ts +0 -0
  96. package/dist/utils/retry.d.ts.map +0 -0
  97. package/dist/utils/retry.js +0 -0
  98. package/dist/utils/retry.js.map +0 -0
  99. package/dist/utils/schema-canary.d.ts +0 -0
  100. package/dist/utils/schema-canary.d.ts.map +0 -0
  101. package/dist/utils/schema-canary.js +0 -0
  102. package/dist/utils/schema-canary.js.map +0 -0
  103. package/dist/utils/schema-validator.d.ts +0 -0
  104. package/dist/utils/schema-validator.d.ts.map +0 -0
  105. package/dist/utils/schema-validator.js +0 -0
  106. package/dist/utils/schema-validator.js.map +0 -0
  107. package/dist/version.d.ts +1 -1
  108. package/dist/version.js +1 -1
  109. package/package.json +2 -2
@@ -8,7 +8,7 @@
8
8
  * This replaces string-based logger calls for telemetry. The Logger
9
9
  * interface stays for debug output; hooks are for structured observability.
10
10
  */
11
- import type { CircuitBreakerState, ProviderBalance, QuotaCheckInput, QuotaCheckResult, TokenUsage } from '../types.js';
11
+ import type { CacheObservability, CircuitBreakerState, ProviderBalance, QuotaCheckInput, QuotaCheckResult, TokenUsage } from '../types.js';
12
12
  export interface RequestStartEvent {
13
13
  provider: string;
14
14
  model: string;
@@ -24,6 +24,17 @@ export interface RequestEndEvent {
24
24
  durationMs: number;
25
25
  usage: TokenUsage;
26
26
  finishReason?: string;
27
+ cache?: CacheObservability;
28
+ timestamp: number;
29
+ }
30
+ export interface CacheEvent {
31
+ provider?: string;
32
+ model?: string;
33
+ requestId?: string;
34
+ tenantId?: string;
35
+ layer: 'provider-prefix' | 'ai-gateway-response' | 'factory-response';
36
+ status: string;
37
+ cache: CacheObservability;
27
38
  timestamp: number;
28
39
  }
29
40
  export interface RequestErrorEvent {
@@ -102,6 +113,7 @@ export interface SchemaDriftEvent {
102
113
  export interface ObservabilityHooks {
103
114
  onRequestStart?(event: RequestStartEvent): void;
104
115
  onRequestEnd?(event: RequestEndEvent): void;
116
+ onCache?(event: CacheEvent): void;
105
117
  onRequestError?(event: RequestErrorEvent): void;
106
118
  onRetry?(event: RetryEvent): void;
107
119
  onFallback?(event: FallbackEvent): void;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/utils/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/utils/hooks.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ export const noopHooks = {};
16
16
  */
17
17
  export function composeHooks(...implementations) {
18
18
  const methods = [
19
- 'onRequestStart', 'onRequestEnd', 'onRequestError',
19
+ 'onRequestStart', 'onRequestEnd', 'onCache', 'onRequestError',
20
20
  'onRetry', 'onFallback', 'onCircuitStateChange',
21
21
  'onQuotaExhausted', 'onBudgetThreshold', 'onQuotaCheck',
22
22
  'onQuotaDenied', 'onProviderBalance', 'onSchemaDrift',
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/utils/hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAoIH,8BAA8B;AAC9B,MAAM,CAAC,MAAM,SAAS,GAAuB,EAAE,CAAC;AAEhD;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAAG,eAAqC;IACnE,MAAM,OAAO,GAAG;QACd,gBAAgB,EAAE,cAAc,EAAE,gBAAgB;QAClD,SAAS,EAAE,YAAY,EAAE,sBAAsB;QAC/C,kBAAkB,EAAE,mBAAmB,EAAE,cAAc;QACvD,eAAe,EAAE,mBAAmB,EAAE,eAAe;KAC7C,CAAC;IAEX,MAAM,QAAQ,GAAuB,EAAE,CAAC;IAExC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,eAAe;aAC7B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACzB,MAAM,CAAC,CAAC,EAAE,EAAgC,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC;QAE5D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,QAAqC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAc,EAAE,EAAE;gBAClE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC/B,IAAI,CAAC;wBACH,OAAO,CAAC,KAAc,CAAC,CAAC;oBAC1B,CAAC;oBAAC,MAAM,CAAC;wBACP,iDAAiD;oBACnD,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/utils/hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAkJH,8BAA8B;AAC9B,MAAM,CAAC,MAAM,SAAS,GAAuB,EAAE,CAAC;AAEhD;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAAG,eAAqC;IACnE,MAAM,OAAO,GAAG;QACd,gBAAgB,EAAE,cAAc,EAAE,SAAS,EAAE,gBAAgB;QAC7D,SAAS,EAAE,YAAY,EAAE,sBAAsB;QAC/C,kBAAkB,EAAE,mBAAmB,EAAE,cAAc;QACvD,eAAe,EAAE,mBAAmB,EAAE,eAAe;KAC7C,CAAC;IAEX,MAAM,QAAQ,GAAuB,EAAE,CAAC;IAExC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,eAAe;aAC7B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACzB,MAAM,CAAC,CAAC,EAAE,EAAgC,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC;QAE5D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,QAAqC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAc,EAAE,EAAE;gBAClE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC/B,IAAI,CAAC;wBACH,OAAO,CAAC,KAAc,CAAC,CAAC;oBAC1B,CAAC;oBAAC,MAAM,CAAC;wBACP,iDAAiD;oBACnD,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,7 @@
1
+ export interface ReasoningExtraction {
2
+ message: string;
3
+ reasoning?: string;
4
+ }
5
+ export declare function extractThinkBlocks(content: string): ReasoningExtraction;
6
+ export declare function joinReasoning(parts: Array<string | null | undefined>): string | undefined;
7
+ //# sourceMappingURL=reasoning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning.d.ts","sourceRoot":"","sources":["../../src/utils/reasoning.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,CAcvE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAMzF"}
@@ -0,0 +1,22 @@
1
+ export function extractThinkBlocks(content) {
2
+ const reasoning = [];
3
+ const message = content
4
+ .replace(/<think>([\s\S]*?)<\/think>/gi, (_match, inner) => {
5
+ const trimmed = inner.trim();
6
+ if (trimmed.length > 0)
7
+ reasoning.push(trimmed);
8
+ return '';
9
+ })
10
+ .trim();
11
+ return {
12
+ message,
13
+ reasoning: joinReasoning(reasoning),
14
+ };
15
+ }
16
+ export function joinReasoning(parts) {
17
+ const normalized = parts
18
+ .map(part => part?.trim())
19
+ .filter((part) => Boolean(part));
20
+ return normalized.length > 0 ? normalized.join('\n\n') : undefined;
21
+ }
22
+ //# sourceMappingURL=reasoning.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning.js","sourceRoot":"","sources":["../../src/utils/reasoning.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,8BAA8B,EAAE,CAAC,MAAM,EAAE,KAAa,EAAE,EAAE;QACjE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;SACD,IAAI,EAAE,CAAC;IAEV,OAAO;QACL,OAAO;QACP,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC;KACpC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAuC;IACnE,MAAM,UAAU,GAAG,KAAK;SACrB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;SACzB,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAEnD,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "1.17.1";
1
+ export declare const VERSION = "1.18.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // Generated by scripts/sync-version.mjs; do not edit manually.
2
- export const VERSION = '1.17.1';
2
+ export const VERSION = '1.18.0';
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stackbilt/llm-providers",
3
- "version": "1.17.1",
3
+ "version": "1.18.0",
4
4
  "description": "Multi-LLM failover with circuit breakers, cost tracking, and intelligent retry. Cloudflare Workers native.",
5
5
  "author": "Stackbilt <admin@stackbilt.dev>",
6
6
  "license": "Apache-2.0",
@@ -56,6 +56,6 @@
56
56
  },
57
57
  "publishConfig": {
58
58
  "access": "public",
59
- "provenance": true
59
+ "provenance": false
60
60
  }
61
61
  }