oh-my-knowledge 0.23.0 → 0.25.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 (196) hide show
  1. package/README.md +146 -84
  2. package/README.zh.md +144 -83
  3. package/dist/src/analysis/report-diagnostics.d.ts +3 -2
  4. package/dist/src/analysis/report-diagnostics.d.ts.map +1 -1
  5. package/dist/src/analysis/report-diagnostics.js +107 -80
  6. package/dist/src/analysis/report-diagnostics.js.map +1 -1
  7. package/dist/src/analysis/sample-diagnostics.d.ts +4 -1
  8. package/dist/src/analysis/sample-diagnostics.d.ts.map +1 -1
  9. package/dist/src/analysis/sample-diagnostics.js +123 -29
  10. package/dist/src/analysis/sample-diagnostics.js.map +1 -1
  11. package/dist/src/analysis/saturation.d.ts +2 -2
  12. package/dist/src/analysis/saturation.js +2 -2
  13. package/dist/src/authoring/evolver.d.ts +12 -4
  14. package/dist/src/authoring/evolver.d.ts.map +1 -1
  15. package/dist/src/authoring/evolver.js +35 -10
  16. package/dist/src/authoring/evolver.js.map +1 -1
  17. package/dist/src/cli/i18n-dict.d.ts +1 -1
  18. package/dist/src/cli/i18n-dict.d.ts.map +1 -1
  19. package/dist/src/cli/i18n-dict.js +241 -64
  20. package/dist/src/cli/i18n-dict.js.map +1 -1
  21. package/dist/src/cli/index.js +267 -152
  22. package/dist/src/cli/index.js.map +1 -1
  23. package/dist/src/cli/parse-run-config.d.ts +32 -9
  24. package/dist/src/cli/parse-run-config.d.ts.map +1 -1
  25. package/dist/src/cli/parse-run-config.js +80 -25
  26. package/dist/src/cli/parse-run-config.js.map +1 -1
  27. package/dist/src/cli/parse-strict.d.ts +20 -0
  28. package/dist/src/cli/parse-strict.d.ts.map +1 -0
  29. package/dist/src/cli/parse-strict.js +25 -0
  30. package/dist/src/cli/parse-strict.js.map +1 -0
  31. package/dist/src/cli/progress.d.ts +1 -0
  32. package/dist/src/cli/progress.d.ts.map +1 -1
  33. package/dist/src/cli/progress.js +8 -1
  34. package/dist/src/cli/progress.js.map +1 -1
  35. package/dist/src/doctor/index.d.ts +19 -0
  36. package/dist/src/doctor/index.d.ts.map +1 -0
  37. package/dist/src/doctor/index.js +182 -0
  38. package/dist/src/doctor/index.js.map +1 -0
  39. package/dist/src/doctor/preflight.d.ts +32 -0
  40. package/dist/src/doctor/preflight.d.ts.map +1 -0
  41. package/dist/src/doctor/preflight.js +32 -0
  42. package/dist/src/doctor/preflight.js.map +1 -0
  43. package/dist/src/doctor/renderer.d.ts +13 -0
  44. package/dist/src/doctor/renderer.d.ts.map +1 -0
  45. package/dist/src/doctor/renderer.js +69 -0
  46. package/dist/src/doctor/renderer.js.map +1 -0
  47. package/dist/src/doctor/rules.d.ts +30 -0
  48. package/dist/src/doctor/rules.d.ts.map +1 -0
  49. package/dist/src/doctor/rules.js +216 -0
  50. package/dist/src/doctor/rules.js.map +1 -0
  51. package/dist/src/eval-core/bootstrap.d.ts +1 -1
  52. package/dist/src/eval-core/bootstrap.js +1 -1
  53. package/dist/src/eval-core/cache.d.ts +7 -5
  54. package/dist/src/eval-core/cache.d.ts.map +1 -1
  55. package/dist/src/eval-core/cache.js +11 -7
  56. package/dist/src/eval-core/cache.js.map +1 -1
  57. package/dist/src/eval-core/comparability.d.ts +11 -0
  58. package/dist/src/eval-core/comparability.d.ts.map +1 -0
  59. package/dist/src/eval-core/comparability.js +296 -0
  60. package/dist/src/eval-core/comparability.js.map +1 -0
  61. package/dist/src/eval-core/dependency-checker.js +1 -1
  62. package/dist/src/eval-core/dependency-checker.js.map +1 -1
  63. package/dist/src/eval-core/evaluation-execution.d.ts +23 -7
  64. package/dist/src/eval-core/evaluation-execution.d.ts.map +1 -1
  65. package/dist/src/eval-core/evaluation-execution.js +53 -21
  66. package/dist/src/eval-core/evaluation-execution.js.map +1 -1
  67. package/dist/src/eval-core/evaluation-job.d.ts +3 -5
  68. package/dist/src/eval-core/evaluation-job.d.ts.map +1 -1
  69. package/dist/src/eval-core/evaluation-job.js +2 -4
  70. package/dist/src/eval-core/evaluation-job.js.map +1 -1
  71. package/dist/src/eval-core/evaluation-reporting.d.ts +3 -1
  72. package/dist/src/eval-core/evaluation-reporting.d.ts.map +1 -1
  73. package/dist/src/eval-core/evaluation-reporting.js +67 -9
  74. package/dist/src/eval-core/evaluation-reporting.js.map +1 -1
  75. package/dist/src/eval-core/execution-strategy.js +2 -2
  76. package/dist/src/eval-core/execution-strategy.js.map +1 -1
  77. package/dist/src/eval-core/schema.d.ts.map +1 -1
  78. package/dist/src/eval-core/schema.js +20 -2
  79. package/dist/src/eval-core/schema.js.map +1 -1
  80. package/dist/src/eval-workflows/batch-evaluation-workflow.d.ts +113 -0
  81. package/dist/src/eval-workflows/batch-evaluation-workflow.d.ts.map +1 -0
  82. package/dist/src/eval-workflows/batch-evaluation-workflow.js +217 -0
  83. package/dist/src/eval-workflows/batch-evaluation-workflow.js.map +1 -0
  84. package/dist/src/eval-workflows/evaluation-pipeline.d.ts +6 -4
  85. package/dist/src/eval-workflows/evaluation-pipeline.d.ts.map +1 -1
  86. package/dist/src/eval-workflows/evaluation-pipeline.js +44 -38
  87. package/dist/src/eval-workflows/evaluation-pipeline.js.map +1 -1
  88. package/dist/src/eval-workflows/evaluation-preparation.d.ts +4 -17
  89. package/dist/src/eval-workflows/evaluation-preparation.d.ts.map +1 -1
  90. package/dist/src/eval-workflows/evaluation-preparation.js +3 -18
  91. package/dist/src/eval-workflows/evaluation-preparation.js.map +1 -1
  92. package/dist/src/eval-workflows/run-evaluation.d.ts +27 -23
  93. package/dist/src/eval-workflows/run-evaluation.d.ts.map +1 -1
  94. package/dist/src/eval-workflows/run-evaluation.js +137 -20
  95. package/dist/src/eval-workflows/run-evaluation.js.map +1 -1
  96. package/dist/src/executors/claude-cli.d.ts.map +1 -1
  97. package/dist/src/executors/claude-cli.js +11 -6
  98. package/dist/src/executors/claude-cli.js.map +1 -1
  99. package/dist/src/executors/codex-cli-trace.d.ts +10 -0
  100. package/dist/src/executors/codex-cli-trace.d.ts.map +1 -0
  101. package/dist/src/executors/codex-cli-trace.js +123 -0
  102. package/dist/src/executors/codex-cli-trace.js.map +1 -0
  103. package/dist/src/executors/codex-cli.d.ts +18 -0
  104. package/dist/src/executors/codex-cli.d.ts.map +1 -0
  105. package/dist/src/executors/codex-cli.js +254 -0
  106. package/dist/src/executors/codex-cli.js.map +1 -0
  107. package/dist/src/executors/codex-sdk.d.ts +18 -0
  108. package/dist/src/executors/codex-sdk.d.ts.map +1 -0
  109. package/dist/src/executors/codex-sdk.js +214 -0
  110. package/dist/src/executors/codex-sdk.js.map +1 -0
  111. package/dist/src/executors/gemini.d.ts.map +1 -1
  112. package/dist/src/executors/gemini.js +28 -24
  113. package/dist/src/executors/gemini.js.map +1 -1
  114. package/dist/src/executors/index.d.ts.map +1 -1
  115. package/dist/src/executors/index.js +7 -2
  116. package/dist/src/executors/index.js.map +1 -1
  117. package/dist/src/executors/runtime-fingerprint.d.ts +7 -0
  118. package/dist/src/executors/runtime-fingerprint.d.ts.map +1 -0
  119. package/dist/src/executors/runtime-fingerprint.js +277 -0
  120. package/dist/src/executors/runtime-fingerprint.js.map +1 -0
  121. package/dist/src/executors/script.d.ts.map +1 -1
  122. package/dist/src/executors/script.js +47 -55
  123. package/dist/src/executors/script.js.map +1 -1
  124. package/dist/src/executors/shared.d.ts +78 -1
  125. package/dist/src/executors/shared.d.ts.map +1 -1
  126. package/dist/src/executors/shared.js +203 -1
  127. package/dist/src/executors/shared.js.map +1 -1
  128. package/dist/src/grading/assertions.d.ts.map +1 -1
  129. package/dist/src/grading/assertions.js +22 -7
  130. package/dist/src/grading/assertions.js.map +1 -1
  131. package/dist/src/grading/gold-cli.js +4 -4
  132. package/dist/src/grading/gold-cli.js.map +1 -1
  133. package/dist/src/grading/human-gold.d.ts +1 -1
  134. package/dist/src/grading/human-gold.js +1 -1
  135. package/dist/src/grading/index.d.ts +20 -15
  136. package/dist/src/grading/index.d.ts.map +1 -1
  137. package/dist/src/grading/index.js +40 -16
  138. package/dist/src/grading/index.js.map +1 -1
  139. package/dist/src/grading/judge.d.ts +1 -1
  140. package/dist/src/grading/judge.d.ts.map +1 -1
  141. package/dist/src/grading/judge.js +76 -7
  142. package/dist/src/grading/judge.js.map +1 -1
  143. package/dist/src/inputs/eval-config.js +65 -7
  144. package/dist/src/inputs/eval-config.js.map +1 -1
  145. package/dist/src/inputs/skill-loader.d.ts +1 -1
  146. package/dist/src/inputs/skill-loader.d.ts.map +1 -1
  147. package/dist/src/inputs/skill-loader.js +1 -1
  148. package/dist/src/inputs/skill-loader.js.map +1 -1
  149. package/dist/src/renderer/html-renderer.d.ts +5 -4
  150. package/dist/src/renderer/html-renderer.d.ts.map +1 -1
  151. package/dist/src/renderer/html-renderer.js +240 -96
  152. package/dist/src/renderer/html-renderer.js.map +1 -1
  153. package/dist/src/renderer/layout.d.ts +2 -1
  154. package/dist/src/renderer/layout.d.ts.map +1 -1
  155. package/dist/src/renderer/layout.js +30 -42
  156. package/dist/src/renderer/layout.js.map +1 -1
  157. package/dist/src/renderer/summary.d.ts +3 -3
  158. package/dist/src/renderer/summary.d.ts.map +1 -1
  159. package/dist/src/renderer/summary.js +233 -43
  160. package/dist/src/renderer/summary.js.map +1 -1
  161. package/dist/src/renderer/trends.d.ts.map +1 -1
  162. package/dist/src/renderer/trends.js +5 -3
  163. package/dist/src/renderer/trends.js.map +1 -1
  164. package/dist/src/server/report-server.js +4 -4
  165. package/dist/src/server/report-server.js.map +1 -1
  166. package/dist/src/server/report-store.d.ts +7 -5
  167. package/dist/src/server/report-store.d.ts.map +1 -1
  168. package/dist/src/server/report-store.js +39 -11
  169. package/dist/src/server/report-store.js.map +1 -1
  170. package/dist/src/types/doctor.d.ts +95 -0
  171. package/dist/src/types/doctor.d.ts.map +1 -0
  172. package/dist/src/types/doctor.js +2 -0
  173. package/dist/src/types/doctor.js.map +1 -0
  174. package/dist/src/types/eval.d.ts +40 -19
  175. package/dist/src/types/eval.d.ts.map +1 -1
  176. package/dist/src/types/executor.d.ts +38 -0
  177. package/dist/src/types/executor.d.ts.map +1 -1
  178. package/dist/src/types/index.d.ts +1 -0
  179. package/dist/src/types/index.d.ts.map +1 -1
  180. package/dist/src/types/index.js +1 -0
  181. package/dist/src/types/index.js.map +1 -1
  182. package/dist/src/types/judge.d.ts +21 -0
  183. package/dist/src/types/judge.d.ts.map +1 -1
  184. package/dist/src/types/report.d.ts +100 -35
  185. package/dist/src/types/report.d.ts.map +1 -1
  186. package/dist/src/types/storage.d.ts +7 -7
  187. package/dist/src/types/storage.d.ts.map +1 -1
  188. package/package.json +6 -5
  189. package/dist/src/eval-workflows/each-evaluation-workflow.d.ts +0 -153
  190. package/dist/src/eval-workflows/each-evaluation-workflow.d.ts.map +0 -1
  191. package/dist/src/eval-workflows/each-evaluation-workflow.js +0 -178
  192. package/dist/src/eval-workflows/each-evaluation-workflow.js.map +0 -1
  193. package/dist/src/executors/openai-cli.d.ts +0 -3
  194. package/dist/src/executors/openai-cli.d.ts.map +0 -1
  195. package/dist/src/executors/openai-cli.js +0 -60
  196. package/dist/src/executors/openai-cli.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import type { ToolCallInfo, TurnInfo } from './executor.js';
