@xemahq/llm-registry-api-client 0.10.1 → 0.11.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.
@@ -149,7 +149,7 @@ const modelStrategyControllerUpsertEntries = async (id, upsertModelStrategyEntri
149
149
  };
150
150
  exports.modelStrategyControllerUpsertEntries = modelStrategyControllerUpsertEntries;
151
151
  const getModelStrategyControllerUpsertEntryUrl = (id, lane) => {
152
- return `/model-strategies/${id}/entries/${lane}`;
152
+ return `/model-strategies/${id}/entries/lane/${lane}`;
153
153
  };
154
154
  exports.getModelStrategyControllerUpsertEntryUrl = getModelStrategyControllerUpsertEntryUrl;
155
155
  /**
@@ -165,7 +165,7 @@ const modelStrategyControllerUpsertEntry = async (id, lane, upsertModelStrategyE
165
165
  };
166
166
  exports.modelStrategyControllerUpsertEntry = modelStrategyControllerUpsertEntry;
167
167
  const getModelStrategyControllerDeleteEntryUrl = (id, lane) => {
168
- return `/model-strategies/${id}/entries/${lane}`;
168
+ return `/model-strategies/${id}/entries/lane/${lane}`;
169
169
  };
170
170
  exports.getModelStrategyControllerDeleteEntryUrl = getModelStrategyControllerDeleteEntryUrl;
171
171
  /**
@@ -186,6 +186,9 @@ export * from './migrationProvisionDtoConsumer';
186
186
  export * from './migrationTargetDto';
187
187
  export * from './modelBindingResponseDto';
188
188
  export * from './modelCapability';
189
+ export * from './modelFactConflictDto';
190
+ export * from './modelFactName';
191
+ export * from './modelFactSource';
189
192
  export * from './modelModality';
190
193
  export * from './modelMode';
191
194
  export * from './modelPricingTierDto';
@@ -203,6 +203,9 @@ __exportStar(require("./migrationProvisionDtoConsumer"), exports);
203
203
  __exportStar(require("./migrationTargetDto"), exports);
204
204
  __exportStar(require("./modelBindingResponseDto"), exports);
205
205
  __exportStar(require("./modelCapability"), exports);
206
+ __exportStar(require("./modelFactConflictDto"), exports);
207
+ __exportStar(require("./modelFactName"), exports);
208
+ __exportStar(require("./modelFactSource"), exports);
206
209
  __exportStar(require("./modelModality"), exports);
207
210
  __exportStar(require("./modelMode"), exports);
208
211
  __exportStar(require("./modelPricingTierDto"), exports);
@@ -0,0 +1,21 @@
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
+ import type { ModelFactName } from './modelFactName.js';
7
+ import type { ModelFactSource } from './modelFactSource.js';
8
+ export interface ModelFactConflictDto {
9
+ /** A model size fact (`ModelResponseDto` property name). Here: the capped fact (`maxInputTokens` or `maxOutputTokens`) that exceeds its bound. */
10
+ fact: ModelFactName;
11
+ /** Its effective value. */
12
+ value: number;
13
+ /** Where that value came from; null = provenance not recorded. */
14
+ source: ModelFactSource | null;
15
+ /** The bounding fact (always `contextWindow` today). */
16
+ limitFact: ModelFactName;
17
+ /** Its effective value. */
18
+ limitValue: number;
19
+ /** Where the bound came from; null = provenance not recorded. */
20
+ limitSource: ModelFactSource | null;
21
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,14 @@
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
+ /**
7
+ * A model size fact (`ModelResponseDto` property name). Here: the capped fact (`maxInputTokens` or `maxOutputTokens`) that exceeds its bound.
8
+ */
9
+ export type ModelFactName = typeof ModelFactName[keyof typeof ModelFactName];
10
+ export declare const ModelFactName: {
11
+ readonly contextWindow: "contextWindow";
12
+ readonly maxInputTokens: "maxInputTokens";
13
+ readonly maxOutputTokens: "maxOutputTokens";
14
+ };
@@ -0,0 +1,13 @@
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 });
8
+ exports.ModelFactName = void 0;
9
+ exports.ModelFactName = {
10
+ contextWindow: 'contextWindow',
11
+ maxInputTokens: 'maxInputTokens',
12
+ maxOutputTokens: 'maxOutputTokens',
13
+ };
@@ -0,0 +1,14 @@
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
+ /**
7
+ * Where a model size fact came from, highest rank first: `operator` (a person set it; no provider sync ever overwrites it), `provider` (provider discovery reported it), `curated_catalog` (the curated per-provider catalogue). For `contextWindow`, null = provenance not recorded (a model registered before sources were tracked).
8
+ */
9
+ export type ModelFactSource = typeof ModelFactSource[keyof typeof ModelFactSource];
10
+ export declare const ModelFactSource: {
11
+ readonly operator: "operator";
12
+ readonly provider: "provider";
13
+ readonly curated_catalog: "curated_catalog";
14
+ };
@@ -0,0 +1,13 @@
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 });
8
+ exports.ModelFactSource = void 0;
9
+ exports.ModelFactSource = {
10
+ operator: 'operator',
11
+ provider: 'provider',
12
+ curated_catalog: 'curated_catalog',
13
+ };
@@ -3,6 +3,8 @@
3
3
  * LLM Registry API
