@x12i/ai-profiles 1.6.0 → 1.7.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 (100) hide show
  1. package/README.md +96 -28
  2. package/dist/buildCatalogFromOpenRouterApi.d.ts.map +1 -1
  3. package/dist/buildCatalogFromOpenRouterApi.js +2 -1
  4. package/dist/buildCatalogFromOpenRouterApi.js.map +1 -1
  5. package/dist/buildModelsRegistry.d.ts +2 -0
  6. package/dist/buildModelsRegistry.d.ts.map +1 -1
  7. package/dist/buildModelsRegistry.js +5 -5
  8. package/dist/buildModelsRegistry.js.map +1 -1
  9. package/dist/buildResolvedProfile.d.ts +2 -1
  10. package/dist/buildResolvedProfile.d.ts.map +1 -1
  11. package/dist/buildResolvedProfile.js +18 -2
  12. package/dist/buildResolvedProfile.js.map +1 -1
  13. package/dist/catalogEnrichment.d.ts.map +1 -1
  14. package/dist/catalogEnrichment.js +13 -6
  15. package/dist/catalogEnrichment.js.map +1 -1
  16. package/dist/constants.d.ts +2 -0
  17. package/dist/constants.d.ts.map +1 -1
  18. package/dist/constants.js +8 -0
  19. package/dist/constants.js.map +1 -1
  20. package/dist/costPolicy.d.ts +7 -0
  21. package/dist/costPolicy.d.ts.map +1 -0
  22. package/dist/costPolicy.js +81 -0
  23. package/dist/costPolicy.js.map +1 -0
  24. package/dist/data/models-catalog.json +324 -1465
  25. package/dist/data/models-profiles.json +354 -420
  26. package/dist/data/models-profiles.schema.json +38 -11
  27. package/dist/data/models-registry.json +142 -841
  28. package/dist/data/profiles-shortcuts.json +49 -23
  29. package/dist/errors.d.ts +1 -1
  30. package/dist/errors.d.ts.map +1 -1
  31. package/dist/errors.js.map +1 -1
  32. package/dist/index.d.ts +8 -2
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +7 -1
  35. package/dist/index.js.map +1 -1
  36. package/dist/modalityPolicy.d.ts +37 -0
  37. package/dist/modalityPolicy.d.ts.map +1 -0
  38. package/dist/modalityPolicy.js +200 -0
  39. package/dist/modalityPolicy.js.map +1 -0
  40. package/dist/modelIdentity.d.ts.map +1 -1
  41. package/dist/modelIdentity.js +9 -1
  42. package/dist/modelIdentity.js.map +1 -1
  43. package/dist/modelsCatalog.d.ts.map +1 -1
  44. package/dist/modelsCatalog.js +1 -0
  45. package/dist/modelsCatalog.js.map +1 -1
  46. package/dist/openRouterSlugPolicy.d.ts +20 -0
  47. package/dist/openRouterSlugPolicy.d.ts.map +1 -0
  48. package/dist/openRouterSlugPolicy.js +66 -0
  49. package/dist/openRouterSlugPolicy.js.map +1 -0
  50. package/dist/profileCatalogSupplement.d.ts.map +1 -1
  51. package/dist/profileCatalogSupplement.js +35 -44
  52. package/dist/profileCatalogSupplement.js.map +1 -1
  53. package/dist/profileRegistryV2.d.ts +8 -8
  54. package/dist/profileRegistryV2.d.ts.map +1 -1
  55. package/dist/profileRegistryV2.js +12 -70
  56. package/dist/profileRegistryV2.js.map +1 -1
  57. package/dist/profileRegistryV3.d.ts +3 -0
  58. package/dist/profileRegistryV3.d.ts.map +1 -1
  59. package/dist/profileRegistryV3.js +113 -103
  60. package/dist/profileRegistryV3.js.map +1 -1
  61. package/dist/resolveAIProfile.d.ts +1 -1
  62. package/dist/resolveAIProfile.d.ts.map +1 -1
  63. package/dist/resolveAIProfile.js +28 -4
  64. package/dist/resolveAIProfile.js.map +1 -1
  65. package/dist/resolveCatalogListing.d.ts +10 -0
  66. package/dist/resolveCatalogListing.d.ts.map +1 -0
  67. package/dist/resolveCatalogListing.js +59 -0
  68. package/dist/resolveCatalogListing.js.map +1 -0
  69. package/dist/resolveModelIdentity.d.ts.map +1 -1
  70. package/dist/resolveModelIdentity.js +1 -0
  71. package/dist/resolveModelIdentity.js.map +1 -1
  72. package/dist/resolveModelRouting.d.ts +2 -2
  73. package/dist/resolveModelRouting.d.ts.map +1 -1
  74. package/dist/resolveModelRouting.js +3 -3
  75. package/dist/resolveModelRouting.js.map +1 -1
  76. package/dist/types.d.ts +78 -10
  77. package/dist/types.d.ts.map +1 -1
  78. package/dist/validateProfileCatalogLinkage.d.ts +8 -0
  79. package/dist/validateProfileCatalogLinkage.d.ts.map +1 -0
  80. package/dist/validateProfileCatalogLinkage.js +212 -0
  81. package/dist/validateProfileCatalogLinkage.js.map +1 -0
  82. package/dist/validateProfileModalityCoverage.d.ts +9 -0
  83. package/dist/validateProfileModalityCoverage.d.ts.map +1 -0
  84. package/dist/validateProfileModalityCoverage.js +52 -0
  85. package/dist/validateProfileModalityCoverage.js.map +1 -0
  86. package/dist/validateProfileTransportPolicy.d.ts +8 -0
  87. package/dist/validateProfileTransportPolicy.d.ts.map +1 -0
  88. package/dist/validateProfileTransportPolicy.js +69 -0
  89. package/dist/validateProfileTransportPolicy.js.map +1 -0
  90. package/dist/validation/validateModelsProfilesJson.d.ts.map +1 -1
  91. package/dist/validation/validateModelsProfilesJson.js +11 -7
  92. package/dist/validation/validateModelsProfilesJson.js.map +1 -1
  93. package/dist/vendorModelId.d.ts +4 -0
  94. package/dist/vendorModelId.d.ts.map +1 -0
  95. package/dist/vendorModelId.js +14 -0
  96. package/dist/vendorModelId.js.map +1 -0
  97. package/dist/vendorPolicy.d.ts.map +1 -1
  98. package/dist/vendorPolicy.js +1 -0
  99. package/dist/vendorPolicy.js.map +1 -1
  100. package/package.json +5 -4
