@omnicross/core 0.1.10 → 0.2.1
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/README.md +7 -0
- package/dist/{BuiltinToolExecutor-CS2WpXhM.d.cts → BuiltinToolExecutor-BHgH-EaZ.d.cts} +25 -2
- package/dist/{BuiltinToolExecutor-BluWyeob.d.ts → BuiltinToolExecutor-Bi1LmiTP.d.ts} +25 -2
- package/dist/{CompletionService-kNA17cfI.d.cts → CompletionService-BniP7j88.d.cts} +2 -2
- package/dist/{CompletionService-C3BX0Ovy.d.ts → CompletionService-BqrKPwfA.d.ts} +2 -2
- package/dist/{ProviderProxy-QdwNV6l1.d.cts → ProviderProxy-Bz_nkOwq.d.cts} +1 -1
- package/dist/{ProviderProxy--ROec6VI.d.ts → ProviderProxy-Ckr6oTrE.d.ts} +1 -1
- package/dist/auth/GeminiCodeAssistProjectResolver.cjs +6 -6
- package/dist/auth/GeminiCodeAssistProjectResolver.js +4 -4
- package/dist/{chunk-NGYOO5TO.js → chunk-2C3TTBS7.js} +7 -7
- package/dist/{chunk-QUSEZNYS.cjs → chunk-32SRZFFP.cjs} +4 -1
- package/dist/chunk-4JOU54M5.js +200 -0
- package/dist/{chunk-2UTGX6FM.js → chunk-4VVCXVB7.js} +1 -1
- package/dist/{chunk-RJUONLUQ.cjs → chunk-4Z3ZLLC2.cjs} +14 -8
- package/dist/chunk-6DDYNS2B.cjs +384 -0
- package/dist/{chunk-GXEZ2R3E.js → chunk-6OKXH2TW.js} +18 -7
- package/dist/{chunk-YWL7YZWS.cjs → chunk-7LRTPNFL.cjs} +5 -0
- package/dist/{chunk-CCVRRJOX.js → chunk-7PIUVCKK.js} +9 -2
- package/dist/chunk-7RJI3NDI.cjs +236 -0
- package/dist/{chunk-IIRPUVPH.cjs → chunk-7ZHBN75N.cjs} +3 -1
- package/dist/chunk-D4WNI6BR.cjs +386 -0
- package/dist/chunk-DBBR6RHF.js +236 -0
- package/dist/chunk-E4QHVXV5.cjs +118 -0
- package/dist/{chunk-HKB656B4.js → chunk-EUZRH544.js} +55 -287
- package/dist/{chunk-WNKWAEUR.js → chunk-EYGBM2VC.js} +3 -1
- package/dist/{chunk-UWDW6PN3.cjs → chunk-FX325I5Q.cjs} +20 -9
- package/dist/chunk-G4CZIUIB.cjs +200 -0
- package/dist/chunk-HCOQQAZE.cjs +123 -0
- package/dist/chunk-HL2YSPL7.cjs +673 -0
- package/dist/{chunk-55FMGZ3L.js → chunk-HN74IGEO.js} +1 -1
- package/dist/{chunk-ZY6KU6P3.js → chunk-HOMUGKHR.js} +8 -5
- package/dist/{chunk-AOFWNWLT.cjs → chunk-IUL4VWNU.cjs} +22 -1
- package/dist/{chunk-5LNYGCIW.cjs → chunk-KIQ2HA2A.cjs} +5 -5
- package/dist/{chunk-MUHWHQVM.cjs → chunk-KQBLZMP6.cjs} +4 -3
- package/dist/chunk-LFEH7CEO.js +384 -0
- package/dist/chunk-LFPQ2OVH.js +386 -0
- package/dist/{chunk-FEBAQI5A.js → chunk-LKDAN4D7.js} +6363 -1350
- package/dist/chunk-LQYS2N47.js +3923 -0
- package/dist/{chunk-NZYN7C3P.cjs → chunk-MPXOKQJP.cjs} +53 -53
- package/dist/chunk-MZEGQSKQ.js +118 -0
- package/dist/chunk-N76KU6F5.js +123 -0
- package/dist/chunk-NLUOTJWB.js +673 -0
- package/dist/{chunk-CMVXX7ON.cjs → chunk-NOITAVHA.cjs} +114 -58
- package/dist/{chunk-Q27JY5RG.cjs → chunk-OIKREZVQ.cjs} +7 -4
- package/dist/{chunk-ZQQUD66M.cjs → chunk-POUTD5AM.cjs} +63 -295
- package/dist/{chunk-6D4W22P4.js → chunk-QIIAMBTM.js} +4 -1
- package/dist/{chunk-56QD3YW6.cjs → chunk-QWNUOR7F.cjs} +11 -4
- package/dist/{chunk-S3DYFEBE.js → chunk-R4VCO2CB.js} +10 -1
- package/dist/{chunk-4VZX5F4T.cjs → chunk-T6NWPIYZ.cjs} +5 -2
- package/dist/{chunk-EBLFCNPY.js → chunk-U47LQXPB.js} +5 -2
- package/dist/chunk-UPQIWJIE.cjs +3923 -0
- package/dist/{chunk-N7OOJI5V.js → chunk-V2UKUTJ3.js} +5 -0
- package/dist/{chunk-45FHEOKW.js → chunk-V53ZEFXC.js} +92 -36
- package/dist/{chunk-RJ5ZGNI3.js → chunk-VL5TUDTM.js} +8 -2
- package/dist/{chunk-TIT74RIL.cjs → chunk-VSYQ6XYN.cjs} +6837 -1824
- package/dist/{chunk-OC6DOOFX.cjs → chunk-VXRTQZF2.cjs} +5 -5
- package/dist/{chunk-RICPANBY.cjs → chunk-WX2E2G7H.cjs} +13 -4
- package/dist/{chunk-DE2SRBFZ.js → chunk-X335TJNS.js} +4 -3
- package/dist/{chunk-CDHS2QDC.js → chunk-Y4CRNHJO.js} +53 -53
- package/dist/{chunk-P7EM6BND.cjs → chunk-ZAPN7XA6.cjs} +10 -10
- package/dist/{chunk-N2EIM2XJ.js → chunk-ZLNHPUFA.js} +22 -1
- package/dist/completion/BuiltinToolExecutor.cjs +2 -2
- package/dist/completion/BuiltinToolExecutor.d.cts +3 -1
- package/dist/completion/BuiltinToolExecutor.d.ts +3 -1
- package/dist/completion/BuiltinToolExecutor.js +1 -1
- package/dist/completion/CompletionService.cjs +32 -28
- package/dist/completion/CompletionService.d.cts +7 -3
- package/dist/completion/CompletionService.d.ts +7 -3
- package/dist/completion/CompletionService.js +31 -27
- package/dist/completion.cjs +40 -36
- package/dist/completion.d.cts +7 -3
- package/dist/completion.d.ts +7 -3
- package/dist/completion.js +39 -35
- package/dist/egress-I46O_p5L.d.cts +126 -0
- package/dist/egress-I46O_p5L.d.ts +126 -0
- package/dist/frontends-Doz0RaWu.d.cts +97 -0
- package/dist/frontends-Doz0RaWu.d.ts +97 -0
- package/dist/image-generation.cjs +52 -0
- package/dist/image-generation.d.cts +96 -0
- package/dist/image-generation.d.ts +96 -0
- package/dist/image-generation.js +52 -0
- package/dist/index.cjs +142 -32
- package/dist/index.d.cts +16 -8
- package/dist/index.d.ts +16 -8
- package/dist/index.js +159 -49
- package/dist/openai-operation.cjs +18 -0
- package/dist/openai-operation.d.cts +22 -0
- package/dist/openai-operation.d.ts +22 -0
- package/dist/openai-operation.js +18 -0
- package/dist/outbound-api/auditCapture.cjs +3 -3
- package/dist/outbound-api/auditCapture.d.cts +13 -2
- package/dist/outbound-api/auditCapture.d.ts +13 -2
- package/dist/outbound-api/auditCapture.js +2 -2
- package/dist/outbound-api/auditRedact.cjs +2 -2
- package/dist/outbound-api/auditRedact.js +1 -1
- package/dist/outbound-api/routeResolver.cjs +2 -2
- package/dist/outbound-api/routeResolver.d.cts +11 -4
- package/dist/outbound-api/routeResolver.d.ts +11 -4
- package/dist/outbound-api/routeResolver.js +1 -1
- package/dist/outbound-api/subscriptionRegistryPort.d.cts +5 -1
- package/dist/outbound-api/subscriptionRegistryPort.d.ts +5 -1
- package/dist/outbound-api/types.d.cts +10 -3
- package/dist/outbound-api/types.d.ts +10 -3
- package/dist/outbound-api.cjs +65 -33
- package/dist/outbound-api.d.cts +205 -10
- package/dist/outbound-api.d.ts +205 -10
- package/dist/outbound-api.js +64 -32
- package/dist/pipeline/AccountAllowanceScheduling.d.cts +22 -15
- package/dist/pipeline/AccountAllowanceScheduling.d.ts +22 -15
- package/dist/pipeline/LlmConfigProviderAuth.cjs +3 -3
- package/dist/pipeline/LlmConfigProviderAuth.js +2 -2
- package/dist/pipeline/SubscriptionAccountHealth.cjs +2 -2
- package/dist/pipeline/SubscriptionAccountHealth.d.cts +7 -0
- package/dist/pipeline/SubscriptionAccountHealth.d.ts +7 -0
- package/dist/pipeline/SubscriptionAccountHealth.js +1 -1
- package/dist/pipeline/executeProviderCall.cjs +2 -2
- package/dist/pipeline/executeProviderCall.d.cts +11 -6
- package/dist/pipeline/executeProviderCall.d.ts +11 -6
- package/dist/pipeline/executeProviderCall.js +1 -1
- package/dist/pipeline/upstreamFetch.cjs +2 -2
- package/dist/pipeline/upstreamFetch.d.cts +5 -0
- package/dist/pipeline/upstreamFetch.d.ts +5 -0
- package/dist/pipeline/upstreamFetch.js +1 -1
- package/dist/ports.d.cts +10 -3
- package/dist/ports.d.ts +10 -3
- package/dist/provider-proxy/ProviderProxy.cjs +32 -28
- package/dist/provider-proxy/ProviderProxy.d.cts +6 -2
- package/dist/provider-proxy/ProviderProxy.d.ts +6 -2
- package/dist/provider-proxy/ProviderProxy.js +31 -27
- package/dist/provider-proxy/identity/codexCliHeaders.cjs +4 -2
- package/dist/provider-proxy/identity/codexCliHeaders.d.cts +26 -6
- package/dist/provider-proxy/identity/codexCliHeaders.d.ts +26 -6
- package/dist/provider-proxy/identity/codexCliHeaders.js +5 -3
- package/dist/provider-proxy/ingress/providerProxyShared.cjs +36 -28
- package/dist/provider-proxy/ingress/providerProxyShared.d.cts +41 -9
- package/dist/provider-proxy/ingress/providerProxyShared.d.ts +41 -9
- package/dist/provider-proxy/ingress/providerProxyShared.js +35 -27
- package/dist/provider-proxy/types.d.cts +17 -483
- package/dist/provider-proxy/types.d.ts +17 -483
- package/dist/provider-proxy.cjs +46 -28
- package/dist/provider-proxy.d.cts +34 -8
- package/dist/provider-proxy.d.ts +34 -8
- package/dist/provider-proxy.js +45 -27
- package/dist/proxy-UZTtjPZx.d.cts +18 -0
- package/dist/proxy-UZTtjPZx.d.ts +18 -0
- package/dist/{routeResolver-CVFE8KKe.d.cts → routeResolver-Da0yvkL1.d.cts} +4 -2
- package/dist/{routeResolver-C0mkkZaM.d.ts → routeResolver-STwMz_G4.d.ts} +4 -2
- package/dist/runtime-6QXNU526.cjs +8 -0
- package/dist/runtime-M5WXLD2R.js +8 -0
- package/dist/runtime-t8AZacFF.d.cts +233 -0
- package/dist/runtime-t8AZacFF.d.ts +233 -0
- package/dist/search/api.cjs +761 -0
- package/dist/search/api.d.cts +370 -0
- package/dist/search/api.d.ts +370 -0
- package/dist/search/api.js +761 -0
- package/dist/search/http.cjs +37 -0
- package/dist/search/http.d.cts +269 -0
- package/dist/search/http.d.ts +269 -0
- package/dist/search/http.js +37 -0
- package/dist/search.cjs +57 -0
- package/dist/search.d.cts +113 -0
- package/dist/search.d.ts +113 -0
- package/dist/search.js +57 -0
- package/dist/transformer/TransformerChainExecutor.cjs +2 -2
- package/dist/transformer/TransformerChainExecutor.d.cts +2 -2
- package/dist/transformer/TransformerChainExecutor.d.ts +2 -2
- package/dist/transformer/TransformerChainExecutor.js +1 -1
- package/dist/transformer/transformers/AnthropicOpenAIToAnthropicStream.cjs +16 -0
- package/dist/transformer/transformers/AnthropicOpenAIToAnthropicStream.d.cts +53 -0
- package/dist/transformer/transformers/AnthropicOpenAIToAnthropicStream.d.ts +53 -0
- package/dist/transformer/transformers/AnthropicOpenAIToAnthropicStream.js +16 -0
- package/dist/transformer/transformers/AnthropicTransformer.cjs +4 -3
- package/dist/transformer/transformers/AnthropicTransformer.js +3 -2
- package/dist/transformer/transformers/GeminiCodeAssistTransformer.cjs +4 -4
- package/dist/transformer/transformers/GeminiCodeAssistTransformer.js +3 -3
- package/dist/transformer/transformers/GeminiTransformer.cjs +4 -4
- package/dist/transformer/transformers/GeminiTransformer.js +3 -3
- package/dist/transformer/transformers/OpenAIResponseTransformer.cjs +3 -3
- package/dist/transformer/transformers/OpenAIResponseTransformer.js +2 -2
- package/dist/transformer/transformers/OpenAITransformer.cjs +3 -3
- package/dist/transformer/transformers/OpenAITransformer.js +2 -2
- package/dist/transformer/transformers.cjs +11 -10
- package/dist/transformer/transformers.js +12 -11
- package/dist/transformer/types.d.cts +39 -4
- package/dist/transformer/types.d.ts +39 -4
- package/dist/transformer.cjs +14 -13
- package/dist/transformer.js +13 -12
- package/dist/types-BSIJdsyl.d.cts +1130 -0
- package/dist/types-Be-yt_6T.d.cts +196 -0
- package/dist/types-By9Tg6-I.d.ts +1130 -0
- package/dist/types-CbCZqLGg.d.cts +127 -0
- package/dist/types-CbCZqLGg.d.ts +127 -0
- package/dist/{types-C2MwkLah.d.cts → types-D-oHYusb.d.cts} +250 -21
- package/dist/types-Dm4_36V4.d.ts +196 -0
- package/dist/{types-BB8pxk_3.d.ts → types-Dvlpjn0d.d.ts} +250 -21
- package/dist/usage.cjs +2 -2
- package/dist/usage.d.cts +6 -1
- package/dist/usage.d.ts +6 -1
- package/dist/usage.js +1 -1
- package/package.json +71 -64
- package/dist/chunk-FCR77GYM.cjs +0 -33
- package/dist/chunk-K5NM7VAH.js +0 -33
- /package/dist/{chunk-XXFYLL7R.js → chunk-ECZ3ZE2C.js} +0 -0
- /package/dist/{chunk-3SCOLIPT.cjs → chunk-MXI2PWIC.cjs} +0 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { SearchErrorCode } from '@omnicross/contracts/search-types';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Per-frontend search execution modes (plan 阶段5, hard constraint 6).
|
|
5
|
+
*
|
|
6
|
+
* Three protocol frontends can reach search — Codex `/v1/alpha/search`, OpenAI
|
|
7
|
+
* Responses, and Anthropic Messages — and each of them independently answers
|
|
8
|
+
* ONE question: who executes the search?
|
|
9
|
+
*
|
|
10
|
+
* - `native` — the UPSTREAM executes it. Omnicross injects/relays and touches
|
|
11
|
+
* nothing else; the wire stays whatever the provider produced.
|
|
12
|
+
* - `managed` — OMNICROSS executes it through {@link SearchRuntime} and
|
|
13
|
+
* synthesizes protocol-compatible output.
|
|
14
|
+
* - `off` — the capability is not offered: a structured
|
|
15
|
+
* `unsupported_capability` error, never a bare 404 (plan §15).
|
|
16
|
+
*
|
|
17
|
+
* **Native and managed are never mixed on one wire exchange.** That is a plan
|
|
18
|
+
* hard constraint, and this module is how it is made structural rather than
|
|
19
|
+
* conventional: a request resolves its mode ONCE, before any wire bytes, and
|
|
20
|
+
* the two lanes downstream share no emission code. A helper that "falls back
|
|
21
|
+
* from native to managed" (or the reverse) would defeat the whole arrangement,
|
|
22
|
+
* so no such helper exists here and none should be added.
|
|
23
|
+
*
|
|
24
|
+
* The defaults preserve today's behavior exactly: Responses and Anthropic keep
|
|
25
|
+
* their existing native relay, and Codex is `off` — which is the one deliberate
|
|
26
|
+
* visible change in this change set, since `off` answers with a structured
|
|
27
|
+
* error where the router previously answered a generic 404.
|
|
28
|
+
*
|
|
29
|
+
* Pure vocabulary: no IO, no provider imports, no runtime. That is what lets
|
|
30
|
+
* `outbound-api` and `provider-proxy` both import it without dragging jsdom or
|
|
31
|
+
* undici into their module graphs.
|
|
32
|
+
*
|
|
33
|
+
* @module search/frontends
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
/** Who executes a search for one protocol frontend. */
|
|
37
|
+
type SearchFrontendMode = 'native' | 'managed' | 'off';
|
|
38
|
+
/** The protocol frontends that can reach search. */
|
|
39
|
+
type SearchFrontendName = 'codex' | 'responses' | 'anthropic';
|
|
40
|
+
/** The resolved mode of every frontend. Total — every frontend always has one. */
|
|
41
|
+
type SearchFrontendModes = {
|
|
42
|
+
readonly [K in SearchFrontendName]: SearchFrontendMode;
|
|
43
|
+
};
|
|
44
|
+
/** Every frontend name, in the order configuration and doctor print them. */
|
|
45
|
+
declare const SEARCH_FRONTEND_NAMES: readonly SearchFrontendName[];
|
|
46
|
+
/** Every mode value, for validation messages and exhaustiveness. */
|
|
47
|
+
declare const SEARCH_FRONTEND_MODES: readonly SearchFrontendMode[];
|
|
48
|
+
/**
|
|
49
|
+
* The behavior-preserving defaults.
|
|
50
|
+
*
|
|
51
|
+
* `codex: 'off'` is not "search disabled" — the route exists and answers with a
|
|
52
|
+
* structured `unsupported_capability`. It is off because the Codex request and
|
|
53
|
+
* response schemas are UNVERIFIED (see `docs/design/search-baseline/wire-baseline.md`
|
|
54
|
+
* §1.2/§1.3); enabling it is a deliberate operator decision.
|
|
55
|
+
*/
|
|
56
|
+
declare const DEFAULT_SEARCH_FRONTEND_MODES: SearchFrontendModes;
|
|
57
|
+
/**
|
|
58
|
+
* The stable error code every frontend uses when its mode is `off`.
|
|
59
|
+
*
|
|
60
|
+
* Plan §15: a frontend may close managed search, but it must then say
|
|
61
|
+
* `unsupported_capability` — it must never keep exposing an unimplemented route
|
|
62
|
+
* as a 404. The string is shared so the three frontends cannot drift apart.
|
|
63
|
+
*/
|
|
64
|
+
declare const SEARCH_UNSUPPORTED_CAPABILITY_CODE = "unsupported_capability";
|
|
65
|
+
/**
|
|
66
|
+
* HTTP status for a search-taxonomy failure surfaced by a protocol frontend.
|
|
67
|
+
*
|
|
68
|
+
* The mapping answers "whose problem is it?" rather than "which code is it?":
|
|
69
|
+
* a client can act on 429 and 504; everything that failed on OUR side of the
|
|
70
|
+
* wire — a provider that broke, a policy that refused, a config we lack — is a
|
|
71
|
+
* 502-class fact about the gateway's upstream, not a fault in the request the
|
|
72
|
+
* client sent. The one 4xx here is `cancelled`, which is 499 because the client
|
|
73
|
+
* itself hung up.
|
|
74
|
+
*/
|
|
75
|
+
declare function searchErrorHttpStatus(code: SearchErrorCode): number;
|
|
76
|
+
/** Whether `value` is one of the three modes. */
|
|
77
|
+
declare function isSearchFrontendMode(value: unknown): value is SearchFrontendMode;
|
|
78
|
+
/**
|
|
79
|
+
* Read modes tolerantly: an unusable member falls back to its default rather
|
|
80
|
+
* than throwing, so a malformed config never takes the daemon down.
|
|
81
|
+
*
|
|
82
|
+
* Use {@link validateSearchFrontendModes} to REPORT what was unusable — the two
|
|
83
|
+
* run side by side exactly as the images config's tolerant read and strict
|
|
84
|
+
* validation do.
|
|
85
|
+
*/
|
|
86
|
+
declare function normalizeSearchFrontendModes(value: unknown): SearchFrontendModes;
|
|
87
|
+
/**
|
|
88
|
+
* Structured validation errors, naming the offending FIELD.
|
|
89
|
+
*
|
|
90
|
+
* The rejected VALUE is never echoed, only its type. A mode is not a secret,
|
|
91
|
+
* but a secret pasted into the wrong field is still a secret, and a validator
|
|
92
|
+
* that quotes whatever it was handed is one misconfiguration away from putting
|
|
93
|
+
* it in a log. Same no-echo rule as the images config validator.
|
|
94
|
+
*/
|
|
95
|
+
declare function validateSearchFrontendModes(value: unknown, path?: string): string[];
|
|
96
|
+
|
|
97
|
+
export { DEFAULT_SEARCH_FRONTEND_MODES as D, SEARCH_FRONTEND_MODES as S, SEARCH_FRONTEND_NAMES as a, SEARCH_UNSUPPORTED_CAPABILITY_CODE as b, type SearchFrontendMode as c, type SearchFrontendModes as d, type SearchFrontendName as e, isSearchFrontendMode as i, normalizeSearchFrontendModes as n, searchErrorHttpStatus as s, validateSearchFrontendModes as v };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { SearchErrorCode } from '@omnicross/contracts/search-types';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Per-frontend search execution modes (plan 阶段5, hard constraint 6).
|
|
5
|
+
*
|
|
6
|
+
* Three protocol frontends can reach search — Codex `/v1/alpha/search`, OpenAI
|
|
7
|
+
* Responses, and Anthropic Messages — and each of them independently answers
|
|
8
|
+
* ONE question: who executes the search?
|
|
9
|
+
*
|
|
10
|
+
* - `native` — the UPSTREAM executes it. Omnicross injects/relays and touches
|
|
11
|
+
* nothing else; the wire stays whatever the provider produced.
|
|
12
|
+
* - `managed` — OMNICROSS executes it through {@link SearchRuntime} and
|
|
13
|
+
* synthesizes protocol-compatible output.
|
|
14
|
+
* - `off` — the capability is not offered: a structured
|
|
15
|
+
* `unsupported_capability` error, never a bare 404 (plan §15).
|
|
16
|
+
*
|
|
17
|
+
* **Native and managed are never mixed on one wire exchange.** That is a plan
|
|
18
|
+
* hard constraint, and this module is how it is made structural rather than
|
|
19
|
+
* conventional: a request resolves its mode ONCE, before any wire bytes, and
|
|
20
|
+
* the two lanes downstream share no emission code. A helper that "falls back
|
|
21
|
+
* from native to managed" (or the reverse) would defeat the whole arrangement,
|
|
22
|
+
* so no such helper exists here and none should be added.
|
|
23
|
+
*
|
|
24
|
+
* The defaults preserve today's behavior exactly: Responses and Anthropic keep
|
|
25
|
+
* their existing native relay, and Codex is `off` — which is the one deliberate
|
|
26
|
+
* visible change in this change set, since `off` answers with a structured
|
|
27
|
+
* error where the router previously answered a generic 404.
|
|
28
|
+
*
|
|
29
|
+
* Pure vocabulary: no IO, no provider imports, no runtime. That is what lets
|
|
30
|
+
* `outbound-api` and `provider-proxy` both import it without dragging jsdom or
|
|
31
|
+
* undici into their module graphs.
|
|
32
|
+
*
|
|
33
|
+
* @module search/frontends
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
/** Who executes a search for one protocol frontend. */
|
|
37
|
+
type SearchFrontendMode = 'native' | 'managed' | 'off';
|
|
38
|
+
/** The protocol frontends that can reach search. */
|
|
39
|
+
type SearchFrontendName = 'codex' | 'responses' | 'anthropic';
|
|
40
|
+
/** The resolved mode of every frontend. Total — every frontend always has one. */
|
|
41
|
+
type SearchFrontendModes = {
|
|
42
|
+
readonly [K in SearchFrontendName]: SearchFrontendMode;
|
|
43
|
+
};
|
|
44
|
+
/** Every frontend name, in the order configuration and doctor print them. */
|
|
45
|
+
declare const SEARCH_FRONTEND_NAMES: readonly SearchFrontendName[];
|
|
46
|
+
/** Every mode value, for validation messages and exhaustiveness. */
|
|
47
|
+
declare const SEARCH_FRONTEND_MODES: readonly SearchFrontendMode[];
|
|
48
|
+
/**
|
|
49
|
+
* The behavior-preserving defaults.
|
|
50
|
+
*
|
|
51
|
+
* `codex: 'off'` is not "search disabled" — the route exists and answers with a
|
|
52
|
+
* structured `unsupported_capability`. It is off because the Codex request and
|
|
53
|
+
* response schemas are UNVERIFIED (see `docs/design/search-baseline/wire-baseline.md`
|
|
54
|
+
* §1.2/§1.3); enabling it is a deliberate operator decision.
|
|
55
|
+
*/
|
|
56
|
+
declare const DEFAULT_SEARCH_FRONTEND_MODES: SearchFrontendModes;
|
|
57
|
+
/**
|
|
58
|
+
* The stable error code every frontend uses when its mode is `off`.
|
|
59
|
+
*
|
|
60
|
+
* Plan §15: a frontend may close managed search, but it must then say
|
|
61
|
+
* `unsupported_capability` — it must never keep exposing an unimplemented route
|
|
62
|
+
* as a 404. The string is shared so the three frontends cannot drift apart.
|
|
63
|
+
*/
|
|
64
|
+
declare const SEARCH_UNSUPPORTED_CAPABILITY_CODE = "unsupported_capability";
|
|
65
|
+
/**
|
|
66
|
+
* HTTP status for a search-taxonomy failure surfaced by a protocol frontend.
|
|
67
|
+
*
|
|
68
|
+
* The mapping answers "whose problem is it?" rather than "which code is it?":
|
|
69
|
+
* a client can act on 429 and 504; everything that failed on OUR side of the
|
|
70
|
+
* wire — a provider that broke, a policy that refused, a config we lack — is a
|
|
71
|
+
* 502-class fact about the gateway's upstream, not a fault in the request the
|
|
72
|
+
* client sent. The one 4xx here is `cancelled`, which is 499 because the client
|
|
73
|
+
* itself hung up.
|
|
74
|
+
*/
|
|
75
|
+
declare function searchErrorHttpStatus(code: SearchErrorCode): number;
|
|
76
|
+
/** Whether `value` is one of the three modes. */
|
|
77
|
+
declare function isSearchFrontendMode(value: unknown): value is SearchFrontendMode;
|
|
78
|
+
/**
|
|
79
|
+
* Read modes tolerantly: an unusable member falls back to its default rather
|
|
80
|
+
* than throwing, so a malformed config never takes the daemon down.
|
|
81
|
+
*
|
|
82
|
+
* Use {@link validateSearchFrontendModes} to REPORT what was unusable — the two
|
|
83
|
+
* run side by side exactly as the images config's tolerant read and strict
|
|
84
|
+
* validation do.
|
|
85
|
+
*/
|
|
86
|
+
declare function normalizeSearchFrontendModes(value: unknown): SearchFrontendModes;
|
|
87
|
+
/**
|
|
88
|
+
* Structured validation errors, naming the offending FIELD.
|
|
89
|
+
*
|
|
90
|
+
* The rejected VALUE is never echoed, only its type. A mode is not a secret,
|
|
91
|
+
* but a secret pasted into the wrong field is still a secret, and a validator
|
|
92
|
+
* that quotes whatever it was handed is one misconfiguration away from putting
|
|
93
|
+
* it in a log. Same no-echo rule as the images config validator.
|
|
94
|
+
*/
|
|
95
|
+
declare function validateSearchFrontendModes(value: unknown, path?: string): string[];
|
|
96
|
+
|
|
97
|
+
export { DEFAULT_SEARCH_FRONTEND_MODES as D, SEARCH_FRONTEND_MODES as S, SEARCH_FRONTEND_NAMES as a, SEARCH_UNSUPPORTED_CAPABILITY_CODE as b, type SearchFrontendMode as c, type SearchFrontendModes as d, type SearchFrontendName as e, isSearchFrontendMode as i, normalizeSearchFrontendModes as n, searchErrorHttpStatus as s, validateSearchFrontendModes as v };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
var _chunkUPQIWJIEcjs = require('./chunk-UPQIWJIE.cjs');
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
exports.DEFAULT_IMAGE_API_LIMITS = _chunkUPQIWJIEcjs.DEFAULT_IMAGE_API_LIMITS; exports.IMAGE_REQUEST_DIRECTORY_MARKER_CONTENT = _chunkUPQIWJIEcjs.IMAGE_REQUEST_DIRECTORY_MARKER_CONTENT; exports.IMAGE_REQUEST_DIRECTORY_MARKER_NAME = _chunkUPQIWJIEcjs.IMAGE_REQUEST_DIRECTORY_MARKER_NAME; exports.ImageGenerationError = _chunkUPQIWJIEcjs.ImageGenerationError; exports.ImageOrchestrator = _chunkUPQIWJIEcjs.ImageOrchestrator; exports.ImageProviderRegistry = _chunkUPQIWJIEcjs.ImageProviderRegistry; exports.ImageRequestResourceScope = _chunkUPQIWJIEcjs.ImageRequestResourceScope; exports.InMemoryImageAsset = _chunkUPQIWJIEcjs.InMemoryImageAsset; exports.InMemoryImageReferenceStore = _chunkUPQIWJIEcjs.InMemoryImageReferenceStore; exports.InMemoryResponsesImageStateStore = _chunkUPQIWJIEcjs.InMemoryResponsesImageStateStore; exports.assertFiniteImageApiLimits = _chunkUPQIWJIEcjs.assertFiniteImageApiLimits; exports.createImageApiContributions = _chunkUPQIWJIEcjs.createImageApiContributions; exports.createImageRequestResourceScope = _chunkUPQIWJIEcjs.createImageRequestResourceScope; exports.createResponsesImageGenerationContribution = _chunkUPQIWJIEcjs.createResponsesImageGenerationContribution; exports.createSafeRemoteImageResolver = _chunkUPQIWJIEcjs.createSafeRemoteImageResolver; exports.emitImageTelemetry = _chunkUPQIWJIEcjs.emitImageTelemetry; exports.imageGenerationErrorFromPublic = _chunkUPQIWJIEcjs.imageGenerationErrorFromPublic; exports.inspectResponsesImageRequest = _chunkUPQIWJIEcjs.inspectResponsesImageRequest; exports.isImageGenerationError = _chunkUPQIWJIEcjs.isImageGenerationError; exports.normalizeImageGenerationError = _chunkUPQIWJIEcjs.normalizeImageGenerationError; exports.readImageAssetBytes = _chunkUPQIWJIEcjs.readImageAssetBytes; exports.resolveImageCapabilities = _chunkUPQIWJIEcjs.resolveImageCapabilities; exports.serializeImageGenerationError = _chunkUPQIWJIEcjs.serializeImageGenerationError; exports.validateResponsesImageSelection = _chunkUPQIWJIEcjs.validateResponsesImageSelection;
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { ImageCapabilityEvidenceLayer, ImageCapabilities, ImageGenerationErrorCode, ImageRetrySafety, ImageModerationDetails, ImageGenerationPublicError } from '@omnicross/contracts/image-generation-types';
|
|
2
|
+
import { al as ResponsesImageGenerationContributionDeps, ak as ResponsesImageGenerationContribution, am as ResponsesImageInspectionInput, a9 as ResponsesImageAdmission, a7 as ResponsesHostedToolSelection } from './types-BSIJdsyl.cjs';
|
|
3
|
+
export { I as ImageAsset, e as ImageJob, f as ImageJobObservability, g as ImageJobObservabilitySnapshot, h as ImageOrchestrator, i as ImageOrchestratorOptions, j as ImageOrchestratorRunOptions, k as ImageProvider, l as ImageProviderContext, m as ImageProviderLease, n as ImageProviderRegistry, o as ImageProviderRequest, p as ImageReferenceLease, q as ImageReferenceResolution, r as ImageReferenceSaveInput, s as ImageReferenceStore, t as ImageReferenceValue, u as ImageRetentionPolicy, v as ImageTelemetryOutputMetadata, w as ImageTelemetryRecord, x as ImageTelemetrySink, y as InMemoryImageAsset, z as InMemoryImageReferenceStore, B as InMemoryResponsesImageStateStore, C as InMemoryResponsesImageStateStoreOptions, a6 as ResponsesHostedToolIdentity, a8 as ResponsesImageAction, aa as ResponsesImageCallBinding, ab as ResponsesImageCallId, ac as ResponsesImageCallResolution, ad as ResponsesImageCallStateLease, ae as ResponsesImageCompletedRecord, af as ResponsesImageEventAllocator, ag as ResponsesImageExecutionEvent, ah as ResponsesImageFailedRecord, ai as ResponsesImageGenerationCallItem, aj as ResponsesImageGenerationCallStartedItem, an as ResponsesImageNormalizedOptions, ao as ResponsesImagePartialEvent, ap as ResponsesImageRequestScope, aq as ResponsesImageRequestScopeInput, ar as ResponsesImageResponseResolution, as as ResponsesImageResponseStateLease, at as ResponsesImageSelectionPolicy, au as ResponsesImageStartedRecord, av as ResponsesImageStateCommitInput, aw as ResponsesImageStateStore, ax as ResponsesImageTrustedRuntime, aA as ResponsesSelectedImageCall, aL as emitImageTelemetry, aP as readImageAssetBytes } from './types-BSIJdsyl.cjs';
|
|
4
|
+
import { d as ImageApiContributionsDeps, c as ImageApiContributions, R as RemoteImageAssetResolver } from './types-Be-yt_6T.cjs';
|
|
5
|
+
export { C as CreateImageRequestResourceScopeOptions, D as DEFAULT_IMAGE_API_LIMITS, I as IMAGE_REQUEST_DIRECTORY_MARKER_CONTENT, a as IMAGE_REQUEST_DIRECTORY_MARKER_NAME, b as ImageApiAuditRecord, e as ImageApiLimits, f as ImageApiRuntime, g as ImageApiRuntimeResolver, h as ImageOpenAIOperationContribution, i as ImageRemoteMaterializer, j as ImageRequestResourceOwnership, k as ImageRequestResourceScope, l as ImageTemporaryResourceBudget, m as ImageTemporaryResourceBudgetLease, n as assertFiniteImageApiLimits, o as createImageRequestResourceScope } from './types-Be-yt_6T.cjs';
|
|
6
|
+
import 'node:http';
|
|
7
|
+
import '@omnicross/contracts/completion-types';
|
|
8
|
+
import '@omnicross/contracts/usage-stats-types';
|
|
9
|
+
import '@omnicross/contracts/subscription-types';
|
|
10
|
+
import '@omnicross/contracts/usage-types';
|
|
11
|
+
import './completion/ApiKeyPoolService.cjs';
|
|
12
|
+
import '@omnicross/contracts/llm-config';
|
|
13
|
+
import './logger-4GvQNzhE.cjs';
|
|
14
|
+
import './pipeline/AuthSource.cjs';
|
|
15
|
+
import './pipeline/BoundAccountSelectionError.cjs';
|
|
16
|
+
import './pipeline/SubscriptionAuthSource.cjs';
|
|
17
|
+
import './pipeline/SubscriptionAuthStrategy.cjs';
|
|
18
|
+
import './ports/provider-config-source.cjs';
|
|
19
|
+
import './transformer/types.cjs';
|
|
20
|
+
import './transformer/TransformerService.cjs';
|
|
21
|
+
import './ports/web-search-backend.cjs';
|
|
22
|
+
import '@omnicross/contracts/websearch-types';
|
|
23
|
+
import './frontends-Doz0RaWu.cjs';
|
|
24
|
+
import '@omnicross/contracts/search-types';
|
|
25
|
+
import './runtime-t8AZacFF.cjs';
|
|
26
|
+
import 'node:fs/promises';
|
|
27
|
+
|
|
28
|
+
declare function createResponsesImageGenerationContribution(deps: ResponsesImageGenerationContributionDeps): ResponsesImageGenerationContribution;
|
|
29
|
+
|
|
30
|
+
declare function inspectResponsesImageRequest(input: ResponsesImageInspectionInput): ResponsesImageAdmission;
|
|
31
|
+
declare function validateResponsesImageSelection(admission: ResponsesImageAdmission, selection: ResponsesHostedToolSelection): void;
|
|
32
|
+
|
|
33
|
+
interface ImageCapabilityEvidenceSet {
|
|
34
|
+
readonly adapter: ImageCapabilityEvidenceLayer;
|
|
35
|
+
readonly account: ImageCapabilityEvidenceLayer;
|
|
36
|
+
readonly upstream: ImageCapabilityEvidenceLayer;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Resolve the adapter declaration, selected-account evidence, and observed
|
|
40
|
+
* upstream evidence without inferring anything from model names.
|
|
41
|
+
*/
|
|
42
|
+
declare function resolveImageCapabilities(evidence: ImageCapabilityEvidenceSet, now?: number): ImageCapabilities;
|
|
43
|
+
|
|
44
|
+
interface ImageGenerationErrorOptions {
|
|
45
|
+
readonly param?: string;
|
|
46
|
+
readonly httpStatus?: number;
|
|
47
|
+
readonly retryAfterSeconds?: number;
|
|
48
|
+
readonly retrySafety?: ImageRetrySafety;
|
|
49
|
+
readonly moderationDetails?: ImageModerationDetails;
|
|
50
|
+
readonly cause?: unknown;
|
|
51
|
+
}
|
|
52
|
+
declare class ImageGenerationError extends Error {
|
|
53
|
+
readonly code: ImageGenerationErrorCode;
|
|
54
|
+
readonly param?: string;
|
|
55
|
+
readonly httpStatus: number;
|
|
56
|
+
readonly retryAfterSeconds?: number;
|
|
57
|
+
readonly retrySafety?: ImageRetrySafety;
|
|
58
|
+
readonly moderationDetails?: ImageModerationDetails;
|
|
59
|
+
constructor(code: ImageGenerationErrorCode, options?: ImageGenerationErrorOptions);
|
|
60
|
+
toJSON(): ImageGenerationPublicError;
|
|
61
|
+
}
|
|
62
|
+
declare function isImageGenerationError(error: unknown): error is ImageGenerationError;
|
|
63
|
+
declare function serializeImageGenerationError(error: ImageGenerationError): ImageGenerationPublicError;
|
|
64
|
+
declare function normalizeImageGenerationError(error: unknown, fallbackCode?: ImageGenerationErrorCode, options?: Omit<ImageGenerationErrorOptions, 'cause'>): ImageGenerationError;
|
|
65
|
+
/** Rebuild an untrusted provider error through the allow-list and canonical messages. */
|
|
66
|
+
declare function imageGenerationErrorFromPublic(value: unknown): ImageGenerationError;
|
|
67
|
+
|
|
68
|
+
declare function createImageApiContributions(deps: ImageApiContributionsDeps): ImageApiContributions;
|
|
69
|
+
|
|
70
|
+
interface ResolvedAddress {
|
|
71
|
+
readonly address: string;
|
|
72
|
+
readonly family: 4 | 6;
|
|
73
|
+
}
|
|
74
|
+
interface SafeRemoteImageResolverDeps {
|
|
75
|
+
readonly resolveAll?: (hostname: string, signal: AbortSignal) => Promise<readonly ResolvedAddress[]>;
|
|
76
|
+
readonly requestPinned?: (input: SafeRemotePinnedRequest) => Promise<SafeRemotePinnedResponse>;
|
|
77
|
+
}
|
|
78
|
+
interface SafeRemotePinnedRequest {
|
|
79
|
+
readonly url: URL;
|
|
80
|
+
readonly address: ResolvedAddress;
|
|
81
|
+
readonly signal: AbortSignal;
|
|
82
|
+
readonly connectTimeoutMs: number;
|
|
83
|
+
readonly totalTimeoutMs: number;
|
|
84
|
+
readonly maxHeaderBytes: number;
|
|
85
|
+
}
|
|
86
|
+
interface SafeRemotePinnedResponse {
|
|
87
|
+
readonly statusCode: number;
|
|
88
|
+
readonly headers: Record<string, string | string[] | undefined>;
|
|
89
|
+
readonly body: AsyncIterable<Uint8Array> & {
|
|
90
|
+
dump(): Promise<unknown>;
|
|
91
|
+
};
|
|
92
|
+
close(): Promise<void>;
|
|
93
|
+
}
|
|
94
|
+
declare function createSafeRemoteImageResolver(deps?: SafeRemoteImageResolverDeps): RemoteImageAssetResolver;
|
|
95
|
+
|
|
96
|
+
export { ImageApiContributions, ImageApiContributionsDeps, type ImageCapabilityEvidenceSet, ImageGenerationError, type ImageGenerationErrorOptions, RemoteImageAssetResolver, ResponsesHostedToolSelection, ResponsesImageAdmission, ResponsesImageGenerationContribution, ResponsesImageGenerationContributionDeps, ResponsesImageInspectionInput, createImageApiContributions, createResponsesImageGenerationContribution, createSafeRemoteImageResolver, imageGenerationErrorFromPublic, inspectResponsesImageRequest, isImageGenerationError, normalizeImageGenerationError, resolveImageCapabilities, serializeImageGenerationError, validateResponsesImageSelection };
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { ImageCapabilityEvidenceLayer, ImageCapabilities, ImageGenerationErrorCode, ImageRetrySafety, ImageModerationDetails, ImageGenerationPublicError } from '@omnicross/contracts/image-generation-types';
|
|
2
|
+
import { al as ResponsesImageGenerationContributionDeps, ak as ResponsesImageGenerationContribution, am as ResponsesImageInspectionInput, a9 as ResponsesImageAdmission, a7 as ResponsesHostedToolSelection } from './types-By9Tg6-I.js';
|
|
3
|
+
export { I as ImageAsset, e as ImageJob, f as ImageJobObservability, g as ImageJobObservabilitySnapshot, h as ImageOrchestrator, i as ImageOrchestratorOptions, j as ImageOrchestratorRunOptions, k as ImageProvider, l as ImageProviderContext, m as ImageProviderLease, n as ImageProviderRegistry, o as ImageProviderRequest, p as ImageReferenceLease, q as ImageReferenceResolution, r as ImageReferenceSaveInput, s as ImageReferenceStore, t as ImageReferenceValue, u as ImageRetentionPolicy, v as ImageTelemetryOutputMetadata, w as ImageTelemetryRecord, x as ImageTelemetrySink, y as InMemoryImageAsset, z as InMemoryImageReferenceStore, B as InMemoryResponsesImageStateStore, C as InMemoryResponsesImageStateStoreOptions, a6 as ResponsesHostedToolIdentity, a8 as ResponsesImageAction, aa as ResponsesImageCallBinding, ab as ResponsesImageCallId, ac as ResponsesImageCallResolution, ad as ResponsesImageCallStateLease, ae as ResponsesImageCompletedRecord, af as ResponsesImageEventAllocator, ag as ResponsesImageExecutionEvent, ah as ResponsesImageFailedRecord, ai as ResponsesImageGenerationCallItem, aj as ResponsesImageGenerationCallStartedItem, an as ResponsesImageNormalizedOptions, ao as ResponsesImagePartialEvent, ap as ResponsesImageRequestScope, aq as ResponsesImageRequestScopeInput, ar as ResponsesImageResponseResolution, as as ResponsesImageResponseStateLease, at as ResponsesImageSelectionPolicy, au as ResponsesImageStartedRecord, av as ResponsesImageStateCommitInput, aw as ResponsesImageStateStore, ax as ResponsesImageTrustedRuntime, aA as ResponsesSelectedImageCall, aL as emitImageTelemetry, aP as readImageAssetBytes } from './types-By9Tg6-I.js';
|
|
4
|
+
import { d as ImageApiContributionsDeps, c as ImageApiContributions, R as RemoteImageAssetResolver } from './types-Dm4_36V4.js';
|
|
5
|
+
export { C as CreateImageRequestResourceScopeOptions, D as DEFAULT_IMAGE_API_LIMITS, I as IMAGE_REQUEST_DIRECTORY_MARKER_CONTENT, a as IMAGE_REQUEST_DIRECTORY_MARKER_NAME, b as ImageApiAuditRecord, e as ImageApiLimits, f as ImageApiRuntime, g as ImageApiRuntimeResolver, h as ImageOpenAIOperationContribution, i as ImageRemoteMaterializer, j as ImageRequestResourceOwnership, k as ImageRequestResourceScope, l as ImageTemporaryResourceBudget, m as ImageTemporaryResourceBudgetLease, n as assertFiniteImageApiLimits, o as createImageRequestResourceScope } from './types-Dm4_36V4.js';
|
|
6
|
+
import 'node:http';
|
|
7
|
+
import '@omnicross/contracts/completion-types';
|
|
8
|
+
import '@omnicross/contracts/usage-stats-types';
|
|
9
|
+
import '@omnicross/contracts/subscription-types';
|
|
10
|
+
import '@omnicross/contracts/usage-types';
|
|
11
|
+
import './completion/ApiKeyPoolService.js';
|
|
12
|
+
import '@omnicross/contracts/llm-config';
|
|
13
|
+
import './logger-4GvQNzhE.js';
|
|
14
|
+
import './pipeline/AuthSource.js';
|
|
15
|
+
import './pipeline/BoundAccountSelectionError.js';
|
|
16
|
+
import './pipeline/SubscriptionAuthSource.js';
|
|
17
|
+
import './pipeline/SubscriptionAuthStrategy.js';
|
|
18
|
+
import './ports/provider-config-source.js';
|
|
19
|
+
import './transformer/types.js';
|
|
20
|
+
import './transformer/TransformerService.js';
|
|
21
|
+
import './ports/web-search-backend.js';
|
|
22
|
+
import '@omnicross/contracts/websearch-types';
|
|
23
|
+
import './frontends-Doz0RaWu.js';
|
|
24
|
+
import '@omnicross/contracts/search-types';
|
|
25
|
+
import './runtime-t8AZacFF.js';
|
|
26
|
+
import 'node:fs/promises';
|
|
27
|
+
|
|
28
|
+
declare function createResponsesImageGenerationContribution(deps: ResponsesImageGenerationContributionDeps): ResponsesImageGenerationContribution;
|
|
29
|
+
|
|
30
|
+
declare function inspectResponsesImageRequest(input: ResponsesImageInspectionInput): ResponsesImageAdmission;
|
|
31
|
+
declare function validateResponsesImageSelection(admission: ResponsesImageAdmission, selection: ResponsesHostedToolSelection): void;
|
|
32
|
+
|
|
33
|
+
interface ImageCapabilityEvidenceSet {
|
|
34
|
+
readonly adapter: ImageCapabilityEvidenceLayer;
|
|
35
|
+
readonly account: ImageCapabilityEvidenceLayer;
|
|
36
|
+
readonly upstream: ImageCapabilityEvidenceLayer;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Resolve the adapter declaration, selected-account evidence, and observed
|
|
40
|
+
* upstream evidence without inferring anything from model names.
|
|
41
|
+
*/
|
|
42
|
+
declare function resolveImageCapabilities(evidence: ImageCapabilityEvidenceSet, now?: number): ImageCapabilities;
|
|
43
|
+
|
|
44
|
+
interface ImageGenerationErrorOptions {
|
|
45
|
+
readonly param?: string;
|
|
46
|
+
readonly httpStatus?: number;
|
|
47
|
+
readonly retryAfterSeconds?: number;
|
|
48
|
+
readonly retrySafety?: ImageRetrySafety;
|
|
49
|
+
readonly moderationDetails?: ImageModerationDetails;
|
|
50
|
+
readonly cause?: unknown;
|
|
51
|
+
}
|
|
52
|
+
declare class ImageGenerationError extends Error {
|
|
53
|
+
readonly code: ImageGenerationErrorCode;
|
|
54
|
+
readonly param?: string;
|
|
55
|
+
readonly httpStatus: number;
|
|
56
|
+
readonly retryAfterSeconds?: number;
|
|
57
|
+
readonly retrySafety?: ImageRetrySafety;
|
|
58
|
+
readonly moderationDetails?: ImageModerationDetails;
|
|
59
|
+
constructor(code: ImageGenerationErrorCode, options?: ImageGenerationErrorOptions);
|
|
60
|
+
toJSON(): ImageGenerationPublicError;
|
|
61
|
+
}
|
|
62
|
+
declare function isImageGenerationError(error: unknown): error is ImageGenerationError;
|
|
63
|
+
declare function serializeImageGenerationError(error: ImageGenerationError): ImageGenerationPublicError;
|
|
64
|
+
declare function normalizeImageGenerationError(error: unknown, fallbackCode?: ImageGenerationErrorCode, options?: Omit<ImageGenerationErrorOptions, 'cause'>): ImageGenerationError;
|
|
65
|
+
/** Rebuild an untrusted provider error through the allow-list and canonical messages. */
|
|
66
|
+
declare function imageGenerationErrorFromPublic(value: unknown): ImageGenerationError;
|
|
67
|
+
|
|
68
|
+
declare function createImageApiContributions(deps: ImageApiContributionsDeps): ImageApiContributions;
|
|
69
|
+
|
|
70
|
+
interface ResolvedAddress {
|
|
71
|
+
readonly address: string;
|
|
72
|
+
readonly family: 4 | 6;
|
|
73
|
+
}
|
|
74
|
+
interface SafeRemoteImageResolverDeps {
|
|
75
|
+
readonly resolveAll?: (hostname: string, signal: AbortSignal) => Promise<readonly ResolvedAddress[]>;
|
|
76
|
+
readonly requestPinned?: (input: SafeRemotePinnedRequest) => Promise<SafeRemotePinnedResponse>;
|
|
77
|
+
}
|
|
78
|
+
interface SafeRemotePinnedRequest {
|
|
79
|
+
readonly url: URL;
|
|
80
|
+
readonly address: ResolvedAddress;
|
|
81
|
+
readonly signal: AbortSignal;
|
|
82
|
+
readonly connectTimeoutMs: number;
|
|
83
|
+
readonly totalTimeoutMs: number;
|
|
84
|
+
readonly maxHeaderBytes: number;
|
|
85
|
+
}
|
|
86
|
+
interface SafeRemotePinnedResponse {
|
|
87
|
+
readonly statusCode: number;
|
|
88
|
+
readonly headers: Record<string, string | string[] | undefined>;
|
|
89
|
+
readonly body: AsyncIterable<Uint8Array> & {
|
|
90
|
+
dump(): Promise<unknown>;
|
|
91
|
+
};
|
|
92
|
+
close(): Promise<void>;
|
|
93
|
+
}
|
|
94
|
+
declare function createSafeRemoteImageResolver(deps?: SafeRemoteImageResolverDeps): RemoteImageAssetResolver;
|
|
95
|
+
|
|
96
|
+
export { ImageApiContributions, ImageApiContributionsDeps, type ImageCapabilityEvidenceSet, ImageGenerationError, type ImageGenerationErrorOptions, RemoteImageAssetResolver, ResponsesHostedToolSelection, ResponsesImageAdmission, ResponsesImageGenerationContribution, ResponsesImageGenerationContributionDeps, ResponsesImageInspectionInput, createImageApiContributions, createResponsesImageGenerationContribution, createSafeRemoteImageResolver, imageGenerationErrorFromPublic, inspectResponsesImageRequest, isImageGenerationError, normalizeImageGenerationError, resolveImageCapabilities, serializeImageGenerationError, validateResponsesImageSelection };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DEFAULT_IMAGE_API_LIMITS,
|
|
3
|
+
IMAGE_REQUEST_DIRECTORY_MARKER_CONTENT,
|
|
4
|
+
IMAGE_REQUEST_DIRECTORY_MARKER_NAME,
|
|
5
|
+
ImageGenerationError,
|
|
6
|
+
ImageOrchestrator,
|
|
7
|
+
ImageProviderRegistry,
|
|
8
|
+
ImageRequestResourceScope,
|
|
9
|
+
InMemoryImageAsset,
|
|
10
|
+
InMemoryImageReferenceStore,
|
|
11
|
+
InMemoryResponsesImageStateStore,
|
|
12
|
+
assertFiniteImageApiLimits,
|
|
13
|
+
createImageApiContributions,
|
|
14
|
+
createImageRequestResourceScope,
|
|
15
|
+
createResponsesImageGenerationContribution,
|
|
16
|
+
createSafeRemoteImageResolver,
|
|
17
|
+
emitImageTelemetry,
|
|
18
|
+
imageGenerationErrorFromPublic,
|
|
19
|
+
inspectResponsesImageRequest,
|
|
20
|
+
isImageGenerationError,
|
|
21
|
+
normalizeImageGenerationError,
|
|
22
|
+
readImageAssetBytes,
|
|
23
|
+
resolveImageCapabilities,
|
|
24
|
+
serializeImageGenerationError,
|
|
25
|
+
validateResponsesImageSelection
|
|
26
|
+
} from "./chunk-LQYS2N47.js";
|
|
27
|
+
export {
|
|
28
|
+
DEFAULT_IMAGE_API_LIMITS,
|
|
29
|
+
IMAGE_REQUEST_DIRECTORY_MARKER_CONTENT,
|
|
30
|
+
IMAGE_REQUEST_DIRECTORY_MARKER_NAME,
|
|
31
|
+
ImageGenerationError,
|
|
32
|
+
ImageOrchestrator,
|
|
33
|
+
ImageProviderRegistry,
|
|
34
|
+
ImageRequestResourceScope,
|
|
35
|
+
InMemoryImageAsset,
|
|
36
|
+
InMemoryImageReferenceStore,
|
|
37
|
+
InMemoryResponsesImageStateStore,
|
|
38
|
+
assertFiniteImageApiLimits,
|
|
39
|
+
createImageApiContributions,
|
|
40
|
+
createImageRequestResourceScope,
|
|
41
|
+
createResponsesImageGenerationContribution,
|
|
42
|
+
createSafeRemoteImageResolver,
|
|
43
|
+
emitImageTelemetry,
|
|
44
|
+
imageGenerationErrorFromPublic,
|
|
45
|
+
inspectResponsesImageRequest,
|
|
46
|
+
isImageGenerationError,
|
|
47
|
+
normalizeImageGenerationError,
|
|
48
|
+
readImageAssetBytes,
|
|
49
|
+
resolveImageCapabilities,
|
|
50
|
+
serializeImageGenerationError,
|
|
51
|
+
validateResponsesImageSelection
|
|
52
|
+
};
|