reeval 0.2.0 → 0.4.0

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.
Files changed (224) hide show
  1. package/THIRD_PARTY_NOTICES.md +9 -9
  2. package/assets/package.json +1 -1
  3. package/assets/pnpm-lock.yaml +84 -33
  4. package/dist/agent-C9dLMCM7.js +334 -0
  5. package/dist/agent-C9dLMCM7.js.map +1 -0
  6. package/dist/{agent-D-6z0Z3F.js → agent-M70OWyfG.js} +5 -5
  7. package/dist/{agent-D-6z0Z3F.js.map → agent-M70OWyfG.js.map} +1 -1
  8. package/dist/analysis-CxSCt1YY.js.map +1 -1
  9. package/dist/{assemble-DtouO0iQ.js → assemble-BmVT26kf.js} +25 -17
  10. package/dist/assemble-BmVT26kf.js.map +1 -0
  11. package/dist/assemble-DZiN1p_E.js +2 -0
  12. package/dist/{attempt-BdRQ9jKX.js → attempt-CGPV3BZY.js} +2 -2
  13. package/dist/{attempt-BdRQ9jKX.js.map → attempt-CGPV3BZY.js.map} +1 -1
  14. package/dist/bridge/index.mjs +1620 -1793
  15. package/dist/bridge/package.json +2 -2
  16. package/dist/bridge/pnpm-lock.yaml +75 -75
  17. package/dist/bridge/pnpm-workspace.yaml +1 -1
  18. package/dist/{cli-CGuUdOPK.js → cli-BdxFLEIc.js} +166 -55
  19. package/dist/cli-BdxFLEIc.js.map +1 -0
  20. package/dist/{cli-spec-DKAu09Gi.js → cli-spec-DUeyuSIQ.js} +11 -4
  21. package/dist/cli-spec-DUeyuSIQ.js.map +1 -0
  22. package/dist/cli.js +2 -2
  23. package/dist/{command-CCuYRGsI.js → command-BtcBitmY.js} +12 -12
  24. package/dist/{command-CCuYRGsI.js.map → command-BtcBitmY.js.map} +1 -1
  25. package/dist/{command-BekzrvZI.js → command-ByqQ-v-j.js} +13 -13
  26. package/dist/{command-BekzrvZI.js.map → command-ByqQ-v-j.js.map} +1 -1
  27. package/dist/{command-CLKuXn6Z.js → command-CIsO5xdR.js} +11 -9
  28. package/dist/command-CIsO5xdR.js.map +1 -0
  29. package/dist/{command-CEm8PZ1N.js → command-CQiFfn-C.js} +169 -280
  30. package/dist/command-CQiFfn-C.js.map +1 -0
  31. package/dist/command-DllipyoK.js +2 -0
  32. package/dist/{commands-CF8mOfiu.js → commands-CPrrZ2mI.js} +29 -13
  33. package/dist/commands-CPrrZ2mI.js.map +1 -0
  34. package/dist/{commands-A4udfyKZ.js → commands-D3Dxgh60.js} +1 -1
  35. package/dist/{config-DqJvSqYo.js → config-B93Csktg.js} +43 -15
  36. package/dist/{config-DqJvSqYo.js.map → config-B93Csktg.js.map} +1 -1
  37. package/dist/db-DIE0bsNO.js +2 -0
  38. package/dist/{db-DxDzMhtB.js → db-SpvY8l1g.js} +4 -4
  39. package/dist/{db-DxDzMhtB.js.map → db-SpvY8l1g.js.map} +1 -1
  40. package/dist/{dist-BZXYHN2X.js → dist-C2k9IvL3.js} +107 -55
  41. package/dist/dist-C2k9IvL3.js.map +1 -0
  42. package/dist/{docker-Buu3a60z.js → docker-Bv1ZC6V7.js} +1 -1
  43. package/dist/{docker-DQDZWXF9.js → docker-C2YwD_dh.js} +3 -3
  44. package/dist/{docker-DQDZWXF9.js.map → docker-C2YwD_dh.js.map} +1 -1
  45. package/dist/{docker-w0CSdQq0.js → docker-uNaAGE2C.js} +5 -5
  46. package/dist/{docker-w0CSdQq0.js.map → docker-uNaAGE2C.js.map} +1 -1
  47. package/dist/{doctor-Bs1_pG9_.js → doctor-COH-levb.js} +88 -20
  48. package/dist/doctor-COH-levb.js.map +1 -0
  49. package/dist/{egress-QJMzVtbw.js → egress-C7Obb71D.js} +35 -19
  50. package/dist/egress-C7Obb71D.js.map +1 -0
  51. package/dist/{environment-9WHSWLxH.js → environment-lDFQY2BF.js} +116 -4
  52. package/dist/environment-lDFQY2BF.js.map +1 -0
  53. package/dist/{files-D2-qn_Dl.js → files-BO9P6msM.js} +114 -14
  54. package/dist/files-BO9P6msM.js.map +1 -0
  55. package/dist/files-BRWmQJ-9.js +2 -0
  56. package/dist/files-Bwr8UW4b.js +2 -0
  57. package/dist/{files-bF2fPuT9.js → files-CMoTBEul.js} +40 -7
  58. package/dist/files-CMoTBEul.js.map +1 -0
  59. package/dist/{git-D6hMeieS.js → git-LJp55bkf.js} +3 -3
  60. package/dist/{git-D6hMeieS.js.map → git-LJp55bkf.js.map} +1 -1
  61. package/dist/{harness-ls5aX1UO.js → harness-BbMShUC-.js} +4 -4
  62. package/dist/{harness-ls5aX1UO.js.map → harness-BbMShUC-.js.map} +1 -1
  63. package/dist/harness.d.ts +2 -2
  64. package/dist/harness.js +1 -1
  65. package/dist/{header-DzFDoMCI.js → header-sPQ9Lq2S.js} +2 -2
  66. package/dist/{header-DzFDoMCI.js.map → header-sPQ9Lq2S.js.map} +1 -1
  67. package/dist/{images-2m2U-UQc.js → images-Pph_XJ68.js} +6 -6
  68. package/dist/{images-2m2U-UQc.js.map → images-Pph_XJ68.js.map} +1 -1
  69. package/dist/index.d.ts +11 -4
  70. package/dist/index.js +173 -65
  71. package/dist/index.js.map +1 -1
  72. package/dist/{init-CH9UY7Bt.js → init-BcYpzHXs.js} +10 -10
  73. package/dist/{init-CH9UY7Bt.js.map → init-BcYpzHXs.js.map} +1 -1
  74. package/dist/init-YS5qBRwV.js +2 -0
  75. package/dist/{invocations-rXktgSAn.js → invocations-DHC946b-.js} +4 -4
  76. package/dist/{invocations-rXktgSAn.js.map → invocations-DHC946b-.js.map} +1 -1
  77. package/dist/{jiti-BOLXpKyG.js → jiti-DWsGEgxD.js} +4 -4
  78. package/dist/{jiti-BOLXpKyG.js.map → jiti-DWsGEgxD.js.map} +1 -1
  79. package/dist/{judge-D8Uf4dA9.js → judge-D6wqgTDp.js} +17 -4
  80. package/dist/judge-D6wqgTDp.js.map +1 -0
  81. package/dist/judge.d.ts +12 -8
  82. package/dist/judge.js +13 -5
  83. package/dist/judge.js.map +1 -1
  84. package/dist/{live-Bs3LReMV.js → live-DZkCtmNP.js} +2 -2
  85. package/dist/{live-Bs3LReMV.js.map → live-DZkCtmNP.js.map} +1 -1
  86. package/dist/{matchers-DyLvm7EG.js → matchers-DbFPZQgA.js} +9 -4
  87. package/dist/{matchers-DyLvm7EG.js.map → matchers-DbFPZQgA.js.map} +1 -1
  88. package/dist/model-CJ6USX6C.js +2 -0
  89. package/dist/model-CNoc8t2Y.js +2 -0
  90. package/dist/model-DUZtNaYR.js +228 -0
  91. package/dist/model-DUZtNaYR.js.map +1 -0
  92. package/dist/{model-CDL98xue.js → model-ORtLm2UB.js} +41 -3
  93. package/dist/{model-CDL98xue.js.map → model-ORtLm2UB.js.map} +1 -1
  94. package/dist/{model-BdO79gWz.js → model-f0wprGPm.js} +3 -3
  95. package/dist/{model-BdO79gWz.js.map → model-f0wprGPm.js.map} +1 -1
  96. package/dist/{node-kG64XxdE.js → node-OXPxBD2N.js} +3 -3
  97. package/dist/{node-kG64XxdE.js.map → node-OXPxBD2N.js.map} +1 -1
  98. package/dist/{opencode-providers-DZuD_oYt.js → opencode-providers-DJVocFOU.js} +31 -3
  99. package/dist/opencode-providers-DJVocFOU.js.map +1 -0
  100. package/dist/{options-k25fjaER.js → options-Ftb2gE01.js} +85 -26
  101. package/dist/options-Ftb2gE01.js.map +1 -0
  102. package/dist/patch-BxqggH-T.js +118 -0
  103. package/dist/patch-BxqggH-T.js.map +1 -0
  104. package/dist/{plan-gwk6dJ8c.js → plan-BkhLKrsN.js} +23 -6
  105. package/dist/plan-BkhLKrsN.js.map +1 -0
  106. package/dist/{preflight-B6hfAXhh.js → preflight-CuvY0o3B.js} +3 -3
  107. package/dist/{preflight-B6hfAXhh.js.map → preflight-CuvY0o3B.js.map} +1 -1
  108. package/dist/{preflight-D2Hce5Jp.js → preflight-D3cJETui.js} +1 -1
  109. package/dist/{prepare-NuWsT11j.js → prepare-BI9j2-H-.js} +5 -5
  110. package/dist/{prepare-NuWsT11j.js.map → prepare-BI9j2-H-.js.map} +1 -1
  111. package/dist/{prepare-C3fefNnV.js → prepare-CVuTk5F9.js} +2 -2
  112. package/dist/{provenance-Dfb8YY5Y.js → provenance-6n49wska.js} +22 -4
  113. package/dist/provenance-6n49wska.js.map +1 -0
  114. package/dist/{providers-Bfx5Mnk9.js → providers-BFapaM2D.js} +3 -3
  115. package/dist/{providers-Bfx5Mnk9.js.map → providers-BFapaM2D.js.map} +1 -1
  116. package/dist/{providers-BMIGzPPG.js → providers-Cay8pI0y.js} +1 -1
  117. package/dist/query-Br77sQYj.js +2 -0
  118. package/dist/{query-CFATHZmV.js → query-CnstTDt8.js} +2 -2
  119. package/dist/{query-CFATHZmV.js.map → query-CnstTDt8.js.map} +1 -1
  120. package/dist/questions-Cm321-Mo.js +325 -0
  121. package/dist/questions-Cm321-Mo.js.map +1 -0
  122. package/dist/{record-DQ8wzyco.js → record-CbuQH4l1.js} +7 -3
  123. package/dist/record-CbuQH4l1.js.map +1 -0
  124. package/dist/{redact-C4fL_bZP.js → redact-DJ9JCShu.js} +99 -28
  125. package/dist/redact-DJ9JCShu.js.map +1 -0
  126. package/dist/{results-BtvBJAp-.js → results-D9GgBYw5.js} +4 -4
  127. package/dist/{results-BtvBJAp-.js.map → results-D9GgBYw5.js.map} +1 -1
  128. package/dist/{root-CFDjpWuc.js → root-Zeokqt3-.js} +2 -2
  129. package/dist/{root-CFDjpWuc.js.map → root-Zeokqt3-.js.map} +1 -1
  130. package/dist/{sandbox-BJPWuQE9.js → sandbox-CO__l-i1.js} +3 -3
  131. package/dist/{sandbox-BJPWuQE9.js.map → sandbox-CO__l-i1.js.map} +1 -1
  132. package/dist/sandbox.d.ts +2 -2
  133. package/dist/sandbox.js +1 -1
  134. package/dist/server-D5Zq3I5N.js +2 -0
  135. package/dist/{server-5DWmKKfV.js → server-DsmIrBzi.js} +12 -10
  136. package/dist/{server-5DWmKKfV.js.map → server-DsmIrBzi.js.map} +1 -1
  137. package/dist/source-BgqURlel.js +2 -0
  138. package/dist/{source-Bsfa3LZH.js → source-DJ1c8jwe.js} +2 -2
  139. package/dist/{source-Bsfa3LZH.js.map → source-DJ1c8jwe.js.map} +1 -1
  140. package/dist/{src-DXx_29pq.js → src-B1OT_Zhf.js} +46 -46
  141. package/dist/{src-DXx_29pq.js.map → src-B1OT_Zhf.js.map} +1 -1
  142. package/dist/{src-BQyMiWri.js → src-BAiYD4eC.js} +48 -7
  143. package/dist/{src-BQyMiWri.js.map → src-BAiYD4eC.js.map} +1 -1
  144. package/dist/{src-N7E_mfcZ.js → src-BC5FFzE8.js} +1 -1
  145. package/dist/src-Bi2Y3EkE.js +3 -0
  146. package/dist/{src-D8KYzxBX.js → src-BmBFlEIe.js} +12 -7
  147. package/dist/{src-D8KYzxBX.js.map → src-BmBFlEIe.js.map} +1 -1
  148. package/dist/src-C8WNyopo.js +3 -0
  149. package/dist/src-CYz-TreZ.js +3 -0
  150. package/dist/src-C_91Ln3Z.js +4 -0
  151. package/dist/{src-Cmp-7YrD.js → src-DWk0e7ix.js} +5 -5
  152. package/dist/{src-Cmp-7YrD.js.map → src-DWk0e7ix.js.map} +1 -1
  153. package/dist/{src-AEwxd1UP.js → src-DfEAlC9s.js} +4 -4
  154. package/dist/{src-AEwxd1UP.js.map → src-DfEAlC9s.js.map} +1 -1
  155. package/dist/{src-DwwiVLqv.js → src-V-iU5X9S.js} +24 -21
  156. package/dist/{src-DwwiVLqv.js.map → src-V-iU5X9S.js.map} +1 -1
  157. package/dist/{src-C-LHyTSV.js → src-gPJFzHcK.js} +1 -1
  158. package/dist/src-gVzsO4_f.js +3 -0
  159. package/dist/{state-DZ7eqb1F.js → state-DFbJrVi3.js} +15 -15
  160. package/dist/{state-DZ7eqb1F.js.map → state-DFbJrVi3.js.map} +1 -1
  161. package/dist/state-Joc2b4qk.js +2 -0
  162. package/dist/studio-app/assets/index-B1Pf3LAT.css +2 -0
  163. package/dist/studio-app/assets/index-BhorHbrj.js +58 -0
  164. package/dist/studio-app/index.html +2 -2
  165. package/dist/{summary-D7Ttky0z.js → summary-CEMYhzXm.js} +33 -5
  166. package/dist/summary-CEMYhzXm.js.map +1 -0
  167. package/dist/summary-WR5qLj_z.js +192 -0
  168. package/dist/summary-WR5qLj_z.js.map +1 -0
  169. package/dist/tools-DN-cJcfi.js +249 -0
  170. package/dist/tools-DN-cJcfi.js.map +1 -0
  171. package/dist/{types-CYJldf5N.d.ts → types-B_CqVrOS.d.ts} +210 -30
  172. package/dist/view/index.d.ts +63 -1
  173. package/dist/view/index.js +5 -5
  174. package/dist/{views-BrHOv6wg.js → views-DNbUdW9d.js} +4 -4
  175. package/dist/{views-BrHOv6wg.js.map → views-DNbUdW9d.js.map} +1 -1
  176. package/dist/views-DnYbVkKg.js +3 -0
  177. package/dist/{worker-entry-DnYkANPG.js → worker-entry-CJmG4hhE.js} +3 -3
  178. package/dist/{worker-entry-DnYkANPG.js.map → worker-entry-CJmG4hhE.js.map} +1 -1
  179. package/dist/{workspace-BVgNhC9h.js → workspace-CmSp2MXO.js} +1 -1
  180. package/dist/{workspace-uPapQj16.js → workspace-QtlJtRut.js} +5 -5
  181. package/dist/{workspace-uPapQj16.js.map → workspace-QtlJtRut.js.map} +1 -1
  182. package/docker/Dockerfile +2 -0
  183. package/docker/reeval-path.sh +21 -0
  184. package/package.json +13 -12
  185. package/dist/assemble-Dm4gD1TU.js +0 -2
  186. package/dist/assemble-DtouO0iQ.js.map +0 -1
  187. package/dist/cli-CGuUdOPK.js.map +0 -1
  188. package/dist/cli-spec-DKAu09Gi.js.map +0 -1
  189. package/dist/command-CEm8PZ1N.js.map +0 -1
  190. package/dist/command-CLKuXn6Z.js.map +0 -1
  191. package/dist/commands-CF8mOfiu.js.map +0 -1
  192. package/dist/db-Cjj2ZsfQ.js +0 -2
  193. package/dist/dist-BZXYHN2X.js.map +0 -1
  194. package/dist/doctor-Bs1_pG9_.js.map +0 -1
  195. package/dist/egress-QJMzVtbw.js.map +0 -1
  196. package/dist/environment-9WHSWLxH.js.map +0 -1
  197. package/dist/files--6CEUXm7.js +0 -2
  198. package/dist/files-Bd25OAQH.js +0 -2
  199. package/dist/files-D2-qn_Dl.js.map +0 -1
  200. package/dist/files-bF2fPuT9.js.map +0 -1
  201. package/dist/init-DJuxvYCW.js +0 -2
  202. package/dist/judge-D8Uf4dA9.js.map +0 -1
  203. package/dist/model-v-0_Ik7S.js +0 -2
  204. package/dist/opencode-providers-DZuD_oYt.js.map +0 -1
  205. package/dist/options-k25fjaER.js.map +0 -1
  206. package/dist/patch-BkKje4cp.js +0 -69
  207. package/dist/patch-BkKje4cp.js.map +0 -1
  208. package/dist/plan-gwk6dJ8c.js.map +0 -1
  209. package/dist/provenance-Dfb8YY5Y.js.map +0 -1
  210. package/dist/query-DR4m6CXf.js +0 -2
  211. package/dist/record-DQ8wzyco.js.map +0 -1
  212. package/dist/redact-C4fL_bZP.js.map +0 -1
  213. package/dist/server-buV3adNS.js +0 -2
  214. package/dist/source-BXzrmof5.js +0 -2
  215. package/dist/src-55j1zNHH.js +0 -3
  216. package/dist/src-BDwSuyIo.js +0 -3
  217. package/dist/src-DEgff9Z7.js +0 -4
  218. package/dist/src-W9g-y5X5.js +0 -3
  219. package/dist/src-daS0wKH2.js +0 -3
  220. package/dist/state-Cyw3QTsN.js +0 -2
  221. package/dist/studio-app/assets/index-Da1XDzx8.js +0 -58
  222. package/dist/studio-app/assets/index-xwzWdcE_.css +0 -2
  223. package/dist/summary-D7Ttky0z.js.map +0 -1
  224. package/dist/views-CwCWLWqo.js +0 -3
