oh-my-knowledge 0.32.0 → 0.34.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 (729) hide show
  1. package/README.md +29 -14
  2. package/README.zh.md +32 -17
  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 +8 -1
  16. package/dist/analysis/saturation.js +12 -5
  17. package/dist/assets/agent-skills/omk/SKILL.md +197 -0
  18. package/dist/assets/agent-skills/omk/references/commands.md +547 -0
  19. package/dist/authoring/evolver.d.ts +169 -4
  20. package/dist/authoring/evolver.js +287 -15
  21. package/dist/authoring/generator.d.ts +29 -2
  22. package/dist/authoring/generator.js +113 -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 +2 -1
  26. package/dist/cli/commands/doctor.js +24 -6
  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 +2 -1
  36. package/dist/cli/commands/eval/index.js +23 -11
  37. package/dist/cli/commands/evolve.d.ts +7 -1
  38. package/dist/cli/commands/evolve.js +93 -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 +22 -0
  42. package/dist/cli/commands/install.js +411 -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 +6 -3
  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 +2 -1
  52. package/dist/cli/commands/sample.js +100 -9
  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 +11 -1
  60. package/dist/cli/lib/cmd-flags.js +0 -1
  61. package/dist/cli/lib/i18n-dict/common.d.ts +1 -2
  62. package/dist/cli/lib/i18n-dict/common.js +18 -3
  63. package/dist/cli/lib/i18n-dict/evolve.d.ts +1 -2
  64. package/dist/cli/lib/i18n-dict/evolve.js +24 -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 +90 -0
  73. package/dist/cli/lib/i18n-dict/run.d.ts +0 -1
  74. package/dist/cli/lib/i18n-dict/run.js +0 -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 +8 -4
  86. package/dist/cli/lib/parse-run-config/variant-resolution.js +46 -14
  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 +7 -6
  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 +65 -1
  98. package/dist/cli/lib/update-check.js +220 -32
  99. package/dist/cli/lib/update-fetch-worker.d.ts +1 -0
  100. package/dist/cli/lib/update-fetch-worker.js +34 -0
  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 +1 -0
  132. package/dist/doctor/health/load-custom-dimensions.js +30 -0
  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 +1 -2
  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 +8 -1
  150. package/dist/eval-core/bootstrap.js +11 -4
  151. package/dist/eval-core/cache.d.ts +0 -1
  152. package/dist/eval-core/cache.js +0 -1
  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 +2 -2
  157. package/dist/eval-core/evaluation-execution.d.ts +0 -1
  158. package/dist/eval-core/evaluation-execution.js +0 -1
  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 +9 -8
  163. package/dist/eval-core/execution-strategy.d.ts +0 -1
  164. package/dist/eval-core/execution-strategy.js +6 -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 +0 -1
  177. package/dist/eval-core/verdict.d.ts +21 -4
  178. package/dist/eval-core/verdict.js +54 -5
  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 +20 -16
  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 +4 -9
  196. package/dist/eval-workflows/run-evaluation.js +16 -26
  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/eval-config.d.ts +0 -1
  242. package/dist/inputs/eval-config.js +3 -2
  243. package/dist/inputs/load-samples.d.ts +0 -1
  244. package/dist/inputs/load-samples.js +0 -1
  245. package/dist/inputs/mcp-resolver.d.ts +0 -1
  246. package/dist/inputs/mcp-resolver.js +0 -1
  247. package/dist/inputs/skill-loader.d.ts +99 -7
  248. package/dist/inputs/skill-loader.js +325 -45
  249. package/dist/inputs/source-resolver.d.ts +28 -0
  250. package/dist/inputs/source-resolver.js +125 -0
  251. package/dist/inputs/url-fetcher.d.ts +0 -1
  252. package/dist/inputs/url-fetcher.js +0 -1
  253. package/dist/managed/index.d.ts +5 -0
  254. package/dist/managed/index.js +5 -0
  255. package/dist/managed/store.d.ts +76 -0
  256. package/dist/managed/store.js +260 -0
  257. package/dist/observability/experience-frontmatter.d.ts +0 -1
  258. package/dist/observability/experience-frontmatter.js +0 -1
  259. package/dist/observability/experience.d.ts +1 -2
  260. package/dist/observability/experience.js +1 -2
  261. package/dist/observability/feedback-matchers.d.ts +0 -1
  262. package/dist/observability/feedback-matchers.js +0 -1
  263. package/dist/observability/feedback-projection.d.ts +0 -1
  264. package/dist/observability/feedback-projection.js +0 -1
  265. package/dist/observability/inbox-view-model.d.ts +0 -1
  266. package/dist/observability/inbox-view-model.js +0 -1
  267. package/dist/observability/inbox.d.ts +0 -1
  268. package/dist/observability/inbox.js +2 -3
  269. package/dist/observability/problem-patterns.d.ts +0 -1
  270. package/dist/observability/problem-patterns.js +0 -1
  271. package/dist/observability/resolved-review.d.ts +0 -1
  272. package/dist/observability/resolved-review.js +4 -5
  273. package/dist/observability/review-state.d.ts +0 -1
  274. package/dist/observability/review-state.js +3 -4
  275. package/dist/observability/skill-chain-advisories.d.ts +0 -1
  276. package/dist/observability/skill-chain-advisories.js +0 -1
  277. package/dist/observability/skill-chain.d.ts +0 -1
  278. package/dist/observability/skill-chain.js +5 -6
  279. package/dist/observability/skill-health-analyzer.d.ts +13 -1
  280. package/dist/observability/skill-health-analyzer.js +17 -3
  281. package/dist/observability/soft-standards/constants.d.ts +0 -1
  282. package/dist/observability/soft-standards/constants.js +0 -1
  283. package/dist/observability/soft-standards/index.d.ts +0 -1
  284. package/dist/observability/soft-standards/index.js +0 -1
  285. package/dist/observability/soft-standards/llm-extractor.d.ts +0 -1
  286. package/dist/observability/soft-standards/llm-extractor.js +7 -8
  287. package/dist/observability/soft-standards/runtime-evaluator.d.ts +0 -1
  288. package/dist/observability/soft-standards/runtime-evaluator.js +2 -3
  289. package/dist/observability/soft-standards/skill-standards-store.d.ts +0 -1
  290. package/dist/observability/soft-standards/skill-standards-store.js +5 -6
  291. package/dist/observability/soft-standards/types.d.ts +10 -11
  292. package/dist/observability/soft-standards/types.js +0 -1
  293. package/dist/observability/text-signals.d.ts +0 -1
  294. package/dist/observability/text-signals.js +0 -1
  295. package/dist/observability/trace-adapter.d.ts +0 -1
  296. package/dist/observability/trace-adapter.js +0 -1
  297. package/dist/observability/trace-attribution.d.ts +0 -1
  298. package/dist/observability/trace-attribution.js +0 -1
  299. package/dist/observability/trace-segmenter.d.ts +0 -1
  300. package/dist/observability/trace-segmenter.js +0 -1
  301. package/dist/observability/trace-source.d.ts +0 -1
  302. package/dist/observability/trace-source.js +0 -1
  303. package/dist/renderer/html-renderer.d.ts +0 -1
  304. package/dist/renderer/html-renderer.js +4 -5
  305. package/dist/renderer/layout.d.ts +0 -1
  306. package/dist/renderer/layout.js +2 -1
  307. package/dist/renderer/observation-inbox/helpers.d.ts +0 -1
  308. package/dist/renderer/observation-inbox/helpers.js +0 -1
  309. package/dist/renderer/observation-inbox/styles.d.ts +0 -1
  310. package/dist/renderer/observation-inbox/styles.js +0 -1
  311. package/dist/renderer/observation-inbox-renderer.d.ts +0 -1
  312. package/dist/renderer/observation-inbox-renderer.js +13 -14
  313. package/dist/renderer/skill-detail-renderer.d.ts +0 -1
  314. package/dist/renderer/skill-detail-renderer.js +101 -23
  315. package/dist/renderer/skill-health-renderer.d.ts +0 -1
  316. package/dist/renderer/skill-health-renderer.js +33 -5
  317. package/dist/renderer/skill-list-renderer.d.ts +0 -1
  318. package/dist/renderer/skill-list-renderer.js +18 -7
  319. package/dist/renderer/summary.d.ts +0 -1
  320. package/dist/renderer/summary.js +21 -10
  321. package/dist/renderer/table.d.ts +0 -1
  322. package/dist/renderer/table.js +0 -1
  323. package/dist/renderer/test-view.d.ts +0 -1
  324. package/dist/renderer/test-view.js +0 -1
  325. package/dist/renderer/trends.d.ts +0 -1
  326. package/dist/renderer/trends.js +0 -1
  327. package/dist/server/job-store.d.ts +0 -1
  328. package/dist/server/job-store.js +0 -1
  329. package/dist/server/report-server.d.ts +0 -1
  330. package/dist/server/report-server.js +10 -4
  331. package/dist/server/report-store.d.ts +1 -2
  332. package/dist/server/report-store.js +6 -7
  333. package/dist/server/skill-index.d.ts +0 -1
  334. package/dist/server/skill-index.js +7 -5
  335. package/dist/server/skill-insights.d.ts +0 -1
  336. package/dist/server/skill-insights.js +41 -14
  337. package/dist/shared/hard-rules.d.ts +0 -1
  338. package/dist/shared/hard-rules.js +0 -1
  339. package/dist/shared/llm-prompts/index.d.ts +0 -1
  340. package/dist/shared/llm-prompts/index.js +0 -1
  341. package/dist/shared/llm-prompts/skill-health.d.ts +0 -1
  342. package/dist/shared/llm-prompts/skill-health.js +0 -1
  343. package/dist/shared/time.d.ts +0 -1
  344. package/dist/shared/time.js +0 -1
  345. package/dist/shared/tool-search.d.ts +0 -1
  346. package/dist/shared/tool-search.js +0 -1
  347. package/dist/types/dependencies.d.ts +0 -1
  348. package/dist/types/dependencies.js +0 -1
  349. package/dist/types/diagnosis.d.ts +0 -1
  350. package/dist/types/diagnosis.js +0 -1
  351. package/dist/types/doctor.d.ts +4 -5
  352. package/dist/types/doctor.js +2 -3
  353. package/dist/types/eval.d.ts +2 -1
  354. package/dist/types/eval.js +0 -1
  355. package/dist/types/executor.d.ts +1 -2
  356. package/dist/types/executor.js +0 -1
  357. package/dist/types/index.d.ts +1 -1
  358. package/dist/types/index.js +1 -1
  359. package/dist/types/judge.d.ts +0 -1
  360. package/dist/types/judge.js +0 -1
  361. package/dist/types/managed.d.ts +85 -0
  362. package/dist/types/managed.js +1 -0
  363. package/dist/types/observability.d.ts +5 -6
  364. package/dist/types/observability.js +0 -1
  365. package/dist/types/report.d.ts +2 -3
  366. package/dist/types/report.js +0 -1
  367. package/dist/types/shared.d.ts +0 -1
  368. package/dist/types/shared.js +0 -1
  369. package/dist/types/skill-index.d.ts +3 -1
  370. package/dist/types/skill-index.js +0 -1
  371. package/dist/types/storage.d.ts +0 -1
  372. package/dist/types/storage.js +0 -1
  373. package/dist/util/safe-slice.d.ts +0 -1
  374. package/dist/util/safe-slice.js +0 -1
  375. package/package.json +10 -5
  376. package/dist/analysis/coverage-analyzer.d.ts.map +0 -1
  377. package/dist/analysis/coverage-analyzer.js.map +0 -1
  378. package/dist/analysis/failure-clusterer.d.ts.map +0 -1
  379. package/dist/analysis/failure-clusterer.js.map +0 -1
  380. package/dist/analysis/gap-analyzer.d.ts.map +0 -1
  381. package/dist/analysis/gap-analyzer.js.map +0 -1
  382. package/dist/analysis/hedging-classifier.d.ts.map +0 -1
  383. package/dist/analysis/hedging-classifier.js.map +0 -1
  384. package/dist/analysis/report-diagnostics.d.ts.map +0 -1
  385. package/dist/analysis/report-diagnostics.js.map +0 -1
  386. package/dist/analysis/sample-diagnostics.d.ts.map +0 -1
  387. package/dist/analysis/sample-diagnostics.js.map +0 -1
  388. package/dist/analysis/saturation.d.ts.map +0 -1
  389. package/dist/analysis/saturation.js.map +0 -1
  390. package/dist/authoring/evolver.d.ts.map +0 -1
  391. package/dist/authoring/evolver.js.map +0 -1
  392. package/dist/authoring/generator.d.ts.map +0 -1
  393. package/dist/authoring/generator.js.map +0 -1
  394. package/dist/authoring/sample-fixer.d.ts.map +0 -1
  395. package/dist/authoring/sample-fixer.js.map +0 -1
  396. package/dist/cli/commands/doctor.d.ts.map +0 -1
  397. package/dist/cli/commands/doctor.js.map +0 -1
  398. package/dist/cli/commands/eval/gold/compare.d.ts.map +0 -1
  399. package/dist/cli/commands/eval/gold/compare.js.map +0 -1
  400. package/dist/cli/commands/eval/gold/index.d.ts.map +0 -1
  401. package/dist/cli/commands/eval/gold/index.js.map +0 -1
  402. package/dist/cli/commands/eval/gold/init.d.ts.map +0 -1
  403. package/dist/cli/commands/eval/gold/init.js.map +0 -1
  404. package/dist/cli/commands/eval/gold/validate.d.ts.map +0 -1
  405. package/dist/cli/commands/eval/gold/validate.js.map +0 -1
  406. package/dist/cli/commands/eval/index.d.ts.map +0 -1
  407. package/dist/cli/commands/eval/index.js.map +0 -1
  408. package/dist/cli/commands/evolve.d.ts.map +0 -1
  409. package/dist/cli/commands/evolve.js.map +0 -1
  410. package/dist/cli/commands/init.d.ts.map +0 -1
  411. package/dist/cli/commands/init.js.map +0 -1
  412. package/dist/cli/commands/observe/inbox.d.ts.map +0 -1
  413. package/dist/cli/commands/observe/inbox.js.map +0 -1
  414. package/dist/cli/commands/observe/index.d.ts.map +0 -1
  415. package/dist/cli/commands/observe/index.js.map +0 -1
  416. package/dist/cli/commands/observe/ingest.d.ts.map +0 -1
  417. package/dist/cli/commands/observe/ingest.js.map +0 -1
  418. package/dist/cli/commands/observe/show.d.ts.map +0 -1
  419. package/dist/cli/commands/observe/show.js.map +0 -1
  420. package/dist/cli/commands/sample.d.ts.map +0 -1
  421. package/dist/cli/commands/sample.js.map +0 -1
  422. package/dist/cli/commands/studio.d.ts.map +0 -1
  423. package/dist/cli/commands/studio.js.map +0 -1
  424. package/dist/cli/index.d.ts.map +0 -1
  425. package/dist/cli/index.js.map +0 -1
  426. package/dist/cli/lib/cli-exit.d.ts.map +0 -1
  427. package/dist/cli/lib/cli-exit.js.map +0 -1
  428. package/dist/cli/lib/cmd-flags.d.ts.map +0 -1
  429. package/dist/cli/lib/cmd-flags.js.map +0 -1
  430. package/dist/cli/lib/i18n-dict/common.d.ts.map +0 -1
  431. package/dist/cli/lib/i18n-dict/common.js.map +0 -1
  432. package/dist/cli/lib/i18n-dict/evolve.d.ts.map +0 -1
  433. package/dist/cli/lib/i18n-dict/evolve.js.map +0 -1
  434. package/dist/cli/lib/i18n-dict/gen.d.ts.map +0 -1
  435. package/dist/cli/lib/i18n-dict/gen.js.map +0 -1
  436. package/dist/cli/lib/i18n-dict/help.d.ts.map +0 -1
  437. package/dist/cli/lib/i18n-dict/help.js.map +0 -1
  438. package/dist/cli/lib/i18n-dict/init.d.ts.map +0 -1
  439. package/dist/cli/lib/i18n-dict/init.js.map +0 -1
  440. package/dist/cli/lib/i18n-dict/run.d.ts.map +0 -1
  441. package/dist/cli/lib/i18n-dict/run.js.map +0 -1
  442. package/dist/cli/lib/i18n-dict/types.d.ts.map +0 -1
  443. package/dist/cli/lib/i18n-dict/types.js.map +0 -1
  444. package/dist/cli/lib/i18n-dict.d.ts.map +0 -1
  445. package/dist/cli/lib/i18n-dict.js.map +0 -1
  446. package/dist/cli/lib/i18n.d.ts.map +0 -1
  447. package/dist/cli/lib/i18n.js.map +0 -1
  448. package/dist/cli/lib/parse-run-config/judge-models.d.ts.map +0 -1
  449. package/dist/cli/lib/parse-run-config/judge-models.js.map +0 -1
  450. package/dist/cli/lib/parse-run-config/samples-discovery.d.ts.map +0 -1
  451. package/dist/cli/lib/parse-run-config/samples-discovery.js.map +0 -1
  452. package/dist/cli/lib/parse-run-config/variant-resolution.d.ts.map +0 -1
  453. package/dist/cli/lib/parse-run-config/variant-resolution.js.map +0 -1
  454. package/dist/cli/lib/parse-run-config.d.ts.map +0 -1
  455. package/dist/cli/lib/parse-run-config.js.map +0 -1
  456. package/dist/cli/lib/progress.d.ts.map +0 -1
  457. package/dist/cli/lib/progress.js.map +0 -1
  458. package/dist/cli/lib/resolve-skill-input.d.ts.map +0 -1
  459. package/dist/cli/lib/resolve-skill-input.js.map +0 -1
  460. package/dist/cli/lib/run-tally.d.ts.map +0 -1
  461. package/dist/cli/lib/run-tally.js.map +0 -1
  462. package/dist/cli/lib/shared.d.ts.map +0 -1
  463. package/dist/cli/lib/shared.js.map +0 -1
  464. package/dist/cli/lib/update-check.d.ts.map +0 -1
  465. package/dist/cli/lib/update-check.js.map +0 -1
  466. package/dist/cli/oclif/base-command.d.ts.map +0 -1
  467. package/dist/cli/oclif/base-command.js.map +0 -1
  468. package/dist/cli/oclif/help.d.ts.map +0 -1
  469. package/dist/cli/oclif/help.js.map +0 -1
  470. package/dist/cli/oclif/i18n.d.ts.map +0 -1
  471. package/dist/cli/oclif/i18n.js.map +0 -1
  472. package/dist/cli/oclif/parsers.d.ts.map +0 -1
  473. package/dist/cli/oclif/parsers.js.map +0 -1
  474. package/dist/cli/oclif/projection.d.ts.map +0 -1
  475. package/dist/cli/oclif/projection.js.map +0 -1
  476. package/dist/cli/oclif/run.d.ts.map +0 -1
  477. package/dist/cli/oclif/run.js.map +0 -1
  478. package/dist/diagnosis/observe-mapper.d.ts.map +0 -1
  479. package/dist/diagnosis/observe-mapper.js.map +0 -1
  480. package/dist/diagnosis/observe-producer.d.ts.map +0 -1
  481. package/dist/diagnosis/observe-producer.js.map +0 -1
  482. package/dist/diagnosis/studio-projection.d.ts.map +0 -1
  483. package/dist/diagnosis/studio-projection.js.map +0 -1
  484. package/dist/diagnosis/types.d.ts.map +0 -1
  485. package/dist/diagnosis/types.js.map +0 -1
  486. package/dist/doctor/fixer.d.ts.map +0 -1
  487. package/dist/doctor/fixer.js.map +0 -1
  488. package/dist/doctor/health/builtin-dimensions.d.ts.map +0 -1
  489. package/dist/doctor/health/builtin-dimensions.js.map +0 -1
  490. package/dist/doctor/health/composer.d.ts.map +0 -1
  491. package/dist/doctor/health/composer.js.map +0 -1
  492. package/dist/doctor/health/dimension-registry.d.ts.map +0 -1
  493. package/dist/doctor/health/dimension-registry.js.map +0 -1
  494. package/dist/doctor/health/dimension-spec.d.ts.map +0 -1
  495. package/dist/doctor/health/dimension-spec.js.map +0 -1
  496. package/dist/doctor/health/parser.d.ts.map +0 -1
  497. package/dist/doctor/health/parser.js.map +0 -1
  498. package/dist/doctor/health/prompt-builder.d.ts.map +0 -1
  499. package/dist/doctor/health/prompt-builder.js.map +0 -1
  500. package/dist/doctor/health/register.d.ts.map +0 -1
  501. package/dist/doctor/health/register.js.map +0 -1
  502. package/dist/doctor/index.d.ts.map +0 -1
  503. package/dist/doctor/index.js.map +0 -1
  504. package/dist/doctor/messages.d.ts.map +0 -1
  505. package/dist/doctor/messages.js.map +0 -1
  506. package/dist/doctor/preflight.d.ts.map +0 -1
  507. package/dist/doctor/preflight.js.map +0 -1
  508. package/dist/doctor/renderer.d.ts.map +0 -1
  509. package/dist/doctor/renderer.js.map +0 -1
  510. package/dist/doctor/rules.d.ts.map +0 -1
  511. package/dist/doctor/rules.js.map +0 -1
  512. package/dist/eval-core/bootstrap.d.ts.map +0 -1
  513. package/dist/eval-core/bootstrap.js.map +0 -1
  514. package/dist/eval-core/cache.d.ts.map +0 -1
  515. package/dist/eval-core/cache.js.map +0 -1
  516. package/dist/eval-core/comparability.d.ts.map +0 -1
  517. package/dist/eval-core/comparability.js.map +0 -1
  518. package/dist/eval-core/dependency-checker.d.ts.map +0 -1
  519. package/dist/eval-core/dependency-checker.js.map +0 -1
  520. package/dist/eval-core/evaluation-execution.d.ts.map +0 -1
  521. package/dist/eval-core/evaluation-execution.js.map +0 -1
  522. package/dist/eval-core/evaluation-job.d.ts.map +0 -1
  523. package/dist/eval-core/evaluation-job.js.map +0 -1
  524. package/dist/eval-core/evaluation-reporting.d.ts.map +0 -1
  525. package/dist/eval-core/evaluation-reporting.js.map +0 -1
  526. package/dist/eval-core/execution-strategy.d.ts.map +0 -1
  527. package/dist/eval-core/execution-strategy.js.map +0 -1
  528. package/dist/eval-core/fact-checker.d.ts.map +0 -1
  529. package/dist/eval-core/fact-checker.js.map +0 -1
  530. package/dist/eval-core/layer-gates.d.ts.map +0 -1
  531. package/dist/eval-core/layer-gates.js.map +0 -1
  532. package/dist/eval-core/mocks-runtime.d.ts.map +0 -1
  533. package/dist/eval-core/mocks-runtime.js.map +0 -1
  534. package/dist/eval-core/schema.d.ts.map +0 -1
  535. package/dist/eval-core/schema.js.map +0 -1
  536. package/dist/eval-core/statistics.d.ts.map +0 -1
  537. package/dist/eval-core/statistics.js.map +0 -1
  538. package/dist/eval-core/task-planner.d.ts.map +0 -1
  539. package/dist/eval-core/task-planner.js.map +0 -1
  540. package/dist/eval-core/verdict.d.ts.map +0 -1
  541. package/dist/eval-core/verdict.js.map +0 -1
  542. package/dist/eval-workflows/batch-evaluation-workflow.d.ts.map +0 -1
  543. package/dist/eval-workflows/batch-evaluation-workflow.js.map +0 -1
  544. package/dist/eval-workflows/evaluation-pipeline/preflight-warnings.d.ts.map +0 -1
  545. package/dist/eval-workflows/evaluation-pipeline/preflight-warnings.js.map +0 -1
  546. package/dist/eval-workflows/evaluation-pipeline/report-finalize.d.ts.map +0 -1
  547. package/dist/eval-workflows/evaluation-pipeline/report-finalize.js.map +0 -1
  548. package/dist/eval-workflows/evaluation-pipeline/run-state.d.ts.map +0 -1
  549. package/dist/eval-workflows/evaluation-pipeline/run-state.js.map +0 -1
  550. package/dist/eval-workflows/evaluation-pipeline/test-set-hash.d.ts.map +0 -1
  551. package/dist/eval-workflows/evaluation-pipeline/test-set-hash.js.map +0 -1
  552. package/dist/eval-workflows/evaluation-pipeline.d.ts.map +0 -1
  553. package/dist/eval-workflows/evaluation-pipeline.js.map +0 -1
  554. package/dist/eval-workflows/evaluation-preparation.d.ts.map +0 -1
  555. package/dist/eval-workflows/evaluation-preparation.js.map +0 -1
  556. package/dist/eval-workflows/messages.d.ts.map +0 -1
  557. package/dist/eval-workflows/messages.js.map +0 -1
  558. package/dist/eval-workflows/run-evaluation.d.ts.map +0 -1
  559. package/dist/eval-workflows/run-evaluation.js.map +0 -1
  560. package/dist/executors/anthropic-api.d.ts.map +0 -1
  561. package/dist/executors/anthropic-api.js.map +0 -1
  562. package/dist/executors/claude-cli.d.ts.map +0 -1
  563. package/dist/executors/claude-cli.js.map +0 -1
  564. package/dist/executors/claude-sdk-trace.d.ts.map +0 -1
  565. package/dist/executors/claude-sdk-trace.js.map +0 -1
  566. package/dist/executors/claude-sdk.d.ts.map +0 -1
  567. package/dist/executors/claude-sdk.js.map +0 -1
  568. package/dist/executors/codex-cli-trace.d.ts.map +0 -1
  569. package/dist/executors/codex-cli-trace.js.map +0 -1
  570. package/dist/executors/codex-cli.d.ts.map +0 -1
  571. package/dist/executors/codex-cli.js.map +0 -1
  572. package/dist/executors/codex-sdk.d.ts.map +0 -1
  573. package/dist/executors/codex-sdk.js.map +0 -1
  574. package/dist/executors/gemini.d.ts.map +0 -1
  575. package/dist/executors/gemini.js.map +0 -1
  576. package/dist/executors/index.d.ts.map +0 -1
  577. package/dist/executors/index.js.map +0 -1
  578. package/dist/executors/openai-api.d.ts.map +0 -1
  579. package/dist/executors/openai-api.js.map +0 -1
  580. package/dist/executors/runtime-fingerprint.d.ts.map +0 -1
  581. package/dist/executors/runtime-fingerprint.js.map +0 -1
  582. package/dist/executors/script.d.ts.map +0 -1
  583. package/dist/executors/script.js.map +0 -1
  584. package/dist/executors/shared.d.ts.map +0 -1
  585. package/dist/executors/shared.js.map +0 -1
  586. package/dist/grading/assertions.d.ts.map +0 -1
  587. package/dist/grading/assertions.js.map +0 -1
  588. package/dist/grading/debias-validate.d.ts.map +0 -1
  589. package/dist/grading/debias-validate.js.map +0 -1
  590. package/dist/grading/diagnostic.d.ts.map +0 -1
  591. package/dist/grading/diagnostic.js.map +0 -1
  592. package/dist/grading/gold-cli.d.ts.map +0 -1
  593. package/dist/grading/gold-cli.js.map +0 -1
  594. package/dist/grading/gold-dataset.d.ts.map +0 -1
  595. package/dist/grading/gold-dataset.js.map +0 -1
  596. package/dist/grading/human-gold.d.ts.map +0 -1
  597. package/dist/grading/human-gold.js.map +0 -1
  598. package/dist/grading/index.d.ts.map +0 -1
  599. package/dist/grading/index.js.map +0 -1
  600. package/dist/grading/judge.d.ts.map +0 -1
  601. package/dist/grading/judge.js.map +0 -1
  602. package/dist/grading/layered-scores.d.ts.map +0 -1
  603. package/dist/grading/layered-scores.js.map +0 -1
  604. package/dist/inputs/eval-config.d.ts.map +0 -1
  605. package/dist/inputs/eval-config.js.map +0 -1
  606. package/dist/inputs/load-samples.d.ts.map +0 -1
  607. package/dist/inputs/load-samples.js.map +0 -1
  608. package/dist/inputs/mcp-resolver.d.ts.map +0 -1
  609. package/dist/inputs/mcp-resolver.js.map +0 -1
  610. package/dist/inputs/skill-loader.d.ts.map +0 -1
  611. package/dist/inputs/skill-loader.js.map +0 -1
  612. package/dist/inputs/url-fetcher.d.ts.map +0 -1
  613. package/dist/inputs/url-fetcher.js.map +0 -1
  614. package/dist/observability/experience-frontmatter.d.ts.map +0 -1
  615. package/dist/observability/experience-frontmatter.js.map +0 -1
  616. package/dist/observability/experience.d.ts.map +0 -1
  617. package/dist/observability/experience.js.map +0 -1
  618. package/dist/observability/feedback-matchers.d.ts.map +0 -1
  619. package/dist/observability/feedback-matchers.js.map +0 -1
  620. package/dist/observability/feedback-projection.d.ts.map +0 -1
  621. package/dist/observability/feedback-projection.js.map +0 -1
  622. package/dist/observability/inbox-view-model.d.ts.map +0 -1
  623. package/dist/observability/inbox-view-model.js.map +0 -1
  624. package/dist/observability/inbox.d.ts.map +0 -1
  625. package/dist/observability/inbox.js.map +0 -1
  626. package/dist/observability/problem-patterns.d.ts.map +0 -1
  627. package/dist/observability/problem-patterns.js.map +0 -1
  628. package/dist/observability/resolved-review.d.ts.map +0 -1
  629. package/dist/observability/resolved-review.js.map +0 -1
  630. package/dist/observability/review-state.d.ts.map +0 -1
  631. package/dist/observability/review-state.js.map +0 -1
  632. package/dist/observability/skill-chain-advisories.d.ts.map +0 -1
  633. package/dist/observability/skill-chain-advisories.js.map +0 -1
  634. package/dist/observability/skill-chain.d.ts.map +0 -1
  635. package/dist/observability/skill-chain.js.map +0 -1
  636. package/dist/observability/skill-health-analyzer.d.ts.map +0 -1
  637. package/dist/observability/skill-health-analyzer.js.map +0 -1
  638. package/dist/observability/soft-standards/constants.d.ts.map +0 -1
  639. package/dist/observability/soft-standards/constants.js.map +0 -1
  640. package/dist/observability/soft-standards/index.d.ts.map +0 -1
  641. package/dist/observability/soft-standards/index.js.map +0 -1
  642. package/dist/observability/soft-standards/llm-extractor.d.ts.map +0 -1
  643. package/dist/observability/soft-standards/llm-extractor.js.map +0 -1
  644. package/dist/observability/soft-standards/runtime-evaluator.d.ts.map +0 -1
  645. package/dist/observability/soft-standards/runtime-evaluator.js.map +0 -1
  646. package/dist/observability/soft-standards/skill-standards-store.d.ts.map +0 -1
  647. package/dist/observability/soft-standards/skill-standards-store.js.map +0 -1
  648. package/dist/observability/soft-standards/types.d.ts.map +0 -1
  649. package/dist/observability/soft-standards/types.js.map +0 -1
  650. package/dist/observability/text-signals.d.ts.map +0 -1
  651. package/dist/observability/text-signals.js.map +0 -1
  652. package/dist/observability/trace-adapter.d.ts.map +0 -1
  653. package/dist/observability/trace-adapter.js.map +0 -1
  654. package/dist/observability/trace-attribution.d.ts.map +0 -1
  655. package/dist/observability/trace-attribution.js.map +0 -1
  656. package/dist/observability/trace-segmenter.d.ts.map +0 -1
  657. package/dist/observability/trace-segmenter.js.map +0 -1
  658. package/dist/observability/trace-source.d.ts.map +0 -1
  659. package/dist/observability/trace-source.js.map +0 -1
  660. package/dist/renderer/html-renderer.d.ts.map +0 -1
  661. package/dist/renderer/html-renderer.js.map +0 -1
  662. package/dist/renderer/layout.d.ts.map +0 -1
  663. package/dist/renderer/layout.js.map +0 -1
  664. package/dist/renderer/observation-inbox/helpers.d.ts.map +0 -1
  665. package/dist/renderer/observation-inbox/helpers.js.map +0 -1
  666. package/dist/renderer/observation-inbox/styles.d.ts.map +0 -1
  667. package/dist/renderer/observation-inbox/styles.js.map +0 -1
  668. package/dist/renderer/observation-inbox-renderer.d.ts.map +0 -1
  669. package/dist/renderer/observation-inbox-renderer.js.map +0 -1
  670. package/dist/renderer/skill-detail-renderer.d.ts.map +0 -1
  671. package/dist/renderer/skill-detail-renderer.js.map +0 -1
  672. package/dist/renderer/skill-health-renderer.d.ts.map +0 -1
  673. package/dist/renderer/skill-health-renderer.js.map +0 -1
  674. package/dist/renderer/skill-list-renderer.d.ts.map +0 -1
  675. package/dist/renderer/skill-list-renderer.js.map +0 -1
  676. package/dist/renderer/summary.d.ts.map +0 -1
  677. package/dist/renderer/summary.js.map +0 -1
  678. package/dist/renderer/table.d.ts.map +0 -1
  679. package/dist/renderer/table.js.map +0 -1
  680. package/dist/renderer/test-view.d.ts.map +0 -1
  681. package/dist/renderer/test-view.js.map +0 -1
  682. package/dist/renderer/trends.d.ts.map +0 -1
  683. package/dist/renderer/trends.js.map +0 -1
  684. package/dist/server/job-store.d.ts.map +0 -1
  685. package/dist/server/job-store.js.map +0 -1
  686. package/dist/server/report-server.d.ts.map +0 -1
  687. package/dist/server/report-server.js.map +0 -1
  688. package/dist/server/report-store.d.ts.map +0 -1
  689. package/dist/server/report-store.js.map +0 -1
  690. package/dist/server/skill-index.d.ts.map +0 -1
  691. package/dist/server/skill-index.js.map +0 -1
  692. package/dist/server/skill-insights.d.ts.map +0 -1
  693. package/dist/server/skill-insights.js.map +0 -1
  694. package/dist/shared/hard-rules.d.ts.map +0 -1
  695. package/dist/shared/hard-rules.js.map +0 -1
  696. package/dist/shared/llm-prompts/index.d.ts.map +0 -1
  697. package/dist/shared/llm-prompts/index.js.map +0 -1
  698. package/dist/shared/llm-prompts/skill-health.d.ts.map +0 -1
  699. package/dist/shared/llm-prompts/skill-health.js.map +0 -1
  700. package/dist/shared/time.d.ts.map +0 -1
  701. package/dist/shared/time.js.map +0 -1
  702. package/dist/shared/tool-search.d.ts.map +0 -1
  703. package/dist/shared/tool-search.js.map +0 -1
  704. package/dist/types/dependencies.d.ts.map +0 -1
  705. package/dist/types/dependencies.js.map +0 -1
  706. package/dist/types/diagnosis.d.ts.map +0 -1
  707. package/dist/types/diagnosis.js.map +0 -1
  708. package/dist/types/doctor.d.ts.map +0 -1
  709. package/dist/types/doctor.js.map +0 -1
  710. package/dist/types/eval.d.ts.map +0 -1
  711. package/dist/types/eval.js.map +0 -1
  712. package/dist/types/executor.d.ts.map +0 -1
  713. package/dist/types/executor.js.map +0 -1
  714. package/dist/types/index.d.ts.map +0 -1
  715. package/dist/types/index.js.map +0 -1
  716. package/dist/types/judge.d.ts.map +0 -1
  717. package/dist/types/judge.js.map +0 -1
  718. package/dist/types/observability.d.ts.map +0 -1
  719. package/dist/types/observability.js.map +0 -1
  720. package/dist/types/report.d.ts.map +0 -1
  721. package/dist/types/report.js.map +0 -1
  722. package/dist/types/shared.d.ts.map +0 -1
  723. package/dist/types/shared.js.map +0 -1
  724. package/dist/types/skill-index.d.ts.map +0 -1
  725. package/dist/types/skill-index.js.map +0 -1
  726. package/dist/types/storage.d.ts.map +0 -1
  727. package/dist/types/storage.js.map +0 -1
  728. package/dist/util/safe-slice.d.ts.map +0 -1
  729. package/dist/util/safe-slice.js.map +0 -1
