@xemahq/llm-registry-api-client 0.8.13 → 0.10.0

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.
@@ -3,7 +3,7 @@
3
3
  * LLM Registry API
4
4
  * OpenAPI spec version: 0.1.3
5
5
  */
6
- import type { BindModelStrategyDto, CreateModelStrategyDto, ModelStrategyControllerGetProjectBinding200, ModelStrategyResponseDtoDataArrayEnvelope, ModelStrategyResponseDtoDataEnvelope, OrgDefaultStrategyStatusResponseDtoDataEnvelope, ProjectModelStrategyBindingResponseDtoDataEnvelope, StrategyDeletionImpactResponseDtoDataEnvelope, StrategyTemplateResponseDtoDataArrayEnvelope, UpdateModelStrategyDto, UpsertModelStrategyEntriesDto } from '../../models';
6
+ import type { BindModelStrategyDto, CreateModelStrategyDto, ModelStrategyControllerGetProjectBinding200, ModelStrategyResponseDtoDataArrayEnvelope, ModelStrategyResponseDtoDataEnvelope, OrgDefaultStrategyStatusResponseDtoDataEnvelope, ProjectModelStrategyBindingResponseDtoDataEnvelope, StrategyDeletionImpactResponseDtoDataEnvelope, StrategyTemplateResponseDtoDataArrayEnvelope, UpdateModelStrategyDto, UpsertModelStrategyEntriesDto, UpsertModelStrategyEntryDto } from '../../models';
7
7
  export declare const getModelStrategyControllerCreateStrategyUrl: () => string;
8
8
  /**
9
9
  * @summary Create a model strategy
@@ -54,6 +54,16 @@ export declare const getModelStrategyControllerUpsertEntriesUrl: (id: string) =>
54
54
  * @summary Replace all strategy entries
55
55
  */
56
56
  export declare const modelStrategyControllerUpsertEntries: (id: string, upsertModelStrategyEntriesDto: UpsertModelStrategyEntriesDto, options?: RequestInit) => Promise<ModelStrategyResponseDtoDataEnvelope>;
57
+ export declare const getModelStrategyControllerUpsertEntryUrl: (id: string, lane: string) => string;
58
+ /**
59
+ * @summary Bind one model lane, leaving every other lane untouched
60
+ */
61
+ export declare const modelStrategyControllerUpsertEntry: (id: string, lane: string, upsertModelStrategyEntryDto: UpsertModelStrategyEntryDto, options?: RequestInit) => Promise<ModelStrategyResponseDtoDataEnvelope>;
62
+ export declare const getModelStrategyControllerDeleteEntryUrl: (id: string, lane: string) => string;
63
+ /**
64
+ * @summary Clear one model lane, so it falls back to the default binding
65
+ */
66
+ export declare const modelStrategyControllerDeleteEntry: (id: string, lane: string, options?: RequestInit) => Promise<ModelStrategyResponseDtoDataEnvelope>;
57
67
  export declare const getModelStrategyControllerBindStrategyUrl: (projectId: string) => string;