@@ -1,21 +1,19 @@
1
1
  import { t as UsageError } from "./errors-CSxfJ4qu.js";
2
2
  import { a as fromCwd, l as sha256 } from "./ids-Bp6ut7ZD.js";
3
- import { a as isFakeJudge, c as judgeRoute } from "./judge-D8Uf4dA9.js";
4
3
  import { n as clip } from "./text-gEcKjAyp.js";
5
4
  import { t as ANALYSIS_PROMPT_VERSION } from "./analysis-CxSCt1YY.js";
6
- import { H as compare } from "./model-CDL98xue.js";
7
- import { t as runHeader } from "./header-DzFDoMCI.js";
8
- import { a as commandSummary, i as checkCommand } from "./cli-spec-DKAu09Gi.js";
9
- import { a as parseRecord, f as scratchDir } from "./files-D2-qn_Dl.js";
10
- import { c as resolveRun, s as pickBaseline, t as RefError } from "./views-BrHOv6wg.js";
11
- import { c as lines, n as allRuns, t as CommandError, u as reachability } from "./commands-CF8mOfiu.js";
12
- import { s as openHistoryDb } from "./db-DxDzMhtB.js";
13
- import { t as author } from "./provenance-Dfb8YY5Y.js";
14
- import { i as saveAnalysis, o as writeCached, r as readCached } from "./files-bF2fPuT9.js";
5
+ import { G as compare } from "./model-ORtLm2UB.js";
6
+ import { t as runHeader } from "./header-sPQ9Lq2S.js";
7
+ import { o as parseRecord, p as scratchDir } from "./files-BO9P6msM.js";
8
+ import { l as writeCached, o as readCached, s as saveAnalysis } from "./files-CMoTBEul.js";
9
+ import { c as resolveAnalysisModel, l as SYSTEM_PROMPT, n as callAnalysisModel, t as analysisModelName } from "./model-DUZtNaYR.js";
10
+ import { c as resolveRun, s as pickBaseline, t as RefError } from "./views-DNbUdW9d.js";
11
+ import { c as lines, n as allRuns, t as CommandError, u as reachability } from "./commands-CPrrZ2mI.js";
12
+ import { a as commandSummary, i as checkCommand } from "./cli-spec-DUeyuSIQ.js";
13
+ import { s as openHistoryDb } from "./db-SpvY8l1g.js";
14
+ import { t as author } from "./provenance-6n49wska.js";
15
15
  import { basename, join } from "node:path";
