@combycode/llm-sdk 3.3.0 → 3.3.1

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
@@ -6,6 +6,34 @@ All notable changes to `@combycode/llm-sdk` are documented here. The format foll
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [3.3.1] - 2026-09-08
10
+
11
+ ### Fixed
12
+
13
+ - **xAI Imagine video renders were billed at up to a twenty-fifth of their real price.** The
14
+ pricing page's first price column is `Media Input`, and the extraction read it as the first
15
+ resolution's rate -- shifting every per-resolution price one slot along and dropping the last.
16
+ `grok-imagine-video` charged $0.002/sec for 480p where the page says $0.05, so an 8-second
17
+ render estimated at $0.016 instead of $0.40; its flat `perSecond` fallback held $0.01, the rate
18
+ for a second of *input* video, a 5x under-bill on any request that named no resolution.
19
+ `grok-imagine-video-1.5` and `grok-imagine-image-2.0` were shifted the same way. Corrected from
20
+ the page's own table markup, cross-checked against LiteLLM where it carries the model.
21
+ `perUnit`/`perImage`/`perSecond` are what a model EMITS -- the doc comment now says so, having
22
+ previously used the misread pair as its example.
23
+
24
+ ### Changed
25
+
26
+ - Model catalog refreshed: 475 models, 20 added (`claude-fable-5.1`, `gpt-6-astra`,
27
+ `gemini-3.8-flash`, `gemini-3.5-transcribe`, `gemini-omni-1.1-flash`, `lyria-3.5` and 13 on
28
+ OpenRouter), 12 delisted and kept with `active: false`, none dropped. Prices, context windows
29
+ and deprecation dates updated across all five providers; every new chat model carries its
30
+ `wireSpec` pin and a frozen entry in the wire corpus.
31
+ - `outputModalities` now comes from what a source publishes rather than being inferred from the
32
+ model's `type`, which could not tell a model that emits audio from one that only accepts it.
33
+ 23 models gained a second modality: Gemini image models emit text alongside the image, Lyria
34
+ emits audio, `openrouter/auto` can route to an image model. Descriptive metadata -- no request
35
+ is built differently.
36
+
9
37
  ## [3.3.0] - 2026-09-06
10
38
 
11
39
  ### Fixed
@@ -16,7 +16,8 @@ export interface ModelPricing {
16
16
  perMinute?: number;
17
17
  perMChars?: number;
18
18
  /** Per-unit rates keyed by a quality/resolution tier (e.g. video
19
- * `{"720p":0.1,"1080p":0.12}`, image `{"1k":0.002,"2k":0.02}`). When the
19
+ * `{"720p":0.1,"1080p":0.12}`, image `{"1k":0.02,"2k":0.02}`). Rates are what the model
20
+ * EMITS: an input-media price does not belong here. When the
20
21
  * selected resolution matches a key, it overrides the flat perImage/perSecond. */
21
22
  perUnit?: Record<string, number>;
22
23
  /** Per-service-tier rate overrides, keyed by the provider's OWN billed tier