58
68
  /**
59
69
  * @summary Bind a model strategy to a project
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.modelStrategyControllerUnbindStrategy = exports.getModelStrategyControllerUnbindStrategyUrl = exports.modelStrategyControllerGetProjectBinding = exports.getModelStrategyControllerGetProjectBindingUrl = exports.modelStrategyControllerBindStrategy = exports.getModelStrategyControllerBindStrategyUrl = exports.modelStrategyControllerUpsertEntries = exports.getModelStrategyControllerUpsertEntriesUrl = exports.modelStrategyControllerGetStrategyDeletionImpact = exports.getModelStrategyControllerGetStrategyDeletionImpactUrl = exports.modelStrategyControllerDeleteStrategy = exports.getModelStrategyControllerDeleteStrategyUrl = exports.modelStrategyControllerUpdateStrategy = exports.getModelStrategyControllerUpdateStrategyUrl = exports.modelStrategyControllerGetStrategy = exports.getModelStrategyControllerGetStrategyUrl = exports.modelStrategyControllerAdoptTemplate = exports.getModelStrategyControllerAdoptTemplateUrl = exports.modelStrategyControllerListTemplates = exports.getModelStrategyControllerListTemplatesUrl = exports.modelStrategyControllerGetOrgDefaultStatus = exports.getModelStrategyControllerGetOrgDefaultStatusUrl = exports.modelStrategyControllerListStrategies = exports.getModelStrategyControllerListStrategiesUrl = exports.modelStrategyControllerCreateStrategy = exports.getModelStrategyControllerCreateStrategyUrl = void 0;
3
+ exports.modelStrategyControllerUnbindStrategy = exports.getModelStrategyControllerUnbindStrategyUrl = exports.modelStrategyControllerGetProjectBinding = exports.getModelStrategyControllerGetProjectBindingUrl = exports.modelStrategyControllerBindStrategy = exports.getModelStrategyControllerBindStrategyUrl = exports.modelStrategyControllerDeleteEntry = exports.getModelStrategyControllerDeleteEntryUrl = exports.modelStrategyControllerUpsertEntry = exports.getModelStrategyControllerUpsertEntryUrl = exports.modelStrategyControllerUpsertEntries = exports.getModelStrategyControllerUpsertEntriesUrl = exports.modelStrategyControllerGetStrategyDeletionImpact = exports.getModelStrategyControllerGetStrategyDeletionImpactUrl = exports.modelStrategyControllerDeleteStrategy = exports.getModelStrategyControllerDeleteStrategyUrl = exports.modelStrategyControllerUpdateStrategy = exports.getModelStrategyControllerUpdateStrategyUrl = exports.modelStrategyControllerGetStrategy = exports.getModelStrategyControllerGetStrategyUrl = exports.modelStrategyControllerAdoptTemplate = exports.getModelStrategyControllerAdoptTemplateUrl = exports.modelStrategyControllerListTemplates = exports.getModelStrategyControllerListTemplatesUrl = exports.modelStrategyControllerGetOrgDefaultStatus = exports.getModelStrategyControllerGetOrgDefaultStatusUrl = exports.modelStrategyControllerListStrategies = exports.getModelStrategyControllerListStrategiesUrl = exports.modelStrategyControllerCreateStrategy = exports.getModelStrategyControllerCreateStrategyUrl = void 0;
4
4
  const custom_fetch_1 = require("../../custom-fetch");
5
5
  const getModelStrategyControllerCreateStrategyUrl = () => {
6
6
  return `/model-strategies`;
@@ -148,6 +148,36 @@ const modelStrategyControllerUpsertEntries = async (id, upsertModelStrategyEntri
148
148
  });
149
149
  };
150
150
  exports.modelStrategyControllerUpsertEntries = modelStrategyControllerUpsertEntries;
151
+ const getModelStrategyControllerUpsertEntryUrl = (id, lane) => {
152
+ return `/model-strategies/${id}/entries/${lane}`;
153
+ };
154
+ exports.getModelStrategyControllerUpsertEntryUrl = getModelStrategyControllerUpsertEntryUrl;
155
+ /**
156
+ * @summary Bind one model lane, leaving every other lane untouched
157
+ */
158
+ const modelStrategyControllerUpsertEntry = async (id, lane, upsertModelStrategyEntryDto, options) => {
159
+ return (0, custom_fetch_1.customFetch)((0, exports.getModelStrategyControllerUpsertEntryUrl)(id, lane), {
160
+ ...options,
161
+ method: 'PUT',
162
+ headers: { 'Content-Type': 'application/json', ...options?.headers },
163
+ body: JSON.stringify(upsertModelStrategyEntryDto)
164
+ });
165
+ };
166
+ exports.modelStrategyControllerUpsertEntry = modelStrategyControllerUpsertEntry;
167
+ const getModelStrategyControllerDeleteEntryUrl = (id, lane) => {
168
+ return `/model-strategies/${id}/entries/${lane}`;
169
+ };
170
+ exports.getModelStrategyControllerDeleteEntryUrl = getModelStrategyControllerDeleteEntryUrl;
171
+ /**
172
+ * @summary Clear one model lane, so it falls back to the default binding
173
+ */
174
+ const modelStrategyControllerDeleteEntry = async (id, lane, options) => {
175
+ return (0, custom_fetch_1.customFetch)((0, exports.getModelStrategyControllerDeleteEntryUrl)(id, lane), {
176
+ ...options,
177
+ method: 'DELETE'
178
+ });
179
+ };
180
+ exports.modelStrategyControllerDeleteEntry = modelStrategyControllerDeleteEntry;
151
181
  const getModelStrategyControllerBindStrategyUrl = (projectId) => {
152
182
  return `/projects/${projectId}/model-strategy`;
153
183
  };
@@ -350,6 +350,7 @@ export * from './upsertAgentModelOverrideDto';
350
350
  export * from './upsertAgentModelOverrideDtoScope';
351
351
  export * from './upsertEmbeddingCommitmentDto';
352
352
  export * from './upsertModelStrategyEntriesDto';
353
+ export * from './upsertModelStrategyEntryDto';
353
354
  export * from './upsertToolProfileDto';
354
355
  export * from './widgetKindDto';
355
356
  export * from './widgetKindDtoPayloadSchema';
@@ -367,6 +367,7 @@ __exportStar(require("./upsertAgentModelOverrideDto"), exports);
367
367
  __exportStar(require("./upsertAgentModelOverrideDtoScope"), exports);
368
368
  __exportStar(require("./upsertEmbeddingCommitmentDto"), exports);
369
369
  __exportStar(require("./upsertModelStrategyEntriesDto"), exports);
370
+ __exportStar(require("./upsertModelStrategyEntryDto"), exports);
370
371
  __exportStar(require("./upsertToolProfileDto"), exports);
371
372
  __exportStar(require("./widgetKindDto"), exports);