4
4
  * OpenAPI spec version: 0.1.3
5
5
  */
6
+ import type { ModelFactConflictDto } from './modelFactConflictDto.js';
7
+ import type { ModelFactSource } from './modelFactSource.js';
6
8
  import type { ModelModality } from './modelModality.js';
7
9
  import type { ModelMode } from './modelMode.js';
8
10
  import type { ModelPricingTierDto } from './modelPricingTierDto.js';
@@ -15,10 +17,40 @@ export interface ModelResponseDto {
15
17
  /** @nullable */
16
18
  contextWindow?: ModelResponseDtoContextWindow;
17
19
  /**
18
- * Max generation/output tokens. Distinct from contextWindow (the input budget). Null when no authoritative source declares one.
20
+ * Max generation/output tokens. Bounded by contextWindow, which is the TOTAL budget (prompt + reasoning + answer). Null when no authoritative source declares one.
19
21
  * @nullable
20
22
  */
21
23
  maxOutputTokens?: number | null;
24
+ /** Where a model size fact came from, highest rank first: `operator` (a person set it; no provider sync ever overwrites it), `provider` (provider discovery reported it), `curated_catalog` (the curated per-provider catalogue). For `contextWindow`, null = provenance not recorded (a model registered before sources were tracked). */
25
+ contextWindowSource: ModelFactSource | null;
26
+ /**
27
+ * When the source of `contextWindow` last asserted this value (ISO 8601). Null exactly when its source is null.
28
+ * @nullable
29
+ */
30
+ contextWindowVerifiedAt: string | null;
31
+ /**
32
+ * Max prompt (input) tokens, when the service caps input below the context window. Null when no source declares a cap (only the context window applies).
33
+ * @nullable
34
+ */
35
+ maxInputTokens: number | null;
36
+ /** Where a model size fact came from, highest rank first: `operator` (a person set it; no provider sync ever overwrites it), `provider` (provider discovery reported it), `curated_catalog` (the curated per-provider catalogue). For `maxInputTokens`, null = the fact is unknown. */
37
+ maxInputTokensSource: ModelFactSource | null;
38
+ /**
39
+ * When the source of `maxInputTokens` last asserted this value (ISO 8601). Null exactly when its source is null.
40
+ * @nullable
41
+ */
42
+ maxInputTokensVerifiedAt: string | null;
43
+ /** Where a model size fact came from, highest rank first: `operator` (a person set it; no provider sync ever overwrites it), `provider` (provider discovery reported it), `curated_catalog` (the curated per-provider catalogue). For `maxOutputTokens`, null with a null value = the fact is unknown; null beside a value = provenance not recorded (a model registered before sources were tracked). */
44
+ maxOutputTokensSource: ModelFactSource | null;
45
+ /**
46
+ * When the source of `maxOutputTokens` last asserted this value (ISO 8601). Null exactly when its source is null.
47
+ * @nullable
48
+ */
49
+ maxOutputTokensVerifiedAt: string | null;
50
+ /** False when the effective size facts conflict (see `factConflicts`). An inconsistent model is refused for selection and use with `MODEL_FACTS_CONFLICT` until an admin changes or clears the overriding value. */
51
+ factsConsistent: boolean;
52
+ /** Every violated size-fact bound, with both sides' sources. Empty when consistent. */
53
+ factConflicts: ModelFactConflictDto[];
22
54
  /** Operating mode of the model. Null when no signal resolved one. */
23
55
  mode?: ModelMode | null;
24
56
  /**
@@ -8,6 +8,6 @@ export interface ProbedModelDto {
8
8
  id: string;
9
9
  /** Human-readable model name, when the provider reports one. */
10
10
  displayName?: string;
11
- /** Context window resolved from the provider /models response or gateway metadata. Absent when no authoritative value was found. */
11
+ /** TOTAL context window (prompt + answer) resolved from the provider /models response or gateway metadata — never an input cap. Absent when no authoritative total was found. */
12
12
  contextWindow?: number;
13
13
  }
