@rpamis/comet 0.3.9 → 0.4.0-beta.1

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 (624) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +371 -222
  3. package/assets/manifest.json +33 -12
  4. package/assets/skills/comet/SKILL.md +87 -102
  5. package/assets/skills/comet/reference/auto-transition.md +1 -1
  6. package/assets/skills/comet/reference/comet-yaml-fields.md +11 -4
  7. package/assets/skills/comet/reference/context-recovery.md +12 -2
  8. package/assets/skills/comet/reference/debug-gate.md +17 -1
  9. package/assets/skills/comet/reference/decision-point.md +13 -2
  10. package/assets/skills/comet/reference/intent-frame.md +74 -0
  11. package/assets/skills/comet/reference/scripts.md +69 -0
  12. package/assets/skills/comet/reference/subagent-dispatch.md +79 -23
  13. package/assets/skills/comet/rules/comet-phase-guard.en.md +18 -10
  14. package/assets/skills/comet/rules/comet-phase-guard.md +17 -10
  15. package/assets/skills/comet/runtime/classic/checks.yaml +6 -0
  16. package/assets/skills/comet/runtime/classic/guardrails.yaml +13 -0
  17. package/assets/skills/comet/runtime/classic/skill.yaml +122 -0
  18. package/assets/skills/comet/scripts/comet-archive.mjs +3 -0
  19. package/assets/skills/comet/scripts/comet-env.mjs +15 -0
  20. package/assets/skills/comet/scripts/comet-guard.mjs +3 -0
  21. package/assets/skills/comet/scripts/comet-handoff.mjs +3 -0
  22. package/assets/skills/comet/scripts/comet-hook-guard.mjs +3 -0
  23. package/assets/skills/comet/scripts/comet-intent.mjs +3 -0
  24. package/assets/skills/comet/scripts/comet-runtime.mjs +12857 -0
  25. package/assets/skills/comet/scripts/comet-state.mjs +3 -0
  26. package/assets/skills/comet/scripts/comet-yaml-validate.mjs +3 -0
  27. package/assets/skills/comet-any/SKILL.md +118 -0
  28. package/assets/skills/comet-any/reference/authored-zone-example.md +100 -0
  29. package/assets/skills/comet-any/reference/authoring-protocol.json +91 -0
  30. package/assets/skills/comet-any/reference/authoring-subagents.md +102 -0
  31. package/assets/skills/comet-any/reference/bundle-authoring.md +166 -0
  32. package/assets/skills/comet-any/reference/eval-provider.md +83 -0
  33. package/assets/skills/comet-any/reference/subagents/pause-points-author.md +75 -0
  34. package/assets/skills/comet-any/reference/subagents/reference-author.md +77 -0
  35. package/assets/skills/comet-any/reference/subagents/script-author.md +81 -0
  36. package/assets/skills/comet-any/reference/subagents/skill-core-author.md +129 -0
  37. package/assets/skills/comet-any/reference/subagents/skill-reviewer.md +124 -0
  38. package/assets/skills/comet-any/reference/subagents/workflow-entry-author.md +100 -0
  39. package/assets/skills/comet-archive/SKILL.md +25 -15
  40. package/assets/skills/comet-build/SKILL.md +51 -40
  41. package/assets/skills/comet-design/SKILL.md +14 -18
  42. package/assets/skills/comet-hotfix/SKILL.md +33 -43
  43. package/assets/skills/comet-open/SKILL.md +10 -20
  44. package/assets/skills/comet-tweak/SKILL.md +71 -65
  45. package/assets/skills/comet-verify/SKILL.md +31 -35
  46. package/assets/skills-zh/comet/SKILL.md +87 -101
  47. package/assets/skills-zh/comet/reference/auto-transition.md +3 -3
  48. package/assets/skills-zh/comet/reference/comet-yaml-fields.md +8 -4
  49. package/assets/skills-zh/comet/reference/context-recovery.md +11 -1
  50. package/assets/skills-zh/comet/reference/debug-gate.md +17 -1
  51. package/assets/skills-zh/comet/reference/decision-point.md +13 -2
  52. package/assets/skills-zh/comet/reference/intent-frame.md +74 -0
  53. package/assets/skills-zh/comet/reference/scripts.md +69 -0
  54. package/assets/skills-zh/comet/reference/subagent-dispatch.md +67 -18
  55. package/assets/skills-zh/comet/runtime/classic/checks.yaml +6 -0
  56. package/assets/skills-zh/comet/runtime/classic/guardrails.yaml +13 -0
  57. package/assets/skills-zh/comet/runtime/classic/skill.yaml +122 -0
  58. package/assets/skills-zh/comet-any/SKILL.md +118 -0
  59. package/assets/skills-zh/comet-any/reference/authored-zone-example.md +100 -0
  60. package/assets/skills-zh/comet-any/reference/authoring-protocol.json +91 -0
  61. package/assets/skills-zh/comet-any/reference/authoring-subagents.md +107 -0
  62. package/assets/skills-zh/comet-any/reference/bundle-authoring.md +166 -0
  63. package/assets/skills-zh/comet-any/reference/eval-provider.md +66 -0
  64. package/assets/skills-zh/comet-any/reference/subagents/pause-points-author.md +79 -0
  65. package/assets/skills-zh/comet-any/reference/subagents/reference-author.md +81 -0
  66. package/assets/skills-zh/comet-any/reference/subagents/script-author.md +84 -0
  67. package/assets/skills-zh/comet-any/reference/subagents/skill-core-author.md +129 -0
  68. package/assets/skills-zh/comet-any/reference/subagents/skill-reviewer.md +124 -0
  69. package/assets/skills-zh/comet-any/reference/subagents/workflow-entry-author.md +98 -0
  70. package/assets/skills-zh/comet-archive/SKILL.md +25 -15
  71. package/assets/skills-zh/comet-build/SKILL.md +41 -43
  72. package/assets/skills-zh/comet-design/SKILL.md +14 -18
  73. package/assets/skills-zh/comet-hotfix/SKILL.md +37 -47
  74. package/assets/skills-zh/comet-open/SKILL.md +12 -22
  75. package/assets/skills-zh/comet-tweak/SKILL.md +70 -63
  76. package/assets/skills-zh/comet-verify/SKILL.md +28 -30
  77. package/bin/comet.js +1 -1
  78. package/dist/{cli → app/cli}/index.d.ts.map +1 -1
  79. package/dist/app/cli/index.js +430 -0
  80. package/dist/app/cli/index.js.map +1 -0
  81. package/dist/app/commands/bundle.d.ts +51 -0
  82. package/dist/app/commands/bundle.d.ts.map +1 -0
  83. package/dist/app/commands/bundle.js +387 -0
  84. package/dist/app/commands/bundle.js.map +1 -0
  85. package/dist/app/commands/creator.d.ts +14 -0
  86. package/dist/app/commands/creator.d.ts.map +1 -0
  87. package/dist/app/commands/creator.js +82 -0
  88. package/dist/app/commands/creator.js.map +1 -0
  89. package/dist/app/commands/dashboard.d.ts +16 -0
  90. package/dist/app/commands/dashboard.d.ts.map +1 -0
  91. package/dist/app/commands/dashboard.js +53 -0
  92. package/dist/app/commands/dashboard.js.map +1 -0
  93. package/dist/{commands → app/commands}/doctor.d.ts +1 -1
  94. package/dist/app/commands/doctor.d.ts.map +1 -0
  95. package/dist/{commands → app/commands}/doctor.js +110 -60
  96. package/dist/app/commands/doctor.js.map +1 -0
  97. package/dist/app/commands/eval.d.ts +17 -0
  98. package/dist/app/commands/eval.d.ts.map +1 -0
  99. package/dist/app/commands/eval.js +169 -0
  100. package/dist/app/commands/eval.js.map +1 -0
  101. package/dist/app/commands/i18n.d.ts +4 -0
  102. package/dist/app/commands/i18n.d.ts.map +1 -0
  103. package/dist/{commands → app/commands}/i18n.js +22 -2
  104. package/dist/app/commands/i18n.js.map +1 -0
  105. package/dist/{commands → app/commands}/init.d.ts +3 -1
  106. package/dist/app/commands/init.d.ts.map +1 -0
  107. package/dist/{commands → app/commands}/init.js +81 -31
  108. package/dist/app/commands/init.js.map +1 -0
  109. package/dist/app/commands/platform-select-prompt.d.ts +38 -0
  110. package/dist/app/commands/platform-select-prompt.d.ts.map +1 -0
  111. package/dist/app/commands/platform-select-prompt.js +141 -0
  112. package/dist/app/commands/platform-select-prompt.js.map +1 -0
  113. package/dist/app/commands/publish.d.ts +7 -0
  114. package/dist/app/commands/publish.d.ts.map +1 -0
  115. package/dist/app/commands/publish.js +14 -0
  116. package/dist/app/commands/publish.js.map +1 -0
  117. package/dist/app/commands/skill.d.ts +23 -0
  118. package/dist/app/commands/skill.d.ts.map +1 -0
  119. package/dist/app/commands/skill.js +208 -0
  120. package/dist/app/commands/skill.js.map +1 -0
  121. package/dist/app/commands/status.d.ts.map +1 -0
  122. package/dist/app/commands/status.js +159 -0
  123. package/dist/app/commands/status.js.map +1 -0
  124. package/dist/{commands → app/commands}/uninstall.d.ts +1 -1
  125. package/dist/app/commands/uninstall.d.ts.map +1 -0
  126. package/dist/{commands → app/commands}/uninstall.js +3 -3
  127. package/dist/app/commands/uninstall.js.map +1 -0
  128. package/dist/{commands → app/commands}/update.d.ts +4 -3
  129. package/dist/app/commands/update.d.ts.map +1 -0
  130. package/dist/{commands → app/commands}/update.js +33 -10
  131. package/dist/app/commands/update.js.map +1 -0
  132. package/dist/config/repository-layout.json +98 -0
  133. package/dist/domains/bundle/authoring.d.ts +82 -0
  134. package/dist/domains/bundle/authoring.d.ts.map +1 -0
  135. package/dist/domains/bundle/authoring.js +185 -0
  136. package/dist/domains/bundle/authoring.js.map +1 -0
  137. package/dist/domains/bundle/bundle-platform.d.ts +39 -0
  138. package/dist/domains/bundle/bundle-platform.d.ts.map +1 -0
  139. package/dist/domains/bundle/bundle-platform.js +287 -0
  140. package/dist/domains/bundle/bundle-platform.js.map +1 -0
  141. package/dist/domains/bundle/candidates.d.ts +29 -0
  142. package/dist/domains/bundle/candidates.d.ts.map +1 -0
  143. package/dist/domains/bundle/candidates.js +37 -0
  144. package/dist/domains/bundle/candidates.js.map +1 -0
  145. package/dist/domains/bundle/compatibility-benchmark.d.ts +12 -0
  146. package/dist/domains/bundle/compatibility-benchmark.d.ts.map +1 -0
  147. package/dist/domains/bundle/compatibility-benchmark.js +224 -0
  148. package/dist/domains/bundle/compatibility-benchmark.js.map +1 -0
  149. package/dist/domains/bundle/compiler.d.ts +5 -0
  150. package/dist/domains/bundle/compiler.d.ts.map +1 -0
  151. package/dist/domains/bundle/compiler.js +106 -0
  152. package/dist/domains/bundle/compiler.js.map +1 -0
  153. package/dist/domains/bundle/distribute.d.ts +33 -0
  154. package/dist/domains/bundle/distribute.d.ts.map +1 -0
  155. package/dist/domains/bundle/distribute.js +166 -0
  156. package/dist/domains/bundle/distribute.js.map +1 -0
  157. package/dist/domains/bundle/draft.d.ts +19 -0
  158. package/dist/domains/bundle/draft.d.ts.map +1 -0
  159. package/dist/domains/bundle/draft.js +82 -0
  160. package/dist/domains/bundle/draft.js.map +1 -0
  161. package/dist/domains/bundle/eval.d.ts +36 -0
  162. package/dist/domains/bundle/eval.d.ts.map +1 -0
  163. package/dist/domains/bundle/eval.js +501 -0
  164. package/dist/domains/bundle/eval.js.map +1 -0
  165. package/dist/domains/bundle/factory-compose.d.ts +12 -0
  166. package/dist/domains/bundle/factory-compose.d.ts.map +1 -0
  167. package/dist/domains/bundle/factory-compose.js +309 -0
  168. package/dist/domains/bundle/factory-compose.js.map +1 -0
  169. package/dist/domains/bundle/factory-guide.d.ts +37 -0
  170. package/dist/domains/bundle/factory-guide.d.ts.map +1 -0
  171. package/dist/domains/bundle/factory-guide.js +96 -0
  172. package/dist/domains/bundle/factory-guide.js.map +1 -0
  173. package/dist/domains/bundle/factory-plan.d.ts +48 -0
  174. package/dist/domains/bundle/factory-plan.d.ts.map +1 -0
  175. package/dist/domains/bundle/factory-plan.js +172 -0
  176. package/dist/domains/bundle/factory-plan.js.map +1 -0
  177. package/dist/domains/bundle/factory-proposal.d.ts +31 -0
  178. package/dist/domains/bundle/factory-proposal.d.ts.map +1 -0
  179. package/dist/domains/bundle/factory-proposal.js +225 -0
  180. package/dist/domains/bundle/factory-proposal.js.map +1 -0
  181. package/dist/domains/bundle/factory-resolve.d.ts +11 -0
  182. package/dist/domains/bundle/factory-resolve.d.ts.map +1 -0
  183. package/dist/domains/bundle/factory-resolve.js +121 -0
  184. package/dist/domains/bundle/factory-resolve.js.map +1 -0
  185. package/dist/domains/bundle/factory.d.ts +17 -0
  186. package/dist/domains/bundle/factory.d.ts.map +1 -0
  187. package/dist/domains/bundle/factory.js +511 -0
  188. package/dist/domains/bundle/factory.js.map +1 -0
  189. package/dist/domains/bundle/hash.d.ts +3 -0
  190. package/dist/domains/bundle/hash.d.ts.map +1 -0
  191. package/dist/domains/bundle/hash.js +72 -0
  192. package/dist/domains/bundle/hash.js.map +1 -0
  193. package/dist/domains/bundle/load.d.ts +4 -0
  194. package/dist/domains/bundle/load.d.ts.map +1 -0
  195. package/dist/domains/bundle/load.js +355 -0
  196. package/dist/domains/bundle/load.js.map +1 -0
  197. package/dist/domains/bundle/next-action.d.ts +37 -0
  198. package/dist/domains/bundle/next-action.d.ts.map +1 -0
  199. package/dist/domains/bundle/next-action.js +185 -0
  200. package/dist/domains/bundle/next-action.js.map +1 -0
  201. package/dist/domains/bundle/platform.d.ts +21 -0
  202. package/dist/domains/bundle/platform.d.ts.map +1 -0
  203. package/dist/domains/bundle/platform.js +170 -0
  204. package/dist/domains/bundle/platform.js.map +1 -0
  205. package/dist/domains/bundle/preferences.d.ts +11 -0
  206. package/dist/domains/bundle/preferences.d.ts.map +1 -0
  207. package/dist/domains/bundle/preferences.js +17 -0
  208. package/dist/domains/bundle/preferences.js.map +1 -0
  209. package/dist/domains/bundle/publish.d.ts +14 -0
  210. package/dist/domains/bundle/publish.d.ts.map +1 -0
  211. package/dist/domains/bundle/publish.js +159 -0
  212. package/dist/domains/bundle/publish.js.map +1 -0
  213. package/dist/domains/bundle/readiness-user-summary.d.ts +25 -0
  214. package/dist/domains/bundle/readiness-user-summary.d.ts.map +1 -0
  215. package/dist/domains/bundle/readiness-user-summary.js +186 -0
  216. package/dist/domains/bundle/readiness-user-summary.js.map +1 -0
  217. package/dist/domains/bundle/review-summary.d.ts +36 -0
  218. package/dist/domains/bundle/review-summary.d.ts.map +1 -0
  219. package/dist/domains/bundle/review-summary.js +348 -0
  220. package/dist/domains/bundle/review-summary.js.map +1 -0
  221. package/dist/domains/bundle/state.d.ts +7 -0
  222. package/dist/domains/bundle/state.d.ts.map +1 -0
  223. package/dist/domains/bundle/state.js +132 -0
  224. package/dist/domains/bundle/state.js.map +1 -0
  225. package/dist/domains/bundle/types.d.ts +347 -0
  226. package/dist/domains/bundle/types.d.ts.map +1 -0
  227. package/dist/domains/bundle/types.js.map +1 -0
  228. package/dist/domains/bundle/user-facing.d.ts +48 -0
  229. package/dist/domains/bundle/user-facing.d.ts.map +1 -0
  230. package/dist/domains/bundle/user-facing.js +73 -0
  231. package/dist/domains/bundle/user-facing.js.map +1 -0
  232. package/dist/domains/bundle/validate.d.ts +5 -0
  233. package/dist/domains/bundle/validate.d.ts.map +1 -0
  234. package/dist/domains/bundle/validate.js +292 -0
  235. package/dist/domains/bundle/validate.js.map +1 -0
  236. package/dist/domains/comet-classic/classic-archive-entry.d.ts +2 -0
  237. package/dist/domains/comet-classic/classic-archive-entry.d.ts.map +1 -0
  238. package/dist/domains/comet-classic/classic-archive-entry.js +4 -0
  239. package/dist/domains/comet-classic/classic-archive-entry.js.map +1 -0
  240. package/dist/domains/comet-classic/classic-archive.d.ts +3 -0
  241. package/dist/domains/comet-classic/classic-archive.d.ts.map +1 -0
  242. package/dist/domains/comet-classic/classic-archive.js +392 -0
  243. package/dist/domains/comet-classic/classic-archive.js.map +1 -0
  244. package/dist/domains/comet-classic/classic-cli.d.ts +15 -0
  245. package/dist/domains/comet-classic/classic-cli.d.ts.map +1 -0
  246. package/dist/domains/comet-classic/classic-cli.js +94 -0
  247. package/dist/domains/comet-classic/classic-cli.js.map +1 -0
  248. package/dist/domains/comet-classic/classic-diagnostics.d.ts +16 -0
  249. package/dist/domains/comet-classic/classic-diagnostics.d.ts.map +1 -0
  250. package/dist/domains/comet-classic/classic-diagnostics.js +57 -0
  251. package/dist/domains/comet-classic/classic-diagnostics.js.map +1 -0
  252. package/dist/domains/comet-classic/classic-evidence.d.ts +10 -0
  253. package/dist/domains/comet-classic/classic-evidence.d.ts.map +1 -0
  254. package/dist/domains/comet-classic/classic-evidence.js +114 -0
  255. package/dist/domains/comet-classic/classic-evidence.js.map +1 -0
  256. package/dist/domains/comet-classic/classic-guard-entry.d.ts +2 -0
  257. package/dist/domains/comet-classic/classic-guard-entry.d.ts.map +1 -0
  258. package/dist/domains/comet-classic/classic-guard-entry.js +4 -0
  259. package/dist/domains/comet-classic/classic-guard-entry.js.map +1 -0
  260. package/dist/domains/comet-classic/classic-guard.d.ts +3 -0
  261. package/dist/domains/comet-classic/classic-guard.d.ts.map +1 -0
  262. package/dist/domains/comet-classic/classic-guard.js +833 -0
  263. package/dist/domains/comet-classic/classic-guard.js.map +1 -0
  264. package/dist/domains/comet-classic/classic-handoff-entry.d.ts +2 -0
  265. package/dist/domains/comet-classic/classic-handoff-entry.d.ts.map +1 -0
  266. package/dist/domains/comet-classic/classic-handoff-entry.js +4 -0
  267. package/dist/domains/comet-classic/classic-handoff-entry.js.map +1 -0
  268. package/dist/domains/comet-classic/classic-handoff.d.ts +3 -0
  269. package/dist/domains/comet-classic/classic-handoff.d.ts.map +1 -0
  270. package/dist/domains/comet-classic/classic-handoff.js +478 -0
  271. package/dist/domains/comet-classic/classic-handoff.js.map +1 -0
  272. package/dist/domains/comet-classic/classic-hook-guard-entry.d.ts +2 -0
  273. package/dist/domains/comet-classic/classic-hook-guard-entry.d.ts.map +1 -0
  274. package/dist/domains/comet-classic/classic-hook-guard-entry.js +4 -0
  275. package/dist/domains/comet-classic/classic-hook-guard-entry.js.map +1 -0
  276. package/dist/domains/comet-classic/classic-hook-guard.d.ts +3 -0
  277. package/dist/domains/comet-classic/classic-hook-guard.d.ts.map +1 -0
  278. package/dist/domains/comet-classic/classic-hook-guard.js +302 -0
  279. package/dist/domains/comet-classic/classic-hook-guard.js.map +1 -0
  280. package/dist/domains/comet-classic/classic-intent-command.d.ts +3 -0
  281. package/dist/domains/comet-classic/classic-intent-command.d.ts.map +1 -0
  282. package/dist/domains/comet-classic/classic-intent-command.js +40 -0
  283. package/dist/domains/comet-classic/classic-intent-command.js.map +1 -0
  284. package/dist/domains/comet-classic/classic-intent-entry.d.ts +2 -0
  285. package/dist/domains/comet-classic/classic-intent-entry.d.ts.map +1 -0
  286. package/dist/domains/comet-classic/classic-intent-entry.js +4 -0
  287. package/dist/domains/comet-classic/classic-intent-entry.js.map +1 -0
  288. package/dist/domains/comet-classic/classic-intent.d.ts +79 -0
  289. package/dist/domains/comet-classic/classic-intent.d.ts.map +1 -0
  290. package/dist/domains/comet-classic/classic-intent.js +307 -0
  291. package/dist/domains/comet-classic/classic-intent.js.map +1 -0
  292. package/dist/domains/comet-classic/classic-migrate.d.ts +18 -0
  293. package/dist/domains/comet-classic/classic-migrate.d.ts.map +1 -0
  294. package/dist/domains/comet-classic/classic-migrate.js +184 -0
  295. package/dist/domains/comet-classic/classic-migrate.js.map +1 -0
  296. package/dist/domains/comet-classic/classic-paths.d.ts +8 -0
  297. package/dist/domains/comet-classic/classic-paths.d.ts.map +1 -0
  298. package/dist/domains/comet-classic/classic-paths.js +61 -0
  299. package/dist/domains/comet-classic/classic-paths.js.map +1 -0
  300. package/dist/domains/comet-classic/classic-resolver.d.ts +10 -0
  301. package/dist/domains/comet-classic/classic-resolver.d.ts.map +1 -0
  302. package/dist/domains/comet-classic/classic-resolver.js +89 -0
  303. package/dist/domains/comet-classic/classic-resolver.js.map +1 -0
  304. package/dist/domains/comet-classic/classic-runtime-evals.d.ts +9 -0
  305. package/dist/domains/comet-classic/classic-runtime-evals.d.ts.map +1 -0
  306. package/dist/domains/comet-classic/classic-runtime-evals.js +45 -0
  307. package/dist/domains/comet-classic/classic-runtime-evals.js.map +1 -0
  308. package/dist/domains/comet-classic/classic-runtime-run.d.ts +7 -0
  309. package/dist/domains/comet-classic/classic-runtime-run.d.ts.map +1 -0
  310. package/dist/domains/comet-classic/classic-runtime-run.js +105 -0
  311. package/dist/domains/comet-classic/classic-runtime-run.js.map +1 -0
  312. package/dist/domains/comet-classic/classic-script-entry.d.ts +3 -0
  313. package/dist/domains/comet-classic/classic-script-entry.d.ts.map +1 -0
  314. package/dist/domains/comet-classic/classic-script-entry.js +31 -0
  315. package/dist/domains/comet-classic/classic-script-entry.js.map +1 -0
  316. package/dist/domains/comet-classic/classic-state-command.d.ts +3 -0
  317. package/dist/domains/comet-classic/classic-state-command.d.ts.map +1 -0
  318. package/dist/domains/comet-classic/classic-state-command.js +984 -0
  319. package/dist/domains/comet-classic/classic-state-command.js.map +1 -0
  320. package/dist/domains/comet-classic/classic-state-entry.d.ts +2 -0
  321. package/dist/domains/comet-classic/classic-state-entry.d.ts.map +1 -0
  322. package/dist/domains/comet-classic/classic-state-entry.js +4 -0
  323. package/dist/domains/comet-classic/classic-state-entry.js.map +1 -0
  324. package/dist/domains/comet-classic/classic-state-events.d.ts +18 -0
  325. package/dist/domains/comet-classic/classic-state-events.d.ts.map +1 -0
  326. package/dist/domains/comet-classic/classic-state-events.js +15 -0
  327. package/dist/domains/comet-classic/classic-state-events.js.map +1 -0
  328. package/dist/domains/comet-classic/classic-state.d.ts +69 -0
  329. package/dist/domains/comet-classic/classic-state.d.ts.map +1 -0
  330. package/dist/domains/comet-classic/classic-state.js +238 -0
  331. package/dist/domains/comet-classic/classic-state.js.map +1 -0
  332. package/dist/domains/comet-classic/classic-store.d.ts +7 -0
  333. package/dist/domains/comet-classic/classic-store.d.ts.map +1 -0
  334. package/dist/domains/comet-classic/classic-store.js +127 -0
  335. package/dist/domains/comet-classic/classic-store.js.map +1 -0
  336. package/dist/domains/comet-classic/classic-transitions.d.ts +24 -0
  337. package/dist/domains/comet-classic/classic-transitions.d.ts.map +1 -0
  338. package/dist/domains/comet-classic/classic-transitions.js +124 -0
  339. package/dist/domains/comet-classic/classic-transitions.js.map +1 -0
  340. package/dist/domains/comet-classic/classic-validate-command.d.ts +3 -0
  341. package/dist/domains/comet-classic/classic-validate-command.d.ts.map +1 -0
  342. package/dist/domains/comet-classic/classic-validate-command.js +154 -0
  343. package/dist/domains/comet-classic/classic-validate-command.js.map +1 -0
  344. package/dist/domains/comet-classic/classic-validate-entry.d.ts +2 -0
  345. package/dist/domains/comet-classic/classic-validate-entry.d.ts.map +1 -0
  346. package/dist/domains/comet-classic/classic-validate-entry.js +4 -0
  347. package/dist/domains/comet-classic/classic-validate-entry.js.map +1 -0
  348. package/dist/domains/comet-classic/index.d.ts +20 -0
  349. package/dist/domains/comet-classic/index.d.ts.map +1 -0
  350. package/dist/domains/comet-classic/index.js +20 -0
  351. package/dist/domains/comet-classic/index.js.map +1 -0
  352. package/dist/domains/dashboard/collector.d.ts +12 -0
  353. package/dist/domains/dashboard/collector.d.ts.map +1 -0
  354. package/dist/domains/dashboard/collector.js +475 -0
  355. package/dist/domains/dashboard/collector.js.map +1 -0
  356. package/dist/domains/dashboard/git.d.ts +8 -0
  357. package/dist/domains/dashboard/git.d.ts.map +1 -0
  358. package/dist/domains/dashboard/git.js +69 -0
  359. package/dist/domains/dashboard/git.js.map +1 -0
  360. package/dist/domains/dashboard/next-action.d.ts +17 -0
  361. package/dist/domains/dashboard/next-action.d.ts.map +1 -0
  362. package/dist/domains/dashboard/next-action.js +83 -0
  363. package/dist/domains/dashboard/next-action.js.map +1 -0
  364. package/dist/domains/dashboard/open-browser.d.ts +9 -0
  365. package/dist/domains/dashboard/open-browser.d.ts.map +1 -0
  366. package/dist/domains/dashboard/open-browser.js +40 -0
  367. package/dist/domains/dashboard/open-browser.js.map +1 -0
  368. package/dist/domains/dashboard/risk.d.ts +24 -0
  369. package/dist/domains/dashboard/risk.d.ts.map +1 -0
  370. package/dist/domains/dashboard/risk.js +97 -0
  371. package/dist/domains/dashboard/risk.js.map +1 -0
  372. package/dist/domains/dashboard/server.d.ts +21 -0
  373. package/dist/domains/dashboard/server.d.ts.map +1 -0
  374. package/dist/domains/dashboard/server.js +149 -0
  375. package/dist/domains/dashboard/server.js.map +1 -0
  376. package/dist/domains/dashboard/task-parser.d.ts +13 -0
  377. package/dist/domains/dashboard/task-parser.d.ts.map +1 -0
  378. package/dist/domains/dashboard/task-parser.js +82 -0
  379. package/dist/domains/dashboard/task-parser.js.map +1 -0
  380. package/dist/domains/dashboard/types.d.ts +122 -0
  381. package/dist/domains/dashboard/types.d.ts.map +1 -0
  382. package/dist/domains/dashboard/types.js +10 -0
  383. package/dist/domains/dashboard/types.js.map +1 -0
  384. package/dist/domains/dashboard/verify-parser.d.ts +18 -0
  385. package/dist/domains/dashboard/verify-parser.d.ts.map +1 -0
  386. package/dist/domains/dashboard/verify-parser.js +94 -0
  387. package/dist/domains/dashboard/verify-parser.js.map +1 -0
  388. package/dist/domains/dashboard/web/assets/demo-DQyfozbi.js +1 -0
  389. package/dist/domains/dashboard/web/assets/index-BcO3_QlT.css +1 -0
  390. package/dist/domains/dashboard/web/assets/index-CjU3VXVu.js +22 -0
  391. package/dist/domains/dashboard/web/favicon.png +0 -0
  392. package/dist/domains/dashboard/web/index.html +16 -0
  393. package/dist/domains/dashboard/yaml.d.ts +13 -0
  394. package/dist/domains/dashboard/yaml.d.ts.map +1 -0
  395. package/dist/domains/dashboard/yaml.js +61 -0
  396. package/dist/domains/dashboard/yaml.js.map +1 -0
  397. package/dist/domains/engine/evals.d.ts +4 -0
  398. package/dist/domains/engine/evals.d.ts.map +1 -0
  399. package/dist/domains/engine/evals.js +25 -0
  400. package/dist/domains/engine/evals.js.map +1 -0
  401. package/dist/domains/engine/guardrails.d.ts +10 -0
  402. package/dist/domains/engine/guardrails.d.ts.map +1 -0
  403. package/dist/domains/engine/guardrails.js +25 -0
  404. package/dist/domains/engine/guardrails.js.map +1 -0
  405. package/dist/domains/engine/loop.d.ts +15 -0
  406. package/dist/domains/engine/loop.d.ts.map +1 -0
  407. package/dist/domains/engine/loop.js +126 -0
  408. package/dist/domains/engine/loop.js.map +1 -0
  409. package/dist/domains/engine/manual-run.d.ts +30 -0
  410. package/dist/domains/engine/manual-run.d.ts.map +1 -0
  411. package/dist/domains/engine/manual-run.js +184 -0
  412. package/dist/domains/engine/manual-run.js.map +1 -0
  413. package/dist/domains/engine/resolver.d.ts +20 -0
  414. package/dist/domains/engine/resolver.d.ts.map +1 -0
  415. package/dist/domains/engine/resolver.js +36 -0
  416. package/dist/domains/engine/resolver.js.map +1 -0
  417. package/dist/domains/engine/run-store.d.ts +13 -0
  418. package/dist/domains/engine/run-store.d.ts.map +1 -0
  419. package/dist/domains/engine/run-store.js +100 -0
  420. package/dist/domains/engine/run-store.js.map +1 -0
  421. package/dist/domains/engine/runtime-types.d.ts +11 -0
  422. package/dist/domains/engine/runtime-types.d.ts.map +1 -0
  423. package/dist/domains/engine/runtime-types.js +2 -0
  424. package/dist/domains/engine/runtime-types.js.map +1 -0
  425. package/dist/domains/engine/standalone-run.d.ts +13 -0
  426. package/dist/domains/engine/standalone-run.d.ts.map +1 -0
  427. package/dist/domains/engine/standalone-run.js +27 -0
  428. package/dist/domains/engine/standalone-run.js.map +1 -0
  429. package/dist/domains/engine/state.d.ts +10 -0
  430. package/dist/domains/engine/state.d.ts.map +1 -0
  431. package/dist/domains/engine/state.js +160 -0
  432. package/dist/domains/engine/state.js.map +1 -0
  433. package/dist/domains/engine/types.d.ts +51 -0
  434. package/dist/domains/engine/types.d.ts.map +1 -0
  435. package/dist/domains/engine/types.js +2 -0
  436. package/dist/domains/engine/types.js.map +1 -0
  437. package/dist/domains/eval/index.d.ts +7 -0
  438. package/dist/domains/eval/index.d.ts.map +1 -0
  439. package/dist/domains/eval/index.js +11 -0
  440. package/dist/domains/eval/index.js.map +1 -0
  441. package/dist/domains/eval/repository-benchmarks.d.ts +6 -0
  442. package/dist/domains/eval/repository-benchmarks.d.ts.map +1 -0
  443. package/dist/domains/eval/repository-benchmarks.js +10 -0
  444. package/dist/domains/eval/repository-benchmarks.js.map +1 -0
  445. package/dist/domains/factory/artifacts.d.ts +53 -0
  446. package/dist/domains/factory/artifacts.d.ts.map +1 -0
  447. package/dist/domains/factory/artifacts.js +8 -0
  448. package/dist/domains/factory/artifacts.js.map +1 -0
  449. package/dist/domains/factory/package.d.ts +7 -0
  450. package/dist/domains/factory/package.d.ts.map +1 -0
  451. package/dist/domains/factory/package.js +1511 -0
  452. package/dist/domains/factory/package.js.map +1 -0
  453. package/dist/domains/factory/types.d.ts +127 -0
  454. package/dist/domains/factory/types.d.ts.map +1 -0
  455. package/dist/domains/factory/types.js +2 -0
  456. package/dist/domains/factory/types.js.map +1 -0
  457. package/dist/{core → domains/integrations}/codegraph.d.ts +1 -1
  458. package/dist/domains/integrations/codegraph.d.ts.map +1 -0
  459. package/dist/{core → domains/integrations}/codegraph.js +1 -1
  460. package/dist/domains/integrations/codegraph.js.map +1 -0
  461. package/dist/domains/integrations/openspec.d.ts +18 -0
  462. package/dist/domains/integrations/openspec.d.ts.map +1 -0
  463. package/dist/{core → domains/integrations}/openspec.js +102 -25
  464. package/dist/domains/integrations/openspec.js.map +1 -0
  465. package/dist/{core → domains/integrations}/superpowers.d.ts +10 -2
  466. package/dist/domains/integrations/superpowers.d.ts.map +1 -0
  467. package/dist/{core → domains/integrations}/superpowers.js +59 -13
  468. package/dist/domains/integrations/superpowers.js.map +1 -0
  469. package/dist/domains/skill/discovery.d.ts +17 -0
  470. package/dist/domains/skill/discovery.d.ts.map +1 -0
  471. package/dist/domains/skill/discovery.js +80 -0
  472. package/dist/domains/skill/discovery.js.map +1 -0
  473. package/dist/domains/skill/find.d.ts +41 -0
  474. package/dist/domains/skill/find.d.ts.map +1 -0
  475. package/dist/domains/skill/find.js +251 -0
  476. package/dist/domains/skill/find.js.map +1 -0
  477. package/dist/domains/skill/install.d.ts +11 -0
  478. package/dist/domains/skill/install.d.ts.map +1 -0
  479. package/dist/domains/skill/install.js +82 -0
  480. package/dist/domains/skill/install.js.map +1 -0
  481. package/dist/domains/skill/inventory.d.ts +19 -0
  482. package/dist/domains/skill/inventory.d.ts.map +1 -0
  483. package/dist/domains/skill/inventory.js +64 -0
  484. package/dist/domains/skill/inventory.js.map +1 -0
  485. package/dist/domains/skill/languages.d.ts +19 -0
  486. package/dist/domains/skill/languages.d.ts.map +1 -0
  487. package/dist/domains/skill/languages.js +21 -0
  488. package/dist/domains/skill/languages.js.map +1 -0
  489. package/dist/domains/skill/load.d.ts +5 -0
  490. package/dist/domains/skill/load.d.ts.map +1 -0
  491. package/dist/domains/skill/load.js +313 -0
  492. package/dist/domains/skill/load.js.map +1 -0
  493. package/dist/domains/skill/platform-install.d.ts +87 -0
  494. package/dist/domains/skill/platform-install.d.ts.map +1 -0
  495. package/dist/{core/skills.js → domains/skill/platform-install.js} +243 -51
  496. package/dist/domains/skill/platform-install.js.map +1 -0
  497. package/dist/domains/skill/preferences.d.ts +42 -0
  498. package/dist/domains/skill/preferences.d.ts.map +1 -0
  499. package/dist/domains/skill/preferences.js +118 -0
  500. package/dist/domains/skill/preferences.js.map +1 -0
  501. package/dist/domains/skill/snapshot.d.ts +8 -0
  502. package/dist/domains/skill/snapshot.d.ts.map +1 -0
  503. package/dist/domains/skill/snapshot.js +184 -0
  504. package/dist/domains/skill/snapshot.js.map +1 -0
  505. package/dist/domains/skill/types.d.ts +85 -0
  506. package/dist/domains/skill/types.d.ts.map +1 -0
  507. package/dist/domains/skill/types.js +2 -0
  508. package/dist/{core → domains/skill}/types.js.map +1 -1
  509. package/dist/{core → domains/skill}/uninstall.d.ts +2 -18
  510. package/dist/domains/skill/uninstall.d.ts.map +1 -0
  511. package/dist/{core → domains/skill}/uninstall.js +15 -66
  512. package/dist/domains/skill/uninstall.js.map +1 -0
  513. package/dist/domains/skill/validate.d.ts +3 -0
  514. package/dist/domains/skill/validate.d.ts.map +1 -0
  515. package/dist/domains/skill/validate.js +81 -0
  516. package/dist/domains/skill/validate.js.map +1 -0
  517. package/dist/domains/workflow-contract/builtins.d.ts +8 -0
  518. package/dist/domains/workflow-contract/builtins.d.ts.map +1 -0
  519. package/dist/domains/workflow-contract/builtins.js +229 -0
  520. package/dist/domains/workflow-contract/builtins.js.map +1 -0
  521. package/dist/domains/workflow-contract/hash.d.ts +3 -0
  522. package/dist/domains/workflow-contract/hash.d.ts.map +1 -0
  523. package/dist/domains/workflow-contract/hash.js +16 -0
  524. package/dist/domains/workflow-contract/hash.js.map +1 -0
  525. package/dist/domains/workflow-contract/index.d.ts +6 -0
  526. package/dist/domains/workflow-contract/index.d.ts.map +1 -0
  527. package/dist/domains/workflow-contract/index.js +5 -0
  528. package/dist/domains/workflow-contract/index.js.map +1 -0
  529. package/dist/domains/workflow-contract/normalize.d.ts +3 -0
  530. package/dist/domains/workflow-contract/normalize.d.ts.map +1 -0
  531. package/dist/domains/workflow-contract/normalize.js +146 -0
  532. package/dist/domains/workflow-contract/normalize.js.map +1 -0
  533. package/dist/domains/workflow-contract/types.d.ts +128 -0
  534. package/dist/domains/workflow-contract/types.d.ts.map +1 -0
  535. package/dist/domains/workflow-contract/types.js +2 -0
  536. package/dist/domains/workflow-contract/types.js.map +1 -0
  537. package/dist/domains/workflow-contract/validation.d.ts +3 -0
  538. package/dist/domains/workflow-contract/validation.d.ts.map +1 -0
  539. package/dist/domains/workflow-contract/validation.js +180 -0
  540. package/dist/domains/workflow-contract/validation.js.map +1 -0
  541. package/dist/platform/fs/file-system.d.ts.map +1 -0
  542. package/dist/platform/fs/file-system.js.map +1 -0
  543. package/dist/platform/install/detect.d.ts.map +1 -0
  544. package/dist/{core → platform/install}/detect.js +4 -3
  545. package/dist/platform/install/detect.js.map +1 -0
  546. package/dist/platform/install/platforms.d.ts.map +1 -0
  547. package/dist/{core → platform/install}/platforms.js +41 -0
  548. package/dist/platform/install/platforms.js.map +1 -0
  549. package/dist/platform/install/types.d.ts +3 -0
  550. package/dist/platform/install/types.d.ts.map +1 -0
  551. package/dist/platform/install/types.js +2 -0
  552. package/dist/platform/install/types.js.map +1 -0
  553. package/dist/platform/paths/repository-layout.d.ts +22 -0
  554. package/dist/platform/paths/repository-layout.d.ts.map +1 -0
  555. package/dist/platform/paths/repository-layout.js +11 -0
  556. package/dist/platform/paths/repository-layout.js.map +1 -0
  557. package/dist/platform/process/command-error.d.ts.map +1 -0
  558. package/dist/platform/process/command-error.js.map +1 -0
  559. package/dist/platform/process/shell-quote.d.ts +22 -0
  560. package/dist/platform/process/shell-quote.d.ts.map +1 -0
  561. package/dist/platform/process/shell-quote.js +34 -0
  562. package/dist/platform/process/shell-quote.js.map +1 -0
  563. package/dist/platform/version/version.d.ts.map +1 -0
  564. package/dist/{core → platform/version}/version.js +16 -3
  565. package/dist/platform/version/version.js.map +1 -0
  566. package/package.json +39 -13
  567. package/assets/skills/comet/scripts/comet-archive.sh +0 -311
  568. package/assets/skills/comet/scripts/comet-env.sh +0 -110
  569. package/assets/skills/comet/scripts/comet-guard.sh +0 -778
  570. package/assets/skills/comet/scripts/comet-handoff.sh +0 -390
  571. package/assets/skills/comet/scripts/comet-hook-guard.sh +0 -336
  572. package/assets/skills/comet/scripts/comet-state.sh +0 -1338
  573. package/assets/skills/comet/scripts/comet-yaml-validate.sh +0 -225
  574. package/dist/cli/index.js +0 -84
  575. package/dist/cli/index.js.map +0 -1
  576. package/dist/commands/doctor.d.ts.map +0 -1
  577. package/dist/commands/doctor.js.map +0 -1
  578. package/dist/commands/i18n.d.ts +0 -4
  579. package/dist/commands/i18n.d.ts.map +0 -1
  580. package/dist/commands/i18n.js.map +0 -1
  581. package/dist/commands/init.d.ts.map +0 -1
  582. package/dist/commands/init.js.map +0 -1
  583. package/dist/commands/status.d.ts.map +0 -1
  584. package/dist/commands/status.js +0 -108
  585. package/dist/commands/status.js.map +0 -1
  586. package/dist/commands/uninstall.d.ts.map +0 -1
  587. package/dist/commands/uninstall.js.map +0 -1
  588. package/dist/commands/update.d.ts.map +0 -1
  589. package/dist/commands/update.js.map +0 -1
  590. package/dist/core/codegraph.d.ts.map +0 -1
  591. package/dist/core/codegraph.js.map +0 -1
  592. package/dist/core/command-error.d.ts.map +0 -1
  593. package/dist/core/command-error.js.map +0 -1
  594. package/dist/core/detect.d.ts.map +0 -1
  595. package/dist/core/detect.js.map +0 -1
  596. package/dist/core/openspec.d.ts +0 -11
  597. package/dist/core/openspec.d.ts.map +0 -1
  598. package/dist/core/openspec.js.map +0 -1
  599. package/dist/core/platforms.d.ts.map +0 -1
  600. package/dist/core/platforms.js.map +0 -1
  601. package/dist/core/skills.d.ts +0 -58
  602. package/dist/core/skills.d.ts.map +0 -1
  603. package/dist/core/skills.js.map +0 -1
  604. package/dist/core/superpowers.d.ts.map +0 -1
  605. package/dist/core/superpowers.js.map +0 -1
  606. package/dist/core/types.d.ts +0 -2
  607. package/dist/core/types.d.ts.map +0 -1
  608. package/dist/core/uninstall.d.ts.map +0 -1
  609. package/dist/core/uninstall.js.map +0 -1
  610. package/dist/core/version.d.ts.map +0 -1
  611. package/dist/core/version.js.map +0 -1
  612. package/dist/utils/file-system.d.ts.map +0 -1
  613. package/dist/utils/file-system.js.map +0 -1
  614. /package/dist/{cli → app/cli}/index.d.ts +0 -0
  615. /package/dist/{commands → app/commands}/status.d.ts +0 -0
  616. /package/dist/{core → domains/bundle}/types.js +0 -0
  617. /package/dist/{utils → platform/fs}/file-system.d.ts +0 -0
  618. /package/dist/{utils → platform/fs}/file-system.js +0 -0
  619. /package/dist/{core → platform/install}/detect.d.ts +0 -0
  620. /package/dist/{core → platform/install}/platforms.d.ts +0 -0
  621. /package/dist/{core → platform/process}/command-error.d.ts +0 -0
  622. /package/dist/{core → platform/process}/command-error.js +0 -0
  623. /package/dist/{core → platform/version}/version.d.ts +0 -0
  624. /package/scripts/{postinstall.js → install/postinstall.js} +0 -0