372
373
  __exportStar(require("./widgetKindDtoPayloadSchema"), exports);
@@ -4,7 +4,7 @@
4
4
  * OpenAPI spec version: 0.1.3
5
5
  */
6
6
  /**
7
- * A modality this invocation REQUIRES — the Matrix `modelCapability` dimension, so one rule can route every vision-needing invocation to a multimodal model without pinning a provider. Closed kernel set; an unknown value is a 400.
7
+ * A modality this invocation REQUIRES — the Matrix `modelCapability` dimension, so one rule can route every vision-needing invocation to a multimodal model without pinning a provider. It is ALSO a requirement on whatever the resolution selects: a resolved model that does not provide it is refused with 422 `MODEL_CAPABILITY_UNSUPPORTED` rather than returned, and no other model is substituted. Closed kernel set; an unknown value is a 400.
8
8
  */
9
9
  export type ModelCapability = typeof ModelCapability[keyof typeof ModelCapability];
10
10
  export declare const ModelCapability: {
@@ -17,6 +17,8 @@ export interface ModelStrategyResponseDto {
17
17
  isSystem: boolean;
18
18
  isDefault: boolean;
19
19
  createdBy: string;
20
+ /** The entry set's concurrency counter. Send it back as `expectedVersion` when replacing the whole entry set. Moves on every write that changes the entries — including a per-lane write — and not on an unrelated metadata edit. */
21
+ version: number;
20
22
  createdAt: string;
21
23
  updatedAt: string;
22
24
  /**
@@ -12,4 +12,6 @@ export interface ModelVocabularyKeyDto {
12
12
  title: string;
13
13
  /** What work this key names, in the reader's words. */
14
14
  description: string;
15
+ /** The biome(s) that declare this key, among the declarations visible to the caller — sorted, de-duplicated, and EVERY declarer rather than one: two biomes may declare the same key, and both are reported. Empty for a key no biome declared. PROVENANCE, NOT IDENTITY: the key alone is the stable identifier, and this list moves when a biome is renamed or replaced — group or explain by it, never key a binding on it. */
16
+ declaringBiomeIds: string[];
15
17
  }
@@ -49,6 +49,6 @@ export interface ResolveModelForInvocationDto {
49
49
  * @maxLength 512
50
50
  */
51
51
  skillSlug?: string;
52
- /** A modality this invocation REQUIRES — the Matrix `modelCapability` dimension, so one rule can route every vision-needing invocation to a multimodal model without pinning a provider. Closed kernel set; an unknown value is a 400. */
52
+ /** A modality this invocation REQUIRES — the Matrix `modelCapability` dimension, so one rule can route every vision-needing invocation to a multimodal model without pinning a provider. It is ALSO a requirement on whatever the resolution selects: a resolved model that does not provide it is refused with 422 `MODEL_CAPABILITY_UNSUPPORTED` rather than returned, and no other model is substituted. Closed kernel set; an unknown value is a 400. */
53
53
  modelCapability?: ModelCapability;
54
54
  }
@@ -7,4 +7,9 @@ import type { CreateModelStrategyEntryDto } from './createModelStrategyEntryDto.
7
7
  export interface UpsertModelStrategyEntriesDto {
8
8
  /** Role entries (replaces all entries) */
9
9
  entries: CreateModelStrategyEntryDto[];
10
+ /**
11
+ * The `version` read from this strategy. When sent, a stale value is refused with 409 `MODEL_STRATEGY_VERSION_MISMATCH`, which carries `currentVersion` to retry with. Send it: it is optional only for one transition and will become REQUIRED — without it this route replaces the whole entry set unconditionally, so a concurrent edit to a DIFFERENT lane is silently discarded. To change one lane, use PUT /model-strategies/:id/entries/:lane, which needs no version.
12
+ * @minimum 1
13
+ */
14
+ expectedVersion?: number;
10
15
  }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Generated by @xemahq/api-client-generator — do not edit manually.
3
+ * LLM Registry API
4
+ * OpenAPI spec version: 0.1.3
5
+ */
6
+ export interface UpsertModelStrategyEntryDto {
7
+ /** Model slug/ID to match against LlmModel.modelId */
8
+ modelSlug: string;
9
+ /**
10
+ * Temperature (0-2). Omitted = the engine/model owns it; no platform value is ever materialized.
11
+ * @minimum 0
12
+ * @maximum 2
13
+ */
14
+ temperature?: number;
15
+ /** Reasoning effort asked of the model — the kernel's `ModelOptions.reasoningEffort`, an open string the provider interprets (`low`/`medium`/`high`/…). Omitted = the engine/model owns it. */
16
+ reasoningEffort?: string;
17
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * Generated by @xemahq/api-client-generator — do not edit manually.
4
+ * LLM Registry API
5
+ * OpenAPI spec version: 0.1.3
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xemahq/llm-registry-api-client",
3
- "version": "0.8.13",
3
+ "version": "0.10.0",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "files": [