16
16
  import { readFile } from "node:fs/promises";
17
- import { z } from "zod";
18
- import { Output, generateText } from "ai";
19
17
  //#region src/analysis/digest.ts
20
18
  const RULES = [
21
19
  "Pass-rate lift is an effect only when its 95% interval (Newcombe) excludes 0; otherwise it is within noise, whatever the point estimate.",
@@ -47,7 +45,8 @@ function cellTags(e) {
47
45
  return new Map(e.cells.map((c) => [c.key, `${prefix(c)}${c.variant ?? "control"}`]));
48
46
  }
49
47
  const counted = (a) => a.outcome === "pass" || a.outcome === "fail";
50
- async function buildDigest(input) {
48
+ /** The digest, and the evidence dropped from it to fit its cap, whole, for tools to read back. */
49
+ async function buildDigestKeepingDropped(input) {
51
50
  const { head, base, db } = input;
52
51
  const runs = base ? [base, head] : [head];
53
52
  const short = new Map(runs.map((r, i) => [r.record.runId, `r${i + 1}`]));
@@ -404,12 +403,17 @@ async function buildDigest(input) {
404
403
  evidence,
405
404
  dropped: []
406
405
  };
406
+ const dropped = [];
407
407
  while (digestChars(digest) > input.maxChars && digest.evidence.length) {
408
408
  const worst = digest.evidence.reduce((a, b) => b.priority >= a.priority ? b : a);
409
409
  digest.evidence = digest.evidence.filter((x) => x !== worst);
410
410
  digest.dropped.push(worst.id);
411
+ dropped.push(worst);
411
412
  }
412
- return digest;
413
+ return {
414
+ digest,
415
+ dropped
416
+ };
413
417
  }
414
418
  const digestChars = (d) => JSON.stringify(d).length;
415
419
  /** Content hash of the digest: the cache key's input side. */
@@ -426,185 +430,6 @@ function citable(d) {
426
430
  };
427
431
  }
428
432
  //#endregion
429
- //#region src/analysis/schema.ts
430
- const confidence = z.enum([
431
- "high",
432
- "medium",
433
- "low"
434
- ]);
435
- const cites = z.array(z.string()).describe("Ids from the digest: F<n>, E<n>, E<n>:L<line>, an attempt id, or <attempt id>:check<n>");
436
- const claim = z.object({
437
- text: z.string(),
438
- cites,
439
- confidence,
440
- quotes: z.array(z.string()).optional().describe("Exact spans copied from the cited evidence, if the claim quotes any")
441
- });
442
- const analysisSchema = z.object({
443
- tldr: z.string().describe("2-3 sentences: what happened, and does the thing under test help"),
444
- whatHappened: z.array(claim),
445
- results: z.array(claim).describe("Pass rate and effort, each with its noise verdict"),
446
- why: z.array(claim).describe("Causes: the thing under test, the eval itself, or reeval/infrastructure"),
447
- anomalies: z.array(z.object({
448
- text: z.string(),
449
- kind: z.enum([
450
- "es-bug",
451
- "eval-design",
452
- "judge",
453
- "noise",
454
- "other"
455
- ]),
456
- cites
457
- })),
458
- actions: z.array(z.object({
459
- title: z.string(),
460
- target: z.string().describe("The file, skill, eval or reeval setting to change"),
461
- kind: z.enum([
462
- "skill",
463
- "docs",
464
- "eval",
465
- "judge",
466
- "es",
467
- "harness"
468
- ]),
469
- change: z.string(),
470
- expectedEffect: z.string().describe("What should measurably change"),
471
- verify: z.string().describe("One reeval command from the CLI list that would show the effect"),
472
- impact: z.enum([
473
- "high",
474
- "medium",
475
- "low"
476
- ]),
477
- effort: z.enum([
478
- "low",
479
- "medium",
480
- "high"
481
- ]),
482
- cites
483
- })).max(5),
484
- confidence: z.object({
485
- overall: confidence,
486
- why: z.string()
487
- })
488
- });
489
- const SYSTEM_PROMPT = `You analyse the results of a reeval run for the engineer who wrote the evals.
490
- reeval runs coding agents in sandboxes. A compare eval runs a control cell and variant cells (with a skill, docs or MCP, say) and reports pass-rate lift with a 95% interval, and effort (tool calls, agent time) next to it.
491
-
492
- You get a DIGEST: facts computed deterministically by reeval (ids F1...), evidence excerpts (ids E1...; transcript lines start with their line number L<n>), an attempts table (ids like r2/fix-config/control#1), the RULES reeval used for every verdict, and the CLI.
493
-
494
- Rules:
495
- - Every claim cites at least one id from the digest: F<n>, E<n>, E<n>:L<line> for a line the evidence shows, an attempt id, or <attempt id>:check<n>. Never cite anything that isn't in the digest.
496
- - Take numbers from the facts. Don't compute new statistics beyond simple ratios of cited numbers.
497
- - The verdicts in the facts are final: if a lift or effort verdict says within noise or insufficient, say so; never call it an effect. Name each factor claim's tier (controlled, pooled, observed).
498
- - Say what can't be attributed (factors that are not_measured).
499
- - Separate causes: the thing under test (skill, docs), the eval itself (task, checks, judge question), and reeval or infrastructure (bugs, fingerprints, harness).
500
- - Explain a failed judge verdict by comparing the cited output with the judge question, and say it's your reading: judges record no reason.
501
- - Actions: at most 5, each with a concrete target, the change, the expected measurable effect, and a verify command that is exactly one of the reeval commands in the CLI list, with only the flags listed for it. "No actions" is a valid answer when nothing is worth doing. No generic advice ("add more tests") without a concrete target.
502
- - Quotes, if any, must be copied exactly from the cited evidence.
503
- - Plain, direct English. No hype.`;
504
- //#endregion
505
- //#region src/analysis/model.ts
506
- const isFake = (m) => typeof m === "object" && m !== null && m.kind === "fake-analysis";
507
- /** Which model analyses: `analysis.model`, else the judge's when it's a language model. */
508
- function analysisModelName(config) {
509
- const model = config.analysis.model;
510
- if (model !== void 0) return model;
511
- const judge = config.judge.model;
512
- if (typeof judge === "string" && !judge.startsWith("typesafe-ai/")) return judge;
513
- throw new UsageError(`reeval analyze needs a language model. Set analysis: { model: 'google/gemini-3.8-flash' } in ${config.file}${typeof judge === "string" || isFakeJudge(judge) ? ` (the judge, ${isFakeJudge(judge) ? "a fake judge" : judge}, is an evaluation model: it scores yes/no questions and can't write an analysis)` : ""}, or run reeval analyze --context to hand the digest to your own coding agent.`);
514
- }
515
- /** Checks the model and its credentials before any work; throws a UsageError (exit 2). */
516
- function resolveAnalysisModel(config) {
517
- const model = analysisModelName(config);
518
- if (isFake(model)) return {
519
- name: "fake",
520
- route: "fake",
521
- fake: model
522
- };
523
- if (model.startsWith("typesafe-ai/")) throw new UsageError(`config.analysis.model "${model}" is an evaluation model: it scores yes/no questions and can't write an analysis. Use a language model, e.g. 'google/gemini-3.8-flash'.`);
524
- try {
525
- return {
526
- name: model,
527
- route: judgeRoute(model).kind
528
- };
529
- } catch (error) {
530
- throw new UsageError(`${error.message.replace("judge model", "analysis model")} Or run reeval analyze --context, which needs no key.`);
531
- }
532
- }
533
- /** A language model that answers with the fake's output, through the AI SDK's own parsing. */
534
- function fakeModel(fake, digest) {
535
- const output = typeof fake.output === "function" ? fake.output(digest) : fake.output;
536
- const text = typeof output === "string" ? output : JSON.stringify(output);
537
- return {
538
- specificationVersion: "v4",
539
- provider: "fake",
540
- modelId: "fake-analysis",
541
- supportedUrls: {},
542
- doGenerate: async () => ({
543
- content: [{
544
- type: "text",
545
- text
546
- }],
547
- finishReason: {
548
- unified: "stop",
549
- raw: "stop"
550
- },
551
- usage: {
552
- inputTokens: {
553
- total: 0,
554
- noCache: 0,
555
- cacheRead: 0,
556
- cacheWrite: 0
557
- },
558
- outputTokens: {
559
- total: 0,
560
- text: 0,
561
- reasoning: 0
562
- }
563
- },
564
- warnings: [],
565
- response: { modelId: "fake-analysis" }
566
- }),
567
- doStream: async () => {
568
- throw new Error("the fake analysis model does not stream");
569
- }
570
- };
571
- }
572
- async function languageModel(model, digest) {
573
- if (model.fake) return fakeModel(model.fake, digest);
574
- if (model.route === "gateway") return model.name;
575
- const provider = model.name.slice(0, model.name.indexOf("/"));
576
- const id = model.name.slice(provider.length + 1);
577
- if (provider === "google") {
578
- const { google } = await import("@ai-sdk/google");
579
- return google(id);
580
- }
581
- return model.name;
582
- }
583
- async function callAnalysisModel(model, digest, prompt, maxOutputTokens) {
584
- const started = Date.now();
585
- const result = await generateText({
586
- model: await languageModel(model, digest),
587
- system: SYSTEM_PROMPT,
588
- prompt,
589
- output: Output.object({
590
- schema: analysisSchema,
591
- name: "analysis"
592
- }),
593
- temperature: .2,
594
- maxOutputTokens,
595
- maxRetries: 3
596
- });
597
- return {
598
- output: result.output,
599
- resolvedModel: result.response?.modelId ?? null,
600
- usage: {
601
- inputTokens: result.usage?.inputTokens ?? null,
602
- outputTokens: result.usage?.outputTokens ?? null
603
- },
604
- latencyMs: Date.now() - started
605
- };
606
- }
607
- //#endregion
608
433
  //#region src/analysis/render.ts
609
434
  const cite = (cs) => cs.length ? ` ${cs.map((c) => `[${c}]`).join(" ")}` : "";
610
435
  const note = (c) => [c.confidence === "high" ? "" : `${c.confidence} confidence`, c.unverifiedNumbers?.length ? `unverified: ${c.unverifiedNumbers.join(", ")}` : ""].filter(Boolean).join("; ");
@@ -891,44 +716,26 @@ function citedSummary(d, cites) {
891
716
  }
892
717
  return out;
893
718
  }
894
- async function analyzeCommand(ctx, args) {
895
- const { config, flags } = ctx;
896
- if (flags.json && flags.md) throw new UsageError("reeval analyze takes --json or --md, not both");
897
- if (flags.context && flags.save) throw new UsageError("reeval analyze --context makes no analysis to save; drop --save");
898
- const entries = await allRuns(config);
899
- let evalFilter = flags.eval ?? null;
900
- let head;
901
- try {
902
- head = resolveRun(entries, args[0] ?? "latest");
903
- } catch (error) {
904
- const needle = args[0]?.toLowerCase();
905
- const latest = entries.at(-1);
906
- if (!(error instanceof RefError) || !needle || !latest?.evals.some((e) => e.id.toLowerCase().includes(needle))) throw error;
907
- evalFilter ??= args[0];
908
- head = latest;
909
- }
910
- let base;
911
- if (flags.vs) base = resolveRun(entries, flags.vs);
912
- else {
913
- const reach = await reachability(config.root);
914
- const from = head.git && (!reach || reach.has(head.git.sha)) ? head.git.sha : "HEAD";
915
- const ancestry = await lines(config.root, [
916
- "rev-list",
917
- "--max-count=5000",
918
- from
919
- ]);
920
- base = pickBaseline(entries.filter((e) => e.recorded && e.runId !== head.runId), head, ancestry);
921
- }
922
- if (base?.runId === head.runId) throw new UsageError("reeval analyze --vs names the run itself");
923
- if (flags.save && !head.recorded) throw new CommandError(`${head.runId} isn't recorded, so there's no history folder to save into. Run reeval record ${head.runId} first, then reeval analyze ${head.runId} --save.`);
924
- const model = flags.context || flags["dry-run"] ? null : resolveAnalysisModel(config);
719
+ /** The run `reeval analyze` compares `head` with when `--vs` names none: its nearest recorded ancestor. */
720
+ async function defaultBase(config, entries, head) {
721
+ const reach = await reachability(config.root);
722
+ const from = head.git && (!reach || reach.has(head.git.sha)) ? head.git.sha : "HEAD";
723
+ const ancestry = await lines(config.root, [
724
+ "rev-list",
725
+ "--max-count=5000",
726
+ from
727
+ ]);
728
+ return pickBaseline(entries.filter((e) => e.recorded && e.runId !== head.runId), head, ancestry);
729
+ }
730
+ /** Reads the runs and builds the digest and its cache key; no model call. */
731
+ async function prepareAnalysis(config, head, base, evalFilter) {
925
732
  const headRun = await load(config, head);
926
733
  const baseRun = base ? await load(config, base) : null;
927
734
  const db = await openHistoryDb(config.root, config.history.dir);
928
- let digest;
735
+ let built;
929
736
  let tables;
930
737
  try {
931
- digest = await buildDigest({
738
+ built = await buildDigestKeepingDropped({
932
739
  head: headRun,
933
740
  base: baseRun,
934
741
  evalFilter,
@@ -940,11 +747,6 @@ async function analyzeCommand(ctx, args) {
940
747
  } finally {
941
748
  db.close();
942
749
  }
943
- if (evalFilter && digest.setup.evals.length === 0) throw new UsageError(`No eval in ${head.runId} matches "${evalFilter}"`);
944
- if (flags.context) {
945
- ctx.out(contextMarkdown(digest, head.runId, base?.runId ?? null));
946
- return 0;
947
- }
948
750
  const modelName = (() => {
949
751
  try {
950
752
  const m = analysisModelName(config);
@@ -953,7 +755,6 @@ async function analyzeCommand(ctx, args) {
953
755
  return "none";
954
756
  }
955
757
  })();
956
- const hash = digestHash(digest);
957
758
  const scope = {
958
759
  kind: "run",
959
760
  head: head.runId,
@@ -962,10 +763,142 @@ async function analyzeCommand(ctx, args) {
962
763
  };
963
764
  const key = sha256(JSON.stringify({
964
765
  scope,
965
- hash,
766
+ hash: digestHash(built.digest),
966
767
  prompt: ANALYSIS_PROMPT_VERSION,
967
768
  model: modelName
968
769
  })).replace(/^sha256:/, "");
770
+ return {
771
+ head,
772
+ base,
773
+ headRun,
774
+ baseRun,
775
+ ...built,
776
+ tables,
777
+ scope,
778
+ modelName,
779
+ key
780
+ };
781
+ }
782
+ const docBase = async (config, p) => ({
783
+ kind: "es-analysis",
784
+ schemaVersion: 1,
785
+ scope: p.scope,
786
+ anchor: p.head.runId,
787
+ inputs: {
788
+ records: [p.baseRun, p.headRun].flatMap((r) => r ? [{
789
+ runId: r.record.runId,
790
+ sha256: sha256(r.bytes)
791
+ }] : []),
792
+ digestVersion: p.digest.digestVersion,
793
+ digestHash: digestHash(p.digest)
794
+ },
795
+ promptVersion: ANALYSIS_PROMPT_VERSION,
796
+ author: await author(config.root)
797
+ });
798
+ /** One structured call on the prepared digest (and what tools read), validated: the document the cache holds. */
799
+ async function analyseDigest(config, p, model, reads) {
800
+ const seen = reads?.evidence.length ? {
801
+ ...p.digest,
802
+ evidence: [...p.digest.evidence, ...reads.evidence]
803
+ } : p.digest;
804
+ const answer = await callAnalysisModel(model, seen, `${promptOf(p.digest)}${reads?.text ?? ""}`, config.analysis.maxOutputTokens);
805
+ const evals = p.headRun.record.evals.map((e) => ({
806
+ file: e.file,
807
+ name: [...e.group, e.name].join(" "),
808
+ tags: e.tags,
809
+ cells: e.cells.map((c) => c.key)
810
+ }));
811
+ const { body, validation } = validateAnalysis(answer.output, seen, p.tables, evals);
812
+ const cites = [
813
+ ...body.whatHappened,
814
+ ...body.results,
815
+ ...body.why,
816
+ ...body.anomalies,
817
+ ...body.actions
818
+ ].flatMap((x) => x.cites);
819
+ return {
820
+ ...await docBase(config, p),
821
+ model: model.name,
822
+ resolvedModel: answer.resolvedModel,
823
+ route: model.route,
824
+ usage: answer.usage,
825
+ latencyMs: answer.latencyMs,
826
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
827
+ validation,
828
+ analysis: body,
829
+ attempts: Object.fromEntries(Object.entries(p.digest.attempts).map(([id, a]) => [id, {
830
+ runId: a.runId,
831
+ evalSlug: a.evalSlug,
832
+ attempt: a.attempt
833
+ }])),
834
+ cited: citedSummary(seen, [...new Set(cites)])
835
+ };
836
+ }
837
+ /** A failed analysis as the cache keeps it: an empty body and the `error`. */
838
+ async function failedAnalysis(config, p, model, error, latencyMs) {
839
+ return {
840
+ ...await docBase(config, p),
841
+ model: model.name,
842
+ resolvedModel: null,
843
+ route: model.route,
844
+ usage: {
845
+ inputTokens: null,
846
+ outputTokens: null
847
+ },
848
+ latencyMs,
849
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
850
+ validation: {
851
+ citations: 0,
852
+ invalid: [],
853
+ dropped: 0,
854
+ commands: 0,
855
+ invalidCommands: [],
856
+ unverifiedNumbers: 0
857
+ },
858
+ analysis: {
859
+ tldr: "",
860
+ whatHappened: [],
861
+ results: [],
862
+ why: [],
863
+ anomalies: [],
864
+ actions: [],
865
+ confidence: {
866
+ overall: "low",
867
+ why: ""
868
+ }
869
+ },
870
+ attempts: {},
871
+ cited: {},
872
+ error
873
+ };
874
+ }
875
+ async function analyzeCommand(ctx, args) {
876
+ const { config, flags } = ctx;
877
+ if (flags.json && flags.md) throw new UsageError("reeval analyze takes --json or --md, not both");
878
+ if (flags.context && flags.save) throw new UsageError("reeval analyze --context makes no analysis to save; drop --save");
879
+ const entries = await allRuns(config);
880
+ let evalFilter = flags.eval ?? null;
881
+ let head;
882
+ try {
883
+ head = resolveRun(entries, args[0] ?? "latest");
884
+ } catch (error) {
885
+ const needle = args[0]?.toLowerCase();
886
+ const latest = entries.at(-1);
887
+ if (!(error instanceof RefError) || !needle || !latest?.evals.some((e) => e.id.toLowerCase().includes(needle))) throw error;
888
+ evalFilter ??= args[0];
889
+ head = latest;
890
+ }
891
+ const base = flags.vs ? resolveRun(entries, flags.vs) : await defaultBase(config, entries, head);
892
+ if (base?.runId === head.runId) throw new UsageError("reeval analyze --vs names the run itself");
893
+ if (flags.save && !head.recorded) throw new CommandError(`${head.runId} isn't recorded, so there's no history folder to save into. Run reeval record ${head.runId} first, then reeval analyze ${head.runId} --save.`);
894
+ const model = flags.context || flags["dry-run"] ? null : resolveAnalysisModel(config);
895
+ const prepared = await prepareAnalysis(config, head, base, evalFilter);
896
+ const { digest, key, modelName } = prepared;
897
+ if (evalFilter && digest.setup.evals.length === 0) throw new UsageError(`No eval in ${head.runId} matches "${evalFilter}"`);
898
+ if (flags.context) {
899
+ ctx.out(contextMarkdown(digest, head.runId, base?.runId ?? null));
900
+ return 0;
901
+ }
969
902
  const cached = flags["no-cache"] ? null : await readCached(config.root, key);
970
903
  if (flags["dry-run"]) {
971
904
  const chars = digestChars(digest);
@@ -983,51 +916,7 @@ async function analyzeCommand(ctx, args) {
983
916
  } else {
984
917
  const resolved = model ?? resolveAnalysisModel(config);
985
918
  ctx.err(`analysing ${head.runId}${base ? ` vs ${base.runId}` : ""} with ${resolved.name}…`);
986
- const answer = await callAnalysisModel(resolved, digest, promptOf(digest), config.analysis.maxOutputTokens);
987
- const evals = headRun.record.evals.map((e) => ({
988
- file: e.file,
989
- name: [...e.group, e.name].join(" "),
990
- tags: e.tags,
991
- cells: e.cells.map((c) => c.key)
992
- }));
993
- const { body, validation } = validateAnalysis(answer.output, digest, tables, evals);
994
- const cites = [
995
- ...body.whatHappened,
996
- ...body.results,
997
- ...body.why,
998
- ...body.anomalies,
999
- ...body.actions
1000
- ].flatMap((x) => x.cites);
1001
- doc = {
1002
- kind: "es-analysis",
1003
- schemaVersion: 1,
1004
- scope,
1005
- anchor: head.runId,
1006
- inputs: {
1007
- records: [baseRun, headRun].flatMap((r) => r ? [{
1008
- runId: r.record.runId,
1009
- sha256: sha256(r.bytes)
1010
- }] : []),
1011
- digestVersion: digest.digestVersion,
1012
- digestHash: hash
1013
- },
1014
- promptVersion: ANALYSIS_PROMPT_VERSION,
1015
- model: resolved.name,
1016
- resolvedModel: answer.resolvedModel,
1017
- route: resolved.route,
1018
- usage: answer.usage,
1019
- latencyMs: answer.latencyMs,
1020
- createdAt: (/* @__PURE__ */ new Date()).toISOString(),
1021
- author: await author(config.root),
1022
- validation,
1023
- analysis: body,
1024
- attempts: Object.fromEntries(Object.entries(digest.attempts).map(([id, a]) => [id, {
1025
- runId: a.runId,
1026
- evalSlug: a.evalSlug,
1027
- attempt: a.attempt
1028
- }])),
1029
- cited: citedSummary(digest, [...new Set(cites)])
1030
- };
919
+ doc = await analyseDigest(config, prepared, resolved);
1031
920
  await writeCached(config.root, key, doc);
1032
921
  }
1033
922
  if (flags.save) {
@@ -1038,6 +927,6 @@ async function analyzeCommand(ctx, args) {
1038
927
  return 0;
1039
928
  }
1040
929
  //#endregion
1041
- export { analyzeCommand };
930
+ export { failedAnalysis as a, defaultBase as i, analyzeCommand as n, prepareAnalysis as o, contextMarkdown as r, promptOf as s, analyseDigest as t };
1042
931
 
1043
- //# sourceMappingURL=command-CEm8PZ1N.js.map
932
+ //# sourceMappingURL=command-CQiFfn-C.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-CQiFfn-C.js","names":[],"sources":["../src/analysis/digest.ts","../src/analysis/render.ts","../src/analysis/validate.ts","../src/analysis/command.ts"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { n as analyzeCommand } from "./command-CQiFfn-C.js";
2
+ export { analyzeCommand };