@warmdrift/kgauto-compiler 2.0.0-alpha.95 → 2.0.0-alpha.97

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.
@@ -843,18 +843,22 @@ var PROFILES_RAW = [
843
843
  maxContextTokens: 1e6,
844
844
  maxOutputTokens: 384e3,
845
845
  maxTools: 16,
846
- parallelToolCalls: false,
846
+ // alpha.96 — CORRECTED from `false`, which was AI-generated at greenfield
847
+ // (2026-04-25) and never re-checked. Measured 2026-08-28 direct to
848
+ // api.deepseek.com, no kgauto in the path, 6 tools offered, 3 trials:
849
+ // 3 parallel tool calls returned, 3/3. L-040's original evidence said
850
+ // "7-8 calls per step" — which was never a claim that only one tool may be
851
+ // offered. See the note in lower.ts:lowerDeepSeek.
852
+ parallelToolCalls: true,
847
853
  structuredOutput: "native",
848
854
  systemPromptMode: "inline",
849
855
  streaming: true,
850
- cliffs: [
851
- {
852
- metric: "tool_count",
853
- threshold: 1,
854
- action: "drop_to_top_relevant",
855
- reason: "Sequential tool calls only \u2014 L-040"
856
- }
857
- ],
856
+ // alpha.96 — the `tool_count@1 -> drop_to_top_relevant` cliff was DELETED.
857
+ // It restated `parallelToolCalls: false` as a threshold and was falsified by
858
+ // the same measurement. It is not kept-and-flagged (the usual lifecycle)
859
+ // because it was never a real failure mode: it was a second enforcement of a
860
+ // wrong belief, and keeping it active would keep amputating tools.
861
+ cliffs: [],
858
862
  costInputPer1m: 0.44,
859
863
  costOutputPer1m: 1.32,
860
864
  lowering: {
@@ -866,7 +870,12 @@ var PROFILES_RAW = [
866
870
  { signal: "rate_limit", action: "escalate", reason: "429 \u2014 escalate" }
867
871
  ],
868
872
  strengths: ["cost", "1m_context", "json_output", "code", "reasoning"],
869
- weaknesses: ["parallel_tools", "large_tool_sets"],
873
+ // alpha.96 — 'parallel_tools' REMOVED: measurably false (2026-08-28, direct
874
+ // to api.deepseek.com, 6 tools, 3 trials, 3 parallel calls, both models).
875
+ // 'large_tool_sets' KEPT and explicitly unverified — the probe offered 6 of
876
+ // a declared maxTools 16, so it says nothing about behaviour at 16. Not
877
+ // falsified is not the same as confirmed.
878
+ weaknesses: ["large_tool_sets"],
870
879
  // alpha.47 — explicit slow override. Tag derivation would say 'medium'
871
880
  // (no 'latency' weakness, no 'speed' strength), but the alpha.46 shadow
872
881
  // probe MEASURED deepseek-v4-flash at 20485ms served (2026-06-03) — ~2.3×
@@ -878,7 +887,11 @@ var PROFILES_RAW = [
878
887
  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.",
879
888
  // Master plan §6.2 anchor. Brain-validated tier 1 cross-provider for
880
889
  // classify (169 rows, 0% empty). Tier 0 for summarize-with-no-tools.
881
- // Falls off on hunt (sequential tools L-040) and reasoning depth.
890
+ // alpha.96 the hunt half of this sentence is RETRACTED: "sequential tools
891
+ // — L-040" was falsified 2026-08-28 (direct measurement, 3 parallel tool
892
+ // calls, both models). Do not use this comment to re-lower `hunt`; it is
893
+ // the exact prose that justified the wrong score. The reasoning-depth
894
+ // rationale is untouched and still carries `critique`.
882
895
  archetypePerf: {
883
896
  classify: 7,
884
897
  // brain-validated, 169 rows
@@ -890,8 +903,16 @@ var PROFILES_RAW = [
890
903
  plan: 5,
891
904
  extract: 5,
892
905
  critique: 4,
893
- hunt: 4
894
- // sequential tool calls only — L-040
906
+ // alpha.96 — was 4. Its ONLY written justification was "sequential tool
907
+ // calls only — L-040", which is falsified. A score derived from a false
908
+ // premise cannot be kept, and re-guessing a penalty would just relaunder
909
+ // the same belief. Set to the floor (6) = "no evidence of deficiency",
910
+ // NOT an endorsement. This is a JUDGMENT, not a measurement, and it is
911
+ // the honest direction of the two: the only hunt-shaped evidence we have
912
+ // is positive (a research-agent fixture, 3 of 3 demanded tools correctly
913
+ // selected from a 6-tool menu, 3/3 trials, both models). Replace with a
914
+ // real number from the golden-eval hunt corpus — that is what it is for.
915
+ hunt: 6
895
916
  },
896
917
  // alpha.43 — family-level conventions for the `deepseek-chat` family
897
918
  // (V4-Flash + future non-thinking-mode members). V4-Flash struggles
@@ -916,18 +937,22 @@ var PROFILES_RAW = [
916
937
  maxContextTokens: 1e6,
917
938
  maxOutputTokens: 384e3,
918
939
  maxTools: 16,
919
- parallelToolCalls: false,
940
+ // alpha.96 — CORRECTED from `false`, which was AI-generated at greenfield
941
+ // (2026-04-25) and never re-checked. Measured 2026-08-28 direct to
942
+ // api.deepseek.com, no kgauto in the path, 6 tools offered, 3 trials:
943
+ // 3 parallel tool calls returned, 3/3. L-040's original evidence said
944
+ // "7-8 calls per step" — which was never a claim that only one tool may be
945
+ // offered. See the note in lower.ts:lowerDeepSeek.
946
+ parallelToolCalls: true,
920
947
  structuredOutput: "native",
921
948
  systemPromptMode: "inline",
922
949
  streaming: true,
923
- cliffs: [
924
- {
925
- metric: "tool_count",
926
- threshold: 1,
927
- action: "drop_to_top_relevant",
928
- reason: "Sequential tool calls only \u2014 L-040"
929
- }
930
- ],
950
+ // alpha.96 — the `tool_count@1 -> drop_to_top_relevant` cliff was DELETED.
951
+ // It restated `parallelToolCalls: false` as a threshold and was falsified by
952
+ // the same measurement. It is not kept-and-flagged (the usual lifecycle)
953
+ // because it was never a real failure mode: it was a second enforcement of a
954
+ // wrong belief, and keeping it active would keep amputating tools.
955
+ cliffs: [],
931
956
  // Verified against the live DeepSeek pricing page 2026-06-22: the 75%-off
932
957
  // launch "promo" ($0.435/$0.87) did NOT revert on 2026-05-31 — it became the
933
958
  // standing price (docs show $0.435 in / $0.87 out cache-miss, $0.003625
@@ -945,7 +970,12 @@ var PROFILES_RAW = [
945
970
  { signal: "rate_limit", action: "escalate", reason: "429 \u2014 escalate" }
946
971
  ],
947
972
  strengths: ["quality", "reasoning", "1m_context", "json_output", "code", "extended_thinking"],
948
- weaknesses: ["parallel_tools", "large_tool_sets"],
973
+ // alpha.96 — 'parallel_tools' REMOVED: measurably false (2026-08-28, direct
974
+ // to api.deepseek.com, 6 tools, 3 trials, 3 parallel calls, both models).
975
+ // 'large_tool_sets' KEPT and explicitly unverified — the probe offered 6 of
976
+ // a declared maxTools 16, so it says nothing about behaviour at 16. Not
977
+ // falsified is not the same as confirmed.
978
+ weaknesses: ["large_tool_sets"],
949
979
  // alpha.47 — explicit slow override. Measured 47722ms on the alpha.46
950
980
  // shadow probe (2026-06-03) — it's an extended-thinking reasoner, slowest
951
981
  // of the served set. Tag derivation would say 'medium'; the measurement says
@@ -964,14 +994,24 @@ var PROFILES_RAW = [
964
994
  summarize: 7,
965
995
  extract: 6,
966
996
  transform: 6,
967
- hunt: 4
968
- // sequential toolssame as V4-Flash
997
+ // alpha.96 — was 4. Its ONLY written justification was "sequential tool
998
+ // calls onlyL-040", which is falsified. A score derived from a false
999
+ // premise cannot be kept, and re-guessing a penalty would just relaunder
1000
+ // the same belief. Set to the floor (6) = "no evidence of deficiency",
1001
+ // NOT an endorsement. This is a JUDGMENT, not a measurement, and it is
1002
+ // the honest direction of the two: the only hunt-shaped evidence we have
1003
+ // is positive (a research-agent fixture, 3 of 3 demanded tools correctly
1004
+ // selected from a 6-tool menu, 3/3 trials, both models). Replace with a
1005
+ // real number from the golden-eval hunt corpus — that is what it is for.
1006
+ hunt: 6
969
1007
  },
970
1008
  // alpha.43 — family-level conventions for the `deepseek-reasoner` family
971
1009
  // (V4-Pro is the family rep; future thinking-mode members inherit).
972
1010
  //
973
- // The decisive-archetype suffix is the load-bearing piece: 2026-05-28
974
- // first real V4-Pro probe on tt-intel/classify (exclusion-finding ID 20)
1011
+ // The decisive-archetype suffix is the load-bearing piece. ⚠️ alpha.96:
1012
+ // its evidence was purged as poison on 2026-05-29 (s51) retained as a
1013
+ // hypothesis, not a finding. Original claim, for the record: 2026-05-28
1014
+ // first real V4-Pro probe on tt-intel/classify
975
1015
  // showed 8/10 judge rationales citing "candidate hedges and fails to
976
1016
  // commit to a single classification" or "candidate refuses to pick
977
1017
  // among the labels." Without the forcing-function suffix, every
@@ -992,24 +1032,35 @@ var PROFILES_RAW = [
992
1032
  {
993
1033
  archetype: "classify",
994
1034
  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.",
995
- reason: "Reasoners (deepseek-reasoner family) hedge on decisive-output archetypes by design. Evidence: 2026-05-28 V4-Pro probe on tt-intel/classify (exclusion-finding ID 20, brain probe_outcomes); 8 of 10 judge rationales cited hedging or refusal-to-commit. Forcing-function suffix converts reasoner output to decisive labels."
1035
+ 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.'
996
1036
  },
997
1037
  {
998
1038
  archetype: "extract",
999
1039
  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.",
1000
- reason: "Reasoners (deepseek-reasoner family) hedge on decisive-output archetypes by design. Evidence: same family failure shape as classify (exclusion-finding ID 20, 2026-05-28). Forcing-function suffix asks for commitment instead of epistemic-humility hedging."
1040
+ 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.'
1001
1041
  },
1002
1042
  {
1003
1043
  archetype: "ask",
1004
1044
  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.",
1005
- reason: "Reasoners (deepseek-reasoner family) hedge on decisive-output archetypes by design. Evidence: same family failure shape as classify (exclusion-finding ID 20, 2026-05-28). Forcing-function suffix asks for commitment instead of epistemic-humility hedging."
1006
- },
1007
- {
1008
- archetype: "hunt",
1009
- whenToolCountAtLeast: 3,
1010
- 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.",
1011
- 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."
1045
+ 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.'
1012
1046
  }
1047
+ // alpha.96 — the `hunt` convention was DELETED, not corrected.
1048
+ // It warned that "hunt archetypes with 3+ parallel tools lose substantial
1049
+ // throughput" and steered callers to gemini-flash. Measured false
1050
+ // 2026-08-28: 6 tools offered, 3 of 3 demanded served in parallel, 3/3
1051
+ // trials, both V4 models, direct to the provider.
1052
+ //
1053
+ // Its cited evidence did not say what it claimed. exclusion-finding ID 20
1054
+ // is `intent_archetype: 'classify'` (not hunt), `verdict:
1055
+ // 'recommend-probe'` (i.e. NOBODY PROBED), `confidence: 'low'`, its
1056
+ // message reads "deepseek-v4-pro has zero calls", it was later
1057
+ // `declined`, and its own `parallel_tool_hint: false` was this profile's
1058
+ // own belief round-tripped back as input. A no-data finding on the wrong
1059
+ // archetype was paraphrased into "probe evidence confirms".
1060
+ //
1061
+ // Deleted rather than re-scoped because a cliffWarning is
1062
+ // capability-REDUCING (it steers traffic away from a model) and nothing
1063
+ // evidenced remains. Re-add only from a measured hunt eval.
1013
1064
  ]
1014
1065
  },
1015
1066
  // ── OpenAI ──
@@ -1908,6 +1959,19 @@ var PROFILES_RAW = [
1908
1959
  id: "glm-5.2",
1909
1960
  verifiedAgainstDocs: "2026-07-18",
1910
1961
  provider: "zai",
1962
+ probedLimits: [
1963
+ {
1964
+ metric: "tool_count",
1965
+ testedAt: 6,
1966
+ demanded: 3,
1967
+ served: [3, 3, 3],
1968
+ outcome: "held",
1969
+ trials: 3,
1970
+ lastProbed: "2026-08-29",
1971
+ route: "openrouter:baidu",
1972
+ claim: "Measured 2026-08-29 via OpenRouter (served-by Baidu): 6 tools offered, 3 of 3 demanded served in parallel, 3/3 trials. Route-scoped \u2014 direct z.ai is unmeasured (no key held)."
1973
+ }
1974
+ ],
1911
1975
  status: "preview",
1912
1976
  maxContextTokens: 1048576,
1913
1977
  maxOutputTokens: 131072,
@@ -1918,7 +1982,8 @@ var PROFILES_RAW = [
1918
1982
  // NOTHING about multiple tool_calls per response. Conservative false so
1919
1983
  // hunt-shaped ranking doesn't over-promise; flip on doc or probe
1920
1984
  // evidence (L-081: undocumented ≠ true).
1921
- parallelToolCalls: false,
1985
+ parallelToolCalls: true,
1986
+ // alpha.96 — see weaknesses note; was an unevidenced blanket false
1922
1987
  structuredOutput: "native",
1923
1988
  systemPromptMode: "inline",
1924
1989
  streaming: true,
@@ -1941,7 +2006,17 @@ var PROFILES_RAW = [
1941
2006
  { signal: "model_not_found", action: "escalate", reason: "Deprecated \u2014 escalate (L-061)" }
1942
2007
  ],
1943
2008
  strengths: ["cost", "1m_context", "code", "tool_use", "json_output", "reasoning"],
1944
- weaknesses: ["parallel_tools"],
2009
+ // alpha.96 — 'parallel_tools' REMOVED. Measured 2026-08-29 via OpenRouter
2010
+ // (served-by Baidu), 6 tools offered, 3 of 3 demanded served in PARALLEL,
2011
+ // 3/3 trials. ROUTE-SCOPED: per the alpha.92 execute-leg contract there is
2012
+ // no cross-route verdict transfer, and direct z.ai is UNMEASURED (we hold
2013
+ // no zai key). But `parallelToolCalls: false` was a blanket claim with no
2014
+ // route qualification and no evidence at all, and it is capability-
2015
+ // REDUCING — it drives requires-adapter/reject. An unsubstantiated reducer
2016
+ // must not reduce. Contradicted on the one route we can reach is enough to
2017
+ // stop enforcing it; it is not enough to claim the opposite, which is why
2018
+ // probedLimits below carries the route.
2019
+ weaknesses: [],
1945
2020
  notes: "GLM-5.2 (Z.ai, 2026-06): agentic-coding flagship. 1,048,576 ctx / 131,072 max out. $1.40/$4.40 per 1M; cached input $0.26/M (automatic caching, no marker; storage limited-time free as of 2026-07-18). Thinking on by default (`thinking.type`), `reasoning_effort` max..none. Parallel tool calls UNDOCUMENTED on the hosted API \u2014 profile says false until doc or probe evidence. status:preview \u2014 no brain evidence yet; earns placement via the machinery.",
1946
2021
  // Starter hypotheses — verify with telemetry/probes; NO brain evidence
1947
2022
  // yet. Anchored on the vendor's agentic-coding positioning at a
@@ -1959,8 +2034,11 @@ var PROFILES_RAW = [
1959
2034
  extract: 6,
1960
2035
  critique: 6,
1961
2036
  classify: 6,
1962
- hunt: 5
1963
- // tools work; parallel unproven discounted
2037
+ // alpha.96 — was 5, discounted for "parallel unproven". Parallel is no
2038
+ // longer unproven on the reachable route (3/3, 2026-08-29). The discount
2039
+ // had no other stated basis, so it is withdrawn to the neutral floor.
2040
+ // Judgment, not measurement — same standard as the DeepSeek correction.
2041
+ hunt: 6
1964
2042
  }
1965
2043
  },
1966
2044
  // ── Moonshot (Kimi) ──
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  ARCHETYPE_FLOOR_DEFAULT,
3
3
  getDefaultFallbackChain
4
- } from "../chunk-BJD75WCL.mjs";
4
+ } from "../chunk-77AHSX6Y.mjs";
5
5
  import {
6
6
  tryGetProfile
7
- } from "../chunk-D3BVYXNA.mjs";
7
+ } from "../chunk-HHIXHL4O.mjs";
8
8
  import {
9
9
  subscribe,
10
10
  subscribeApp
package/dist/index.d.mts CHANGED
@@ -1241,7 +1241,7 @@ declare function runStrategyEvalWithAttribution(opts: Omit<GoldenEvalOptions, 'a
1241
1241
  * guard in `tests/version.test.ts` fails the suite (and therefore
1242
1242
  * `prepublishOnly`) when they diverge — a stale constant cannot reach npm.
1243
1243
  */
1244
- declare const LIBRARY_VERSION = "2.0.0-alpha.95";
1244
+ declare const LIBRARY_VERSION = "2.0.0-alpha.97";
1245
1245
 
1246
1246
  /**
1247
1247
  * Oracle contract — how an app tells the brain whether a response was good.
package/dist/index.d.ts CHANGED
@@ -1241,7 +1241,7 @@ declare function runStrategyEvalWithAttribution(opts: Omit<GoldenEvalOptions, 'a
1241
1241
  * guard in `tests/version.test.ts` fails the suite (and therefore
1242
1242
  * `prepublishOnly`) when they diverge — a stale constant cannot reach npm.
1243
1243
  */
1244
- declare const LIBRARY_VERSION = "2.0.0-alpha.95";
1244
+ declare const LIBRARY_VERSION = "2.0.0-alpha.97";
1245
1245
 
1246
1246
  /**
1247
1247
  * Oracle contract — how an app tells the brain whether a response was good.