@@ -23,6 +23,21 @@ export interface ResolvedPhaseConfigDto {
23
23
  */
24
24
  reasoningEffort?: string | null;
25
25
  source: string;
26
+ /**
27
+ * The model's TOTAL token budget (prompt + reasoning + answer). Never an input cap.
28
+ * @nullable
29
+ */
30
+ contextWindow?: number | null;
31
+ /**
32
+ * A declared cap on the PROMPT alone, independent of the window. Null = none declared; only the window bounds the prompt.
33
+ * @nullable
34
+ */
35
+ maxInputTokens?: number | null;
36
+ /**
37
+ * Declared ceiling on one answer. Null = UNKNOWN — never "unlimited", never "the rest of the window".
38
+ * @nullable
39
+ */
40
+ maxOutputTokens?: number | null;
26
41
  /** Model Resolution Matrix win-reason trace — which rule won and why. Null only for the persisted per-agent override path. */
27
42
  decision?: ResolvedModelDecisionDto | null;
28
43
  }
@@ -8,10 +8,22 @@ export interface UpdateModelDto {
8
8
  /** Human-friendly display name */
9
9
  displayName?: string;
10
10
  /**
11
- * Context window size in tokens
11
+ * Context window (max input tokens). Recorded with source `operator`; the provider sync never overwrites an operator value. Not nullable — a model always has a context window. Omit to leave it unchanged.
12
12
  * @minimum 1
13
13
  */
14
14
  contextWindow?: number;
15
+ /**
16
+ * Max prompt (input) tokens, when the service caps input below the context window. A positive integer is recorded with source `operator`. `null` clears the fact to unknown (value and source). Omit to leave it unchanged.
17
+ * @minimum 1
18
+ * @nullable
19
+ */
20
+ maxInputTokens?: number | null;
21
+ /**
22
+ * Max generation/output tokens. A positive integer is recorded with source `operator` and the provider sync never overwrites it. `null` clears the fact to unknown (value and source), so the next provider sync may fill it again. Omit to leave it unchanged.
23
+ * @minimum 1
24
+ * @nullable
25
+ */
26
+ maxOutputTokens?: number | null;
15
27
  /** Model capabilities */
16
28
  capabilities?: string[];
17
29
  /** Closed-enum input/output modalities the model serves. Replaces the stored set when provided; omit to leave it unchanged. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xemahq/llm-registry-api-client",
3
- "version": "0.10.1",
3
+ "version": "0.11.0",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "files": [