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
@@ -0,0 +1,76 @@
1
+ import type { ArtifactKind, DeriveManagedStateInput, DerivedManagedState, ManagedArtifactRecord, ManagedArtifactSource, ManagedDistributionTarget } from '../types/index.js';
2
+ /**
3
+ * 受管记录的 per-record 文件存储。一条记录一个 `.omk/managed/<id>.json`,镜像 report-store 的
4
+ * 成熟模式(原子 tmp+rename):每次 install 只碰自己那个文件,independent write、不丢别人、
5
+ * 天然可扩展。无数据库——这个规模(每项目几十条、CLI 单写者)JSON 文件足够,且保住"可读可
6
+ * grep 可 diff"的透明价值。
7
+ *
8
+ * **消费方无关的核心层**:本模块不依赖 CLI、不打印、不退出,所有函数接收显式 `dir`。CLI 命令只是
9
+ * 众多消费方之一;omk 长成平台后 server / web / SDK 复用同一模块,甚至换 DB 实现也只需镜像这组
10
+ * load/upsert 签名。记录的构造统一走 `buildManagedArtifactRecord`,新增字段只改这一处、所有消费方继承。
11
+ */
12
+ export declare function managedDir(cwd?: string): string;
13
+ export declare function globalManagedDir(): string;
14
+ export declare function recordPath(dir: string, id: string): string;
15
+ /** 稳定身份 = hash(kind, name)。源路径是可变属性、不进 id。kind 取自固定枚举(无 `|`),分隔可注入。 */
16
+ export declare function managedRecordId(kind: ArtifactKind, name: string): string;
17
+ /**
18
+ * 给定相对源根的路径分段(空数组 = 源根本身),判断是否进可分发树。hash 的 walk、copy 的 filter、
19
+ * git 物化共用此一处,保证三者完全一致。
20
+ *
21
+ * 关键:检查**每一段**而非只看叶子。本地 walk / cpSync 是逐层下降、命中目录即剪枝,只看叶子也够;
22
+ * 但 git ls-tree 给的是**扁平路径**(如 `.omk/samples.json`),只看叶子 `samples.json` 会让 `.omk`
23
+ * 内容漏过。故:任一段命中全局排除即排除;首段命中 root-only(evolve)即排除(嵌套同名是合法资产)。
24
+ */
25
+ export declare function isDistributablePath(segments: string[]): boolean;
26
+ /**
27
+ * artifact 内容 hash —— drift baseline 与 evidence 绑定的依据。
28
+ * - 文件-skill:单个 .md 的字节;
29
+ * - 目录-skill:覆盖**整棵可分发目录树**(SKILL.md + references/ 等资产,但排除 .omk / .git /
30
+ * evolve 等评测迭代产物),按相对路径排序后把每个文件的`路径 + 字节长度 + 内容`喂进同一个
31
+ * sha256 —— 改任意资产都会令 hash 变化、drift 不漏;只补样本则 hash 不动。
32
+ * 用 createHash 直接喂 Buffer(字节级,二进制资产也稳;分隔符是运行时字节,源码里不引入任何不可见字符)。
33
+ * 读时(未来 list / drift 检查)用同一函数重算比对。
34
+ */
35
+ export declare function hashArtifactSource(source: string, isDirectorySkill: boolean): string;
36
+ export declare function loadManagedRecord(dir: string, id: string): ManagedArtifactRecord | null;
37
+ /** 读全部记录。项目目录空 → 兜底全局(镜像 observe inbox 的 project→global)。 */
38
+ export declare function loadAllManagedRecords(dir?: string): ManagedArtifactRecord[];
39
+ /**
40
+ * 纯合并逻辑(无 IO):install 写的是事实,绝不动 evidence/decisions(那是 eval/promote 的地盘)。
41
+ * - distribution 按 path 去重(同路径以新值替换);
42
+ * - evidence / decisions 一律保留旧值(install 带来的恒为空)——这是设计要的"版本历史 + 附带证据",
43
+ * 用来支撑 rollback;**但保留 ≠ 当作当前有效**:每条 evidence 携带它测的 contentHash,读时由
44
+ * `deriveManagedState` 只把与当前 contentHash 匹配的 evidence 算作当前证据,所以重装到新内容后
45
+ * 旧证据仍在记录里(可回滚),却不会让新内容被读成 measurable;
46
+ * - installedAt 保留首次("under management since");contentHash / source 刷新到本次安装。
47
+ */
48
+ export declare function mergeManagedRecord(prev: ManagedArtifactRecord | null, next: ManagedArtifactRecord): ManagedArtifactRecord;
49
+ /** 读旧记录 → 合并 → 原子 tmp+rename 只写该 id 的文件。返回合并后记录。 */
50
+ export declare function upsertManagedRecord(dir: string, record: ManagedArtifactRecord): ManagedArtifactRecord;
51
+ /**
52
+ * 统一的记录构造点——所有消费方(CLI / 未来 server / SDK)经此组装,保证 schema 一致。
53
+ * 只接收事实(身份、源、hash、分发落点);evidence/decisions 恒为空(eval/promote 的地盘)。
54
+ */
55
+ export declare function buildManagedArtifactRecord(input: {
56
+ name: string;
57
+ kind: ArtifactKind;
58
+ source: ManagedArtifactSource;
59
+ contentHash: string;
60
+ installedAt: string;
61
+ distribution: ManagedDistributionTarget[];
62
+ id?: string;
63
+ }): ManagedArtifactRecord;
64
+ /** install 调用的便捷封装。 */
65
+ export declare function recordManagedArtifact(record: ManagedArtifactRecord, opts?: {
66
+ dir?: string;
67
+ }): ManagedArtifactRecord;
68
+ /**
69
+ * 读时推导生命周期标签。
70
+ * - 源缺失或 hash 漂(当前内容 ≠ 记录 contentHash)→ stale;
71
+ * - 否则有**当前**证据 / samples → measurable;
72
+ * - 否则 installed。
73
+ * 「当前证据」= contentHash 与记录当前 contentHash 匹配的 evidence —— 旧内容的 evidence 不算数,
74
+ * 这正是 #203「证据必须跟 artifact 一起走」的读时保证。`'discovered'` 留给无分发的记录,此函数不产生。
75
+ */
76
+ export declare function deriveManagedState(input: DeriveManagedStateInput): DerivedManagedState;
@@ -0,0 +1,260 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { existsSync, mkdirSync, readFileSync, readdirSync, renameSync, writeFileSync } from 'node:fs';
3
+ import { homedir } from 'node:os';
4
+ import { join, normalize } from 'node:path';
5
+ import { hashString } from '../eval-core/evaluation-reporting.js';
6
+ /**
7
+ * 受管记录的 per-record 文件存储。一条记录一个 `.omk/managed/<id>.json`,镜像 report-store 的
8
+ * 成熟模式(原子 tmp+rename):每次 install 只碰自己那个文件,independent write、不丢别人、
9
+ * 天然可扩展。无数据库——这个规模(每项目几十条、CLI 单写者)JSON 文件足够,且保住"可读可
10
+ * grep 可 diff"的透明价值。
11
+ *
12
+ * **消费方无关的核心层**:本模块不依赖 CLI、不打印、不退出,所有函数接收显式 `dir`。CLI 命令只是
13
+ * 众多消费方之一;omk 长成平台后 server / web / SDK 复用同一模块,甚至换 DB 实现也只需镜像这组
14
+ * load/upsert 签名。记录的构造统一走 `buildManagedArtifactRecord`,新增字段只改这一处、所有消费方继承。
15
+ */
16
+ export function managedDir(cwd = process.cwd()) {
17
+ return join(cwd, '.omk', 'managed');
18
+ }
19
+ export function globalManagedDir() {
20
+ return join(homedir(), '.oh-my-knowledge', 'managed');
21
+ }
22
+ export function recordPath(dir, id) {
23
+ return join(dir, `${id}.json`);
24
+ }
25
+ /** 稳定身份 = hash(kind, name)。源路径是可变属性、不进 id。kind 取自固定枚举(无 `|`),分隔可注入。 */
26
+ export function managedRecordId(kind, name) {
27
+ return hashString(`${kind}|${name}`);
28
+ }
29
+ /**
30
+ * 不进 artifact「可分发树」的条目 —— omk 的评测 / 迭代 / VCS / 系统产物,既不该被拷进 agent
31
+ * skill 目录,也不该计入 artifact contentHash。区分两类语义,避免误伤合法嵌套资产:
32
+ * - **任意层级排除**:隐藏元数据 / VCS / 系统 / 依赖目录,任何深度出现都是噪声
33
+ * (`.omk` = samples / managed / observations;`.git`;`node_modules`;OS 垃圾);
34
+ * - **仅源根第一层排除**:omk 保留的工作目录,只在 skill 根有保留语义,嵌套同名是用户合法资产
35
+ * (`evolve` 是 `<skillDir>/evolve/` 候选快照;但 `references/evolve/guide.md` 应正常分发并计入 hash)。
36
+ * spec 里 artifact content hash 与 sample-set hash 是分开的证据轴,故只补样本(.omk)不该改 hash。
37
+ */
38
+ const GLOBAL_EXCLUDED_NAMES = new Set(['.omk', '.git', 'node_modules', '.DS_Store', 'Thumbs.db']);
39
+ const ROOT_ONLY_EXCLUDED_NAMES = new Set(['evolve']);
40
+ /**
41
+ * 给定相对源根的路径分段(空数组 = 源根本身),判断是否进可分发树。hash 的 walk、copy 的 filter、
42
+ * git 物化共用此一处,保证三者完全一致。
43
+ *
44
+ * 关键:检查**每一段**而非只看叶子。本地 walk / cpSync 是逐层下降、命中目录即剪枝,只看叶子也够;
45
+ * 但 git ls-tree 给的是**扁平路径**(如 `.omk/samples.json`),只看叶子 `samples.json` 会让 `.omk`
46
+ * 内容漏过。故:任一段命中全局排除即排除;首段命中 root-only(evolve)即排除(嵌套同名是合法资产)。
47
+ */
48
+ export function isDistributablePath(segments) {
49
+ if (segments.length === 0)
50
+ return true; // 源根永远算
51
+ for (const seg of segments) {
52
+ if (GLOBAL_EXCLUDED_NAMES.has(seg))
53
+ return false;
54
+ }
55
+ if (ROOT_ONLY_EXCLUDED_NAMES.has(segments[0]))
56
+ return false;
57
+ return true;
58
+ }
59
+ /**
60
+ * artifact 内容 hash —— drift baseline 与 evidence 绑定的依据。
61
+ * - 文件-skill:单个 .md 的字节;
62
+ * - 目录-skill:覆盖**整棵可分发目录树**(SKILL.md + references/ 等资产,但排除 .omk / .git /
63
+ * evolve 等评测迭代产物),按相对路径排序后把每个文件的`路径 + 字节长度 + 内容`喂进同一个
64
+ * sha256 —— 改任意资产都会令 hash 变化、drift 不漏;只补样本则 hash 不动。
65
+ * 用 createHash 直接喂 Buffer(字节级,二进制资产也稳;分隔符是运行时字节,源码里不引入任何不可见字符)。
66
+ * 读时(未来 list / drift 检查)用同一函数重算比对。
67
+ */
68
+ export function hashArtifactSource(source, isDirectorySkill) {
69
+ if (!isDirectorySkill) {
70
+ return createHash('sha256').update(readFileSync(source)).digest('hex').slice(0, 12);
71
+ }
72
+ const rels = [];
73
+ const walk = (dir, segments) => {
74
+ for (const entry of readdirSync(dir, { withFileTypes: true })) {
75
+ const segs = [...segments, entry.name];
76
+ if (!isDistributablePath(segs))
77
+ continue;
78
+ // 软链既非 isFile 也非 isDirectory,天然跳过 —— 与 copyArtifactToTarget 的 filter 一致
79
+ // (hash 覆盖的 == 分发出去的),避免软链目标改变却不触发 drift,也回避软链环。
80
+ if (entry.isDirectory())
81
+ walk(join(dir, entry.name), segs);
82
+ else if (entry.isFile())
83
+ rels.push(segs.join('/'));
84
+ }
85
+ };
86
+ walk(source, []);
87
+ rels.sort();
88
+ const h = createHash('sha256');
89
+ const sep = Buffer.from([0]);
90
+ for (const rel of rels) {
91
+ const content = readFileSync(join(source, rel));
92
+ // 路径与内容都做长度前缀,彻底排除"不同树拼出同一串"的歧义(文件名虽不含 NUL,核心层仍按可注入防)。
93
+ h.update(String(Buffer.byteLength(rel)));
94
+ h.update(sep);
95
+ h.update(rel);
96
+ h.update(sep);
97
+ h.update(String(content.length));
98
+ h.update(sep);
99
+ h.update(content);
100
+ h.update(sep);
101
+ }
102
+ return h.digest('hex').slice(0, 12);
103
+ }
104
+ function isStringField(v) {
105
+ return typeof v === 'string';
106
+ }
107
+ // 校验到元素级:记录文件是用户可手改的(透明性是设计价值),`evidence:[null]` / 缺字段的 distribution
108
+ // 都是现实的坏手改;若只查 Array.isArray,坏元素会在 deriveManagedState / mergeManagedRecord 里
109
+ // 解引用崩溃(且在 load 的 try/catch 之外)。这里直接判脏 → load 丢弃该文件,消费方永远拿不到半成品。
110
+ function isManagedArtifactRecord(value) {
111
+ if (!value || typeof value !== 'object')
112
+ return false;
113
+ const r = value;
114
+ if (!(r.recordKind === 'managed-artifact'
115
+ && r.schemaVersion === 2
116
+ && isStringField(r.id)
117
+ && isStringField(r.name)
118
+ && isStringField(r.kind)
119
+ && isStringField(r.contentHash)
120
+ && r.source && typeof r.source === 'object'
121
+ && isStringField(r.source.locator)
122
+ && isStringField(r.source.sourceKind)
123
+ && Array.isArray(r.distribution)
124
+ && Array.isArray(r.evidence)
125
+ && Array.isArray(r.decisions)))
126
+ return false;
127
+ const okDist = r.distribution.every((d) => d && typeof d === 'object'
128
+ && isStringField(d.path) && isStringField(d.contentHash));
129
+ const okEv = r.evidence.every((e) => e && typeof e === 'object'
130
+ && isStringField(e.reportId) && isStringField(e.contentHash));
131
+ const okDec = r.decisions.every((d) => d && typeof d === 'object'
132
+ && isStringField(d.decisionKind));
133
+ return okDist && okEv && okDec;
134
+ }
135
+ export function loadManagedRecord(dir, id) {
136
+ const path = recordPath(dir, id);
137
+ if (!existsSync(path))
138
+ return null;
139
+ try {
140
+ const parsed = JSON.parse(readFileSync(path, 'utf-8'));
141
+ return isManagedArtifactRecord(parsed) ? parsed : null;
142
+ }
143
+ catch {
144
+ return null;
145
+ }
146
+ }
147
+ function readRecordsFromDir(dir) {
148
+ if (!existsSync(dir))
149
+ return [];
150
+ const out = [];
151
+ for (const entry of readdirSync(dir)) {
152
+ if (!entry.endsWith('.json'))
153
+ continue;
154
+ try {
155
+ const parsed = JSON.parse(readFileSync(join(dir, entry), 'utf-8'));
156
+ if (isManagedArtifactRecord(parsed))
157
+ out.push(parsed);
158
+ }
159
+ catch {
160
+ // 跳过损坏文件
161
+ }
162
+ }
163
+ return out;
164
+ }
165
+ /** 读全部记录。项目目录空 → 兜底全局(镜像 observe inbox 的 project→global)。 */
166
+ export function loadAllManagedRecords(dir = managedDir()) {
167
+ const local = readRecordsFromDir(dir);
168
+ if (local.length > 0)
169
+ return local;
170
+ const global = globalManagedDir();
171
+ if (dir !== global) {
172
+ const fallback = readRecordsFromDir(global);
173
+ if (fallback.length > 0)
174
+ return fallback;
175
+ }
176
+ return local;
177
+ }
178
+ /**
179
+ * 纯合并逻辑(无 IO):install 写的是事实,绝不动 evidence/decisions(那是 eval/promote 的地盘)。
180
+ * - distribution 按 path 去重(同路径以新值替换);
181
+ * - evidence / decisions 一律保留旧值(install 带来的恒为空)——这是设计要的"版本历史 + 附带证据",
182
+ * 用来支撑 rollback;**但保留 ≠ 当作当前有效**:每条 evidence 携带它测的 contentHash,读时由
183
+ * `deriveManagedState` 只把与当前 contentHash 匹配的 evidence 算作当前证据,所以重装到新内容后
184
+ * 旧证据仍在记录里(可回滚),却不会让新内容被读成 measurable;
185
+ * - installedAt 保留首次("under management since");contentHash / source 刷新到本次安装。
186
+ */
187
+ export function mergeManagedRecord(prev, next) {
188
+ if (!prev)
189
+ return next;
190
+ // 按归一化路径去重(消除尾斜杠 / `.` / 重复分隔导致同一物理目标被记两条)。normalize 保留尾斜杠,故再去尾。
191
+ const normKey = (p) => normalize(p).replace(/[\\/]+$/, '') || p;
192
+ const byPath = new Map();
193
+ for (const t of prev.distribution)
194
+ byPath.set(normKey(t.path), t);
195
+ for (const t of next.distribution)
196
+ byPath.set(normKey(t.path), t);
197
+ // 维护点:`...next` 取本次安装的事实,下面四个字段从 prev 保留(历史 / 首次时间)。
198
+ // 将来若新增任何"必须从安装基线保留"的字段,务必加进这份覆盖清单,否则会被 next 静默覆盖成 undefined。
199
+ // 注意语义边界:distribution 是**多源容忍**的(按归一化 path 累积去重),而 source / contentHash 是
200
+ // **末次写入(单源)**。同一 (kind,name) 先 file 后 git 重装会得到一条 source=git 的记录,但 distribution
201
+ // 仍含 file 时代的落点 —— 那些落点会按 git 的 contentHash 被判 drift。这是"换源即重基线"的有意取舍。
202
+ return {
203
+ ...next,
204
+ installedAt: prev.installedAt,
205
+ distribution: [...byPath.values()],
206
+ evidence: prev.evidence,
207
+ decisions: prev.decisions,
208
+ };
209
+ }
210
+ /** 读旧记录 → 合并 → 原子 tmp+rename 只写该 id 的文件。返回合并后记录。 */
211
+ export function upsertManagedRecord(dir, record) {
212
+ const merged = mergeManagedRecord(loadManagedRecord(dir, record.id), record);
213
+ mkdirSync(dir, { recursive: true });
214
+ const path = recordPath(dir, record.id);
215
+ const tmp = `${path}.tmp.${process.pid}.${Date.now()}`;
216
+ writeFileSync(tmp, JSON.stringify(merged, null, 2));
217
+ renameSync(tmp, path);
218
+ return merged;
219
+ }
220
+ /**
221
+ * 统一的记录构造点——所有消费方(CLI / 未来 server / SDK)经此组装,保证 schema 一致。
222
+ * 只接收事实(身份、源、hash、分发落点);evidence/decisions 恒为空(eval/promote 的地盘)。
223
+ */
224
+ export function buildManagedArtifactRecord(input) {
225
+ return {
226
+ recordKind: 'managed-artifact',
227
+ schemaVersion: 2,
228
+ id: input.id ?? managedRecordId(input.kind, input.name),
229
+ name: input.name,
230
+ kind: input.kind,
231
+ source: input.source,
232
+ contentHash: input.contentHash,
233
+ installedAt: input.installedAt,
234
+ distribution: input.distribution,
235
+ evidence: [],
236
+ decisions: [],
237
+ };
238
+ }
239
+ /** install 调用的便捷封装。 */
240
+ export function recordManagedArtifact(record, opts = {}) {
241
+ return upsertManagedRecord(opts.dir ?? managedDir(), record);
242
+ }
243
+ /**
244
+ * 读时推导生命周期标签。
245
+ * - 源缺失或 hash 漂(当前内容 ≠ 记录 contentHash)→ stale;
246
+ * - 否则有**当前**证据 / samples → measurable;
247
+ * - 否则 installed。
248
+ * 「当前证据」= contentHash 与记录当前 contentHash 匹配的 evidence —— 旧内容的 evidence 不算数,
249
+ * 这正是 #203「证据必须跟 artifact 一起走」的读时保证。`'discovered'` 留给无分发的记录,此函数不产生。
250
+ */
251
+ export function deriveManagedState(input) {
252
+ const { record, currentContentHash, hasSamplesOrDoctorPass } = input;
253
+ const hasEvidence = record.evidence.some((e) => e.contentHash === record.contentHash);
254
+ const drifted = currentContentHash === undefined || currentContentHash !== record.contentHash;
255
+ if (drifted)
256
+ return { label: 'stale', drifted: true, hasEvidence };
257
+ if (hasEvidence || hasSamplesOrDoctorPass)
258
+ return { label: 'measurable', drifted: false, hasEvidence };
259
+ return { label: 'installed', drifted: false, hasEvidence };
260
+ }
@@ -34,4 +34,3 @@ export interface SkillDeclarationCheck {
34
34
  export declare function loadFrontmatterSkillType(skillName: string, cwd?: string): ExperienceRuntimeSkillType | undefined;
35
35
  export declare function loadSkillDeclarationCheck(skillName: string, cwd?: string): SkillDeclarationCheck;
36
36
  export declare function loadExpectedToolsForSkill(skillName: string, cwd?: string): string[];
37
- //# sourceMappingURL=experience-frontmatter.d.ts.map
@@ -97,4 +97,3 @@ function normalizeRuntimeSkillType(value) {
97
97
  function unique(values) {
98
98
  return Array.from(new Set(values));
99
99
  }
100
- //# sourceMappingURL=experience-frontmatter.js.map
@@ -3,7 +3,7 @@ import type { CcSession } from './trace-source.js';
3
3
  import type { SkillSegment } from './trace-segmenter.js';
4
4
  export { findNegativeFeedbackMatches, findPositiveFeedbackMatches, findUserCorrectionMatches, findUserGoalShiftMatches, hasNegativeFeedbackSignal, hasPositiveFeedbackSignal, hasUserCorrectionSignal, hasUserGoalShiftSignal, } from './feedback-matchers.js';
5
5
  export type { TextMatchRange } from './feedback-matchers.js';
6
- export type { ExperienceAssistiveInference, ExperienceAssistiveInferenceCautionCode, ExperienceAssistiveInferenceCode, ExperienceAssistiveInferenceConfidence, ExperienceChecklistContribution, ExperienceChecklistItem, ExperienceChecklistItemStatus, ExperienceEpisode, ExperienceEpisodeArtifact, ExperienceEpisodeArtifactKind, ExperienceEpisodeBoundaryReason, ExperienceEpisodeOutcome, ExperienceEpisodeRole, ExperienceEvidenceChain, ExperienceEvidenceKind, ExperienceEvidenceRef, ExperienceFeedbackAttribution, ExperienceFeedbackAttributionReason, ExperienceFeedbackAttributionRole, ExperienceFeedbackSignal, ExperienceFeedbackSignalType, ExperienceGoalEvidenceRef, ExperienceGoalSlice, ExperienceGoalSliceReasonCode, ExperienceInvocation, ExperienceMessageRange, ExperienceOrchestrationEdge, ExperienceOrchestrationEdgeKind, ExperienceOrchestrationEdgeStatus, ExperienceOutcomeClosure, ExperienceParentReason, ExperienceReviewBasisCode, ExperienceReviewIndicators, ExperienceReviewPriority, ExperienceReviewerReport, ExperienceReviewerReportFinding, ExperienceReviewerReportFindingLevel, ExperienceReviewerReportFindingSource, ExperienceReviewerReportScope, ExperienceReviewerReportStep, ExperienceReviewerReportStepStatus, ExperienceRuleFinding, ExperienceRuleFindingCode, ExperienceRuleFindingLevel, ExperienceRuntimeSkillType, ExperienceRuntimeSkillTypeSource, ExperienceSessionStory, ExperienceSessionStoryAnswer, ExperienceSessionStoryAnswerKey, ExperienceSessionStoryGoalSlice, ExperienceSessionStoryGraphEdge, ExperienceSessionStoryGraphNode, ExperienceSessionStoryNode, ExperienceSessionStoryNodeKind, ExperienceSessionStorySkillLink, ExperienceSessionStorySkillRole, ExperienceSessionStorySubagentDispatch, ExperienceSessionSummary, ExperienceSkillSegment, ExperienceSkillSummary, ExperienceTimelineBranch, ExperienceTimelineEvent, ExperienceTimelineTree, ObservationExperienceReport, };
6
+ export type { ExperienceAssistiveInference, ExperienceAssistiveInferenceCautionCode, ExperienceAssistiveInferenceCode, ExperienceAssistiveInferenceConfidence, ExperienceChecklistContribution, ExperienceChecklistItem, ExperienceChecklistItemStatus, ExperienceEpisode, ExperienceEpisodeArtifact, ExperienceEpisodeArtifactKind, ExperienceEpisodeBoundaryReason, ExperienceEpisodeOutcome, ExperienceEpisodeRole, ExperienceEvidenceChain, ExperienceEvidenceKind, ExperienceEvidenceRef, ExperienceFeedbackAttribution, ExperienceFeedbackAttributionReason, ExperienceFeedbackAttributionRole, ExperienceFeedbackSignal, ExperienceFeedbackSignalType, ExperienceGoalEvidenceRef, ExperienceGoalSlice, ExperienceGoalSliceReasonCode, ExperienceInvocation, ExperienceMessageRange, ExperienceOrchestrationEdge, ExperienceOrchestrationEdgeKind, ExperienceOrchestrationEdgeStatus, ExperienceOutcomeClosure, ExperienceParentReason, ExperienceReviewBasisCode, ExperienceReviewIndicators, ExperienceReviewPriority, ExperienceReviewerReport, ExperienceReviewerReportFinding, ExperienceReviewerReportFindingLevel, ExperienceReviewerReportFindingSource, ExperienceReviewerReportScope, ExperienceReviewerReportStep, ExperienceReviewerReportStepStatus, ExperienceRuleFinding, ExperienceRuleFindingCode, ExperienceRuleFindingLevel, ExperienceRuntimeSkillType, ExperienceRuntimeSkillTypeSource, ExperienceSessionStory, ExperienceSessionStoryAnswer, ExperienceSessionStoryAnswerKey, ExperienceSessionStoryGoalSlice, ExperienceSessionStoryGraphEdge, ExperienceSessionStoryGraphNode, ExperienceSessionStoryNode, ExperienceSessionStoryNodeKind, ExperienceSessionStorySkillLink, ExperienceSessionStorySkillRole, ExperienceSessionStorySubagentDispatch, ExperienceSessionSummary, ExperienceSkillSegment, ExperienceSkillSummary, ExperienceTimelineBranch, ExperienceTimelineEvent, ExperienceTimelineTree, ObservationExperienceReport, ObservationReviewState, };
7
7
  export declare function aggregateExperienceChecklistItemStatus(statuses: ExperienceChecklistItemStatus[]): ExperienceChecklistItemStatus;
8
8
  interface BuildExperienceInput {
9
9
  sessions: CcSession[];
@@ -20,4 +20,3 @@ export declare function foldExperienceChecklistItems(items: ExperienceChecklistI
20
20
  reason: ExperienceParentReason;
21
21
  sourceItemKeys: string[];
22
22
  };
23
- //# sourceMappingURL=experience.d.ts.map
@@ -131,7 +131,7 @@ export function buildObservationExperienceReport(input) {
131
131
  const sessions = summarizeExperienceSessions(invocations, sessionGroupsByKey, input.generatedAt, input.reviewState);
132
132
  const skills = summarizeExperienceSkills(sessions, invocations);
133
133
  return {
134
- kind: 'observe-experience',
134
+ reportKind: 'observe-experience',
135
135
  schemaVersion: 1,
136
136
  scope: 'evidence-only',
137
137
  generatedAt: input.generatedAt,
@@ -3435,4 +3435,3 @@ function unique(values) {
3435
3435
  function hashParts(...parts) {
3436
3436
  return createHash('sha256').update(parts.join('\u0000')).digest('hex').slice(0, 16);
3437
3437
  }
3438
- //# sourceMappingURL=experience.js.map
@@ -34,4 +34,3 @@ export declare function findNegativeFeedbackMatches(value: string): TextMatchRan
34
34
  export declare function hasNegativeFeedbackSignal(value: string): boolean;
35
35
  export declare function findPositiveFeedbackMatches(value: string): TextMatchRange[];
36
36
  export declare function hasPositiveFeedbackSignal(value: string): boolean;
37
- //# sourceMappingURL=feedback-matchers.d.ts.map
@@ -229,4 +229,3 @@ function isTextBoundary(value) {
229
229
  return true;
230
230
  return TEXT_BOUNDARY_CHARS.has(value);
231
231
  }
232
- //# sourceMappingURL=feedback-matchers.js.map
@@ -18,4 +18,3 @@
18
18
  */
19
19
  export { findNegativeFeedbackMatches, findPositiveFeedbackMatches, findUserCorrectionMatches, findUserGoalShiftMatches, hasUserCorrectionSignal, hasUserGoalShiftSignal, } from './feedback-matchers.js';
20
20
  export type { ExperienceAssistiveInference, ExperienceAssistiveInferenceCautionCode, ExperienceAssistiveInferenceCode, ExperienceChecklistItem, ExperienceEvidenceChain, ExperienceEvidenceRef, ExperienceFeedbackAttribution, ExperienceInvocation, ExperienceReviewIndicators, ExperienceReviewBasisCode, ExperienceReviewPriority, ExperienceReviewerReport, ExperienceRuleFinding, ExperienceRuleFindingCode, ExperienceRuleFindingLevel, ExperienceEpisode, ExperienceFeedbackSignal, ExperienceSkillSegment, ExperienceSessionStoryAnswer, ExperienceSessionSummary, ExperienceTimelineEvent, } from './experience.js';
21
- //# sourceMappingURL=feedback-projection.d.ts.map
@@ -17,4 +17,3 @@
17
17
  * 继续直接 import experience.ts —— 它们不是「视图」,不在 facade 收敛范围内。
18
18
  */
19
19
  export { findNegativeFeedbackMatches, findPositiveFeedbackMatches, findUserCorrectionMatches, findUserGoalShiftMatches, hasUserCorrectionSignal, hasUserGoalShiftSignal, } from './feedback-matchers.js';
20
- //# sourceMappingURL=feedback-projection.js.map
@@ -40,4 +40,3 @@ export type { ResolvedObservationReviewSession, ResolvedOwnerSuggestion } from '
40
40
  export type { SkillChainAdvisoryCode } from './skill-chain-advisories.js';
41
41
  export type { ExperienceProblemBucket, ExperienceProblemPattern, ExperienceProblemSignal } from './problem-patterns.js';
42
42
  export type { SkillDerivedStandard, SkillLlmEnhancedReviewSections } from './soft-standards/index.js';
43
- //# sourceMappingURL=inbox-view-model.d.ts.map
@@ -177,4 +177,3 @@ export { observationMetricAnnotationTargetId } from './review-state.js';
177
177
  export { resolveObservationReviewSession } from './resolved-review.js';
178
178
  export { getSkillChainAdvisory, resolveAdvisoryCommand } from './skill-chain-advisories.js';
179
179
  export { ASSISTANT_DELIVERABLE_ARTIFACT_RE, hasAssistantDeliverableArtifactText, hasAssistantDeliverySignalText, hasUserHardRuleText, HARD_RULE_TEXT_RE, isAssistantProgressUpdateText, isScheduledTaskPromptText, isSyntheticUserMessageText, isUserInteractionMetricText, } from './text-signals.js';
180
- //# sourceMappingURL=inbox-view-model.js.map
@@ -25,4 +25,3 @@ export declare function findObservationInboxItem(id: string, dir?: string): Obse
25
25
  export declare function buildObservationMessageWindow(item: Pick<ObservationInboxItem, 'sourceTrace' | 'signalType' | 'evidence'>, radius?: number): ObservationMessageWindow | undefined;
26
26
  export declare function formatObservationShow(item: ObservationInboxItem): string;
27
27
  export declare function selectExploreInboxItems(items: ObservationInboxItem[], limit: number, includeNoise?: boolean, random?: () => number): ObservationInboxItem[];
28
- //# sourceMappingURL=inbox.d.ts.map
@@ -432,7 +432,7 @@ export function buildObservationInboxReport(tracePath, options = {}) {
432
432
  const items = finishInboxAggregation(aggregationState);
433
433
  const experience = buildObservationExperienceReport({ sessions, segments, items, generatedAt, reviewState: options.reviewState });
434
434
  const report = {
435
- kind: 'observe-inbox',
435
+ reportKind: 'observe-inbox',
436
436
  schemaVersion: 1,
437
437
  meta: {
438
438
  tracePath,
@@ -567,7 +567,7 @@ export function loadObservationInboxReports(dir = DEFAULT_OBSERVATIONS_DIR) {
567
567
  return null;
568
568
  }
569
569
  })
570
- .filter((r) => r?.kind === 'observe-inbox');
570
+ .filter((r) => r?.reportKind === 'observe-inbox');
571
571
  }
572
572
  export function loadLatestObservationInboxReport(dir = DEFAULT_OBSERVATIONS_DIR) {
573
573
  const reports = loadObservationInboxReports(dir);
@@ -762,4 +762,3 @@ export function selectExploreInboxItems(items, limit, includeNoise = false, rand
762
762
  }
763
763
  return shuffled.slice(0, limit);
764
764
  }
765
- //# sourceMappingURL=inbox.js.map
@@ -9,4 +9,3 @@ export declare function buildExperienceProblemPatterns(input: {
9
9
  reviewState?: ObservationReviewState;
10
10
  }): ExperienceProblemPattern[];
11
11
  export declare function mergeExperienceProblemPatterns(patterns: ExperienceProblemPattern[]): ExperienceProblemPattern[];
12
- //# sourceMappingURL=problem-patterns.d.ts.map
@@ -241,4 +241,3 @@ function maxTimestamp(a, b) {
241
241
  function hashParts(...parts) {
242
242
  return createHash('sha256').update(parts.join('\u0000')).digest('hex').slice(0, 16);
243
243
  }
244
- //# sourceMappingURL=problem-patterns.js.map
@@ -34,4 +34,3 @@ export interface ResolvedOwnerSuggestion {
34
34
  }
35
35
  export declare function resolveObservationReviewSession(options: ResolveObservationReviewSessionOptions): ResolvedObservationReviewSession;
36
36
  export declare function resolveObservationReviewPriority(priority: ExperienceReviewPriority, enhancedReview: SkillLlmEnhancedReviewSections | undefined, hasManualReview: boolean): ExperienceReviewPriority;
37
- //# sourceMappingURL=resolved-review.d.ts.map
@@ -222,9 +222,9 @@ function typeSpecificChecklistItems(enhancedReview, skillType) {
222
222
  function runtimeNodeChecklistItems(enhancedReview) {
223
223
  const runtimeResults = enhancedReview.runtimeNodeResults?.nodes ?? [];
224
224
  if (runtimeResults.length > 0) {
225
- return runtimeResults.slice(0, 12).map((node) => checklistItem(`runtime_node_${node.kind}_${node.nodeId}`, `${runtimeNodeKindLabel(node.kind)}:${node.title || node.nodeId}`, runtimeNodeChecklistStatus(node.status), node.reason || '规则层基于 LLM 拆解的 typed signal 匹配运行证据。', node.status === 'violated' || node.status === 'degraded' ? 'attention' : 'informational'));
225
+ return runtimeResults.slice(0, 12).map((node) => checklistItem(`runtime_node_${node.nodeKind}_${node.nodeId}`, `${runtimeNodeKindLabel(node.nodeKind)}:${node.title || node.nodeId}`, runtimeNodeChecklistStatus(node.status), node.reason || '规则层基于 LLM 拆解的 typed signal 匹配运行证据。', node.status === 'violated' || node.status === 'degraded' ? 'attention' : 'informational'));
226
226
  }
227
- return (enhancedReview.runtimeNodeAssessment?.nodes ?? []).slice(0, 12).map((node) => checklistItem(`legacy_llm_node_${node.kind}_${node.nodeId}`, `${node.kind === 'workflowNode' ? '流程节点' : '硬性规则'}:${node.nodeId}`, checklistStatus(node.status), node.reason ?? '旧版模型节点复核结果。', node.status === 'failed' || node.status === 'degraded' ? 'attention' : 'informational'));
227
+ return (enhancedReview.runtimeNodeAssessment?.nodes ?? []).slice(0, 12).map((node) => checklistItem(`legacy_llm_node_${node.nodeKind}_${node.nodeId}`, `${node.nodeKind === 'workflowNode' ? '流程节点' : '硬性规则'}:${node.nodeId}`, checklistStatus(node.status), node.reason ?? '旧版模型节点复核结果。', node.status === 'failed' || node.status === 'degraded' ? 'attention' : 'informational'));
228
228
  }
229
229
  function runtimeNodeKindLabel(kind) {
230
230
  if (kind === 'hardRule')
@@ -515,10 +515,10 @@ function ownerSuggestionTexts(enhancedReview, skillType) {
515
515
  const checklistLabelByKey = new Map((enhancedReview?.typeSpecificAssessment?.checklist ?? [])
516
516
  .map((item) => [item.key, `${skillTypeLabel(skillType ?? enhancedReview?.skillType)}:${readableTypeSpecificLabel(item, skillType ?? enhancedReview?.skillType)}`]));
517
517
  for (const node of enhancedReview?.runtimeNodeResults?.nodes ?? []) {
518
- checklistLabelByKey.set(node.nodeId, `${runtimeNodeKindLabel(node.kind)}:${node.title || node.nodeId}`);
518
+ checklistLabelByKey.set(node.nodeId, `${runtimeNodeKindLabel(node.nodeKind)}:${node.title || node.nodeId}`);
519
519
  }
520
520
  for (const node of enhancedReview?.runtimeNodeAssessment?.nodes ?? []) {
521
- checklistLabelByKey.set(node.suggestionKey ?? node.nodeId, `${node.kind === 'workflowNode' ? '流程节点' : '硬性规则'}:${node.nodeId}`);
521
+ checklistLabelByKey.set(node.suggestionKey ?? node.nodeId, `${node.nodeKind === 'workflowNode' ? '流程节点' : '硬性规则'}:${node.nodeId}`);
522
522
  }
523
523
  return (enhancedReview?.ownerSuggestions ?? [])
524
524
  .flatMap((suggestion) => {
@@ -549,4 +549,3 @@ function shortList(values) {
549
549
  .slice(0, 4)
550
550
  .join(' / ');
551
551
  }
552
- //# sourceMappingURL=resolved-review.js.map
@@ -17,4 +17,3 @@ export declare function emptyObservationReviewState(now?: string): ObservationRe
17
17
  export declare function loadObservationReviewState(observationsDir: string): ObservationReviewState;
18
18
  export declare function updateObservationReviewState(observationsDir: string, update: ObservationReviewStateUpdate, now?: string): ObservationReviewState;
19
19
  export declare function deleteObservationReviewState(observationsDir: string, targetType: ObservationReviewTargetType, targetId: string, now?: string): ObservationReviewState;
20
- //# sourceMappingURL=review-state.d.ts.map
@@ -40,7 +40,7 @@ export function observationReviewStatePath(observationsDir) {
40
40
  }
41
41
  export function emptyObservationReviewState(now = new Date().toISOString()) {
42
42
  return {
43
- kind: 'observe-review-state',
43
+ reportKind: 'observe-review-state',
44
44
  schemaVersion: 1,
45
45
  updatedAt: now,
46
46
  entries: {},
@@ -52,11 +52,11 @@ export function loadObservationReviewState(observationsDir) {
52
52
  return emptyObservationReviewState();
53
53
  try {
54
54
  const parsed = JSON.parse(readFileSync(path, 'utf-8'));
55
- if (parsed.kind !== 'observe-review-state' || parsed.schemaVersion !== 1 || !parsed.entries || typeof parsed.entries !== 'object') {
55
+ if (parsed.reportKind !== 'observe-review-state' || parsed.schemaVersion !== 1 || !parsed.entries || typeof parsed.entries !== 'object') {
56
56
  return emptyObservationReviewState();
57
57
  }
58
58
  return {
59
- kind: 'observe-review-state',
59
+ reportKind: 'observe-review-state',
60
60
  schemaVersion: 1,
61
61
  updatedAt: typeof parsed.updatedAt === 'string' ? parsed.updatedAt : new Date().toISOString(),
62
62
  entries: Object.fromEntries(Object.entries(parsed.entries).filter(([, entry]) => isReviewStateEntry(entry))),
@@ -166,4 +166,3 @@ function isObservationMetricKey(value) {
166
166
  || value === 'self_correction'
167
167
  || value === 'repeated_execution';
168
168
  }
169
- //# sourceMappingURL=review-state.js.map
@@ -13,4 +13,3 @@ export declare function getSkillChainAdvisory(code: SkillChainAdvisoryCode): Ski
13
13
  * 只接受字母/数字/横线/下划线,避免 shell 注入风险。
14
14
  */
15
15
  export declare function resolveAdvisoryCommand(advisory: SkillChainAdvisory, skillName: string): string | undefined;
16
- //# sourceMappingURL=skill-chain-advisories.d.ts.map
@@ -66,4 +66,3 @@ export function resolveAdvisoryCommand(advisory, skillName) {
66
66
  const safe = /^[A-Za-z0-9_.-]+$/.test(skillName) ? skillName : '<skill-name>';
67
67
  return advisory.commandTemplate.replace(/\$\{skillName\}/g, safe);
68
68
  }
69
- //# sourceMappingURL=skill-chain-advisories.js.map
@@ -4,4 +4,3 @@ export declare function buildObservationSkillChains(skillNames: string[], cwd?:
4
4
  export declare function buildObservationSkillChain(skillName: string, cwd?: string, experienceReports?: ObservationExperienceReport[]): ObservationSkillChain;
5
5
  export declare function findSkillMdPath(skillName: string, cwd: string): string | undefined;
6
6
  export declare function __resetSkillIndexCacheForTests(): void;
7
- //# sourceMappingURL=skill-chain.d.ts.map
@@ -68,13 +68,13 @@ function buildRuntimeChecks(skillName, definition, hardRules, workflows, workflo
68
68
  const invocations = experienceReports.flatMap((report) => report.invocations.filter((invocation) => invocation.skillName === skillName));
69
69
  const evidence = runtimeEvidence(invocations);
70
70
  const hardRuleChecks = hardRules.map((rule) => evaluateRuntimeText({
71
- kind: 'hardRule',
71
+ nodeKind: 'hardRule',
72
72
  id: rule.id,
73
73
  title: rule.rule,
74
74
  expectation: rule.expectedBehavior,
75
75
  }, evidence));
76
76
  const workflowChecks = workflows.flatMap((workflow) => workflow.nodes.map((node) => evaluateRuntimeText({
77
- kind: 'workflowNode',
77
+ nodeKind: 'workflowNode',
78
78
  id: `${workflow.id}.${node.id}`,
79
79
  title: node.action || `${workflow.id} / ${node.id}`,
80
80
  expectation: node.action,
@@ -130,7 +130,7 @@ function buildSkillRuntimeEvidencePack(input) {
130
130
  ...input.hardRules.map((rule) => nodeEvidenceForCheck({
131
131
  check: standardById.get(rule.id),
132
132
  nodeId: rule.id,
133
- kind: 'hardRule',
133
+ nodeKind: 'hardRule',
134
134
  title: rule.rule,
135
135
  expectation: rule.expectedBehavior,
136
136
  refs: allRuntimeRefs,
@@ -138,7 +138,7 @@ function buildSkillRuntimeEvidencePack(input) {
138
138
  ...workflowNodes.map((node) => nodeEvidenceForCheck({
139
139
  check: standardById.get(node.id),
140
140
  nodeId: node.id,
141
- kind: 'workflowNode',
141
+ nodeKind: 'workflowNode',
142
142
  title: node.title,
143
143
  expectation: node.expectation,
144
144
  refs: allRuntimeRefs,
@@ -185,7 +185,7 @@ function nodeEvidenceForCheck(input) {
185
185
  : [];
186
186
  return {
187
187
  nodeId: input.nodeId,
188
- kind: input.kind,
188
+ nodeKind: input.nodeKind,
189
189
  title: input.title,
190
190
  expectation: input.expectation,
191
191
  deterministicStatus: input.check?.status ?? 'manual_review',
@@ -471,4 +471,3 @@ export function findSkillMdPath(skillName, cwd) {
471
471
  export function __resetSkillIndexCacheForTests() {
472
472
  skillIndexCache.clear();
473
473
  }
474
- //# sourceMappingURL=skill-chain.js.map