oh-my-knowledge 0.33.0 → 0.35.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 (739) hide show
  1. package/README.md +21 -5
  2. package/README.zh.md +25 -9
  3. package/dist/analysis/coverage-analyzer.d.ts +0 -1
  4. package/dist/analysis/coverage-analyzer.js +0 -1
  5. package/dist/analysis/failure-clusterer.d.ts +0 -1
  6. package/dist/analysis/failure-clusterer.js +0 -1
  7. package/dist/analysis/gap-analyzer.d.ts +0 -1
  8. package/dist/analysis/gap-analyzer.js +0 -1
  9. package/dist/analysis/hedging-classifier.d.ts +0 -1
  10. package/dist/analysis/hedging-classifier.js +1 -2
  11. package/dist/analysis/report-diagnostics.d.ts +0 -1
  12. package/dist/analysis/report-diagnostics.js +0 -1
  13. package/dist/analysis/sample-diagnostics.d.ts +1 -2
  14. package/dist/analysis/sample-diagnostics.js +18 -19
  15. package/dist/analysis/saturation.d.ts +0 -1
  16. package/dist/analysis/saturation.js +0 -1
  17. package/dist/assets/agent-skills/omk/SKILL.md +197 -0
  18. package/dist/assets/agent-skills/omk/references/commands.md +556 -0
  19. package/dist/authoring/evolver.d.ts +130 -6
  20. package/dist/authoring/evolver.js +233 -35
  21. package/dist/authoring/generator.d.ts +0 -1
  22. package/dist/authoring/generator.js +0 -1
  23. package/dist/authoring/sample-fixer.d.ts +0 -1
  24. package/dist/authoring/sample-fixer.js +0 -1
  25. package/dist/cli/commands/doctor.d.ts +0 -1
  26. package/dist/cli/commands/doctor.js +2 -3
  27. package/dist/cli/commands/eval/gold/compare.d.ts +0 -1
  28. package/dist/cli/commands/eval/gold/compare.js +0 -1
  29. package/dist/cli/commands/eval/gold/index.d.ts +0 -1
  30. package/dist/cli/commands/eval/gold/index.js +0 -1
  31. package/dist/cli/commands/eval/gold/init.d.ts +0 -1
  32. package/dist/cli/commands/eval/gold/init.js +0 -1
  33. package/dist/cli/commands/eval/gold/validate.d.ts +0 -1
  34. package/dist/cli/commands/eval/gold/validate.js +0 -1
  35. package/dist/cli/commands/eval/index.d.ts +3 -1
  36. package/dist/cli/commands/eval/index.js +56 -11
  37. package/dist/cli/commands/evolve.d.ts +6 -1
  38. package/dist/cli/commands/evolve.js +77 -6
  39. package/dist/cli/commands/init.d.ts +0 -1
  40. package/dist/cli/commands/init.js +0 -1
  41. package/dist/cli/commands/install.d.ts +24 -0
  42. package/dist/cli/commands/install.js +436 -0
  43. package/dist/cli/commands/observe/inbox.d.ts +0 -1
  44. package/dist/cli/commands/observe/inbox.js +0 -1
  45. package/dist/cli/commands/observe/index.d.ts +0 -1
  46. package/dist/cli/commands/observe/index.js +0 -1
  47. package/dist/cli/commands/observe/ingest.d.ts +0 -1
  48. package/dist/cli/commands/observe/ingest.js +0 -1
  49. package/dist/cli/commands/observe/show.d.ts +0 -1
  50. package/dist/cli/commands/observe/show.js +0 -1
  51. package/dist/cli/commands/sample.d.ts +1 -2
  52. package/dist/cli/commands/sample.js +27 -15
  53. package/dist/cli/commands/studio.d.ts +0 -1
  54. package/dist/cli/commands/studio.js +0 -1
  55. package/dist/cli/index.d.ts +0 -1
  56. package/dist/cli/index.js +1 -2
  57. package/dist/cli/lib/cli-exit.d.ts +0 -1
  58. package/dist/cli/lib/cli-exit.js +0 -1
  59. package/dist/cli/lib/cmd-flags.d.ts +7 -1
  60. package/dist/cli/lib/cmd-flags.js +0 -1
  61. package/dist/cli/lib/i18n-dict/common.d.ts +0 -1
  62. package/dist/cli/lib/i18n-dict/common.js +0 -1
  63. package/dist/cli/lib/i18n-dict/evolve.d.ts +1 -2
  64. package/dist/cli/lib/i18n-dict/evolve.js +16 -1
  65. package/dist/cli/lib/i18n-dict/gen.d.ts +0 -1
  66. package/dist/cli/lib/i18n-dict/gen.js +0 -1
  67. package/dist/cli/lib/i18n-dict/help.d.ts +0 -1
  68. package/dist/cli/lib/i18n-dict/help.js +0 -1
  69. package/dist/cli/lib/i18n-dict/init.d.ts +0 -1
  70. package/dist/cli/lib/i18n-dict/init.js +0 -1
  71. package/dist/cli/lib/i18n-dict/install.d.ts +3 -0
  72. package/dist/cli/lib/i18n-dict/install.js +110 -0
  73. package/dist/cli/lib/i18n-dict/run.d.ts +1 -2
  74. package/dist/cli/lib/i18n-dict/run.js +8 -1
  75. package/dist/cli/lib/i18n-dict/types.d.ts +0 -1
  76. package/dist/cli/lib/i18n-dict/types.js +0 -1
  77. package/dist/cli/lib/i18n-dict.d.ts +2 -2
  78. package/dist/cli/lib/i18n-dict.js +2 -1
  79. package/dist/cli/lib/i18n.d.ts +0 -1
  80. package/dist/cli/lib/i18n.js +0 -1
  81. package/dist/cli/lib/parse-run-config/judge-models.d.ts +0 -1
  82. package/dist/cli/lib/parse-run-config/judge-models.js +0 -1
  83. package/dist/cli/lib/parse-run-config/samples-discovery.d.ts +0 -1
  84. package/dist/cli/lib/parse-run-config/samples-discovery.js +1 -4
  85. package/dist/cli/lib/parse-run-config/variant-resolution.d.ts +0 -1
  86. package/dist/cli/lib/parse-run-config/variant-resolution.js +41 -8
  87. package/dist/cli/lib/parse-run-config.d.ts +0 -1
  88. package/dist/cli/lib/parse-run-config.js +1 -2
  89. package/dist/cli/lib/progress.d.ts +0 -1
  90. package/dist/cli/lib/progress.js +0 -1
  91. package/dist/cli/lib/resolve-skill-input.d.ts +0 -1
  92. package/dist/cli/lib/resolve-skill-input.js +0 -1
  93. package/dist/cli/lib/run-tally.d.ts +0 -1
  94. package/dist/cli/lib/run-tally.js +1 -2
  95. package/dist/cli/lib/shared.d.ts +0 -1
  96. package/dist/cli/lib/shared.js +1 -2
  97. package/dist/cli/lib/update-check.d.ts +0 -1
  98. package/dist/cli/lib/update-check.js +0 -1
  99. package/dist/cli/lib/update-fetch-worker.d.ts +0 -1
  100. package/dist/cli/lib/update-fetch-worker.js +0 -1
  101. package/dist/cli/oclif/base-command.d.ts +0 -1
  102. package/dist/cli/oclif/base-command.js +0 -1
  103. package/dist/cli/oclif/help.d.ts +0 -1
  104. package/dist/cli/oclif/help.js +0 -1
  105. package/dist/cli/oclif/i18n.d.ts +0 -1
  106. package/dist/cli/oclif/i18n.js +0 -1
  107. package/dist/cli/oclif/parsers.d.ts +0 -1
  108. package/dist/cli/oclif/parsers.js +0 -1
  109. package/dist/cli/oclif/projection.d.ts +0 -1
  110. package/dist/cli/oclif/projection.js +0 -1
  111. package/dist/cli/oclif/run.d.ts +0 -1
  112. package/dist/cli/oclif/run.js +0 -1
  113. package/dist/diagnosis/observe-mapper.d.ts +2 -3
  114. package/dist/diagnosis/observe-mapper.js +6 -7
  115. package/dist/diagnosis/observe-producer.d.ts +0 -1
  116. package/dist/diagnosis/observe-producer.js +3 -4
  117. package/dist/diagnosis/studio-projection.d.ts +0 -1
  118. package/dist/diagnosis/studio-projection.js +0 -1
  119. package/dist/diagnosis/types.d.ts +0 -1
  120. package/dist/diagnosis/types.js +0 -1
  121. package/dist/doctor/fixer.d.ts +0 -1
  122. package/dist/doctor/fixer.js +0 -1
  123. package/dist/doctor/health/builtin-dimensions.d.ts +0 -1
  124. package/dist/doctor/health/builtin-dimensions.js +0 -1
  125. package/dist/doctor/health/composer.d.ts +0 -1
  126. package/dist/doctor/health/composer.js +1 -2
  127. package/dist/doctor/health/dimension-registry.d.ts +0 -1
  128. package/dist/doctor/health/dimension-registry.js +0 -1
  129. package/dist/doctor/health/dimension-spec.d.ts +0 -1
  130. package/dist/doctor/health/dimension-spec.js +0 -1
  131. package/dist/doctor/health/load-custom-dimensions.d.ts +0 -1
  132. package/dist/doctor/health/load-custom-dimensions.js +0 -1
  133. package/dist/doctor/health/parser.d.ts +0 -1
  134. package/dist/doctor/health/parser.js +0 -1
  135. package/dist/doctor/health/prompt-builder.d.ts +0 -1
  136. package/dist/doctor/health/prompt-builder.js +0 -1
  137. package/dist/doctor/health/register.d.ts +0 -1
  138. package/dist/doctor/health/register.js +0 -1
  139. package/dist/doctor/index.d.ts +0 -1
  140. package/dist/doctor/index.js +6 -7
  141. package/dist/doctor/messages.d.ts +0 -1
  142. package/dist/doctor/messages.js +1 -2
  143. package/dist/doctor/preflight.d.ts +0 -1
  144. package/dist/doctor/preflight.js +0 -1
  145. package/dist/doctor/renderer.d.ts +0 -1
  146. package/dist/doctor/renderer.js +0 -1
  147. package/dist/doctor/rules.d.ts +0 -1
  148. package/dist/doctor/rules.js +0 -1
  149. package/dist/eval-core/bootstrap.d.ts +0 -1
  150. package/dist/eval-core/bootstrap.js +0 -1
  151. package/dist/eval-core/cache.d.ts +11 -4
  152. package/dist/eval-core/cache.js +13 -6
  153. package/dist/eval-core/comparability.d.ts +0 -1
  154. package/dist/eval-core/comparability.js +3 -4
  155. package/dist/eval-core/dependency-checker.d.ts +0 -1
  156. package/dist/eval-core/dependency-checker.js +5 -3
  157. package/dist/eval-core/evaluation-execution.d.ts +0 -1
  158. package/dist/eval-core/evaluation-execution.js +4 -2
  159. package/dist/eval-core/evaluation-job.d.ts +0 -1
  160. package/dist/eval-core/evaluation-job.js +0 -1
  161. package/dist/eval-core/evaluation-reporting.d.ts +0 -1
  162. package/dist/eval-core/evaluation-reporting.js +18 -8
  163. package/dist/eval-core/execution-strategy.d.ts +0 -1
  164. package/dist/eval-core/execution-strategy.js +8 -3
  165. package/dist/eval-core/fact-checker.d.ts +0 -1
  166. package/dist/eval-core/fact-checker.js +0 -1
  167. package/dist/eval-core/layer-gates.d.ts +0 -1
  168. package/dist/eval-core/layer-gates.js +0 -1
  169. package/dist/eval-core/mocks-runtime.d.ts +0 -1
  170. package/dist/eval-core/mocks-runtime.js +0 -1
  171. package/dist/eval-core/schema.d.ts +0 -1
  172. package/dist/eval-core/schema.js +0 -1
  173. package/dist/eval-core/statistics.d.ts +0 -1
  174. package/dist/eval-core/statistics.js +0 -1
  175. package/dist/eval-core/task-planner.d.ts +0 -1
  176. package/dist/eval-core/task-planner.js +2 -2
  177. package/dist/eval-core/verdict.d.ts +0 -1
  178. package/dist/eval-core/verdict.js +0 -1
  179. package/dist/eval-workflows/batch-evaluation-workflow.d.ts +18 -3
  180. package/dist/eval-workflows/batch-evaluation-workflow.js +31 -15
  181. package/dist/eval-workflows/evaluation-pipeline/preflight-warnings.d.ts +0 -1
  182. package/dist/eval-workflows/evaluation-pipeline/preflight-warnings.js +0 -1
  183. package/dist/eval-workflows/evaluation-pipeline/report-finalize.d.ts +0 -1
  184. package/dist/eval-workflows/evaluation-pipeline/report-finalize.js +0 -1
  185. package/dist/eval-workflows/evaluation-pipeline/run-state.d.ts +0 -1
  186. package/dist/eval-workflows/evaluation-pipeline/run-state.js +0 -1
  187. package/dist/eval-workflows/evaluation-pipeline/test-set-hash.d.ts +0 -1
  188. package/dist/eval-workflows/evaluation-pipeline/test-set-hash.js +0 -1
  189. package/dist/eval-workflows/evaluation-pipeline.d.ts +0 -1
  190. package/dist/eval-workflows/evaluation-pipeline.js +0 -1
  191. package/dist/eval-workflows/evaluation-preparation.d.ts +1 -5
  192. package/dist/eval-workflows/evaluation-preparation.js +22 -44
  193. package/dist/eval-workflows/messages.d.ts +0 -1
  194. package/dist/eval-workflows/messages.js +0 -1
  195. package/dist/eval-workflows/run-evaluation.d.ts +3 -8
  196. package/dist/eval-workflows/run-evaluation.js +9 -19
  197. package/dist/executors/anthropic-api.d.ts +0 -1
  198. package/dist/executors/anthropic-api.js +1 -2
  199. package/dist/executors/claude-cli.d.ts +0 -1
  200. package/dist/executors/claude-cli.js +0 -1
  201. package/dist/executors/claude-sdk-trace.d.ts +0 -1
  202. package/dist/executors/claude-sdk-trace.js +0 -1
  203. package/dist/executors/claude-sdk.d.ts +0 -1
  204. package/dist/executors/claude-sdk.js +0 -1
  205. package/dist/executors/codex-cli-trace.d.ts +0 -1
  206. package/dist/executors/codex-cli-trace.js +0 -1
  207. package/dist/executors/codex-cli.d.ts +0 -1
  208. package/dist/executors/codex-cli.js +0 -1
  209. package/dist/executors/codex-sdk.d.ts +0 -1
  210. package/dist/executors/codex-sdk.js +0 -1
  211. package/dist/executors/gemini.d.ts +0 -1
  212. package/dist/executors/gemini.js +0 -1
  213. package/dist/executors/index.d.ts +0 -1
  214. package/dist/executors/index.js +0 -1
  215. package/dist/executors/openai-api.d.ts +0 -1
  216. package/dist/executors/openai-api.js +0 -1
  217. package/dist/executors/runtime-fingerprint.d.ts +0 -1
  218. package/dist/executors/runtime-fingerprint.js +2 -3
  219. package/dist/executors/script.d.ts +0 -1
  220. package/dist/executors/script.js +0 -1
  221. package/dist/executors/shared.d.ts +0 -2
  222. package/dist/executors/shared.js +0 -1
  223. package/dist/grading/assertions.d.ts +0 -1
  224. package/dist/grading/assertions.js +0 -1
  225. package/dist/grading/debias-validate.d.ts +0 -1
  226. package/dist/grading/debias-validate.js +0 -1
  227. package/dist/grading/diagnostic.d.ts +0 -1
  228. package/dist/grading/diagnostic.js +0 -1
  229. package/dist/grading/gold-cli.d.ts +0 -1
  230. package/dist/grading/gold-cli.js +0 -1
  231. package/dist/grading/gold-dataset.d.ts +0 -1
  232. package/dist/grading/gold-dataset.js +0 -1
  233. package/dist/grading/human-gold.d.ts +0 -1
  234. package/dist/grading/human-gold.js +0 -1
  235. package/dist/grading/index.d.ts +0 -1
  236. package/dist/grading/index.js +0 -1
  237. package/dist/grading/judge.d.ts +0 -1
  238. package/dist/grading/judge.js +0 -1
  239. package/dist/grading/layered-scores.d.ts +0 -1
  240. package/dist/grading/layered-scores.js +0 -1
  241. package/dist/inputs/content-hash.d.ts +28 -0
  242. package/dist/inputs/content-hash.js +106 -0
  243. package/dist/inputs/eval-config.d.ts +0 -1
  244. package/dist/inputs/eval-config.js +44 -11
  245. package/dist/inputs/load-samples.d.ts +0 -1
  246. package/dist/inputs/load-samples.js +0 -1
  247. package/dist/inputs/materialize-copy.d.ts +37 -0
  248. package/dist/inputs/materialize-copy.js +193 -0
  249. package/dist/inputs/mcp-resolver.d.ts +0 -1
  250. package/dist/inputs/mcp-resolver.js +0 -1
  251. package/dist/inputs/skill-loader.d.ts +145 -12
  252. package/dist/inputs/skill-loader.js +476 -60
  253. package/dist/inputs/source-resolver.d.ts +35 -0
  254. package/dist/inputs/source-resolver.js +105 -0
  255. package/dist/inputs/url-fetcher.d.ts +0 -1
  256. package/dist/inputs/url-fetcher.js +0 -1
  257. package/dist/managed/evidence.d.ts +22 -0
  258. package/dist/managed/evidence.js +143 -0
  259. package/dist/managed/index.d.ts +6 -0
  260. package/dist/managed/index.js +6 -0
  261. package/dist/managed/store.d.ts +72 -0
  262. package/dist/managed/store.js +224 -0
  263. package/dist/observability/experience-frontmatter.d.ts +0 -1
  264. package/dist/observability/experience-frontmatter.js +0 -1
  265. package/dist/observability/experience.d.ts +1 -2
  266. package/dist/observability/experience.js +1 -2
  267. package/dist/observability/feedback-matchers.d.ts +0 -1
  268. package/dist/observability/feedback-matchers.js +0 -1
  269. package/dist/observability/feedback-projection.d.ts +0 -1
  270. package/dist/observability/feedback-projection.js +0 -1
  271. package/dist/observability/inbox-view-model.d.ts +0 -1
  272. package/dist/observability/inbox-view-model.js +0 -1
  273. package/dist/observability/inbox.d.ts +0 -1
  274. package/dist/observability/inbox.js +2 -3
  275. package/dist/observability/problem-patterns.d.ts +0 -1
  276. package/dist/observability/problem-patterns.js +0 -1
  277. package/dist/observability/resolved-review.d.ts +0 -1
  278. package/dist/observability/resolved-review.js +4 -5
  279. package/dist/observability/review-state.d.ts +0 -1
  280. package/dist/observability/review-state.js +3 -4
  281. package/dist/observability/skill-chain-advisories.d.ts +0 -1
  282. package/dist/observability/skill-chain-advisories.js +0 -1
  283. package/dist/observability/skill-chain.d.ts +0 -1
  284. package/dist/observability/skill-chain.js +5 -6
  285. package/dist/observability/skill-health-analyzer.d.ts +0 -1
  286. package/dist/observability/skill-health-analyzer.js +0 -1
  287. package/dist/observability/soft-standards/constants.d.ts +0 -1
  288. package/dist/observability/soft-standards/constants.js +0 -1
  289. package/dist/observability/soft-standards/index.d.ts +0 -1
  290. package/dist/observability/soft-standards/index.js +0 -1
  291. package/dist/observability/soft-standards/llm-extractor.d.ts +0 -1
  292. package/dist/observability/soft-standards/llm-extractor.js +7 -8
  293. package/dist/observability/soft-standards/runtime-evaluator.d.ts +0 -1
  294. package/dist/observability/soft-standards/runtime-evaluator.js +2 -3
  295. package/dist/observability/soft-standards/skill-standards-store.d.ts +0 -1
  296. package/dist/observability/soft-standards/skill-standards-store.js +5 -6
  297. package/dist/observability/soft-standards/types.d.ts +10 -11
  298. package/dist/observability/soft-standards/types.js +0 -1
  299. package/dist/observability/text-signals.d.ts +0 -1
  300. package/dist/observability/text-signals.js +0 -1
  301. package/dist/observability/trace-adapter.d.ts +0 -1
  302. package/dist/observability/trace-adapter.js +0 -1
  303. package/dist/observability/trace-attribution.d.ts +0 -1
  304. package/dist/observability/trace-attribution.js +0 -1
  305. package/dist/observability/trace-segmenter.d.ts +0 -1
  306. package/dist/observability/trace-segmenter.js +0 -1
  307. package/dist/observability/trace-source.d.ts +0 -1
  308. package/dist/observability/trace-source.js +0 -1
  309. package/dist/renderer/html-renderer.d.ts +0 -1
  310. package/dist/renderer/html-renderer.js +4 -5
  311. package/dist/renderer/layout.d.ts +0 -1
  312. package/dist/renderer/layout.js +2 -3
  313. package/dist/renderer/observation-inbox/helpers.d.ts +0 -1
  314. package/dist/renderer/observation-inbox/helpers.js +0 -1
  315. package/dist/renderer/observation-inbox/styles.d.ts +0 -1
  316. package/dist/renderer/observation-inbox/styles.js +0 -1
  317. package/dist/renderer/observation-inbox-renderer.d.ts +0 -1
  318. package/dist/renderer/observation-inbox-renderer.js +13 -14
  319. package/dist/renderer/skill-detail-renderer.d.ts +0 -1
  320. package/dist/renderer/skill-detail-renderer.js +3 -4
  321. package/dist/renderer/skill-health-renderer.d.ts +0 -1
  322. package/dist/renderer/skill-health-renderer.js +0 -1
  323. package/dist/renderer/skill-list-renderer.d.ts +0 -1
  324. package/dist/renderer/skill-list-renderer.js +0 -1
  325. package/dist/renderer/summary.d.ts +0 -1
  326. package/dist/renderer/summary.js +1 -2
  327. package/dist/renderer/table.d.ts +0 -1
  328. package/dist/renderer/table.js +0 -1
  329. package/dist/renderer/test-view.d.ts +0 -1
  330. package/dist/renderer/test-view.js +0 -1
  331. package/dist/renderer/trends.d.ts +0 -1
  332. package/dist/renderer/trends.js +0 -1
  333. package/dist/server/job-store.d.ts +0 -1
  334. package/dist/server/job-store.js +0 -1
  335. package/dist/server/report-server.d.ts +0 -1
  336. package/dist/server/report-server.js +1 -2
  337. package/dist/server/report-store.d.ts +1 -2
  338. package/dist/server/report-store.js +6 -7
  339. package/dist/server/skill-index.d.ts +0 -1
  340. package/dist/server/skill-index.js +4 -5
  341. package/dist/server/skill-insights.d.ts +0 -1
  342. package/dist/server/skill-insights.js +8 -9
  343. package/dist/shared/hard-rules.d.ts +0 -1
  344. package/dist/shared/hard-rules.js +0 -1
  345. package/dist/shared/llm-prompts/index.d.ts +0 -1
  346. package/dist/shared/llm-prompts/index.js +0 -1
  347. package/dist/shared/llm-prompts/skill-health.d.ts +0 -1
  348. package/dist/shared/llm-prompts/skill-health.js +0 -1
  349. package/dist/shared/time.d.ts +0 -1
  350. package/dist/shared/time.js +0 -1
  351. package/dist/shared/tool-search.d.ts +0 -1
  352. package/dist/shared/tool-search.js +0 -1
  353. package/dist/types/dependencies.d.ts +0 -1
  354. package/dist/types/dependencies.js +0 -1
  355. package/dist/types/diagnosis.d.ts +0 -1
  356. package/dist/types/diagnosis.js +0 -1
  357. package/dist/types/doctor.d.ts +4 -5
  358. package/dist/types/doctor.js +2 -3
  359. package/dist/types/eval.d.ts +13 -2
  360. package/dist/types/eval.js +0 -1
  361. package/dist/types/executor.d.ts +1 -2
  362. package/dist/types/executor.js +0 -1
  363. package/dist/types/index.d.ts +1 -1
  364. package/dist/types/index.js +1 -1
  365. package/dist/types/judge.d.ts +0 -1
  366. package/dist/types/judge.js +0 -1
  367. package/dist/types/managed.d.ts +110 -0
  368. package/dist/types/managed.js +1 -0
  369. package/dist/types/observability.d.ts +5 -6
  370. package/dist/types/observability.js +0 -1
  371. package/dist/types/report.d.ts +19 -6
  372. package/dist/types/report.js +0 -1
  373. package/dist/types/shared.d.ts +0 -1
  374. package/dist/types/shared.js +0 -1
  375. package/dist/types/skill-index.d.ts +0 -1
  376. package/dist/types/skill-index.js +0 -1
  377. package/dist/types/storage.d.ts +0 -1
  378. package/dist/types/storage.js +0 -1
  379. package/dist/util/safe-slice.d.ts +0 -1
  380. package/dist/util/safe-slice.js +0 -1
  381. package/package.json +9 -4
  382. package/dist/analysis/coverage-analyzer.d.ts.map +0 -1
  383. package/dist/analysis/coverage-analyzer.js.map +0 -1
  384. package/dist/analysis/failure-clusterer.d.ts.map +0 -1
  385. package/dist/analysis/failure-clusterer.js.map +0 -1
  386. package/dist/analysis/gap-analyzer.d.ts.map +0 -1
  387. package/dist/analysis/gap-analyzer.js.map +0 -1
  388. package/dist/analysis/hedging-classifier.d.ts.map +0 -1
  389. package/dist/analysis/hedging-classifier.js.map +0 -1
  390. package/dist/analysis/report-diagnostics.d.ts.map +0 -1
  391. package/dist/analysis/report-diagnostics.js.map +0 -1
  392. package/dist/analysis/sample-diagnostics.d.ts.map +0 -1
  393. package/dist/analysis/sample-diagnostics.js.map +0 -1
  394. package/dist/analysis/saturation.d.ts.map +0 -1
  395. package/dist/analysis/saturation.js.map +0 -1
  396. package/dist/authoring/evolver.d.ts.map +0 -1
  397. package/dist/authoring/evolver.js.map +0 -1
  398. package/dist/authoring/generator.d.ts.map +0 -1
  399. package/dist/authoring/generator.js.map +0 -1
  400. package/dist/authoring/sample-fixer.d.ts.map +0 -1
  401. package/dist/authoring/sample-fixer.js.map +0 -1
  402. package/dist/cli/commands/doctor.d.ts.map +0 -1
  403. package/dist/cli/commands/doctor.js.map +0 -1
  404. package/dist/cli/commands/eval/gold/compare.d.ts.map +0 -1
  405. package/dist/cli/commands/eval/gold/compare.js.map +0 -1
  406. package/dist/cli/commands/eval/gold/index.d.ts.map +0 -1
  407. package/dist/cli/commands/eval/gold/index.js.map +0 -1
  408. package/dist/cli/commands/eval/gold/init.d.ts.map +0 -1
  409. package/dist/cli/commands/eval/gold/init.js.map +0 -1
  410. package/dist/cli/commands/eval/gold/validate.d.ts.map +0 -1
  411. package/dist/cli/commands/eval/gold/validate.js.map +0 -1
  412. package/dist/cli/commands/eval/index.d.ts.map +0 -1
  413. package/dist/cli/commands/eval/index.js.map +0 -1
  414. package/dist/cli/commands/evolve.d.ts.map +0 -1
  415. package/dist/cli/commands/evolve.js.map +0 -1
  416. package/dist/cli/commands/init.d.ts.map +0 -1
  417. package/dist/cli/commands/init.js.map +0 -1
  418. package/dist/cli/commands/observe/inbox.d.ts.map +0 -1
  419. package/dist/cli/commands/observe/inbox.js.map +0 -1
  420. package/dist/cli/commands/observe/index.d.ts.map +0 -1
  421. package/dist/cli/commands/observe/index.js.map +0 -1
  422. package/dist/cli/commands/observe/ingest.d.ts.map +0 -1
  423. package/dist/cli/commands/observe/ingest.js.map +0 -1
  424. package/dist/cli/commands/observe/show.d.ts.map +0 -1
  425. package/dist/cli/commands/observe/show.js.map +0 -1
  426. package/dist/cli/commands/sample.d.ts.map +0 -1
  427. package/dist/cli/commands/sample.js.map +0 -1
  428. package/dist/cli/commands/studio.d.ts.map +0 -1
  429. package/dist/cli/commands/studio.js.map +0 -1
  430. package/dist/cli/index.d.ts.map +0 -1
  431. package/dist/cli/index.js.map +0 -1
  432. package/dist/cli/lib/cli-exit.d.ts.map +0 -1
  433. package/dist/cli/lib/cli-exit.js.map +0 -1
  434. package/dist/cli/lib/cmd-flags.d.ts.map +0 -1
  435. package/dist/cli/lib/cmd-flags.js.map +0 -1
  436. package/dist/cli/lib/i18n-dict/common.d.ts.map +0 -1
  437. package/dist/cli/lib/i18n-dict/common.js.map +0 -1
  438. package/dist/cli/lib/i18n-dict/evolve.d.ts.map +0 -1
  439. package/dist/cli/lib/i18n-dict/evolve.js.map +0 -1
  440. package/dist/cli/lib/i18n-dict/gen.d.ts.map +0 -1
  441. package/dist/cli/lib/i18n-dict/gen.js.map +0 -1
  442. package/dist/cli/lib/i18n-dict/help.d.ts.map +0 -1
  443. package/dist/cli/lib/i18n-dict/help.js.map +0 -1
  444. package/dist/cli/lib/i18n-dict/init.d.ts.map +0 -1
  445. package/dist/cli/lib/i18n-dict/init.js.map +0 -1
  446. package/dist/cli/lib/i18n-dict/run.d.ts.map +0 -1
  447. package/dist/cli/lib/i18n-dict/run.js.map +0 -1
  448. package/dist/cli/lib/i18n-dict/types.d.ts.map +0 -1
  449. package/dist/cli/lib/i18n-dict/types.js.map +0 -1
  450. package/dist/cli/lib/i18n-dict.d.ts.map +0 -1
  451. package/dist/cli/lib/i18n-dict.js.map +0 -1
  452. package/dist/cli/lib/i18n.d.ts.map +0 -1
  453. package/dist/cli/lib/i18n.js.map +0 -1
  454. package/dist/cli/lib/parse-run-config/judge-models.d.ts.map +0 -1
  455. package/dist/cli/lib/parse-run-config/judge-models.js.map +0 -1
  456. package/dist/cli/lib/parse-run-config/samples-discovery.d.ts.map +0 -1
  457. package/dist/cli/lib/parse-run-config/samples-discovery.js.map +0 -1
  458. package/dist/cli/lib/parse-run-config/variant-resolution.d.ts.map +0 -1
  459. package/dist/cli/lib/parse-run-config/variant-resolution.js.map +0 -1
  460. package/dist/cli/lib/parse-run-config.d.ts.map +0 -1
  461. package/dist/cli/lib/parse-run-config.js.map +0 -1
  462. package/dist/cli/lib/progress.d.ts.map +0 -1
  463. package/dist/cli/lib/progress.js.map +0 -1
  464. package/dist/cli/lib/resolve-skill-input.d.ts.map +0 -1
  465. package/dist/cli/lib/resolve-skill-input.js.map +0 -1
  466. package/dist/cli/lib/run-tally.d.ts.map +0 -1
  467. package/dist/cli/lib/run-tally.js.map +0 -1
  468. package/dist/cli/lib/shared.d.ts.map +0 -1
  469. package/dist/cli/lib/shared.js.map +0 -1
  470. package/dist/cli/lib/update-check.d.ts.map +0 -1
  471. package/dist/cli/lib/update-check.js.map +0 -1
  472. package/dist/cli/lib/update-fetch-worker.d.ts.map +0 -1
  473. package/dist/cli/lib/update-fetch-worker.js.map +0 -1
  474. package/dist/cli/oclif/base-command.d.ts.map +0 -1
  475. package/dist/cli/oclif/base-command.js.map +0 -1
  476. package/dist/cli/oclif/help.d.ts.map +0 -1
  477. package/dist/cli/oclif/help.js.map +0 -1
  478. package/dist/cli/oclif/i18n.d.ts.map +0 -1
  479. package/dist/cli/oclif/i18n.js.map +0 -1
  480. package/dist/cli/oclif/parsers.d.ts.map +0 -1
  481. package/dist/cli/oclif/parsers.js.map +0 -1
  482. package/dist/cli/oclif/projection.d.ts.map +0 -1
  483. package/dist/cli/oclif/projection.js.map +0 -1
  484. package/dist/cli/oclif/run.d.ts.map +0 -1
  485. package/dist/cli/oclif/run.js.map +0 -1
  486. package/dist/diagnosis/observe-mapper.d.ts.map +0 -1
  487. package/dist/diagnosis/observe-mapper.js.map +0 -1
  488. package/dist/diagnosis/observe-producer.d.ts.map +0 -1
  489. package/dist/diagnosis/observe-producer.js.map +0 -1
  490. package/dist/diagnosis/studio-projection.d.ts.map +0 -1
  491. package/dist/diagnosis/studio-projection.js.map +0 -1
  492. package/dist/diagnosis/types.d.ts.map +0 -1
  493. package/dist/diagnosis/types.js.map +0 -1
  494. package/dist/doctor/fixer.d.ts.map +0 -1
  495. package/dist/doctor/fixer.js.map +0 -1
  496. package/dist/doctor/health/builtin-dimensions.d.ts.map +0 -1
  497. package/dist/doctor/health/builtin-dimensions.js.map +0 -1
  498. package/dist/doctor/health/composer.d.ts.map +0 -1
  499. package/dist/doctor/health/composer.js.map +0 -1
  500. package/dist/doctor/health/dimension-registry.d.ts.map +0 -1
  501. package/dist/doctor/health/dimension-registry.js.map +0 -1
  502. package/dist/doctor/health/dimension-spec.d.ts.map +0 -1
  503. package/dist/doctor/health/dimension-spec.js.map +0 -1
  504. package/dist/doctor/health/load-custom-dimensions.d.ts.map +0 -1
  505. package/dist/doctor/health/load-custom-dimensions.js.map +0 -1
  506. package/dist/doctor/health/parser.d.ts.map +0 -1
  507. package/dist/doctor/health/parser.js.map +0 -1
  508. package/dist/doctor/health/prompt-builder.d.ts.map +0 -1
  509. package/dist/doctor/health/prompt-builder.js.map +0 -1
  510. package/dist/doctor/health/register.d.ts.map +0 -1
  511. package/dist/doctor/health/register.js.map +0 -1
  512. package/dist/doctor/index.d.ts.map +0 -1
  513. package/dist/doctor/index.js.map +0 -1
  514. package/dist/doctor/messages.d.ts.map +0 -1
  515. package/dist/doctor/messages.js.map +0 -1
  516. package/dist/doctor/preflight.d.ts.map +0 -1
  517. package/dist/doctor/preflight.js.map +0 -1
  518. package/dist/doctor/renderer.d.ts.map +0 -1
  519. package/dist/doctor/renderer.js.map +0 -1
  520. package/dist/doctor/rules.d.ts.map +0 -1
  521. package/dist/doctor/rules.js.map +0 -1
  522. package/dist/eval-core/bootstrap.d.ts.map +0 -1
  523. package/dist/eval-core/bootstrap.js.map +0 -1
  524. package/dist/eval-core/cache.d.ts.map +0 -1
  525. package/dist/eval-core/cache.js.map +0 -1
  526. package/dist/eval-core/comparability.d.ts.map +0 -1
  527. package/dist/eval-core/comparability.js.map +0 -1
  528. package/dist/eval-core/dependency-checker.d.ts.map +0 -1
  529. package/dist/eval-core/dependency-checker.js.map +0 -1
  530. package/dist/eval-core/evaluation-execution.d.ts.map +0 -1
  531. package/dist/eval-core/evaluation-execution.js.map +0 -1
  532. package/dist/eval-core/evaluation-job.d.ts.map +0 -1
  533. package/dist/eval-core/evaluation-job.js.map +0 -1
  534. package/dist/eval-core/evaluation-reporting.d.ts.map +0 -1
  535. package/dist/eval-core/evaluation-reporting.js.map +0 -1
  536. package/dist/eval-core/execution-strategy.d.ts.map +0 -1
  537. package/dist/eval-core/execution-strategy.js.map +0 -1
  538. package/dist/eval-core/fact-checker.d.ts.map +0 -1
  539. package/dist/eval-core/fact-checker.js.map +0 -1
  540. package/dist/eval-core/layer-gates.d.ts.map +0 -1
  541. package/dist/eval-core/layer-gates.js.map +0 -1
  542. package/dist/eval-core/mocks-runtime.d.ts.map +0 -1
  543. package/dist/eval-core/mocks-runtime.js.map +0 -1
  544. package/dist/eval-core/schema.d.ts.map +0 -1
  545. package/dist/eval-core/schema.js.map +0 -1
  546. package/dist/eval-core/statistics.d.ts.map +0 -1
  547. package/dist/eval-core/statistics.js.map +0 -1
  548. package/dist/eval-core/task-planner.d.ts.map +0 -1
  549. package/dist/eval-core/task-planner.js.map +0 -1
  550. package/dist/eval-core/verdict.d.ts.map +0 -1
  551. package/dist/eval-core/verdict.js.map +0 -1
  552. package/dist/eval-workflows/batch-evaluation-workflow.d.ts.map +0 -1
  553. package/dist/eval-workflows/batch-evaluation-workflow.js.map +0 -1
  554. package/dist/eval-workflows/evaluation-pipeline/preflight-warnings.d.ts.map +0 -1
  555. package/dist/eval-workflows/evaluation-pipeline/preflight-warnings.js.map +0 -1
  556. package/dist/eval-workflows/evaluation-pipeline/report-finalize.d.ts.map +0 -1
  557. package/dist/eval-workflows/evaluation-pipeline/report-finalize.js.map +0 -1
  558. package/dist/eval-workflows/evaluation-pipeline/run-state.d.ts.map +0 -1
  559. package/dist/eval-workflows/evaluation-pipeline/run-state.js.map +0 -1
  560. package/dist/eval-workflows/evaluation-pipeline/test-set-hash.d.ts.map +0 -1
  561. package/dist/eval-workflows/evaluation-pipeline/test-set-hash.js.map +0 -1
  562. package/dist/eval-workflows/evaluation-pipeline.d.ts.map +0 -1
  563. package/dist/eval-workflows/evaluation-pipeline.js.map +0 -1
  564. package/dist/eval-workflows/evaluation-preparation.d.ts.map +0 -1
  565. package/dist/eval-workflows/evaluation-preparation.js.map +0 -1
  566. package/dist/eval-workflows/messages.d.ts.map +0 -1
  567. package/dist/eval-workflows/messages.js.map +0 -1
  568. package/dist/eval-workflows/run-evaluation.d.ts.map +0 -1
  569. package/dist/eval-workflows/run-evaluation.js.map +0 -1
  570. package/dist/executors/anthropic-api.d.ts.map +0 -1
  571. package/dist/executors/anthropic-api.js.map +0 -1
  572. package/dist/executors/claude-cli.d.ts.map +0 -1
  573. package/dist/executors/claude-cli.js.map +0 -1
  574. package/dist/executors/claude-sdk-trace.d.ts.map +0 -1
  575. package/dist/executors/claude-sdk-trace.js.map +0 -1
  576. package/dist/executors/claude-sdk.d.ts.map +0 -1
  577. package/dist/executors/claude-sdk.js.map +0 -1
  578. package/dist/executors/codex-cli-trace.d.ts.map +0 -1
  579. package/dist/executors/codex-cli-trace.js.map +0 -1
  580. package/dist/executors/codex-cli.d.ts.map +0 -1
  581. package/dist/executors/codex-cli.js.map +0 -1
  582. package/dist/executors/codex-sdk.d.ts.map +0 -1
  583. package/dist/executors/codex-sdk.js.map +0 -1
  584. package/dist/executors/gemini.d.ts.map +0 -1
  585. package/dist/executors/gemini.js.map +0 -1
  586. package/dist/executors/index.d.ts.map +0 -1
  587. package/dist/executors/index.js.map +0 -1
  588. package/dist/executors/openai-api.d.ts.map +0 -1
  589. package/dist/executors/openai-api.js.map +0 -1
  590. package/dist/executors/runtime-fingerprint.d.ts.map +0 -1
  591. package/dist/executors/runtime-fingerprint.js.map +0 -1
  592. package/dist/executors/script.d.ts.map +0 -1
  593. package/dist/executors/script.js.map +0 -1
  594. package/dist/executors/shared.d.ts.map +0 -1
  595. package/dist/executors/shared.js.map +0 -1
  596. package/dist/grading/assertions.d.ts.map +0 -1
  597. package/dist/grading/assertions.js.map +0 -1
  598. package/dist/grading/debias-validate.d.ts.map +0 -1
  599. package/dist/grading/debias-validate.js.map +0 -1
  600. package/dist/grading/diagnostic.d.ts.map +0 -1
  601. package/dist/grading/diagnostic.js.map +0 -1
  602. package/dist/grading/gold-cli.d.ts.map +0 -1
  603. package/dist/grading/gold-cli.js.map +0 -1
  604. package/dist/grading/gold-dataset.d.ts.map +0 -1
  605. package/dist/grading/gold-dataset.js.map +0 -1
  606. package/dist/grading/human-gold.d.ts.map +0 -1
  607. package/dist/grading/human-gold.js.map +0 -1
  608. package/dist/grading/index.d.ts.map +0 -1
  609. package/dist/grading/index.js.map +0 -1
  610. package/dist/grading/judge.d.ts.map +0 -1
  611. package/dist/grading/judge.js.map +0 -1
  612. package/dist/grading/layered-scores.d.ts.map +0 -1
  613. package/dist/grading/layered-scores.js.map +0 -1
  614. package/dist/inputs/eval-config.d.ts.map +0 -1
  615. package/dist/inputs/eval-config.js.map +0 -1
  616. package/dist/inputs/load-samples.d.ts.map +0 -1
  617. package/dist/inputs/load-samples.js.map +0 -1
  618. package/dist/inputs/mcp-resolver.d.ts.map +0 -1
  619. package/dist/inputs/mcp-resolver.js.map +0 -1
  620. package/dist/inputs/skill-loader.d.ts.map +0 -1
  621. package/dist/inputs/skill-loader.js.map +0 -1
  622. package/dist/inputs/url-fetcher.d.ts.map +0 -1
  623. package/dist/inputs/url-fetcher.js.map +0 -1
  624. package/dist/observability/experience-frontmatter.d.ts.map +0 -1
  625. package/dist/observability/experience-frontmatter.js.map +0 -1
  626. package/dist/observability/experience.d.ts.map +0 -1
  627. package/dist/observability/experience.js.map +0 -1
  628. package/dist/observability/feedback-matchers.d.ts.map +0 -1
  629. package/dist/observability/feedback-matchers.js.map +0 -1
  630. package/dist/observability/feedback-projection.d.ts.map +0 -1
  631. package/dist/observability/feedback-projection.js.map +0 -1
  632. package/dist/observability/inbox-view-model.d.ts.map +0 -1
  633. package/dist/observability/inbox-view-model.js.map +0 -1
  634. package/dist/observability/inbox.d.ts.map +0 -1
  635. package/dist/observability/inbox.js.map +0 -1
  636. package/dist/observability/problem-patterns.d.ts.map +0 -1
  637. package/dist/observability/problem-patterns.js.map +0 -1
  638. package/dist/observability/resolved-review.d.ts.map +0 -1
  639. package/dist/observability/resolved-review.js.map +0 -1
  640. package/dist/observability/review-state.d.ts.map +0 -1
  641. package/dist/observability/review-state.js.map +0 -1
  642. package/dist/observability/skill-chain-advisories.d.ts.map +0 -1
  643. package/dist/observability/skill-chain-advisories.js.map +0 -1
  644. package/dist/observability/skill-chain.d.ts.map +0 -1
  645. package/dist/observability/skill-chain.js.map +0 -1
  646. package/dist/observability/skill-health-analyzer.d.ts.map +0 -1
  647. package/dist/observability/skill-health-analyzer.js.map +0 -1
  648. package/dist/observability/soft-standards/constants.d.ts.map +0 -1
  649. package/dist/observability/soft-standards/constants.js.map +0 -1
  650. package/dist/observability/soft-standards/index.d.ts.map +0 -1
  651. package/dist/observability/soft-standards/index.js.map +0 -1
  652. package/dist/observability/soft-standards/llm-extractor.d.ts.map +0 -1
  653. package/dist/observability/soft-standards/llm-extractor.js.map +0 -1
  654. package/dist/observability/soft-standards/runtime-evaluator.d.ts.map +0 -1
  655. package/dist/observability/soft-standards/runtime-evaluator.js.map +0 -1
  656. package/dist/observability/soft-standards/skill-standards-store.d.ts.map +0 -1
  657. package/dist/observability/soft-standards/skill-standards-store.js.map +0 -1
  658. package/dist/observability/soft-standards/types.d.ts.map +0 -1
  659. package/dist/observability/soft-standards/types.js.map +0 -1
  660. package/dist/observability/text-signals.d.ts.map +0 -1
  661. package/dist/observability/text-signals.js.map +0 -1
  662. package/dist/observability/trace-adapter.d.ts.map +0 -1
  663. package/dist/observability/trace-adapter.js.map +0 -1
  664. package/dist/observability/trace-attribution.d.ts.map +0 -1
  665. package/dist/observability/trace-attribution.js.map +0 -1
  666. package/dist/observability/trace-segmenter.d.ts.map +0 -1
  667. package/dist/observability/trace-segmenter.js.map +0 -1
  668. package/dist/observability/trace-source.d.ts.map +0 -1
  669. package/dist/observability/trace-source.js.map +0 -1
  670. package/dist/renderer/html-renderer.d.ts.map +0 -1
  671. package/dist/renderer/html-renderer.js.map +0 -1
  672. package/dist/renderer/layout.d.ts.map +0 -1
  673. package/dist/renderer/layout.js.map +0 -1
  674. package/dist/renderer/observation-inbox/helpers.d.ts.map +0 -1
  675. package/dist/renderer/observation-inbox/helpers.js.map +0 -1
  676. package/dist/renderer/observation-inbox/styles.d.ts.map +0 -1
  677. package/dist/renderer/observation-inbox/styles.js.map +0 -1
  678. package/dist/renderer/observation-inbox-renderer.d.ts.map +0 -1
  679. package/dist/renderer/observation-inbox-renderer.js.map +0 -1
  680. package/dist/renderer/skill-detail-renderer.d.ts.map +0 -1
  681. package/dist/renderer/skill-detail-renderer.js.map +0 -1
  682. package/dist/renderer/skill-health-renderer.d.ts.map +0 -1
  683. package/dist/renderer/skill-health-renderer.js.map +0 -1
  684. package/dist/renderer/skill-list-renderer.d.ts.map +0 -1
  685. package/dist/renderer/skill-list-renderer.js.map +0 -1
  686. package/dist/renderer/summary.d.ts.map +0 -1
  687. package/dist/renderer/summary.js.map +0 -1
  688. package/dist/renderer/table.d.ts.map +0 -1
  689. package/dist/renderer/table.js.map +0 -1
  690. package/dist/renderer/test-view.d.ts.map +0 -1
  691. package/dist/renderer/test-view.js.map +0 -1
  692. package/dist/renderer/trends.d.ts.map +0 -1
  693. package/dist/renderer/trends.js.map +0 -1
  694. package/dist/server/job-store.d.ts.map +0 -1
  695. package/dist/server/job-store.js.map +0 -1
  696. package/dist/server/report-server.d.ts.map +0 -1
  697. package/dist/server/report-server.js.map +0 -1
  698. package/dist/server/report-store.d.ts.map +0 -1
  699. package/dist/server/report-store.js.map +0 -1
  700. package/dist/server/skill-index.d.ts.map +0 -1
  701. package/dist/server/skill-index.js.map +0 -1
  702. package/dist/server/skill-insights.d.ts.map +0 -1
  703. package/dist/server/skill-insights.js.map +0 -1
  704. package/dist/shared/hard-rules.d.ts.map +0 -1
  705. package/dist/shared/hard-rules.js.map +0 -1
  706. package/dist/shared/llm-prompts/index.d.ts.map +0 -1
  707. package/dist/shared/llm-prompts/index.js.map +0 -1
  708. package/dist/shared/llm-prompts/skill-health.d.ts.map +0 -1
  709. package/dist/shared/llm-prompts/skill-health.js.map +0 -1
  710. package/dist/shared/time.d.ts.map +0 -1
  711. package/dist/shared/time.js.map +0 -1
  712. package/dist/shared/tool-search.d.ts.map +0 -1
  713. package/dist/shared/tool-search.js.map +0 -1
  714. package/dist/types/dependencies.d.ts.map +0 -1
  715. package/dist/types/dependencies.js.map +0 -1
  716. package/dist/types/diagnosis.d.ts.map +0 -1
  717. package/dist/types/diagnosis.js.map +0 -1
  718. package/dist/types/doctor.d.ts.map +0 -1
  719. package/dist/types/doctor.js.map +0 -1
  720. package/dist/types/eval.d.ts.map +0 -1
  721. package/dist/types/eval.js.map +0 -1
  722. package/dist/types/executor.d.ts.map +0 -1
  723. package/dist/types/executor.js.map +0 -1
  724. package/dist/types/index.d.ts.map +0 -1
  725. package/dist/types/index.js.map +0 -1
  726. package/dist/types/judge.d.ts.map +0 -1
  727. package/dist/types/judge.js.map +0 -1
  728. package/dist/types/observability.d.ts.map +0 -1
  729. package/dist/types/observability.js.map +0 -1
  730. package/dist/types/report.d.ts.map +0 -1
  731. package/dist/types/report.js.map +0 -1
  732. package/dist/types/shared.d.ts.map +0 -1
  733. package/dist/types/shared.js.map +0 -1
  734. package/dist/types/skill-index.d.ts.map +0 -1
  735. package/dist/types/skill-index.js.map +0 -1
  736. package/dist/types/storage.d.ts.map +0 -1
  737. package/dist/types/storage.js.map +0 -1
  738. package/dist/util/safe-slice.d.ts.map +0 -1
  739. package/dist/util/safe-slice.js.map +0 -1