2
- import type { AssertionResults, DimensionResult, EnsembleJudgeResult, JudgeAgreement, LayeredScores } from './judge.js';
1
+ import type { ExecutorRuntimeFingerprint, ToolCallInfo, TurnInfo } from './executor.js';
2
+ import type { AssertionResults, DimensionResult, EnsembleJudgeResult, JudgeAgreement, JudgeConfig, JudgeRuntimeEntry, LayeredScores } from './judge.js';
3
3
  import type { EvalBudget, EvaluationJob, EvaluationRequest, EvaluationRun, VariantConfig } from './eval.js';
4
4
  export interface VariantResult {
5
5
  ok: boolean;
@@ -13,6 +13,15 @@ export interface VariantResult {
13
13
  execCostUSD: number;
14
14
  judgeCostUSD: number;
15
15
  costUSD: number;
16
+ /** Whether `execCostUSD` came from a real cost number reported by the executor.
17
+ * Mirrors `ExecResult.costReportedByExecutor`. False ⇒ `execCostUSD` is a 0
18
+ * placeholder, renderer should show 「未报告」 instead of $0.0000. Default
19
+ * undefined ⇒ reported (preserves backward-compat for old reports). */
20
+ costReportedByExecutor?: boolean;
21
+ /** Whether `judgeCostUSD` came from a real cost number reported by the judge executor.
22
+ * False ⇒ at least one judge call (single rubric / dimension / async assertion / ensemble member)
23
+ * was made through an executor that doesn't report cost (currently codex). Default undefined ⇒ reported. */
24
+ judgeCostReportedByExecutor?: boolean;
16
25
  numTurns: number;
17
26
  fullNumTurns?: number;
18
27
  numSubAgents?: number;
@@ -81,6 +90,15 @@ export interface VariantSummary {
81
90
  totalExecCostUSD: number;
82
91
  totalJudgeCostUSD: number;
83
92
  avgCostPerSample: number;
93
+ /** Whether every sample had its exec cost reported by the executor.
94
+ * - undefined / true : 所有样本 exec cost 都报告了 (默认,向后兼容)
95
+ * - false : 至少一个样本 exec cost 未报告(混合执行器 / 全部走 codex 等)
96
+ * renderer 据此显示「成本: —」 而不是 "$0.0000"。 */
97
+ execCostReported?: boolean;
98
+ /** Whether every sample's judge cost was reported. False ⇒ 任一 sample 的 judge call
99
+ * 走了不报 cost 的 executor(如 codex 当 judge)。renderer 在显示 totalJudgeCost /
100
+ * detail 页 cost meta-tag 总值时同时考虑 exec + judge,任一 false 显示「—」。 */
101
+ judgeCostReported?: boolean;
84
102
  avgNumTurns: number;
85
103
  avgFullNumTurns?: number;
86
104
  avgNumSubAgents?: number;
@@ -109,8 +127,9 @@ export interface VariantSummary {
109
127
  judgeAgreement?: JudgeAgreement & {
110
128
  sampleCount: number;
111
129
  };
112
- /** List of judge identifiers ("executor:model") seen in this variant's ensemble data. */
113
- judgeModels?: string[];
130
+ /** Judges seen in this variant's ensemble data (`{executor, model}`). Renderer joins as
131
+ * "executor:model" for display. */
132
+ judgeModels?: JudgeConfig[];
114
133
  /** Bootstrap CI on this variant's compositeScore mean (when --bootstrap enabled).
115
134
  * Distribution-free; preferred over t-interval for ordinal LLM scores. */
116
135
  bootstrapCI?: {
@@ -179,11 +198,12 @@ export interface ReportHumanAgreement {
179
198
  export interface ReportMeta {
180
199
  variants: string[];
181
200
  model: string;
182
- judgeModel: string | null;
183
201
  executor: string;
184
202
  sampleCount: number;
185
203
  taskCount: number;
186
204
  totalCostUSD: number;
205
+ /** False when `totalCostUSD` is only the sum reported by executors/judges that expose USD cost. */
206
+ totalCostReported?: boolean;
187
207
  timestamp: string;
188
208
  cliVersion: string;
189
209
  nodeVersion: string;
@@ -196,12 +216,27 @@ export interface ReportMeta {
196
216
  sampleHashes?: Record<string, string>;
197
217
  /** SHA256-12 of the LLM judge prompt template. Different hash = judge changed semantics. */
198
218
  judgePromptHash?: string;
219
+ /** Runtime fingerprint for the executor that produced tested outputs.
220
+ * Legacy/common field. Prefer executorRuntimes for variant-level audit; this
221
+ * field is the common runtime when all variants match, otherwise a representative
222
+ * runtime for older consumers. */
223
+ executorRuntime?: ExecutorRuntimeFingerprint;
224
+ /** Runtime fingerprints for tested-output executors, keyed by variant name.
225
+ * This is the strict construct-validity source because variants can resolve
226
+ * different skillDir / PATH environments. */
227
+ executorRuntimes?: Record<string, ExecutorRuntimeFingerprint>;
199
228
  /** Number of times each sample was judged. 1 = single judge (default). */
200
229
  judgeRepeat?: number;
201
- /** Multi-judge ensemble configuration: ["claude:opus", "openai:gpt-4o", ...].
202
- * When length >= 2, every (sample × dimension) is scored by all judges and
203
- * agreement metrics are reported per-result. */
204
- judgeModels?: string[];
230
+ /** Unified judge configuration with embedded runtime fingerprints. Always non-empty.
231
+ * - length === 1: single judge.
232
+ * - length >= 2: ensemble; agreement metrics reported per-result.
233
+ * Each entry's `runtime` is undefined ⇔ judge did not run for this report (see `noJudge`).
234
+ * Replaces v0.24- `judgeModel` + `judgeRuntime` (single) and stringified
235
+ * `judgeModels: string[]` + parallel `judgeRuntimes: Record<string, fp>` (ensemble). */
236
+ judgeModels: JudgeRuntimeEntry[];
237
+ /** True ⇒ no judge actually ran (--no-judge); each `judgeModels[i].runtime` is undefined.
238
+ * Renderer / comparability use this to short-circuit judge-related rendering & checks. */
239
+ noJudge?: boolean;
205
240
  /** Which CI framework was used for this report: 't-test' (legacy default),
206
241
  * 'bootstrap' (--bootstrap), or 'both' (some summaries have both). Reports
207
242
  * with mismatched frameworks shouldn't be compared blindly on CI bounds. */
@@ -209,7 +244,7 @@ export interface ReportMeta {
209
244
  /** Pairwise comparisons (treatment vs control) — populated when --bootstrap and
210
245
  * multi-variant. Length = (variants.length - 1). */
211
246
  pairComparisons?: VariantPairComparison[];
212
- /** v0.21 Phase 3 — which judge-bias debias modes were active for this run.
247
+ /** Which judge-bias debias modes were active for this run.
213
248
  * Values: 'length' (substance-not-length prompt), 'position' (random ensemble
214
249
  * order). Empty / absent means legacy default (no debias). The renderer shows
215
250
  * this so readers can tell apples from oranges across reports. */
@@ -242,39 +277,67 @@ export interface ResultEntry {
242
277
  sample_id: string;
243
278
  variants: Record<string, VariantResult>;
244
279
  }
245
- export interface Report {
280
+ export interface EvaluationReport {
281
+ kind: 'evaluation';
246
282
  id: string;
247
283
  meta: ReportMeta;
248
284
  summary: Record<string, VariantSummary>;
249
285
  results: ResultEntry[];
250
286
  analysis?: AnalysisResult;
251
287
  variance?: VarianceData;
252
- each?: boolean;
253
- overview?: {
254
- totalArtifacts: number;
255
- totalSamples: number;
256
- totalCostUSD: number;
257
- artifacts: Array<{
258
- name: string;
259
- baselineScore: number | null;
260
- artifactScore: number | null;
261
- improvement: string;
262
- }>;
263
- };
264
- artifacts?: Array<{
265
- name: string;
266
- sampleCount: number;
267
- artifactHash: string | null;
268
- summary: Record<string, VariantSummary>;
269
- /** --each --repeat N 时由 runMultiple 聚合的三层独立 variance + t 检验 */
270
- variance?: VarianceData;
271
- results: ResultEntry[];
272
- }>;
273
288
  }
289
+ export type Report = EvaluationReport;
290
+ export interface BatchEvaluationMeta {
291
+ mode: 'skill';
292
+ model: string;
293
+ executor: string;
294
+ skillDir: string;
295
+ sampleCount: number;
296
+ taskCount: number;
297
+ totalArtifacts: number;
298
+ totalCostUSD: number;
299
+ /** False when `totalCostUSD` is only the sum reported by executors/judges that expose USD cost. */
300
+ totalCostReported?: boolean;
301
+ timestamp: string;
302
+ cliVersion: string;
303
+ nodeVersion: string;
304
+ executorRuntime?: ExecutorRuntimeFingerprint;
305
+ executorRuntimes?: Record<string, ExecutorRuntimeFingerprint>;
306
+ /** See ReportMeta.judgeModels — same semantics for batch reports. */
307
+ judgeModels: JudgeRuntimeEntry[];
308
+ /** See ReportMeta.noJudge. */
309
+ noJudge?: boolean;
310
+ request?: EvaluationRequest;
311
+ run?: EvaluationRun;
312
+ job?: EvaluationJob;
313
+ gitInfo?: GitInfo | null;
314
+ }
315
+ export interface BatchEvaluationItem {
316
+ /** Skill name; also the treatment variant key inside the child EvaluationReport. */
317
+ name: string;
318
+ skillPath: string;
319
+ samplesPath: string;
320
+ reportId: string;
321
+ reportPath: string | null;
322
+ status: 'completed' | 'failed';
323
+ sampleCount: number;
324
+ totalCostUSD: number;
325
+ artifactHash: string | null;
326
+ summary: Record<string, VariantSummary>;
327
+ /** --batch --repeat N 时由 child EvaluationReport 聚合的三层独立 variance + t 检验快照 */
328
+ variance?: VarianceData;
329
+ }
330
+ export interface BatchEvaluationReport {
331
+ kind: 'batch-evaluation';
332
+ id: string;
333
+ mode: 'skill';
334
+ meta: BatchEvaluationMeta;
335
+ items: BatchEvaluationItem[];
336
+ }
337
+ export type ReportDocument = EvaluationReport | BatchEvaluationReport;
274
338
  export interface Insight {
275
339
  type: string;
276
340
  severity: 'error' | 'warning' | 'info';
277
- message: string;
278
341
  details: unknown;
279
342
  }
280
343
  export interface KnowledgeCoverageEntry {
@@ -294,9 +357,11 @@ export interface KnowledgeCoverage {
294
357
  overallRate: number;
295
358
  }
296
359
  export interface AnalysisResult {
360
+ /** @deprecated Legacy display text. Renderers generate localized summaries from structured report data. */
297
361
  summary?: string;
298
362
  insights: Insight[];
299
- suggestions: string[];
363
+ /** @deprecated Legacy display text. Renderers generate localized suggestions from structured insights. */
364
+ suggestions?: string[];
300
365
  coverage?: Record<string, KnowledgeCoverage>;
301
366
  /** Per-variant knowledge gap reports. See docs/knowledge-gap-signal-spec.md */
302
367
  gapReports?: Record<string, GapReport>;
@@ -396,7 +461,7 @@ export interface VarianceData {
396
461
  runs: number;
397
462
  perVariant: Record<string, VariantVariance>;
398
463
  comparisons: VarianceComparison[];
399
- /** v0.21 Phase 4 — saturation curve data. Populated only when repeat ≥ 2.
464
+ /** Saturation curve data. Populated only when repeat ≥ 2.
400
465
  * Per-variant cumulative score arrays at each repeat checkpoint, plus the
401
466
  * saturation verdict (only computed when repeat ≥ 5). */
402
467
  saturation?: SaturationData;
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/types/report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/types/report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxJ,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,iBAAiB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE5G,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB;;;4EAGwE;IACxE,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;iHAE6G;IAC7G,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;;qEAGiE;IACjE,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gGAAgG;IAChG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gFAAgF;IAChF,WAAW,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACpC,mFAAmF;IACnF,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7C,SAAS,CAAC,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,OAAO,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IACtK,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,MAAM,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/D;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;8CAG0C;IAC1C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;sEAEkE;IAClE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;qEACiE;IACjE,cAAc,CAAC,EAAE,cAAc,GAAG;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1D;wCACoC;IACpC,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;IAC5B;+EAC2E;IAC3E,WAAW,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAChF;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,qFAAqF;IACrF,eAAe,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,CAAC;CAC1G;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;mCAEmC;AACnC,MAAM,WAAW,oBAAoB;IACnC,0DAA0D;IAC1D,KAAK,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,+CAA+C;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,aAAa,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAC;IACrB,qFAAqF;IACrF,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,mGAAmG;IACnG,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC;;yEAEqE;IACrE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uFAAuF;IACvF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,4FAA4F;IAC5F,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;uCAGmC;IACnC,eAAe,CAAC,EAAE,0BAA0B,CAAC;IAC7C;;kDAE8C;IAC9C,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAC9D,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;6FAKyF;IACzF,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC;+FAC2F;IAC3F,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;iFAE6E;IAC7E,mBAAmB,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC;IACtD;yDACqD;IACrD,eAAe,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAC1C;;;uEAGmE;IACnE,UAAU,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC;IAC1C;gFAC4E;IAC5E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;6DACyD;IACzD,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB;;gEAE4D;IAC5D,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC;;;yDAGqD;IACrD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IACjD,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIlC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACxC,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,MAAM,MAAM,GAAG,gBAAgB,CAAC;AAEtC,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,mGAAmG;IACnG,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,0BAA0B,CAAC;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAC9D,qEAAqE;IACrE,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,8BAA8B;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAClC,oFAAoF;IACpF,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACxC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,kBAAkB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAED,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,qBAAqB,CAAC;AAEtE,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,2GAA2G;IAC3G,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,0GAA0G;IAC1G,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC7C,+EAA+E;IAC/E,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvC;;wEAEoE;IACpE,aAAa,CAAC,EAAE,sBAAsB,CAAC;CACxC;AAED;;;;yBAIyB;AACzB,MAAM,WAAW,sBAAsB;IACrC,gFAAgF;IAChF,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,mFAAmF;IACnF,sBAAsB,EAAE,MAAM,CAAC,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,aAAa,EAAE,MAAM,CAAC,CAAC;IACnF,mFAAmF;IACnF,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,wEAAwE;IACxE,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,wEAAwE;IACxE,eAAe,EAAE,MAAM,CAAC;IACxB,kFAAkF;IAClF,yBAAyB,EAAE,MAAM,CAAC;IAClC,yBAAyB,EAAE,MAAM,CAAC;IAClC,wBAAwB,EAAE,MAAM,CAAC;IACjC,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAKD,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,eAAe,GAAG,iBAAiB,GAAG,SAAS,GAAG,kBAAkB,CAAC;IAC3E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAInC,MAAM,EAAE,MAAM,CAAC;IAGf,iBAAiB,CAAC,EAAE,cAAc,CAAC;CACpC;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAIhB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,MAAM,EAAE;QACN,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC;IAC5B,SAAS,EAAE,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,kBAAkB,CAAC;CAChC;AAKD,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,YAAY,CAAC;AAStD,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;AAE7D,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,kBAAmB,SAAQ,wBAAwB;IAClE,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,wBAAwB,CAAC,CAAC,CAAC;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,CAAC,CAAC;CACvE;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5C,WAAW,EAAE,kBAAkB,EAAE,CAAC;IAClC;;8DAE0D;IAC1D,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B;AAED,gEAAgE;AAChE,MAAM,WAAW,cAAc;IAC7B,oEAAoE;IACpE,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC;+EAC2E;IAC3E,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC9F,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,OAAO,CAAC;QACnB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QACnB,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;QACtC,MAAM,EAAE,OAAO,GAAG,oBAAoB,GAAG,gBAAgB,CAAC;QAC1D,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;CACJ"}
@@ -1,14 +1,14 @@
1
1
  import type { EvaluationJob } from './eval.js';
2
- import type { Report } from './report.js';
2
+ import type { EvaluationReport, ReportDocument } from './report.js';
3
3
  export interface ReportStore {
4
- list(): Promise<Report[]>;
5
- get(id: string): Promise<Report | null>;
6
- save(id: string, report: Report): Promise<void>;
7
- update(id: string, mutator: (report: Report) => void): Promise<Report | null>;
4
+ list(): Promise<ReportDocument[]>;
5
+ get(id: string): Promise<ReportDocument | null>;
6
+ save(id: string, report: ReportDocument): Promise<void>;
7
+ update(id: string, mutator: (report: ReportDocument) => void): Promise<ReportDocument | null>;
8
8
  remove(id: string): Promise<boolean>;
9
9
  exists(id: string): Promise<boolean>;
10
- findByVariant(variantName: string): Promise<Report[]>;
11
- findByArtifactHash(hash: string): Promise<Report[]>;
10
+ findByVariant(variantName: string): Promise<EvaluationReport[]>;
11
+ findByArtifactHash(hash: string): Promise<EvaluationReport[]>;
12
12
  }
13
13
  export interface JobStore {
14
14
  list(): Promise<EvaluationJob[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/types/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,WAAW;IAC1B,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9E,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACtD,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IACjC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAC/C,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAClG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACtC"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/types/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEpE,MAAM,WAAW,WAAW;IAC1B,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAClC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC9F,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAChE,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IACjC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAC/C,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAClG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACtC"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "oh-my-knowledge",
3
- "version": "0.23.0",
3
+ "version": "0.25.0",
4
4
  "description": "LLM evaluation framework with built-in statistical rigor: bootstrap CI, Krippendorff α, length-debias, saturation curves. Native Claude Code skill / RAG / agent / prompt evaluation.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "omk": "dist/src/cli/index.js"
8
8
  },
9
9
  "engines": {
10
- "node": ">=20"
10
+ "node": ">=22"
11
11
  },
12
12
  "files": [
13
13
  "dist/src/"
@@ -15,10 +15,9 @@
15
15
  "scripts": {
16
16
  "build": "tsc",
17
17
  "typecheck": "tsc --noEmit",
18
- "postbuild": "node -e \"const fs=require('fs'),f='dist/src/cli/index.js',c=fs.readFileSync(f,'utf8');if(!c.startsWith('#!'))fs.writeFileSync(f,'#!/usr/bin/env node\\n'+c)\"",
19
- "lint": "eslint 'src/**/*.ts' 'test/**/*.ts' --max-warnings 0",
18
+ "lint": "eslint 'src/**/*.ts' 'test/**/*.ts' --cache --cache-location node_modules/.cache/eslint/ --max-warnings 0",
20
19
  "test": "vitest run",
21
- "ci": "yarn lint && yarn typecheck && yarn test",
20
+ "ci": "run-p lint typecheck test",
22
21
  "prepublishOnly": "yarn build",
23
22
  "prepare": "husky"
24
23
  },
@@ -62,6 +61,7 @@
62
61
  "dependencies": {
63
62
  "@anthropic-ai/claude-agent-sdk": "^0.2.89",
64
63
  "@modelcontextprotocol/sdk": "^1.29.0",
64
+ "@openai/codex-sdk": "0.128.0",
65
65
  "ajv": "^8.18.0",
66
66
  "js-yaml": "^4.1.1",
67
67
  "simple-statistics": "^7.8.9"
@@ -75,6 +75,7 @@
75
75
  "eslint": "^10.1.0",
76
76
  "husky": "^9.1.7",
77
77
  "lint-staged": "^16.4.0",
78
+ "npm-run-all2": "^8.0.4",
78
79
  "typescript": "^6.0.2",
79
80
  "typescript-eslint": "^8.58.0",
80
81
  "vitest": "^4.1.3"
@@ -1,153 +0,0 @@
1
- import type { Artifact, JobStore, ProgressCallback, Report, VarianceData, VariantResult, VariantSummary } from '../types/index.js';
2
- interface RunSingleEvaluationOptions {
3
- samplesPath: string;
4
- skillDir: string;
5
- artifacts: Artifact[];
6
- model: string;
7
- judgeModel: string;
8
- outputDir: null;
9
- noJudge: boolean;
10
- concurrency: number;
11
- timeoutMs?: number;
12
- executorName: string;
13
- judgeExecutorName?: string;
14
- jobStore: null;
15
- persistJob: false;
16
- onProgress: ProgressCallback | null;
17
- skipPreflight: boolean;
18
- mcpConfig?: string;
19
- verbose: boolean;
20
- /** Forwarded to grade(); each sample × dimension is judged N times. Default 1. */
21
- judgeRepeat?: number;
22
- /** Forwarded to pipeline; ≥ 2 entries triggers multi-judge ensemble mode. */
23
- judgeModels?: import('../types/index.js').JudgeConfig[];
24
- /** v0.21 Phase 3a length-debias toggle. Default true. */
25
- lengthDebias?: boolean;
26
- }
27
- export interface EachSkillResult {
28
- name: string;
29
- artifactHash: string;
30
- samplesPath: string;
31
- sampleCount: number;
32
- summary: Record<string, VariantSummary>;
33
- /** repeat > 1 时由 runMultiple 聚合,承载三层独立 variance + t 检验 */
34
- variance?: VarianceData;
35
- results: Array<{
36
- sample_id: string;
37
- variants: {
38
- baseline: VariantResult;
39
- skill: VariantResult;
40
- };
41
- }>;
42
- }
43
- export declare function buildEachReport({ skillDir, skillEntries, skillResults, model, judgeModel, noJudge, executorName, judgeExecutorName, project, owner, tags, dryRun, concurrency, timeoutMs, totalCostUSD, repeat, }: {
44
- skillDir: string;
45
- skillEntries: Array<{
46
- name: string;
47
- skillPath: string;
48
- samplesPath: string;
49
- }>;
50
- skillResults: EachSkillResult[];
51
- model: string;
52
- judgeModel: string;
53
- noJudge: boolean;
54
- executorName: string;
55
- judgeExecutorName?: string;
56
- project?: string;
57
- owner?: string;
58
- tags?: string[];
59
- dryRun: boolean;
60
- concurrency: number;
61
- timeoutMs?: number;
62
- totalCostUSD: number;
63
- repeat?: number;
64
- }): {
65
- report: {
66
- id: string;
67
- each: true;
68
- meta: {
69
- variants: string[];
70
- model: string;
71
- judgeModel: string | null;
72
- executor: string;
73
- sampleCount: number;
74
- taskCount: number;
75
- totalCostUSD: number;
76
- timestamp: string;
77
- cliVersion: string;
78
- nodeVersion: string;
79
- artifactHashes: {
80
- [k: string]: string;
81
- };
82
- request: import("../types/eval.js").EvaluationRequest;
83
- run: import("../types/eval.js").EvaluationRun;
84
- job: import("../types/eval.js").EvaluationJob;
85
- };
86
- summary: {};
87
- results: never[];
88
- overview: {
89
- totalArtifacts: number;
90
- totalSamples: number;
91
- totalCostUSD: number;
92
- artifacts: {
93
- name: string;
94
- baselineScore: number | null;
95
- artifactScore: number | null;
96
- improvement: string;
97
- }[];
98
- };
99
- artifacts: EachSkillResult[];
100
- };
101
- job: import("../types/eval.js").EvaluationJob;
102
- };
103
- export declare function executeEachEvaluationRuns({ skillDir, skillEntries, model, judgeModel, outputDir, project, owner, tags, noJudge, concurrency, timeoutMs, executorName, judgeExecutorName, jobStore, persistJob, onProgress, onSkillProgress, skipPreflight, mcpConfig, verbose, repeat, judgeRepeat, judgeModels, lengthDebias, strictBaseline, variantAllowedSkills, runSingleEvaluation, }: {
104
- skillDir: string;
105
- skillEntries: Array<{
106
- name: string;
107
- skillPath: string;
108
- samplesPath: string;
109
- }>;
110
- model: string;
111
- judgeModel: string;
112
- outputDir?: string | null;
113
- project?: string;
114
- owner?: string;
115
- tags?: string[];
116
- noJudge?: boolean;
117
- concurrency?: number;
118
- timeoutMs?: number;
119
- executorName: string;
120
- judgeExecutorName?: string;
121
- jobStore?: JobStore | null;
122
- persistJob?: boolean;
123
- onProgress?: ProgressCallback | null;
124
- onSkillProgress?: ((info: {
125
- phase: string;
126
- skill: string;
127
- current: number;
128
- total: number;
129
- }) => void) | null;
130
- skipPreflight?: boolean;
131
- mcpConfig?: string;
132
- verbose?: boolean;
133
- repeat?: number;
134
- judgeRepeat?: number;
135
- judgeModels?: import('../types/index.js').JudgeConfig[];
136
- lengthDebias?: boolean;
137
- /** — strict-baseline default. Forwarded to per-skill resolveArtifacts so each
138
- * skill's baseline gets allowedSkills=[] when default true. */
139
- strictBaseline?: boolean;
140
- /** — explicit per-variant allowedSkills override. each mode rarely uses this
141
- * (since it auto-pairs baseline + skill), but if user has yaml override on either
142
- * "baseline" or "skill" name, we honor it. */
143
- variantAllowedSkills?: Record<string, string[]>;
144
- runSingleEvaluation: (options: RunSingleEvaluationOptions) => Promise<{
145
- report: Report;
146
- filePath: string | null;
147
- }>;
148
- }): Promise<{
149
- report: Report;
150
- filePath: string | null;
151
- }>;
152
- export {};
153
- //# sourceMappingURL=each-evaluation-workflow.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"each-evaluation-workflow.d.ts","sourceRoot":"","sources":["../../../src/eval-workflows/each-evaluation-workflow.ts"],"names":[],"mappings":"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"}