@@ -1,4 +1,5 @@
1
- import { defaultFallbackOrder, fixVendorModelId, getChoicePricing, openRouterSlugFor, } from "./profileRegistryV2.js";
1
+ import { defaultFallbackOrder, fixVendorModelId, getChoicePricing, } from "./profileRegistryV2.js";
2
+ import { CPU_LOCAL_OPENROUTER_MARKER } from "./validateProfileTransportPolicy.js";
2
3
  export const PREDICTED_VENDOR_MODEL_IDS = new Set([
3
4
  "gpt-5.4",
4
5
  "gpt-5.4-mini",
@@ -6,16 +7,15 @@ export const PREDICTED_VENDOR_MODEL_IDS = new Set([
6
7
  "claude-sonnet-4-6",
7
8
  "claude-opus-4-8",
8
9
  "claude-opus-4-7",
9
- "gemini-3.5-flash",
10
- "gemini-3.1-flash-lite",
11
10
  "grok-4.3",
12
11
  "deepseek-v4-pro",
13
12
  "deepseek-v4-flash",
14
13
  ]);
15
14
  const VERIFIED_VENDOR_MODEL_IDS = new Set([
16
15
  "gemini-2.5-flash-lite",
17
- "gemini-2.5-flash",
18
16
  "gemini-2.5-pro",
17
+ "gemini-3.1-flash-lite",
18
+ "gemini-3.5-flash",
19
19
  "claude-haiku-4-5",
20
20
  "claude-sonnet-4-5",
21
21
  "claude-opus-4-5",
@@ -27,91 +27,128 @@ const VERIFIED_VENDOR_MODEL_IDS = new Set([
27
27
  "deepseek-chat",
28
28
  "deepseek-reasoner",
29
29
  "grok-build-0.1",
30
+ "minimax-m2",
31
+ "minimax-m2.5",
32
+ "minimax-m2.7",
30
33
  "gpt-5.5",
31
- "meta-llama/Llama-3.3-70B-Instruct-Turbo",
32
- "Qwen/Qwen3-235B-A22B-Instruct-2507-tput",
33
34
  ]);
34
35
  const PROFILE_REQUIRED_CAPABILITIES = {
35
- cheap: { cost: "low", reasoning: "minimal", context: "standard" },
36
- fast: { speed: "high", cost: "low", reasoning: "low", latency: "low" },
36
+ cheap: {
37
+ cost: "low",
38
+ reasoning: "minimal",
39
+ context: "standard",
40
+ inputModalities: ["text"],
41
+ outputModalities: ["text"],
42
+ },
43
+ fast: {
44
+ speed: "high",
45
+ cost: "low",
46
+ reasoning: "low",
47
+ latency: "low",
48
+ inputModalities: ["text"],
49
+ outputModalities: ["text"],
50
+ },
37
51
  balanced: {
38
52
  reasoning: "medium",
39
53
  coding: true,
40
54
  context: "standard",
41
55
  cost: "medium",
56
+ inputModalities: ["text"],
57
+ outputModalities: ["text"],
42
58
  },
43
59
  deep: {
44
60
  reasoning: "high",
45
61
  coding: true,
46
62
  context: "large",
47
63
  quality: "high",
64
+ inputModalities: ["text"],
65
+ outputModalities: ["text"],
48
66
  },
49
67
  pro: {
50
68
  reasoning: "high",
51
69
  quality: "premium",
52
70
  context: "large",
71
+ inputModalities: ["text"],
72
+ outputModalities: ["text"],
53
73
  },
54
74
  json: {
55
75
  structuredOutput: true,
56
76
  reasoning: "low",
57
77
  supportsJsonSchema: true,
78
+ inputModalities: ["text"],
79
+ outputModalities: ["text"],
58
80
  },
59
81
  coding: {
60
82
  reasoning: "high",
61
83
  coding: true,
62
84
  context: "large",
63
85
  quality: "high",
86
+ inputModalities: ["text"],
87
+ outputModalities: ["text"],
64
88
  },
65
89
  extraction: {
66
90
  structuredOutput: true,
67
91
  reasoning: "minimal",
68
92
  cost: "low",
69
93
  supportsJsonSchema: true,
94
+ inputModalities: ["text"],
95
+ outputModalities: ["text"],
70
96
  },
71
97
  routing: {
72
98
  reasoning: "minimal",
73
99
  cost: "low",
74
100
  latency: "low",
101
+ inputModalities: ["text"],
102
+ outputModalities: ["text"],
75
103
  },
76
104
  agentic: {
77
105
  reasoning: "medium",
78
106
  coding: true,
79
107
  supportsTools: true,
80
108
  context: "large",
109
+ inputModalities: ["text"],
110
+ outputModalities: ["text"],
81
111
  },
82
112
  research: {
83
113
  reasoning: "high",
84
114
  context: "large",
85
115
  quality: "high",
116
+ inputModalities: ["text"],
117
+ outputModalities: ["text"],
86
118
  },
87
119
  cyber: {
88
120
  reasoning: "high",
89
121
  coding: true,
90
122
  context: "large",
123
+ inputModalities: ["text"],
124
+ outputModalities: ["text"],
91
125
  },
92
126
  content: {
93
127
  reasoning: "medium",
94
128
  context: "standard",
95
129
  quality: "high",
130
+ inputModalities: ["text"],
131
+ outputModalities: ["text"],
96
132
  },
97
133
  summarization: {
98
134
  reasoning: "low",
99
135
  cost: "low",
100
136
  context: "large",
137
+ inputModalities: ["text"],
138
+ outputModalities: ["text"],
101
139
  },
102
140
  vision: {
103
141
  reasoning: "medium",
104
142
  supportsVision: true,
105
143
  context: "large",
106
- },
107
- open_weights: {
108
- reasoning: "medium",
109
- coding: true,
110
- cost: "medium",
144
+ inputModalities: ["text", "image"],
145
+ outputModalities: ["text"],
111
146
  },
112
147
  local: {
113
148
  reasoning: "minimal",
114
149
  cost: "low",
150
+ inputModalities: ["text"],
151
+ outputModalities: ["text"],
115
152
  },
116
153
  };
117
154
  function inferModelStatus(vendorModelId, provider) {
@@ -140,28 +177,54 @@ function stripChoicePricing(choice) {
140
177
  }
141
178
  return rest;
142
179
  }
143
- function ensureChoiceApi(choice) {
180
+ /** Profile choices only store provider + modelId; strip legacy transport blocks. */
181
+ export function normalizeProfileChoice(choice) {
182
+ const { api: _api, pricing: _pricing, ...rest } = choice;
144
183
  const vendorModelId = fixVendorModelId(choice.modelId);
145
- const isVendorDirect = choice.metadata?.openRouter === "vendor-direct" ||
146
- choice.provider === "together";
147
- const orSlug = isVendorDirect
148
- ? null
149
- : openRouterSlugFor(choice.provider, vendorModelId);
150
- const defaultTransport = choice.provider === "local"
151
- ? "direct"
152
- : isVendorDirect
153
- ? "direct"
154
- : (choice.runtime?.backend ?? "openrouter") === "openrouter"
155
- ? "openrouter"
156
- : "direct";
157
- return {
158
- ...choice,
184
+ if (choice.provider === "local") {
185
+ return stripChoicePricing({
186
+ ...rest,
187
+ modelId: vendorModelId,
188
+ modelStatus: "verified",
189
+ metadata: {
190
+ ...(choice.metadata ?? {}),
191
+ openRouter: CPU_LOCAL_OPENROUTER_MARKER,
192
+ billingModel: "self_hosted",
193
+ },
194
+ runtime: {
195
+ instructionTier: "cpu",
196
+ executionMode: "offline",
197
+ ...(choice.runtime ?? {}),
198
+ },
199
+ verification: {
200
+ lastVerifiedAt: choice.verification?.lastVerifiedAt ??
201
+ new Date().toISOString().replace(/\.\d{3}Z$/, "Z"),
202
+ sourceRefs: ["vendor:local", "cpu:self-hosted"],
203
+ },
204
+ });
205
+ }
206
+ return stripChoicePricing({
207
+ ...rest,
159
208
  modelId: vendorModelId,
160
209
  modelStatus: choice.modelStatus ?? inferModelStatus(vendorModelId, choice.provider),
161
- api: choice.api ?? {
162
- defaultTransport,
163
- vendorModelId,
164
- openRouterModelId: orSlug,
210
+ });
211
+ }
212
+ export function stripProfilesApiMetadata(input) {
213
+ const profiles = {};
214
+ for (const [profileKey, profile] of Object.entries(input.profiles)) {
215
+ const choices = {};
216
+ for (const [choiceKey, choice] of Object.entries(profile.choices)) {
217
+ choices[choiceKey] = normalizeProfileChoice(choice);
218
+ }
219
+ profiles[profileKey] = { ...profile, choices };
220
+ }
221
+ return {
222
+ ...input,
223
+ profiles,
224
+ semantics: {
225
+ ...input.semantics,
226
+ modelId: "Catalog lookup key (vendor-native id). Direct and OpenRouter slugs live in models-catalog.json.",
227
+ openRouterModelId: "Resolved from models-catalog.json at runtime; never stored on profile choices.",
165
228
  },
166
229
  };
167
230
  }
@@ -190,11 +253,6 @@ function buildCodingProfile(lastVerifiedAt) {
190
253
  outputMode: "text",
191
254
  },
192
255
  reason: "Strong instruction following and code quality for everyday engineering tasks.",
193
- api: {
194
- defaultTransport: "openrouter",
195
- vendorModelId: "claude-sonnet-4-5",
196
- openRouterModelId: "anthropic/claude-sonnet-4.5",
197
- },
198
256
  verification: {
199
257
  lastVerifiedAt,
200
258
  sourceRefs: ["vendor:anthropic", "openrouter:catalog"],
@@ -213,18 +271,13 @@ function buildCodingProfile(lastVerifiedAt) {
213
271
  outputMode: "text",
214
272
  },
215
273
  reason: "Solid alternative for multi-file edits and API-heavy codebases.",
216
- api: {
217
- defaultTransport: "openrouter",
218
- vendorModelId: "gpt-4.1",
219
- openRouterModelId: "openai/gpt-4.1",
220
- },
221
274
  verification: {
222
275
  lastVerifiedAt,
223
276
  sourceRefs: ["vendor:openai", "openrouter:catalog"],
224
277
  },
225
278
  },
226
- cost_coding: {
227
- choice: "cost_coding",
279
+ deepseek_coding: {
280
+ choice: "deepseek_coding",
228
281
  displayName: "Budget Coding",
229
282
  description: "Lower-cost coding option for simpler changes.",
230
283
  provider: "deepseek",
@@ -236,18 +289,13 @@ function buildCodingProfile(lastVerifiedAt) {
236
289
  outputMode: "text",
237
290
  },
238
291
  reason: "Cost-effective for smaller patches, tests, and boilerplate generation.",
239
- api: {
240
- defaultTransport: "openrouter",
241
- vendorModelId: "deepseek-chat",
242
- openRouterModelId: "deepseek/deepseek-chat",
243
- },
244
292
  verification: {
245
293
  lastVerifiedAt,
246
294
  sourceRefs: ["vendor:deepseek", "openrouter:catalog"],
247
295
  },
248
296
  },
249
297
  },
250
- fallbackChoiceOrder: ["default", "openai_coding", "cost_coding"],
298
+ fallbackChoiceOrder: ["default", "openai_coding", "deepseek_coding", "minimax_coding"],
251
299
  };
252
300
  }
253
301
  function buildExtractionProfile(lastVerifiedAt) {
@@ -278,18 +326,13 @@ function buildExtractionProfile(lastVerifiedAt) {
278
326
  temperature: 0,
279
327
  },
280
328
  reason: "Optimized for bulk extraction where latency and cost dominate.",
281
- api: {
282
- defaultTransport: "openrouter",
283
- vendorModelId: "gemini-2.5-flash-lite",
284
- openRouterModelId: "google/gemini-2.5-flash-lite",
285
- },
286
329
  verification: {
287
330
  lastVerifiedAt,
288
331
  sourceRefs: ["vendor:google", "openrouter:catalog"],
289
332
  },
290
333
  },
291
- quality_extraction: {
292
- choice: "quality_extraction",
334
+ anthropic_extraction: {
335
+ choice: "anthropic_extraction",
293
336
  displayName: "Quality Extraction",
294
337
  description: "Higher-quality extraction when ambiguity or long documents matter.",
295
338
  provider: "anthropic",
@@ -302,18 +345,13 @@ function buildExtractionProfile(lastVerifiedAt) {
302
345
  temperature: 0,
303
346
  },
304
347
  reason: "Better entity boundaries and taxonomy consistency on messy inputs.",
305
- api: {
306
- defaultTransport: "openrouter",
307
- vendorModelId: "claude-haiku-4-5",
308
- openRouterModelId: "anthropic/claude-haiku-4.5",
309
- },
310
348
  verification: {
311
349
  lastVerifiedAt,
312
350
  sourceRefs: ["vendor:anthropic", "openrouter:catalog"],
313
351
  },
314
352
  },
315
353
  },
316
- fallbackChoiceOrder: ["default", "quality_extraction"],
354
+ fallbackChoiceOrder: ["default", "anthropic_extraction"],
317
355
  };
318
356
  }
319
357
  function buildRoutingProfile(lastVerifiedAt) {
@@ -340,11 +378,6 @@ function buildRoutingProfile(lastVerifiedAt) {
340
378
  temperature: 0,
341
379
  },
342
380
  reason: "Minimize spend on per-request routing and orchestration gates.",
343
- api: {
344
- defaultTransport: "openrouter",
345
- vendorModelId: "gemini-2.5-flash-lite",
346
- openRouterModelId: "google/gemini-2.5-flash-lite",
347
- },
348
381
  verification: {
349
382
  lastVerifiedAt,
350
383
  sourceRefs: ["vendor:google", "openrouter:catalog"],
@@ -364,11 +397,6 @@ function buildRoutingProfile(lastVerifiedAt) {
364
397
  temperature: 0,
365
398
  },
366
399
  reason: "Better instruction adherence for multi-label or nested routing trees.",
367
- api: {
368
- defaultTransport: "openrouter",
369
- vendorModelId: "claude-haiku-4-5",
370
- openRouterModelId: "anthropic/claude-haiku-4.5",
371
- },
372
400
  verification: {
373
401
  lastVerifiedAt,
374
402
  sourceRefs: ["vendor:anthropic", "openrouter:catalog"],
@@ -387,14 +415,7 @@ export function migrateModelsProfilesToV3(input, options) {
387
415
  for (const [profileKey, profile] of Object.entries(input.profiles)) {
388
416
  const choices = {};
389
417
  for (const [choiceKey, choice] of Object.entries(profile.choices)) {
390
- let migrated = stripChoicePricing(ensureChoiceApi(choice));
391
- if (profileKey === "open_weights") {
392
- migrated = {
393
- ...migrated,
394
- deploymentType: (migrated.deploymentType ??
395
- "openWeightsHosted"),
396
- };
397
- }
418
+ let migrated = normalizeProfileChoice(choice);
398
419
  choices[choiceKey] = migrated;
399
420
  }
400
421
  profiles[profileKey] = {
@@ -403,15 +424,6 @@ export function migrateModelsProfilesToV3(input, options) {
403
424
  PROFILE_REQUIRED_CAPABILITIES[profileKey],
404
425
  choices,
405
426
  fallbackChoiceOrder: defaultFallbackOrder(profile),
406
- ...(profileKey === "open_weights"
407
- ? {
408
- deploymentType: "openWeightsHosted",
409
- metadata: {
410
- ...(profile.metadata ?? {}),
411
- deploymentStrategy: "openWeightsHosted",
412
- },
413
- }
414
- : {}),
415
427
  };
416
428
  }
417
429
  profiles.coding = profiles.coding ?? buildCodingProfile(lastVerifiedAt);
@@ -429,7 +441,7 @@ export function migrateModelsProfilesToV3(input, options) {
429
441
  semantics: {
430
442
  provider: "Billing owner / vendor source of truth for the model SKU.",
431
443
  modelId: "Canonical vendor-native model identifier for direct API calls.",
432
- openRouterModelId: "OpenRouter transport slug; pricing and capabilities are resolved from models-catalog.json at runtime.",
444
+ openRouterModelId: "Resolved from models-catalog.json at runtime; never stored on profile choices.",
433
445
  modelStatus: "verified = stable vendor SKU; predicted = forward-looking placeholder — not guaranteed callable.",
434
446
  requiredCapabilities: "Profile intent contract; concrete model picks remain suggestions until Optimixer selects dynamically.",
435
447
  deploymentType: "How the model is operated (proprietary API vs hosted open weights vs self-hosted).",
@@ -440,6 +452,7 @@ export function migrateModelsProfilesToV3(input, options) {
440
452
  { id: "anthropic", docsUrl: "https://docs.anthropic.com/en/docs/about-claude/models" },
441
453
  { id: "google", docsUrl: "https://ai.google.dev/gemini-api/docs/models" },
442
454
  { id: "deepseek", docsUrl: "https://api-docs.deepseek.com" },
455
+ { id: "minimax", docsUrl: "https://platform.minimaxi.com/document" },
443
456
  { id: "xai", docsUrl: "https://docs.x.ai/docs/models" },
444
457
  { id: "together", docsUrl: "https://docs.together.ai/docs/serverless-models" },
445
458
  ],
@@ -453,17 +466,14 @@ const VERIFIED_DEFAULT_SKU = {
453
466
  "gpt-5.4-mini": {
454
467
  provider: "openai",
455
468
  modelId: "gpt-4o-mini",
456
- openRouterModelId: "openai/gpt-4o-mini",
457
469
  },
458
470
  "gpt-5.4": {
459
471
  provider: "openai",
460
472
  modelId: "gpt-4.1",
461
- openRouterModelId: "openai/gpt-4.1",
462
473
  },
463
474
  "claude-sonnet-4-6": {
464
475
  provider: "anthropic",
465
476
  modelId: "claude-sonnet-4-5",
466
- openRouterModelId: "anthropic/claude-sonnet-4.5",
467
477
  },
468
478
  };
469
479
  function applyVerifiedSkuToChoice(choice) {
@@ -471,18 +481,11 @@ function applyVerifiedSkuToChoice(choice) {
471
481
  if (!replacement) {
472
482
  return choice;
473
483
  }
474
- const defaultTransport = choice.api?.defaultTransport ??
475
- (choice.provider === "together" ? "direct" : "openrouter");
476
484
  return {
477
- ...choice,
485
+ ...normalizeProfileChoice(choice),
478
486
  provider: replacement.provider,
479
487
  modelId: replacement.modelId,
480
488
  modelStatus: "verified",
481
- api: {
482
- defaultTransport,
483
- vendorModelId: replacement.modelId,
484
- openRouterModelId: replacement.openRouterModelId,
485
- },
486
489
  };
487
490
  }
488
491
  /**
@@ -508,7 +511,14 @@ export function applyVerifiedProfileDefaults(input) {
508
511
  }
509
512
  choices[choiceKey] = updated;
510
513
  }
511
- profiles[profileKey] = { ...profile, choices };
514
+ profiles[profileKey] = {
515
+ ...profile,
516
+ choices,
517
+ requiredCapabilities: {
518
+ ...PROFILE_REQUIRED_CAPABILITIES[profileKey],
519
+ ...profile.requiredCapabilities,
520
+ },
521
+ };
512
522
  }
513
523
  return {
514
524
  ...input,
@@ -1 +1 @@
1
- {"version":3,"file":"profileRegistryV3.js","sourceRoot":"","sources":["../src/profileRegistryV3.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profileRegistryV3.js","sourceRoot":"","sources":["../src/profileRegistryV3.ts"],"names":[],"mappings":"AASA,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAElF,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IAChD,SAAS;IACT,cAAc;IACd,aAAa;IACb,mBAAmB;IACnB,iBAAiB;IACjB,iBAAiB;IACjB,UAAU;IACV,iBAAiB;IACjB,mBAAmB;CACpB,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC;IACxC,uBAAuB;IACvB,gBAAgB;IAChB,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IACjB,SAAS;IACT,cAAc;IACd,QAAQ;IACR,aAAa;IACb,SAAS;IACT,eAAe;IACf,mBAAmB;IACnB,gBAAgB;IAChB,YAAY;IACZ,cAAc;IACd,cAAc;IACd,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,6BAA6B,GACjC;IACE,KAAK,EAAE;QACL,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,SAAS;QACpB,OAAO,EAAE,UAAU;QACnB,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,KAAK;QACd,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,QAAQ,EAAE;QACR,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,QAAQ;QACd,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,MAAM;QACjB,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,MAAM;QACf,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,GAAG,EAAE;QACH,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,IAAI;QACtB,SAAS,EAAE,KAAK;QAChB,kBAAkB,EAAE,IAAI;QACxB,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,MAAM,EAAE;QACN,SAAS,EAAE,MAAM;QACjB,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,MAAM;QACf,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,UAAU,EAAE;QACV,gBAAgB,EAAE,IAAI;QACtB,SAAS,EAAE,SAAS;QACpB,IAAI,EAAE,KAAK;QACX,kBAAkB,EAAE,IAAI;QACxB,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,OAAO,EAAE;QACP,SAAS,EAAE,SAAS;QACpB,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,KAAK;QACd,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,OAAO,EAAE;QACP,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,IAAI;QACZ,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,QAAQ,EAAE;QACR,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,MAAM;QACf,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,KAAK,EAAE;QACL,SAAS,EAAE,MAAM;QACjB,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,OAAO,EAAE;QACP,SAAS,EAAE,QAAQ;QACnB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,MAAM;QACf,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,aAAa,EAAE;QACb,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,MAAM,EAAE;QACN,SAAS,EAAE,QAAQ;QACnB,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;QAClC,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;IACD,KAAK,EAAE;QACL,SAAS,EAAE,SAAS;QACpB,IAAI,EAAE,KAAK;QACX,eAAe,EAAE,CAAC,MAAM,CAAC;QACzB,gBAAgB,EAAE,CAAC,MAAM,CAAC;KAC3B;CACF,CAAC;AAEJ,SAAS,gBAAgB,CAAC,aAAqB,EAAE,QAAgB;IAC/D,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,EAAE,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC3C,IAAI,0BAA0B,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QACvC,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,IAAI,yBAAyB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QACtC,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAuB;IACjD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAChC,OAAO;YACL,GAAG,IAAI;YACP,QAAQ,EAAE;gBACR,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;gBAC1B,YAAY,EAAE,aAAa;aAC5B;SACF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,sBAAsB,CAAC,MAAuB;IAC5D,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,MAEjD,CAAC;IACF,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEvD,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAChC,OAAO,kBAAkB,CAAC;YACxB,GAAG,IAAI;YACP,OAAO,EAAE,aAAa;YACtB,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE;gBACR,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;gBAC1B,UAAU,EAAE,2BAA2B;gBACvC,YAAY,EAAE,aAAa;aAC5B;YACD,OAAO,EAAE;gBACP,eAAe,EAAE,KAAK;gBACtB,aAAa,EAAE,SAAS;gBACxB,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;aAC1B;YACD,YAAY,EAAE;gBACZ,cAAc,EACZ,MAAM,CAAC,YAAY,EAAE,cAAc;oBACnC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;gBACpD,UAAU,EAAE,CAAC,cAAc,EAAE,iBAAiB,CAAC;aAChD;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,kBAAkB,CAAC;QACxB,GAAG,IAAI;QACP,OAAO,EAAE,aAAa;QACtB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC;KACpF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAyB;IAEzB,MAAM,QAAQ,GAAwC,EAAE,CAAC;IAEzD,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnE,MAAM,OAAO,GAAoC,EAAE,CAAC;QACpD,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,SAAS,CAAC,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QACD,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC;IACjD,CAAC;IAED,OAAO;QACL,GAAG,KAAK;QACR,QAAQ;QACR,SAAS,EAAE;YACT,GAAG,KAAK,CAAC,SAAS;YAClB,OAAO,EACL,iGAAiG;YACnG,iBAAiB,EACf,gFAAgF;SACnF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,cAAsB;IAChD,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,QAAQ;QACrB,WAAW,EACT,wGAAwG;QAC1G,QAAQ,EAAE,aAAa;QACvB,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC;QAChE,aAAa,EAAE,SAAS;QACxB,oBAAoB,EAAE,6BAA6B,CAAC,MAAM;QAC1D,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,gBAAgB;gBAC7B,WAAW,EAAE,4CAA4C;gBACzD,QAAQ,EAAE,WAAW;gBACrB,OAAO,EAAE,mBAAmB;gBAC5B,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE;oBACP,eAAe,EAAE,SAAS;oBAC1B,OAAO,EAAE,YAAY;oBACrB,eAAe,EAAE,MAAM;oBACvB,UAAU,EAAE,WAAW;oBACvB,UAAU,EAAE,MAAM;iBACnB;gBACD,MAAM,EAAE,+EAA+E;gBACvF,YAAY,EAAE;oBACZ,cAAc;oBACd,UAAU,EAAE,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;iBACvD;aACF;YACD,aAAa,EAAE;gBACb,MAAM,EAAE,eAAe;gBACvB,WAAW,EAAE,eAAe;gBAC5B,WAAW,EAAE,0CAA0C;gBACvD,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,SAAS;gBAClB,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE;oBACP,eAAe,EAAE,MAAM;oBACvB,UAAU,EAAE,WAAW;oBACvB,UAAU,EAAE,MAAM;iBACnB;gBACD,MAAM,EAAE,iEAAiE;gBACzE,YAAY,EAAE;oBACZ,cAAc;oBACd,UAAU,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC;iBACpD;aACF;YACD,eAAe,EAAE;gBACf,MAAM,EAAE,iBAAiB;gBACzB,WAAW,EAAE,eAAe;gBAC5B,WAAW,EAAE,+CAA+C;gBAC5D,QAAQ,EAAE,UAAU;gBACpB,OAAO,EAAE,eAAe;gBACxB,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE;oBACP,eAAe,EAAE,QAAQ;oBACzB,UAAU,EAAE,WAAW;oBACvB,UAAU,EAAE,MAAM;iBACnB;gBACD,MAAM,EAAE,wEAAwE;gBAChF,YAAY,EAAE;oBACZ,cAAc;oBACd,UAAU,EAAE,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;iBACtD;aACF;SACF;QACD,mBAAmB,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;KACvF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,cAAsB;IACpD,OAAO;QACL,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,YAAY;QACzB,WAAW,EACT,sGAAsG;QACxG,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,mBAAmB,EAAE,OAAO,CAAC;QACtE,aAAa,EAAE,SAAS;QACxB,oBAAoB,EAAE,6BAA6B,CAAC,UAAU;QAC9D,OAAO,EAAE;YACP,UAAU,EAAE,MAAM;YAClB,WAAW,EAAE,CAAC;SACf;QACD,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,oBAAoB;gBACjC,WAAW,EAAE,+DAA+D;gBAC5E,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,uBAAuB;gBAChC,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE;oBACP,eAAe,EAAE,SAAS;oBAC1B,UAAU,EAAE,MAAM;oBAClB,UAAU,EAAE,MAAM;oBAClB,WAAW,EAAE,CAAC;iBACf;gBACD,MAAM,EAAE,gEAAgE;gBACxE,YAAY,EAAE;oBACZ,cAAc;oBACd,UAAU,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC;iBACpD;aACF;YACD,oBAAoB,EAAE;gBACpB,MAAM,EAAE,sBAAsB;gBAC9B,WAAW,EAAE,oBAAoB;gBACjC,WAAW,EAAE,oEAAoE;gBACjF,QAAQ,EAAE,WAAW;gBACrB,OAAO,EAAE,kBAAkB;gBAC3B,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE;oBACP,eAAe,EAAE,KAAK;oBACtB,UAAU,EAAE,MAAM;oBAClB,UAAU,EAAE,MAAM;oBAClB,WAAW,EAAE,CAAC;iBACf;gBACD,MAAM,EAAE,oEAAoE;gBAC5E,YAAY,EAAE;oBACZ,cAAc;oBACd,UAAU,EAAE,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;iBACvD;aACF;SACF;QACD,mBAAmB,EAAE,CAAC,SAAS,EAAE,sBAAsB,CAAC;KACzD,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,cAAsB;IACjD,OAAO;QACL,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,SAAS;QACtB,WAAW,EACT,0FAA0F;QAC5F,QAAQ,EAAE,SAAS;QACnB,OAAO,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QAC/D,aAAa,EAAE,SAAS;QACxB,oBAAoB,EAAE,6BAA6B,CAAC,OAAO;QAC3D,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,iBAAiB;gBAC9B,WAAW,EAAE,6DAA6D;gBAC1E,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,uBAAuB;gBAChC,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE;oBACP,eAAe,EAAE,SAAS;oBAC1B,UAAU,EAAE,MAAM;oBAClB,UAAU,EAAE,MAAM;oBAClB,WAAW,EAAE,CAAC;iBACf;gBACD,MAAM,EAAE,gEAAgE;gBACxE,YAAY,EAAE;oBACZ,cAAc;oBACd,UAAU,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC;iBACpD;aACF;YACD,aAAa,EAAE;gBACb,MAAM,EAAE,eAAe;gBACvB,WAAW,EAAE,eAAe;gBAC5B,WAAW,EAAE,2DAA2D;gBACxE,QAAQ,EAAE,WAAW;gBACrB,OAAO,EAAE,kBAAkB;gBAC3B,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE;oBACP,eAAe,EAAE,KAAK;oBACtB,UAAU,EAAE,MAAM;oBAClB,UAAU,EAAE,MAAM;oBAClB,WAAW,EAAE,CAAC;iBACf;gBACD,MAAM,EAAE,uEAAuE;gBAC/E,YAAY,EAAE;oBACZ,cAAc;oBACd,UAAU,EAAE,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;iBACvD;aACF;SACF;QACD,mBAAmB,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,OAAO,KAAK,CAAC,MAAM,KAAK,oCAAoC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,KAAyB,EACzB,OAAqC;IAErC,MAAM,cAAc,GAClB,OAAO,EAAE,cAAc,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAEhF,MAAM,QAAQ,GAAwC,EAAE,CAAC;IAEzD,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnE,MAAM,OAAO,GAAoC,EAAE,CAAC;QAEpD,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAClE,IAAI,QAAQ,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;YAE9C,OAAO,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC;QAChC,CAAC;QAED,QAAQ,CAAC,UAAU,CAAC,GAAG;YACrB,GAAG,OAAO;YACV,oBAAoB,EAClB,OAAO,CAAC,oBAAoB;gBAC5B,6BAA6B,CAAC,UAAU,CAAC;YAC3C,OAAO;YACP,mBAAmB,EAAE,oBAAoB,CAAC,OAAO,CAAC;SACnD,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,kBAAkB,CAAC,cAAc,CAAC,CAAC;IACxE,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,IAAI,sBAAsB,CAAC,cAAc,CAAC,CAAC;IACpF,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAE3E,OAAO;QACL,MAAM,EAAE,oCAAoC;QAC5C,UAAU,EAAE,iBAAiB;QAC7B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,cAAc;QAChD,cAAc;QACd,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,WAAW;QACxB,gBAAgB,EAAE,gBAAgB;QAClC,SAAS,EAAE;YACT,QAAQ,EAAE,2DAA2D;YACrE,OAAO,EAAE,gEAAgE;YACzE,iBAAiB,EACf,gFAAgF;YAClF,WAAW,EACT,kGAAkG;YACpG,oBAAoB,EAClB,uGAAuG;YACzG,cAAc,EACZ,oFAAoF;SACvF;QACD,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI;YACpC,SAAS,EAAE;gBACT,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,yCAAyC,EAAE;gBACpE,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,wDAAwD,EAAE;gBACtF,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,8CAA8C,EAAE;gBACzE,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,+BAA+B,EAAE;gBAC5D,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,wCAAwC,EAAE;gBACpE,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,+BAA+B,EAAE;gBACvD,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,iDAAiD,EAAE;aAC/E;YACD,gBAAgB,EAAE,kDAAkD;SACrE;QACD,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,MAAM,oBAAoB,GAGtB;IACF,cAAc,EAAE;QACd,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,aAAa;KACvB;IACD,SAAS,EAAE;QACT,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,SAAS;KACnB;IACD,mBAAmB,EAAE;QACnB,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,mBAAmB;KAC7B;CACF,CAAC;AAEF,SAAS,wBAAwB,CAAC,MAAuB;IACvD,MAAM,WAAW,GAAG,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO;QACL,GAAG,sBAAsB,CAAC,MAAM,CAAC;QACjC,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,OAAO,EAAE,WAAW,CAAC,OAAO;QAC5B,WAAW,EAAE,UAAU;KACxB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,0BAA0B,CAAC,MAAuB;IACzD,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChE,IAAI,MAAM,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,KAAyB;IAEzB,MAAM,QAAQ,GAAwC,EAAE,CAAC;IAEzD,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnE,MAAM,OAAO,GAAoC,EAAE,CAAC;QACpD,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAClE,IAAI,OAAO,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,SAAS,KAAK,OAAO,CAAC,aAAa,EAAE,CAAC;gBACxC,OAAO,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;QAC/B,CAAC;QAED,QAAQ,CAAC,UAAU,CAAC,GAAG;YACrB,GAAG,OAAO;YACV,OAAO;YACP,oBAAoB,EAAE;gBACpB,GAAG,6BAA6B,CAAC,UAAU,CAAC;gBAC5C,GAAG,OAAO,CAAC,oBAAoB;aAChC;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,KAAK;QACR,QAAQ;QACR,cAAc,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;KACnE,CAAC;AACJ,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,oBAAoB,CAClC,MAAuB,EACvB,cAA+B;IAE/B,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC"}
@@ -3,7 +3,7 @@ import type { ResolveAIProfileOptions, ResolvedAIProfile } from "./types.js";
3
3
  * Resolve a profile primary key, alias, or shortcut to a concrete model and runtime config.
4
4
  *
5
5
  * `input` names **intent** (e.g. `balanced`, `cheapest`, `cost-sensitive`), not a vendor model id.
6
- * Use `options.choice` to pick an alternative within the profile (e.g. `cheap` + `safer_provider`).
6
+ * Use `options.choice` to pick an alternative within the profile (e.g. `cheap` + `anthropic_cheap`).
7
7
  *
8
8
  * @see README.md — “Why AI profiles”
9
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"resolveAIProfile.d.ts","sourceRoot":"","sources":["../src/resolveAIProfile.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE7E;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,iBAAiB,CAAC,CA2H5B"}
1
+ {"version":3,"file":"resolveAIProfile.d.ts","sourceRoot":"","sources":["../src/resolveAIProfile.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE7E;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,iBAAiB,CAAC,CA6J5B"}
@@ -3,12 +3,13 @@ import { AIProfilesError } from "./errors.js";
3
3
  import { loadAIProfilesRegistryWithWarnings } from "./loader/loadAIProfilesRegistry.js";
4
4
  import { loadModelsCatalogWithWarnings } from "./loader/loadModelsCatalog.js";
5
5
  import { matchProfileInput } from "./profileInputMatch.js";
6
- import { pickProfileChoice } from "./vendorPolicy.js";
6
+ import { pickProfileChoiceWithConstraints } from "./modalityPolicy.js";
7
+ import { normalizeCostCap } from "./costPolicy.js";
7
8
  /**
8
9
  * Resolve a profile primary key, alias, or shortcut to a concrete model and runtime config.
9
10
  *
10
11
  * `input` names **intent** (e.g. `balanced`, `cheapest`, `cost-sensitive`), not a vendor model id.
11
- * Use `options.choice` to pick an alternative within the profile (e.g. `cheap` + `safer_provider`).
12
+ * Use `options.choice` to pick an alternative within the profile (e.g. `cheap` + `anthropic_cheap`).
12
13
  *
13
14
  * @see README.md — “Why AI profiles”
14
15
  */
@@ -55,11 +56,16 @@ export async function resolveAIProfile(input, options = {}) {
55
56
  let finalChoiceKey;
56
57
  let choice;
57
58
  try {
58
- const picked = pickProfileChoice(profile, {
59
+ const picked = pickProfileChoiceWithConstraints(profileKey, profile, {
59
60
  choiceKey: requestedChoiceKey,
60
61
  allowedProviders: options.allowedProviders,
61
62
  preferLeadingVendors: options.preferLeadingVendors ?? true,
62
- explicitChoiceRequested: options.choice !== undefined,
63
+ explicitChoiceRequested: options.choice !== undefined ||
64
+ (match.kind === "shortcut" && match.shortcut.choice !== undefined),
65
+ inputModalities: options.inputModalities,
66
+ outputModalities: options.outputModalities,
67
+ costCapPer1M: options.costCapPer1M,
68
+ catalog: catalogResult.catalog,
63
69
  });
64
70
  finalChoiceKey = picked.choiceKey;
65
71
  choice = picked.choice;
@@ -76,6 +82,23 @@ export async function resolveAIProfile(input, options = {}) {
76
82
  ],
77
83
  });
78
84
  }
85
+ if (message.includes("required modalities")) {
86
+ throw new AIProfilesError("NO_MODALITY_MATCH", message, {
87
+ input,
88
+ profile: profileKey,
89
+ choice: requestedChoiceKey,
90
+ inputModalities: options.inputModalities,
91
+ outputModalities: options.outputModalities,
92
+ });
93
+ }
94
+ if (message.includes("cost cap")) {
95
+ throw new AIProfilesError("NO_COST_CAP_MATCH", message, {
96
+ input,
97
+ profile: profileKey,
98
+ choice: requestedChoiceKey,
99
+ costCapPer1M: options.costCapPer1M,
100
+ });
101
+ }
79
102
  if (message.startsWith("Unknown choice")) {
80
103
  if (options.allowFallbackToDefaultChoice) {
81
104
  return resolveAIProfile(profileKey, {
@@ -101,6 +124,7 @@ export async function resolveAIProfile(input, options = {}) {
101
124
  loaderWarnings,
102
125
  useOpenRouter: options.useOpenRouter,
103
126
  catalog: catalogResult.catalog,
127
+ costCapApplied: normalizeCostCap(options.costCapPer1M),
104
128
  });
105
129
  }
106
130
  //# sourceMappingURL=resolveAIProfile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveAIProfile.js","sourceRoot":"","sources":["../src/resolveAIProfile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveAIProfile.js","sourceRoot":"","sources":["../src/resolveAIProfile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { type ModelInvocation } from "./modelIdentity.js";
2
+ import type { AIProfileChoice, ModelsCatalogJson } from "./types.js";
3
+ /**
4
+ * Resolve direct + OpenRouter endpoints for a profile choice.
5
+ * Profiles only store {@link AIProfileChoice.provider} + {@link AIProfileChoice.modelId};
6
+ * transport slugs and pricing come from {@link ModelsCatalogJson}.
7
+ */
8
+ export declare function resolveChoiceInvocation(choice: AIProfileChoice, catalog?: ModelsCatalogJson): ModelInvocation;
9
+ export declare function resolveChoiceOpenRouterModelId(choice: AIProfileChoice, catalog?: ModelsCatalogJson): string | null;
10
+ //# sourceMappingURL=resolveCatalogListing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveCatalogListing.d.ts","sourceRoot":"","sources":["../src/resolveCatalogListing.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,eAAe,EAAc,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAqBjF;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,eAAe,CA2CjB;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,MAAM,GAAG,IAAI,CAEf"}