offrouter-core 0.2.0 → 0.2.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.
Files changed (139) hide show
  1. package/dist/audit.d.ts +137 -0
  2. package/dist/audit.d.ts.map +1 -0
  3. package/dist/audit.js +320 -0
  4. package/dist/audit.js.map +1 -0
  5. package/dist/auth/credential-chain.d.ts +84 -0
  6. package/dist/auth/credential-chain.d.ts.map +1 -0
  7. package/dist/auth/credential-chain.js +150 -0
  8. package/dist/auth/credential-chain.js.map +1 -0
  9. package/dist/auth/index.d.ts +10 -0
  10. package/dist/auth/index.d.ts.map +1 -0
  11. package/dist/auth/index.js +7 -0
  12. package/dist/auth/index.js.map +1 -0
  13. package/dist/auth/keychain.d.ts +60 -0
  14. package/dist/auth/keychain.d.ts.map +1 -0
  15. package/dist/auth/keychain.js +104 -0
  16. package/dist/auth/keychain.js.map +1 -0
  17. package/dist/auth/oauth-pkce.d.ts +138 -0
  18. package/dist/auth/oauth-pkce.d.ts.map +1 -0
  19. package/dist/auth/oauth-pkce.js +375 -0
  20. package/dist/auth/oauth-pkce.js.map +1 -0
  21. package/dist/auth/oauth-server.d.ts +36 -0
  22. package/dist/auth/oauth-server.d.ts.map +1 -0
  23. package/dist/auth/oauth-server.js +210 -0
  24. package/dist/auth/oauth-server.js.map +1 -0
  25. package/dist/config.d.ts +76 -0
  26. package/dist/config.d.ts.map +1 -0
  27. package/dist/config.js +355 -0
  28. package/dist/config.js.map +1 -0
  29. package/dist/delegation.d.ts +123 -0
  30. package/dist/delegation.d.ts.map +1 -0
  31. package/dist/delegation.js +455 -0
  32. package/dist/delegation.js.map +1 -0
  33. package/dist/index.d.ts +41 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +26 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/policy.d.ts +45 -0
  38. package/dist/policy.d.ts.map +1 -0
  39. package/dist/policy.js +318 -0
  40. package/dist/policy.js.map +1 -0
  41. package/{src/protocol.ts → dist/protocol.d.ts} +2 -2
  42. package/dist/protocol.d.ts.map +1 -0
  43. package/dist/protocol.js +6 -0
  44. package/dist/protocol.js.map +1 -0
  45. package/dist/providers/adapter.d.ts +137 -0
  46. package/dist/providers/adapter.d.ts.map +1 -0
  47. package/dist/providers/adapter.js +163 -0
  48. package/dist/providers/adapter.js.map +1 -0
  49. package/dist/providers/catalog-data.d.ts +128 -0
  50. package/dist/providers/catalog-data.d.ts.map +1 -0
  51. package/dist/providers/catalog-data.js +397 -0
  52. package/dist/providers/catalog-data.js.map +1 -0
  53. package/dist/providers/catalog.d.ts +63 -0
  54. package/dist/providers/catalog.d.ts.map +1 -0
  55. package/dist/providers/catalog.js +394 -0
  56. package/dist/providers/catalog.js.map +1 -0
  57. package/dist/providers/fake.d.ts +46 -0
  58. package/dist/providers/fake.d.ts.map +1 -0
  59. package/dist/providers/fake.js +234 -0
  60. package/dist/providers/fake.js.map +1 -0
  61. package/dist/providers/openai-compatible.d.ts +65 -0
  62. package/dist/providers/openai-compatible.d.ts.map +1 -0
  63. package/dist/providers/openai-compatible.js +434 -0
  64. package/dist/providers/openai-compatible.js.map +1 -0
  65. package/dist/proxy/responses-mapper.d.ts +366 -0
  66. package/dist/proxy/responses-mapper.d.ts.map +1 -0
  67. package/dist/proxy/responses-mapper.js +517 -0
  68. package/dist/proxy/responses-mapper.js.map +1 -0
  69. package/dist/proxy/responses-server.d.ts +29 -0
  70. package/dist/proxy/responses-server.d.ts.map +1 -0
  71. package/dist/proxy/responses-server.js +360 -0
  72. package/dist/proxy/responses-server.js.map +1 -0
  73. package/dist/router.d.ts +18 -0
  74. package/dist/router.d.ts.map +1 -0
  75. package/dist/router.js +296 -0
  76. package/dist/router.js.map +1 -0
  77. package/dist/schemas.d.ts +560 -0
  78. package/dist/schemas.d.ts.map +1 -0
  79. package/{src/schemas.ts → dist/schemas.js} +83 -103
  80. package/dist/schemas.js.map +1 -0
  81. package/dist/secrets.d.ts +112 -0
  82. package/dist/secrets.d.ts.map +1 -0
  83. package/dist/secrets.js +326 -0
  84. package/dist/secrets.js.map +1 -0
  85. package/dist/types.d.ts +117 -0
  86. package/dist/types.d.ts.map +1 -0
  87. package/dist/types.js +6 -0
  88. package/dist/types.js.map +1 -0
  89. package/dist/usage-file.d.ts +59 -0
  90. package/dist/usage-file.d.ts.map +1 -0
  91. package/dist/usage-file.js +316 -0
  92. package/dist/usage-file.js.map +1 -0
  93. package/dist/usage.d.ts +235 -0
  94. package/dist/usage.d.ts.map +1 -0
  95. package/dist/usage.js +517 -0
  96. package/dist/usage.js.map +1 -0
  97. package/package.json +9 -4
  98. package/src/audit.test.ts +0 -302
  99. package/src/audit.ts +0 -553
  100. package/src/auth/credential-chain.test.ts +0 -326
  101. package/src/auth/credential-chain.ts +0 -235
  102. package/src/auth/index.ts +0 -45
  103. package/src/auth/keychain.test.ts +0 -265
  104. package/src/auth/keychain.ts +0 -168
  105. package/src/auth/oauth-pkce.test.ts +0 -329
  106. package/src/auth/oauth-pkce.ts +0 -571
  107. package/src/auth/oauth-server.test.ts +0 -83
  108. package/src/auth/oauth-server.ts +0 -296
  109. package/src/config.test.ts +0 -479
  110. package/src/config.ts +0 -505
  111. package/src/delegation.test.ts +0 -368
  112. package/src/delegation.ts +0 -605
  113. package/src/index.ts +0 -280
  114. package/src/policy.test.ts +0 -634
  115. package/src/policy.ts +0 -420
  116. package/src/providers/adapter.test.ts +0 -293
  117. package/src/providers/adapter.ts +0 -328
  118. package/src/providers/catalog-data.test.ts +0 -258
  119. package/src/providers/catalog-data.ts +0 -498
  120. package/src/providers/catalog.test.ts +0 -84
  121. package/src/providers/catalog.ts +0 -483
  122. package/src/providers/fake.ts +0 -312
  123. package/src/providers/openai-compatible.test.ts +0 -366
  124. package/src/providers/openai-compatible.ts +0 -554
  125. package/src/proxy/responses-mapper.test.ts +0 -290
  126. package/src/proxy/responses-mapper.ts +0 -736
  127. package/src/proxy/responses-server.test.ts +0 -322
  128. package/src/proxy/responses-server.ts +0 -469
  129. package/src/router.test.ts +0 -699
  130. package/src/router.ts +0 -352
  131. package/src/schemas.test.ts +0 -291
  132. package/src/secrets.test.ts +0 -271
  133. package/src/secrets.ts +0 -461
  134. package/src/types.ts +0 -173
  135. package/src/usage-file.test.ts +0 -243
  136. package/src/usage-file.ts +0 -435
  137. package/src/usage.test.ts +0 -335
  138. package/src/usage.ts +0 -859
  139. package/tsconfig.json +0 -9
