@vybestack/llxprt-code-core 0.4.8 → 0.5.0-nightly.251102.e5b51aa3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/prompt-config/defaults/default-prompts.json +4 -17
- package/dist/src/auth/precedence.d.ts +69 -9
- package/dist/src/auth/precedence.js +467 -69
- package/dist/src/auth/precedence.js.map +1 -1
- package/dist/src/auth/types.d.ts +2 -2
- package/dist/src/config/config.d.ts +15 -1
- package/dist/src/config/config.js +118 -6
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/index.d.ts +6 -0
- package/dist/src/config/index.js +5 -0
- package/dist/src/config/index.js.map +1 -1
- package/dist/src/config/profileManager.d.ts +23 -3
- package/dist/src/config/profileManager.js +54 -7
- package/dist/src/config/profileManager.js.map +1 -1
- package/dist/src/config/subagentManager.d.ts +96 -0
- package/dist/src/config/subagentManager.js +371 -0
- package/dist/src/config/subagentManager.js.map +1 -0
- package/dist/src/config/types.d.ts +18 -0
- package/dist/src/config/types.js +3 -0
- package/dist/src/config/types.js.map +1 -0
- package/dist/src/core/client.d.ts +27 -7
- package/dist/src/core/client.js +231 -55
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/contentGenerator.d.ts +3 -1
- package/dist/src/core/contentGenerator.js +3 -0
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +1 -5
- package/dist/src/core/coreToolScheduler.js +95 -23
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/geminiChat.d.ts +42 -12
- package/dist/src/core/geminiChat.js +405 -205
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/nonInteractiveToolExecutor.d.ts +3 -2
- package/dist/src/core/nonInteractiveToolExecutor.js +94 -10
- package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
- package/dist/src/core/subagent.d.ts +86 -7
- package/dist/src/core/subagent.js +809 -79
- package/dist/src/core/subagent.js.map +1 -1
- package/dist/src/core/subagentOrchestrator.d.ts +73 -0
- package/dist/src/core/subagentOrchestrator.js +387 -0
- package/dist/src/core/subagentOrchestrator.js.map +1 -0
- package/dist/src/core/subagentScheduler.d.ts +16 -0
- package/dist/src/core/subagentScheduler.js +7 -0
- package/dist/src/core/subagentScheduler.js.map +1 -0
- package/dist/src/core/turn.d.ts +5 -1
- package/dist/src/core/turn.js +5 -1
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/hooks/tool-render-suppression-hook.js +6 -1
- package/dist/src/hooks/tool-render-suppression-hook.js.map +1 -1
- package/dist/src/ide/ideContext.d.ts +32 -32
- package/dist/src/index.d.ts +19 -1
- package/dist/src/index.js +15 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/interfaces/index.d.ts +1 -0
- package/dist/src/interfaces/index.js +4 -0
- package/dist/src/interfaces/index.js.map +1 -0
- package/dist/src/interfaces/nodejs-error.interface.d.ts +4 -0
- package/dist/src/interfaces/nodejs-error.interface.js +2 -0
- package/dist/src/interfaces/nodejs-error.interface.js.map +1 -0
- package/dist/src/parsers/TextToolCallParser.d.ts +17 -1
- package/dist/src/parsers/TextToolCallParser.js +542 -148
- package/dist/src/parsers/TextToolCallParser.js.map +1 -1
- package/dist/src/prompt-config/defaults/core.md +15 -0
- package/dist/src/prompt-config/defaults/providers/gemini/core.md +203 -119
- package/dist/src/prompt-config/defaults/tool-defaults.js +2 -0
- package/dist/src/prompt-config/defaults/tool-defaults.js.map +1 -1
- package/dist/src/prompt-config/defaults/tools/list-subagents.md +7 -0
- package/dist/src/prompt-config/defaults/tools/task.md +8 -0
- package/dist/src/providers/BaseProvider.d.ts +115 -30
- package/dist/src/providers/BaseProvider.js +445 -109
- package/dist/src/providers/BaseProvider.js.map +1 -1
- package/dist/src/providers/IProvider.d.ts +50 -18
- package/dist/src/providers/LoggingProviderWrapper.d.ts +60 -16
- package/dist/src/providers/LoggingProviderWrapper.js +213 -60
- package/dist/src/providers/LoggingProviderWrapper.js.map +1 -1
- package/dist/src/providers/ProviderManager.d.ts +73 -2
- package/dist/src/providers/ProviderManager.js +492 -40
- package/dist/src/providers/ProviderManager.js.map +1 -1
- package/dist/src/providers/anthropic/AnthropicProvider.d.ts +35 -38
- package/dist/src/providers/anthropic/AnthropicProvider.js +222 -227
- package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
- package/dist/src/providers/errors.d.ts +86 -0
- package/dist/src/providers/errors.js +89 -0
- package/dist/src/providers/errors.js.map +1 -1
- package/dist/src/providers/gemini/GeminiProvider.d.ts +101 -41
- package/dist/src/providers/gemini/GeminiProvider.js +386 -311
- package/dist/src/providers/gemini/GeminiProvider.js.map +1 -1
- package/dist/src/providers/openai/ConversationCache.d.ts +5 -3
- package/dist/src/providers/openai/ConversationCache.js +93 -32
- package/dist/src/providers/openai/ConversationCache.js.map +1 -1
- package/dist/src/providers/openai/OpenAIProvider.d.ts +82 -42
- package/dist/src/providers/openai/OpenAIProvider.js +391 -536
- package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
- package/dist/src/providers/openai/getOpenAIProviderInfo.d.ts +1 -1
- package/dist/src/providers/openai/getOpenAIProviderInfo.js +52 -22
- package/dist/src/providers/openai/getOpenAIProviderInfo.js.map +1 -1
- package/dist/src/providers/openai/openaiRequestParams.d.ts +7 -0
- package/dist/src/providers/openai/openaiRequestParams.js +66 -0
- package/dist/src/providers/openai/openaiRequestParams.js.map +1 -0
- package/dist/src/providers/openai-responses/OpenAIResponsesProvider.d.ts +6 -33
- package/dist/src/providers/openai-responses/OpenAIResponsesProvider.js +84 -183
- package/dist/src/providers/openai-responses/OpenAIResponsesProvider.js.map +1 -1
- package/dist/src/providers/types/providerRuntime.d.ts +17 -0
- package/dist/src/providers/types/providerRuntime.js +7 -0
- package/dist/src/providers/types/providerRuntime.js.map +1 -0
- package/dist/src/providers/utils/authToken.d.ts +12 -0
- package/dist/src/providers/utils/authToken.js +17 -0
- package/dist/src/providers/utils/authToken.js.map +1 -0
- package/dist/src/providers/utils/userMemory.d.ts +8 -0
- package/dist/src/providers/utils/userMemory.js +34 -0
- package/dist/src/providers/utils/userMemory.js.map +1 -0
- package/dist/src/runtime/AgentRuntimeContext.d.ts +213 -0
- package/dist/src/runtime/AgentRuntimeContext.js +17 -0
- package/dist/src/runtime/AgentRuntimeContext.js.map +1 -0
- package/dist/src/runtime/AgentRuntimeLoader.d.ts +47 -0
- package/dist/src/runtime/AgentRuntimeLoader.js +122 -0
- package/dist/src/runtime/AgentRuntimeLoader.js.map +1 -0
- package/dist/src/runtime/AgentRuntimeState.d.ts +232 -0
- package/dist/src/runtime/AgentRuntimeState.js +439 -0
- package/dist/src/runtime/AgentRuntimeState.js.map +1 -0
- package/dist/src/runtime/RuntimeInvocationContext.d.ts +51 -0
- package/dist/src/runtime/RuntimeInvocationContext.js +52 -0
- package/dist/src/runtime/RuntimeInvocationContext.js.map +1 -0
- package/dist/src/runtime/createAgentRuntimeContext.d.ts +7 -0
- package/dist/src/runtime/createAgentRuntimeContext.js +65 -0
- package/dist/src/runtime/createAgentRuntimeContext.js.map +1 -0
- package/dist/src/runtime/index.d.ts +13 -0
- package/dist/src/runtime/index.js +14 -0
- package/dist/src/runtime/index.js.map +1 -0
- package/dist/src/runtime/providerRuntimeContext.d.ts +30 -0
- package/dist/src/runtime/providerRuntimeContext.js +70 -0
- package/dist/src/runtime/providerRuntimeContext.js.map +1 -0
- package/dist/src/runtime/runtimeAdapters.d.ts +22 -0
- package/dist/src/runtime/runtimeAdapters.js +81 -0
- package/dist/src/runtime/runtimeAdapters.js.map +1 -0
- package/dist/src/runtime/runtimeStateFactory.d.ts +21 -0
- package/dist/src/runtime/runtimeStateFactory.js +104 -0
- package/dist/src/runtime/runtimeStateFactory.js.map +1 -0
- package/dist/src/services/todo-context-tracker.d.ts +10 -8
- package/dist/src/services/todo-context-tracker.js +26 -10
- package/dist/src/services/todo-context-tracker.js.map +1 -1
- package/dist/src/services/tool-call-tracker-service.d.ts +11 -7
- package/dist/src/services/tool-call-tracker-service.js +89 -29
- package/dist/src/services/tool-call-tracker-service.js.map +1 -1
- package/dist/src/settings/SettingsService.d.ts +4 -0
- package/dist/src/settings/SettingsService.js +65 -2
- package/dist/src/settings/SettingsService.js.map +1 -1
- package/dist/src/settings/settingsServiceInstance.d.ts +6 -1
- package/dist/src/settings/settingsServiceInstance.js +28 -8
- package/dist/src/settings/settingsServiceInstance.js.map +1 -1
- package/dist/src/telemetry/loggers.d.ts +5 -1
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/loggers.test.circular.js +4 -0
- package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
- package/dist/src/telemetry/metrics.d.ts +3 -1
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/types.d.ts +1 -0
- package/dist/src/telemetry/types.js +3 -0
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/test-utils/index.d.ts +2 -0
- package/dist/src/test-utils/index.js +2 -0
- package/dist/src/test-utils/index.js.map +1 -1
- package/dist/src/test-utils/mockWorkspaceContext.d.ts +0 -3
- package/dist/src/test-utils/mockWorkspaceContext.js +3 -4
- package/dist/src/test-utils/mockWorkspaceContext.js.map +1 -1
- package/dist/src/test-utils/providerCallOptions.d.ts +43 -0
- package/dist/src/test-utils/providerCallOptions.js +137 -0
- package/dist/src/test-utils/providerCallOptions.js.map +1 -0
- package/dist/src/test-utils/runtime.d.ts +92 -0
- package/dist/src/test-utils/runtime.js +226 -0
- package/dist/src/test-utils/runtime.js.map +1 -0
- package/dist/src/test-utils/tools.d.ts +4 -4
- package/dist/src/test-utils/tools.js +20 -10
- package/dist/src/test-utils/tools.js.map +1 -1
- package/dist/src/tools/list-subagents.d.ts +31 -0
- package/dist/src/tools/list-subagents.js +109 -0
- package/dist/src/tools/list-subagents.js.map +1 -0
- package/dist/src/tools/task.d.ts +87 -0
- package/dist/src/tools/task.js +427 -0
- package/dist/src/tools/task.js.map +1 -0
- package/dist/src/tools/todo-read.js +1 -1
- package/dist/src/tools/todo-read.js.map +1 -1
- package/dist/src/tools/todo-store.js +4 -2
- package/dist/src/tools/todo-store.js.map +1 -1
- package/dist/src/tools/todo-write.js +4 -2
- package/dist/src/tools/todo-write.js.map +1 -1
- package/dist/src/tools/tool-error.d.ts +1 -0
- package/dist/src/tools/tool-error.js +1 -0
- package/dist/src/tools/tool-error.js.map +1 -1
- package/dist/src/tools/tool-registry.d.ts +2 -0
- package/dist/src/tools/tool-registry.js +46 -21
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/types/modelParams.d.ts +4 -0
- package/dist/src/utils/editor.js +10 -8
- package/dist/src/utils/editor.js.map +1 -1
- package/dist/src/utils/gitIgnoreParser.js +15 -3
- package/dist/src/utils/gitIgnoreParser.js.map +1 -1
- package/package.json +1 -1
- package/dist/src/prompt-config/defaults/providers/anthropic/core.md +0 -97
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/glob.md +0 -34
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/list-directory.md +0 -11
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/read-file.md +0 -14
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/read-many-files.md +0 -31
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/replace.md +0 -41
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/run-shell-command.md +0 -32
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/save-memory.md +0 -35
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/search-file-content.md +0 -44
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/todo-write.md +0 -45
- package/dist/src/prompt-config/defaults/providers/anthropic/tools/write-file.md +0 -11
- package/dist/src/prompt-config/defaults/providers/openai/core.md +0 -97
- package/dist/src/prompt-config/defaults/providers/openai/tools/todo-pause.md +0 -28
- package/dist/src/prompt-config/defaults/providers/openai/tools/todo-read.md +0 -5
- package/dist/src/prompt-config/defaults/providers/openai/tools/todo-write.md +0 -45
|
@@ -8,6 +8,7 @@ import { logConversationRequest, logConversationResponse, logTokenUsage, } from
|
|
|
8
8
|
import { ConversationRequestEvent, ConversationResponseEvent, TokenUsageEvent, } from '../telemetry/types.js';
|
|
9
9
|
import { getConversationFileWriter } from '../storage/ConversationFileWriter.js';
|
|
10
10
|
import { ProviderPerformanceTracker } from './logging/ProviderPerformanceTracker.js';
|
|
11
|
+
import { MissingProviderRuntimeError } from './errors.js';
|
|
11
12
|
// Simple redactor that works with RedactionConfig
|
|
12
13
|
class ConfigBasedRedactor {
|
|
13
14
|
redactionConfig;
|
|
@@ -105,23 +106,53 @@ class ConfigBasedRedactor {
|
|
|
105
106
|
}
|
|
106
107
|
/**
|
|
107
108
|
* @plan PLAN-20250909-TOKTRACK.P05
|
|
109
|
+
* @plan:PLAN-20251023-STATELESS-HARDENING.P08
|
|
110
|
+
* @requirement:REQ-SP4-004
|
|
111
|
+
* @requirement:REQ-SP4-005
|
|
112
|
+
* @pseudocode provider-runtime-handling.md lines 14-16
|
|
113
|
+
* @pseudocode logging-wrapper-adjustments.md lines 11-15
|
|
114
|
+
*
|
|
108
115
|
* A minimal logging wrapper that acts as a transparent passthrough to the wrapped provider.
|
|
109
116
|
* Only intercepts generateChatCompletion to log conversations while forwarding all other
|
|
110
117
|
* methods directly to the wrapped provider without modification.
|
|
118
|
+
*
|
|
119
|
+
* In stateless hardening mode (P08), this wrapper:
|
|
120
|
+
* - Drops constructor-captured config/settings
|
|
121
|
+
* - Relies on per-call runtime metadata
|
|
122
|
+
* - Implements runtime context push/pop (via runtimeContextResolver)
|
|
123
|
+
* - Guards against missing runtime with MissingProviderRuntimeError
|
|
111
124
|
*/
|
|
112
125
|
export class LoggingProviderWrapper {
|
|
113
126
|
wrapped;
|
|
114
|
-
config;
|
|
115
127
|
conversationId;
|
|
116
128
|
turnNumber = 0;
|
|
117
|
-
redactor;
|
|
129
|
+
redactor = null;
|
|
118
130
|
performanceTracker;
|
|
119
|
-
|
|
131
|
+
runtimeContextResolver;
|
|
132
|
+
statelessRuntimeMetadata = null;
|
|
133
|
+
optionsNormalizer = null;
|
|
134
|
+
/**
|
|
135
|
+
* @plan:PLAN-20251023-STATELESS-HARDENING.P08
|
|
136
|
+
* @requirement:REQ-SP4-004
|
|
137
|
+
* Constructor no longer captures config - it's provided per-call via options.
|
|
138
|
+
*/
|
|
139
|
+
constructor(wrapped, configOrRedactor, legacyRedactor) {
|
|
120
140
|
this.wrapped = wrapped;
|
|
121
|
-
this.config = config;
|
|
122
141
|
this.conversationId = this.generateConversationId();
|
|
123
|
-
|
|
124
|
-
|
|
142
|
+
// Handle legacy constructor signature for backward compatibility
|
|
143
|
+
// New usage should NOT pass config here - config comes per-call
|
|
144
|
+
if (configOrRedactor && 'redactMessage' in configOrRedactor) {
|
|
145
|
+
this.redactor = configOrRedactor;
|
|
146
|
+
}
|
|
147
|
+
else if (configOrRedactor &&
|
|
148
|
+
'getConversationLoggingEnabled' in configOrRedactor) {
|
|
149
|
+
// Legacy usage - create redactor from config
|
|
150
|
+
const config = configOrRedactor;
|
|
151
|
+
this.redactor = new ConfigBasedRedactor(config.getRedactionConfig());
|
|
152
|
+
}
|
|
153
|
+
if (legacyRedactor) {
|
|
154
|
+
this.redactor = legacyRedactor;
|
|
155
|
+
}
|
|
125
156
|
this.performanceTracker = new ProviderPerformanceTracker(wrapped.name);
|
|
126
157
|
// Set throttle tracker callback on the wrapped provider if it supports it
|
|
127
158
|
if ('setThrottleTracker' in wrapped &&
|
|
@@ -132,8 +163,32 @@ export class LoggingProviderWrapper {
|
|
|
132
163
|
});
|
|
133
164
|
}
|
|
134
165
|
}
|
|
166
|
+
/* @plan:PLAN-20251023-STATELESS-HARDENING.P06 */
|
|
167
|
+
/* @requirement:REQ-SP4-004 */
|
|
168
|
+
attachStatelessRuntimeMetadata(metadata) {
|
|
169
|
+
this.statelessRuntimeMetadata = { ...metadata };
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* @plan:PLAN-20251023-STATELESS-HARDENING.P05
|
|
173
|
+
* @requirement:REQ-SP4-001
|
|
174
|
+
* @pseudocode provider-runtime-handling.md lines 10-15
|
|
175
|
+
* Registers a resolver so runtime context is injected per invocation.
|
|
176
|
+
*/
|
|
177
|
+
setRuntimeContextResolver(resolver) {
|
|
178
|
+
this.runtimeContextResolver = resolver;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* @plan:PLAN-20251023-STATELESS-HARDENING.P08
|
|
182
|
+
* @requirement:REQ-SP4-002
|
|
183
|
+
* Allows ProviderManager.normalizeRuntimeInputs to run per invocation.
|
|
184
|
+
*/
|
|
185
|
+
setOptionsNormalizer(normalizer) {
|
|
186
|
+
this.optionsNormalizer = normalizer;
|
|
187
|
+
}
|
|
135
188
|
/**
|
|
136
|
-
*
|
|
189
|
+
* @plan PLAN-20251020-STATELESSPROVIDER3.P12
|
|
190
|
+
* @requirement REQ-SP3-003
|
|
191
|
+
* Access to the wrapped provider for unwrapping if needed.
|
|
137
192
|
*/
|
|
138
193
|
get wrappedProvider() {
|
|
139
194
|
return this.wrapped;
|
|
@@ -152,35 +207,112 @@ export class LoggingProviderWrapper {
|
|
|
152
207
|
getDefaultModel() {
|
|
153
208
|
return this.wrapped.getDefaultModel();
|
|
154
209
|
}
|
|
155
|
-
|
|
156
|
-
|
|
210
|
+
async *generateChatCompletion(contentOrOptions, maybeTools) {
|
|
211
|
+
let normalizedOptions = Array.isArray(contentOrOptions)
|
|
212
|
+
? { contents: contentOrOptions, tools: maybeTools }
|
|
213
|
+
: { ...contentOrOptions };
|
|
214
|
+
// REQ-SP4-004: Runtime context push - inject runtime from resolver if available
|
|
215
|
+
const injectedRuntime = this.runtimeContextResolver?.();
|
|
216
|
+
const providedRuntime = normalizedOptions.runtime;
|
|
217
|
+
if (injectedRuntime) {
|
|
218
|
+
const mergedMetadata = {
|
|
219
|
+
...(this.statelessRuntimeMetadata ?? {}),
|
|
220
|
+
...(injectedRuntime.metadata ?? {}),
|
|
221
|
+
...(providedRuntime?.metadata ?? {}),
|
|
222
|
+
...(normalizedOptions.metadata ?? {}),
|
|
223
|
+
source: 'LoggingProviderWrapper.generateChatCompletion',
|
|
224
|
+
requirement: 'REQ-SP4-001',
|
|
225
|
+
};
|
|
226
|
+
normalizedOptions.runtime = {
|
|
227
|
+
...injectedRuntime,
|
|
228
|
+
...providedRuntime,
|
|
229
|
+
settingsService: providedRuntime?.settingsService ?? injectedRuntime.settingsService,
|
|
230
|
+
config: providedRuntime?.config ?? injectedRuntime.config,
|
|
231
|
+
metadata: mergedMetadata,
|
|
232
|
+
};
|
|
233
|
+
normalizedOptions.settings =
|
|
234
|
+
normalizedOptions.settings ?? normalizedOptions.runtime.settingsService;
|
|
235
|
+
normalizedOptions.metadata = mergedMetadata;
|
|
236
|
+
}
|
|
237
|
+
if (!injectedRuntime && this.statelessRuntimeMetadata) {
|
|
238
|
+
normalizedOptions.metadata = {
|
|
239
|
+
...(this.statelessRuntimeMetadata ?? {}),
|
|
240
|
+
...(normalizedOptions.metadata ?? {}),
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
if (this.optionsNormalizer) {
|
|
244
|
+
normalizedOptions = this.optionsNormalizer(normalizedOptions, this.wrapped.name);
|
|
245
|
+
}
|
|
246
|
+
// REQ-SP4-004: Guard - ensure runtime context is present for stateless hardening
|
|
247
|
+
const runtimeId = normalizedOptions.runtime?.runtimeId ?? 'unknown';
|
|
248
|
+
if (!normalizedOptions.runtime?.settingsService) {
|
|
249
|
+
throw new MissingProviderRuntimeError({
|
|
250
|
+
providerKey: `LoggingProviderWrapper[${this.wrapped.name}]`,
|
|
251
|
+
missingFields: ['settings'],
|
|
252
|
+
requirement: 'REQ-SP4-004',
|
|
253
|
+
stage: 'generateChatCompletion',
|
|
254
|
+
metadata: {
|
|
255
|
+
hint: 'Runtime context must include settingsService for stateless hardening.',
|
|
256
|
+
runtimeId,
|
|
257
|
+
},
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
if (!normalizedOptions.runtime?.config) {
|
|
261
|
+
throw new MissingProviderRuntimeError({
|
|
262
|
+
providerKey: `LoggingProviderWrapper[${this.wrapped.name}]`,
|
|
263
|
+
missingFields: ['config'],
|
|
264
|
+
requirement: 'REQ-SP4-004',
|
|
265
|
+
stage: 'generateChatCompletion',
|
|
266
|
+
metadata: {
|
|
267
|
+
hint: 'Runtime context must include config for stateless hardening.',
|
|
268
|
+
runtimeId,
|
|
269
|
+
},
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
// Resolve config from runtime or legacy fallback
|
|
273
|
+
normalizedOptions.config =
|
|
274
|
+
normalizedOptions.config ?? normalizedOptions.runtime?.config;
|
|
275
|
+
const activeConfig = normalizedOptions.config;
|
|
276
|
+
const invocation = normalizedOptions.invocation;
|
|
277
|
+
// Prefer per-call redaction config from invocation context when available
|
|
278
|
+
if (invocation?.redaction) {
|
|
279
|
+
this.redactor = new ConfigBasedRedactor({
|
|
280
|
+
...invocation.redaction,
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
else if (!this.redactor && activeConfig) {
|
|
284
|
+
// REQ-SP4-004: Create per-call redactor if not already set
|
|
285
|
+
this.redactor = new ConfigBasedRedactor(activeConfig.getRedactionConfig());
|
|
286
|
+
}
|
|
157
287
|
const promptId = this.generatePromptId();
|
|
158
288
|
this.turnNumber++;
|
|
159
289
|
// Log request if logging is enabled
|
|
160
|
-
if (
|
|
161
|
-
await this.logRequest(
|
|
290
|
+
if (activeConfig?.getConversationLoggingEnabled()) {
|
|
291
|
+
await this.logRequest(activeConfig, normalizedOptions.contents, normalizedOptions.tools, promptId);
|
|
162
292
|
}
|
|
163
|
-
// Get stream from wrapped provider
|
|
164
|
-
const stream = this.wrapped.generateChatCompletion(
|
|
293
|
+
// Get stream from wrapped provider using normalized options object
|
|
294
|
+
const stream = this.wrapped.generateChatCompletion(normalizedOptions);
|
|
165
295
|
// Always process stream to extract token metrics
|
|
166
296
|
// If logging not enabled, process for metrics only
|
|
167
|
-
if (!
|
|
168
|
-
yield* this.processStreamForMetrics(stream);
|
|
297
|
+
if (!activeConfig?.getConversationLoggingEnabled()) {
|
|
298
|
+
yield* this.processStreamForMetrics(activeConfig, stream);
|
|
169
299
|
return;
|
|
170
300
|
}
|
|
171
301
|
// Log the response stream (which also processes metrics)
|
|
172
|
-
yield* this.logResponseStream(stream, promptId);
|
|
302
|
+
yield* this.logResponseStream(activeConfig, stream, promptId);
|
|
173
303
|
}
|
|
174
|
-
async logRequest(content, tools, promptId) {
|
|
304
|
+
async logRequest(config, content, tools, promptId) {
|
|
175
305
|
try {
|
|
176
|
-
// Apply redaction to content and tools
|
|
177
|
-
const redactedContent =
|
|
306
|
+
// Apply redaction to content and tools (use redactor if available)
|
|
307
|
+
const redactedContent = this.redactor
|
|
308
|
+
? content.map((item) => this.redactor.redactMessage(item, this.wrapped.name))
|
|
309
|
+
: content;
|
|
178
310
|
// Note: tools format is different now, keeping minimal logging for now
|
|
179
311
|
const redactedTools = tools;
|
|
180
312
|
const event = new ConversationRequestEvent(this.wrapped.name, this.conversationId, this.turnNumber, promptId || this.generatePromptId(), redactedContent, redactedTools, 'default');
|
|
181
|
-
logConversationRequest(
|
|
313
|
+
logConversationRequest(config, event);
|
|
182
314
|
// Also write to disk
|
|
183
|
-
const fileWriter = getConversationFileWriter(
|
|
315
|
+
const fileWriter = getConversationFileWriter(config.getConversationLogPath());
|
|
184
316
|
fileWriter.writeRequest(this.wrapped.name, redactedContent, {
|
|
185
317
|
conversationId: this.conversationId,
|
|
186
318
|
turnNumber: this.turnNumber,
|
|
@@ -198,7 +330,7 @@ export class LoggingProviderWrapper {
|
|
|
198
330
|
* Process stream to extract token metrics without logging
|
|
199
331
|
* @plan PLAN-20250909-TOKTRACK
|
|
200
332
|
*/
|
|
201
|
-
async *processStreamForMetrics(stream) {
|
|
333
|
+
async *processStreamForMetrics(config, stream) {
|
|
202
334
|
const startTime = performance.now();
|
|
203
335
|
let latestTokenUsage;
|
|
204
336
|
try {
|
|
@@ -217,7 +349,7 @@ export class LoggingProviderWrapper {
|
|
|
217
349
|
const duration = performance.now() - startTime;
|
|
218
350
|
const tokenCounts = this.extractTokenCountsFromTokenUsage(latestTokenUsage);
|
|
219
351
|
// Accumulate token usage for session tracking
|
|
220
|
-
this.accumulateTokenUsage(tokenCounts);
|
|
352
|
+
this.accumulateTokenUsage(tokenCounts, config);
|
|
221
353
|
// Record performance metrics (TPM tracks output tokens only)
|
|
222
354
|
const outputTokens = tokenCounts.output_token_count;
|
|
223
355
|
this.performanceTracker.recordCompletion(duration, null, outputTokens, 0);
|
|
@@ -230,7 +362,7 @@ export class LoggingProviderWrapper {
|
|
|
230
362
|
throw error;
|
|
231
363
|
}
|
|
232
364
|
}
|
|
233
|
-
async *logResponseStream(stream, promptId) {
|
|
365
|
+
async *logResponseStream(config, stream, promptId) {
|
|
234
366
|
const startTime = performance.now();
|
|
235
367
|
let responseContent = '';
|
|
236
368
|
let responseComplete = false;
|
|
@@ -255,12 +387,12 @@ export class LoggingProviderWrapper {
|
|
|
255
387
|
}
|
|
256
388
|
catch (error) {
|
|
257
389
|
const errorTime = performance.now();
|
|
258
|
-
await this.logResponse('', promptId, errorTime - startTime, false, error, latestTokenUsage);
|
|
390
|
+
await this.logResponse(config, '', promptId, errorTime - startTime, false, error, latestTokenUsage);
|
|
259
391
|
throw error;
|
|
260
392
|
}
|
|
261
393
|
if (responseComplete) {
|
|
262
394
|
const totalTime = performance.now() - startTime;
|
|
263
|
-
await this.logResponse(responseContent, promptId, totalTime, true, undefined, latestTokenUsage);
|
|
395
|
+
await this.logResponse(config, responseContent, promptId, totalTime, true, undefined, latestTokenUsage);
|
|
264
396
|
}
|
|
265
397
|
}
|
|
266
398
|
// Simple content extraction without complex provider-specific logic
|
|
@@ -281,15 +413,17 @@ export class LoggingProviderWrapper {
|
|
|
281
413
|
}
|
|
282
414
|
return '';
|
|
283
415
|
}
|
|
284
|
-
async logResponse(content, promptId, duration, success, error, tokenUsage) {
|
|
416
|
+
async logResponse(config, content, promptId, duration, success, error, tokenUsage) {
|
|
285
417
|
try {
|
|
286
|
-
const redactedContent = this.redactor
|
|
418
|
+
const redactedContent = this.redactor
|
|
419
|
+
? this.redactor.redactResponseContent(content, this.wrapped.name)
|
|
420
|
+
: content;
|
|
287
421
|
// Extract token counts from the response or use provided tokenUsage
|
|
288
422
|
const tokenCounts = tokenUsage
|
|
289
423
|
? this.extractTokenCountsFromTokenUsage(tokenUsage)
|
|
290
424
|
: this.extractTokenCountsFromResponse(content);
|
|
291
425
|
// Accumulate token usage for session tracking
|
|
292
|
-
this.accumulateTokenUsage(tokenCounts);
|
|
426
|
+
this.accumulateTokenUsage(tokenCounts, config);
|
|
293
427
|
// Record performance metrics (TPM tracks output tokens only)
|
|
294
428
|
const outputTokens = tokenCounts.output_token_count;
|
|
295
429
|
this.performanceTracker.recordCompletion(duration, null, outputTokens, 0);
|
|
@@ -300,11 +434,11 @@ export class LoggingProviderWrapper {
|
|
|
300
434
|
tokenCounts.thoughts_token_count +
|
|
301
435
|
tokenCounts.tool_token_count;
|
|
302
436
|
// Log token usage to telemetry
|
|
303
|
-
logTokenUsage(
|
|
437
|
+
logTokenUsage(config, new TokenUsageEvent(this.wrapped.name, this.conversationId, tokenCounts.input_token_count, tokenCounts.output_token_count, tokenCounts.cached_content_token_count, tokenCounts.tool_token_count, tokenCounts.thoughts_token_count, totalTokens));
|
|
304
438
|
const event = new ConversationResponseEvent(this.wrapped.name, this.conversationId, this.turnNumber, promptId, redactedContent, duration, success, error ? String(error) : undefined);
|
|
305
|
-
logConversationResponse(
|
|
439
|
+
logConversationResponse(config, event);
|
|
306
440
|
// Also write to disk
|
|
307
|
-
const fileWriter = getConversationFileWriter(
|
|
441
|
+
const fileWriter = getConversationFileWriter(config.getConversationLogPath());
|
|
308
442
|
fileWriter.writeResponse(this.wrapped.name, redactedContent, {
|
|
309
443
|
conversationId: this.conversationId,
|
|
310
444
|
turnNumber: this.turnNumber,
|
|
@@ -413,7 +547,7 @@ export class LoggingProviderWrapper {
|
|
|
413
547
|
/**
|
|
414
548
|
* Accumulate token usage for session tracking
|
|
415
549
|
*/
|
|
416
|
-
accumulateTokenUsage(tokenCounts) {
|
|
550
|
+
accumulateTokenUsage(tokenCounts, config) {
|
|
417
551
|
// Map token counts to expected format
|
|
418
552
|
const usage = {
|
|
419
553
|
input: tokenCounts.input_token_count || 0,
|
|
@@ -423,7 +557,7 @@ export class LoggingProviderWrapper {
|
|
|
423
557
|
tool: tokenCounts.tool_token_count || 0,
|
|
424
558
|
};
|
|
425
559
|
// Call accumulateSessionTokens if providerManager is available
|
|
426
|
-
const providerManager =
|
|
560
|
+
const providerManager = config?.getProviderManager();
|
|
427
561
|
if (providerManager) {
|
|
428
562
|
try {
|
|
429
563
|
console.debug(`[TokenTracking] Accumulating ${usage.input + usage.output + usage.cache + usage.tool + usage.thought} tokens for provider ${this.wrapped.name}`);
|
|
@@ -437,7 +571,20 @@ export class LoggingProviderWrapper {
|
|
|
437
571
|
console.warn(`[TokenTracking] No provider manager found in config - tokens not accumulated for ${this.wrapped.name}`);
|
|
438
572
|
}
|
|
439
573
|
}
|
|
440
|
-
|
|
574
|
+
resolveLoggingConfig(candidate) {
|
|
575
|
+
if (candidate &&
|
|
576
|
+
typeof candidate === 'object' &&
|
|
577
|
+
'getConversationLoggingEnabled' in candidate &&
|
|
578
|
+
typeof candidate
|
|
579
|
+
.getConversationLoggingEnabled === 'function') {
|
|
580
|
+
return candidate;
|
|
581
|
+
}
|
|
582
|
+
return undefined;
|
|
583
|
+
}
|
|
584
|
+
async logToolCall(config, toolName, params, result, startTime, success, error) {
|
|
585
|
+
if (!config) {
|
|
586
|
+
return;
|
|
587
|
+
}
|
|
441
588
|
try {
|
|
442
589
|
const endTime = Date.now();
|
|
443
590
|
const duration = endTime - startTime;
|
|
@@ -450,15 +597,19 @@ export class LoggingProviderWrapper {
|
|
|
450
597
|
gitStats = metadata.gitStats;
|
|
451
598
|
}
|
|
452
599
|
}
|
|
600
|
+
// Redact tool parameters if redactor available
|
|
601
|
+
const redactedParams = this.redactor
|
|
602
|
+
? this.redactor.redactToolCall({
|
|
603
|
+
type: 'function',
|
|
604
|
+
function: { name: toolName, parameters: params },
|
|
605
|
+
}).function.parameters
|
|
606
|
+
: params;
|
|
453
607
|
// Write to disk
|
|
454
|
-
const fileWriter = getConversationFileWriter(
|
|
608
|
+
const fileWriter = getConversationFileWriter(config.getConversationLogPath());
|
|
455
609
|
fileWriter.writeToolCall(this.wrapped.name, toolName, {
|
|
456
610
|
conversationId: this.conversationId,
|
|
457
611
|
turnNumber: this.turnNumber,
|
|
458
|
-
params:
|
|
459
|
-
type: 'function',
|
|
460
|
-
function: { name: toolName, parameters: params },
|
|
461
|
-
}).function.parameters,
|
|
612
|
+
params: redactedParams,
|
|
462
613
|
result,
|
|
463
614
|
duration,
|
|
464
615
|
success,
|
|
@@ -471,60 +622,62 @@ export class LoggingProviderWrapper {
|
|
|
471
622
|
}
|
|
472
623
|
}
|
|
473
624
|
// All other methods are simple passthroughs to wrapped provider
|
|
474
|
-
setModel(modelId) {
|
|
475
|
-
this.wrapped.setModel?.(modelId);
|
|
476
|
-
}
|
|
477
625
|
getCurrentModel() {
|
|
478
626
|
return this.wrapped.getCurrentModel?.() ?? '';
|
|
479
627
|
}
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
628
|
+
setRuntimeSettingsService(settingsService) {
|
|
629
|
+
/**
|
|
630
|
+
* @plan PLAN-20250218-STATELESSPROVIDER.P05
|
|
631
|
+
* @requirement REQ-SP-001
|
|
632
|
+
* @pseudocode provider-invocation.md lines 8-15
|
|
633
|
+
*/
|
|
634
|
+
const runtimeAware = this.wrapped;
|
|
635
|
+
runtimeAware.setRuntimeSettingsService?.(settingsService);
|
|
485
636
|
}
|
|
486
637
|
getToolFormat() {
|
|
487
638
|
return this.wrapped.getToolFormat?.() ?? '';
|
|
488
639
|
}
|
|
489
|
-
setToolFormatOverride(format) {
|
|
490
|
-
this.wrapped.setToolFormatOverride?.(format);
|
|
491
|
-
}
|
|
492
640
|
isPaidMode() {
|
|
493
641
|
return this.wrapped.isPaidMode?.() ?? false;
|
|
494
642
|
}
|
|
495
643
|
clearState() {
|
|
496
|
-
this.wrapped
|
|
644
|
+
if ('clearState' in this.wrapped) {
|
|
645
|
+
const candidate = this.wrapped
|
|
646
|
+
.clearState;
|
|
647
|
+
candidate?.call(this.wrapped);
|
|
648
|
+
}
|
|
497
649
|
// Reset conversation logging state
|
|
498
650
|
this.conversationId = this.generateConversationId();
|
|
499
651
|
this.turnNumber = 0;
|
|
500
652
|
}
|
|
501
653
|
setConfig(config) {
|
|
502
|
-
this.wrapped
|
|
654
|
+
if ('setConfig' in this.wrapped) {
|
|
655
|
+
const candidate = this.wrapped.setConfig;
|
|
656
|
+
candidate?.call(this.wrapped, config);
|
|
657
|
+
}
|
|
503
658
|
}
|
|
504
659
|
getServerTools() {
|
|
505
660
|
return this.wrapped.getServerTools();
|
|
506
661
|
}
|
|
507
662
|
async invokeServerTool(toolName, params, config) {
|
|
508
663
|
const startTime = Date.now();
|
|
664
|
+
const loggingConfig = this.resolveLoggingConfig(config);
|
|
509
665
|
try {
|
|
510
666
|
const result = await this.wrapped.invokeServerTool(toolName, params, config);
|
|
511
667
|
// Log tool call if logging is enabled and result has metadata
|
|
512
|
-
if (
|
|
513
|
-
await this.logToolCall(toolName, params, result, startTime, true);
|
|
668
|
+
if (loggingConfig?.getConversationLoggingEnabled()) {
|
|
669
|
+
await this.logToolCall(loggingConfig, toolName, params, result, startTime, true);
|
|
514
670
|
}
|
|
515
671
|
return result;
|
|
516
672
|
}
|
|
517
673
|
catch (error) {
|
|
518
674
|
// Log failed tool call if logging is enabled
|
|
519
|
-
if (
|
|
520
|
-
await this.logToolCall(toolName, params, null, startTime, false, error);
|
|
675
|
+
if (loggingConfig?.getConversationLoggingEnabled()) {
|
|
676
|
+
await this.logToolCall(loggingConfig, toolName, params, null, startTime, false, error);
|
|
521
677
|
}
|
|
522
678
|
throw error;
|
|
523
679
|
}
|
|
524
680
|
}
|
|
525
|
-
setModelParams(params) {
|
|
526
|
-
this.wrapped.setModelParams?.(params);
|
|
527
|
-
}
|
|
528
681
|
getModelParams() {
|
|
529
682
|
return this.wrapped.getModelParams?.();
|
|
530
683
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggingProviderWrapper.js","sourceRoot":"","sources":["../../../src/providers/LoggingProviderWrapper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LoggingProviderWrapper.js","sourceRoot":"","sources":["../../../src/providers/LoggingProviderWrapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,21 +4,88 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
* @plan PLAN-20250909-TOKTRACK.P08
|
|
6
6
|
*/
|
|
7
|
-
import { IProvider } from './IProvider.js';
|
|
7
|
+
import { IProvider, GenerateChatOptions } from './IProvider.js';
|
|
8
8
|
import { IModel } from './IModel.js';
|
|
9
9
|
import { IProviderManager } from './IProviderManager.js';
|
|
10
10
|
import { Config } from '../config/config.js';
|
|
11
11
|
import type { ProviderCapabilities, ProviderComparison } from './types.js';
|
|
12
|
+
import type { SettingsService } from '../settings/SettingsService.js';
|
|
13
|
+
import { type ProviderRuntimeContext } from '../runtime/providerRuntimeContext.js';
|
|
14
|
+
interface ProviderManagerInit {
|
|
15
|
+
runtime?: ProviderRuntimeContext;
|
|
16
|
+
config?: Config;
|
|
17
|
+
settingsService?: SettingsService;
|
|
18
|
+
}
|
|
12
19
|
export declare class ProviderManager implements IProviderManager {
|
|
13
20
|
private providers;
|
|
14
21
|
private serverToolsProvider;
|
|
15
22
|
private config?;
|
|
23
|
+
/**
|
|
24
|
+
* @plan PLAN-20250218-STATELESSPROVIDER.P05
|
|
25
|
+
* @requirement REQ-SP-001
|
|
26
|
+
* @pseudocode provider-invocation.md lines 8-15
|
|
27
|
+
*/
|
|
28
|
+
private settingsService;
|
|
29
|
+
private runtime?;
|
|
16
30
|
private providerCapabilities;
|
|
17
31
|
private sessionTokenUsage;
|
|
18
|
-
constructor();
|
|
32
|
+
constructor(init?: ProviderManagerInit | ProviderRuntimeContext);
|
|
33
|
+
/**
|
|
34
|
+
* @plan PLAN-20250218-STATELESSPROVIDER.P05
|
|
35
|
+
* @requirement REQ-SP-001
|
|
36
|
+
* @pseudocode provider-invocation.md lines 8-15
|
|
37
|
+
* @plan:PLAN-20251018-STATELESSPROVIDER2.P03
|
|
38
|
+
* @requirement:REQ-SP2-002
|
|
39
|
+
* @pseudocode multi-runtime-baseline.md lines 3-4
|
|
40
|
+
*/
|
|
41
|
+
private resolveInit;
|
|
19
42
|
setConfig(config: Config): void;
|
|
43
|
+
/**
|
|
44
|
+
* @plan PLAN-20251018-STATELESSPROVIDER2.P06
|
|
45
|
+
* @requirement REQ-SP2-001
|
|
46
|
+
* @pseudocode base-provider-call-contract.md lines 3-5
|
|
47
|
+
*/
|
|
20
48
|
private updateProviderWrapping;
|
|
49
|
+
/**
|
|
50
|
+
* @plan PLAN-20250218-STATELESSPROVIDER.P05
|
|
51
|
+
* @requirement REQ-SP-001
|
|
52
|
+
* @pseudocode provider-invocation.md lines 8-15
|
|
53
|
+
* @plan:PLAN-20251023-STATELESS-HARDENING.P05
|
|
54
|
+
* @requirement:REQ-SP4-001
|
|
55
|
+
* @pseudocode provider-runtime-handling.md lines 10-15
|
|
56
|
+
*/
|
|
57
|
+
private syncProviderRuntime;
|
|
58
|
+
/**
|
|
59
|
+
* @plan:PLAN-20251023-STATELESS-HARDENING.P05
|
|
60
|
+
* @requirement:REQ-SP4-001
|
|
61
|
+
* @pseudocode provider-runtime-handling.md lines 10-15
|
|
62
|
+
*/
|
|
63
|
+
private snapshotRuntimeContext;
|
|
64
|
+
/**
|
|
65
|
+
* @plan:PLAN-20251023-STATELESS-HARDENING.P08
|
|
66
|
+
* @requirement:REQ-SP4-002
|
|
67
|
+
* @requirement:REQ-SP4-003
|
|
68
|
+
* @requirement:REQ-SP4-004
|
|
69
|
+
* @requirement:REQ-SP4-005
|
|
70
|
+
* @pseudocode provider-runtime-handling.md lines 10-16
|
|
71
|
+
*
|
|
72
|
+
* Normalize runtime inputs per call - no stored settings/config fallbacks.
|
|
73
|
+
* This method enforces that all runtime context is provided per-call and that
|
|
74
|
+
* providers cannot rely on stored state.
|
|
75
|
+
*/
|
|
76
|
+
normalizeRuntimeInputs(rawOptions: GenerateChatOptions, providerName?: string): GenerateChatOptions;
|
|
77
|
+
private buildEphemeralsSnapshot;
|
|
78
|
+
/**
|
|
79
|
+
* @plan PLAN-20251018-STATELESSPROVIDER2.P06
|
|
80
|
+
* @requirement REQ-SP2-001
|
|
81
|
+
* @pseudocode base-provider-call-contract.md lines 3-5
|
|
82
|
+
*/
|
|
21
83
|
registerProvider(provider: IProvider): void;
|
|
84
|
+
/**
|
|
85
|
+
* @plan PLAN-20251018-STATELESSPROVIDER2.P06
|
|
86
|
+
* @requirement REQ-SP2-001
|
|
87
|
+
* @pseudocode base-provider-call-contract.md lines 3-5
|
|
88
|
+
*/
|
|
22
89
|
setActiveProvider(name: string): void;
|
|
23
90
|
clearActiveProvider(): void;
|
|
24
91
|
getActiveProvider(): IProvider;
|
|
@@ -34,6 +101,7 @@ export declare class ProviderManager implements IProviderManager {
|
|
|
34
101
|
setServerToolsProvider(provider: IProvider | null): void;
|
|
35
102
|
private generateConversationId;
|
|
36
103
|
private isContextPreserved;
|
|
104
|
+
private getStoredModelName;
|
|
37
105
|
private captureProviderCapabilities;
|
|
38
106
|
private detectVisionSupport;
|
|
39
107
|
private getProviderMaxTokens;
|
|
@@ -72,6 +140,9 @@ export declare class ProviderManager implements IProviderManager {
|
|
|
72
140
|
getProviderMetrics(providerName?: string): any;
|
|
73
141
|
resetConversationContext(): void;
|
|
74
142
|
getProviderCapabilities(providerName?: string): ProviderCapabilities | undefined;
|
|
143
|
+
prepareStatelessProviderInvocation(context?: ProviderRuntimeContext): void;
|
|
144
|
+
private attachStatelessRuntimeMetadata;
|
|
75
145
|
compareProviders(provider1: string, provider2: string): ProviderComparison;
|
|
76
146
|
private generateProviderRecommendation;
|
|
77
147
|
}
|
|
148
|
+
export {};
|