@@ -0,0 +1,501 @@
1
+ import { createHash, randomUUID } from 'crypto';
2
+ import { promises as fs } from 'fs';
3
+ import path from 'path';
4
+ import { parse } from 'yaml';
5
+ import { compileBundleIr } from './compiler.js';
6
+ import { loadBundle } from './load.js';
7
+ import { readBundleAuthoringState, reconcileBundleAuthoringState, writeBundleAuthoringState, } from './state.js';
8
+ import { loadNormalizedHook } from './validate.js';
9
+ const REQUIRED_FACTORY_CONTROL_PLANE = [
10
+ 'SKILL.md',
11
+ 'reference/resolved-skills.json',
12
+ 'reference/workflow-protocol.json',
13
+ 'reference/decision-points.md',
14
+ 'reference/recovery.md',
15
+ 'reference/authoring-lanes.json',
16
+ 'reference/skill-review.md',
17
+ 'reference/composition-report.md',
18
+ 'reference/subagents/script-author.md',
19
+ 'agents/claude/comet-any-script-author.md',
20
+ 'scripts/comet-plan.mjs',
21
+ 'scripts/comet-check.mjs',
22
+ 'scripts/comet-hook-guard.mjs',
23
+ 'scripts/workflow-state.mjs',
24
+ 'scripts/workflow-guard.mjs',
25
+ 'scripts/workflow-handoff.mjs',
26
+ ];
27
+ const REQUIRED_FACTORY_ENGINE_CONTROL_PLANE = [
28
+ 'comet/skill.yaml',
29
+ 'comet/guardrails.yaml',
30
+ 'comet/checks.yaml',
31
+ 'comet/eval.yaml',
32
+ ];
33
+ const REQUIRED_FACTORY_CAPABILITIES = [
34
+ 'skills',
35
+ 'scripts',
36
+ 'rules',
37
+ 'hooks',
38
+ 'references',
39
+ 'agents',
40
+ ];
41
+ function assertObject(value, label) {
42
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
43
+ throw new Error(`${label} must be an object`);
44
+ }
45
+ }
46
+ function assertStringArray(value, label, allowEmpty = false) {
47
+ if (!Array.isArray(value) ||
48
+ value.some((item) => typeof item !== 'string') ||
49
+ (!allowEmpty && value.length === 0)) {
50
+ throw new Error(`${label} must be a non-empty string array`);
51
+ }
52
+ }
53
+ function assertRate(value, label) {
54
+ if (typeof value !== 'number' || !Number.isFinite(value) || value < 0 || value > 1) {
55
+ throw new Error(`${label} must be a number between 0 and 1`);
56
+ }
57
+ }
58
+ function assertHash(value, label) {
59
+ if (typeof value !== 'string' || !/^[a-f0-9]{64}$/u.test(value)) {
60
+ throw new Error(`${label} must be a SHA-256 hash`);
61
+ }
62
+ }
63
+ function assertRateRecord(value, label) {
64
+ assertObject(value, label);
65
+ for (const [key, rate] of Object.entries(value)) {
66
+ if (!key)
67
+ throw new Error(`${label} keys must be non-empty strings`);
68
+ assertRate(rate, `${label}.${key}`);
69
+ }
70
+ }
71
+ function parseRepositoryEvalResult(value) {
72
+ assertObject(value, 'Eval result');
73
+ if (value.schemaVersion !== 2)
74
+ throw new Error('Eval result schemaVersion must be 2');
75
+ if (value.provider !== 'comet-eval') {
76
+ throw new Error('Eval result provider is unsupported');
77
+ }
78
+ if (!['quick', 'full'].includes(String(value.level))) {
79
+ throw new Error('Eval result level must be quick or full');
80
+ }
81
+ assertHash(value.draftHash, 'Eval result draftHash');
82
+ assertHash(value.evalManifestHash, 'Eval result evalManifestHash');
83
+ assertStringArray(value.tasks, 'Eval result tasks');
84
+ assertStringArray(value.treatments, 'Eval result treatments');
85
+ assertRateRecord(value.passAtK, 'Eval result passAtK');
86
+ assertRateRecord(value.weightedScore, 'Eval result weightedScore');
87
+ assertRateRecord(value.instabilityGap, 'Eval result instabilityGap');
88
+ assertStringArray(value.failures, 'Eval result failures', true);
89
+ assertStringArray(value.reports, 'Eval result reports', true);
90
+ if (typeof value.passed !== 'boolean') {
91
+ throw new Error('Eval result passed must be a boolean');
92
+ }
93
+ if (typeof value.summary !== 'string' || !value.summary.trim()) {
94
+ throw new Error('Eval result summary must be a non-empty string');
95
+ }
96
+ return value;
97
+ }
98
+ function parseEvalResult(value) {
99
+ assertObject(value, 'Eval result');
100
+ if (value.schemaVersion === 2)
101
+ return parseRepositoryEvalResult(value);
102
+ throw new Error('Eval result schemaVersion must be 2');
103
+ }
104
+ export async function validateStableFactoryControlPlane(state) {
105
+ const generated = state.factory?.generatedSkillPackage;
106
+ if (!generated) {
107
+ return {
108
+ passed: true,
109
+ evidence: ['not a generated factory package'],
110
+ errors: [],
111
+ };
112
+ }
113
+ const actualPackageRoot = path.resolve(generated.packageRoot);
114
+ const expectedPackageRoot = path.resolve(state.draftPath, 'skills', generated.entrySkill);
115
+ if (actualPackageRoot !== expectedPackageRoot) {
116
+ return {
117
+ passed: false,
118
+ evidence: [],
119
+ errors: [
120
+ `generated packageRoot mismatch: expected ${expectedPackageRoot}, got ${actualPackageRoot}`,
121
+ ],
122
+ };
123
+ }
124
+ const evidence = [];
125
+ const errors = [];
126
+ let manifest = null;
127
+ try {
128
+ const bundle = await loadBundle(state.draftPath);
129
+ manifest = bundle.manifest;
130
+ evidence.push('bundle.yaml');
131
+ await compileBundleIr(bundle, { locale: state.defaultLocale });
132
+ }
133
+ catch (error) {
134
+ errors.push(`bundle.yaml invalid: ${error instanceof Error ? error.message : String(error)}`);
135
+ }
136
+ const required = [
137
+ ...REQUIRED_FACTORY_CONTROL_PLANE,
138
+ ...(state.factory?.engineMode === 'none' ? [] : REQUIRED_FACTORY_ENGINE_CONTROL_PLANE),
139
+ ];
140
+ for (const relative of required) {
141
+ const target = path.join(generated.packageRoot, relative);
142
+ try {
143
+ const stats = await fs.stat(target);
144
+ if (stats.isFile()) {
145
+ evidence.push(relative);
146
+ }
147
+ else {
148
+ errors.push(`missing ${relative}`);
149
+ }
150
+ }
151
+ catch (error) {
152
+ if (error.code !== 'ENOENT')
153
+ throw error;
154
+ errors.push(`missing ${relative}`);
155
+ }
156
+ }
157
+ if (manifest) {
158
+ await validateFactoryManifestResources({
159
+ draftPath: state.draftPath,
160
+ entrySkill: generated.entrySkill,
161
+ manifest,
162
+ evidence,
163
+ errors,
164
+ });
165
+ }
166
+ await validateGeneratedScriptContracts(generated.packageRoot, state.factory?.engineMode ?? 'deterministic', evidence, errors);
167
+ return {
168
+ passed: errors.length === 0,
169
+ evidence,
170
+ errors,
171
+ };
172
+ }
173
+ function hasCapability(manifest, capability) {
174
+ return manifest.platforms.requires.includes(capability);
175
+ }
176
+ function resourceSet(items) {
177
+ return new Map(items.map((item) => [item.id, item]));
178
+ }
179
+ async function validateFactoryManifestResources(options) {
180
+ const { draftPath, entrySkill, manifest, evidence, errors } = options;
181
+ const missingCapabilities = REQUIRED_FACTORY_CAPABILITIES.filter((capability) => !hasCapability(manifest, capability));
182
+ if (missingCapabilities.length > 0) {
183
+ errors.push(`required capabilities missing: ${missingCapabilities.join(', ')}`);
184
+ }
185
+ else {
186
+ evidence.push(`required capabilities: ${REQUIRED_FACTORY_CAPABILITIES.join(', ')}`);
187
+ }
188
+ const rules = resourceSet(manifest.resources.rules);
189
+ const hooks = resourceSet(manifest.resources.hooks);
190
+ const scripts = resourceSet(manifest.resources.scripts);
191
+ const scriptIds = new Set(manifest.resources.scripts.map((script) => script.id));
192
+ const references = new Set(manifest.resources.references);
193
+ const agents = resourceSet(manifest.resources.agents);
194
+ const expectedRules = [
195
+ {
196
+ id: `${entrySkill}-orchestration`,
197
+ path: `rules/${entrySkill}-orchestration.md`,
198
+ },
199
+ ];
200
+ const expectedHooks = [
201
+ {
202
+ id: `${entrySkill}-before-write-guard`,
203
+ path: `hooks/${entrySkill}-before-write-guard.yaml`,
204
+ event: 'before_write',
205
+ },
206
+ {
207
+ id: `${entrySkill}-before-tool-guard`,
208
+ path: `hooks/${entrySkill}-before-tool-guard.yaml`,
209
+ event: 'before_tool',
210
+ },
211
+ ];
212
+ const expectedScripts = [
213
+ {
214
+ id: 'comet-plan',
215
+ path: `skills/${entrySkill}/scripts/comet-plan.mjs`,
216
+ },
217
+ {
218
+ id: 'comet-check',
219
+ path: `skills/${entrySkill}/scripts/comet-check.mjs`,
220
+ },
221
+ {
222
+ id: 'comet-hook-guard',
223
+ path: `skills/${entrySkill}/scripts/comet-hook-guard.mjs`,
224
+ },
225
+ {
226
+ id: 'workflow-state',
227
+ path: `skills/${entrySkill}/scripts/workflow-state.mjs`,
228
+ },
229
+ {
230
+ id: 'workflow-guard',
231
+ path: `skills/${entrySkill}/scripts/workflow-guard.mjs`,
232
+ },
233
+ {
234
+ id: 'workflow-handoff',
235
+ path: `skills/${entrySkill}/scripts/workflow-handoff.mjs`,
236
+ },
237
+ ];
238
+ const expectedReferences = [
239
+ `skills/${entrySkill}/reference/resolved-skills.json`,
240
+ `skills/${entrySkill}/reference/workflow-protocol.json`,
241
+ `skills/${entrySkill}/reference/decision-points.md`,
242
+ `skills/${entrySkill}/reference/recovery.md`,
243
+ `skills/${entrySkill}/reference/authoring-lanes.json`,
244
+ `skills/${entrySkill}/reference/skill-review.md`,
245
+ `skills/${entrySkill}/reference/composition-report.md`,
246
+ `skills/${entrySkill}/reference/subagents/script-author.md`,
247
+ ];
248
+ const expectedAgents = [
249
+ {
250
+ id: 'comet-any-script-author',
251
+ path: `skills/${entrySkill}/agents/claude/comet-any-script-author.md`,
252
+ platform: 'claude',
253
+ },
254
+ ];
255
+ for (const rule of expectedRules) {
256
+ const actual = rules.get(rule.id);
257
+ if (!actual || actual.path !== rule.path || !actual.required) {
258
+ errors.push(`manifest missing required rule ${rule.id} at ${rule.path}`);
259
+ }
260
+ else {
261
+ evidence.push(`rule:${rule.id}`);
262
+ }
263
+ }
264
+ for (const script of expectedScripts) {
265
+ const actual = scripts.get(script.id);
266
+ if (!actual || actual.path !== script.path) {
267
+ errors.push(`manifest missing required script ${script.id} at ${script.path}`);
268
+ }
269
+ else {
270
+ evidence.push(`script:${script.id}`);
271
+ }
272
+ }
273
+ for (const reference of expectedReferences) {
274
+ if (!references.has(reference)) {
275
+ errors.push(`manifest missing required reference ${reference}`);
276
+ }
277
+ else {
278
+ evidence.push(`reference:${reference}`);
279
+ }
280
+ }
281
+ for (const agent of expectedAgents) {
282
+ const actual = agents.get(agent.id);
283
+ if (!actual ||
284
+ actual.path !== agent.path ||
285
+ actual.platform !== agent.platform ||
286
+ !actual.required) {
287
+ errors.push(`manifest missing required agent ${agent.id} at ${agent.path}`);
288
+ }
289
+ else {
290
+ evidence.push(`agent:${agent.id}`);
291
+ }
292
+ }
293
+ for (const hook of expectedHooks) {
294
+ const actual = hooks.get(hook.id);
295
+ if (!actual || actual.path !== hook.path) {
296
+ errors.push(`manifest missing required hook ${hook.id} at ${hook.path}`);
297
+ continue;
298
+ }
299
+ try {
300
+ const normalized = await loadNormalizedHook({ root: draftPath, manifest }, actual, manifest.resources.hooks.findIndex((item) => item.id === actual.id), path.join(draftPath, actual.path));
301
+ if (normalized.event !== hook.event) {
302
+ errors.push(`hook ${hook.id} event must be ${hook.event}`);
303
+ }
304
+ if (normalized.failure !== 'block') {
305
+ errors.push(`hook ${hook.id} failure must be block`);
306
+ }
307
+ if (!scriptIds.has(normalized.script)) {
308
+ errors.push(`hook ${hook.id} references undeclared script ${normalized.script}`);
309
+ }
310
+ if (normalized.script !== 'comet-hook-guard') {
311
+ errors.push(`hook ${hook.id} must reference comet-hook-guard`);
312
+ }
313
+ if (hook.event === 'before_write' &&
314
+ normalized.matcher !== undefined &&
315
+ normalized.matcher !== 'Write|Edit') {
316
+ errors.push(`hook ${hook.id} matcher must cover Write|Edit`);
317
+ }
318
+ evidence.push(`hook:${hook.id}:${hook.event}`);
319
+ }
320
+ catch (error) {
321
+ errors.push(`hook ${hook.id} invalid: ${error instanceof Error ? error.message : String(error)}`);
322
+ }
323
+ }
324
+ }
325
+ async function validateGeneratedScriptContracts(packageRoot, engineMode, evidence, errors) {
326
+ const checkScriptPath = path.join(packageRoot, 'scripts', 'comet-check.mjs');
327
+ let source;
328
+ try {
329
+ source = await fs.readFile(checkScriptPath, 'utf8');
330
+ }
331
+ catch (error) {
332
+ if (error.code === 'ENOENT')
333
+ return;
334
+ throw error;
335
+ }
336
+ const requiredFragments = [
337
+ 'const command = process.argv[2] ??',
338
+ "command !== 'verify'",
339
+ 'control-plane-ok',
340
+ 'scripts/comet-hook-guard.mjs',
341
+ ...(engineMode === 'none' ? [] : ['comet/skill.yaml']),
342
+ ];
343
+ const workflowContractFragments = [
344
+ 'workflow-protocol.json must use the current schema with nodes',
345
+ 'workflow-contract-ok',
346
+ 'protocol.nodes',
347
+ ];
348
+ if (workflowContractFragments.every((fragment) => source.includes(fragment))) {
349
+ evidence.push('script-contract:comet-check workflow protocol verify');
350
+ return;
351
+ }
352
+ const missing = requiredFragments.filter((fragment) => !source.includes(fragment));
353
+ if (missing.length > 0) {
354
+ errors.push(`scripts/comet-check.mjs verify contract missing: ${missing.join(', ')}`);
355
+ }
356
+ else {
357
+ evidence.push('script-contract:comet-check verify');
358
+ }
359
+ }
360
+ function evalResultHash(result) {
361
+ return result.draftHash;
362
+ }
363
+ function evalEvidencePathSegments(result) {
364
+ return [result.draftHash, result.evalManifestHash];
365
+ }
366
+ function sha256(content) {
367
+ return createHash('sha256').update(content).digest('hex');
368
+ }
369
+ async function readGeneratedEvalManifestIdentity(state) {
370
+ const evalManifestPath = state.factory?.generatedSkillPackage?.evalManifestPath;
371
+ if (!evalManifestPath)
372
+ return null;
373
+ const source = await fs.readFile(evalManifestPath, 'utf8');
374
+ const manifest = parse(source);
375
+ assertObject(manifest, 'Generated eval manifest');
376
+ return {
377
+ evalManifestHash: sha256(source),
378
+ };
379
+ }
380
+ async function resultMatchesCurrentDraft(state, result) {
381
+ if (!state.currentHash)
382
+ return false;
383
+ const generatedManifest = await readGeneratedEvalManifestIdentity(state);
384
+ if (!generatedManifest) {
385
+ return result.draftHash === state.currentHash;
386
+ }
387
+ return (result.draftHash === state.currentHash &&
388
+ result.evalManifestHash === generatedManifest.evalManifestHash);
389
+ }
390
+ async function writeEvidence(projectRoot, name, result) {
391
+ const directory = path.resolve(projectRoot, '.comet', 'bundle-evals', name, ...evalEvidencePathSegments(result));
392
+ const destination = path.join(directory, 'result.json');
393
+ const temporary = path.join(directory, `.result.${randomUUID()}.tmp`);
394
+ await fs.mkdir(directory, { recursive: true });
395
+ try {
396
+ await fs.writeFile(temporary, JSON.stringify(result, null, 2) + '\n', {
397
+ encoding: 'utf8',
398
+ flag: 'wx',
399
+ });
400
+ await fs.rename(temporary, destination);
401
+ }
402
+ finally {
403
+ await fs.rm(temporary, { force: true });
404
+ }
405
+ return destination;
406
+ }
407
+ function stateWithEval(state, result, resultPath) {
408
+ const gatesPassed = result.passed && result.failures.length === 0;
409
+ const updated = {
410
+ ...state,
411
+ status: gatesPassed ? 'eval-passed' : 'draft',
412
+ eval: {
413
+ level: result.level,
414
+ hash: evalResultHash(result),
415
+ resultPath,
416
+ passed: gatesPassed,
417
+ },
418
+ };
419
+ delete updated.review;
420
+ delete updated.ready;
421
+ delete updated.conflict;
422
+ return updated;
423
+ }
424
+ function resultWouldPassEvalGates(result) {
425
+ return result.passed && result.failures.length === 0;
426
+ }
427
+ export function planBundleEval(ir, level) {
428
+ const entries = ir.skills.filter((skill) => skill.visibility === 'entry').length;
429
+ const quickComponents = [
430
+ 'static',
431
+ 'entry-smoke',
432
+ 'baseline',
433
+ 'assertion-grading',
434
+ 'platform-compile',
435
+ ];
436
+ const quickRuns = 4 + entries * 2;
437
+ if (level === 'quick') {
438
+ return {
439
+ level,
440
+ components: quickComponents,
441
+ estimatedRuns: quickRuns,
442
+ tokenWorkload: entries > 2 ? 'medium' : 'low',
443
+ explanation: `Descriptive estimate for ${entries} entry Skill(s); actual token use depends on the provider and prompts.`,
444
+ };
445
+ }
446
+ return {
447
+ level,
448
+ components: [
449
+ ...quickComponents,
450
+ 'trigger-accuracy',
451
+ 'routing-overlap',
452
+ 'behavior-effects',
453
+ 'multi-platform',
454
+ 'failure-analysis',
455
+ 'blind-comparison',
456
+ 'optimization',
457
+ ],
458
+ estimatedRuns: quickRuns + 6 + entries * 3,
459
+ tokenWorkload: 'high',
460
+ explanation: `Descriptive estimate for a multi-run full evaluation of ${entries} entry Skill(s); it is not a token commitment.`,
461
+ };
462
+ }
463
+ export async function recordBundleEval(projectRoot, name, resultFile) {
464
+ const result = parseEvalResult(JSON.parse(await fs.readFile(resultFile, 'utf8')));
465
+ let state = await reconcileBundleAuthoringState(projectRoot, name);
466
+ if (!(await resultMatchesCurrentDraft(state, result))) {
467
+ await writeEvidence(projectRoot, name, result);
468
+ return state;
469
+ }
470
+ const controlPlane = await validateStableFactoryControlPlane(state);
471
+ if (!controlPlane.passed) {
472
+ const resultPath = await writeEvidence(projectRoot, name, result);
473
+ if (resultWouldPassEvalGates(result)) {
474
+ throw new Error(`Bundle control plane is incomplete: ${controlPlane.errors.join(', ')}`);
475
+ }
476
+ const updated = stateWithEval(state, result, resultPath);
477
+ await writeBundleAuthoringState(projectRoot, updated);
478
+ return updated;
479
+ }
480
+ const bundle = await loadBundle(state.draftPath);
481
+ const ir = await compileBundleIr(bundle, { locale: state.defaultLocale });
482
+ if (ir.bundle.hash !== state.currentHash) {
483
+ state = await reconcileBundleAuthoringState(projectRoot, name);
484
+ await writeEvidence(projectRoot, name, result);
485
+ return state;
486
+ }
487
+ const resultPath = await writeEvidence(projectRoot, name, result);
488
+ const updated = stateWithEval(state, result, resultPath);
489
+ await writeBundleAuthoringState(projectRoot, updated);
490
+ return updated;
491
+ }
492
+ export async function readBundleEvalResult(resultPath) {
493
+ return parseEvalResult(JSON.parse(await fs.readFile(resultPath, 'utf8')));
494
+ }
495
+ export async function readRecordedBundleEval(projectRoot, name) {
496
+ const state = await readBundleAuthoringState(projectRoot, name);
497
+ if (!state.eval)
498
+ return null;
499
+ return readBundleEvalResult(state.eval.resultPath);
500
+ }
501
+ //# sourceMappingURL=eval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eval.js","sourceRoot":"","sources":["../../../domains/bundle/eval.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { BundleFactoryCallChainItem, BundleFactoryComposition, BundleFactoryResolvedSkill } from './types.js';
2
+ export interface ComposeBundleFactoryPlanInput {
3
+ entrySkills?: string[];
4
+ preferredSkills: string[];
5
+ resolvedSkills: BundleFactoryResolvedSkill[];
6
+ }
7
+ export interface ComposeBundleFactoryPlanResult {
8
+ callChain: BundleFactoryCallChainItem[];
9
+ composition: BundleFactoryComposition;
10
+ }
11
+ export declare function composeBundleFactoryPlan(input: ComposeBundleFactoryPlanInput): Promise<ComposeBundleFactoryPlanResult>;
12
+ //# sourceMappingURL=factory-compose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory-compose.d.ts","sourceRoot":"","sources":["../../../domains/bundle/factory-compose.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,0BAA0B,EAC1B,wBAAwB,EAIxB,0BAA0B,EAC3B,MAAM,YAAY,CAAC;AAepB,MAAM,WAAW,6BAA6B;IAC5C,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,0BAA0B,EAAE,CAAC;CAC9C;AAED,MAAM,WAAW,8BAA8B;IAC7C,SAAS,EAAE,0BAA0B,EAAE,CAAC;IACxC,WAAW,EAAE,wBAAwB,CAAC;CACvC;AAsHD,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,6BAA6B,GACnC,OAAO,CAAC,8BAA8B,CAAC,CAwNzC"}