@@ -39,12 +39,12 @@ export function createFileStore(dir) {
39
39
  if (!data || typeof data !== 'object')
40
40
  return null;
41
41
  const record = data;
42
- if (record.kind === 'evaluation') {
42
+ if (record.reportKind === 'evaluation') {
43
43
  if (!record.meta || !record.summary || !Array.isArray(record.results))
44
44
  return null;
45
45
  return { ...record, id: typeof record.id === 'string' && record.id ? record.id : fallbackId };
46
46
  }
47
- if (record.kind === 'batch-evaluation') {
47
+ if (record.reportKind === 'batch-evaluation') {
48
48
  if (!record.meta || !Array.isArray(record.items))
49
49
  return null;
50
50
  return { ...record, id: typeof record.id === 'string' && record.id ? record.id : fallbackId };
@@ -57,14 +57,14 @@ export function createFileStore(dir) {
57
57
  && Array.isArray(record.results)) {
58
58
  return {
59
59
  ...record,
60
- kind: 'evaluation',
60
+ reportKind: 'evaluation',
61
61
  id: typeof record.id === 'string' && record.id ? record.id : fallbackId,
62
62
  };
63
63
  }
64
64
  return null;
65
65
  }
66
66
  function isEvaluationReport(report) {
67
- return report.kind === 'evaluation';
67
+ return report.reportKind === 'evaluation';
68
68
  }
69
69
  // Studio 每个 / 和 /skills/<name> 请求都调 list(),里面对每个 .json 同步 readFile +
70
70
  // JSON.parse。报告数上来后这是主性能瓶颈。缓存策略:fingerprint = dir mtime + 文件名
@@ -217,9 +217,9 @@ export async function queryJob(jobStore, id) {
217
217
  export async function queryRunList(reportStore) {
218
218
  return (await reportStore.list()).map((report) => ({
219
219
  id: report.id,
220
- kind: report.kind,
220
+ reportKind: report.reportKind,
221
221
  meta: report.meta,
222
- ...(report.kind === 'evaluation' ? { summary: report.summary } : { items: report.items }),
222
+ ...(report.reportKind === 'evaluation' ? { summary: report.summary } : { items: report.items }),
223
223
  }));
224
224
  }
225
225
  export async function queryRun(reportStore, id) {
@@ -247,4 +247,3 @@ export async function queryTrend(reportStore, variantName) {
247
247
  runs,
248
248
  };
249
249
  }
250
- //# sourceMappingURL=report-store.js.map
@@ -11,4 +11,3 @@ export declare function _resetSkillIndexCache(): void;
11
11
  export declare function buildSkillIndex(reports: ReportDocument[], analysesDir: string, doctorsDir: string, observationsDir?: string): SkillIndex;
12
12
  /** 单 skill 详情查询(用于 /skills/&lt;name&gt; 详情页)— 复用 buildSkillIndex 的扫描结果。 */
13
13
  export declare function getSkillEntry(idx: SkillIndex, skillName: string): SkillIndexEntry | null;
14
- //# sourceMappingURL=skill-index.d.ts.map
@@ -17,6 +17,7 @@
17
17
  */
18
18
  import { existsSync, readdirSync, readFileSync, statSync } from 'node:fs';
19
19
  import { join, isAbsolute, basename, dirname } from 'node:path';
20
+ import { confidenceOf } from '../observability/skill-health-analyzer.js';
20
21
  import { computeVerdict } from '../eval-core/verdict.js';
21
22
  import { detectInsights } from './skill-insights.js';
22
23
  import { DEFAULT_OBSERVATIONS_DIR, loadLatestObservationInboxReports } from '../observability/inbox.js';
@@ -68,7 +69,7 @@ function buildIndexFingerprint(reports, analysesDir, doctorsDir, observationsDir
68
69
  // 每一段的 right-hand-side 从旧的 "{dir-mtime}-{file-count}" 双标量升级成
69
70
  // safeDirJsonContentFingerprint 返回的 "{dir-mtime}|{file1}:{m}:{s},..."
70
71
  // content-aware 字符串。
71
- const reportIds = reports.map((r) => `${r.id}:${r.meta?.timestamp ?? ''}:${r.kind === 'evaluation' ? r.meta.evolve?.skillName ?? '' : ''}`).join(',');
72
+ const reportIds = reports.map((r) => `${r.id}:${r.meta?.timestamp ?? ''}:${r.reportKind === 'evaluation' ? r.meta.evolve?.skillName ?? '' : ''}`).join(',');
72
73
  const doctorsFp = safeDirJsonContentFingerprint(doctorsDir);
73
74
  const analysesFp = safeDirJsonContentFingerprint(analysesDir);
74
75
  const observationsFp = safeDirJsonContentFingerprint(observationsDir);
@@ -222,7 +223,7 @@ function scanDoctorReports(dir) {
222
223
  continue;
223
224
  try {
224
225
  const data = JSON.parse(readFileSync(join(dir, file), 'utf-8'));
225
- if (data?.kind !== 'doctor' || !Array.isArray(data.skills))
226
+ if (data?.reportKind !== 'doctor' || !Array.isArray(data.skills))
226
227
  continue;
227
228
  const ts = data.timestamp;
228
229
  for (const sr of data.skills) {
@@ -259,7 +260,7 @@ export function buildSkillIndex(reports, analysesDir, doctorsDir, observationsDi
259
260
  // ── eval 聚合(历史 list)─────────────────────────────────
260
261
  const evalBy = {};
261
262
  for (const r of reports) {
262
- if (r.kind !== 'evaluation')
263
+ if (r.reportKind !== 'evaluation')
263
264
  continue;
264
265
  const variants = r.meta.variants || [];
265
266
  for (const v of variants) {
@@ -295,6 +296,8 @@ export function buildSkillIndex(reports, analysesDir, doctorsDir, observationsDi
295
296
  failureRate: h.toolFailureRate,
296
297
  segmentCount: h.segmentCount,
297
298
  gapRate: h.gap?.weightedGapRate ?? 0,
299
+ // Legacy reports (pre-confidence) fall back to deriving from segmentCount.
300
+ confidence: h.confidence ?? confidenceOf(h.segmentCount),
298
301
  };
299
302
  if (!observeBy[skill])
300
303
  observeBy[skill] = [];
@@ -344,7 +347,7 @@ export function buildSkillIndex(reports, analysesDir, doctorsDir, observationsDi
344
347
  // list 页对每个 entry 跑 detectInsights 的 CPU 开销迁移到这里,只 miss 时算一次。
345
348
  const insightsBySkill = new Map();
346
349
  for (const ent of entries) {
347
- const evalReport = ent.eval ? reports.find((r) => r.id === ent.eval.reportId && r.kind === 'evaluation') : undefined;
350
+ const evalReport = ent.eval ? reports.find((r) => r.id === ent.eval.reportId && r.reportKind === 'evaluation') : undefined;
348
351
  insightsBySkill.set(ent.skillName, detectInsights(ent, evalReport ?? null, {
349
352
  diagnostics: diagnosisBundle.bySkill[ent.skillName] ?? [],
350
353
  }));
@@ -378,4 +381,3 @@ export function buildSkillIndex(reports, analysesDir, doctorsDir, observationsDi
378
381
  export function getSkillEntry(idx, skillName) {
379
382
  return idx.entries.find((e) => e.skillName === skillName) ?? null;
380
383
  }
381
- //# sourceMappingURL=skill-index.js.map
@@ -29,4 +29,3 @@ export declare function flattenRecommendations(insights: Insight[]): InsightReco
29
29
  /** 按 audience 分桶 — UI 拆区用。 */
30
30
  export declare function groupInsightsByAudience(insights: Insight[]): Record<InsightAudience, Insight[]>;
31
31
  export type _SkillEvalSnapshotForInsight = SkillEvalSnapshot;
32
- //# sourceMappingURL=skill-insights.d.ts.map
@@ -64,7 +64,7 @@ function getFailedSamples(report, variant) {
64
64
  * 各 detector 内部一般也用 `>= 2` 作为 cluster 阈值(详情参考各 detector 注释)。
65
65
  *
66
66
  * 采样不足提醒:单 skill < 2 个非诱错 sample 时不会触发任何 cluster-based insight,
67
- * 这是设计行为(没数据不下结论),用户层面应该看到"用例数 < 5,建议补样本"提示
67
+ * 这是设计行为(没数据不下结论),用户层面应该看到"用例数 < 5,建议补用例"提示
68
68
  * (在 detail page 空态有,list 页面 todo)。
69
69
  */
70
70
  function severityOfCount(n) {
@@ -74,6 +74,23 @@ function severityOfCount(n) {
74
74
  return 'medium';
75
75
  return 'low';
76
76
  }
77
+ /** Cap an observe-derived severity by sample-size confidence: an underpowered snapshot
78
+ * (very few segments) must not raise a hard high-severity insight — the gap / failure
79
+ * rate is real but the sample is too small to act on as a high-priority signal. */
80
+ function capByObserveConfidence(severity, observe) {
81
+ if (observe?.confidence === 'underpowered')
82
+ return severity === 'high' ? 'low' : severity;
83
+ return severity;
84
+ }
85
+ /** Evidence caveat appended to underpowered observe insights (null when N is sufficient). */
86
+ function underpoweredCaveat(observe) {
87
+ if (observe?.confidence !== 'underpowered')
88
+ return null;
89
+ return {
90
+ perspective: 'observe', status: 'silent',
91
+ message: `样本量仅 ${observe.segmentCount} 段(underpowered) — 以下为低置信参考信号,需累积更多真实使用 trace 才能下结论`,
92
+ };
93
+ }
77
94
  function pickIllustrations(samples, n = 2) {
78
95
  return samples.slice(0, n).map((s) => ({
79
96
  sampleId: s.sampleId,
@@ -100,7 +117,7 @@ function detectEnvironmentBlocked(evalReport, variantName) {
100
117
  id: 'environment-blocked-mocks',
101
118
  category: 'environment-blocked-mocks',
102
119
  audience: 'sample-author',
103
- title: `${blocked.length} 条评测样本因 mock 没盖到 LLM 想调的工具而 fail`,
120
+ title: `${blocked.length} 条评测用例因 mock 没盖到 LLM 想调的工具而 fail`,
104
121
  description: 'LLM 行为正确但工具调用被 mock-strict 拦截 — 这是 sample 设计问题,不是 skill 问题。要么 mock 列表漏写,要么 command_glob/file_path 写得太严没匹配到 LLM 真实调用。',
105
122
  severity: severityOfCount(blocked.length),
106
123
  affectedCount: blocked.length,
@@ -175,7 +192,7 @@ function detectSkillDocGap(doctor, evalReport, observe, variantName) {
175
192
  if (failedDocSamples.length > 0) {
176
193
  evidence.push({
177
194
  perspective: 'eval-functional', status: 'flagged',
178
- message: `${failedDocSamples.length} 条评测样本失败,LLM 没找到该读哪段文档(${failedDocSamples.map((f) => f.sampleId).join(', ')})`,
195
+ message: `${failedDocSamples.length} 条评测用例失败,LLM 没找到该读哪段文档(${failedDocSamples.map((f) => f.sampleId).join(', ')})`,
179
196
  ref: failedDocSamples[0].sampleId,
180
197
  illustrations: pickIllustrations(failedDocSamples, 2),
181
198
  });
@@ -237,7 +254,7 @@ function detectSkillDocGap(doctor, evalReport, observe, variantName) {
237
254
  category: 'skill-doc-gap',
238
255
  audience: failedDocSamples.length > 0 ? 'skill-author' : 'sample-author',
239
256
  title: failedDocSamples.length > 0
240
- ? `LLM 漏读 skill 引用的文件,导致 ${failedDocSamples.length} 条样本失败`
257
+ ? `LLM 漏读 skill 引用的文件,导致 ${failedDocSamples.length} 条用例失败`
241
258
  : 'skill 引用了文件但没声明在 sample.environment 里',
242
259
  description: 'skill 文档提到某些前置文件,但 sample 没标"已就绪"。LLM 看 prompt 时会试图先探测/Read 这些文件,在 mocks-strict 环境下被拦,流程在第一步就停。',
243
260
  severity,
@@ -341,7 +358,7 @@ NAMESPACE=$(<your-cli> auth status -o json | jq -r '.username')
341
358
  id: `failure-mode-skill:${topMode}`,
342
359
  category: 'failure-mode-skill',
343
360
  audience: 'skill-author',
344
- title: `${topSamples.length} 条样本踩同一个写法坑:${topMode}`,
361
+ title: `${topSamples.length} 条用例踩同一个写法坑:${topMode}`,
345
362
  description: MODE_USERFACING_DESC[topMode] ?? `多 sample 共享 failureMode 「${topMode}」,skill 文档对此没抑制`,
346
363
  severity: severityOfCount(topSamples.length),
347
364
  affectedCount: topSamples.length,
@@ -379,13 +396,15 @@ function detectProductionInstability(doctor, observe) {
379
396
  return null;
380
397
  const depRule = doctor?.results.find((r) => r.ruleId === 'dependencies_present'
381
398
  && (r.status === 'warn' || r.status === 'fail'));
399
+ const severity = capByObserveConfidence('high', observe);
400
+ const caveat = underpoweredCaveat(observe);
382
401
  return {
383
402
  id: 'production-instability',
384
403
  category: 'production-instability',
385
404
  audience: 'skill-author',
386
405
  title: `生产环境跑这个 skill 时,工具失败率 ${(observe.failureRate * 100).toFixed(0)}%`,
387
406
  description: '真实用户用这个 skill,LLM 调出去的工具经常报错。可能是凭证/网络/上游 SLA 问题,也可能是 skill 教错了用什么工具/参数。',
388
- severity: 'high',
407
+ severity,
389
408
  affectedCount: Math.round(observe.segmentCount * observe.failureRate),
390
409
  stageRefs: {
391
410
  observeRefs: ['high-failure-rate'],
@@ -408,11 +427,12 @@ function detectProductionInstability(doctor, observe) {
408
427
  ? 'doctor 没警告依赖,失败可能在 CLI/凭证/上游 API 层(skill 自身可能没错)'
409
428
  : '没跑 doctor,无法对照',
410
429
  },
430
+ ...(caveat ? [caveat] : []),
411
431
  ],
412
432
  recommendations: [
413
433
  {
414
434
  action: '排查产线工具失败原因:CLI 安装 / 凭证有效期 / 网络 / 上游 API SLA',
415
- priority: 'high',
435
+ priority: severity,
416
436
  },
417
437
  ...(depRule ? [{
418
438
  action: '依据 doctor 警告补依赖声明 / 改 skill 引用',
@@ -454,7 +474,7 @@ function detectCoverageGap(evalReport, observe, variantName) {
454
474
  if (evalUncovered.length > 0) {
455
475
  evidence.push({
456
476
  perspective: 'eval-functional', status: 'flagged',
457
- message: `评测样本也漏覆盖 ${evalUncovered.length} 个文件:${evalUncovered.slice(0, 3).join(', ')}${evalUncovered.length > 3 ? '...' : ''}`,
477
+ message: `评测用例也漏覆盖 ${evalUncovered.length} 个文件:${evalUncovered.slice(0, 3).join(', ')}${evalUncovered.length > 3 ? '...' : ''}`,
458
478
  });
459
479
  }
460
480
  else {
@@ -463,8 +483,10 @@ function detectCoverageGap(evalReport, observe, variantName) {
463
483
  message: '评测覆盖率 OK,gap 主要来自生产用法跟 sample 设计有差距',
464
484
  });
465
485
  }
466
- const severity = observe.gapRate >= 0.4 ? 'high'
467
- : observe.gapRate >= 0.2 ? 'medium' : 'low';
486
+ const caveat = underpoweredCaveat(observe);
487
+ if (caveat)
488
+ evidence.push(caveat);
489
+ const severity = capByObserveConfidence(observe.gapRate >= 0.4 ? 'high' : observe.gapRate >= 0.2 ? 'medium' : 'low', observe);
468
490
  return {
469
491
  id: 'coverage-gap',
470
492
  category: 'coverage-gap',
@@ -515,14 +537,20 @@ function detectSkillTooLong(doctor, observe) {
515
537
  perspective: 'observe', status: 'flagged',
516
538
  message: `生产 gap ${(observe.gapRate * 100).toFixed(0)}% — 长 skill 让 LLM 找不到段落,跟 doctor 警告印证`,
517
539
  });
540
+ const caveat = underpoweredCaveat(observe);
541
+ if (caveat)
542
+ evidence.push(caveat);
518
543
  }
544
+ // doctor warn 是主信号;只有当 observe gap 高且样本量足够时才升到 medium。underpowered 的高 gap
545
+ // 不足以把严重度抬上去 —— 跟 detectProductionInstability / detectCoverageGap 的 confidence 口径一致。
546
+ const observeBump = observe != null && observe.gapRate >= 0.3 && observe.confidence !== 'underpowered';
519
547
  return {
520
548
  id: 'skill-too-long',
521
549
  category: 'skill-too-long',
522
550
  audience: 'skill-author',
523
551
  title: 'skill 文档太长,LLM 容易漏读',
524
552
  description: 'skill 内容超过推荐上限。长 skill 在 LLM 上下文里会被压缩注意力,LLM 跟着前几段走,后面的关键约束容易漏读。',
525
- severity: observe && observe.gapRate >= 0.3 ? 'medium' : 'low',
553
+ severity: observeBump ? 'medium' : 'low',
526
554
  affectedCount: 1,
527
555
  stageRefs: {
528
556
  doctorRuleIds: ['skill_readable'],
@@ -585,7 +613,7 @@ function detectOmkDoctorBlindspot(doctor, evalReport, variantName) {
585
613
  evidence: [
586
614
  {
587
615
  perspective: 'eval-functional', status: 'flagged',
588
- message: `${candidates.length} 条样本因 ${observedModes.join(' / ')} 失败,doctor 全 pass`,
616
+ message: `${candidates.length} 条用例因 ${observedModes.join(' / ')} 失败,doctor 全 pass`,
589
617
  ref: candidates[0].sampleId,
590
618
  },
591
619
  {
@@ -606,7 +634,7 @@ function detectOmkDoctorBlindspot(doctor, evalReport, variantName) {
606
634
  snippet: `// omk 仓库新增 composer rule(omk 维护者负责,非 skill 开发者职责)
607
635
  export const skillAntiPatternComposer: ComposerRule = {
608
636
  id: 'skill_anti_patterns',
609
- kind: 'composer',
637
+ ruleKind: 'composer',
610
638
  severity: 'warn',
611
639
  labelKey: 'doctor.skill_anti_patterns.label',
612
640
  async checkAll(ctx): Promise<ComposerOutcome[]> {
@@ -785,4 +813,3 @@ export function groupInsightsByAudience(insights) {
785
813
  out[ins.audience].push(ins);
786
814
  return out;
787
815
  }
788
- //# sourceMappingURL=skill-insights.js.map
@@ -39,4 +39,3 @@ export declare function extractSkillHardRules(content: string): SkillHardRule[];
39
39
  export declare function validateSkillWorkflows(content: string): SkillWorkflowsValidationResult;
40
40
  export declare function extractSkillWorkflows(content: string): SkillWorkflow[];
41
41
  export declare function extractMarkdownStepWorkflows(content: string): SkillWorkflow[];
42
- //# sourceMappingURL=hard-rules.d.ts.map
@@ -239,4 +239,3 @@ function parseStepHeading(title) {
239
239
  return undefined;
240
240
  return { title: (match[4] || title).trim() };
241
241
  }
242
- //# sourceMappingURL=hard-rules.js.map
@@ -11,4 +11,3 @@ export declare function readPromptDocument(options: {
11
11
  id: string;
12
12
  version: string;
13
13
  }): LlmPromptDocument;
14
- //# sourceMappingURL=index.d.ts.map
@@ -19,4 +19,3 @@ export function readPromptDocument(options) {
19
19
  hash: hashPromptText(body),
20
20
  };
21
21
  }
22
- //# sourceMappingURL=index.js.map
@@ -19,4 +19,3 @@ export interface PromptInput {
19
19
  siblingSkills: string[];
20
20
  }
21
21
  export declare function buildHealthPrompt(input: PromptInput, dims: HealthDimensionSpec[]): string;
22
- //# sourceMappingURL=skill-health.d.ts.map
@@ -167,4 +167,3 @@ function renderBlock4JsonSchema(skillName, dims) {
167
167
 
168
168
  读 SKILL.md(已 inline)→ 模拟执行 → 出 JSON。`;
169
169
  }
170
- //# sourceMappingURL=skill-health.js.map
@@ -1,2 +1 @@
1
1
  export declare function durationMsBetween(start?: string, end?: string): number | undefined;
2
- //# sourceMappingURL=time.d.ts.map
@@ -7,4 +7,3 @@ export function durationMsBetween(start, end) {
7
7
  return undefined;
8
8
  return endMs - startMs;
9
9
  }
10
- //# sourceMappingURL=time.js.map
@@ -6,4 +6,3 @@ export declare function toolCallQuery(tc: ToolCallInfo): {
6
6
  export declare function bashSearchOrProbeCommand(command: string): boolean;
7
7
  export declare function isSearchToolCall(tc: ToolCallInfo): boolean;
8
8
  export declare function isFailedSearchToolCall(tc: ToolCallInfo): boolean;
9
- //# sourceMappingURL=tool-search.d.ts.map
@@ -101,4 +101,3 @@ export function isFailedSearchToolCall(tc) {
101
101
  }
102
102
  return false;
103
103
  }
104
- //# sourceMappingURL=tool-search.js.map
@@ -20,4 +20,3 @@ export interface DependencyCheckResult {
20
20
  ok: boolean;
21
21
  missing: DependencyIssue[];
22
22
  }
23
- //# sourceMappingURL=dependencies.d.ts.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=dependencies.js.map
@@ -85,4 +85,3 @@ export interface StudioDiagnosisSummary {
85
85
  bySkill: Record<string, number>;
86
86
  byAudience: Record<string, number>;
87
87
  }
88
- //# sourceMappingURL=diagnosis.d.ts.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=diagnosis.js.map
@@ -10,7 +10,7 @@ export type DoctorSkillStatus = 'pass' | 'warn' | 'fail';
10
10
  export type DoctorOutcome = 'passed' | 'warnings_only' | 'failed';
11
11
  /** Bumped whenever DoctorReport schema changes in a way CI consumers should
12
12
  * be able to detect. CI can pin/check this when parsing the JSON. */
13
- export declare const DOCTOR_REPORT_SCHEMA_VERSION = "1.0.0";
13
+ export declare const DOCTOR_REPORT_SCHEMA_VERSION = "2.0.0";
14
14
  export interface DoctorRuleResult {
15
15
  ruleId: string;
16
16
  severity: DoctorSeverity;
@@ -41,11 +41,11 @@ export interface ComposerOutcome extends DoctorRuleCheckOutcome {
41
41
  severity?: DoctorSeverity;
42
42
  }
43
43
  /** 复合 rule:一次 checkAll() 产出多条 result,适合"单次 LLM 调用 → N 个维度结果"
44
- * 这类场景。doctor engine 检测 kind === 'composer' 时把数组结果展开,每条共享
44
+ * 这类场景。doctor engine 检测 ruleKind === 'composer' 时把数组结果展开,每条共享
45
45
  * 同一个 groupId(= composer.id)以便 renderer 分组。 */
46
46
  export interface ComposerRule {
47
47
  id: string;
48
- kind: 'composer';
48
+ ruleKind: 'composer';
49
49
  /** 默认 severity(子 outcome 未指定时用)。 */
50
50
  severity: DoctorSeverity;
51
51
  /** 默认 labelKey(子 outcome 未指定时用,通常是 composer 整体的标签)。 */
@@ -94,7 +94,7 @@ export interface DoctorSkillReport {
94
94
  status: DoctorSkillStatus;
95
95
  }
96
96
  export interface DoctorReport {
97
- kind: 'doctor';
97
+ reportKind: 'doctor';
98
98
  /** Schema version the JSON consumer can pin/check. Bumped on any
99
99
  * user-visible change to this report's shape. See DOCTOR_REPORT_SCHEMA_VERSION. */
100
100
  schemaVersion: string;
@@ -154,4 +154,3 @@ export interface DoctorRunOptions {
154
154
  runHealthCheck?: boolean;
155
155
  effort?: 'low' | 'medium' | 'high' | 'xhigh' | 'max';
156
156
  }
157
- //# sourceMappingURL=doctor.d.ts.map
@@ -1,7 +1,6 @@
1
1
  /** Bumped whenever DoctorReport schema changes in a way CI consumers should
2
2
  * be able to detect. CI can pin/check this when parsing the JSON. */
3
- export const DOCTOR_REPORT_SCHEMA_VERSION = '1.0.0';
3
+ export const DOCTOR_REPORT_SCHEMA_VERSION = '2.0.0';
4
4
  export function isComposerRule(r) {
5
- return r.kind === 'composer';
5
+ return r.ruleKind === 'composer';
6
6
  }
7
- //# sourceMappingURL=doctor.js.map
@@ -164,6 +164,8 @@ export interface VariantSpec {
164
164
  name: string;
165
165
  role: ExperimentRole;
166
166
  expr: string;
167
+ cwd?: string;
168
+ allowedSkills?: string[];
167
169
  }
168
170
  export interface EvalConfigVariant {
169
171
  name: string;
@@ -374,4 +376,3 @@ export interface Task {
374
376
  cwd: string | null;
375
377
  _sample: Sample;
376
378
  }
377
- //# sourceMappingURL=eval.d.ts.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=eval.js.map
@@ -142,10 +142,9 @@ export interface ExecutorRuntimeBinary {
142
142
  export interface ExecutorRuntimeFingerprint {
143
143
  executor: string;
144
144
  model: string;
145
- kind: ExecutorRuntimeKind;
145
+ runtimeKind: ExecutorRuntimeKind;
146
146
  fingerprint: string;
147
147
  binary?: ExecutorRuntimeBinary;
148
148
  sdk?: ExecutorRuntimePackage;
149
149
  capabilities: ExecutorRuntimeCapabilities;
150
150
  }
151
- //# sourceMappingURL=executor.d.ts.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=executor.js.map
@@ -9,4 +9,4 @@ export * from './diagnosis.js';
9
9
  export * from './dependencies.js';
10
10
  export * from './skill-index.js';
11
11
  export * from './observability.js';
12
- //# sourceMappingURL=index.d.ts.map
12
+ export * from './managed.js';
@@ -9,4 +9,4 @@ export * from './diagnosis.js';
9
9
  export * from './dependencies.js';
10
10
  export * from './skill-index.js';
11
11
  export * from './observability.js';
12
- //# sourceMappingURL=index.js.map
12
+ export * from './managed.js';
@@ -192,4 +192,3 @@ export interface GradeResult {
192
192
  * → judgeCostUSD 累计是 lower-bound 而非真值。缺位 / true 当真值。 */
193
193
  judgeCostReportedByExecutor?: boolean;
194
194
  }
195
- //# sourceMappingURL=judge.d.ts.map
@@ -1,4 +1,3 @@
1
1
  export const FAILURE_MODES = [
2
2
  '工作流跳步', '硬编码值', '幻觉输出', '工具误用', '环境拦截', '误读约束', '其他',
3
3
  ];
4
- //# sourceMappingURL=judge.js.map
@@ -0,0 +1,85 @@
1
+ import type { ArtifactKind } from './eval.js';
2
+ /**
3
+ * 受管 artifact 记录(managed record)——证据门控管理的最小持久单元。
4
+ *
5
+ * 设计原则(见 docs/specs/evidence-gated-management.md §5/§6):**只落盘事实与指针**。
6
+ * verdict / 可比性 / underpowered 是从 Report 推导出来的,不是这里的持久列;生命周期标签
7
+ * (installed / measurable / stale)也是读时推导(见 `deriveManagedState`),不持久 ——
8
+ * 持久一个会随源文件漂移而过期的标签等于让记录"撒谎"。需要"状态随时间"时持久化
9
+ * append-only 事件(installedAt、未来的 promote/reject/rollback 决定),而非可变标签。
10
+ *
11
+ * 判别字命名:外层 `recordKind` / 决定的 `decisionKind` 都是限定名;唯一的裸 `kind` 是
12
+ * `ManagedArtifactRecord.kind: ArtifactKind`——这正是裸 kind 该有的语义(知识 artifact 类型)。
13
+ */
14
+ /** 一次分发落点的事实(把 skill 拷进某个 agent 工具 skill 目录)。 */
15
+ export interface ManagedDistributionTarget {
16
+ /** 目标标签,如 'Claude Code' / 'Codex/AGENTS' / 'custom'。 */
17
+ label: string;
18
+ /** 实际写入的绝对路径({skillsDir}/{name} 或 {skillsDir}/{name}.md)。 */
19
+ path: string;
20
+ /** 拷到此目标的内容 hash(= 安装时源 hash)。 */
21
+ contentHash: string;
22
+ copiedAt: string;
23
+ }
24
+ /** 指向一份 Report 的引用——不是 verdict 本体。install 时为空,eval/promote 追加。 */
25
+ export interface ManagedEvidenceRef {
26
+ reportId: string;
27
+ /** 该 report 测的是哪份内容(artifact contentHash)。读时只把与记录当前 contentHash 匹配的
28
+ * evidence 算作当前有效证据——重装到新内容后旧证据保留供回滚,但不让新内容显得已测。 */
29
+ contentHash: string;
30
+ recordedAt: string;
31
+ }
32
+ export type ManagedDecisionKind = 'promote' | 'reject' | 'rollback';
33
+ /** 一次人工管理决定。install 时为空,promote/reject/rollback 追加。 */
34
+ export interface ManagedDecision {
35
+ decisionKind: ManagedDecisionKind;
36
+ actor: string;
37
+ decidedAt: string;
38
+ reason?: string;
39
+ }
40
+ export interface ManagedArtifactSource {
41
+ /** 源类型(限定判别字,非裸 kind)。`file`=本地路径;`git`=当前仓库的某个 ref。 */
42
+ sourceKind: 'file' | 'git';
43
+ /** 源身份,按 sourceKind 分义:
44
+ * - file:本地重哈根(目录-skill 为根目录、文件-skill 为 .md),`hashArtifactSource(locator, isDirectorySkill)` 直接 round-trip;
45
+ * - git:`git:<ref>:<name>`(非临时物化路径),drift 由 resolver 重物化重哈 —— mutable ref 给真实漂移、SHA 给不可变。 */
46
+ locator: string;
47
+ /** git 来源的 ref(file 源无)。 */
48
+ ref?: string;
49
+ /** 目录-skill(SKILL.md + assets)还是裸 .md 文件-skill。 */
50
+ isDirectorySkill: boolean;
51
+ }
52
+ /** 一条记录一个文件 `.omk/managed/<id>.json`,自带 recordKind + schemaVersion 便于单独迁移。 */
53
+ export interface ManagedArtifactRecord {
54
+ recordKind: 'managed-artifact';
55
+ /** v2 起 source 带 sourceKind(多源化)。v1(仅 #211)无,按去兼容直接判脏丢弃、不迁移。 */
56
+ schemaVersion: 2;
57
+ /** 稳定身份 = hash(kind, name);源路径是可变属性、不进 id——挪动源文件不孤儿化记录。 */
58
+ id: string;
59
+ name: string;
60
+ kind: ArtifactKind;
61
+ source: ManagedArtifactSource;
62
+ /** 安装时的源内容 hash——drift baseline。 */
63
+ contentHash: string;
64
+ /** 首次纳管时间("under management since");per-target 时效看 distribution[].copiedAt。 */
65
+ installedAt: string;
66
+ distribution: ManagedDistributionTarget[];
67
+ evidence: ManagedEvidenceRef[];
68
+ decisions: ManagedDecision[];
69
+ }
70
+ /** 读时推导的生命周期标签——不持久(见文件头说明)。 */
71
+ export type ManagedLifecycleLabel = 'discovered' | 'installed' | 'measurable' | 'stale';
72
+ export interface DerivedManagedState {
73
+ label: ManagedLifecycleLabel;
74
+ /** 当前源 hash 与记录的 contentHash 不一致(或源已不在)。 */
75
+ drifted: boolean;
76
+ hasEvidence: boolean;
77
+ }
78
+ /** 推导所需、但不在记录里的当前事实(源文件现状、doctor/samples 状态)。 */
79
+ export interface DeriveManagedStateInput {
80
+ record: ManagedArtifactRecord;
81
+ /** 源文件当前内容 hash;undefined = 源已不在。 */
82
+ currentContentHash?: string;
83
+ /** 是否已有 samples / doctor 通过(用于 measurable);install 不传。 */
84
+ hasSamplesOrDoctorPass?: boolean;
85
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -43,7 +43,7 @@ export interface ObservationReviewStateEntry {
43
43
  snippet?: string;
44
44
  }
45
45
  export interface ObservationReviewState {
46
- kind: 'observe-review-state';
46
+ reportKind: 'observe-review-state';
47
47
  schemaVersion: 1;
48
48
  updatedAt: string;
49
49
  entries: Record<string, ObservationReviewStateEntry>;
@@ -184,7 +184,7 @@ export interface ObservationSessionTimeRange {
184
184
  durationMs?: number;
185
185
  }
186
186
  export interface ObservationInboxReport {
187
- kind: 'observe-inbox';
187
+ reportKind: 'observe-inbox';
188
188
  schemaVersion: 1;
189
189
  meta: {
190
190
  tracePath: string;
@@ -735,7 +735,7 @@ export interface ExperienceSkillSummary {
735
735
  relatedObservationIds: string[];
736
736
  }
737
737
  export interface ObservationExperienceReport {
738
- kind: 'observe-experience';
738
+ reportKind: 'observe-experience';
739
739
  schemaVersion: 1;
740
740
  scope: 'evidence-only';
741
741
  generatedAt: string;
@@ -753,7 +753,7 @@ export interface ObservationExperienceReport {
753
753
  }
754
754
  export type ObservationRuntimeCheckStatus = 'passed' | 'attention' | 'manual_review';
755
755
  export interface ObservationRuntimeCheck {
756
- kind: 'hardRule' | 'workflowNode';
756
+ nodeKind: 'hardRule' | 'workflowNode';
757
757
  id: string;
758
758
  title: string;
759
759
  expectation: string;
@@ -770,7 +770,7 @@ export interface SkillRuntimeEvidencePackRef extends Pick<ExperienceEvidenceRef,
770
770
  }
771
771
  export interface SkillRuntimeEvidencePackNode {
772
772
  nodeId: string;
773
- kind: 'workflowNode' | 'hardRule';
773
+ nodeKind: 'workflowNode' | 'hardRule';
774
774
  title: string;
775
775
  expectation: string;
776
776
  deterministicStatus: ObservationRuntimeCheckStatus;
@@ -862,4 +862,3 @@ export interface ObservationSkillChain {
862
862
  evidencePack?: SkillRuntimeEvidencePack;
863
863
  };
864
864
  }
865
- //# sourceMappingURL=observability.d.ts.map
@@ -11,4 +11,3 @@
11
11
  * - 跨层共享类型集中在 types/,单一来源
12
12
  */
13
13
  export {};
14
- //# sourceMappingURL=observability.js.map
@@ -341,7 +341,7 @@ export interface SampleSnapshot {
341
341
  tripwire?: boolean;
342
342
  }
343
343
  export interface EvaluationReport {
344
- kind: 'evaluation';
344
+ reportKind: 'evaluation';
345
345
  id: string;
346
346
  meta: ReportMeta;
347
347
  summary: Record<string, VariantSummary>;
@@ -394,7 +394,7 @@ export interface BatchEvaluationItem {
394
394
  variance?: VarianceData;
395
395
  }
396
396
  export interface BatchEvaluationReport {
397
- kind: 'batch-evaluation';
397
+ reportKind: 'batch-evaluation';
398
398
  id: string;
399
399
  mode: 'skill';
400
400
  meta: BatchEvaluationMeta;
@@ -557,4 +557,3 @@ export interface SaturationData {
557
557
  reason: string;
558
558
  }>;
559
559
  }
560
- //# sourceMappingURL=report.d.ts.map