@omnicross/core 0.1.0 → 0.1.2
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/ApiConverter.cjs +24 -0
- package/dist/ApiConverter.d.cts +82 -0
- package/dist/ApiConverter.d.ts +82 -0
- package/dist/ApiConverter.js +24 -0
- package/dist/BuiltinToolExecutor-BluWyeob.d.ts +81 -0
- package/dist/BuiltinToolExecutor-CS2WpXhM.d.cts +81 -0
- package/dist/CompletionService-D3a47vdU.d.cts +213 -0
- package/dist/CompletionService-DdWaAxq0.d.ts +213 -0
- package/dist/{ProviderProxy-f_8ziIhW.d.cts → ProviderProxy-C-xqrkKi.d.ts} +7 -2
- package/dist/{ProviderProxy-vjt8sQQk.d.ts → ProviderProxy-CnMQYN59.d.cts} +7 -2
- package/dist/auth/GeminiCodeAssistProjectResolver.cjs +27 -60
- package/dist/auth/GeminiCodeAssistProjectResolver.js +5 -9
- package/dist/builtin-web-fetch-77JZUZGM.cjs +100 -0
- package/dist/builtin-web-fetch-IGLBX2XY.js +100 -0
- package/dist/chunk-2DCNB7DF.cjs +514 -0
- package/dist/chunk-2FEVTJWG.js +4400 -0
- package/dist/chunk-3MEACFK3.js +193 -0
- package/dist/chunk-3OPYJG76.cjs +266 -0
- package/dist/chunk-46RLHI7D.js +0 -0
- package/dist/chunk-46ZIFWYG.cjs +277 -0
- package/dist/chunk-4NBS6KPV.cjs +43 -0
- package/dist/chunk-4VAVYUZS.cjs +991 -0
- package/dist/chunk-5ERIZW3D.js +44 -0
- package/dist/chunk-5HTVET6E.js +514 -0
- package/dist/chunk-5ZQBEOMD.js +764 -0
- package/dist/chunk-6VIXXLMX.cjs +14 -0
- package/dist/chunk-745DV5FL.js +147 -0
- package/dist/chunk-74TMJA7Z.js +53 -0
- package/dist/chunk-7VU7V2E4.js +0 -0
- package/dist/chunk-7YN22L2H.cjs +87 -0
- package/dist/chunk-A2YMUCBT.cjs +105 -0
- package/dist/chunk-AQ5TNQB7.js +13 -0
- package/dist/chunk-AVYJ4YBN.js +58 -0
- package/dist/chunk-C72S6TTV.cjs +49 -0
- package/dist/chunk-C7PSERMH.js +87 -0
- package/dist/chunk-CDHS2QDC.js +179 -0
- package/dist/chunk-DK4A7DLE.js +266 -0
- package/dist/chunk-DRWHTIIZ.js +13 -0
- package/dist/chunk-DWKQZ2SK.cjs +254 -0
- package/dist/chunk-E3WHL7CO.js +14 -0
- package/dist/chunk-EYZYXJTJ.cjs +1 -0
- package/dist/chunk-FMOBD2OQ.js +39 -0
- package/dist/chunk-FTQ7IQUC.js +991 -0
- package/dist/chunk-FZ46M34D.cjs +1 -0
- package/dist/chunk-G2FUJNA2.cjs +193 -0
- package/dist/chunk-G2UTNSGU.js +277 -0
- package/dist/chunk-GBHYAGX3.cjs +26 -0
- package/dist/chunk-GMMT7RVN.cjs +39 -0
- package/dist/chunk-H5JUT3KV.js +105 -0
- package/dist/chunk-HQP3K7PU.cjs +431 -0
- package/dist/chunk-JO5NLTLY.js +46 -0
- package/dist/chunk-JWC6APFQ.js +23 -0
- package/dist/chunk-KUU2RNG6.cjs +46 -0
- package/dist/chunk-LKZJEL6E.cjs +124 -0
- package/dist/chunk-MNYKI4CI.js +94 -0
- package/dist/chunk-MZNPGW5Q.js +26 -0
- package/dist/chunk-N3V2J5ZO.cjs +53 -0
- package/dist/chunk-NYUNU75A.cjs +44 -0
- package/dist/chunk-NZYN7C3P.cjs +179 -0
- package/dist/chunk-O466Y272.js +235 -0
- package/dist/chunk-PXUJF5HS.js +124 -0
- package/dist/chunk-QBZJ7P2T.cjs +13 -0
- package/dist/chunk-QOCNX236.js +46 -0
- package/dist/chunk-QXD4MV2X.cjs +23 -0
- package/dist/chunk-R3HK6R4B.cjs +13 -0
- package/dist/chunk-RSJ3TWJQ.cjs +186 -0
- package/dist/chunk-S4WBV25P.js +913 -0
- package/dist/chunk-SN3YWBX7.cjs +4400 -0
- package/dist/chunk-SPVWWUHX.cjs +46 -0
- package/dist/chunk-SUEGJ75D.cjs +764 -0
- package/dist/chunk-SVNDB62D.cjs +58 -0
- package/dist/chunk-UYPEN5XE.cjs +235 -0
- package/dist/chunk-V5KPWNYX.cjs +147 -0
- package/dist/chunk-VVEHS2LI.js +431 -0
- package/dist/chunk-XBSYYZIY.cjs +94 -0
- package/dist/chunk-YGXJGRFI.cjs +913 -0
- package/dist/chunk-YMFAJFQT.cjs +173 -0
- package/dist/chunk-Z7LUNECE.js +49 -0
- package/dist/chunk-Z7Y2NPHY.js +186 -0
- package/dist/chunk-ZJZAOKI7.js +254 -0
- package/dist/chunk-ZLX3KGXX.js +173 -0
- package/dist/chunk-ZSVQT3PW.js +43 -0
- package/dist/completion/ApiKeyPoolService.cjs +23 -48
- package/dist/completion/ApiKeyPoolService.d.cts +150 -2
- package/dist/completion/ApiKeyPoolService.d.ts +150 -2
- package/dist/completion/BuiltinToolExecutor.cjs +12 -0
- package/dist/completion/BuiltinToolExecutor.d.cts +4 -0
- package/dist/completion/BuiltinToolExecutor.d.ts +4 -0
- package/dist/completion/BuiltinToolExecutor.js +12 -0
- package/dist/completion/CompletionService.cjs +38 -0
- package/dist/completion/CompletionService.d.cts +22 -0
- package/dist/completion/CompletionService.d.ts +22 -0
- package/dist/completion/CompletionService.js +38 -0
- package/dist/completion/NativeSearchInjector.cjs +12 -0
- package/dist/completion/NativeSearchInjector.d.cts +42 -0
- package/dist/completion/NativeSearchInjector.d.ts +42 -0
- package/dist/completion/NativeSearchInjector.js +12 -0
- package/dist/completion/ProviderSearchInjector.cjs +60 -0
- package/dist/completion/ProviderSearchInjector.d.cts +47 -0
- package/dist/completion/ProviderSearchInjector.d.ts +47 -0
- package/dist/completion/ProviderSearchInjector.js +60 -0
- package/dist/completion/native-search-types.cjs +14 -0
- package/dist/completion/native-search-types.d.cts +3 -0
- package/dist/completion/native-search-types.d.ts +3 -0
- package/dist/completion/native-search-types.js +14 -0
- package/dist/completion/openrouter-headers.cjs +16 -0
- package/dist/completion/openrouter-headers.d.cts +44 -0
- package/dist/completion/openrouter-headers.d.ts +44 -0
- package/dist/completion/openrouter-headers.js +16 -0
- package/dist/completion/openrouter-models.cjs +29 -0
- package/dist/completion/openrouter-models.d.cts +27 -0
- package/dist/completion/openrouter-models.d.ts +27 -0
- package/dist/completion/openrouter-models.js +29 -0
- package/dist/completion/types.cjs +1 -0
- package/dist/completion/types.d.cts +3 -0
- package/dist/completion/types.d.ts +3 -0
- package/dist/completion/types.js +0 -0
- package/dist/completion/url-builder.cjs +24 -0
- package/dist/completion/url-builder.d.cts +87 -0
- package/dist/completion/url-builder.d.ts +87 -0
- package/dist/completion/url-builder.js +24 -0
- package/dist/completion.cjs +55 -3989
- package/dist/completion.d.cts +150 -8
- package/dist/completion.d.ts +150 -8
- package/dist/completion.js +63 -3953
- package/dist/index.cjs +197 -10428
- package/dist/index.d.cts +35 -91
- package/dist/index.d.ts +35 -91
- package/dist/index.js +125 -10267
- package/dist/logger-4GvQNzhE.d.cts +22 -0
- package/dist/logger-4GvQNzhE.d.ts +22 -0
- package/dist/outbound-api/routeResolver.cjs +11 -0
- package/dist/outbound-api/routeResolver.d.cts +19 -0
- package/dist/outbound-api/routeResolver.d.ts +19 -0
- package/dist/outbound-api/routeResolver.js +11 -0
- package/dist/outbound-api/subscriptionRegistryPort.cjs +7 -37
- package/dist/outbound-api/subscriptionRegistryPort.d.cts +7 -3
- package/dist/outbound-api/subscriptionRegistryPort.d.ts +7 -3
- package/dist/outbound-api/subscriptionRegistryPort.js +4 -8
- package/dist/outbound-api/types.cjs +1 -0
- package/dist/{types-CbCN2NQP.d.ts → outbound-api/types.d.cts} +18 -3
- package/dist/{types-CGGrKqC_.d.cts → outbound-api/types.d.ts} +18 -3
- package/dist/outbound-api/types.js +0 -0
- package/dist/outbound-api.cjs +35 -5220
- package/dist/outbound-api.d.cts +16 -88
- package/dist/outbound-api.d.ts +16 -88
- package/dist/outbound-api.js +54 -5193
- package/dist/pipeline/AuthSource.cjs +1 -0
- package/dist/pipeline/AuthSource.d.cts +101 -0
- package/dist/pipeline/AuthSource.d.ts +101 -0
- package/dist/pipeline/AuthSource.js +0 -0
- package/dist/pipeline/LlmConfigProviderAuth.cjs +8 -0
- package/dist/pipeline/LlmConfigProviderAuth.d.cts +87 -0
- package/dist/pipeline/LlmConfigProviderAuth.d.ts +87 -0
- package/dist/pipeline/LlmConfigProviderAuth.js +8 -0
- package/dist/pipeline/SubscriptionAuthSource.cjs +6 -128
- package/dist/pipeline/SubscriptionAuthSource.d.cts +165 -3
- package/dist/pipeline/SubscriptionAuthSource.d.ts +165 -3
- package/dist/pipeline/SubscriptionAuthSource.js +5 -99
- package/dist/pipeline/SubscriptionAuthStrategy.cjs +1 -18
- package/dist/pipeline/executeProviderCall.cjs +6 -0
- package/dist/pipeline/executeProviderCall.d.cts +149 -0
- package/dist/pipeline/executeProviderCall.d.ts +149 -0
- package/dist/pipeline/executeProviderCall.js +6 -0
- package/dist/pipeline/resolveProviderChain.cjs +6 -0
- package/dist/pipeline/resolveProviderChain.d.cts +58 -0
- package/dist/pipeline/resolveProviderChain.d.ts +58 -0
- package/dist/pipeline/resolveProviderChain.js +6 -0
- package/dist/pipeline/resolveSubscriptionChain.cjs +6 -0
- package/dist/pipeline/resolveSubscriptionChain.d.cts +68 -0
- package/dist/pipeline/resolveSubscriptionChain.d.ts +68 -0
- package/dist/pipeline/resolveSubscriptionChain.js +6 -0
- package/dist/ports/gemini-code-assist-resolver.cjs +7 -37
- package/dist/ports/gemini-code-assist-resolver.js +4 -8
- package/dist/ports/pricing-store.cjs +1 -0
- package/dist/ports/pricing-store.d.cts +50 -0
- package/dist/ports/pricing-store.d.ts +50 -0
- package/dist/ports/pricing-store.js +0 -0
- package/dist/ports/provider-config-source.cjs +1 -0
- package/dist/ports/provider-config-source.d.cts +51 -0
- package/dist/ports/provider-config-source.d.ts +51 -0
- package/dist/ports/provider-config-source.js +0 -0
- package/dist/ports/usage-event-store.cjs +1 -0
- package/dist/ports/usage-event-store.d.cts +29 -0
- package/dist/ports/usage-event-store.d.ts +29 -0
- package/dist/ports/usage-event-store.js +0 -0
- package/dist/ports/web-search-backend.cjs +1 -0
- package/dist/ports/web-search-backend.d.cts +29 -0
- package/dist/ports/web-search-backend.d.ts +29 -0
- package/dist/ports/web-search-backend.js +0 -0
- package/dist/ports.cjs +1 -18
- package/dist/ports.d.cts +16 -8
- package/dist/ports.d.ts +16 -8
- package/dist/provider-proxy/ProviderProxy.cjs +40 -0
- package/dist/provider-proxy/ProviderProxy.d.cts +17 -0
- package/dist/provider-proxy/ProviderProxy.d.ts +17 -0
- package/dist/provider-proxy/ProviderProxy.js +40 -0
- package/dist/provider-proxy/ingress/providerProxyShared.cjs +35 -2941
- package/dist/provider-proxy/ingress/providerProxyShared.d.cts +7 -3
- package/dist/provider-proxy/ingress/providerProxyShared.d.ts +7 -3
- package/dist/provider-proxy/ingress/providerProxyShared.js +41 -2914
- package/dist/provider-proxy/matchText.cjs +11 -72
- package/dist/provider-proxy/matchText.js +6 -39
- package/dist/provider-proxy/types.cjs +1 -18
- package/dist/provider-proxy/types.d.cts +407 -8
- package/dist/provider-proxy/types.d.ts +407 -8
- package/dist/provider-proxy.cjs +35 -4654
- package/dist/provider-proxy.d.cts +10 -6
- package/dist/provider-proxy.d.ts +10 -6
- package/dist/provider-proxy.js +39 -4627
- package/dist/routeResolver-BrbK6ja9.d.cts +88 -0
- package/dist/routeResolver-HE-ZO0fO.d.ts +88 -0
- package/dist/serializeError.cjs +5 -81
- package/dist/serializeError.js +3 -54
- package/dist/sse-parser.cjs +7 -455
- package/dist/sse-parser.js +4 -426
- package/dist/transformer/TransformerChainExecutor.cjs +4 -318
- package/dist/transformer/TransformerChainExecutor.js +4 -291
- package/dist/transformer/TransformerService.cjs +5 -289
- package/dist/transformer/TransformerService.js +3 -262
- package/dist/transformer/anthropicBetaInject.cjs +8 -0
- package/dist/transformer/anthropicBetaInject.d.cts +20 -0
- package/dist/transformer/anthropicBetaInject.d.ts +20 -0
- package/dist/transformer/anthropicBetaInject.js +8 -0
- package/dist/transformer/transformers/AnthropicTransformer.cjs +6 -0
- package/dist/transformer/transformers/AnthropicTransformer.d.cts +148 -0
- package/dist/transformer/transformers/AnthropicTransformer.d.ts +148 -0
- package/dist/transformer/transformers/AnthropicTransformer.js +6 -0
- package/dist/transformer/transformers/GeminiCodeAssistTransformer.cjs +4 -1106
- package/dist/transformer/transformers/GeminiCodeAssistTransformer.js +7 -1079
- package/dist/transformer/transformers/GeminiTransformer.cjs +4 -1010
- package/dist/transformer/transformers/GeminiTransformer.js +4 -983
- package/dist/transformer/transformers/OpenAIResponseTransformer.cjs +3 -535
- package/dist/transformer/transformers/OpenAIResponseTransformer.js +3 -510
- package/dist/transformer/transformers/OpenCodeGoTransformer.cjs +5 -72
- package/dist/transformer/transformers/OpenCodeGoTransformer.js +3 -45
- package/dist/transformer/transformers/ReasoningTransformer.cjs +6 -0
- package/dist/transformer/transformers/ReasoningTransformer.d.cts +47 -0
- package/dist/transformer/transformers/ReasoningTransformer.d.ts +47 -0
- package/dist/transformer/transformers/ReasoningTransformer.js +6 -0
- package/dist/transformer/transformers.cjs +39 -0
- package/dist/transformer/transformers.d.cts +100 -0
- package/dist/transformer/transformers.d.ts +100 -0
- package/dist/transformer/transformers.js +39 -0
- package/dist/transformer/types.cjs +1 -18
- package/dist/transformer.cjs +13 -3726
- package/dist/transformer.d.cts +8 -31
- package/dist/transformer.d.ts +8 -31
- package/dist/transformer.js +17 -3706
- package/dist/types-BScIHmPr.d.cts +153 -0
- package/dist/types-BScIHmPr.d.ts +153 -0
- package/dist/usage/pricing-engine.cjs +6 -0
- package/dist/usage/pricing-engine.d.cts +83 -0
- package/dist/usage/pricing-engine.d.ts +83 -0
- package/dist/usage/pricing-engine.js +6 -0
- package/dist/usage/usage-recorder.cjs +6 -0
- package/dist/usage/usage-recorder.d.cts +73 -0
- package/dist/usage/usage-recorder.d.ts +73 -0
- package/dist/usage/usage-recorder.js +6 -0
- package/dist/usage.cjs +11 -0
- package/dist/usage.d.cts +8 -0
- package/dist/usage.d.ts +8 -0
- package/dist/usage.js +11 -0
- package/package.json +3 -3
- package/dist/ApiKeyPoolService-BmMkau07.d.cts +0 -170
- package/dist/ApiKeyPoolService-BmMkau07.d.ts +0 -170
- package/dist/SubscriptionAuthSource-Cr4fVEYY.d.cts +0 -264
- package/dist/SubscriptionAuthSource-D89zmiSS.d.ts +0 -264
- package/dist/index-BTSmc9Sm.d.ts +0 -645
- package/dist/index-DXazdTzZ.d.cts +0 -645
- package/dist/types-DCzHkhJt.d.ts +0 -467
- package/dist/types-DZIQbgp0.d.cts +0 -467
package/dist/outbound-api.d.cts
CHANGED
|
@@ -1,17 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
import './
|
|
1
|
+
import { EndpointRoutingConfig, OutboundApiDeps, OutboundApiServerStatus, OutboundFormatUrls, OutboundApiServerConfig, OutboundKeyDb, OutboundApiKeyCreated, RequestRole } from './outbound-api/types.cjs';
|
|
2
|
+
export { OutboundApiKeyInfo, OutboundEndpoint, OutboundKeyDbRow } from './outbound-api/types.cjs';
|
|
3
|
+
import { IngressFormat } from './provider-proxy/types.cjs';
|
|
4
|
+
export { S as SUBSCRIPTION_PROVIDER_IDS, e as endpointSupportsSubscription, i as isSubscriptionProviderId, r as resolveRoute } from './routeResolver-BrbK6ja9.cjs';
|
|
5
|
+
import './ports/provider-config-source.cjs';
|
|
6
|
+
import '@omnicross/contracts/llm-config';
|
|
7
|
+
import './transformer/types.cjs';
|
|
8
|
+
import './transformer/TransformerService.cjs';
|
|
9
|
+
import './ProviderProxy-CnMQYN59.cjs';
|
|
6
10
|
import 'node:http';
|
|
7
11
|
import '@omnicross/contracts/completion-types';
|
|
12
|
+
import '@omnicross/contracts/subscription-types';
|
|
8
13
|
import '@omnicross/contracts/usage-types';
|
|
9
|
-
import './ApiKeyPoolService
|
|
10
|
-
import '
|
|
11
|
-
import './
|
|
14
|
+
import './completion/ApiKeyPoolService.cjs';
|
|
15
|
+
import './logger-4GvQNzhE.cjs';
|
|
16
|
+
import './pipeline/AuthSource.cjs';
|
|
17
|
+
import './pipeline/SubscriptionAuthSource.cjs';
|
|
12
18
|
import './pipeline/SubscriptionAuthStrategy.cjs';
|
|
13
|
-
import './
|
|
14
|
-
import './transformer/TransformerService.cjs';
|
|
19
|
+
import './ports/web-search-backend.cjs';
|
|
15
20
|
import '@omnicross/contracts/websearch-types';
|
|
16
21
|
|
|
17
22
|
/**
|
|
@@ -218,83 +223,6 @@ declare function detectRequestRole(ingressFormat: IngressFormat, body: Record<st
|
|
|
218
223
|
/** Map a settings endpoint id to the provider-proxy ingress format. */
|
|
219
224
|
declare function endpointToIngressFormat(endpoint: 'chat' | 'responses' | 'messages' | 'gemini'): IngressFormat;
|
|
220
225
|
|
|
221
|
-
/**
|
|
222
|
-
* subscriptionSupport — single source of truth for (a) which provider ids are
|
|
223
|
-
* subscription-backed and (b) which outbound endpoints can soundly serve a
|
|
224
|
-
* subscription route (`outbound-api-server`, design D2 + review M1/m1).
|
|
225
|
-
*
|
|
226
|
-
* The subscription-id catalog mirrors `SubscriptionProviderRegistry`'s ids; the
|
|
227
|
-
* static fast-path is backstopped at runtime by a live registry lookup (see
|
|
228
|
-
* `isSubscriptionProviderId`) so it degrades gracefully if it drifts. Both
|
|
229
|
-
* `routeResolver` and `apiServerHandlers` import from here — no duplicated set.
|
|
230
|
-
*
|
|
231
|
-
* @module outbound-api/subscriptionSupport
|
|
232
|
-
*/
|
|
233
|
-
|
|
234
|
-
/**
|
|
235
|
-
* The registry-aligned subscription provider ids — the outbound layer's SSOT
|
|
236
|
-
* fast-path. NOTE: `SubscriptionProviderId` is currently a `z.string()` alias,
|
|
237
|
-
* so this `readonly SubscriptionProviderId[]` typing does NOT compile-enforce
|
|
238
|
-
* alignment with the registry; drift is instead tolerated at runtime by
|
|
239
|
-
* `isSubscriptionProviderId`'s live `registry.getProfile` fallback.
|
|
240
|
-
*/
|
|
241
|
-
declare const SUBSCRIPTION_PROVIDER_IDS: readonly SubscriptionProviderId[];
|
|
242
|
-
/**
|
|
243
|
-
* True when a provider id refers to a subscription-backed provider. Checks the
|
|
244
|
-
* registry-aligned static catalog first, then falls back to a live registry
|
|
245
|
-
* lookup (so a registry addition is honored even before this list is updated).
|
|
246
|
-
*
|
|
247
|
-
* NOTE (review m2): this classifies by id string. The resolver MUST confirm the
|
|
248
|
-
* id does not resolve to a real BYO provider row before treating it as
|
|
249
|
-
* subscription-backed — see `routeResolver` (BYO rows win).
|
|
250
|
-
*/
|
|
251
|
-
declare function isSubscriptionProviderId(providerId: string): boolean;
|
|
252
|
-
/** True when the endpoint's ingress can soundly serve a subscription route. */
|
|
253
|
-
declare function endpointSupportsSubscription(endpoint: OutboundEndpoint): boolean;
|
|
254
|
-
|
|
255
|
-
/**
|
|
256
|
-
* routeResolver — turn an endpoint's `EndpointRoutingConfig` + the detected
|
|
257
|
-
* request role into a `RouteContext` for the shared `provider-proxy` dispatch
|
|
258
|
-
* (`outbound-api-server`, design D2).
|
|
259
|
-
*
|
|
260
|
-
* Steps:
|
|
261
|
-
* 1. Pick the model for the role (vision → default fallback when `visionModel`
|
|
262
|
-
* is unset; vision is optional).
|
|
263
|
-
* 2. Parse the chosen `"providerId,modelId"` ref.
|
|
264
|
-
* 3. Gate by `useSubscription`: OFF → only BYO-key providers are eligible
|
|
265
|
-
* (subscription-backed providers excluded); ON → subscription-backed
|
|
266
|
-
* providers are eligible.
|
|
267
|
-
* 4. Resolve the provider (BYO via the `ProviderConfigSource`; subscription via the
|
|
268
|
-
* subscription registry) and build the `RouteContext` exactly as the
|
|
269
|
-
* internal callers do.
|
|
270
|
-
* 5. Return a clear `503`-style error when the role's required model is unset,
|
|
271
|
-
* the provider is unavailable, or the subscription gate excludes it.
|
|
272
|
-
*
|
|
273
|
-
* @module outbound-api/routeResolver
|
|
274
|
-
*/
|
|
275
|
-
|
|
276
|
-
/** A 503-style resolution failure. */
|
|
277
|
-
interface RouteResolveError {
|
|
278
|
-
status: number;
|
|
279
|
-
message: string;
|
|
280
|
-
}
|
|
281
|
-
type RouteResolveResult = {
|
|
282
|
-
ok: true;
|
|
283
|
-
route: RouteContext;
|
|
284
|
-
usedRole: RequestRole;
|
|
285
|
-
} | {
|
|
286
|
-
ok: false;
|
|
287
|
-
error: RouteResolveError;
|
|
288
|
-
};
|
|
289
|
-
/** Resolve a route for one authenticated outbound request. */
|
|
290
|
-
declare function resolveRoute(args: {
|
|
291
|
-
config: EndpointRoutingConfig;
|
|
292
|
-
role: RequestRole;
|
|
293
|
-
ingressFormat: IngressFormat;
|
|
294
|
-
llmConfig: ProviderConfigSource;
|
|
295
|
-
sessionId?: string | null;
|
|
296
|
-
}): Promise<RouteResolveResult>;
|
|
297
|
-
|
|
298
226
|
/**
|
|
299
227
|
* Outbound API server module — barrel + singleton accessor.
|
|
300
228
|
*
|
|
@@ -317,4 +245,4 @@ declare function getOutboundApiServer(deps?: OutboundApiDeps, onPortChange?: (po
|
|
|
317
245
|
/** Reset the singleton (tests / teardown only). */
|
|
318
246
|
declare function __resetOutboundApiServerForTests(): void;
|
|
319
247
|
|
|
320
|
-
export { type ApiServerSettingsStore, type ApplyConfigInput, DEFAULT_OUTBOUND_PORT, EndpointRoutingConfig, OUTBOUND_API_SERVER_CONFIG_KEY, OutboundApiDeps, OutboundApiKeyCreated, OutboundApiServer, OutboundApiServerConfig, OutboundApiServerStatus,
|
|
248
|
+
export { type ApiServerSettingsStore, type ApplyConfigInput, DEFAULT_OUTBOUND_PORT, EndpointRoutingConfig, OUTBOUND_API_SERVER_CONFIG_KEY, OutboundApiDeps, OutboundApiKeyCreated, OutboundApiServer, OutboundApiServerConfig, OutboundApiServerStatus, OutboundFormatUrls, OutboundKeyDb, OutboundRateLimiter, RequestRole, __resetOutboundApiServerForTests, createNamedKey, defaultServerConfig, detectRequestRole, endpointToIngressFormat, formatUrls, getOutboundApiServer, hashKey, loadServerConfig, mergeServerConfig, normalizeServerConfig, saveServerConfig, verifyPresentedKey };
|
package/dist/outbound-api.d.ts
CHANGED
|
@@ -1,17 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
import './
|
|
1
|
+
import { EndpointRoutingConfig, OutboundApiDeps, OutboundApiServerStatus, OutboundFormatUrls, OutboundApiServerConfig, OutboundKeyDb, OutboundApiKeyCreated, RequestRole } from './outbound-api/types.js';
|
|
2
|
+
export { OutboundApiKeyInfo, OutboundEndpoint, OutboundKeyDbRow } from './outbound-api/types.js';
|
|
3
|
+
import { IngressFormat } from './provider-proxy/types.js';
|
|
4
|
+
export { S as SUBSCRIPTION_PROVIDER_IDS, e as endpointSupportsSubscription, i as isSubscriptionProviderId, r as resolveRoute } from './routeResolver-HE-ZO0fO.js';
|
|
5
|
+
import './ports/provider-config-source.js';
|
|
6
|
+
import '@omnicross/contracts/llm-config';
|
|
7
|
+
import './transformer/types.js';
|
|
8
|
+
import './transformer/TransformerService.js';
|
|
9
|
+
import './ProviderProxy-C-xqrkKi.js';
|
|
6
10
|
import 'node:http';
|
|
7
11
|
import '@omnicross/contracts/completion-types';
|
|
12
|
+
import '@omnicross/contracts/subscription-types';
|
|
8
13
|
import '@omnicross/contracts/usage-types';
|
|
9
|
-
import './ApiKeyPoolService
|
|
10
|
-
import '
|
|
11
|
-
import './
|
|
14
|
+
import './completion/ApiKeyPoolService.js';
|
|
15
|
+
import './logger-4GvQNzhE.js';
|
|
16
|
+
import './pipeline/AuthSource.js';
|
|
17
|
+
import './pipeline/SubscriptionAuthSource.js';
|
|
12
18
|
import './pipeline/SubscriptionAuthStrategy.js';
|
|
13
|
-
import './
|
|
14
|
-
import './transformer/TransformerService.js';
|
|
19
|
+
import './ports/web-search-backend.js';
|
|
15
20
|
import '@omnicross/contracts/websearch-types';
|
|
16
21
|
|
|
17
22
|
/**
|
|
@@ -218,83 +223,6 @@ declare function detectRequestRole(ingressFormat: IngressFormat, body: Record<st
|
|
|
218
223
|
/** Map a settings endpoint id to the provider-proxy ingress format. */
|
|
219
224
|
declare function endpointToIngressFormat(endpoint: 'chat' | 'responses' | 'messages' | 'gemini'): IngressFormat;
|
|
220
225
|
|
|
221
|
-
/**
|
|
222
|
-
* subscriptionSupport — single source of truth for (a) which provider ids are
|
|
223
|
-
* subscription-backed and (b) which outbound endpoints can soundly serve a
|
|
224
|
-
* subscription route (`outbound-api-server`, design D2 + review M1/m1).
|
|
225
|
-
*
|
|
226
|
-
* The subscription-id catalog mirrors `SubscriptionProviderRegistry`'s ids; the
|
|
227
|
-
* static fast-path is backstopped at runtime by a live registry lookup (see
|
|
228
|
-
* `isSubscriptionProviderId`) so it degrades gracefully if it drifts. Both
|
|
229
|
-
* `routeResolver` and `apiServerHandlers` import from here — no duplicated set.
|
|
230
|
-
*
|
|
231
|
-
* @module outbound-api/subscriptionSupport
|
|
232
|
-
*/
|
|
233
|
-
|
|
234
|
-
/**
|
|
235
|
-
* The registry-aligned subscription provider ids — the outbound layer's SSOT
|
|
236
|
-
* fast-path. NOTE: `SubscriptionProviderId` is currently a `z.string()` alias,
|
|
237
|
-
* so this `readonly SubscriptionProviderId[]` typing does NOT compile-enforce
|
|
238
|
-
* alignment with the registry; drift is instead tolerated at runtime by
|
|
239
|
-
* `isSubscriptionProviderId`'s live `registry.getProfile` fallback.
|
|
240
|
-
*/
|
|
241
|
-
declare const SUBSCRIPTION_PROVIDER_IDS: readonly SubscriptionProviderId[];
|
|
242
|
-
/**
|
|
243
|
-
* True when a provider id refers to a subscription-backed provider. Checks the
|
|
244
|
-
* registry-aligned static catalog first, then falls back to a live registry
|
|
245
|
-
* lookup (so a registry addition is honored even before this list is updated).
|
|
246
|
-
*
|
|
247
|
-
* NOTE (review m2): this classifies by id string. The resolver MUST confirm the
|
|
248
|
-
* id does not resolve to a real BYO provider row before treating it as
|
|
249
|
-
* subscription-backed — see `routeResolver` (BYO rows win).
|
|
250
|
-
*/
|
|
251
|
-
declare function isSubscriptionProviderId(providerId: string): boolean;
|
|
252
|
-
/** True when the endpoint's ingress can soundly serve a subscription route. */
|
|
253
|
-
declare function endpointSupportsSubscription(endpoint: OutboundEndpoint): boolean;
|
|
254
|
-
|
|
255
|
-
/**
|
|
256
|
-
* routeResolver — turn an endpoint's `EndpointRoutingConfig` + the detected
|
|
257
|
-
* request role into a `RouteContext` for the shared `provider-proxy` dispatch
|
|
258
|
-
* (`outbound-api-server`, design D2).
|
|
259
|
-
*
|
|
260
|
-
* Steps:
|
|
261
|
-
* 1. Pick the model for the role (vision → default fallback when `visionModel`
|
|
262
|
-
* is unset; vision is optional).
|
|
263
|
-
* 2. Parse the chosen `"providerId,modelId"` ref.
|
|
264
|
-
* 3. Gate by `useSubscription`: OFF → only BYO-key providers are eligible
|
|
265
|
-
* (subscription-backed providers excluded); ON → subscription-backed
|
|
266
|
-
* providers are eligible.
|
|
267
|
-
* 4. Resolve the provider (BYO via the `ProviderConfigSource`; subscription via the
|
|
268
|
-
* subscription registry) and build the `RouteContext` exactly as the
|
|
269
|
-
* internal callers do.
|
|
270
|
-
* 5. Return a clear `503`-style error when the role's required model is unset,
|
|
271
|
-
* the provider is unavailable, or the subscription gate excludes it.
|
|
272
|
-
*
|
|
273
|
-
* @module outbound-api/routeResolver
|
|
274
|
-
*/
|
|
275
|
-
|
|
276
|
-
/** A 503-style resolution failure. */
|
|
277
|
-
interface RouteResolveError {
|
|
278
|
-
status: number;
|
|
279
|
-
message: string;
|
|
280
|
-
}
|
|
281
|
-
type RouteResolveResult = {
|
|
282
|
-
ok: true;
|
|
283
|
-
route: RouteContext;
|
|
284
|
-
usedRole: RequestRole;
|
|
285
|
-
} | {
|
|
286
|
-
ok: false;
|
|
287
|
-
error: RouteResolveError;
|
|
288
|
-
};
|
|
289
|
-
/** Resolve a route for one authenticated outbound request. */
|
|
290
|
-
declare function resolveRoute(args: {
|
|
291
|
-
config: EndpointRoutingConfig;
|
|
292
|
-
role: RequestRole;
|
|
293
|
-
ingressFormat: IngressFormat;
|
|
294
|
-
llmConfig: ProviderConfigSource;
|
|
295
|
-
sessionId?: string | null;
|
|
296
|
-
}): Promise<RouteResolveResult>;
|
|
297
|
-
|
|
298
226
|
/**
|
|
299
227
|
* Outbound API server module — barrel + singleton accessor.
|
|
300
228
|
*
|
|
@@ -317,4 +245,4 @@ declare function getOutboundApiServer(deps?: OutboundApiDeps, onPortChange?: (po
|
|
|
317
245
|
/** Reset the singleton (tests / teardown only). */
|
|
318
246
|
declare function __resetOutboundApiServerForTests(): void;
|
|
319
247
|
|
|
320
|
-
export { type ApiServerSettingsStore, type ApplyConfigInput, DEFAULT_OUTBOUND_PORT, EndpointRoutingConfig, OUTBOUND_API_SERVER_CONFIG_KEY, OutboundApiDeps, OutboundApiKeyCreated, OutboundApiServer, OutboundApiServerConfig, OutboundApiServerStatus,
|
|
248
|
+
export { type ApiServerSettingsStore, type ApplyConfigInput, DEFAULT_OUTBOUND_PORT, EndpointRoutingConfig, OUTBOUND_API_SERVER_CONFIG_KEY, OutboundApiDeps, OutboundApiKeyCreated, OutboundApiServer, OutboundApiServerConfig, OutboundApiServerStatus, OutboundFormatUrls, OutboundKeyDb, OutboundRateLimiter, RequestRole, __resetOutboundApiServerForTests, createNamedKey, defaultServerConfig, detectRequestRole, endpointToIngressFormat, formatUrls, getOutboundApiServer, hashKey, loadServerConfig, mergeServerConfig, normalizeServerConfig, saveServerConfig, verifyPresentedKey };
|