Commit 67c731e
committed
chore(metadata): resync jawcode bundle, re-block hy3-preview, add a drift guard
The committed generated file had drifted 95 models from its source — 148 price
fields, 45 maxTokens, 36 context windows, 36 new models — because nothing ever
checked it. That made any regeneration a blind bulk change, so this lands the
resync with each class of delta accounted for.
Price movements, classified rather than trusted:
- x1.1 exactly on the amazon-bedrock `eu.*` rows — the AWS EU regional premium
(1 -> 1.1, 5 -> 5.5, 25 -> 27.5), plus one row moving the other way.
- ~x1.0-1.3 across ~40 openrouter rows; that bundle tracks live marketplace
pricing, so drift there is the expected steady state.
- The two outliers are aliases, not repricing: `gemini-flash-latest` (x5) and
`gemini-flash-lite-latest` (x2.5) were repointed from 2.5-flash to 3.5-flash.
Confirmed the new values are byte-identical to the `gemini-3.5-flash` row,
which is what a `-latest` alias is supposed to do.
MiniMax-M3 picks up `video` here as the clean one-row delta it was always meant
to be (jawcode `762549f`), with its cost row untouched.
**`hy3-preview` is re-blocked, and this is the important part.** Upstream
re-added `tencent/hy3-preview`, so the regeneration resurrected
`opencode-go/hy3-preview` — the model from lidge-jun#82 that returns
`Provider error 400 … model_not_supported` because it is not on the Zen Go lite
list. lidge-jun#82 was only ever "fixed" by upstream absence; there was no filter. There
is one now (`EXCLUDED_MODELS`), so a future re-add cannot hand users that 400
again. `hy3` itself stays selectable.
Two stale expectations updated with their reasons:
- `claude-opus-5` now has a real `anthropic` jawcode row at the *same*
5/25/0.5/6.25 the maintainer derived, so its provenance moved
`expected/verified-derived` -> `jawcode/verified` for that provider only.
cursor and kiro still resolve through the overlay, so the overlay stays.
- `opencode-go` contexts follow upstream: `qwen3.5-plus` to 1M,
`minimax-m3` down to the 512K tier that matches MiniMax's own ≤512K band.
The new guard regenerates into a temp file and byte-compares, so it cannot
clobber the committed output. It skips when the jawcode checkout is absent —
the generator throws without it, so asserting unconditionally would redden every
contributor and CI run, and drift can only be introduced by someone who has the
source anyway. Verified both directions: passes in sync, fails on a one-field
perturbation. (`JAWCODE_METADATA_OUT` exists to make that safe.)
Gates: tsc clean; sync-guard + codex-catalog + usage-cost + parity + slug-codec
+ minimax-reasoning-split 203 pass / 1 skip / 0 fail; privacy scan passed.1 parent ef805c3 commit 67c731e
5 files changed
Lines changed: 104 additions & 20 deletions
File tree
- scripts
- src/generated
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
26 | 30 | | |
27 | 31 | | |
28 | 32 | | |
| |||
45 | 49 | | |
46 | 50 | | |
47 | 51 | | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
48 | 61 | | |
49 | 62 | | |
50 | 63 | | |
| |||
74 | 87 | | |
75 | 88 | | |
76 | 89 | | |
| 90 | + | |
77 | 91 | | |
78 | 92 | | |
79 | 93 | | |
| |||
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2071 | 2071 | | |
2072 | 2072 | | |
2073 | 2073 | | |
2074 | | - | |
| 2074 | + | |
| 2075 | + | |
| 2076 | + | |
2075 | 2077 | | |
2076 | | - | |
| 2078 | + | |
2077 | 2079 | | |
2078 | 2080 | | |
2079 | 2081 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
106 | | - | |
| 106 | + | |
107 | 107 | | |
108 | 108 | | |
109 | | - | |
110 | | - | |
111 | | - | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
112 | 129 | | |
113 | 130 | | |
114 | 131 | | |
115 | 132 | | |
116 | 133 | | |
117 | | - | |
| 134 | + | |
118 | 135 | | |
119 | 136 | | |
120 | 137 | | |
| |||
0 commit comments