oh-my-knowledge 0.30.0 → 0.31.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 (320) hide show
  1. package/README.md +198 -26
  2. package/README.zh.md +198 -26
  3. package/dist/src/authoring/evolver.d.ts +26 -2
  4. package/dist/src/authoring/evolver.d.ts.map +1 -1
  5. package/dist/src/authoring/evolver.js +410 -49
  6. package/dist/src/authoring/evolver.js.map +1 -1
  7. package/dist/src/authoring/generator.d.ts +5 -2
  8. package/dist/src/authoring/generator.d.ts.map +1 -1
  9. package/dist/src/authoring/generator.js +22 -6
  10. package/dist/src/authoring/generator.js.map +1 -1
  11. package/dist/src/authoring/sample-fixer.d.ts +10 -4
  12. package/dist/src/authoring/sample-fixer.d.ts.map +1 -1
  13. package/dist/src/authoring/sample-fixer.js +153 -126
  14. package/dist/src/authoring/sample-fixer.js.map +1 -1
  15. package/dist/src/cli/commands/doctor.d.ts +25 -1
  16. package/dist/src/cli/commands/doctor.d.ts.map +1 -1
  17. package/dist/src/cli/commands/doctor.js +233 -124
  18. package/dist/src/cli/commands/doctor.js.map +1 -1
  19. package/dist/src/cli/commands/eval/gold/compare.d.ts +17 -0
  20. package/dist/src/cli/commands/eval/gold/compare.d.ts.map +1 -0
  21. package/dist/src/cli/commands/eval/gold/compare.js +91 -0
  22. package/dist/src/cli/commands/eval/gold/compare.js.map +1 -0
  23. package/dist/src/cli/commands/eval/gold/index.d.ts +9 -0
  24. package/dist/src/cli/commands/eval/gold/index.d.ts.map +1 -0
  25. package/dist/src/cli/commands/eval/gold/index.js +34 -0
  26. package/dist/src/cli/commands/eval/gold/index.js.map +1 -0
  27. package/dist/src/cli/commands/eval/gold/init.d.ts +11 -0
  28. package/dist/src/cli/commands/eval/gold/init.d.ts.map +1 -0
  29. package/dist/src/cli/commands/eval/gold/init.js +51 -0
  30. package/dist/src/cli/commands/eval/gold/init.js.map +1 -0
  31. package/dist/src/cli/commands/eval/gold/validate.d.ts +12 -0
  32. package/dist/src/cli/commands/eval/gold/validate.d.ts.map +1 -0
  33. package/dist/src/cli/commands/eval/gold/validate.js +46 -0
  34. package/dist/src/cli/commands/eval/gold/validate.js.map +1 -0
  35. package/dist/src/cli/commands/eval/index.d.ts +54 -0
  36. package/dist/src/cli/commands/eval/index.d.ts.map +1 -0
  37. package/dist/src/cli/commands/{eval-runner.js → eval/index.js} +216 -50
  38. package/dist/src/cli/commands/eval/index.js.map +1 -0
  39. package/dist/src/cli/commands/evolve.d.ts +36 -1
  40. package/dist/src/cli/commands/evolve.d.ts.map +1 -1
  41. package/dist/src/cli/commands/evolve.js +191 -47
  42. package/dist/src/cli/commands/evolve.js.map +1 -1
  43. package/dist/src/cli/commands/init.d.ts +15 -1
  44. package/dist/src/cli/commands/init.d.ts.map +1 -1
  45. package/dist/src/cli/commands/init.js +70 -28
  46. package/dist/src/cli/commands/init.js.map +1 -1
  47. package/dist/src/cli/commands/observe/inbox.d.ts +23 -0
  48. package/dist/src/cli/commands/observe/inbox.d.ts.map +1 -0
  49. package/dist/src/cli/commands/observe/inbox.js +258 -0
  50. package/dist/src/cli/commands/observe/inbox.js.map +1 -0
  51. package/dist/src/cli/commands/observe/index.d.ts +22 -0
  52. package/dist/src/cli/commands/observe/index.d.ts.map +1 -0
  53. package/dist/src/cli/commands/observe/index.js +118 -0
  54. package/dist/src/cli/commands/observe/index.js.map +1 -0
  55. package/dist/src/cli/commands/observe/ingest.d.ts +13 -0
  56. package/dist/src/cli/commands/observe/ingest.d.ts.map +1 -0
  57. package/dist/src/cli/commands/observe/ingest.js +69 -0
  58. package/dist/src/cli/commands/observe/ingest.js.map +1 -0
  59. package/dist/src/cli/commands/observe/show.d.ts +13 -0
  60. package/dist/src/cli/commands/observe/show.d.ts.map +1 -0
  61. package/dist/src/cli/commands/observe/show.js +49 -0
  62. package/dist/src/cli/commands/observe/show.js.map +1 -0
  63. package/dist/src/cli/commands/sample.d.ts +28 -5
  64. package/dist/src/cli/commands/sample.d.ts.map +1 -1
  65. package/dist/src/cli/commands/sample.js +242 -169
  66. package/dist/src/cli/commands/sample.js.map +1 -1
  67. package/dist/src/cli/commands/skill-extract.d.ts +20 -0
  68. package/dist/src/cli/commands/skill-extract.d.ts.map +1 -0
  69. package/dist/src/cli/commands/skill-extract.js +84 -0
  70. package/dist/src/cli/commands/skill-extract.js.map +1 -0
  71. package/dist/src/cli/commands/studio.d.ts +22 -1
  72. package/dist/src/cli/commands/studio.d.ts.map +1 -1
  73. package/dist/src/cli/commands/studio.js +111 -37
  74. package/dist/src/cli/commands/studio.js.map +1 -1
  75. package/dist/src/cli/index.js +15 -47
  76. package/dist/src/cli/index.js.map +1 -1
  77. package/dist/src/cli/lib/cli-exit.d.ts +16 -0
  78. package/dist/src/cli/lib/cli-exit.d.ts.map +1 -0
  79. package/dist/src/cli/lib/cli-exit.js +20 -0
  80. package/dist/src/cli/lib/cli-exit.js.map +1 -0
  81. package/dist/src/cli/lib/cmd-flags.d.ts +236 -0
  82. package/dist/src/cli/lib/cmd-flags.d.ts.map +1 -0
  83. package/dist/src/cli/lib/cmd-flags.js +46 -0
  84. package/dist/src/cli/lib/cmd-flags.js.map +1 -0
  85. package/dist/src/cli/{i18n-dict.d.ts → lib/i18n-dict.d.ts} +1 -1
  86. package/dist/src/cli/lib/i18n-dict.d.ts.map +1 -0
  87. package/dist/src/cli/{i18n-dict.js → lib/i18n-dict.js} +39 -264
  88. package/dist/src/cli/lib/i18n-dict.js.map +1 -0
  89. package/dist/src/cli/{i18n.d.ts → lib/i18n.d.ts} +11 -6
  90. package/dist/src/cli/lib/i18n.d.ts.map +1 -0
  91. package/dist/src/cli/{i18n.js → lib/i18n.js} +12 -7
  92. package/dist/src/cli/lib/i18n.js.map +1 -0
  93. package/dist/src/cli/{parse-run-config.d.ts → lib/parse-run-config.d.ts} +5 -6
  94. package/dist/src/cli/lib/parse-run-config.d.ts.map +1 -0
  95. package/dist/src/cli/{parse-run-config.js → lib/parse-run-config.js} +11 -61
  96. package/dist/src/cli/lib/parse-run-config.js.map +1 -0
  97. package/dist/src/cli/lib/progress.d.ts.map +1 -0
  98. package/dist/src/cli/lib/progress.js.map +1 -0
  99. package/dist/src/cli/{run-tally.d.ts → lib/run-tally.d.ts} +1 -1
  100. package/dist/src/cli/lib/run-tally.d.ts.map +1 -0
  101. package/dist/src/cli/lib/run-tally.js.map +1 -0
  102. package/dist/src/cli/{commands/_shared.d.ts → lib/shared.d.ts} +2 -2
  103. package/dist/src/cli/lib/shared.d.ts.map +1 -0
  104. package/dist/src/cli/{commands/_shared.js → lib/shared.js} +3 -3
  105. package/dist/src/cli/lib/shared.js.map +1 -0
  106. package/dist/src/cli/lib/update-check.d.ts.map +1 -0
  107. package/dist/src/cli/lib/update-check.js.map +1 -0
  108. package/dist/src/cli/oclif/base-command.d.ts +8 -0
  109. package/dist/src/cli/oclif/base-command.d.ts.map +1 -0
  110. package/dist/src/cli/oclif/base-command.js +27 -0
  111. package/dist/src/cli/oclif/base-command.js.map +1 -0
  112. package/dist/src/cli/oclif/help.d.ts +16 -0
  113. package/dist/src/cli/oclif/help.d.ts.map +1 -0
  114. package/dist/src/cli/oclif/help.js +33 -0
  115. package/dist/src/cli/oclif/help.js.map +1 -0
  116. package/dist/src/cli/oclif/i18n.d.ts +16 -0
  117. package/dist/src/cli/oclif/i18n.d.ts.map +1 -0
  118. package/dist/src/cli/oclif/i18n.js +62 -0
  119. package/dist/src/cli/oclif/i18n.js.map +1 -0
  120. package/dist/src/cli/oclif/parsers.d.ts +10 -0
  121. package/dist/src/cli/oclif/parsers.d.ts.map +1 -0
  122. package/dist/src/cli/oclif/parsers.js +102 -0
  123. package/dist/src/cli/oclif/parsers.js.map +1 -0
  124. package/dist/src/cli/oclif/projection.d.ts +23 -0
  125. package/dist/src/cli/oclif/projection.d.ts.map +1 -0
  126. package/dist/src/cli/oclif/projection.js +52 -0
  127. package/dist/src/cli/oclif/projection.js.map +1 -0
  128. package/dist/src/cli/oclif/run.d.ts +2 -0
  129. package/dist/src/cli/oclif/run.d.ts.map +1 -0
  130. package/dist/src/cli/oclif/run.js +11 -0
  131. package/dist/src/cli/oclif/run.js.map +1 -0
  132. package/dist/src/diagnosis/observe-mapper.d.ts +68 -0
  133. package/dist/src/diagnosis/observe-mapper.d.ts.map +1 -0
  134. package/dist/src/diagnosis/observe-mapper.js +276 -0
  135. package/dist/src/diagnosis/observe-mapper.js.map +1 -0
  136. package/dist/src/diagnosis/observe-producer.d.ts +9 -0
  137. package/dist/src/diagnosis/observe-producer.d.ts.map +1 -0
  138. package/dist/src/diagnosis/observe-producer.js +197 -0
  139. package/dist/src/diagnosis/observe-producer.js.map +1 -0
  140. package/dist/src/diagnosis/studio-projection.d.ts +14 -0
  141. package/dist/src/diagnosis/studio-projection.d.ts.map +1 -0
  142. package/dist/src/diagnosis/studio-projection.js +84 -0
  143. package/dist/src/diagnosis/studio-projection.js.map +1 -0
  144. package/dist/src/diagnosis/types.d.ts +79 -0
  145. package/dist/src/diagnosis/types.d.ts.map +1 -0
  146. package/dist/src/diagnosis/types.js +20 -0
  147. package/dist/src/diagnosis/types.js.map +1 -0
  148. package/dist/src/doctor/fixer.d.ts +12 -0
  149. package/dist/src/doctor/fixer.d.ts.map +1 -0
  150. package/dist/src/doctor/fixer.js +326 -0
  151. package/dist/src/doctor/fixer.js.map +1 -0
  152. package/dist/src/doctor/health/composer.js +7 -4
  153. package/dist/src/doctor/health/composer.js.map +1 -1
  154. package/dist/src/doctor/health/parser.d.ts +0 -1
  155. package/dist/src/doctor/health/parser.d.ts.map +1 -1
  156. package/dist/src/doctor/health/parser.js +37 -0
  157. package/dist/src/doctor/health/parser.js.map +1 -1
  158. package/dist/src/doctor/health/prompt-builder.d.ts +2 -21
  159. package/dist/src/doctor/health/prompt-builder.d.ts.map +1 -1
  160. package/dist/src/doctor/health/prompt-builder.js +1 -169
  161. package/dist/src/doctor/health/prompt-builder.js.map +1 -1
  162. package/dist/src/doctor/html-renderer.d.ts +1 -1
  163. package/dist/src/doctor/html-renderer.d.ts.map +1 -1
  164. package/dist/src/doctor/html-renderer.js +2 -2
  165. package/dist/src/doctor/html-renderer.js.map +1 -1
  166. package/dist/src/doctor/index.d.ts.map +1 -1
  167. package/dist/src/doctor/index.js +1 -0
  168. package/dist/src/doctor/index.js.map +1 -1
  169. package/dist/src/doctor/renderer.d.ts +1 -1
  170. package/dist/src/doctor/renderer.d.ts.map +1 -1
  171. package/dist/src/doctor/renderer.js +2 -2
  172. package/dist/src/doctor/renderer.js.map +1 -1
  173. package/dist/src/doctor/rules.js +1 -1
  174. package/dist/src/doctor/rules.js.map +1 -1
  175. package/dist/src/eval-core/mock-hook.cjs +13 -1
  176. package/dist/src/eval-core/mocks-runtime.d.ts +7 -3
  177. package/dist/src/eval-core/mocks-runtime.d.ts.map +1 -1
  178. package/dist/src/eval-core/mocks-runtime.js +240 -4
  179. package/dist/src/eval-core/mocks-runtime.js.map +1 -1
  180. package/dist/src/eval-workflows/evaluation-pipeline.d.ts +1 -1
  181. package/dist/src/eval-workflows/evaluation-pipeline.d.ts.map +1 -1
  182. package/dist/src/eval-workflows/evaluation-pipeline.js +1 -1
  183. package/dist/src/eval-workflows/evaluation-pipeline.js.map +1 -1
  184. package/dist/src/eval-workflows/run-evaluation.js +1 -1
  185. package/dist/src/eval-workflows/run-evaluation.js.map +1 -1
  186. package/dist/src/executors/claude-cli.d.ts.map +1 -1
  187. package/dist/src/executors/claude-cli.js +6 -4
  188. package/dist/src/executors/claude-cli.js.map +1 -1
  189. package/dist/src/observability/experience.d.ts +184 -3
  190. package/dist/src/observability/experience.d.ts.map +1 -1
  191. package/dist/src/observability/experience.js +1208 -41
  192. package/dist/src/observability/experience.js.map +1 -1
  193. package/dist/src/observability/inbox-view-model.d.ts +3 -0
  194. package/dist/src/observability/inbox-view-model.d.ts.map +1 -1
  195. package/dist/src/observability/inbox-view-model.js +9 -0
  196. package/dist/src/observability/inbox-view-model.js.map +1 -1
  197. package/dist/src/observability/inbox.d.ts +2 -0
  198. package/dist/src/observability/inbox.d.ts.map +1 -1
  199. package/dist/src/observability/inbox.js +16 -2
  200. package/dist/src/observability/inbox.js.map +1 -1
  201. package/dist/src/observability/problem-patterns.d.ts +1 -0
  202. package/dist/src/observability/problem-patterns.d.ts.map +1 -1
  203. package/dist/src/observability/problem-patterns.js +8 -8
  204. package/dist/src/observability/problem-patterns.js.map +1 -1
  205. package/dist/src/observability/resolved-review.d.ts +25 -0
  206. package/dist/src/observability/resolved-review.d.ts.map +1 -0
  207. package/dist/src/observability/resolved-review.js +231 -0
  208. package/dist/src/observability/resolved-review.js.map +1 -0
  209. package/dist/src/observability/review-state.d.ts +9 -2
  210. package/dist/src/observability/review-state.d.ts.map +1 -1
  211. package/dist/src/observability/review-state.js +40 -2
  212. package/dist/src/observability/review-state.js.map +1 -1
  213. package/dist/src/observability/skill-chain-advisories.js +4 -4
  214. package/dist/src/observability/skill-chain-advisories.js.map +1 -1
  215. package/dist/src/observability/skill-chain.d.ts +1 -0
  216. package/dist/src/observability/skill-chain.d.ts.map +1 -1
  217. package/dist/src/observability/skill-chain.js +72 -35
  218. package/dist/src/observability/skill-chain.js.map +1 -1
  219. package/dist/src/observability/soft-standards.d.ts +130 -0
  220. package/dist/src/observability/soft-standards.d.ts.map +1 -0
  221. package/dist/src/observability/soft-standards.js +426 -0
  222. package/dist/src/observability/soft-standards.js.map +1 -0
  223. package/dist/src/observability/text-signals.d.ts +7 -0
  224. package/dist/src/observability/text-signals.d.ts.map +1 -1
  225. package/dist/src/observability/text-signals.js +88 -4
  226. package/dist/src/observability/text-signals.js.map +1 -1
  227. package/dist/src/observability/trace-segmenter.d.ts.map +1 -1
  228. package/dist/src/observability/trace-segmenter.js +4 -2
  229. package/dist/src/observability/trace-segmenter.js.map +1 -1
  230. package/dist/src/observability/trace-source.d.ts.map +1 -1
  231. package/dist/src/observability/trace-source.js +13 -3
  232. package/dist/src/observability/trace-source.js.map +1 -1
  233. package/dist/src/renderer/observation-inbox-renderer.d.ts.map +1 -1
  234. package/dist/src/renderer/observation-inbox-renderer.js +5914 -924
  235. package/dist/src/renderer/observation-inbox-renderer.js.map +1 -1
  236. package/dist/src/renderer/skill-detail-renderer.d.ts.map +1 -1
  237. package/dist/src/renderer/skill-detail-renderer.js +15 -5
  238. package/dist/src/renderer/skill-detail-renderer.js.map +1 -1
  239. package/dist/src/renderer/skill-list-renderer.d.ts.map +1 -1
  240. package/dist/src/renderer/skill-list-renderer.js +10 -3
  241. package/dist/src/renderer/skill-list-renderer.js.map +1 -1
  242. package/dist/src/renderer/test-view.js +2 -2
  243. package/dist/src/renderer/test-view.js.map +1 -1
  244. package/dist/src/server/report-server.d.ts.map +1 -1
  245. package/dist/src/server/report-server.js +95 -2
  246. package/dist/src/server/report-server.js.map +1 -1
  247. package/dist/src/server/skill-index.d.ts +5 -1
  248. package/dist/src/server/skill-index.d.ts.map +1 -1
  249. package/dist/src/server/skill-index.js +72 -26
  250. package/dist/src/server/skill-index.js.map +1 -1
  251. package/dist/src/server/skill-insights.d.ts +10 -1
  252. package/dist/src/server/skill-insights.d.ts.map +1 -1
  253. package/dist/src/server/skill-insights.js +113 -1
  254. package/dist/src/server/skill-insights.js.map +1 -1
  255. package/dist/src/shared/hard-rules.d.ts +2 -0
  256. package/dist/src/shared/hard-rules.d.ts.map +1 -1
  257. package/dist/src/shared/hard-rules.js +42 -0
  258. package/dist/src/shared/hard-rules.js.map +1 -1
  259. package/dist/src/shared/llm-prompts/index.d.ts +14 -0
  260. package/dist/src/shared/llm-prompts/index.d.ts.map +1 -0
  261. package/dist/src/shared/llm-prompts/index.js +35 -0
  262. package/dist/src/shared/llm-prompts/index.js.map +1 -0
  263. package/dist/src/shared/llm-prompts/skill-health.d.ts +22 -0
  264. package/dist/src/shared/llm-prompts/skill-health.d.ts.map +1 -0
  265. package/dist/src/shared/llm-prompts/skill-health.js +170 -0
  266. package/dist/src/shared/llm-prompts/skill-health.js.map +1 -0
  267. package/dist/src/types/doctor.d.ts +2 -0
  268. package/dist/src/types/doctor.d.ts.map +1 -1
  269. package/dist/src/types/eval.d.ts +6 -1
  270. package/dist/src/types/eval.d.ts.map +1 -1
  271. package/dist/src/types/report.d.ts +6 -0
  272. package/dist/src/types/report.d.ts.map +1 -1
  273. package/docs/prompts/llm-enhanced-review.prompt.md +111 -0
  274. package/package.json +29 -4
  275. package/dist/src/cli/cli-exit.d.ts +0 -15
  276. package/dist/src/cli/cli-exit.d.ts.map +0 -1
  277. package/dist/src/cli/cli-exit.js +0 -19
  278. package/dist/src/cli/cli-exit.js.map +0 -1
  279. package/dist/src/cli/commands/_shared.d.ts.map +0 -1
  280. package/dist/src/cli/commands/_shared.js.map +0 -1
  281. package/dist/src/cli/commands/eval-gold.d.ts +0 -2
  282. package/dist/src/cli/commands/eval-gold.d.ts.map +0 -1
  283. package/dist/src/cli/commands/eval-gold.js +0 -137
  284. package/dist/src/cli/commands/eval-gold.js.map +0 -1
  285. package/dist/src/cli/commands/eval-runner.d.ts +0 -2
  286. package/dist/src/cli/commands/eval-runner.d.ts.map +0 -1
  287. package/dist/src/cli/commands/eval-runner.js.map +0 -1
  288. package/dist/src/cli/commands/eval.d.ts +0 -2
  289. package/dist/src/cli/commands/eval.d.ts.map +0 -1
  290. package/dist/src/cli/commands/eval.js +0 -11
  291. package/dist/src/cli/commands/eval.js.map +0 -1
  292. package/dist/src/cli/commands/observe.d.ts +0 -2
  293. package/dist/src/cli/commands/observe.d.ts.map +0 -1
  294. package/dist/src/cli/commands/observe.js +0 -247
  295. package/dist/src/cli/commands/observe.js.map +0 -1
  296. package/dist/src/cli/commands/registry.d.ts +0 -11
  297. package/dist/src/cli/commands/registry.d.ts.map +0 -1
  298. package/dist/src/cli/commands/registry.js +0 -32
  299. package/dist/src/cli/commands/registry.js.map +0 -1
  300. package/dist/src/cli/i18n-dict.d.ts.map +0 -1
  301. package/dist/src/cli/i18n-dict.js.map +0 -1
  302. package/dist/src/cli/i18n.d.ts.map +0 -1
  303. package/dist/src/cli/i18n.js.map +0 -1
  304. package/dist/src/cli/parse-run-config.d.ts.map +0 -1
  305. package/dist/src/cli/parse-run-config.js.map +0 -1
  306. package/dist/src/cli/parse-strict.d.ts +0 -7
  307. package/dist/src/cli/parse-strict.d.ts.map +0 -1
  308. package/dist/src/cli/parse-strict.js +0 -26
  309. package/dist/src/cli/parse-strict.js.map +0 -1
  310. package/dist/src/cli/progress.d.ts.map +0 -1
  311. package/dist/src/cli/progress.js.map +0 -1
  312. package/dist/src/cli/run-tally.d.ts.map +0 -1
  313. package/dist/src/cli/run-tally.js.map +0 -1
  314. package/dist/src/cli/update-check.d.ts.map +0 -1
  315. package/dist/src/cli/update-check.js.map +0 -1
  316. /package/dist/src/cli/{progress.d.ts → lib/progress.d.ts} +0 -0
  317. /package/dist/src/cli/{progress.js → lib/progress.js} +0 -0
  318. /package/dist/src/cli/{run-tally.js → lib/run-tally.js} +0 -0
  319. /package/dist/src/cli/{update-check.d.ts → lib/update-check.d.ts} +0 -0
  320. /package/dist/src/cli/{update-check.js → lib/update-check.js} +0 -0
