@oh-my-pi/pi-catalog 16.1.3 → 16.1.5
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 +6 -0
- package/dist/types/wire/gemini-headers.d.ts +8 -5
- package/package.json +3 -3
- package/src/models.json +4 -4
- package/src/variant-collapse.ts +25 -2
- package/src/wire/gemini-headers.ts +13 -5
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [16.1.4] - 2026-06-19
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- Fixed Claude 4.6 routing on the `google-antigravity` (and `google-gemini-cli`) Cloud Code Assist providers, whose backend exposes the models asymmetrically: `claude-sonnet-4-6` has no `-thinking` twin and `claude-opus-4-6` has only the `-thinking` twin. The shared `thinkingPair` family was routing thinking efforts on `claude-sonnet-4-6` to a non-existent `claude-sonnet-4-6-thinking` wire id (404 `Requested entity was not found`); replaced both 4.6 entries with bespoke single-wire families that declare the dead ids as `retiredMembers` so `reconcileRetiredRouting` re-points stale bundled-catalog and SQLite-cache rows away from the 404 wire id. Refreshed the bundled `models.json` Sonnet 4.6 entry whose stored `effortRouting` still targeted the dead `-thinking` id. Added `claude-sonnet-4-6` and `claude-opus-4-6-thinking` entries to `ANTIGRAVITY_MODEL_WIRE_PROFILES` capped at the backend's 64000-output-token limit (over-cap requests 400'd with `Request contains an invalid argument`); `modelEnum` is now optional on `AntigravityModelWireProfile` since the Claude wire ids are accepted without a captured `labels.model_enum`. ([#3067](https://github.com/can1357/oh-my-pi/issues/3067))
|
|
10
|
+
|
|
5
11
|
## [16.1.3] - 2026-06-19
|
|
6
12
|
|
|
7
13
|
### Fixed
|
|
@@ -19,15 +19,18 @@ export declare let getAntigravityUserAgent: () => string;
|
|
|
19
19
|
/**
|
|
20
20
|
* Per-wire-id Antigravity Cloud Code Assist request constants, captured from the
|
|
21
21
|
* real `antigravity/hub` client against `daily-cloudcode-pa`. `modelEnum` is the
|
|
22
|
-
* opaque `labels.model_enum` token the client tags each request with
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
22
|
+
* opaque `labels.model_enum` token the client tags each request with — optional
|
|
23
|
+
* because Anthropic-backed wire ids (e.g. `claude-sonnet-4-6`,
|
|
24
|
+
* `claude-opus-4-6-thinking`) are accepted without one; the label is purely
|
|
25
|
+
* telemetry. `maxOutputTokens` is the fixed `generationConfig.maxOutputTokens`
|
|
26
|
+
* the backend enforces regardless of the thinking budget (Claude caps at
|
|
27
|
+
* 64000, Gemini accepts the discovered cap). Keyed by the routed upstream wire
|
|
28
|
+
* id (post effort-routing), not the collapsed logical id. Checkpoint-only ids
|
|
26
29
|
* (e.g. `gemini-3.1-flash-lite`) are intentionally absent — this provider only
|
|
27
30
|
* emits agent requests.
|
|
28
31
|
*/
|
|
29
32
|
export interface AntigravityModelWireProfile {
|
|
30
|
-
modelEnum
|
|
33
|
+
modelEnum?: string;
|
|
31
34
|
maxOutputTokens: number;
|
|
32
35
|
}
|
|
33
36
|
export declare const ANTIGRAVITY_MODEL_WIRE_PROFILES: Readonly<Record<string, AntigravityModelWireProfile>>;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "@oh-my-pi/pi-catalog",
|
|
4
|
-
"version": "16.1.
|
|
4
|
+
"version": "16.1.5",
|
|
5
5
|
"description": "Model catalog for omp: bundled model database, provider discovery descriptors, model identity, classification, and equivalence",
|
|
6
6
|
"homepage": "https://omp.sh",
|
|
7
7
|
"author": "Can Boluk",
|
|
@@ -34,12 +34,12 @@
|
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@bufbuild/protobuf": "^2.12.0",
|
|
37
|
-
"@oh-my-pi/pi-utils": "16.1.
|
|
37
|
+
"@oh-my-pi/pi-utils": "16.1.5",
|
|
38
38
|
"arktype": "^2.2.0",
|
|
39
39
|
"zod": "^4"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@oh-my-pi/pi-ai": "16.1.
|
|
42
|
+
"@oh-my-pi/pi-ai": "16.1.5",
|
|
43
43
|
"@types/bun": "^1.3.14"
|
|
44
44
|
},
|
|
45
45
|
"engines": {
|
package/src/models.json
CHANGED
|
@@ -17862,10 +17862,10 @@
|
|
|
17862
17862
|
],
|
|
17863
17863
|
"effortRouting": {
|
|
17864
17864
|
"off": "claude-sonnet-4-6",
|
|
17865
|
-
"minimal": "claude-sonnet-4-6
|
|
17866
|
-
"low": "claude-sonnet-4-6
|
|
17867
|
-
"medium": "claude-sonnet-4-6
|
|
17868
|
-
"high": "claude-sonnet-4-6
|
|
17865
|
+
"minimal": "claude-sonnet-4-6",
|
|
17866
|
+
"low": "claude-sonnet-4-6",
|
|
17867
|
+
"medium": "claude-sonnet-4-6",
|
|
17868
|
+
"high": "claude-sonnet-4-6"
|
|
17869
17869
|
}
|
|
17870
17870
|
}
|
|
17871
17871
|
},
|
package/src/variant-collapse.ts
CHANGED
|
@@ -220,8 +220,31 @@ const SHARED_CCA_FAMILIES: readonly EffortVariantFamily[] = [
|
|
|
220
220
|
routing: {},
|
|
221
221
|
thinking: { mode: "budget", efforts: [Effort.Minimal, Effort.Low, Effort.Medium, Effort.High] },
|
|
222
222
|
},
|
|
223
|
-
|
|
224
|
-
|
|
223
|
+
// Antigravity Cloud Code Assist exposes Claude 4.6 asymmetrically: only the
|
|
224
|
+
// bare `claude-sonnet-4-6` wire id (no `-thinking` twin) and only the
|
|
225
|
+
// `claude-opus-4-6-thinking` wire id (no bare twin). Per-effort thinking is
|
|
226
|
+
// carried in the request body via `thinkingBudget`, so both ids accept on/off
|
|
227
|
+
// requests. Listing both candidates in `members` (priority order) keeps the
|
|
228
|
+
// collapse correct if the backend mix ever rebalances; `retiredMembers`
|
|
229
|
+
// re-points stale collapsed snapshots (bundled catalog rows, cache rows
|
|
230
|
+
// written by prior generations) away from the dead wire id via
|
|
231
|
+
// `reconcileRetiredRouting`.
|
|
232
|
+
{
|
|
233
|
+
id: "claude-sonnet-4-6",
|
|
234
|
+
name: "Claude Sonnet 4.6",
|
|
235
|
+
members: ["claude-sonnet-4-6", "claude-sonnet-4-6-thinking"],
|
|
236
|
+
retiredMembers: ["claude-sonnet-4-6-thinking"],
|
|
237
|
+
routing: {},
|
|
238
|
+
thinking: { mode: "budget", efforts: [Effort.Minimal, Effort.Low, Effort.Medium, Effort.High] },
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
id: "claude-opus-4-6",
|
|
242
|
+
name: "Claude Opus 4.6",
|
|
243
|
+
members: ["claude-opus-4-6-thinking", "claude-opus-4-6"],
|
|
244
|
+
retiredMembers: ["claude-opus-4-6"],
|
|
245
|
+
routing: {},
|
|
246
|
+
thinking: { mode: "budget", efforts: [Effort.Minimal, Effort.Low, Effort.Medium, Effort.High] },
|
|
247
|
+
},
|
|
225
248
|
thinkingPair("claude-sonnet-4-5", "Claude Sonnet 4.5"),
|
|
226
249
|
thinkingPair("claude-opus-4-5", "Claude Opus 4.5"),
|
|
227
250
|
thinkingPair("gemini-2.5-flash", "Gemini 2.5 Flash"),
|
|
@@ -43,15 +43,18 @@ export let getAntigravityUserAgent = () => {
|
|
|
43
43
|
/**
|
|
44
44
|
* Per-wire-id Antigravity Cloud Code Assist request constants, captured from the
|
|
45
45
|
* real `antigravity/hub` client against `daily-cloudcode-pa`. `modelEnum` is the
|
|
46
|
-
* opaque `labels.model_enum` token the client tags each request with
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
46
|
+
* opaque `labels.model_enum` token the client tags each request with — optional
|
|
47
|
+
* because Anthropic-backed wire ids (e.g. `claude-sonnet-4-6`,
|
|
48
|
+
* `claude-opus-4-6-thinking`) are accepted without one; the label is purely
|
|
49
|
+
* telemetry. `maxOutputTokens` is the fixed `generationConfig.maxOutputTokens`
|
|
50
|
+
* the backend enforces regardless of the thinking budget (Claude caps at
|
|
51
|
+
* 64000, Gemini accepts the discovered cap). Keyed by the routed upstream wire
|
|
52
|
+
* id (post effort-routing), not the collapsed logical id. Checkpoint-only ids
|
|
50
53
|
* (e.g. `gemini-3.1-flash-lite`) are intentionally absent — this provider only
|
|
51
54
|
* emits agent requests.
|
|
52
55
|
*/
|
|
53
56
|
export interface AntigravityModelWireProfile {
|
|
54
|
-
modelEnum
|
|
57
|
+
modelEnum?: string;
|
|
55
58
|
maxOutputTokens: number;
|
|
56
59
|
}
|
|
57
60
|
export const ANTIGRAVITY_MODEL_WIRE_PROFILES: Readonly<Record<string, AntigravityModelWireProfile>> = {
|
|
@@ -60,6 +63,11 @@ export const ANTIGRAVITY_MODEL_WIRE_PROFILES: Readonly<Record<string, Antigravit
|
|
|
60
63
|
"gemini-3-flash-agent": { modelEnum: "MODEL_PLACEHOLDER_M132", maxOutputTokens: 65536 },
|
|
61
64
|
"gemini-3.1-pro-low": { modelEnum: "MODEL_PLACEHOLDER_M36", maxOutputTokens: 65535 },
|
|
62
65
|
"gemini-pro-agent": { modelEnum: "MODEL_PLACEHOLDER_M16", maxOutputTokens: 65535 },
|
|
66
|
+
// Claude on `daily-cloudcode-pa` rejects `maxOutputTokens > 64000` with a
|
|
67
|
+
// 400 (`Request contains an invalid argument`). The model_enum label is
|
|
68
|
+
// untracked for these ids; the backend does not require it.
|
|
69
|
+
"claude-sonnet-4-6": { maxOutputTokens: 64000 },
|
|
70
|
+
"claude-opus-4-6-thinking": { maxOutputTokens: 64000 },
|
|
63
71
|
};
|
|
64
72
|
export function getAntigravityModelWireProfile(wireModelId: string): AntigravityModelWireProfile | undefined {
|
|
65
73
|
return ANTIGRAVITY_MODEL_WIRE_PROFILES[wireModelId];
|