@shop-os/modelkit 0.2.12 → 0.2.13

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/CHANGELOG.md CHANGED
@@ -9,6 +9,19 @@ header in the release PR.
9
9
 
10
10
  ## [Unreleased]
11
11
 
12
+ ## [0.2.13] - 2026-09-18
13
+
14
+ ### Added
15
+ - `dataOnlyCapable(row)`: reports whether a database catalog row would be served by a generic path, a hard-coded kind, or a valid `inputSpec`. The modality check is derived from the adapter's `generateImage` / `generateVideo` / `generateAudio` / `languageModel` surface, so a wrong-modality row reports `ok: false`. Replicate video and audio rows also need a known kind or a valid `inputSpec`.
16
+ - `providerOptions.modelkit.inputSpec`: per-row Replicate video and audio field mapping (`fields`, `values`, `static`) with the shared `applyInputSpec` mapper, read by the Replicate adapter only. Video rows use `VIDEO_INPUT_SPEC_KEYS`; audio rows use `AUDIO_INPUT_SPEC_KEYS` (`prompt`, `durationSeconds`, `seed`, `negativePrompt`, `references`, `sourceVideo`, `instrumental`).
17
+ - `validateInputSpec(raw, row)`: the shared Replicate-only `inputSpec` contract (schema, values-need-fields entries, no duplicate provider names, `constraints.supports` cross-check including `instrumental`, video/audio modality check) used by the write schema, `dataOnlyCapable`, and the Replicate mapper.
18
+ - `PrimeCatalogResult.droppedRows`: count of catalog rows dropped by the per-row quarantine on the read path.
19
+
20
+ ### Changed
21
+ - Replicate and fal video or audio ids with no input mapper now throw `unsupported_option` instead of using a default mapper.
22
+ - Higgsfield Kling rows with an absolute-URL `providerModelId` are rejected with `unsupported_option`; the id must be a platform path.
23
+ - The catalog read path drops invalid rows with one warning each instead of rejecting the whole envelope.
24
+
12
25
  ## [0.2.12] - 2026-09-17
13
26
 
14
27
  ### Changed
package/README.md CHANGED
@@ -165,6 +165,18 @@ The Bedrock model id is `<routing.bedrockProfile>.anthropic.<providerModelId>`
165
165
  breaks the pattern sets `providerOptions.modelkit.bedrockModelId` on its row.
166
166
  See the CHANGELOG entry for the caller-visible Bedrock limits.
167
167
 
168
+ A Replicate video or audio row for a new model carries `providerOptions.modelkit.inputSpec`
169
+ instead of a kit change. It is read by the Replicate adapter only. `fields` maps a canonical key to the provider field name,
170
+ `values` remaps canonical values per key, and `static` merges literal provider fields
171
+ last. Video rows use `VIDEO_INPUT_SPEC_KEYS` (`prompt`, `durationSeconds`,
172
+ `aspectRatio`, `resolution`, `firstFrame`, `lastFrame`, `seed`, `negativePrompt`,
173
+ `generateAudio`, `cfgScale`, `promptExpansion`, `referenceImages`); audio rows use
174
+ `AUDIO_INPUT_SPEC_KEYS` (`prompt`, `durationSeconds`, `seed`, `negativePrompt`,
175
+ `references`, `sourceVideo`, `instrumental`). `aspectRatio: "adaptive"` is omitted.
176
+ `validateInputSpec` is the shared contract the write schema, `dataOnlyCapable`, and
177
+ the Replicate mapper all check. `dataOnlyCapable(row)` reports whether such a row would
178
+ be served.
179
+
168
180
  ```ts
169
181
  import { defaultProvider } from "@aws-sdk/credential-provider-node";
170
182
  import { createDefaultModelKit, keysFromEnv } from "@shop-os/modelkit";