@@ -1,112 +1,63 @@
1
1
  import { sanitizeGeneratedSamples } from './generator.js';
2
- import { validateSamples } from '../inputs/load-samples.js';
3
- const FIX_SYSTEM_PROMPT = `你是一个评测用例修复专家。根据诊断信息修复有设计缺陷的评测用例(sample)。
2
+ const FIX_SYSTEM_PROMPT = `你是一个评测用例修复专家。根据诊断信息和失败断言修复评测用例(sample)。
4
3
 
5
4
  修复原则:
6
- 1. 只修复诊断标记为 sample_design 的问题
7
- 2. 保持 sample_id 不变
8
- 3. 保持用例的测试意图不变(prompt 核心要测什么不变)
9
- 4. 修复范围:mocks / assertions / environment,必要时微调 rubric
10
- 5. 常见修复:补全缺失的 mock(工具调用被 mock-strict 拦截)、放宽过严的断言、修正与 mock 环境矛盾的断言
11
- 6. 不要删除整条用例
5
+ 1. 先分析失败原因——是 sample 设计问题(mock 缺失 / 断言写错 / 工具名不匹配)还是 LLM 行为问题(LLM 真的做错了,低分合理)
6
+ 2. **如果是 LLM 行为问题(低分合理),不要改 sample,原样返回**
7
+ 3. 如果是 sample 设计问题,修复 mocks / assertions / environment,必要时微调 rubric
8
+ 4. 保持 sample_id 不变,保持测试意图不变
9
+ 5. provenance 只能使用现有合法枚举: "human" / "llm-generated" / "production-trace"。不要发明 "llm-generated-fixed"、"fixed" 等新值;不确定时保留原值或用 "llm-generated"
10
+ 6. 断言修复只保留核心行为节点:必要输出位置、必须/禁止的关键副作用、关键安全约束。不要为了贴合某次执行轨迹而绑定具体工具、命令形态、文案、完整步骤顺序或临时实现细节
11
+ 7. 常见 sample 设计问题:
12
+ - mock 缺失:LLM 调用被 mock-strict 拦截,需要补 mock
13
+ - 工具名不匹配:断言写 Write:X 但场景是修改(应该是 Edit:X),或反之
14
+ - mock 返回格式不对:通配 mock 返回了文件内容但 Glob 工具期望路径列表
15
+ - 断言过严:检查了不该检查的细节
16
+ 8. 不要删除整条用例
17
+ 9. **只能修改 sample,绝对不能建议修改 SKILL.md** — skill 是被测对象,fix 只优化测试用例本身
12
18
 
