@warmdrift/kgauto-compiler 2.0.0-alpha.94 → 2.0.0-alpha.96
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/dist/{chunk-VXSSZFES.mjs → chunk-26IS3Y6Z.mjs} +1 -1
- package/dist/{chunk-OAJZLZBN.mjs → chunk-2D4H7HGZ.mjs} +1 -1
- package/dist/{chunk-57XCZGN5.mjs → chunk-AMV3M2KH.mjs} +187 -36
- package/dist/{chunk-TN6UIX56.mjs → chunk-SRPRNTDT.mjs} +17 -7
- package/dist/glassbox-routes/index.js +187 -36
- package/dist/glassbox-routes/index.mjs +2 -2
- package/dist/index.d.mts +12 -3
- package/dist/index.d.ts +12 -3
- package/dist/index.js +205 -42
- package/dist/index.mjs +5 -4
- package/dist/key-health.js +1 -1
- package/dist/key-health.mjs +1 -1
- package/dist/probe.js +196 -40
- package/dist/probe.mjs +3 -3
- package/dist/profiles.d.mts +45 -2
- package/dist/profiles.d.ts +45 -2
- package/dist/profiles.js +187 -36
- package/dist/profiles.mjs +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -142,6 +142,7 @@ __export(index_exports, {
|
|
|
142
142
|
isMeasuredFailureBrainActive: () => isMeasuredFailureBrainActive,
|
|
143
143
|
isMeasuredFailureGateEnabledFromEnv: () => isMeasuredFailureGateEnabledFromEnv,
|
|
144
144
|
isModelReachable: () => isModelReachable,
|
|
145
|
+
isModelUnavailableMessage: () => isModelUnavailableMessage,
|
|
145
146
|
isPromotionsBrainActive: () => isPromotionsBrainActive,
|
|
146
147
|
isProviderReachable: () => isProviderReachable,
|
|
147
148
|
judgeMeasuredFailure: () => judgeMeasuredFailure,
|
|
@@ -418,6 +419,26 @@ var PROFILES_RAW = [
|
|
|
418
419
|
// on Fable 5 (omit instead) — MOOT here: ANTHROPIC_LOWERING_BASE carries no
|
|
419
420
|
// `thinking` field, so kgauto never sends the param. (L-049/L-081.)
|
|
420
421
|
id: "claude-fable-5",
|
|
422
|
+
// alpha.95 — MEASURED, 2026-08-28, guard-probe-suite --discover run 32.
|
|
423
|
+
// This model declared no cliffs, which is why the offline check had
|
|
424
|
+
// nothing measured to say about it. The claim states its denominator:
|
|
425
|
+
// the fixture demands 3 specific tools from a 20-tool menu, so this is
|
|
426
|
+
// evidence of correct selection + 3-way parallel emission at that menu
|
|
427
|
+
// size — NOT evidence of 20 concurrent calls.
|
|
428
|
+
probedLimits: [
|
|
429
|
+
{
|
|
430
|
+
metric: "tool_count",
|
|
431
|
+
testedAt: 20,
|
|
432
|
+
demanded: 3,
|
|
433
|
+
served: [3, 3, 3],
|
|
434
|
+
outcome: "held",
|
|
435
|
+
trials: 3,
|
|
436
|
+
lastProbed: "2026-08-28",
|
|
437
|
+
probeRunId: 32,
|
|
438
|
+
route: "direct",
|
|
439
|
+
claim: "Measured 2026-08-28: served 3 of 3 demanded tools from a 20-tool menu, 3/3 trials, direct route."
|
|
440
|
+
}
|
|
441
|
+
],
|
|
421
442
|
verifiedAgainstDocs: "2026-06-21",
|
|
422
443
|
provider: "anthropic",
|
|
423
444
|
status: "current",
|
|
@@ -538,6 +559,26 @@ var PROFILES_RAW = [
|
|
|
538
559
|
// failure, where a template-clone of PRICE (the field that actually varies,
|
|
539
560
|
// there by 2.5-3.75x) went unverified for 65 days.
|
|
540
561
|
id: "claude-opus-5",
|
|
562
|
+
// alpha.95 — MEASURED, 2026-08-28, guard-probe-suite --discover run 33.
|
|
563
|
+
// This model declared no cliffs, which is why the offline check had
|
|
564
|
+
// nothing measured to say about it. The claim states its denominator:
|
|
565
|
+
// the fixture demands 3 specific tools from a 20-tool menu, so this is
|
|
566
|
+
// evidence of correct selection + 3-way parallel emission at that menu
|
|
567
|
+
// size — NOT evidence of 20 concurrent calls.
|
|
568
|
+
probedLimits: [
|
|
569
|
+
{
|
|
570
|
+
metric: "tool_count",
|
|
571
|
+
testedAt: 20,
|
|
572
|
+
demanded: 3,
|
|
573
|
+
served: [3, 3, 3],
|
|
574
|
+
outcome: "held",
|
|
575
|
+
trials: 3,
|
|
576
|
+
lastProbed: "2026-08-28",
|
|
577
|
+
probeRunId: 33,
|
|
578
|
+
route: "direct",
|
|
579
|
+
claim: "Measured 2026-08-28: served 3 of 3 demanded tools from a 20-tool menu, 3/3 trials, direct route."
|
|
580
|
+
}
|
|
581
|
+
],
|
|
541
582
|
verifiedAgainstDocs: "2026-07-25",
|
|
542
583
|
provider: "anthropic",
|
|
543
584
|
status: "current",
|
|
@@ -1122,18 +1163,22 @@ var PROFILES_RAW = [
|
|
|
1122
1163
|
maxContextTokens: 1e6,
|
|
1123
1164
|
maxOutputTokens: 384e3,
|
|
1124
1165
|
maxTools: 16,
|
|
1125
|
-
|
|
1166
|
+
// alpha.96 — CORRECTED from `false`, which was AI-generated at greenfield
|
|
1167
|
+
// (2026-04-25) and never re-checked. Measured 2026-08-28 direct to
|
|
1168
|
+
// api.deepseek.com, no kgauto in the path, 6 tools offered, 3 trials:
|
|
1169
|
+
// 3 parallel tool calls returned, 3/3. L-040's original evidence said
|
|
1170
|
+
// "7-8 calls per step" — which was never a claim that only one tool may be
|
|
1171
|
+
// offered. See the note in lower.ts:lowerDeepSeek.
|
|
1172
|
+
parallelToolCalls: true,
|
|
1126
1173
|
structuredOutput: "native",
|
|
1127
1174
|
systemPromptMode: "inline",
|
|
1128
1175
|
streaming: true,
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
}
|
|
1136
|
-
],
|
|
1176
|
+
// alpha.96 — the `tool_count@1 -> drop_to_top_relevant` cliff was DELETED.
|
|
1177
|
+
// It restated `parallelToolCalls: false` as a threshold and was falsified by
|
|
1178
|
+
// the same measurement. It is not kept-and-flagged (the usual lifecycle)
|
|
1179
|
+
// because it was never a real failure mode: it was a second enforcement of a
|
|
1180
|
+
// wrong belief, and keeping it active would keep amputating tools.
|
|
1181
|
+
cliffs: [],
|
|
1137
1182
|
costInputPer1m: 0.44,
|
|
1138
1183
|
costOutputPer1m: 1.32,
|
|
1139
1184
|
lowering: {
|
|
@@ -1145,7 +1190,12 @@ var PROFILES_RAW = [
|
|
|
1145
1190
|
{ signal: "rate_limit", action: "escalate", reason: "429 \u2014 escalate" }
|
|
1146
1191
|
],
|
|
1147
1192
|
strengths: ["cost", "1m_context", "json_output", "code", "reasoning"],
|
|
1148
|
-
|
|
1193
|
+
// alpha.96 — 'parallel_tools' REMOVED: measurably false (2026-08-28, direct
|
|
1194
|
+
// to api.deepseek.com, 6 tools, 3 trials, 3 parallel calls, both models).
|
|
1195
|
+
// 'large_tool_sets' KEPT and explicitly unverified — the probe offered 6 of
|
|
1196
|
+
// a declared maxTools 16, so it says nothing about behaviour at 16. Not
|
|
1197
|
+
// falsified is not the same as confirmed.
|
|
1198
|
+
weaknesses: ["large_tool_sets"],
|
|
1149
1199
|
// alpha.47 — explicit slow override. Tag derivation would say 'medium'
|
|
1150
1200
|
// (no 'latency' weakness, no 'speed' strength), but the alpha.46 shadow
|
|
1151
1201
|
// probe MEASURED deepseek-v4-flash at 20485ms served (2026-06-03) — ~2.3×
|
|
@@ -1157,7 +1207,11 @@ var PROFILES_RAW = [
|
|
|
1157
1207
|
notes: "Cheap workhorse. 1M context, 384k max output. Cache-hit input $0.0028/M (1/50\xD7 of miss). Aliased as `deepseek-chat` (non-thinking) and `deepseek-reasoner` (thinking) \u2014 see ALIASES. PEAK/OFF-PEAK since 2026-08-16 (page fetched 2026-08-24): peak = weekdays 01:00-04:00 + 06:00-10:00 UTC, off-peak = all other hours at HALF peak. Encoded prices ARE the peak rate (conservative: never understate cost); off-peak traffic costs half what the estimate says. alpha.87 was built + verified 2026-08-14 (prices then live), held at the publish gate 10 days, and published 2026-08-24 \u2014 by which time the 08-16 transition had killed them ($0.14/$0.28 flash, $0.435/$0.87 pro); corrected here (alpha.88). Build-then-hold is the mechanism: re-verify prices at publish when publish is not same-session as build. A single price field cannot represent a two-rate schedule; catalog-sync extractions oscillate between the rates day-to-day (peak read 08-21, off-peak read 08-22) \u2014 time-of-day pricing remains unmodeled, roadmap.",
|
|
1158
1208
|
// Master plan §6.2 anchor. Brain-validated tier 1 cross-provider for
|
|
1159
1209
|
// classify (169 rows, 0% empty). Tier 0 for summarize-with-no-tools.
|
|
1160
|
-
//
|
|
1210
|
+
// alpha.96 — the hunt half of this sentence is RETRACTED: "sequential tools
|
|
1211
|
+
// — L-040" was falsified 2026-08-28 (direct measurement, 3 parallel tool
|
|
1212
|
+
// calls, both models). Do not use this comment to re-lower `hunt`; it is
|
|
1213
|
+
// the exact prose that justified the wrong score. The reasoning-depth
|
|
1214
|
+
// rationale is untouched and still carries `critique`.
|
|
1161
1215
|
archetypePerf: {
|
|
1162
1216
|
classify: 7,
|
|
1163
1217
|
// brain-validated, 169 rows
|
|
@@ -1169,8 +1223,16 @@ var PROFILES_RAW = [
|
|
|
1169
1223
|
plan: 5,
|
|
1170
1224
|
extract: 5,
|
|
1171
1225
|
critique: 4,
|
|
1172
|
-
|
|
1173
|
-
//
|
|
1226
|
+
// alpha.96 — was 4. Its ONLY written justification was "sequential tool
|
|
1227
|
+
// calls only — L-040", which is falsified. A score derived from a false
|
|
1228
|
+
// premise cannot be kept, and re-guessing a penalty would just relaunder
|
|
1229
|
+
// the same belief. Set to the floor (6) = "no evidence of deficiency",
|
|
1230
|
+
// NOT an endorsement. This is a JUDGMENT, not a measurement, and it is
|
|
1231
|
+
// the honest direction of the two: the only hunt-shaped evidence we have
|
|
1232
|
+
// is positive (a research-agent fixture, 3 of 3 demanded tools correctly
|
|
1233
|
+
// selected from a 6-tool menu, 3/3 trials, both models). Replace with a
|
|
1234
|
+
// real number from the golden-eval hunt corpus — that is what it is for.
|
|
1235
|
+
hunt: 6
|
|
1174
1236
|
},
|
|
1175
1237
|
// alpha.43 — family-level conventions for the `deepseek-chat` family
|
|
1176
1238
|
// (V4-Flash + future non-thinking-mode members). V4-Flash struggles
|
|
@@ -1195,18 +1257,22 @@ var PROFILES_RAW = [
|
|
|
1195
1257
|
maxContextTokens: 1e6,
|
|
1196
1258
|
maxOutputTokens: 384e3,
|
|
1197
1259
|
maxTools: 16,
|
|
1198
|
-
|
|
1260
|
+
// alpha.96 — CORRECTED from `false`, which was AI-generated at greenfield
|
|
1261
|
+
// (2026-04-25) and never re-checked. Measured 2026-08-28 direct to
|
|
1262
|
+
// api.deepseek.com, no kgauto in the path, 6 tools offered, 3 trials:
|
|
1263
|
+
// 3 parallel tool calls returned, 3/3. L-040's original evidence said
|
|
1264
|
+
// "7-8 calls per step" — which was never a claim that only one tool may be
|
|
1265
|
+
// offered. See the note in lower.ts:lowerDeepSeek.
|
|
1266
|
+
parallelToolCalls: true,
|
|
1199
1267
|
structuredOutput: "native",
|
|
1200
1268
|
systemPromptMode: "inline",
|
|
1201
1269
|
streaming: true,
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
}
|
|
1209
|
-
],
|
|
1270
|
+
// alpha.96 — the `tool_count@1 -> drop_to_top_relevant` cliff was DELETED.
|
|
1271
|
+
// It restated `parallelToolCalls: false` as a threshold and was falsified by
|
|
1272
|
+
// the same measurement. It is not kept-and-flagged (the usual lifecycle)
|
|
1273
|
+
// because it was never a real failure mode: it was a second enforcement of a
|
|
1274
|
+
// wrong belief, and keeping it active would keep amputating tools.
|
|
1275
|
+
cliffs: [],
|
|
1210
1276
|
// Verified against the live DeepSeek pricing page 2026-06-22: the 75%-off
|
|
1211
1277
|
// launch "promo" ($0.435/$0.87) did NOT revert on 2026-05-31 — it became the
|
|
1212
1278
|
// standing price (docs show $0.435 in / $0.87 out cache-miss, $0.003625
|
|
@@ -1224,7 +1290,12 @@ var PROFILES_RAW = [
|
|
|
1224
1290
|
{ signal: "rate_limit", action: "escalate", reason: "429 \u2014 escalate" }
|
|
1225
1291
|
],
|
|
1226
1292
|
strengths: ["quality", "reasoning", "1m_context", "json_output", "code", "extended_thinking"],
|
|
1227
|
-
|
|
1293
|
+
// alpha.96 — 'parallel_tools' REMOVED: measurably false (2026-08-28, direct
|
|
1294
|
+
// to api.deepseek.com, 6 tools, 3 trials, 3 parallel calls, both models).
|
|
1295
|
+
// 'large_tool_sets' KEPT and explicitly unverified — the probe offered 6 of
|
|
1296
|
+
// a declared maxTools 16, so it says nothing about behaviour at 16. Not
|
|
1297
|
+
// falsified is not the same as confirmed.
|
|
1298
|
+
weaknesses: ["large_tool_sets"],
|
|
1228
1299
|
// alpha.47 — explicit slow override. Measured 47722ms on the alpha.46
|
|
1229
1300
|
// shadow probe (2026-06-03) — it's an extended-thinking reasoner, slowest
|
|
1230
1301
|
// of the served set. Tag derivation would say 'medium'; the measurement says
|
|
@@ -1243,14 +1314,24 @@ var PROFILES_RAW = [
|
|
|
1243
1314
|
summarize: 7,
|
|
1244
1315
|
extract: 6,
|
|
1245
1316
|
transform: 6,
|
|
1246
|
-
|
|
1247
|
-
//
|
|
1317
|
+
// alpha.96 — was 4. Its ONLY written justification was "sequential tool
|
|
1318
|
+
// calls only — L-040", which is falsified. A score derived from a false
|
|
1319
|
+
// premise cannot be kept, and re-guessing a penalty would just relaunder
|
|
1320
|
+
// the same belief. Set to the floor (6) = "no evidence of deficiency",
|
|
1321
|
+
// NOT an endorsement. This is a JUDGMENT, not a measurement, and it is
|
|
1322
|
+
// the honest direction of the two: the only hunt-shaped evidence we have
|
|
1323
|
+
// is positive (a research-agent fixture, 3 of 3 demanded tools correctly
|
|
1324
|
+
// selected from a 6-tool menu, 3/3 trials, both models). Replace with a
|
|
1325
|
+
// real number from the golden-eval hunt corpus — that is what it is for.
|
|
1326
|
+
hunt: 6
|
|
1248
1327
|
},
|
|
1249
1328
|
// alpha.43 — family-level conventions for the `deepseek-reasoner` family
|
|
1250
1329
|
// (V4-Pro is the family rep; future thinking-mode members inherit).
|
|
1251
1330
|
//
|
|
1252
|
-
// The decisive-archetype suffix is the load-bearing piece:
|
|
1253
|
-
//
|
|
1331
|
+
// The decisive-archetype suffix is the load-bearing piece. ⚠️ alpha.96:
|
|
1332
|
+
// its evidence was purged as poison on 2026-05-29 (s51) — retained as a
|
|
1333
|
+
// hypothesis, not a finding. Original claim, for the record: 2026-05-28
|
|
1334
|
+
// first real V4-Pro probe on tt-intel/classify
|
|
1254
1335
|
// showed 8/10 judge rationales citing "candidate hedges and fails to
|
|
1255
1336
|
// commit to a single classification" or "candidate refuses to pick
|
|
1256
1337
|
// among the labels." Without the forcing-function suffix, every
|
|
@@ -1271,24 +1352,35 @@ var PROFILES_RAW = [
|
|
|
1271
1352
|
{
|
|
1272
1353
|
archetype: "classify",
|
|
1273
1354
|
promptSuffix: "\n\nOutput exactly one classification label. Do not hedge, do not add preamble, do not explain your reasoning. If uncertain, pick the most likely label and commit to it.",
|
|
1274
|
-
reason:
|
|
1355
|
+
reason: 'Reasoners (deepseek-reasoner family) hedge on decisive-output archetypes by design. UNEVIDENCED HYPOTHESIS as of alpha.96 \u2014 this reason used to cite a 2026-05-28 V4-Pro probe on tt-intel/classify ("8 of 10 judge rationales cited hedging") and named `brain probe_outcomes` as its source. That source is EMPTY: probed 2026-08-28, zero probe_outcomes rows exist before 2026-06-01 and zero `classify` rows have ever existed. The probe was deleted on 2026-05-29 by the s51 poison purge \u2014 it replayed against truncated `prompt_preview`, which s51 established yields meaningless verdicts. The conclusion outlived the purge of its own evidence and kept shaping prompts for three months. The pointer was wrong too: exclusion-finding ID 20 is a zero-calls `recommend-probe` on classify, confidence low, later declined \u2014 the probe TRIGGER, never its result. KEPT because a promptSuffix is capability-PRESERVING (adds an instruction, removes nothing a raw call had) and is visible in mutations_applied. Re-evidence from the golden-eval corpus or drop it.'
|
|
1275
1356
|
},
|
|
1276
1357
|
{
|
|
1277
1358
|
archetype: "extract",
|
|
1278
1359
|
promptSuffix: "\n\nOutput exactly the requested structured fields. Do not hedge, do not add preamble, do not explain your reasoning. If a field is unknown, emit the field with a null/empty value and commit to that \u2014 do not refuse to extract.",
|
|
1279
|
-
reason:
|
|
1360
|
+
reason: 'Reasoners (deepseek-reasoner family) hedge on decisive-output archetypes by design. UNEVIDENCED HYPOTHESIS as of alpha.96 \u2014 the supporting evidence NO LONGER EXISTS. The cited 2026-05-28 V4-Pro classify probe ("8/10 judge rationales") was deleted on 2026-05-29 by the s51 poison purge, because it replayed against truncated `prompt_preview` and s51 established such verdicts are meaningless. Probed: zero probe_outcomes rows exist before 2026-06-01 and zero `classify` rows have EVER existed. The pointer was also wrong \u2014 exclusion-finding ID 20 is a zero-calls `recommend-probe` on classify, confidence low, later declined; it was the trigger for the probe, never its result. KEPT anyway because a promptSuffix is capability-PRESERVING (it adds an instruction and removes nothing a raw call had), so the cost of being wrong is bounded and a consumer can see it in mutations_applied. Re-evidence it from the golden-eval corpus or drop it.'
|
|
1280
1361
|
},
|
|
1281
1362
|
{
|
|
1282
1363
|
archetype: "ask",
|
|
1283
1364
|
promptSuffix: "\n\nAnswer the question directly. Do not hedge, do not add preamble, do not explain your reasoning unless explicitly asked. If uncertain, give your best answer and commit to it.",
|
|
1284
|
-
reason:
|
|
1285
|
-
},
|
|
1286
|
-
{
|
|
1287
|
-
archetype: "hunt",
|
|
1288
|
-
whenToolCountAtLeast: 3,
|
|
1289
|
-
cliffWarning: "Reasoners (deepseek-reasoner family) produce sequential reasoning chains by design; hunt archetypes with 3+ parallel tools lose substantial throughput. Consider gemini-flash family (parallel-strong) instead \u2014 see L-040 / L-041.",
|
|
1290
|
-
reason: "L-040 + L-041 architectural reading; 2026-05-28 V4-Pro probe evidence (exclusion-finding ID 20) confirms reasoner-family hunt fit is structurally weak."
|
|
1365
|
+
reason: 'Reasoners (deepseek-reasoner family) hedge on decisive-output archetypes by design. UNEVIDENCED HYPOTHESIS as of alpha.96 \u2014 the supporting evidence NO LONGER EXISTS. The cited 2026-05-28 V4-Pro classify probe ("8/10 judge rationales") was deleted on 2026-05-29 by the s51 poison purge, because it replayed against truncated `prompt_preview` and s51 established such verdicts are meaningless. Probed: zero probe_outcomes rows exist before 2026-06-01 and zero `classify` rows have EVER existed. The pointer was also wrong \u2014 exclusion-finding ID 20 is a zero-calls `recommend-probe` on classify, confidence low, later declined; it was the trigger for the probe, never its result. KEPT anyway because a promptSuffix is capability-PRESERVING (it adds an instruction and removes nothing a raw call had), so the cost of being wrong is bounded and a consumer can see it in mutations_applied. Re-evidence it from the golden-eval corpus or drop it.'
|
|
1291
1366
|
}
|
|
1367
|
+
// alpha.96 — the `hunt` convention was DELETED, not corrected.
|
|
1368
|
+
// It warned that "hunt archetypes with 3+ parallel tools lose substantial
|
|
1369
|
+
// throughput" and steered callers to gemini-flash. Measured false
|
|
1370
|
+
// 2026-08-28: 6 tools offered, 3 of 3 demanded served in parallel, 3/3
|
|
1371
|
+
// trials, both V4 models, direct to the provider.
|
|
1372
|
+
//
|
|
1373
|
+
// Its cited evidence did not say what it claimed. exclusion-finding ID 20
|
|
1374
|
+
// is `intent_archetype: 'classify'` (not hunt), `verdict:
|
|
1375
|
+
// 'recommend-probe'` (i.e. NOBODY PROBED), `confidence: 'low'`, its
|
|
1376
|
+
// message reads "deepseek-v4-pro has zero calls", it was later
|
|
1377
|
+
// `declined`, and its own `parallel_tool_hint: false` was this profile's
|
|
1378
|
+
// own belief round-tripped back as input. A no-data finding on the wrong
|
|
1379
|
+
// archetype was paraphrased into "probe evidence confirms".
|
|
1380
|
+
//
|
|
1381
|
+
// Deleted rather than re-scoped because a cliffWarning is
|
|
1382
|
+
// capability-REDUCING (it steers traffic away from a model) and nothing
|
|
1383
|
+
// evidenced remains. Re-add only from a measured hunt eval.
|
|
1292
1384
|
]
|
|
1293
1385
|
},
|
|
1294
1386
|
// ── OpenAI ──
|
|
@@ -1416,6 +1508,26 @@ var PROFILES_RAW = [
|
|
|
1416
1508
|
},
|
|
1417
1509
|
{
|
|
1418
1510
|
id: "gpt-5.4-mini",
|
|
1511
|
+
// alpha.95 — MEASURED, 2026-08-28, guard-probe-suite --discover run 34.
|
|
1512
|
+
// This model declared no cliffs, which is why the offline check had
|
|
1513
|
+
// nothing measured to say about it. The claim states its denominator:
|
|
1514
|
+
// the fixture demands 3 specific tools from a 20-tool menu, so this is
|
|
1515
|
+
// evidence of correct selection + 3-way parallel emission at that menu
|
|
1516
|
+
// size — NOT evidence of 20 concurrent calls.
|
|
1517
|
+
probedLimits: [
|
|
1518
|
+
{
|
|
1519
|
+
metric: "tool_count",
|
|
1520
|
+
testedAt: 20,
|
|
1521
|
+
demanded: 3,
|
|
1522
|
+
served: [3, 3, 3],
|
|
1523
|
+
outcome: "held",
|
|
1524
|
+
trials: 3,
|
|
1525
|
+
lastProbed: "2026-08-28",
|
|
1526
|
+
probeRunId: 34,
|
|
1527
|
+
route: "direct",
|
|
1528
|
+
claim: "Measured 2026-08-28: served 3 of 3 demanded tools from a 20-tool menu, 3/3 trials, direct route."
|
|
1529
|
+
}
|
|
1530
|
+
],
|
|
1419
1531
|
verifiedAgainstDocs: "2026-05-17",
|
|
1420
1532
|
provider: "openai",
|
|
1421
1533
|
status: "current",
|
|
@@ -1459,6 +1571,26 @@ var PROFILES_RAW = [
|
|
|
1459
1571
|
},
|
|
1460
1572
|
{
|
|
1461
1573
|
id: "gpt-5.4-nano",
|
|
1574
|
+
// alpha.95 — MEASURED, 2026-08-28, guard-probe-suite --discover run 35.
|
|
1575
|
+
// This model declared no cliffs, which is why the offline check had
|
|
1576
|
+
// nothing measured to say about it. The claim states its denominator:
|
|
1577
|
+
// the fixture demands 3 specific tools from a 20-tool menu, so this is
|
|
1578
|
+
// evidence of correct selection + 3-way parallel emission at that menu
|
|
1579
|
+
// size — NOT evidence of 20 concurrent calls.
|
|
1580
|
+
probedLimits: [
|
|
1581
|
+
{
|
|
1582
|
+
metric: "tool_count",
|
|
1583
|
+
testedAt: 20,
|
|
1584
|
+
demanded: 3,
|
|
1585
|
+
served: [3, 3, 3],
|
|
1586
|
+
outcome: "held",
|
|
1587
|
+
trials: 3,
|
|
1588
|
+
lastProbed: "2026-08-28",
|
|
1589
|
+
probeRunId: 35,
|
|
1590
|
+
route: "direct",
|
|
1591
|
+
claim: "Measured 2026-08-28: served 3 of 3 demanded tools from a 20-tool menu, 3/3 trials, direct route."
|
|
1592
|
+
}
|
|
1593
|
+
],
|
|
1462
1594
|
verifiedAgainstDocs: "2026-05-17",
|
|
1463
1595
|
provider: "openai",
|
|
1464
1596
|
status: "current",
|
|
@@ -2074,6 +2206,26 @@ var PROFILES_RAW = [
|
|
|
2074
2206
|
// 'preview' per the Fable precedent — no brain evidence yet; promotion to
|
|
2075
2207
|
// 'current' is an explicit call. (L-049/L-081.)
|
|
2076
2208
|
id: "claude-sonnet-5",
|
|
2209
|
+
// alpha.95 — MEASURED, 2026-08-28, guard-probe-suite --discover run 36.
|
|
2210
|
+
// This model declared no cliffs, which is why the offline check had
|
|
2211
|
+
// nothing measured to say about it. The claim states its denominator:
|
|
2212
|
+
// the fixture demands 3 specific tools from a 20-tool menu, so this is
|
|
2213
|
+
// evidence of correct selection + 3-way parallel emission at that menu
|
|
2214
|
+
// size — NOT evidence of 20 concurrent calls.
|
|
2215
|
+
probedLimits: [
|
|
2216
|
+
{
|
|
2217
|
+
metric: "tool_count",
|
|
2218
|
+
testedAt: 20,
|
|
2219
|
+
demanded: 3,
|
|
2220
|
+
served: [3, 3, 3],
|
|
2221
|
+
outcome: "held",
|
|
2222
|
+
trials: 3,
|
|
2223
|
+
lastProbed: "2026-08-28",
|
|
2224
|
+
probeRunId: 36,
|
|
2225
|
+
route: "direct",
|
|
2226
|
+
claim: "Measured 2026-08-28: served 3 of 3 demanded tools from a 20-tool menu, 3/3 trials, direct route."
|
|
2227
|
+
}
|
|
2228
|
+
],
|
|
2077
2229
|
verifiedAgainstDocs: "2026-08-14",
|
|
2078
2230
|
provider: "anthropic",
|
|
2079
2231
|
status: "current",
|
|
@@ -2419,7 +2571,11 @@ function rowToProfile(row) {
|
|
|
2419
2571
|
// latency_tier → undefined (latencyTierOf derives from tags; not
|
|
2420
2572
|
// safety-critical). archetype_conventions already array-validated above.
|
|
2421
2573
|
latencyTier: normalizeLatencyTier(row.latency_tier),
|
|
2422
|
-
archetypeConventions: row.archetype_conventions ?? void 0
|
|
2574
|
+
archetypeConventions: row.archetype_conventions ?? void 0,
|
|
2575
|
+
// alpha.95 — measured negatives. NOT safety-critical (nothing routes on
|
|
2576
|
+
// them), so a type-mismatch degrades to undefined rather than nulling
|
|
2577
|
+
// the whole profile the way a corrupt `cliffs` does.
|
|
2578
|
+
probedLimits: Array.isArray(row.probed_limits) ? row.probed_limits : void 0
|
|
2423
2579
|
};
|
|
2424
2580
|
} catch {
|
|
2425
2581
|
return null;
|
|
@@ -2459,7 +2615,12 @@ function profileToRow(profile, opts = {}) {
|
|
|
2459
2615
|
// so a reseed from bundled profiles makes the latency lever + schema
|
|
2460
2616
|
// conventions live warm. Closes the silently-dropped-field gap.
|
|
2461
2617
|
latency_tier: profile.latencyTier ?? null,
|
|
2462
|
-
archetype_conventions: profile.archetypeConventions ?? null
|
|
2618
|
+
archetype_conventions: profile.archetypeConventions ?? null,
|
|
2619
|
+
// alpha.95 — round-trip the measured negatives. The s56 rule: a new
|
|
2620
|
+
// ModelProfile field must land in migration + BOTH transformers + the
|
|
2621
|
+
// config-endpoint cols list + the parity test, or it is theater for every
|
|
2622
|
+
// brain-connected consumer.
|
|
2623
|
+
probed_limits: profile.probedLimits ?? null
|
|
2463
2624
|
};
|
|
2464
2625
|
if (opts.verifiedAgainstDocs !== void 0) {
|
|
2465
2626
|
row.verified_against_docs = opts.verifiedAgainstDocs;
|
|
@@ -3665,7 +3826,7 @@ function lower(ir, profile, hints = {}) {
|
|
|
3665
3826
|
case "openai":
|
|
3666
3827
|
return lowerOpenAI(ir, profile, hints);
|
|
3667
3828
|
case "deepseek":
|
|
3668
|
-
return lowerDeepSeek(ir, profile);
|
|
3829
|
+
return lowerDeepSeek(ir, profile, hints);
|
|
3669
3830
|
case "zai":
|
|
3670
3831
|
return lowerZai(ir, profile, hints);
|
|
3671
3832
|
case "moonshot":
|
|
@@ -3926,7 +4087,7 @@ function toOpenAITools(tools) {
|
|
|
3926
4087
|
}
|
|
3927
4088
|
}));
|
|
3928
4089
|
}
|
|
3929
|
-
function lowerDeepSeek(ir, profile) {
|
|
4090
|
+
function lowerDeepSeek(ir, profile, hints) {
|
|
3930
4091
|
const ordered = sortSections(ir.sections);
|
|
3931
4092
|
const systemText = ordered.map((s) => s.text).join("\n\n");
|
|
3932
4093
|
const messages = systemText ? [{ role: "system", content: systemText }] : [];
|
|
@@ -3948,7 +4109,8 @@ function lowerDeepSeek(ir, profile) {
|
|
|
3948
4109
|
provider: "deepseek",
|
|
3949
4110
|
model: profile.id,
|
|
3950
4111
|
messages,
|
|
3951
|
-
|
|
4112
|
+
// Every tool the IR carries. Never fewer — see the note above.
|
|
4113
|
+
tools: ir.tools && ir.tools.length > 0 ? ir.tools.map((t) => ({
|
|
3952
4114
|
type: "function",
|
|
3953
4115
|
function: {
|
|
3954
4116
|
name: t.name,
|
|
@@ -6464,7 +6626,7 @@ function validateFinalFit(ir, profile, tokens) {
|
|
|
6464
6626
|
}
|
|
6465
6627
|
|
|
6466
6628
|
// src/version.ts
|
|
6467
|
-
var LIBRARY_VERSION = "2.0.0-alpha.
|
|
6629
|
+
var LIBRARY_VERSION = "2.0.0-alpha.96";
|
|
6468
6630
|
|
|
6469
6631
|
// src/pricing-brain.ts
|
|
6470
6632
|
function isPricingRow(x) {
|
|
@@ -11403,6 +11565,7 @@ function compile2(ir, opts) {
|
|
|
11403
11565
|
isMeasuredFailureBrainActive,
|
|
11404
11566
|
isMeasuredFailureGateEnabledFromEnv,
|
|
11405
11567
|
isModelReachable,
|
|
11568
|
+
isModelUnavailableMessage,
|
|
11406
11569
|
isPromotionsBrainActive,
|
|
11407
11570
|
isProviderReachable,
|
|
11408
11571
|
judgeMeasuredFailure,
|
package/dist/index.mjs
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
LIBRARY_VERSION,
|
|
8
8
|
createKeyHealthRoute,
|
|
9
9
|
keyFingerprint
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-26IS3Y6Z.mjs";
|
|
11
11
|
import {
|
|
12
12
|
ARCHETYPE_FAMILY_FITS,
|
|
13
13
|
BLOCKED_MODEL_FAMILY_SIBLING_SERVED_CODE,
|
|
@@ -63,7 +63,7 @@ import {
|
|
|
63
63
|
runAdvisor,
|
|
64
64
|
setTokenizer,
|
|
65
65
|
wilsonLowerBound
|
|
66
|
-
} from "./chunk-
|
|
66
|
+
} from "./chunk-SRPRNTDT.mjs";
|
|
67
67
|
import {
|
|
68
68
|
ABSOLUTE_FLOOR,
|
|
69
69
|
ARCHETYPE_FLOOR_DEFAULT,
|
|
@@ -100,7 +100,7 @@ import {
|
|
|
100
100
|
policySetHas,
|
|
101
101
|
readBrainReadEnv,
|
|
102
102
|
resolveProviderKey
|
|
103
|
-
} from "./chunk-
|
|
103
|
+
} from "./chunk-2D4H7HGZ.mjs";
|
|
104
104
|
import {
|
|
105
105
|
ALL_ARCHETYPES,
|
|
106
106
|
DIALECT_VERSION,
|
|
@@ -127,7 +127,7 @@ import {
|
|
|
127
127
|
registerProfiles,
|
|
128
128
|
resolveModelAlias,
|
|
129
129
|
tryGetProfile
|
|
130
|
-
} from "./chunk-
|
|
130
|
+
} from "./chunk-AMV3M2KH.mjs";
|
|
131
131
|
import {
|
|
132
132
|
emitAdvisoryFired,
|
|
133
133
|
emitCompileDone,
|
|
@@ -4397,6 +4397,7 @@ export {
|
|
|
4397
4397
|
isMeasuredFailureBrainActive,
|
|
4398
4398
|
isMeasuredFailureGateEnabledFromEnv,
|
|
4399
4399
|
isModelReachable,
|
|
4400
|
+
isModelUnavailableMessage,
|
|
4400
4401
|
isPromotionsBrainActive,
|
|
4401
4402
|
isProviderReachable,
|
|
4402
4403
|
judgeMeasuredFailure,
|
package/dist/key-health.js
CHANGED
|
@@ -28,7 +28,7 @@ __export(key_health_exports, {
|
|
|
28
28
|
module.exports = __toCommonJS(key_health_exports);
|
|
29
29
|
|
|
30
30
|
// src/version.ts
|
|
31
|
-
var LIBRARY_VERSION = "2.0.0-alpha.
|
|
31
|
+
var LIBRARY_VERSION = "2.0.0-alpha.96";
|
|
32
32
|
|
|
33
33
|
// src/key-health.ts
|
|
34
34
|
var JSON_HEADERS = { "Content-Type": "application/json" };
|