@nexus-cortex/core 4.124.46 → 4.124.48

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 (141) hide show
  1. package/.env.defaults +49 -1
  2. package/dist/adapters/ChatCompletionsAPIAdapter.d.ts.map +1 -1
  3. package/dist/adapters/ChatCompletionsAPIAdapter.js +10 -0
  4. package/dist/adapters/ChatCompletionsAPIAdapter.js.map +1 -1
  5. package/dist/adapters/GatewayTranslationLayer.d.ts.map +1 -1
  6. package/dist/adapters/GatewayTranslationLayer.js +27 -2
  7. package/dist/adapters/GatewayTranslationLayer.js.map +1 -1
  8. package/dist/adapters/ServerSideToolDetection.d.ts.map +1 -1
  9. package/dist/adapters/ServerSideToolDetection.js +5 -1
  10. package/dist/adapters/ServerSideToolDetection.js.map +1 -1
  11. package/dist/config/SettingsSchema.js +2 -2
  12. package/dist/config/SettingsSchema.js.map +1 -1
  13. package/dist/config/effectiveConfig.d.ts.map +1 -1
  14. package/dist/config/effectiveConfig.js +5 -0
  15. package/dist/config/effectiveConfig.js.map +1 -1
  16. package/dist/models/cards/anthropic/claude-fable-5-1.d.ts +25 -0
  17. package/dist/models/cards/anthropic/claude-fable-5-1.d.ts.map +1 -0
  18. package/dist/models/cards/anthropic/claude-fable-5-1.js +44 -0
  19. package/dist/models/cards/anthropic/claude-fable-5-1.js.map +1 -0
  20. package/dist/models/cards/anthropic/claude-fable-5.d.ts.map +1 -1
  21. package/dist/models/cards/anthropic/claude-fable-5.js +4 -1
  22. package/dist/models/cards/anthropic/claude-fable-5.js.map +1 -1
  23. package/dist/models/cards/anthropic/claude-opus-4-7.d.ts.map +1 -1
  24. package/dist/models/cards/anthropic/claude-opus-4-7.js +4 -1
  25. package/dist/models/cards/anthropic/claude-opus-4-7.js.map +1 -1
  26. package/dist/models/cards/anthropic/claude-opus-4-8.d.ts.map +1 -1
  27. package/dist/models/cards/anthropic/claude-opus-4-8.js +4 -1
  28. package/dist/models/cards/anthropic/claude-opus-4-8.js.map +1 -1
  29. package/dist/models/cards/anthropic/claude-opus-5-5.d.ts +29 -0
  30. package/dist/models/cards/anthropic/claude-opus-5-5.d.ts.map +1 -0
  31. package/dist/models/cards/anthropic/claude-opus-5-5.js +48 -0
  32. package/dist/models/cards/anthropic/claude-opus-5-5.js.map +1 -0
  33. package/dist/models/cards/anthropic/claude-opus-5.d.ts.map +1 -1
  34. package/dist/models/cards/anthropic/claude-opus-5.js +4 -1
  35. package/dist/models/cards/anthropic/claude-opus-5.js.map +1 -1
  36. package/dist/models/cards/anthropic/claude-sonnet-5-5.d.ts +24 -0
  37. package/dist/models/cards/anthropic/claude-sonnet-5-5.d.ts.map +1 -0
  38. package/dist/models/cards/anthropic/claude-sonnet-5-5.js +43 -0
  39. package/dist/models/cards/anthropic/claude-sonnet-5-5.js.map +1 -0
  40. package/dist/models/cards/anthropic/claude-sonnet-5.d.ts.map +1 -1
  41. package/dist/models/cards/anthropic/claude-sonnet-5.js +4 -1
  42. package/dist/models/cards/anthropic/claude-sonnet-5.js.map +1 -1
  43. package/dist/models/cards/anthropic/index.d.ts +3 -0
  44. package/dist/models/cards/anthropic/index.d.ts.map +1 -1
  45. package/dist/models/cards/anthropic/index.js +3 -0
  46. package/dist/models/cards/anthropic/index.js.map +1 -1
  47. package/dist/models/cards/google/gemini-3-1-flash-lite.d.ts +17 -0
  48. package/dist/models/cards/google/gemini-3-1-flash-lite.d.ts.map +1 -0
  49. package/dist/models/cards/google/gemini-3-1-flash-lite.js +32 -0
  50. package/dist/models/cards/google/gemini-3-1-flash-lite.js.map +1 -0
  51. package/dist/models/cards/google/gemini-3-5-flash-lite.d.ts +16 -0
  52. package/dist/models/cards/google/gemini-3-5-flash-lite.d.ts.map +1 -0
  53. package/dist/models/cards/google/gemini-3-5-flash-lite.js +31 -0
  54. package/dist/models/cards/google/gemini-3-5-flash-lite.js.map +1 -0
  55. package/dist/models/cards/google/gemini-3-8-flash.d.ts +17 -0
  56. package/dist/models/cards/google/gemini-3-8-flash.d.ts.map +1 -0
  57. package/dist/models/cards/google/gemini-3-8-flash.js +32 -0
  58. package/dist/models/cards/google/gemini-3-8-flash.js.map +1 -0
  59. package/dist/models/cards/google/index.d.ts +3 -0
  60. package/dist/models/cards/google/index.d.ts.map +1 -1
  61. package/dist/models/cards/google/index.js +3 -0
  62. package/dist/models/cards/google/index.js.map +1 -1
  63. package/dist/models/cards/openai/gpt-5-3-codex.d.ts +17 -0
  64. package/dist/models/cards/openai/gpt-5-3-codex.d.ts.map +1 -0
  65. package/dist/models/cards/openai/gpt-5-3-codex.js +28 -0
  66. package/dist/models/cards/openai/gpt-5-3-codex.js.map +1 -0
  67. package/dist/models/cards/openai/gpt-5-4-nano.d.ts +14 -0
  68. package/dist/models/cards/openai/gpt-5-4-nano.d.ts.map +1 -0
  69. package/dist/models/cards/openai/gpt-5-4-nano.js +26 -0
  70. package/dist/models/cards/openai/gpt-5-4-nano.js.map +1 -0
  71. package/dist/models/cards/openai/gpt-5-5-pro.d.ts +17 -0
  72. package/dist/models/cards/openai/gpt-5-5-pro.d.ts.map +1 -0
  73. package/dist/models/cards/openai/gpt-5-5-pro.js +27 -0
  74. package/dist/models/cards/openai/gpt-5-5-pro.js.map +1 -0
  75. package/dist/models/cards/openai/gpt-5-6-sol.d.ts +28 -0
  76. package/dist/models/cards/openai/gpt-5-6-sol.d.ts.map +1 -0
  77. package/dist/models/cards/openai/gpt-5-6-sol.js +41 -0
  78. package/dist/models/cards/openai/gpt-5-6-sol.js.map +1 -0
  79. package/dist/models/cards/openai/index.d.ts +4 -0
  80. package/dist/models/cards/openai/index.d.ts.map +1 -1
  81. package/dist/models/cards/openai/index.js +4 -0
  82. package/dist/models/cards/openai/index.js.map +1 -1
  83. package/dist/models/cards/xai/grok-4-3-chat.d.ts +15 -0
  84. package/dist/models/cards/xai/grok-4-3-chat.d.ts.map +1 -0
  85. package/dist/models/cards/xai/grok-4-3-chat.js +28 -0
  86. package/dist/models/cards/xai/grok-4-3-chat.js.map +1 -0
  87. package/dist/models/cards/xai/grok-4-7-chat.d.ts +13 -0
  88. package/dist/models/cards/xai/grok-4-7-chat.d.ts.map +1 -0
  89. package/dist/models/cards/xai/grok-4-7-chat.js +27 -0
  90. package/dist/models/cards/xai/grok-4-7-chat.js.map +1 -0
  91. package/dist/models/cards/xai/grok-4-7.d.ts +24 -0
  92. package/dist/models/cards/xai/grok-4-7.d.ts.map +1 -0
  93. package/dist/models/cards/xai/grok-4-7.js +37 -0
  94. package/dist/models/cards/xai/grok-4-7.js.map +1 -0
  95. package/dist/models/cards/xai/grok-build-0-1-chat.d.ts +17 -0
  96. package/dist/models/cards/xai/grok-build-0-1-chat.d.ts.map +1 -0
  97. package/dist/models/cards/xai/grok-build-0-1-chat.js +31 -0
  98. package/dist/models/cards/xai/grok-build-0-1-chat.js.map +1 -0
  99. package/dist/models/cards/xai/index.d.ts +4 -0
  100. package/dist/models/cards/xai/index.d.ts.map +1 -1
  101. package/dist/models/cards/xai/index.js +4 -0
  102. package/dist/models/cards/xai/index.js.map +1 -1
  103. package/dist/models/configurators/AnthropicConfigurator.d.ts +16 -0
  104. package/dist/models/configurators/AnthropicConfigurator.d.ts.map +1 -1
  105. package/dist/models/configurators/AnthropicConfigurator.js +10 -5
  106. package/dist/models/configurators/AnthropicConfigurator.js.map +1 -1
  107. package/dist/models/configurators/GoogleConfigurator.d.ts +3 -0
  108. package/dist/models/configurators/GoogleConfigurator.d.ts.map +1 -1
  109. package/dist/models/configurators/GoogleConfigurator.js +2 -1
  110. package/dist/models/configurators/GoogleConfigurator.js.map +1 -1
  111. package/dist/models/configurators/OpenAIConfigurator.d.ts +9 -0
  112. package/dist/models/configurators/OpenAIConfigurator.d.ts.map +1 -1
  113. package/dist/models/configurators/OpenAIConfigurator.js +5 -4
  114. package/dist/models/configurators/OpenAIConfigurator.js.map +1 -1
  115. package/dist/models/configurators/OpenAIResponsesConfigurator.d.ts +5 -0
  116. package/dist/models/configurators/OpenAIResponsesConfigurator.d.ts.map +1 -1
  117. package/dist/models/configurators/OpenAIResponsesConfigurator.js +5 -4
  118. package/dist/models/configurators/OpenAIResponsesConfigurator.js.map +1 -1
  119. package/dist/models/configurators/XAIConfigurator.d.ts +7 -1
  120. package/dist/models/configurators/XAIConfigurator.d.ts.map +1 -1
  121. package/dist/models/configurators/XAIConfigurator.js +15 -3
  122. package/dist/models/configurators/XAIConfigurator.js.map +1 -1
  123. package/dist/models/registry/ModularModelRegistry.d.ts.map +1 -1
  124. package/dist/models/registry/ModularModelRegistry.js +21 -1
  125. package/dist/models/registry/ModularModelRegistry.js.map +1 -1
  126. package/dist/orchestrator/APIClient.d.ts +4 -0
  127. package/dist/orchestrator/APIClient.d.ts.map +1 -1
  128. package/dist/orchestrator/APIClient.js +132 -11
  129. package/dist/orchestrator/APIClient.js.map +1 -1
  130. package/dist/orchestrator/CortexOrchestrator.d.ts.map +1 -1
  131. package/dist/orchestrator/CortexOrchestrator.js +5 -0
  132. package/dist/orchestrator/CortexOrchestrator.js.map +1 -1
  133. package/dist/orchestrator/geminiExplicitCache.d.ts +79 -0
  134. package/dist/orchestrator/geminiExplicitCache.d.ts.map +1 -0
  135. package/dist/orchestrator/geminiExplicitCache.js +324 -0
  136. package/dist/orchestrator/geminiExplicitCache.js.map +1 -0
  137. package/dist/orchestrator/xaiChatTransport.d.ts +27 -0
  138. package/dist/orchestrator/xaiChatTransport.d.ts.map +1 -0
  139. package/dist/orchestrator/xaiChatTransport.js +33 -0
  140. package/dist/orchestrator/xaiChatTransport.js.map +1 -0
  141. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"ModularModelRegistry.js","sourceRoot":"","sources":["../../../src/models/registry/ModularModelRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModularModelRegistry.js","sourceRoot":"","sources":["../../../src/models/registry/ModularModelRegistry.ts"],"names":[],"mappings":"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"}