package/src/index.ts DELETED
@@ -1,280 +0,0 @@
1
- /**
2
- * offrouter-core public surface.
3
- * Policy and router live here; provider adapters land in later milestones.
4
- */
5
-
6
- export { ROUTE_PROTOCOL_VERSION } from "./protocol.js";
7
- export type { RouteProtocolVersion } from "./protocol.js";
8
-
9
- export type {
10
- AuthScope,
11
- AuthTier,
12
- FallbackChainEntry,
13
- FallbackReason,
14
- HarnessKind,
15
- HarnessRef,
16
- PolicyDecision,
17
- PolicyDenial,
18
- PolicyDenialCode,
19
- PolicyDenialTarget,
20
- ProviderCandidate,
21
- ProviderHealth,
22
- RiskLevel,
23
- RouteConstraints,
24
- RouteDecision,
25
- RouteRequest,
26
- RouteTask,
27
- SelectedRoute,
28
- SubscriptionStatus,
29
- TaskKind,
30
- WorkspaceRef,
31
- } from "./types.js";
32
-
33
- export {
34
- AuthScopeSchema,
35
- AuthTierSchema,
36
- FallbackChainEntrySchema,
37
- FallbackReasonSchema,
38
- HarnessKindSchema,
39
- HarnessRefSchema,
40
- PolicyDecisionSchema,
41
- PolicyDenialCodeSchema,
42
- PolicyDenialSchema,
43
- PolicyDenialTargetSchema,
44
- ProviderCandidateSchema,
45
- ProviderHealthSchema,
46
- RiskLevelSchema,
47
- RouteConstraintsSchema,
48
- RouteDecisionSchema,
49
- RouteRequestSchema,
50
- RouteTaskSchema,
51
- SelectedRouteSchema,
52
- SubscriptionStatusSchema,
53
- TaskKindSchema,
54
- WorkspaceRefSchema,
55
- } from "./schemas.js";
56
-
57
- export {
58
- evaluatePolicy,
59
- isHealthySubscriptionCapacity,
60
- meetsCapabilities,
61
- } from "./policy.js";
62
- export type { PolicyConfig } from "./policy.js";
63
-
64
- export { routeRequest } from "./router.js";
65
- export type { RouteOptions } from "./router.js";
66
-
67
- export { DelegationPolicyError, DelegationRuntime } from "./delegation.js";
68
- export type {
69
- DelegationEvent,
70
- DelegationMode,
71
- DelegationOutput,
72
- DelegationRequest,
73
- DelegationResult,
74
- DelegationRuntimeOptions,
75
- DelegationTask,
76
- DelegationTaskStatus,
77
- } from "./delegation.js";
78
-
79
- export {
80
- ConfigError,
81
- defaultConfig,
82
- loadConfig,
83
- resolveOffRouterHome,
84
- } from "./config.js";
85
- export type {
86
- ConfiguredAccount,
87
- ConfiguredProfile,
88
- ConfiguredProvider,
89
- ConfigWarning,
90
- LoadConfigOptions,
91
- OffRouterConfig,
92
- PolicyDefaults,
93
- ResolveHomeOptions,
94
- } from "./config.js";
95
-
96
- export {
97
- FileSecretStore,
98
- KeychainSecretStore,
99
- KeychainUnavailableError,
100
- REDACTED,
101
- redact,
102
- } from "./secrets.js";
103
- export type {
104
- FileSecretStoreOptions,
105
- KeychainSecretStoreOptions,
106
- SecretStore,
107
- } from "./secrets.js";
108
-
109
- export { DEFAULT_PREVIEW_MAX_CHARS, InMemoryAuditStore } from "./audit.js";
110
- export type {
111
- AppendDecisionOptions,
112
- AuditRecord,
113
- AuditRecordKind,
114
- AuditStore,
115
- CancellationState,
116
- InMemoryAuditStoreOptions,
117
- ListAuditOptions,
118
- MarkCancelledOptions,
119
- } from "./audit.js";
120
-
121
- export { DEFAULT_NEAR_LIMIT_THRESHOLD, InMemoryStateStore, InMemoryUsageStore } from "./usage.js";
122
- export {
123
- FileUsageStore,
124
- } from "./usage-file.js";
125
- export type {
126
- FileUsageStoreFileSystem,
127
- FileUsageStoreOptions,
128
- } from "./usage-file.js";
129
- export type {
130
- AccountUsageSnapshot,
131
- InMemoryUsageStoreOptions,
132
- PaidFallbackExplanation,
133
- ProviderUsageSnapshot,
134
- RecordUsageResult,
135
- SlidingWindowOptions,
136
- StateStore,
137
- UsageEvent,
138
- UsageEventKind,
139
- UsageStore,
140
- } from "./usage.js";
141
-
142
- // Provider discovery + adapters
143
- export {
144
- PROVIDER_ADAPTER_METHODS,
145
- ProviderError,
146
- capabilityToCandidate,
147
- isProviderError,
148
- mapHttpToProviderError,
149
- } from "./providers/adapter.js";
150
- export type {
151
- AuthStatus,
152
- CostEstimate,
153
- LimitSnapshot,
154
- ModelCapability,
155
- ProviderAdapter,
156
- ProviderErrorCode,
157
- ProviderErrorOptions,
158
- ProviderEvent,
159
- ProviderInvokeMessage,
160
- ProviderInvokeRequest,
161
- } from "./providers/adapter.js";
162
-
163
- export {
164
- MULTI_TIER_FAMILIES,
165
- STATIC_CATALOG,
166
- catalogToCandidates,
167
- familyAuthTiers,
168
- loadBuiltinCatalog,
169
- loadStaticCatalog,
170
- } from "./providers/catalog.js";
171
- export type {
172
- CatalogEntry,
173
- LoadBuiltinCatalogOptions,
174
- LoadCatalogOptions,
175
- LogicalModelFamily,
176
- } from "./providers/catalog.js";
177
-
178
- export {
179
- BUILTIN_PROVIDERS,
180
- BUILTIN_PROVIDER_IDS,
181
- getBuiltinProvider,
182
- selectBuiltinProviders,
183
- } from "./providers/catalog-data.js";
184
- export type {
185
- BuiltinCatalogConfig,
186
- BuiltinModelFamily,
187
- BuiltinProviderEntry,
188
- PricingHint,
189
- ProviderCatalogConfig,
190
- } from "./providers/catalog-data.js";
191
-
192
- export { FakeProviderAdapter, createFakeProvider } from "./providers/fake.js";
193
- export type { FakeModelConfig, FakeProviderOptions } from "./providers/fake.js";
194
-
195
- export {
196
- OLLAMA_DUMMY_BEARER,
197
- OpenAiCompatibleAdapter,
198
- createOpenAiCompatibleAdapter,
199
- } from "./providers/openai-compatible.js";
200
- export type {
201
- OpenAiCompatibleFlavor,
202
- OpenAiCompatibleOptions,
203
- } from "./providers/openai-compatible.js";
204
-
205
- // Auth module (credential chain, OAuth PKCE, keychain helpers)
206
- export {
207
- Redacted,
208
- defaultCallbackPort,
209
- deleteOAuthTokens,
210
- exchangeCodeForTokens,
211
- generateCodeChallenge,
212
- generateCodeVerifier,
213
- getOAuthTokens,
214
- getProviderToken,
215
- isOAuthProvider,
216
- isOAuthTokenExpired,
217
- PKCE_CONFIGS,
218
- refreshTokens,
219
- resolveClientId,
220
- resolveCredential,
221
- runOAuthLogin,
222
- setOAuthTokens,
223
- setProviderToken,
224
- startOAuthFlow,
225
- } from "./auth/index.js";
226
- export type {
227
- CredentialResult,
228
- CredentialSource,
229
- OAuthFlowResult,
230
- OAuthFlowState,
231
- OAuthProviderConfig,
232
- OAuthStoredTokens,
233
- OAuthStartOptions,
234
- OAuthTokenOptions,
235
- OAuthTokenResponse,
236
- ResolveCredentialOptions,
237
- RunOAuthLoginOptions,
238
- RunOAuthLoginResult,
239
- } from "./auth/index.js";
240
-
241
- // OpenAI Responses-compatible local proxy
242
- export {
243
- CHAT_COMPLETIONS_DONE,
244
- ChatCompletionsRequestSchema,
245
- ChatCompletionsSseBuilder,
246
- RESPONSES_PROMPT_PREVIEW_CHARS,
247
- ResponsesRequestSchema,
248
- ResponsesSseBuilder,
249
- InvalidProxyRequestError,
250
- buildDelegationRequest,
251
- buildRouteRequest,
252
- createResponsesProxyContext,
253
- extractPromptFromChatCompletions,
254
- extractPromptFromResponsesInput,
255
- openAiErrorPayload,
256
- policyDecisionToHttpStatus,
257
- promptDigest,
258
- promptPreview,
259
- providerErrorCodeToHttpStatus,
260
- responsesSseData,
261
- } from "./proxy/responses-mapper.js";
262
- export { startResponsesProxy } from "./proxy/responses-server.js";
263
- export type {
264
- BuildDelegationInput,
265
- BuildRouteInput,
266
- ChatCompletionDeltaEvent,
267
- ChatCompletionObject,
268
- ChatUsageInput,
269
- OpenAiErrorPayload,
270
- ParsedResponsesInput,
271
- ResponsesMessageItem,
272
- ResponsesObject,
273
- ResponsesOutputTextPart,
274
- ResponsesProxyContext,
275
- ResponsesUsageInput,
276
- } from "./proxy/responses-mapper.js";
277
- export type {
278
- ResponsesProxyHandle,
279
- ResponsesProxyOptions,
280
- } from "./proxy/responses-server.js";