@@ -18,7 +18,7 @@ export interface SkillChainAdvisorySource {
18
18
  export interface ObservationRuntimeCheckSource {
19
19
  skillName: string;
20
20
  id: string;
21
- kind: 'hardRule' | 'workflowNode';
21
+ nodeKind: 'hardRule' | 'workflowNode';
22
22
  status: 'passed' | 'attention' | 'manual_review';
23
23
  title?: string;
24
24
  expectation?: string;
@@ -53,7 +53,7 @@ export interface ExperienceReviewerReportFindingSource {
53
53
  export interface SkillDerivedStandardSource {
54
54
  skillName: string;
55
55
  id: string;
56
- kind: 'hard_rule_candidate' | 'workflow_candidate';
56
+ standardKind: 'hard_rule_candidate' | 'workflow_candidate';
57
57
  status: 'pending_review' | 'author_confirmed' | 'rejected' | 'stale';
58
58
  title: string;
59
59
  body?: string;
@@ -65,4 +65,3 @@ export interface SkillDerivedStandardSource {
65
65
  }
66
66
  export declare function buildObserveDiagnostics(input: ObserveDiagnosisInput): DiagnosisBundle;
67
67
  export declare function maxLifecycle(a: DiagnosisLifecycle, b: DiagnosisLifecycle): DiagnosisLifecycle;
68
- //# sourceMappingURL=observe-mapper.d.ts.map
@@ -71,13 +71,13 @@ function advisoryToDiagnosis(generatedAt, advisory) {
71
71
  function runtimeCheckToDiagnosis(generatedAt, check) {
72
72
  if (check.status === 'passed')
73
73
  return null;
74
- const target = check.kind === 'hardRule' ? `runtime:hardRule:${check.id}` : `runtime:workflowNode:${check.id}`;
74
+ const target = check.nodeKind === 'hardRule' ? `runtime:hardRule:${check.id}` : `runtime:workflowNode:${check.id}`;
75
75
  return makeDiagnosis(generatedAt, {
76
76
  skillName: check.skillName,
77
77
  type: 'runtime_issue',
78
- signal: check.kind === 'hardRule' ? 'runtime_hard_rule_review' : 'runtime_workflow_review',
78
+ signal: check.nodeKind === 'hardRule' ? 'runtime_hard_rule_review' : 'runtime_workflow_review',
79
79
  target,
80
- title: check.title ?? (check.kind === 'hardRule' ? 'Hard rule runtime check needs review' : 'Workflow runtime check needs review'),
80
+ title: check.title ?? (check.nodeKind === 'hardRule' ? 'Hard rule runtime check needs review' : 'Workflow runtime check needs review'),
81
81
  summary: check.reason ?? check.expectation,
82
82
  severity: check.status === 'manual_review' ? 'medium' : 'low',
83
83
  audience: 'reviewer',
@@ -135,14 +135,14 @@ function derivedStandardToDiagnosis(generatedAt, standard) {
135
135
  return makeDiagnosis(generatedAt, {
136
136
  skillName: standard.skillName,
137
137
  type: 'standard_candidate',
138
- signal: standard.kind,
139
- target: `standard:${standard.kind}:${standard.id}`,
138
+ signal: standard.standardKind,
139
+ target: `standard:${standard.standardKind}:${standard.id}`,
140
140
  title: standard.title,
141
141
  summary: standard.body,
142
142
  severity: standard.status === 'author_confirmed' ? 'info' : 'low',
143
143
  audience: 'skill-author',
144
144
  lifecycle: lifecycleFromStandardStatus(standard.status),
145
- sourceKind: standard.kind,
145
+ sourceKind: standard.standardKind,
146
146
  sourceId: standard.id,
147
147
  evidenceRefs: [],
148
148
  producer: standard.source === 'manual' ? 'manual' : 'llm_soft',
@@ -273,4 +273,3 @@ function severityRank(severity) {
273
273
  function hashParts(...parts) {
274
274
  return createHash('sha256').update(parts.join('\u0000')).digest('hex').slice(0, 16);
275
275
  }
276
- //# sourceMappingURL=observe-mapper.js.map
@@ -6,4 +6,3 @@ export interface BuildObserveDiagnosticsFromReportOptions {
6
6
  skillChains?: Record<string, ObservationSkillChain>;
7
7
  }
8
8
  export declare function buildObserveDiagnosticsFromReport(report: ObservationInboxReport, options?: BuildObserveDiagnosticsFromReportOptions): DiagnosisBundle;
9
- //# sourceMappingURL=observe-producer.d.ts.map
@@ -112,7 +112,7 @@ function chainRuntimeChecks(chain) {
112
112
  .map((check) => ({
113
113
  skillName: chain.skillName,
114
114
  id: check.id,
115
- kind: check.kind,
115
+ nodeKind: check.nodeKind,
116
116
  status: check.status,
117
117
  title: check.title,
118
118
  expectation: check.expectation,
@@ -123,8 +123,8 @@ function chainRuntimeChecks(chain) {
123
123
  }
124
124
  function evidenceRefsFromRuntimeCheck(check, skillName) {
125
125
  return (check.evidenceSnippets ?? []).map((snippet, index) => ({
126
- id: `runtime:${skillName}:${check.kind}:${check.id}:${index}`,
127
- kind: check.kind,
126
+ id: `runtime:${skillName}:${check.nodeKind}:${check.id}:${index}`,
127
+ kind: check.nodeKind,
128
128
  label: check.title,
129
129
  snippet,
130
130
  }));
@@ -196,4 +196,3 @@ function evidenceRef(ref) {
196
196
  snippet: ref.snippet,
197
197
  };
198
198
  }
199
- //# sourceMappingURL=observe-producer.js.map
@@ -4,4 +4,3 @@ export declare function buildStudioDiagnosisSummary(bundle?: DiagnosisBundle): S
4
4
  export declare function countDiagnostics(bundle?: DiagnosisBundle): number;
5
5
  export declare function mergeDiagnosisBundles(bundles: DiagnosisBundle[], generatedAt?: string): DiagnosisBundle;
6
6
  export declare function activeStudioDiagnostics(bundle?: DiagnosisBundle): Diagnosis[];
7
- //# sourceMappingURL=studio-projection.d.ts.map
@@ -81,4 +81,3 @@ function severityRank(severity) {
81
81
  return 2;
82
82
  return 1;
83
83
  }
84
- //# sourceMappingURL=studio-projection.js.map
@@ -1,4 +1,3 @@
1
1
  export type { Diagnosis, DiagnosisAudience, DiagnosisBundle, DiagnosisEvidenceRef, DiagnosisLifecycle, DiagnosisOccurrence, DiagnosisPatch, DiagnosisScope, DiagnosisSeverity, DiagnosisSource, DiagnosisSourceCoverage, DiagnosisType, StudioDiagnosisSummary, } from '../types/diagnosis.js';
2
2
  import type { DiagnosisLifecycle } from '../types/diagnosis.js';
3
3
  export declare function isActiveDiagnosisLifecycle(lifecycle: DiagnosisLifecycle): boolean;
4
- //# sourceMappingURL=types.d.ts.map
@@ -17,4 +17,3 @@ const ACTIVE_DIAGNOSIS_LIFECYCLES = new Set([
17
17
  export function isActiveDiagnosisLifecycle(lifecycle) {
18
18
  return ACTIVE_DIAGNOSIS_LIFECYCLES.has(lifecycle);
19
19
  }
20
- //# sourceMappingURL=types.js.map
@@ -9,4 +9,3 @@ export interface FixOptions {
9
9
  resolveSkillPath?: (reportPath: string) => string;
10
10
  }
11
11
  export declare function runDoctorFix(opts: FixOptions): Promise<boolean>;
12
- //# sourceMappingURL=fixer.d.ts.map
@@ -323,4 +323,3 @@ export async function runDoctorFix(opts) {
323
323
  }
324
324
  return changed;
325
325
  }
326
- //# sourceMappingURL=fixer.js.map
@@ -8,4 +8,3 @@
8
8
  */
9
9
  import type { HealthDimensionSpec } from './dimension-spec.js';
10
10
  export declare const BUILTIN_HEALTH_DIMENSIONS: HealthDimensionSpec[];
11
- //# sourceMappingURL=builtin-dimensions.d.ts.map
@@ -88,4 +88,3 @@ export const BUILTIN_HEALTH_DIMENSIONS = [
88
88
  注意:大多数 skill 即使没有示例,LLM 也能从指令描述中推断出正确用法。只有格式确实复杂且无法从描述中推断时才报。`,
89
89
  },
90
90
  ];
91
- //# sourceMappingURL=builtin-dimensions.js.map
@@ -16,4 +16,3 @@ import type { ComposerRule } from '../../types/doctor.js';
16
16
  export declare const SKILL_HEALTH_COMPOSER_ID = "skill_health";
17
17
  export type ExecutorFactory = (name: string) => ExecutorFn;
18
18
  export declare function makeSkillHealthComposer(execFactory?: ExecutorFactory): ComposerRule;
19
- //# sourceMappingURL=composer.d.ts.map
@@ -130,7 +130,7 @@ function listSiblingSkills(skillRoot) {
130
130
  export function makeSkillHealthComposer(execFactory = defaultExecutorFactory) {
131
131
  return {
132
132
  id: SKILL_HEALTH_COMPOSER_ID,
133
- kind: 'composer',
133
+ ruleKind: 'composer',
134
134
  severity: 'fatal',
135
135
  labelKey: 'cli.doctor.rule.skill_health_check',
136
136
  checkAll: (ctx) => composerCheckAll(ctx, execFactory),
@@ -293,4 +293,3 @@ function errorSummaryOutcome(ctx, phase, errMsg, extra = {}) {
293
293
  detail: { phase, error: errMsg, ...extra },
294
294
  };
295
295
  }
296
- //# sourceMappingURL=composer.js.map
@@ -10,4 +10,3 @@ import type { HealthDimensionSpec } from './dimension-spec.js';
10
10
  export declare function registerHealthDimension(spec: HealthDimensionSpec): void;
11
11
  export declare function getRegisteredHealthDimensions(): HealthDimensionSpec[];
12
12
  export declare function __resetHealthDimensionsForTest(): void;
13
- //# sourceMappingURL=dimension-registry.d.ts.map
@@ -25,4 +25,3 @@ export function __resetHealthDimensionsForTest() {
25
25
  dimensions.length = 0;
26
26
  seenIds.clear();
27
27
  }
28
- //# sourceMappingURL=dimension-registry.js.map
@@ -44,4 +44,3 @@ export interface HealthDimensionSpec {
44
44
  * 描述这一维度查什么、判定标准、example。 */
45
45
  promptSection: string;
46
46
  }
47
- //# sourceMappingURL=dimension-spec.d.ts.map
@@ -9,4 +9,3 @@
9
9
  * subtype 作为 finding 一级字段),后续可以加可选 hooks(parseFindings 等)。
10
10
  */
11
11
  export {};
12
- //# sourceMappingURL=dimension-spec.js.map
@@ -1,2 +1 @@
1
1
  export declare function loadAndRegisterCustomDimensions(filePath: string): number;
2
- //# sourceMappingURL=load-custom-dimensions.d.ts.map
@@ -28,4 +28,3 @@ export function loadAndRegisterCustomDimensions(filePath) {
28
28
  }
29
29
  return count;
30
30
  }
31
- //# sourceMappingURL=load-custom-dimensions.js.map
@@ -23,4 +23,3 @@ export interface HealthParseResult {
23
23
  /** 从 cleaned JSON 字串(extractJson 的输出)派发到各维度。 */
24
24
  export declare function parseHealthOutput(jsonText: string, dims: HealthDimensionSpec[]): HealthParseResult;
25
25
  export declare function deriveOverallHealth(byDimId: Map<string, HealthDimensionResult>): '良好' | '部分缺陷' | '严重缺陷';
26
- //# sourceMappingURL=parser.d.ts.map
@@ -225,4 +225,3 @@ export function deriveOverallHealth(byDimId) {
225
225
  return '部分缺陷';
226
226
  return '良好';
227
227
  }
228
- //# sourceMappingURL=parser.js.map
@@ -1,3 +1,2 @@
1
1
  export { buildHealthPrompt, } from '../../shared/llm-prompts/skill-health.js';
2
2
  export type { PromptInput, } from '../../shared/llm-prompts/skill-health.js';
3
- //# sourceMappingURL=prompt-builder.d.ts.map
@@ -1,2 +1 @@
1
1
  export { buildHealthPrompt, } from '../../shared/llm-prompts/skill-health.js';
2
- //# sourceMappingURL=prompt-builder.js.map
@@ -10,4 +10,3 @@
10
10
  * composer 跑之前注册即可(eg. 在 omk 配置 / plugin 入口里)。
11
11
  */
12
12
  export {};
13
- //# sourceMappingURL=register.d.ts.map
@@ -17,4 +17,3 @@ for (const spec of BUILTIN_HEALTH_DIMENSIONS) {
17
17
  registerHealthDimension(spec);
18
18
  }
19
19
  registerRule(makeSkillHealthComposer());
20
- //# sourceMappingURL=register.js.map
@@ -16,4 +16,3 @@ import type { Artifact, DoctorReport, DoctorRunOptions } from '../types/index.js
16
16
  */
17
17
  export declare function resolveDoctorTargets(target: string | null | undefined, cwd: string): Artifact[];
18
18
  export declare function runDoctor(opts: DoctorRunOptions): Promise<DoctorReport>;
19
- //# sourceMappingURL=index.d.ts.map
@@ -26,10 +26,10 @@ export function resolveDoctorTargets(target, cwd) {
26
26
  const skillsDir = join(cwd, 'skills');
27
27
  if (existsSync(skillsDir) && statSync(skillsDir).isDirectory()) {
28
28
  const variants = discoverVariants(skillsDir).filter((v) => v !== 'baseline');
29
- return variants.length > 0 ? resolveArtifacts(skillsDir, variants, { strictBaseline: false }) : [];
29
+ return variants.length > 0 ? resolveArtifacts(skillsDir, variants, { strictBaseline: false, materialize: false }) : [];
30
30
  }
31
31
  const variants = discoverVariants(cwd).filter((v) => v !== 'baseline');
32
- return variants.length > 0 ? resolveArtifacts(cwd, variants, { strictBaseline: false }) : [];
32
+ return variants.length > 0 ? resolveArtifacts(cwd, variants, { strictBaseline: false, materialize: false }) : [];
33
33
  }
34
34
  const absTarget = resolve(target);
35
35
  if (!existsSync(absTarget)) {
@@ -38,7 +38,7 @@ export function resolveDoctorTargets(target, cwd) {
38
38
  const stat = statSync(absTarget);
39
39
  if (stat.isFile() && absTarget.endsWith('.md')) {
40
40
  // 单文件:用 file-path 模式(走 resolveArtifacts 的 "包含 /" 分支)
41
- return resolveArtifacts(dirname(absTarget), [absTarget], { strictBaseline: false });
41
+ return resolveArtifacts(dirname(absTarget), [absTarget], { strictBaseline: false, materialize: false });
42
42
  }
43
43
  if (stat.isDirectory()) {
44
44
  // 目录自身就是 directory-skill (含 SKILL.md): 按单个 skill 解析,
@@ -48,10 +48,10 @@ export function resolveDoctorTargets(target, cwd) {
48
48
  // skillRoot 丢失,assets/foo.md 这类相对依赖会锚到 doctor 的 cwd 而不是
49
49
  // skill 目录, 误报缺文件。
50
50
  if (existsSync(join(absTarget, 'SKILL.md'))) {
51
- return resolveArtifacts(dirname(absTarget), [basename(absTarget)], { strictBaseline: false });
51
+ return resolveArtifacts(dirname(absTarget), [basename(absTarget)], { strictBaseline: false, materialize: false });
52
52
  }
53
53
  const variants = discoverVariants(absTarget).filter((v) => v !== 'baseline');
54
- return variants.length > 0 ? resolveArtifacts(absTarget, variants, { strictBaseline: false }) : [];
54
+ return variants.length > 0 ? resolveArtifacts(absTarget, variants, { strictBaseline: false, materialize: false }) : [];
55
55
  }
56
56
  throw new Error(`doctor target must be a .md file or directory: ${target}`);
57
57
  }
@@ -229,7 +229,7 @@ export async function runDoctor(opts) {
229
229
  ? 'warnings_only'
230
230
  : 'passed';
231
231
  return {
232
- kind: 'doctor',
232
+ reportKind: 'doctor',
233
233
  schemaVersion: DOCTOR_REPORT_SCHEMA_VERSION,
234
234
  id: nextReportId(),
235
235
  timestamp: new Date().toISOString(),
@@ -243,4 +243,3 @@ export async function runDoctor(opts) {
243
243
  ruleStats,
244
244
  };
245
245
  }
246
- //# sourceMappingURL=index.js.map
@@ -18,4 +18,3 @@ export type DoctorMessageKey = 'cli.doctor.rule.skill_readable' | 'cli.doctor.ru
18
18
  export declare const DOCTOR_MESSAGES: Record<DoctorMessageKey, MessageEntry>;
19
19
  export declare function tDoctorMessage(key: DoctorMessageKey, lang?: Lang, params?: Record<string, string | number>): string;
20
20
  export {};
21
- //# sourceMappingURL=messages.d.ts.map
@@ -199,7 +199,7 @@ export const DOCTOR_MESSAGES = {
199
199
  en: '{count} samples missing prompt field',
200
200
  },
201
201
  'cli.doctor.samples_contract.hint': {
202
- zh: '用例必须至少包含 prompt 字段。详见 docs/specs/sample-design-spec.md',
202
+ zh: '用例必须至少包含 prompt 字段。详见 docs/zh/specs/sample-design-spec.md',
203
203
  en: 'samples must contain at least a prompt field. See docs/specs/sample-design-spec.md',
204
204
  },
205
205
  };
@@ -214,4 +214,3 @@ export function tDoctorMessage(key, lang = DEFAULT_LANG, params) {
214
214
  }
215
215
  return text;
216
216
  }
217
- //# sourceMappingURL=messages.js.map
@@ -29,4 +29,3 @@ export declare function buildDoctorPreflightContext(input: {
29
29
  requires?: DependencyRequirements;
30
30
  skillDir: string;
31
31
  }): DoctorPreflightContext | null;
32
- //# sourceMappingURL=preflight.d.ts.map
@@ -29,4 +29,3 @@ export function buildDoctorPreflightContext(input) {
29
29
  requires: input.requires,
30
30
  };
31
31
  }
32
- //# sourceMappingURL=preflight.js.map
@@ -14,4 +14,3 @@ import type { Lang } from '../types/shared.js';
14
14
  import type { DoctorReport } from '../types/index.js';
15
15
  export declare function renderDoctorReportText(report: DoctorReport, lang: Lang, write?: (s: string) => void): void;
16
16
  export declare function renderDoctorReportJson(report: DoctorReport): string;
17
- //# sourceMappingURL=renderer.d.ts.map
@@ -119,4 +119,3 @@ export function renderDoctorReportText(report, lang, write = (s) => process.stde
119
119
  export function renderDoctorReportJson(report) {
120
120
  return JSON.stringify(report, null, 2);
121
121
  }
122
- //# sourceMappingURL=renderer.js.map
@@ -28,4 +28,3 @@ export declare const BUILTIN_RULES: DoctorRule[];
28
28
  export declare function registerRule(rule: DoctorRuleLike): void;
29
29
  export declare function getRegisteredRules(): DoctorRuleLike[];
30
30
  export declare function __resetCustomRulesForTest(): void;
31
- //# sourceMappingURL=rules.d.ts.map
@@ -286,4 +286,3 @@ export function getRegisteredRules() {
286
286
  export function __resetCustomRulesForTest() {
287
287
  customRules.length = 0;
288
288
  }
289
- //# sourceMappingURL=rules.js.map
@@ -77,4 +77,3 @@ export declare function bootstrapDiffCI(scoresA: number[], scoresB: number[], al
77
77
  * @param metricFn Function reducing a resampled array to a scalar.
78
78
  */
79
79
  export declare function bootstrapWithMetric(scores: number[], metricFn: (resampled: number[]) => number, alpha?: number, samples?: number, seed?: number): BootstrapCI;
80
- //# sourceMappingURL=bootstrap.d.ts.map
@@ -179,4 +179,3 @@ export function bootstrapWithMetric(scores, metricFn, alpha = DEFAULT_BOOTSTRAP_
179
179
  function round4(x) {
180
180
  return Math.round(x * 10000) / 10000;
181
181
  }
182
- //# sourceMappingURL=bootstrap.js.map
@@ -2,8 +2,8 @@
2
2
  * Executor result cache.
3
3
  *
4
4
  * Caches successful executor results to disk to avoid redundant API calls.
5
- * Cache key v5 = sha256(model + system + prompt + cwd + allowedSkills + executor +
6
- * runtime + mocks + mocksStrict + effort).
5
+ * Cache key v6 = sha256(model + system + prompt + cwd + allowedSkills + executor +
6
+ * runtime + mocks + mocksStrict + effort + artifactContentHash).
7
7
  * Loaded into memory on init, flushed to disk on save().
8
8
  *
9
9
  * Prefix bumps intentionally invalidate old entries when construct-validity
@@ -15,6 +15,11 @@
15
15
  * 报告 meta 标的 effort 跟实际跑的 effort 不一致 — 测量可比性污染);
16
16
  * 同时 cache.set 不再砍 turns / toolCalls — 工具类断言 + diagnostic 要看 trace,
17
17
  * 砍掉的话 cached rerun 会让工具断言为空、diagnostic 没真实证据,跟 cold run 不一致
18
+ * - v6: artifact 内容指纹(contentHash)。`system` 只含 SKILL.md 正文,但本地 dir-skill 的
19
+ * references/ 资产是真实运行时输入(cwd=skillRoot,agent 可读),改资产只动 contentHash、
20
+ * 不动 system → 旧 key 会命中旧输出、贴到新 artifactHashes 上,形成静默测量污染。把
21
+ * contentHash 纳入 key,资产变即重跑。git skill 的 contentHash 只随 SKILL.md 变(其资产不
22
+ * 暴露给 executor、本就不该触发重跑),口径自洽
18
23
  */
19
24
  import type { ExecutorCache } from '../types/index.js';
20
25
  export declare function createCache(cacheDir: string): ExecutorCache;
@@ -27,5 +32,7 @@ mocksStrict?: boolean,
27
32
  /** Executor effort 也进 key:effort 'low'/'medium'/'high' 改变 LLM 思考预算,
28
33
  * 输出/工具调用/分数都可能不同,跨 effort 共享 cache 会让报告 meta 标的 effort
29
34
  * 跟实际生成的 effort 不一致,违反"两份报告比分数前先比 cliVersion / effort"语义。 */
30
- effort?: string): string;
31
- //# sourceMappingURL=cache.d.ts.map
35
+ effort?: string,
36
+ /** artifact 内容指纹(整树 / 单文件哈)。本地 dir-skill 改 references/ 资产只动此值、不动 system,
37
+ * 不进 key 会让改资产后命中旧输出 → 静默污染。空(baseline / 无 skill)等价无指纹。 */
38
+ artifactContentHash?: string): string;
@@ -2,8 +2,8 @@
2
2
  * Executor result cache.
3
3
  *
4
4
  * Caches successful executor results to disk to avoid redundant API calls.
5
- * Cache key v5 = sha256(model + system + prompt + cwd + allowedSkills + executor +
6
- * runtime + mocks + mocksStrict + effort).
5
+ * Cache key v6 = sha256(model + system + prompt + cwd + allowedSkills + executor +
6
+ * runtime + mocks + mocksStrict + effort + artifactContentHash).
7
7
  * Loaded into memory on init, flushed to disk on save().
8
8
  *
9
9
  * Prefix bumps intentionally invalidate old entries when construct-validity
@@ -15,6 +15,11 @@
15
15
  * 报告 meta 标的 effort 跟实际跑的 effort 不一致 — 测量可比性污染);
16
16
  * 同时 cache.set 不再砍 turns / toolCalls — 工具类断言 + diagnostic 要看 trace,
17
17
  * 砍掉的话 cached rerun 会让工具断言为空、diagnostic 没真实证据,跟 cold run 不一致
18
+ * - v6: artifact 内容指纹(contentHash)。`system` 只含 SKILL.md 正文,但本地 dir-skill 的
19
+ * references/ 资产是真实运行时输入(cwd=skillRoot,agent 可读),改资产只动 contentHash、
20
+ * 不动 system → 旧 key 会命中旧输出、贴到新 artifactHashes 上,形成静默测量污染。把
21
+ * contentHash 纳入 key,资产变即重跑。git skill 的 contentHash 只随 SKILL.md 变(其资产不
22
+ * 暴露给 executor、本就不该触发重跑),口径自洽
18
23
  */
19
24
  import { readFileSync, writeFileSync, mkdirSync, existsSync } from 'node:fs';
20
25
  import { join } from 'node:path';
@@ -114,7 +119,10 @@ mocksStrict,
114
119
  /** Executor effort 也进 key:effort 'low'/'medium'/'high' 改变 LLM 思考预算,
115
120
  * 输出/工具调用/分数都可能不同,跨 effort 共享 cache 会让报告 meta 标的 effort
116
121
  * 跟实际生成的 effort 不一致,违反"两份报告比分数前先比 cliVersion / effort"语义。 */
117
- effort) {
122
+ effort,
123
+ /** artifact 内容指纹(整树 / 单文件哈)。本地 dir-skill 改 references/ 资产只动此值、不动 system,
124
+ * 不进 key 会让改资产后命中旧输出 → 静默污染。空(baseline / 无 skill)等价无指纹。 */
125
+ artifactContentHash) {
118
126
  // allowedSkills 序列化:undefined → "" / [] → "[]" / [...] → 排序后 JSON。
119
127
  // 排序保证 ["a","b"] 和 ["b","a"] 命中同一缓存(语义等价)。
120
128
  const isoStr = allowedSkills === undefined
@@ -130,9 +138,8 @@ effort) {
130
138
  // executor + runtime + effort 进 cache key:同 model 名走不同 executor 或同 executor
131
139
  // 换 binary/SDK 版本时输出可能不同,旧 cache 不可复用。
132
140
  const hash = createHash('sha256')
133
- .update(`${model || ''}\n${system || ''}\n${prompt || ''}\n${cwd || ''}\n${isoStr}\n${executor || ''}\n${runtimeFingerprint || ''}\n${mockStr}\n${strictStr}\n${effortStr}`)
141
+ .update(`${model || ''}\n${system || ''}\n${prompt || ''}\n${cwd || ''}\n${isoStr}\n${executor || ''}\n${runtimeFingerprint || ''}\n${mockStr}\n${strictStr}\n${effortStr}\n${artifactContentHash || ''}`)
134
142
  .digest('hex')
135
143
  .slice(0, 16);
136
- return `v5:${hash}`;
144
+ return `v6:${hash}`;
137
145
  }
138
- //# sourceMappingURL=cache.js.map
@@ -8,4 +8,3 @@ export interface ComparabilityWarning {
8
8
  export declare function reportComparabilityWarnings(report: Report): ComparabilityWarning[];
9
9
  export declare function crossReportComparabilityWarnings(before: Report, after: Report): ComparabilityWarning[];
10
10
  export declare function formatComparabilityWarnings(warnings: ComparabilityWarning[], lang?: Lang): string;
11
- //# sourceMappingURL=comparability.d.ts.map
@@ -43,9 +43,9 @@ function packageReasons(pkg, label) {
43
43
  }
44
44
  function runtimeUnverifiableReasons(runtime) {
45
45
  const reasons = [];
46
- if (runtime.kind === 'api')
46
+ if (runtime.runtimeKind === 'api')
47
47
  return reasons;
48
- if (runtime.kind === 'agent-sdk') {
48
+ if (runtime.runtimeKind === 'agent-sdk') {
49
49
  reasons.push(...packageReasons(runtime.sdk, 'sdk'));
50
50
  }
51
51
  const binary = runtime.binary;
@@ -70,7 +70,7 @@ function runtimeUnverifiableReasons(runtime) {
70
70
  else if (binary.source === 'unknown') {
71
71
  reasons.push('binary source unknown');
72
72
  }
73
- if (runtime.kind === 'unknown')
73
+ if (runtime.runtimeKind === 'unknown')
74
74
  reasons.push('runtime kind unknown');
75
75
  return [...new Set(reasons)];
76
76
  }
@@ -293,4 +293,3 @@ export function formatComparabilityWarnings(warnings, lang = 'zh') {
293
293
  : 'Comparability warnings: the following differences affect strict comparison / construct validity';
294
294
  return [header, ...warnings.map((warning) => ` - ${lang === 'zh' ? warning.zh : warning.en}`)].join('\n');
295
295
  }
296
- //# sourceMappingURL=comparability.js.map
@@ -34,4 +34,3 @@ export declare function checkDependencies(deps: DependencyRequirements, cwd: str
34
34
  * 声明,落到 defaultCwd。
35
35
  */
36
36
  export declare function preflightDependencies(skillContents: string[], samples: Sample[], cwd: string, explicitRequires?: DependencyRequirements, artifacts?: Artifact[]): Promise<DependencyCheckResult>;
37
- //# sourceMappingURL=dependency-checker.d.ts.map
@@ -159,9 +159,12 @@ function buildPreflightEnv(artifacts) {
159
159
  return process.env;
160
160
  const extraPaths = [];
161
161
  for (const a of artifacts) {
162
- if (!a.locator)
162
+ // 与 extractSkillDir 一致:dir-skill 优先隔离副本 execRoot(副本无 node_modules、.bin 检查恒不命中);
163
+ // 否则本地文件-skill 取 .md 所在目录。git 文件-skill 的 locator 是 git spec、非在盘目录,无 execRoot
164
+ // 时跳过(取 dirname 会得伪路径)。
165
+ const dir = a.execRoot ?? (a.locator && a.source !== 'git' ? dirname(a.locator) : null);
166
+ if (!dir)
163
167
  continue;
164
- const dir = dirname(a.locator);
165
168
  const nodeBin = join(dir, 'node_modules', '.bin');
166
169
  if (existsSync(nodeBin))
167
170
  extraPaths.push(nodeBin);
@@ -339,4 +342,3 @@ export async function preflightDependencies(skillContents, samples, cwd, explici
339
342
  }
340
343
  return result;
341
344
  }
342
- //# sourceMappingURL=dependency-checker.js.map
@@ -63,4 +63,3 @@ export declare function preflight(executor: ExecutorFn, model: string, timeoutMs
63
63
  * pipeline must build the map covering every judge before calling this).
64
64
  */
65
65
  export declare function preflightAllJudges(judgeModels: import('../types/index.js').JudgeConfig[], judgeExecutors: Record<string, ExecutorFn>, timeoutMs?: number): Promise<void>;
66
- //# sourceMappingURL=evaluation-execution.d.ts.map
@@ -85,7 +85,10 @@ export async function executeTasks({ tasks, executor, executorName, model, noJud
85
85
  // don't share cache entries, and include runtime fingerprint so a binary/SDK bump
86
86
  // cannot replay old-runtime outputs under new-runtime report metadata.
87
87
  // 同时把 mocks + mocksStrict 进 key:改 mock 配置必须重跑,不能命中老 cache。
88
- const key = cacheKey(model, executionPlan.cacheSystem, executionPlan.input.prompt, executionPlan.input.cwd, task.artifact.allowedSkills, effectiveExecutorName, executorRuntime.fingerprint, executionPlan.input.mocks, executionPlan.input.mocksStrict, effort);
88
+ const key = cacheKey(model, executionPlan.cacheSystem, executionPlan.input.prompt, executionPlan.input.cwd, task.artifact.allowedSkills, effectiveExecutorName, executorRuntime.fingerprint, executionPlan.input.mocks, executionPlan.input.mocksStrict, effort,
89
+ // artifact 内容指纹进 key:本地 dir-skill 改 references/ 资产只动 contentHash,system 不变,
90
+ // 不进 key 会命中旧输出贴到新 artifactHashes(静默污染)。
91
+ task.artifact.contentHash);
89
92
  const cached = cache?.get(key);
90
93
  const execStart = Date.now();
91
94
  if (cached) {
@@ -333,4 +336,3 @@ export async function preflightAllJudges(judgeModels, judgeExecutors, timeoutMs)
333
336
  await preflight(exec, jc.model, timeoutMs);
334
337
  }
335
338
  }
336
- //# sourceMappingURL=evaluation-execution.js.map
@@ -52,4 +52,3 @@ export declare function createFailedJob({ job, error, errorCategory, finishedAt,
52
52
  errorCategory?: EvaluationErrorCategory;
53
53
  finishedAt?: string;
54
54
  }): EvaluationJob;
55
- //# sourceMappingURL=evaluation-job.d.ts.map
@@ -116,4 +116,3 @@ export function createFailedJob({ job, error, errorCategory = classifyEvaluation
116
116
  errorCategory,
117
117
  };
118
118
  }
119
- //# sourceMappingURL=evaluation-job.js.map
@@ -34,4 +34,3 @@ export interface PersistableReport {
34
34
  export declare function persistReport(report: PersistableReport, outputDir: string | null): string | null;
35
35
  export declare function generateRunId(variants: string[]): string;
36
36
  export {};
37
- //# sourceMappingURL=evaluation-reporting.d.ts.map
@@ -92,11 +92,14 @@ function buildExecutorRuntimesByVariant({ variants, model, executorName, tasks,
92
92
  if (runtimes[variant])
93
93
  continue;
94
94
  const artifact = artifacts.find((a) => a.name === variant);
95
- const fallbackSkillDir = artifact?.kind === 'baseline'
96
- ? null
97
- : artifact?.locator && artifact.source !== 'git'
98
- ? dirname(artifact.locator)
99
- : request?.skillDir;
95
+ // 与主路径 extractSkillDir 一致:dir-skill 优先隔离副本 execRoot(副本无 node_modules、PATH 不污染);
96
+ // 否则 baseline / git 文件-skill 取 null,本地文件-skill 取 .md 所在目录。
97
+ const fallbackSkillDir = artifact?.execRoot
98
+ ?? (artifact?.kind === 'baseline' || artifact?.source === 'git'
99
+ ? null
100
+ : artifact?.locator
101
+ ? dirname(artifact.locator)
102
+ : request?.skillDir);
100
103
  runtimes[variant] = getExecutorRuntimeFingerprint(executorName, model, {
101
104
  skillDir: fallbackSkillDir,
102
105
  });
@@ -149,7 +152,11 @@ export function aggregateReport({ runId, variants, model, judgeModel, noJudge, e
149
152
  }
150
153
  }
151
154
  }
152
- const artifactHashes = Object.fromEntries(artifacts.map((artifact) => [artifact.name, artifact.content ? hashString(artifact.content) : 'no-skill']));
155
+ // 整树内容指纹:解析期已由 resolveArtifacts 用 hashArtifactSource 算好挂在 artifact.contentHash 上
156
+ // (目录-skill 覆盖整棵可分发树含 references/ 资产、文件-skill 为单文件字节),与 install 受管记录的
157
+ // contentHash 落在同一空间——证据可绑定的前提,也修掉「只哈 SKILL.md 正文、改资产指纹不变」的资产瞎。
158
+ // baseline / 无 skill 记 'no-skill'。
159
+ const artifactHashes = Object.fromEntries(artifacts.map((artifact) => [artifact.name, artifact.contentHash ?? 'no-skill']));
153
160
  const sampleHashes = Object.fromEntries(samples.map((s) => [s.sample_id, hashSample(s)]));
154
161
  const judgeRepeat = request?.judgeRepeat && request.judgeRepeat > 1 ? request.judgeRepeat : undefined;
155
162
  const runtimeOptions = { skillDir: request?.skillDir };
@@ -175,7 +182,7 @@ export function aggregateReport({ runId, variants, model, judgeModel, noJudge, e
175
182
  debiasModeList.push('length');
176
183
  const totalCostReported = Object.values(summary).every((variant) => variant.execCostReported !== false && variant.judgeCostReported !== false);
177
184
  return {
178
- kind: 'evaluation',
185
+ reportKind: 'evaluation',
179
186
  id: runId,
180
187
  meta: {
181
188
  variants,
@@ -189,6 +196,10 @@ export function aggregateReport({ runId, variants, model, judgeModel, noJudge, e
189
196
  timestamp: new Date().toISOString(),
190
197
  cliVersion: getCliVersion(),
191
198
  nodeVersion: process.version,
199
+ // schemaVersion 3 起,所有 dir-skill(本地 + git)都经隔离副本物化、整棵可分发树哈,与 install
200
+ // 受管记录 contentHash 同空间(evidence 全绑)。2 是过渡纪元(本地 dir-skill 树哈、git dir-skill
201
+ // 仅 SKILL.md 字节、不绑);git dir-skill 的 v2 与 v3 不可比。作判别位:消费方对缺位/旧报告不错配比对。
202
+ schemaVersion: 3,
192
203
  artifactHashes,
193
204
  sampleHashes,
194
205
  ...(noJudge ? {} : { judgePromptHash: getJudgePromptHash(lengthDebiasOn) }),
@@ -289,4 +300,3 @@ export function generateRunId(variants) {
289
300
  .join('-vs-');
290
301
  return `${variantPart}-${date}-${time}`;
291
302
  }
292
- //# sourceMappingURL=evaluation-reporting.js.map
@@ -8,4 +8,3 @@ export declare function resolveArtifactExecutionStrategy(artifact: Artifact): Ex
8
8
  export declare function resolveExperimentType(artifact: Artifact): ExperimentType;
9
9
  export declare function buildVariantConfig(artifact: Artifact): VariantConfig;
10
10
  export declare function resolveExecutionStrategy(task: Task, model: string, timeoutMs?: number, verbose?: boolean, effort?: 'low' | 'medium' | 'high' | 'xhigh' | 'max', samplesBaseDir?: string): ExecutionPlan;
11
- //# sourceMappingURL=execution-strategy.d.ts.map