13
- 输出**仅包含修复后的完整 sample JSON 对象**(不是数组)。第一字符 \`{\`,最后 \`}\`,不要用 \`\`\`json\`\`\` 围栏,不要寒暄。`;
14
- const FIXABLE_FIELDS = ['mocks', 'mocksStrict', 'assertions', 'environment', 'rubric'];
15
- function cloneJson(value) {
16
- return JSON.parse(JSON.stringify(value));
19
+ 输出一个 **JSON 数组**,包含所有待修复 sample(修改过的和原样保留的都要包含)。
20
+ 第一字符 \`[\`,最后 \`]\`,不要用 \`\`\`json\`\`\` 围栏,不要寒暄。
21
+ 如果判断某条是 LLM 行为问题不需要改,也原样放进数组。`;
22
+ function sanitizeFixedSamples(samples, skillContent) {
23
+ sanitizeGeneratedSamples(samples, { skillContent });
24
+ return samples;
17
25
  }
18
- function hasOwn(record, key) {
19
- return Object.prototype.hasOwnProperty.call(record, key);
26
+ function fixAttempts(sample) {
27
+ const meta = sample.omkFix;
28
+ if (!meta || typeof meta !== 'object')
29
+ return 0;
30
+ const attempts = meta.attempts;
31
+ return typeof attempts === 'number' && Number.isFinite(attempts) ? attempts : 0;
20
32
  }
21
- function mergeAndValidateFixedSample(original, fixed, sampleId, skillContent) {
22
- const candidate = cloneJson(original);
23
- candidate.sample_id = sampleId;
24
- for (const field of FIXABLE_FIELDS) {
25
- if (hasOwn(fixed, field)) {
26
- candidate[field] = fixed[field];
27
- }
28
- }
29
- if (candidate.mocksStrict !== undefined && typeof candidate.mocksStrict !== 'boolean') {
30
- throw new Error('mocksStrict must be boolean when present');
31
- }
32
- const normalized = cloneJson(candidate);
33
- const { stripped } = sanitizeGeneratedSamples([normalized], { skillContent });
34
- if (stripped.length > 0) {
35
- throw new Error(`fixed sample failed sanitizer: ${stripped.join('; ')}`);
36
- }
37
- validateSamples([normalized]);
38
- const merged = cloneJson(original);
39
- merged.sample_id = sampleId;
40
- for (const field of FIXABLE_FIELDS) {
41
- const touchedByFix = hasOwn(fixed, field) || (field === 'mocksStrict' && hasOwn(fixed, 'mocks'));
42
- if (!touchedByFix)
43
- continue;
44
- const normalizedRecord = normalized;
45
- if (hasOwn(normalizedRecord, field)) {
46
- merged[field] = normalizedRecord[field];
47
- }
48
- else {
49
- delete merged[field];
50
- }
51
- }
52
- const sample = merged;
53
- validateSamples([sample]);
54
- return {
55
- sample,
56
- changed: JSON.stringify(sample) !== JSON.stringify(original),
33
+ function stampFixMetadata(sample, reportId) {
34
+ sample.omkFix = {
35
+ ...(typeof sample.omkFix === 'object' && sample.omkFix !== null ? sample.omkFix : {}),
36
+ attempts: fixAttempts(sample) + 1,
37
+ lastFixedAt: new Date().toISOString(),
38
+ lastReportId: reportId,
57
39
  };
58
40
  }
59
- function buildFixPrompt(ctx, skillContent) {
60
- const skillPreview = skillContent.length > 8000
61
- ? skillContent.slice(0, 8000) + '\n\n... (truncated)'
62
- : skillContent;
63
- const failedList = ctx.failedAssertions
64
- .filter((a) => !a.passed)
65
- .map((a) => `- ${a.type}: ${a.value}`)
66
- .join('\n');
67
- return `## 原始 Sample
68
-
69
- ${JSON.stringify(ctx.originalSample, null, 2)}
70
-
71
- ## 诊断信息
72
-
73
- - 归因:sample_design
74
- - 诊断摘要:${ctx.diagnosticSummary}
75
- - 期望行为:${ctx.expected}
76
- - 实际行为:${ctx.actual}
77
- - Sample 修改建议:${ctx.suggestionSample || '(无)'}
78
-
79
- ## 失败的断言
80
-
81
- ${failedList || '(无)'}
82
-
83
- ## Skill 原文(参考)
84
-
85
- ${skillPreview}
86
-
87
- 请根据诊断信息修复这个 sample。直接输出修复后的完整 sample JSON 对象。`;
88
- }
89
- function parseFixedSample(text) {
41
+ function parseFixedSamples(text) {
90
42
  let cleaned = text.trim();
91
- // Strip markdown code fences
92
43
  if (cleaned.startsWith('```')) {
93
44
  cleaned = cleaned.replace(/^```(?:json)?\s*\n?/, '').replace(/\n?```\s*$/, '');
94
45
  }
95
46
  try {
96
- const obj = JSON.parse(cleaned);
97
- if (obj && typeof obj === 'object' && !Array.isArray(obj))
98
- return obj;
47
+ const arr = JSON.parse(cleaned);
48
+ if (Array.isArray(arr) && arr.every((x) => x && typeof x === 'object' && !Array.isArray(x)))
49
+ return arr;
99
50
  }
100
51
  catch { /* fall through */ }
101
- // Try to extract first JSON object
102
- const start = cleaned.indexOf('{');
52
+ // Try to extract first JSON array
53
+ const start = cleaned.indexOf('[');
103
54
  if (start < 0)
104
55
  return null;
105
56
  let depth = 0;
106
57
  for (let i = start; i < cleaned.length; i++) {
107
- if (cleaned[i] === '{')
58
+ if (cleaned[i] === '[')
108
59
  depth++;
109
- else if (cleaned[i] === '}') {
60
+ else if (cleaned[i] === ']') {
110
61
  depth--;
111
62
  if (depth === 0) {
112
63
  try {
@@ -121,66 +72,142 @@ function parseFixedSample(text) {
121
72
  return null;
122
73
  }
123
74
  export async function fixSamples(options) {
124
- const { skillContent, samples, report, treatmentKey, executor, model = 'opus' } = options;
75
+ const { skillContent, samples, report, treatmentKey, executor, model = 'opus', maxAttemptsPerSample = 2 } = options;
125
76
  const sampleMap = new Map(samples.map((s) => [s.sample_id, s]));
126
- let totalCost = 0;
127
- const fixes = [];
77
+ // Collect all fixable samples into one batch
78
+ const fixContexts = [];
79
+ const skippedByAttempts = [];
128
80
  for (const entry of report.results) {
129
81
  const variant = entry.variants?.[treatmentKey];
130
82
  if (!variant)
131
83
  continue;
132
84
  const variantObj = variant;
133
- const rootCause = variantObj.diagnostic
134
- ? variantObj.diagnostic.rootCause ?? []
135
- : [];
136
- if (!rootCause.includes('sample_design'))
85
+ if (variantObj.ok === false)
86
+ continue;
87
+ const assertionDetails = variantObj.assertions?.details ?? [];
88
+ if (assertionDetails.length === 0 || assertionDetails.every((d) => d.passed))
137
89
  continue;
138
90
  const sid = entry.sample_id;
139
91
  const original = sampleMap.get(sid);
140
- if (!original) {
141
- fixes.push({ sampleId: sid, changed: false, error: 'sample not found in file' });
92
+ if (!original)
93
+ continue;
94
+ if (fixAttempts(original) >= maxAttemptsPerSample) {
95
+ skippedByAttempts.push(sid);
142
96
  continue;
143
97
  }
144
- const variantAny = variant;
145
- const diag = variantAny.diagnostic;
98
+ const diag = variantObj.diagnostic;
146
99
  const suggestion = diag?.suggestion;
147
- const assertionDetails = variantAny.assertions?.details ?? [];
148
- const ctx = {
100
+ fixContexts.push({
149
101
  sampleId: sid,
150
102
  originalSample: original,
151
103
  diagnosticSummary: diag?.summary ?? '',
152
104
  expected: diag?.expected ?? '',
153
105
  actual: diag?.actual ?? '',
154
106
  suggestionSample: suggestion?.sample ?? '',
107
+ rootCause: diag?.rootCause ?? [],
155
108
  failedAssertions: assertionDetails,
109
+ toolCalls: (variantObj.toolCalls ?? []),
110
+ });
111
+ }
112
+ if (fixContexts.length === 0) {
113
+ return {
114
+ samples,
115
+ fixedCount: 0,
116
+ costUSD: 0,
117
+ fixes: skippedByAttempts.map((sampleId) => ({ sampleId, changed: false, error: `max attempts reached (${maxAttemptsPerSample})` })),
156
118
  };
157
- const prompt = buildFixPrompt(ctx, skillContent);
158
- try {
159
- const result = await executor({ model, system: FIX_SYSTEM_PROMPT, prompt, timeoutMs: 120_000, lean: true });
160
- totalCost += result.costUSD;
161
- if (!result.ok) {
162
- fixes.push({ sampleId: sid, changed: false, error: 'executor failed' });
119
+ }
120
+ // Build one batch prompt with all failing samples
121
+ const skillPreview = skillContent.length > 6000
122
+ ? skillContent.slice(0, 6000) + '\n\n... (truncated)'
123
+ : skillContent;
124
+ const sampleSections = fixContexts.map((ctx) => {
125
+ const failedList = ctx.failedAssertions
126
+ .filter((a) => !a.passed)
127
+ .map((a) => ` - ${a.type}: ${a.value}`)
128
+ .join('\n');
129
+ const toolCallsSummary = ctx.toolCalls.length > 0
130
+ ? ctx.toolCalls.map((tc, i) => ` [${i}] ${tc.tool} success=${tc.success} input=${JSON.stringify(tc.input).slice(0, 150)}`).join('\n')
131
+ : ' (无工具调用)';
132
+ return `### ${ctx.sampleId}
133
+
134
+ 原始 sample:
135
+ ${JSON.stringify(ctx.originalSample, null, 2)}
136
+
137
+ 诊断: ${ctx.rootCause.join(', ') || '(无)'} — ${ctx.diagnosticSummary}
138
+ 期望: ${ctx.expected}
139
+ 实际: ${ctx.actual}
140
+ 建议: ${ctx.suggestionSample || '(无)'}
141
+
142
+ 失败断言:
143
+ ${failedList || '(无)'}
144
+
145
+ 实际工具调用:
146
+ ${toolCallsSummary}`;
147
+ }).join('\n\n---\n\n');
148
+ const prompt = `以下有 ${fixContexts.length} 条失败的评测用例需要分析修复。
149
+
150
+ ## Skill 原文(参考,不可修改)
151
+
152
+ ${skillPreview}
153
+
154
+ ## 待修复的用例
155
+
156
+ ${sampleSections}
157
+
158
+ 请分析每条用例的失败原因,判断是 sample 设计问题还是 LLM 行为问题。若是 sample 设计问题,优先把断言收敛到核心行为节点,放松易随机的工具/命令/文案/完整步骤绑定;不要为了过用例而要求修改 SKILL.md,也不要把 skill 的完整流程细节塞进 sample。输出一个 JSON 数组,包含所有 ${fixContexts.length} 条 sample(修改过的和原样保留的都要包含)。`;
159
+ try {
160
+ const result = await executor({ model, system: FIX_SYSTEM_PROMPT, prompt, timeoutMs: 300_000 });
161
+ if (!result.ok) {
162
+ return {
163
+ samples,
164
+ fixedCount: 0,
165
+ costUSD: result.costUSD,
166
+ fixes: fixContexts.map((ctx) => ({ sampleId: ctx.sampleId, changed: false, error: 'executor failed' })),
167
+ };
168
+ }
169
+ const fixedArr = parseFixedSamples(result.text);
170
+ if (!fixedArr) {
171
+ return {
172
+ samples,
173
+ fixedCount: 0,
174
+ costUSD: result.costUSD,
175
+ fixes: fixContexts.map((ctx) => ({ sampleId: ctx.sampleId, changed: false, error: 'failed to parse LLM response as JSON array' })),
176
+ };
177
+ }
178
+ const sanitizedFixedArr = sanitizeFixedSamples(fixedArr, skillContent);
179
+ const fixes = [];
180
+ for (const fixed of sanitizedFixedArr) {
181
+ const sid = fixed.sample_id;
182
+ if (!sid)
163
183
  continue;
164
- }
165
- const fixed = parseFixedSample(result.text);
166
- if (!fixed) {
167
- fixes.push({ sampleId: sid, changed: false, error: 'failed to parse LLM response as JSON' });
184
+ const original = sampleMap.get(sid);
185
+ if (!original)
168
186
  continue;
169
- }
170
- const merged = mergeAndValidateFixedSample(original, fixed, sid, skillContent);
171
- if (merged.changed)
172
- sampleMap.set(sid, merged.sample);
173
- fixes.push({ sampleId: sid, changed: merged.changed });
174
- }
175
- catch (err) {
176
- fixes.push({ sampleId: sid, changed: false, error: String(err) });
187
+ const changed = JSON.stringify(fixed) !== JSON.stringify(original);
188
+ fixed.sample_id = sid;
189
+ if (changed)
190
+ stampFixMetadata(fixed, report.id);
191
+ sampleMap.set(sid, fixed);
192
+ fixes.push({ sampleId: sid, changed });
177
193
  }
194
+ return {
195
+ samples: samples.map((s) => sampleMap.get(s.sample_id) ?? s),
196
+ fixedCount: fixes.filter((f) => f.changed).length,
197
+ costUSD: result.costUSD,
198
+ fixes: [
199
+ ...fixes,
200
+ ...skippedByAttempts.map((sampleId) => ({ sampleId, changed: false, error: `max attempts reached (${maxAttemptsPerSample})` })),
201
+ ],
202
+ };
203
+ }
204
+ catch (err) {
205
+ return {
206
+ samples,
207
+ fixedCount: 0,
208
+ costUSD: 0,
209
+ fixes: fixContexts.map((ctx) => ({ sampleId: ctx.sampleId, changed: false, error: String(err) })),
210
+ };
178
211
  }
179
- return {
180
- samples: samples.map((s) => sampleMap.get(s.sample_id) ?? s),
181
- fixedCount: fixes.filter((f) => f.changed).length,
182
- costUSD: totalCost,
183
- fixes,
184
- };
185
212
  }
186
213
  //# sourceMappingURL=sample-fixer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sample-fixer.js","sourceRoot":"","sources":["../../../src/authoring/sample-fixer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sample-fixer.js","sourceRoot":"","sources":["../../../src/authoring/sample-fixer.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,26 @@
1
- export declare function execute(argv: string[]): Promise<void>;
1
+ import { BaseCommand } from '../oclif/base-command.js';
2
+ export default class Doctor extends BaseCommand {
3
+ static description: string;
4
+ static examples: {
5
+ description: string;
6
+ command: string;
7
+ }[];
8
+ static args: {
9
+ target: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
10
+ };
11
+ static flags: {
12
+ lang: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
13
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
+ gate: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ executor: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
16
+ model: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
17
+ samples: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
+ timeout: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
19
+ html: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
20
+ 'static-only': import("@oclif/core/interfaces").BooleanFlag<boolean>;
21
+ fix: import("@oclif/core/interfaces").BooleanFlag<boolean>;
22
+ effort: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
23
+ };
24
+ run(): Promise<void>;
25
+ }
2
26
  //# sourceMappingURL=doctor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAoDA,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgI3D"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAkDvD,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,WAAW;IAC7C,MAAM,CAAC,WAAW,SAGf;IAEH,MAAM,CAAC,QAAQ;;;QAsBb;IAEF,MAAM,CAAC,IAAI;;MAQT;IAEF,MAAM,CAAC,KAAK;;;;;;;;;;;;MAmEV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAkH3B"}