@aliou/pi-neuralwatt 0.15.0 → 0.15.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.
@@ -53,6 +53,19 @@ const GLM_5_2: NeuralwattModelFamily = {
53
53
  },
54
54
  };
55
55
 
56
+ // ZhipuAI. GLM-5.3 ships as a GLM-5.2 weight swap in gated preview, with
57
+ // GLM-5.2 pricing parity (per the API metadata; review at launch). Unlike
58
+ // 5.2, reasoning is mandatory and `none` is not offered: efforts are
59
+ // max/high/low (default max).
60
+ const GLM_5_3: NeuralwattModelFamily = {
61
+ cost: { input: 1.45, output: 4.5, cacheRead: 0.145 },
62
+ vision: false,
63
+ reasoningMetadata: {
64
+ supported_efforts: ["max", "high", "low"],
65
+ mandatory: true,
66
+ },
67
+ };
68
+
56
69
  // MoonshotAI. K3 supports reasoning efforts low/high/max (default max) and
57
70
  // can be turned off (`mandatory: false`). The `-fast` endpoint is a shorthand
58
71
  // to set thinking to off.
@@ -65,12 +78,15 @@ const KIMI_K3: NeuralwattModelFamily = {
65
78
  },
66
79
  };
67
80
 
68
- // MoonshotAI. The K2.7 Code API exposes no `reasoning` block, so this family
69
- // omits `reasoningMetadata`; `buildThinkingLevelMap` falls back to a high-only
70
- // map with `off: null`, matching the upstream binary thinking toggle.
81
+ // MoonshotAI. K2.7 Code has mandatory reasoning with no selectable efforts
82
+ // (`supported_efforts: []`), so `buildThinkingLevelMap` nulls out every level.
71
83
  const KIMI_K2_7_CODE: NeuralwattModelFamily = {
72
84
  cost: { input: 0.95, output: 4.0, cacheRead: 0.095 },
73
85
  vision: true,
86
+ reasoningMetadata: {
87
+ supported_efforts: [],
88
+ mandatory: true,
89
+ },
74
90
  };
75
91
 
76
92
  // Qwen. Qwen3.6 35B only advertises `high` and `none`.
@@ -180,6 +196,18 @@ const FAMILIES: [NeuralwattModelFamily, NeuralwattVariantSpec[]][] = [
180
196
  },
181
197
  ],
182
198
  ],
199
+ [
200
+ GLM_5_3,
201
+ [
202
+ {
203
+ id: "glm-5.3",
204
+ name: "GLM-5.3",
205
+ contextWindow: 1048560,
206
+ maxOutputTokens: null,
207
+ reasoning: true,
208
+ },
209
+ ],
210
+ ],
183
211
  // The kimi-k3 endpoint rejects anything above 327,680 total tokens with
184
212
  // `400: max_completion_tokens is too large … supports at most 327680
185
213
  // completion tokens` (verified at runtime), even though the API advertises
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aliou/pi-neuralwatt",
3
- "version": "0.15.0",
3
+ "version": "0.15.2",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "private": false,
@@ -52,6 +52,7 @@
52
52
  "@types/node": "^25.0.10",
53
53
  "husky": "^9.1.7",
54
54
  "ts-json-schema-generator": "^2.4.0",
55
+ "tsx": "4.23.12",
55
56
  "typescript": "^5.9.3",
56
57
  "vitest": "^4.0.18"
57
58
  },
@@ -67,6 +68,7 @@
67
68
  "format": "biome check --write",
68
69
  "test": "vitest run",
69
70
  "test:watch": "vitest",
71
+ "check:models": "tsx scripts/check-models.ts",
70
72
  "gen:schema": "pi-settings-schema -p src/config/types.ts -t NeuralwattConfig -o schema.json --version 0.12.0",
71
73
  "check:schema": "pi-settings-schema -p src/config/types.ts -t NeuralwattConfig -o schema.json --version 0.12.0 --check",
72
74
  "check:lockfile": "pnpm install --frozen-lockfile --ignore-scripts",
@@ -1,7 +1,6 @@
1
1
  import type { Migration } from "@aliou/pi-utils-settings";
2
2
  import type { NeuralwattConfig } from "../types";
3
3
 
4
- export { disableLegacyModelIdsByDefaultMigration } from "./01-disable-legacy-model-ids-by-default";
5
4
  export {
6
5
  backupConfig,
7
6
  flatToNestedConfigMigration,
@@ -9,7 +8,6 @@ export {
9
8
  export { renameHiddenToEarlyAccessMigration } from "./03-rename-hidden-to-early-access";
10
9
  export { enableAliasesForLegacyUsersMigration } from "./04-enable-aliases-for-legacy-users";
11
10
 
12
- import { disableLegacyModelIdsByDefaultMigration } from "./01-disable-legacy-model-ids-by-default";
13
11
  import { flatToNestedConfigMigration } from "./02-flat-to-nested-config";
14
12
  import { renameHiddenToEarlyAccessMigration } from "./03-rename-hidden-to-early-access";
15
13
  import { enableAliasesForLegacyUsersMigration } from "./04-enable-aliases-for-legacy-users";
@@ -18,7 +16,6 @@ import { enableAliasesForLegacyUsersMigration } from "./04-enable-aliases-for-le
18
16
  // applies them in sequence on the raw config record, so they are cast to the
19
17
  // current config type for the array.
20
18
  export const migrations = [
21
- disableLegacyModelIdsByDefaultMigration,
22
19
  flatToNestedConfigMigration,
23
20
  renameHiddenToEarlyAccessMigration,
24
21
  enableAliasesForLegacyUsersMigration,
@@ -1,30 +0,0 @@
1
- import type { Migration } from "@aliou/pi-utils-settings";
2
-
3
- /** Flat config shape before the 0.8.x nested migration. */
4
- interface FlatNeuralwattConfig {
5
- $schema?: string;
6
- quotaCommand?: boolean;
7
- quotaWarnings?: boolean;
8
- subBarIntegration?: boolean;
9
- includeLegacyModelIds?: boolean;
10
- includeHiddenModels?: boolean;
11
- }
12
-
13
- function isPreviousConfigWithoutLegacyDefault(
14
- config: FlatNeuralwattConfig,
15
- ): boolean {
16
- return config.includeLegacyModelIds === undefined;
17
- }
18
-
19
- export const disableLegacyModelIdsByDefaultMigration: Migration<FlatNeuralwattConfig> =
20
- {
21
- name: "disable-legacy-model-ids-by-default",
22
- version: "0.8.0",
23
- shouldRun: isPreviousConfigWithoutLegacyDefault,
24
- message:
25
- "[neuralwatt] legacy model IDs (ids including the provider and the quantization) are disabled by default. You can enable them with /neuralwatt:settings.",
26
- run: (config) => ({
27
- ...config,
28
- includeLegacyModelIds: false,
29
- }),
30
- };