@@ -75,7 +75,11 @@ export declare class APIClient {
75
75
  private openaiClient?;
76
76
  private googleClient?;
77
77
  private googleGenAIClient?;
78
+ /** HB-GEMINI-EXPLICIT-CACHE (DARK): per-client cachedContents snapshots, keyed by session + head. Inert when off. */
79
+ private geminiCache;
78
80
  constructor();
81
+ /** HB-GEMINI-EXPLICIT-CACHE: best-effort DELETE of every live Gemini cachedContents snapshot (session end). */
82
+ disposeGeminiCaches(): Promise<void>;
79
83
  /**
80
84
  * Decode HTML entities in an object (recursive)
81
85
  *
@@ -1 +1 @@
1
- {"version":3,"file":"APIClient.d.ts","sourceRoot":"","sources":["../../src/orchestrator/APIClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"APIClient.d.ts","sourceRoot":"","sources":["../../src/orchestrator/APIClient.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,8 @@ import { parseHFCompletion, normalizeToolCallArguments } from '../models/hfSpace
22
22
  import { isResponsesInlineRemindersEnabled, inlineRemindersForResponses, isResponsesStopReasonEnabled, isAnthropicHistoryCacheEnabled, applyAnthropicHistoryCache, countAnthropicBreakpoints, } from './transportFixes.js';
23
23
  import { isGeminiSystemFixEnabled, isOpenAICacheKeyEnabled, isStreamUsageEnabled, applyAnthropicCacheLevers, streamFinalUsage, } from './transportCacheFixes.js';
24
24
  import { isAnthropicEffortEnabled, isGeminiToolsThinkingEnabled, anthropicOutputEffort, anthropicMaxEffortBudget, } from './transportEffortFixes.js';
25
+ import { GeminiExplicitCacheManager, isGeminiExplicitCacheEnabled, isCacheUseFailure, geminiBaseFromEndpoint, } from './geminiExplicitCache.js';
26
+ import { isXAIChatRoute, xaiChatReasoningEffort } from './xaiChatTransport.js';
25
27
  import { anthropicCredentialService, CredentialError } from '../config/AnthropicCredentialService.js';
26
28
  /**
27
29
  * Anthropic families on the adaptive-thinking-only request surface — sending
@@ -34,7 +36,11 @@ const ANTHROPIC_ADAPTIVE_THINKING_FAMILIES = new Set([
34
36
  'claude-4.7',
35
37
  'claude-4.8',
36
38
  'claude-5', // Claude Sonnet 5 (and the Claude 5 generation)
37
- 'claude-fable-5'
39
+ 'claude-fable-5',
40
+ // Opus 5.5 / Sonnet 5.5 / Fable 5.1 (2026-10-03): adaptive only — budget_tokens AND {type:'disabled'} 400
41
+ // (Sonnet 5.5's off-form is {type:'between_tools'}, never sent by the harness); omitting thinking runs adaptive.
42
+ 'claude-5.5',
43
+ 'claude-fable-5.1'
38
44
  ]);
39
45
  /**
40
46
  * API Client for making requests to AI providers
@@ -61,9 +67,18 @@ export class APIClient {
61
67
  openaiClient;
62
68
  googleClient;
63
69
  googleGenAIClient;
70
+ /** HB-GEMINI-EXPLICIT-CACHE (DARK): per-client cachedContents snapshots, keyed by session + head. Inert when off. */
71
+ geminiCache = new GeminiExplicitCacheManager({ fetchImpl: (url, init) => cortexProxyFetch(url, init) });
64
72
  constructor() {
65
73
  // Initialize clients lazily when needed
66
74
  }
75
+ /** HB-GEMINI-EXPLICIT-CACHE: best-effort DELETE of every live Gemini cachedContents snapshot (session end). */
76
+ async disposeGeminiCaches() {
77
+ try {
78
+ await this.geminiCache.disposeAll(process.env['GEMINI_API_KEY']);
79
+ }
80
+ catch { /* best-effort */ }
81
+ }
67
82
  /**
68
83
  * Decode HTML entities in an object (recursive)
69
84
  *
@@ -685,6 +700,13 @@ export class APIClient {
685
700
  .replace('/messages', '')
686
701
  .replace('/responses', '');
687
702
  const defaultHeaders = {};
703
+ // xAI chat/completions (third xAI transport, DARK — reachable only via an xAI 'chat' card / XAI_API_MODE=chat):
704
+ // `x-grok-conv-id` sticky routing, mirroring the xAI Messages path's header (xAI prompt-caching docs: the cached prefix
705
+ // lives on one backend instance). Header-only — the request body / cached prefix is unchanged.
706
+ const xaiChat = isXAIChatRoute(modelConfig);
707
+ if (xaiChat && request.conversationId) {
708
+ defaultHeaders['x-grok-conv-id'] = request.conversationId;
709
+ }
688
710
  // Reuse cached openai client when possible (matches the streaming path's
689
711
  // pre-refactor behavior; now applied uniformly).
690
712
  const client = modelConfig.provider.toLowerCase() === 'openai' && this.openaiClient
@@ -717,6 +739,8 @@ export class APIClient {
717
739
  const reasoningEffort = transformedParams.reasoningEffort
718
740
  || modelConfig.reasoning?.effort
719
741
  || 'medium';
742
+ // xAI chat: the REQUEST/action effort only (the card default is resolved by xaiChatReasoningEffort's capability gate).
743
+ const xaiRequestedEffort = transformedParams.reasoningEffort;
720
744
  delete transformedParams.reasoningEffort;
721
745
  if (process.env.DEBUG === 'true') {
722
746
  console.log(`[Effort] outbound reasoning_effort=${reasoningEffort} (source: ${request.parameters?.reasoningEffort ? 'request/pulse' : (modelConfig.reasoning?.effort ? 'card' : 'default')})`);
@@ -745,6 +769,12 @@ export class APIClient {
745
769
  ...transformedParams,
746
770
  ...(opts.stream ? { stream: true } : {}),
747
771
  };
772
+ // xAI chat: the gateway's params.model (= registry id, e.g. 'grok-4.3-chat') is spread AFTER `model:` above and would
773
+ // send the registry id; the chat cards carry the wire name in `modelId` (resolved into request.modelId). Scoped to xAI
774
+ // chat so every other chat/completions provider keeps its existing bytes (pre-existing for any chat card whose id ≠
775
+ // modelId, e.g. gpt-5.1-reasoning — reported, not changed here).
776
+ if (xaiChat)
777
+ chatRequest.model = request.modelId;
748
778
  // R19b: OpenAI chat/completions REJECTS `reasoning_effort` + tools for
749
779
  // some gpt-5 variants (`gpt-5.4`, possibly others) with
750
780
  // "400 Function tools with reasoning_effort are not supported for ... in /v1/chat/completions".
@@ -761,8 +791,19 @@ export class APIClient {
761
791
  // supported … in /v1/chat/completions. To use function tools, use /v1/responses" — CORTEX_OPENAI_TOOLS_REASONING is Responses-only.
762
792
  const dropReasoningForToolCompat = (willAttachTools && isChatCompletionsRoute && modelConfig.provider === 'openai') ||
763
793
  (hasForcedToolChoice && isChatCompletionsRoute && modelConfig.provider === 'deepseek');
764
- // Enable reasoning for OpenAI models that support it (GPT-5 family, o-series)
765
- if (modelConfig.reasoning?.supported &&
794
+ // xAI chat/completions: per-card capability gate — reasoning_effort only for cards that declare an effort
795
+ // (grok-4.3-class); grok-build-0.1 400s on it and never gets it. Sampling params are kept (xAI accepts temperature/top_p
796
+ // with reasoning; only presence/frequency penalties + stop are rejected, and this builder never adds those).
797
+ if (xaiChat) {
798
+ const xaiEffort = disableThinking ? undefined : xaiChatReasoningEffort(xaiRequestedEffort, modelConfig);
799
+ if (xaiEffort)
800
+ chatRequest.reasoning_effort = xaiEffort;
801
+ if (process.env.DEBUG === 'true' || process.env.DEBUG_THINKING === 'true') {
802
+ console.log(`[DEBUG APIClient] xAI chat reasoning_effort=${xaiEffort ?? '(not sent)'} for ${modelConfig.id}`);
803
+ }
804
+ // Enable reasoning for OpenAI models that support it (GPT-5 family, o-series)
805
+ }
806
+ else if (modelConfig.reasoning?.supported &&
766
807
  !disableThinking &&
767
808
  reasoningEffort !== 'none' &&
768
809
  !dropReasoningForToolCompat) {
@@ -1267,20 +1308,33 @@ export class APIClient {
1267
1308
  console.log(`[DEBUG APIClient] Request body tools wrapper:`, JSON.stringify(requestBody.tools[0], null, 2).substring(0, 500));
1268
1309
  }
1269
1310
  }
1270
- // Make HTTP request
1271
- const httpResponse = await cortexProxyFetch(url, {
1311
+ const postBody = (body) => cortexProxyFetch(url, {
1272
1312
  method: 'POST',
1273
1313
  headers: {
1274
1314
  'Content-Type': 'application/json',
1275
1315
  [modelConfig.api.authHeader]: apiKey
1276
1316
  },
1277
- body: JSON.stringify(requestBody)
1317
+ body: JSON.stringify(body)
1278
1318
  });
1319
+ // HB-GEMINI-EXPLICIT-CACHE (DARK, CORTEX_GEMINI_EXPLICIT_CACHE): off → no plan → the original body, unchanged.
1320
+ const cacheCtx = { sessionId: request.conversationId, modelId, apiKey, baseUrl: geminiBaseFromEndpoint(modelConfig.api.endpoint) };
1321
+ const cached = isGeminiExplicitCacheEnabled() ? await this.geminiCache.prepare(cacheCtx, 'rest', requestBody) : null;
1322
+ // Make HTTP request
1323
+ let httpResponse = await postBody(cached ? cached.body : requestBody);
1324
+ let usedCache = !!cached;
1325
+ if (cached && !httpResponse.ok && isCacheUseFailure(httpResponse.status)) {
1326
+ const errorText = await httpResponse.text();
1327
+ this.geminiCache.invalidate(cached.plan, `use_${httpResponse.status} ${errorText.replace(/\s+/g, ' ').slice(0, 160)}`, cacheCtx);
1328
+ usedCache = false;
1329
+ httpResponse = await postBody(requestBody); // the normal full request, once
1330
+ }
1279
1331
  if (!httpResponse.ok) {
1280
1332
  const errorText = await httpResponse.text();
1281
1333
  throw new Error(`Google GenerateContent API error (${httpResponse.status}): ${errorText}`);
1282
1334
  }
1283
1335
  const data = await httpResponse.json();
1336
+ if (cached && usedCache)
1337
+ this.geminiCache.recordUsage(cached.plan, data?.usageMetadata);
1284
1338
  // Return full response (same structure as SDK)
1285
1339
  // The response has: candidates, usageMetadata, modelVersion, responseId
1286
1340
  return {
@@ -2637,14 +2691,34 @@ export class APIClient {
2637
2691
  // Write full request body to file for inspection
2638
2692
  import('fs').then(fs => fs.writeFileSync('/tmp/gemini-request-' + modelId + '.json', JSON.stringify(requestBody, null, 2)));
2639
2693
  }
2640
- // Start the fetch request
2641
- const fetchPromise = cortexProxyFetch(url, {
2694
+ // HB-GEMINI-EXPLICIT-CACHE (DARK, CORTEX_GEMINI_EXPLICIT_CACHE): off → the original single fetch, unchanged.
2695
+ const geminiCacheOn = isGeminiExplicitCacheEnabled();
2696
+ const streamCache = {};
2697
+ let lastChunkUsage = undefined;
2698
+ const postStream = (body) => cortexProxyFetch(url, {
2642
2699
  method: 'POST',
2643
2700
  headers: {
2644
2701
  'Content-Type': 'application/json'
2645
2702
  },
2646
- body: JSON.stringify(requestBody)
2703
+ body: JSON.stringify(body)
2647
2704
  });
2705
+ // Start the fetch request
2706
+ const fetchPromise = !geminiCacheOn
2707
+ ? postStream(requestBody)
2708
+ : (async () => {
2709
+ const cacheCtx = { sessionId: request.conversationId, modelId, apiKey, baseUrl: geminiBaseFromEndpoint(modelConfig.api.endpoint) };
2710
+ const cached = await this.geminiCache.prepare(cacheCtx, 'rest', requestBody);
2711
+ let res = await postStream(cached ? cached.body : requestBody);
2712
+ if (cached && !res.ok && isCacheUseFailure(res.status)) {
2713
+ const errorText = await res.text();
2714
+ this.geminiCache.invalidate(cached.plan, `use_${res.status} ${errorText.replace(/\s+/g, ' ').slice(0, 160)}`, cacheCtx);
2715
+ res = await postStream(requestBody); // the normal full request, once
2716
+ }
2717
+ else if (cached) {
2718
+ streamCache.plan = cached.plan;
2719
+ }
2720
+ return res;
2721
+ })();
2648
2722
  // Shared state for collecting all chunks
2649
2723
  const allChunks = [];
2650
2724
  let fullText = '';
@@ -2700,6 +2774,9 @@ export class APIClient {
2700
2774
  if (chunk.candidates?.[0]) {
2701
2775
  lastCandidate = chunk.candidates[0];
2702
2776
  }
2777
+ // Gemini reports usageMetadata on the CHUNK, not the candidate (captured only with the cache lever on).
2778
+ if (geminiCacheOn && chunk.usageMetadata)
2779
+ lastChunkUsage = chunk.usageMetadata;
2703
2780
  // Extract parts from candidates
2704
2781
  const parts = chunk.candidates?.[0]?.content?.parts;
2705
2782
  if (parts && Array.isArray(parts)) {
@@ -2785,11 +2862,13 @@ export class APIClient {
2785
2862
  if (streamingError) {
2786
2863
  throw streamingError;
2787
2864
  }
2865
+ if (streamCache.plan)
2866
+ this.geminiCache.recordUsage(streamCache.plan, lastChunkUsage);
2788
2867
  // Return final response structure matching Google SDK format
2789
2868
  return {
2790
2869
  text: () => fullText,
2791
2870
  candidates: lastCandidate ? [lastCandidate] : [],
2792
- usageMetadata: lastCandidate?.usageMetadata
2871
+ usageMetadata: lastCandidate?.usageMetadata ?? (geminiCacheOn ? lastChunkUsage : undefined)
2793
2872
  };
2794
2873
  })();
2795
2874
  return {
@@ -2929,6 +3008,24 @@ export class APIClient {
2929
3008
  if (process.env.DEBUG === 'true') {
2930
3009
  console.log(`[DEBUG APIClient SDK] Non-streaming request for model: ${modelId}`);
2931
3010
  }
3011
+ // HB-GEMINI-EXPLICIT-CACHE (DARK, CORTEX_GEMINI_EXPLICIT_CACHE): off → the original single call, unchanged.
3012
+ if (isGeminiExplicitCacheEnabled()) {
3013
+ const cacheCtx = { sessionId: request.conversationId, modelId, apiKey: process.env['GEMINI_API_KEY'] ?? '' };
3014
+ const cached = await this.geminiCache.prepare(cacheCtx, 'sdk', sdkRequest);
3015
+ if (cached) {
3016
+ try {
3017
+ const r = await this.googleGenAIClient.models.generateContent(cached.body);
3018
+ this.geminiCache.recordUsage(cached.plan, r?.usageMetadata);
3019
+ return { data: r, status: 200, headers: {} };
3020
+ }
3021
+ catch (e) {
3022
+ if (!isCacheUseFailure(e?.status))
3023
+ throw e;
3024
+ this.geminiCache.invalidate(cached.plan, `use_${e.status} ${String(e?.message ?? '').slice(0, 160)}`, cacheCtx);
3025
+ // fall through: the normal full request, once
3026
+ }
3027
+ }
3028
+ }
2932
3029
  const response = await this.googleGenAIClient.models.generateContent(sdkRequest);
2933
3030
  return {
2934
3031
  data: response,
@@ -3054,10 +3151,32 @@ export class APIClient {
3054
3151
  const streamCompletePromise = new Promise((resolve) => {
3055
3152
  resolveComplete = resolve;
3056
3153
  });
3154
+ // HB-GEMINI-EXPLICIT-CACHE (DARK, CORTEX_GEMINI_EXPLICIT_CACHE): off → the original single call, unchanged.
3155
+ const sdkCacheOn = isGeminiExplicitCacheEnabled();
3156
+ const sdkStream = {};
3157
+ const openSdkStream = async (client) => {
3158
+ if (!sdkCacheOn)
3159
+ return client.models.generateContentStream(sdkRequest);
3160
+ const cacheCtx = { sessionId: request.conversationId, modelId, apiKey: process.env['GEMINI_API_KEY'] ?? '' };
3161
+ const cached = await this.geminiCache.prepare(cacheCtx, 'sdk', sdkRequest);
3162
+ if (cached) {
3163
+ try {
3164
+ const s = await client.models.generateContentStream(cached.body);
3165
+ sdkStream.plan = cached.plan;
3166
+ return s;
3167
+ }
3168
+ catch (e) {
3169
+ if (!isCacheUseFailure(e?.status))
3170
+ throw e;
3171
+ this.geminiCache.invalidate(cached.plan, `use_${e.status} ${String(e?.message ?? '').slice(0, 160)}`, cacheCtx);
3172
+ }
3173
+ }
3174
+ return client.models.generateContentStream(sdkRequest); // the normal full request (once, on a cache failure)
3175
+ };
3057
3176
  const chunks = async function* (client) {
3058
3177
  try {
3059
3178
  // Stream using new SDK (SINGLE API call)
3060
- const stream = await client.models.generateContentStream(sdkRequest);
3179
+ const stream = await openSdkStream(client);
3061
3180
  if (process.env.DEBUG === 'true') {
3062
3181
  console.log(`[DEBUG APIClient SDK] Stream started for model: ${modelId}`);
3063
3182
  }
@@ -3215,6 +3334,8 @@ export class APIClient {
3215
3334
  const finalMessage = (async () => {
3216
3335
  // Wait for chunks generator to complete
3217
3336
  await streamCompletePromise;
3337
+ if (sdkStream.plan)
3338
+ this.geminiCache.recordUsage(sdkStream.plan, lastChunk?.usageMetadata);
3218
3339
  // Return final response structure matching Google SDK format
3219
3340
  // This matches the structure expected by the orchestrator
3220
3341
  return {