@cleocode/core 2026.9.7 → 2026.9.9

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 (565) hide show
  1. package/dist/audit/reconstruct.d.ts +13 -43
  2. package/dist/audit/reconstruct.d.ts.map +1 -1
  3. package/dist/audit/reconstruct.js +295 -290
  4. package/dist/audit/reconstruct.js.map +1 -1
  5. package/dist/bootstrap.d.ts.map +1 -1
  6. package/dist/bootstrap.js +8 -2
  7. package/dist/bootstrap.js.map +1 -1
  8. package/dist/dispatch/mutate-projection.d.ts.map +1 -1
  9. package/dist/dispatch/mutate-projection.js +12 -0
  10. package/dist/dispatch/mutate-projection.js.map +1 -1
  11. package/dist/dispatch/mvi-projection.d.ts +29 -6
  12. package/dist/dispatch/mvi-projection.d.ts.map +1 -1
  13. package/dist/dispatch/mvi-projection.js +109 -139
  14. package/dist/dispatch/mvi-projection.js.map +1 -1
  15. package/dist/docs/docs-read-model.d.ts +3 -2
  16. package/dist/docs/docs-read-model.d.ts.map +1 -1
  17. package/dist/docs/docs-read-model.js +4 -3
  18. package/dist/docs/docs-read-model.js.map +1 -1
  19. package/dist/docs/export-document.js +5100 -2297
  20. package/dist/docs/export-document.js.map +3 -3
  21. package/dist/docs/projection.d.ts +67 -0
  22. package/dist/docs/projection.d.ts.map +1 -0
  23. package/dist/docs/projection.js +370 -0
  24. package/dist/docs/projection.js.map +1 -0
  25. package/dist/doctor/acceptance-drift.d.ts +6 -2
  26. package/dist/doctor/acceptance-drift.d.ts.map +1 -1
  27. package/dist/doctor/acceptance-drift.js +43 -5
  28. package/dist/doctor/acceptance-drift.js.map +1 -1
  29. package/dist/doctor/knowledge-summary.d.ts +41 -0
  30. package/dist/doctor/knowledge-summary.d.ts.map +1 -0
  31. package/dist/doctor/knowledge-summary.js +81 -0
  32. package/dist/doctor/knowledge-summary.js.map +1 -0
  33. package/dist/doctor/knowledge.d.ts +192 -0
  34. package/dist/doctor/knowledge.d.ts.map +1 -0
  35. package/dist/doctor/knowledge.js +1864 -0
  36. package/dist/doctor/knowledge.js.map +1 -0
  37. package/dist/git/work-tree.d.ts +64 -0
  38. package/dist/git/work-tree.d.ts.map +1 -0
  39. package/dist/git/work-tree.js +111 -0
  40. package/dist/git/work-tree.js.map +1 -0
  41. package/dist/hooks/handlers/task-hooks.d.ts +8 -5
  42. package/dist/hooks/handlers/task-hooks.d.ts.map +1 -1
  43. package/dist/hooks/handlers/task-hooks.js +15 -60
  44. package/dist/hooks/handlers/task-hooks.js.map +1 -1
  45. package/dist/identity/cleo-identity.d.ts +13 -0
  46. package/dist/identity/cleo-identity.d.ts.map +1 -1
  47. package/dist/identity/cleo-identity.js +20 -6
  48. package/dist/identity/cleo-identity.js.map +1 -1
  49. package/dist/injection.d.ts.map +1 -1
  50. package/dist/injection.js +29 -13
  51. package/dist/injection.js.map +1 -1
  52. package/dist/internal.d.ts +2 -0
  53. package/dist/internal.d.ts.map +1 -1
  54. package/dist/internal.js +2 -0
  55. package/dist/internal.js.map +1 -1
  56. package/dist/lifecycle/verification/satisfies-validator.d.ts.map +1 -1
  57. package/dist/lifecycle/verification/satisfies-validator.js +124 -120
  58. package/dist/lifecycle/verification/satisfies-validator.js.map +1 -1
  59. package/dist/llm/plugin-facade.js +4018 -1726
  60. package/dist/llm/plugin-facade.js.map +3 -3
  61. package/dist/memory/brain-backfill.d.ts +27 -12
  62. package/dist/memory/brain-backfill.d.ts.map +1 -1
  63. package/dist/memory/brain-backfill.js +325 -134
  64. package/dist/memory/brain-backfill.js.map +1 -1
  65. package/dist/memory/brain-doctor.d.ts +21 -0
  66. package/dist/memory/brain-doctor.d.ts.map +1 -1
  67. package/dist/memory/brain-doctor.js +111 -53
  68. package/dist/memory/brain-doctor.js.map +1 -1
  69. package/dist/memory/brain-links.d.ts.map +1 -1
  70. package/dist/memory/brain-links.js +31 -4
  71. package/dist/memory/brain-links.js.map +1 -1
  72. package/dist/memory/brain-reasoning.d.ts.map +1 -1
  73. package/dist/memory/brain-reasoning.js +28 -2
  74. package/dist/memory/brain-reasoning.js.map +1 -1
  75. package/dist/memory/brain-reconciler.d.ts +14 -19
  76. package/dist/memory/brain-reconciler.d.ts.map +1 -1
  77. package/dist/memory/brain-reconciler.js +70 -97
  78. package/dist/memory/brain-reconciler.js.map +1 -1
  79. package/dist/memory/brain-search.d.ts +2 -0
  80. package/dist/memory/brain-search.d.ts.map +1 -1
  81. package/dist/memory/brain-search.js +59 -29
  82. package/dist/memory/brain-search.js.map +1 -1
  83. package/dist/memory/brain-similarity.d.ts.map +1 -1
  84. package/dist/memory/brain-similarity.js +5 -4
  85. package/dist/memory/brain-similarity.js.map +1 -1
  86. package/dist/memory/brain-stub-prune.d.ts +31 -9
  87. package/dist/memory/brain-stub-prune.d.ts.map +1 -1
  88. package/dist/memory/brain-stub-prune.js +65 -18
  89. package/dist/memory/brain-stub-prune.js.map +1 -1
  90. package/dist/memory/brain-writer-handlers.d.ts +10 -1
  91. package/dist/memory/brain-writer-handlers.d.ts.map +1 -1
  92. package/dist/memory/brain-writer-handlers.js +23 -3
  93. package/dist/memory/brain-writer-handlers.js.map +1 -1
  94. package/dist/memory/brain-writer-thread.d.ts +31 -1
  95. package/dist/memory/brain-writer-thread.d.ts.map +1 -1
  96. package/dist/memory/brain-writer-thread.js +166 -24
  97. package/dist/memory/brain-writer-thread.js.map +1 -1
  98. package/dist/memory/brain-writer-worker.js +8 -1
  99. package/dist/memory/brain-writer-worker.js.map +1 -1
  100. package/dist/memory/decision-cross-link.d.ts +39 -0
  101. package/dist/memory/decision-cross-link.d.ts.map +1 -1
  102. package/dist/memory/decision-cross-link.js +316 -0
  103. package/dist/memory/decision-cross-link.js.map +1 -1
  104. package/dist/memory/decisions.d.ts +4 -1
  105. package/dist/memory/decisions.d.ts.map +1 -1
  106. package/dist/memory/decisions.js +7 -24
  107. package/dist/memory/decisions.js.map +1 -1
  108. package/dist/memory/dispatch-trace.d.ts +12 -5
  109. package/dist/memory/dispatch-trace.d.ts.map +1 -1
  110. package/dist/memory/dispatch-trace.js +17 -7
  111. package/dist/memory/dispatch-trace.js.map +1 -1
  112. package/dist/memory/eligibility.d.ts +51 -0
  113. package/dist/memory/eligibility.d.ts.map +1 -0
  114. package/dist/memory/eligibility.js +77 -0
  115. package/dist/memory/eligibility.js.map +1 -0
  116. package/dist/memory/engine-compat.d.ts +2 -0
  117. package/dist/memory/engine-compat.d.ts.map +1 -1
  118. package/dist/memory/engine-compat.js +10 -0
  119. package/dist/memory/engine-compat.js.map +1 -1
  120. package/dist/memory/extraction-gate.d.ts +21 -7
  121. package/dist/memory/extraction-gate.d.ts.map +1 -1
  122. package/dist/memory/extraction-gate.js +178 -216
  123. package/dist/memory/extraction-gate.js.map +1 -1
  124. package/dist/memory/graph-auto-populate.d.ts +38 -5
  125. package/dist/memory/graph-auto-populate.d.ts.map +1 -1
  126. package/dist/memory/graph-auto-populate.js +182 -60
  127. package/dist/memory/graph-auto-populate.js.map +1 -1
  128. package/dist/memory/graph-memory-bridge.d.ts +14 -1
  129. package/dist/memory/graph-memory-bridge.d.ts.map +1 -1
  130. package/dist/memory/graph-memory-bridge.js +66 -28
  131. package/dist/memory/graph-memory-bridge.js.map +1 -1
  132. package/dist/memory/index.d.ts +1 -19
  133. package/dist/memory/index.d.ts.map +1 -1
  134. package/dist/memory/index.js +1 -50
  135. package/dist/memory/index.js.map +1 -1
  136. package/dist/memory/learnings.d.ts.map +1 -1
  137. package/dist/memory/learnings.js +2 -23
  138. package/dist/memory/learnings.js.map +1 -1
  139. package/dist/memory/manifest-filter.d.ts +21 -0
  140. package/dist/memory/manifest-filter.d.ts.map +1 -0
  141. package/dist/memory/manifest-filter.js +51 -0
  142. package/dist/memory/manifest-filter.js.map +1 -0
  143. package/dist/memory/manifest-ingestion.d.ts +28 -30
  144. package/dist/memory/manifest-ingestion.d.ts.map +1 -1
  145. package/dist/memory/manifest-ingestion.js +104 -235
  146. package/dist/memory/manifest-ingestion.js.map +1 -1
  147. package/dist/memory/observer-reflector.d.ts +2 -0
  148. package/dist/memory/observer-reflector.d.ts.map +1 -1
  149. package/dist/memory/observer-reflector.js +6 -49
  150. package/dist/memory/observer-reflector.js.map +1 -1
  151. package/dist/memory/patterns.d.ts +10 -0
  152. package/dist/memory/patterns.d.ts.map +1 -1
  153. package/dist/memory/patterns.js +25 -33
  154. package/dist/memory/patterns.js.map +1 -1
  155. package/dist/memory/pipeline-manifest-sqlite.d.ts +72 -9
  156. package/dist/memory/pipeline-manifest-sqlite.d.ts.map +1 -1
  157. package/dist/memory/pipeline-manifest-sqlite.js +508 -412
  158. package/dist/memory/pipeline-manifest-sqlite.js.map +1 -1
  159. package/dist/memory/retrieval/build-retrieval-bundle.d.ts.map +1 -1
  160. package/dist/memory/retrieval/build-retrieval-bundle.js +16 -15
  161. package/dist/memory/retrieval/build-retrieval-bundle.js.map +1 -1
  162. package/dist/memory/retrieval/fetch.d.ts +7 -0
  163. package/dist/memory/retrieval/fetch.d.ts.map +1 -1
  164. package/dist/memory/retrieval/fetch.js +14 -11
  165. package/dist/memory/retrieval/fetch.js.map +1 -1
  166. package/dist/memory/retrieval/observe.d.ts +7 -1
  167. package/dist/memory/retrieval/observe.d.ts.map +1 -1
  168. package/dist/memory/retrieval/observe.js +58 -4
  169. package/dist/memory/retrieval/observe.js.map +1 -1
  170. package/dist/memory/retrieval/search.d.ts +14 -1
  171. package/dist/memory/retrieval/search.d.ts.map +1 -1
  172. package/dist/memory/retrieval/search.js +133 -69
  173. package/dist/memory/retrieval/search.js.map +1 -1
  174. package/dist/memory/retrieval/telemetry.d.ts +31 -0
  175. package/dist/memory/retrieval/telemetry.d.ts.map +1 -0
  176. package/dist/memory/retrieval/telemetry.js +53 -0
  177. package/dist/memory/retrieval/telemetry.js.map +1 -0
  178. package/dist/nexus/analyze-orchestrator.d.ts +41 -9
  179. package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
  180. package/dist/nexus/analyze-orchestrator.js +257 -58
  181. package/dist/nexus/analyze-orchestrator.js.map +1 -1
  182. package/dist/nexus/api-contracts.d.ts +2 -6
  183. package/dist/nexus/api-contracts.d.ts.map +1 -1
  184. package/dist/nexus/api-contracts.js +11 -2
  185. package/dist/nexus/api-contracts.js.map +1 -1
  186. package/dist/nexus/context.d.ts.map +1 -1
  187. package/dist/nexus/context.js +14 -37
  188. package/dist/nexus/context.js.map +1 -1
  189. package/dist/nexus/diff.d.ts.map +1 -1
  190. package/dist/nexus/diff.js +2 -1
  191. package/dist/nexus/diff.js.map +1 -1
  192. package/dist/nexus/identity.d.ts +29 -3
  193. package/dist/nexus/identity.d.ts.map +1 -1
  194. package/dist/nexus/identity.js +63 -12
  195. package/dist/nexus/identity.js.map +1 -1
  196. package/dist/nexus/impact.d.ts +21 -19
  197. package/dist/nexus/impact.d.ts.map +1 -1
  198. package/dist/nexus/impact.js +96 -192
  199. package/dist/nexus/impact.js.map +1 -1
  200. package/dist/nexus/knowledge.d.ts +80 -0
  201. package/dist/nexus/knowledge.d.ts.map +1 -0
  202. package/dist/nexus/knowledge.js +786 -0
  203. package/dist/nexus/knowledge.js.map +1 -0
  204. package/dist/nexus/living-brain.d.ts +8 -5
  205. package/dist/nexus/living-brain.d.ts.map +1 -1
  206. package/dist/nexus/living-brain.js +252 -188
  207. package/dist/nexus/living-brain.js.map +1 -1
  208. package/dist/nexus/registry.d.ts +11 -2
  209. package/dist/nexus/registry.d.ts.map +1 -1
  210. package/dist/nexus/registry.js +144 -128
  211. package/dist/nexus/registry.js.map +1 -1
  212. package/dist/nexus/source-roots.d.ts +16 -0
  213. package/dist/nexus/source-roots.d.ts.map +1 -0
  214. package/dist/nexus/source-roots.js +174 -0
  215. package/dist/nexus/source-roots.js.map +1 -0
  216. package/dist/nexus/task-evidence.d.ts +22 -0
  217. package/dist/nexus/task-evidence.d.ts.map +1 -0
  218. package/dist/nexus/task-evidence.js +210 -0
  219. package/dist/nexus/task-evidence.js.map +1 -0
  220. package/dist/nexus/tasks-bridge.d.ts +14 -7
  221. package/dist/nexus/tasks-bridge.d.ts.map +1 -1
  222. package/dist/nexus/tasks-bridge.js +81 -40
  223. package/dist/nexus/tasks-bridge.js.map +1 -1
  224. package/dist/orchestrate/lifecycle-ops.d.ts.map +1 -1
  225. package/dist/orchestrate/lifecycle-ops.js +170 -120
  226. package/dist/orchestrate/lifecycle-ops.js.map +1 -1
  227. package/dist/orchestrate/query-ops.d.ts +6 -7
  228. package/dist/orchestrate/query-ops.d.ts.map +1 -1
  229. package/dist/orchestrate/query-ops.js +509 -532
  230. package/dist/orchestrate/query-ops.js.map +1 -1
  231. package/dist/orchestration/bootstrap.d.ts +15 -1
  232. package/dist/orchestration/bootstrap.d.ts.map +1 -1
  233. package/dist/orchestration/bootstrap.js +21 -10
  234. package/dist/orchestration/bootstrap.js.map +1 -1
  235. package/dist/orchestration/index.d.ts +35 -3
  236. package/dist/orchestration/index.d.ts.map +1 -1
  237. package/dist/orchestration/index.js +64 -35
  238. package/dist/orchestration/index.js.map +1 -1
  239. package/dist/orchestration/lead-rollup.d.ts +24 -1
  240. package/dist/orchestration/lead-rollup.d.ts.map +1 -1
  241. package/dist/orchestration/lead-rollup.js +31 -11
  242. package/dist/orchestration/lead-rollup.js.map +1 -1
  243. package/dist/orchestration/spawn-prompt.d.ts.map +1 -1
  244. package/dist/orchestration/spawn-prompt.js +16 -41
  245. package/dist/orchestration/spawn-prompt.js.map +1 -1
  246. package/dist/orchestration/unblock.d.ts +15 -1
  247. package/dist/orchestration/unblock.d.ts.map +1 -1
  248. package/dist/orchestration/unblock.js +23 -12
  249. package/dist/orchestration/unblock.js.map +1 -1
  250. package/dist/orchestration/validate-spawn.d.ts.map +1 -1
  251. package/dist/orchestration/validate-spawn.js +3 -3
  252. package/dist/orchestration/validate-spawn.js.map +1 -1
  253. package/dist/orchestration/waves.d.ts +29 -13
  254. package/dist/orchestration/waves.d.ts.map +1 -1
  255. package/dist/orchestration/waves.js +43 -55
  256. package/dist/orchestration/waves.js.map +1 -1
  257. package/dist/paths.d.ts +17 -163
  258. package/dist/paths.d.ts.map +1 -1
  259. package/dist/paths.js +145 -496
  260. package/dist/paths.js.map +1 -1
  261. package/dist/project-info.d.ts +2 -11
  262. package/dist/project-info.d.ts.map +1 -1
  263. package/dist/project-info.js +3 -31
  264. package/dist/project-info.js.map +1 -1
  265. package/dist/project-scope.d.ts +239 -0
  266. package/dist/project-scope.d.ts.map +1 -0
  267. package/dist/project-scope.js +473 -0
  268. package/dist/project-scope.js.map +1 -0
  269. package/dist/release/pr-evidence.d.ts +16 -3
  270. package/dist/release/pr-evidence.d.ts.map +1 -1
  271. package/dist/release/pr-evidence.js +53 -7
  272. package/dist/release/pr-evidence.js.map +1 -1
  273. package/dist/render/nexus/graph/index.d.ts.map +1 -1
  274. package/dist/render/nexus/graph/index.js +4 -2
  275. package/dist/render/nexus/graph/index.js.map +1 -1
  276. package/dist/render/orchestration/audit-reconstruct.d.ts +11 -0
  277. package/dist/render/orchestration/audit-reconstruct.d.ts.map +1 -1
  278. package/dist/render/orchestration/audit-reconstruct.js +21 -6
  279. package/dist/render/orchestration/audit-reconstruct.js.map +1 -1
  280. package/dist/render/tasks/show.js +2 -1
  281. package/dist/render/tasks/show.js.map +1 -1
  282. package/dist/resources/spawn-wrapper.d.ts +82 -14
  283. package/dist/resources/spawn-wrapper.d.ts.map +1 -1
  284. package/dist/resources/spawn-wrapper.js +585 -27
  285. package/dist/resources/spawn-wrapper.js.map +1 -1
  286. package/dist/selfimprove/fix-gen.js +4026 -1734
  287. package/dist/selfimprove/fix-gen.js.map +3 -3
  288. package/dist/sequence/index.d.ts.map +1 -1
  289. package/dist/sequence/index.js +76 -68
  290. package/dist/sequence/index.js.map +1 -1
  291. package/dist/session/canon-lint.d.ts +24 -3
  292. package/dist/session/canon-lint.d.ts.map +1 -1
  293. package/dist/session/canon-lint.js +72 -31
  294. package/dist/session/canon-lint.js.map +1 -1
  295. package/dist/session/engine-ops.d.ts +1 -4
  296. package/dist/session/engine-ops.d.ts.map +1 -1
  297. package/dist/session/engine-ops.js +6 -2
  298. package/dist/session/engine-ops.js.map +1 -1
  299. package/dist/sessions/briefing.d.ts +11 -1
  300. package/dist/sessions/briefing.d.ts.map +1 -1
  301. package/dist/sessions/briefing.js +76 -8
  302. package/dist/sessions/briefing.js.map +1 -1
  303. package/dist/sessions/handoff.d.ts +3 -1
  304. package/dist/sessions/handoff.d.ts.map +1 -1
  305. package/dist/sessions/handoff.js +2 -0
  306. package/dist/sessions/handoff.js.map +1 -1
  307. package/dist/shutdown-deadline.d.ts +24 -33
  308. package/dist/shutdown-deadline.d.ts.map +1 -1
  309. package/dist/shutdown-deadline.js +71 -14
  310. package/dist/shutdown-deadline.js.map +1 -1
  311. package/dist/shutdown.d.ts +21 -10
  312. package/dist/shutdown.d.ts.map +1 -1
  313. package/dist/shutdown.js +91 -35
  314. package/dist/shutdown.js.map +1 -1
  315. package/dist/skills/index.d.ts +1 -1
  316. package/dist/skills/index.d.ts.map +1 -1
  317. package/dist/skills/index.js +1 -1
  318. package/dist/skills/index.js.map +1 -1
  319. package/dist/skills/orchestrator/validator.d.ts +87 -20
  320. package/dist/skills/orchestrator/validator.d.ts.map +1 -1
  321. package/dist/skills/orchestrator/validator.js +330 -241
  322. package/dist/skills/orchestrator/validator.js.map +1 -1
  323. package/dist/store/agent-resolver.d.ts.map +1 -1
  324. package/dist/store/agent-resolver.js +16 -9
  325. package/dist/store/agent-resolver.js.map +1 -1
  326. package/dist/store/attachment-store.d.ts +4 -1
  327. package/dist/store/attachment-store.d.ts.map +1 -1
  328. package/dist/store/attachment-store.js +20 -3
  329. package/dist/store/attachment-store.js.map +1 -1
  330. package/dist/store/background-jobs.d.ts +426 -105
  331. package/dist/store/background-jobs.d.ts.map +1 -1
  332. package/dist/store/background-jobs.js +1208 -252
  333. package/dist/store/background-jobs.js.map +1 -1
  334. package/dist/store/background-ops.d.ts +145 -8
  335. package/dist/store/background-ops.d.ts.map +1 -1
  336. package/dist/store/background-ops.js +459 -15
  337. package/dist/store/background-ops.js.map +1 -1
  338. package/dist/store/backup-inspect.d.ts +48 -4
  339. package/dist/store/backup-inspect.d.ts.map +1 -1
  340. package/dist/store/backup-inspect.js +384 -4
  341. package/dist/store/backup-inspect.js.map +1 -1
  342. package/dist/store/converters.d.ts.map +1 -1
  343. package/dist/store/converters.js +19 -2
  344. package/dist/store/converters.js.map +1 -1
  345. package/dist/store/data-accessor.d.ts +9 -1
  346. package/dist/store/data-accessor.d.ts.map +1 -1
  347. package/dist/store/data-accessor.js +22 -5
  348. package/dist/store/data-accessor.js.map +1 -1
  349. package/dist/store/data-safety-central.d.ts.map +1 -1
  350. package/dist/store/data-safety-central.js +272 -232
  351. package/dist/store/data-safety-central.js.map +1 -1
  352. package/dist/store/db-helpers.d.ts +19 -3
  353. package/dist/store/db-helpers.d.ts.map +1 -1
  354. package/dist/store/db-helpers.js +42 -58
  355. package/dist/store/db-helpers.js.map +1 -1
  356. package/dist/store/dual-scope-db.d.ts +63 -4
  357. package/dist/store/dual-scope-db.d.ts.map +1 -1
  358. package/dist/store/dual-scope-db.js +166 -19
  359. package/dist/store/dual-scope-db.js.map +1 -1
  360. package/dist/store/exodus/archive.d.ts +21 -7
  361. package/dist/store/exodus/archive.d.ts.map +1 -1
  362. package/dist/store/exodus/archive.js +60 -18
  363. package/dist/store/exodus/archive.js.map +1 -1
  364. package/dist/store/exodus/migrate.d.ts.map +1 -1
  365. package/dist/store/exodus/migrate.js +27 -23
  366. package/dist/store/exodus/migrate.js.map +1 -1
  367. package/dist/store/exodus/on-open.d.ts +16 -27
  368. package/dist/store/exodus/on-open.d.ts.map +1 -1
  369. package/dist/store/exodus/on-open.js +121 -169
  370. package/dist/store/exodus/on-open.js.map +1 -1
  371. package/dist/store/exodus/recovery.d.ts +90 -0
  372. package/dist/store/exodus/recovery.d.ts.map +1 -0
  373. package/dist/store/exodus/recovery.js +434 -0
  374. package/dist/store/exodus/recovery.js.map +1 -0
  375. package/dist/store/exodus/types.d.ts +15 -0
  376. package/dist/store/exodus/types.d.ts.map +1 -1
  377. package/dist/store/memory-accessor.d.ts +52 -3
  378. package/dist/store/memory-accessor.d.ts.map +1 -1
  379. package/dist/store/memory-accessor.js +122 -7
  380. package/dist/store/memory-accessor.js.map +1 -1
  381. package/dist/store/nexus-sqlite.d.ts +24 -6
  382. package/dist/store/nexus-sqlite.d.ts.map +1 -1
  383. package/dist/store/nexus-sqlite.js +39 -20
  384. package/dist/store/nexus-sqlite.js.map +1 -1
  385. package/dist/store/ports/domain-binding.d.ts.map +1 -1
  386. package/dist/store/ports/domain-binding.js +27 -5
  387. package/dist/store/ports/domain-binding.js.map +1 -1
  388. package/dist/store/schema/background-jobs.d.ts +181 -2
  389. package/dist/store/schema/background-jobs.d.ts.map +1 -1
  390. package/dist/store/schema/background-jobs.js +27 -3
  391. package/dist/store/schema/background-jobs.js.map +1 -1
  392. package/dist/store/schema/cleo-global/skills.d.ts +2 -2
  393. package/dist/store/schema/cleo-project/lifecycle.d.ts +2 -2
  394. package/dist/store/schema/cleo-project/runtime.d.ts +1 -1
  395. package/dist/store/schema/cleo-project/tasks-core.d.ts +1 -1
  396. package/dist/store/schema/lifecycle.d.ts +2 -2
  397. package/dist/store/schema/skills-schema.d.ts +2 -2
  398. package/dist/store/schema/tasks.d.ts +1 -1
  399. package/dist/store/session-store.d.ts +3 -1
  400. package/dist/store/session-store.d.ts.map +1 -1
  401. package/dist/store/session-store.js +252 -207
  402. package/dist/store/session-store.js.map +1 -1
  403. package/dist/store/sqlite-data-accessor.d.ts +39 -4
  404. package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
  405. package/dist/store/sqlite-data-accessor.js +689 -527
  406. package/dist/store/sqlite-data-accessor.js.map +1 -1
  407. package/dist/store/tasks-sqlite.d.ts +3 -1
  408. package/dist/store/tasks-sqlite.d.ts.map +1 -1
  409. package/dist/store/tasks-sqlite.js +309 -279
  410. package/dist/store/tasks-sqlite.js.map +1 -1
  411. package/dist/store/validation-schemas.d.ts +8 -8
  412. package/dist/store/writer-lease.d.ts +80 -8
  413. package/dist/store/writer-lease.d.ts.map +1 -1
  414. package/dist/store/writer-lease.js +503 -134
  415. package/dist/store/writer-lease.js.map +1 -1
  416. package/dist/system/audit.d.ts +2 -1
  417. package/dist/system/audit.d.ts.map +1 -1
  418. package/dist/system/audit.js +118 -71
  419. package/dist/system/audit.js.map +1 -1
  420. package/dist/system/backup.d.ts.map +1 -1
  421. package/dist/system/backup.js +5 -5
  422. package/dist/system/backup.js.map +1 -1
  423. package/dist/system/inject-generate.js +1 -1
  424. package/dist/task-work/index.d.ts +3 -0
  425. package/dist/task-work/index.d.ts.map +1 -1
  426. package/dist/task-work/index.js +34 -37
  427. package/dist/task-work/index.js.map +1 -1
  428. package/dist/tasks/ac-coverage-gate.d.ts.map +1 -1
  429. package/dist/tasks/ac-coverage-gate.js +4 -0
  430. package/dist/tasks/ac-coverage-gate.js.map +1 -1
  431. package/dist/tasks/ac-immutability.d.ts +7 -4
  432. package/dist/tasks/ac-immutability.d.ts.map +1 -1
  433. package/dist/tasks/ac-immutability.js +19 -17
  434. package/dist/tasks/ac-immutability.js.map +1 -1
  435. package/dist/tasks/ac-table.d.ts +5 -5
  436. package/dist/tasks/ac-table.d.ts.map +1 -1
  437. package/dist/tasks/ac-table.js +26 -12
  438. package/dist/tasks/ac-table.js.map +1 -1
  439. package/dist/tasks/acceptance-input.d.ts +52 -0
  440. package/dist/tasks/acceptance-input.d.ts.map +1 -0
  441. package/dist/tasks/acceptance-input.js +259 -0
  442. package/dist/tasks/acceptance-input.js.map +1 -0
  443. package/dist/tasks/add.d.ts +67 -29
  444. package/dist/tasks/add.d.ts.map +1 -1
  445. package/dist/tasks/add.js +255 -97
  446. package/dist/tasks/add.js.map +1 -1
  447. package/dist/tasks/complete.d.ts +16 -1
  448. package/dist/tasks/complete.d.ts.map +1 -1
  449. package/dist/tasks/complete.js +152 -55
  450. package/dist/tasks/complete.js.map +1 -1
  451. package/dist/tasks/decompose.d.ts +103 -0
  452. package/dist/tasks/decompose.d.ts.map +1 -0
  453. package/dist/tasks/decompose.js +224 -0
  454. package/dist/tasks/decompose.js.map +1 -0
  455. package/dist/tasks/delete.d.ts +5 -8
  456. package/dist/tasks/delete.d.ts.map +1 -1
  457. package/dist/tasks/delete.js +4 -3
  458. package/dist/tasks/delete.js.map +1 -1
  459. package/dist/tasks/dependency-check.d.ts +59 -0
  460. package/dist/tasks/dependency-check.d.ts.map +1 -1
  461. package/dist/tasks/dependency-check.js +73 -0
  462. package/dist/tasks/dependency-check.js.map +1 -1
  463. package/dist/tasks/deps-ready.d.ts +13 -1
  464. package/dist/tasks/deps-ready.d.ts.map +1 -1
  465. package/dist/tasks/deps-ready.js +16 -5
  466. package/dist/tasks/deps-ready.js.map +1 -1
  467. package/dist/tasks/engine-converters.d.ts +7 -0
  468. package/dist/tasks/engine-converters.d.ts.map +1 -1
  469. package/dist/tasks/engine-converters.js +8 -1
  470. package/dist/tasks/engine-converters.js.map +1 -1
  471. package/dist/tasks/evidence.d.ts +54 -26
  472. package/dist/tasks/evidence.d.ts.map +1 -1
  473. package/dist/tasks/evidence.js +292 -40
  474. package/dist/tasks/evidence.js.map +1 -1
  475. package/dist/tasks/find.d.ts +16 -12
  476. package/dist/tasks/find.d.ts.map +1 -1
  477. package/dist/tasks/find.js +107 -93
  478. package/dist/tasks/find.js.map +1 -1
  479. package/dist/tasks/gate-runner.d.ts +88 -14
  480. package/dist/tasks/gate-runner.d.ts.map +1 -1
  481. package/dist/tasks/gate-runner.js +596 -253
  482. package/dist/tasks/gate-runner.js.map +1 -1
  483. package/dist/tasks/hierarchy-policy.d.ts +8 -0
  484. package/dist/tasks/hierarchy-policy.d.ts.map +1 -1
  485. package/dist/tasks/hierarchy-policy.js +9 -2
  486. package/dist/tasks/hierarchy-policy.js.map +1 -1
  487. package/dist/tasks/hierarchy.d.ts +67 -1
  488. package/dist/tasks/hierarchy.d.ts.map +1 -1
  489. package/dist/tasks/hierarchy.js +81 -1
  490. package/dist/tasks/hierarchy.js.map +1 -1
  491. package/dist/tasks/index.d.ts +3 -0
  492. package/dist/tasks/index.d.ts.map +1 -1
  493. package/dist/tasks/index.js +3 -0
  494. package/dist/tasks/index.js.map +1 -1
  495. package/dist/tasks/infer-add-params.d.ts +1 -20
  496. package/dist/tasks/infer-add-params.d.ts.map +1 -1
  497. package/dist/tasks/infer-add-params.js +2 -203
  498. package/dist/tasks/infer-add-params.js.map +1 -1
  499. package/dist/tasks/list.d.ts +7 -2
  500. package/dist/tasks/list.d.ts.map +1 -1
  501. package/dist/tasks/list.js +24 -36
  502. package/dist/tasks/list.js.map +1 -1
  503. package/dist/tasks/ops.d.ts +6 -61
  504. package/dist/tasks/ops.d.ts.map +1 -1
  505. package/dist/tasks/ops.js +5 -53
  506. package/dist/tasks/ops.js.map +1 -1
  507. package/dist/tasks/plan.d.ts +15 -1
  508. package/dist/tasks/plan.d.ts.map +1 -1
  509. package/dist/tasks/plan.js +23 -25
  510. package/dist/tasks/plan.js.map +1 -1
  511. package/dist/tasks/population.d.ts +46 -0
  512. package/dist/tasks/population.d.ts.map +1 -0
  513. package/dist/tasks/population.js +88 -0
  514. package/dist/tasks/population.js.map +1 -0
  515. package/dist/tasks/reconcile-scope.d.ts +157 -0
  516. package/dist/tasks/reconcile-scope.d.ts.map +1 -0
  517. package/dist/tasks/reconcile-scope.js +242 -0
  518. package/dist/tasks/reconcile-scope.js.map +1 -0
  519. package/dist/tasks/req.d.ts +51 -12
  520. package/dist/tasks/req.d.ts.map +1 -1
  521. package/dist/tasks/req.js +125 -69
  522. package/dist/tasks/req.js.map +1 -1
  523. package/dist/tasks/session-scope.d.ts +6 -31
  524. package/dist/tasks/session-scope.d.ts.map +1 -1
  525. package/dist/tasks/session-scope.js +3 -17
  526. package/dist/tasks/session-scope.js.map +1 -1
  527. package/dist/tasks/severity-attestation.d.ts +39 -10
  528. package/dist/tasks/severity-attestation.d.ts.map +1 -1
  529. package/dist/tasks/severity-attestation.js +75 -36
  530. package/dist/tasks/severity-attestation.js.map +1 -1
  531. package/dist/tasks/task-next.d.ts +5 -0
  532. package/dist/tasks/task-next.d.ts.map +1 -1
  533. package/dist/tasks/task-next.js +10 -9
  534. package/dist/tasks/task-next.js.map +1 -1
  535. package/dist/tasks/task-reparent.d.ts.map +1 -1
  536. package/dist/tasks/task-reparent.js +3 -13
  537. package/dist/tasks/task-reparent.js.map +1 -1
  538. package/dist/tasks/update.d.ts +20 -43
  539. package/dist/tasks/update.d.ts.map +1 -1
  540. package/dist/tasks/update.js +64 -49
  541. package/dist/tasks/update.js.map +1 -1
  542. package/dist/teardown-signal.d.ts +72 -0
  543. package/dist/teardown-signal.d.ts.map +1 -0
  544. package/dist/teardown-signal.js +108 -0
  545. package/dist/teardown-signal.js.map +1 -0
  546. package/dist/validation/engine-ops.d.ts +17 -1
  547. package/dist/validation/engine-ops.d.ts.map +1 -1
  548. package/dist/validation/engine-ops.js +149 -11
  549. package/dist/validation/engine-ops.js.map +1 -1
  550. package/dist/workgraph/reparent-preflight.d.ts +1 -1
  551. package/dist/workgraph/reparent-preflight.d.ts.map +1 -1
  552. package/dist/workgraph/reparent-preflight.js +6 -1
  553. package/dist/workgraph/reparent-preflight.js.map +1 -1
  554. package/dist/workgraph/scaffold-apply.d.ts.map +1 -1
  555. package/dist/workgraph/scaffold-apply.js +81 -76
  556. package/dist/workgraph/scaffold-apply.js.map +1 -1
  557. package/dist/workgraph/structure-validation.d.ts +1 -1
  558. package/dist/workgraph/structure-validation.d.ts.map +1 -1
  559. package/dist/workgraph/structure-validation.js +6 -1
  560. package/dist/workgraph/structure-validation.js.map +1 -1
  561. package/migrations/drizzle-tasks/20260919180000_t12263-job-ownership-fences/migration.sql +34 -0
  562. package/migrations/drizzle-tasks/20260919184500_t12265-durable-pending-proposals/migration.sql +4 -0
  563. package/package.json +18 -13
  564. package/schemas/config.schema.json +2 -2
  565. package/templates/CLEO-INJECTION.md +103 -101
package/dist/tasks/req.js CHANGED
@@ -8,6 +8,7 @@
8
8
  * @epic T760
9
9
  * @task T782
10
10
  */
11
+ import { isDeepStrictEqual } from 'node:util';
11
12
  import { acceptanceGateSchema, ExitCode } from '@cleocode/contracts';
12
13
  import { CleoError } from '../errors.js';
13
14
  import { getTaskAccessor } from '../store/data-accessor.js';
@@ -27,16 +28,14 @@ async function loadTask(accessor, taskId) {
27
28
  }
28
29
  return task;
29
30
  }
30
- async function persistAcceptanceProjection(accessor, taskId, acceptance, updatedAt) {
31
- await accessor.transaction(async (tx) => {
32
- await tx.updateTaskFields(taskId, {
33
- acceptanceJson: JSON.stringify(acceptance),
34
- updatedAt,
35
- });
36
- const existing = await tx.getAcRows(taskId);
37
- const plan = planAcUpdate(taskId, existing, acceptance);
38
- await applyAcPlan(tx, taskId, plan);
31
+ async function persistAcceptanceProjection(tx, taskId, acceptance, updatedAt) {
32
+ await tx.updateTaskFields(taskId, {
33
+ acceptanceJson: JSON.stringify(acceptance),
34
+ updatedAt,
39
35
  });
36
+ const existing = await tx.getAcRows(taskId);
37
+ const plan = planAcUpdate(taskId, existing, acceptance);
38
+ await applyAcPlan(tx, taskId, plan);
40
39
  }
41
40
  /**
42
41
  * Classify a free-text acceptance string into a gate proposal using heuristics.
@@ -119,48 +118,70 @@ function heuristicClassify(text, reqId) {
119
118
  /**
120
119
  * Add a typed `AcceptanceGate` (with a REQ-ID) to a task's acceptance array.
121
120
  *
122
- * Validates the gate JSON against the Zod schema before writing. Rejects
123
- * duplicate REQ-IDs within the same task.
121
+ * @remarks
122
+ * Validates before opening storage. Reading existing acceptance, checking REQ-ID
123
+ * uniqueness and persisting the task/AC projection share one transaction, so
124
+ * competing appends cannot overwrite each other. This records a gate; it does
125
+ * not execute it or record passing verification evidence.
126
+ *
127
+ * @returns The committed acceptance array and its owning task identity.
128
+ * @example
129
+ * ```typescript
130
+ * const gate: AcceptanceGate = {
131
+ * kind: 'test', command: 'node', args: ['verify.mjs'], expect: 'exit0',
132
+ * req: 'PARTNER-121', description: 'Task-specific checks pass',
133
+ * };
134
+ * await reqAdd(projectRoot, 'T121', gate, undefined);
135
+ * ```
124
136
  *
125
137
  * @param projectRoot - Absolute path to project root
126
138
  * @param taskId - Target task ID
127
- * @param gate - Parsed `AcceptanceGate` object (already validated)
139
+ * @param gate - Typed gate; runtime schema validation also applies to SDK callers
128
140
  * @param accessor - Optional pre-created accessor (for testing)
129
141
  *
130
- * @throws {CleoError} E_NOT_FOUND when the task does not exist
131
- * @throws {CleoError} E_VALIDATION when the REQ-ID already exists on the task
142
+ * @throws CleoError E_NOT_FOUND when the task does not exist
143
+ * @throws CleoError E_VALIDATION when the REQ-ID already exists on the task
132
144
  *
133
145
  * @task T782
134
146
  */
135
147
  export async function reqAdd(projectRoot, taskId, gate, accessor) {
148
+ const validated = validateGate(gate);
136
149
  const acc = accessor ?? (await getTaskAccessor(projectRoot));
137
- const task = await loadTask(acc, taskId);
138
- const existing = (task.acceptance ?? []);
139
- // Check REQ-ID uniqueness
140
- if (gate.req) {
141
- const dup = existing.find((item) => typeof item === 'object' && item.req === gate.req);
142
- if (dup) {
143
- throw new CleoError(ExitCode.VALIDATION_ERROR, `REQ-ID "${gate.req}" already exists on task ${taskId}`, {
144
- fix: `Choose a unique REQ-ID or remove the existing gate with 'cleo req list ${taskId}'`,
145
- });
150
+ return acc.transaction(async (tx) => {
151
+ const task = await loadTask(acc, taskId);
152
+ const existing = (task.acceptance ?? []);
153
+ // Check REQ-ID uniqueness
154
+ if (validated.req) {
155
+ const dup = existing.find((item) => typeof item === 'object' && item.req === validated.req);
156
+ if (dup) {
157
+ throw new CleoError(ExitCode.VALIDATION_ERROR, `REQ-ID "${validated.req}" already exists on task ${taskId}`, {
158
+ fix: `Choose a unique REQ-ID or remove the existing gate with 'cleo req list ${taskId}'`,
159
+ });
160
+ }
146
161
  }
147
- }
148
- const updated = [...existing, gate];
149
- await persistAcceptanceProjection(acc, taskId, updated, new Date().toISOString());
150
- return { task: { id: taskId, acceptance: updated } };
162
+ const updated = [...existing, validated];
163
+ await persistAcceptanceProjection(tx, taskId, updated, new Date().toISOString());
164
+ return { task: { id: taskId, acceptance: updated } };
165
+ });
151
166
  }
152
167
  /**
153
168
  * List all REQ-ID–addressed acceptance gates on a task.
154
169
  *
155
- * Free-text strings (legacy) in the acceptance array are skipped because
156
- * they have no REQ-ID. Only structured `AcceptanceGate` items with a `req`
157
- * field are returned.
170
+ * @remarks
171
+ * Free-text strings are skipped because they have no REQ-ID. This summary does
172
+ * not execute gates or establish verification; full payloads remain on the task.
173
+ *
174
+ * @returns Requirement identity, index, kind and description for each named gate.
175
+ * @example
176
+ * ```typescript
177
+ * const { gates } = await reqList(projectRoot, 'T121', undefined);
178
+ * ```
158
179
  *
159
180
  * @param projectRoot - Absolute path to project root
160
181
  * @param taskId - Target task ID
161
182
  * @param accessor - Optional pre-created accessor (for testing)
162
183
  *
163
- * @throws {CleoError} E_NOT_FOUND when the task does not exist
184
+ * @throws CleoError E_NOT_FOUND when the task does not exist
164
185
  *
165
186
  * @task T782
166
187
  */
@@ -188,60 +209,76 @@ export async function reqList(projectRoot, taskId, accessor) {
188
209
  * Heuristic migrator: reads free-text acceptance strings and proposes typed
189
210
  * `AcceptanceGate` replacements.
190
211
  *
212
+ * @remarks
191
213
  * Without `apply: true` only proposals are returned. With `apply: true` the
192
214
  * matched strings are replaced in the task's acceptance array and the updated
193
215
  * array is persisted.
194
216
  *
195
217
  * Auto-generated REQ-IDs use the pattern `MIGRATED-001`, `MIGRATED-002`, etc.
196
- * Strings that already contain a structured gate (object items) are skipped.
218
+ * Existing structured gates and their requirement identities are preserved.
219
+ * Apply plans and persists under one transaction; preview does not write.
220
+ *
221
+ * @returns Proposed replacements and, when applied, the committed replacement count.
222
+ * @example
223
+ * ```typescript
224
+ * const preview = await reqMigrate(projectRoot, 'T121', false, undefined);
225
+ * ```
197
226
  *
198
227
  * @param projectRoot - Absolute path to project root
199
228
  * @param taskId - Target task ID
200
229
  * @param apply - When true, writes the proposals back to the task
201
230
  * @param accessor - Optional pre-created accessor (for testing)
202
231
  *
203
- * @throws {CleoError} E_NOT_FOUND when the task does not exist
232
+ * @throws CleoError E_NOT_FOUND when the task does not exist
204
233
  *
205
234
  * @task T782
206
235
  */
207
236
  export async function reqMigrate(projectRoot, taskId, apply, accessor) {
208
237
  const acc = accessor ?? (await getTaskAccessor(projectRoot));
209
- const task = await loadTask(acc, taskId);
210
- const acceptance = (task.acceptance ?? []);
211
- const proposals = [];
212
- let counter = 1;
213
- // Collect free-text indices only
214
- for (let i = 0; i < acceptance.length; i++) {
215
- const item = acceptance[i];
216
- if (typeof item !== 'string')
217
- continue; // skip existing gates
218
- const reqId = `MIGRATED-${String(counter).padStart(3, '0')}`;
219
- counter++;
220
- const proposed = heuristicClassify(item, reqId);
221
- proposals.push({
222
- index: i,
223
- original: item,
224
- proposed,
225
- reqId: proposed ? reqId : null,
226
- heuristic: proposed ? proposed.kind : null,
238
+ const migrate = async (tx) => {
239
+ const task = await loadTask(acc, taskId);
240
+ const acceptance = (task.acceptance ?? []);
241
+ const proposals = [];
242
+ let counter = 1;
243
+ const usedRequirements = new Set(acceptance.flatMap((item) => (typeof item === 'object' && item.req ? [item.req] : [])));
244
+ // Collect free-text indices only
245
+ for (let i = 0; i < acceptance.length; i++) {
246
+ const item = acceptance[i];
247
+ if (typeof item !== 'string')
248
+ continue; // skip existing gates
249
+ let reqId;
250
+ do {
251
+ reqId = `MIGRATED-${String(counter++).padStart(3, '0')}`;
252
+ } while (usedRequirements.has(reqId));
253
+ usedRequirements.add(reqId);
254
+ const classified = heuristicClassify(item, reqId);
255
+ const proposed = classified ? validateGate(classified) : null;
256
+ proposals.push({
257
+ index: i,
258
+ original: item,
259
+ proposed,
260
+ reqId: proposed ? reqId : null,
261
+ heuristic: proposed ? proposed.kind : null,
262
+ });
263
+ }
264
+ if (!tx) {
265
+ return { proposals };
266
+ }
267
+ // Apply: replace matched strings with their proposed gates
268
+ // Unmatched strings (where proposed is null) are left as-is
269
+ const updated = acceptance.map((item, i) => {
270
+ const proposal = proposals.find((p) => p.index === i);
271
+ if (proposal?.proposed)
272
+ return proposal.proposed;
273
+ return item;
227
274
  });
228
- }
229
- if (!apply) {
230
- return { proposals };
231
- }
232
- // Apply: replace matched strings with their proposed gates
233
- // Unmatched strings (where proposed is null) are left as-is
234
- const updated = acceptance.map((item, i) => {
235
- const proposal = proposals.find((p) => p.index === i);
236
- if (proposal?.proposed)
237
- return proposal.proposed;
238
- return item;
239
- });
240
- await persistAcceptanceProjection(acc, taskId, updated, new Date().toISOString());
241
- return {
242
- proposals,
243
- applied: proposals.filter((p) => p.proposed !== null).length,
275
+ await persistAcceptanceProjection(tx, taskId, updated, new Date().toISOString());
276
+ return {
277
+ proposals,
278
+ applied: proposals.filter((p) => p.proposed !== null).length,
279
+ };
244
280
  };
281
+ return apply ? acc.transaction(migrate) : migrate();
245
282
  }
246
283
  /**
247
284
  * Validate a raw JSON string against the `acceptanceGateSchema` Zod schema.
@@ -249,9 +286,19 @@ export async function reqMigrate(projectRoot, taskId, apply, accessor) {
249
286
  * Returns the parsed `AcceptanceGate` on success or throws a `CleoError`
250
287
  * with exit code `E_VALIDATION` on failure.
251
288
  *
289
+ * @remarks
290
+ * Uses the same schema boundary as direct SDK writes and rejects unsupported
291
+ * fields, including nested fields that the schema would otherwise strip.
292
+ *
293
+ * @returns The validated gate without executing its command.
294
+ * @example
295
+ * ```typescript
296
+ * const raw = '{"kind":"manual","description":"Review","prompt":"Approve?"}';
297
+ * const gate = parseGateJson(raw);
298
+ * ```
252
299
  * @param raw - Raw JSON string from `--gate` CLI flag
253
300
  *
254
- * @throws {CleoError} E_VALIDATION when JSON is malformed or schema invalid
301
+ * @throws CleoError E_VALIDATION when JSON is malformed or schema invalid
255
302
  *
256
303
  * @task T782
257
304
  */
@@ -265,13 +312,22 @@ export function parseGateJson(raw) {
265
312
  fix: 'Wrap the gate JSON in single quotes, e.g. --gate \'{"kind":"test","command":"pnpm test","expect":"pass","description":"Tests pass"}\'',
266
313
  });
267
314
  }
268
- const result = acceptanceGateSchema.safeParse(parsed);
315
+ return validateGate(parsed);
316
+ }
317
+ /** Validate the canonical schema without silently dropping unsupported gate fields. */
318
+ function validateGate(gate) {
319
+ const result = acceptanceGateSchema.safeParse(gate);
269
320
  if (!result.success) {
270
321
  const issues = result.error.issues.map((e) => `${e.path.join('.')}: ${e.message}`).join('; ');
271
322
  throw new CleoError(ExitCode.VALIDATION_ERROR, `Gate JSON failed schema validation: ${issues}`, {
272
323
  fix: 'Check AcceptanceGate schema: kind, description, and kind-specific required fields',
273
324
  });
274
325
  }
326
+ if (!isDeepStrictEqual(gate, result.data)) {
327
+ throw new CleoError(ExitCode.VALIDATION_ERROR, 'Gate includes unsupported fields', {
328
+ fix: 'Use only fields supported by the canonical AcceptanceGate schema; unsupported nested fields are also rejected.',
329
+ });
330
+ }
275
331
  return result.data;
276
332
  }
277
333
  //# sourceMappingURL=req.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"req.js","sourceRoot":"","sources":["../../src/tasks/req.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"req.js","sourceRoot":"","sources":["../../src/tasks/req.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@
19
19
  * @adr ADR-058
20
20
  * @adr ADR-051
21
21
  */
22
- import type { TaskRecord } from '@cleocode/contracts';
22
+ import type { TaskRecord, TasksAddParams } from '@cleocode/contracts';
23
23
  import { type EngineResult } from '../engine-result.js';
24
24
  /**
25
25
  * Where a resolved parent came from.
@@ -81,36 +81,7 @@ export declare function resolveParentFromSession(projectRoot: string, params: {
81
81
  * @task T1568
82
82
  * @epic T1566
83
83
  */
84
- export declare function addTaskWithSessionScope(projectRoot: string, params: {
85
- title: string;
86
- description?: string;
87
- parent?: string;
88
- depends?: string[];
89
- priority?: string;
90
- labels?: string[];
91
- type?: string;
92
- phase?: string;
93
- size?: string;
94
- acceptance?: string[];
95
- notes?: string;
96
- files?: string[];
97
- dryRun?: boolean;
98
- parentSearch?: string;
99
- /**
100
- * Set by the CLI when it already inferred the parent from the session's
101
- * `current` pointer, so core does not re-derive provenance it cannot see.
102
- * @task T12136
103
- */
104
- parentSource?: 'explicit' | 'session-inference';
105
- kind?: string;
106
- scope?: string;
107
- severity?: string;
108
- /**
109
- * Bypass the BRAIN duplicate-detection rejection guard (T1633).
110
- * Audited to `.cleo/audit/duplicate-bypass.jsonl`.
111
- */
112
- forceDuplicate?: boolean;
113
- }): Promise<EngineResult<{
84
+ export declare function addTaskWithSessionScope(projectRoot: string, params: TasksAddParams): Promise<EngineResult<{
114
85
  task: TaskRecord;
115
86
  duplicate: boolean;
116
87
  dryRun?: boolean;
@@ -120,6 +91,10 @@ export declare function addTaskWithSessionScope(projectRoot: string, params: {
120
91
  * parent (PM-Core V2 design-point 5). @saga T10538
121
92
  */
122
93
  reopenedAncestors?: string[];
94
+ autoDecomposed?: {
95
+ childId: string;
96
+ movedAcceptance: string[];
97
+ };
123
98
  /**
124
99
  * Present when the parent was NOT a plain explicit argument — an inference
125
100
  * fired, was declined as stale, or the session lookup failed.
@@ -1 +1 @@
1
- {"version":3,"file":"session-scope.d.ts","sourceRoot":"","sources":["../../src/tasks/session-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAGV,UAAU,EAKX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,YAAY,EAA8B,MAAM,qBAAqB,CAAC;AAQpF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,eAAe,GAAG,mBAAmB,CAAC;AAE9E,kDAAkD;AAClD,MAAM,WAAW,gBAAgB;IAC/B,kEAAkE;IAClE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,8CAA8C;IAC9C,YAAY,EAAE,YAAY,CAAC;IAC3B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;CAC7B;AAeD;;;;;;;;;;;;GAYG;AACH,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;IACN,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACA,OAAO,CAAC,gBAAgB,CAAC,CAmF3B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;IACN,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,YAAY,CAAC,EAAE,UAAU,GAAG,mBAAmB,CAAC;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,GACA,OAAO,CACR,YAAY,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE;QAAE,YAAY,EAAE,YAAY,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAChE,CAAC,CACH,CAqEA"}
1
+ {"version":3,"file":"session-scope.d.ts","sourceRoot":"","sources":["../../src/tasks/session-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,KAAK,YAAY,EAA8B,MAAM,qBAAqB,CAAC;AAQpF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,eAAe,GAAG,mBAAmB,CAAC;AAE9E,kDAAkD;AAClD,MAAM,WAAW,gBAAgB;IAC/B,kEAAkE;IAClE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,8CAA8C;IAC9C,YAAY,EAAE,YAAY,CAAC;IAC3B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;CAC7B;AAeD;;;;;;;;;;;;GAYG;AACH,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;IACN,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACA,OAAO,CAAC,gBAAgB,CAAC,CAmF3B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,GACrB,OAAO,CACR,YAAY,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAChE;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE;QAAE,YAAY,EAAE,YAAY,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAChE,CAAC,CACH,CAwDA"}
@@ -23,7 +23,7 @@ import { engineError, engineSuccess } from '../engine-result.js';
23
23
  import { cleoErrorToEngineResult } from '../errors-to-engine.js';
24
24
  import { getTaskAccessor } from '../store/data-accessor.js';
25
25
  import { getActiveSession } from '../store/session-store.js';
26
- import { addTask } from './add.js';
26
+ import { addTask, toTaskAddOptions } from './add.js';
27
27
  import { taskToRecord } from './engine-converters.js';
28
28
  import { findTasks } from './find.js';
29
29
  /**
@@ -146,28 +146,13 @@ export async function addTaskWithSessionScope(projectRoot, params) {
146
146
  }
147
147
  const accessor = await getTaskAccessor(projectRoot);
148
148
  const result = await addTask({
149
- title: params.title,
150
- description: params.description,
149
+ ...toTaskAddOptions(params),
151
150
  parentId: resolvedParent,
152
151
  // T12136: so `E_CLEO_DEPTH_EXCEEDED` can say the parent was inherited
153
152
  // rather than named. The CLI may already have decided this upstream.
154
153
  parentSource: params.parentSource === 'session-inference' || parentSource === 'session-inference'
155
154
  ? 'session-inference'
156
155
  : 'explicit',
157
- depends: params.depends,
158
- priority: params.priority || 'medium',
159
- labels: params.labels,
160
- type: params.type || undefined,
161
- phase: params.phase,
162
- size: params.size,
163
- acceptance: params.acceptance,
164
- notes: params.notes,
165
- files: params.files,
166
- dryRun: params.dryRun,
167
- kind: params.kind,
168
- scope: params.scope,
169
- severity: params.severity,
170
- forceDuplicate: params.forceDuplicate,
171
156
  }, projectRoot, accessor);
172
157
  return engineSuccess({
173
158
  task: taskToRecord(result.task),
@@ -177,6 +162,7 @@ export async function addTaskWithSessionScope(projectRoot, params) {
177
162
  ...(inferenceNote ? { parentInference: { parentSource, note: inferenceNote } } : {}),
178
163
  ...(result.warnings?.length && { warnings: result.warnings }),
179
164
  // T10538 / design-point 5 — surface the ancestor reopen to the caller.
165
+ ...(result.autoDecomposed && { autoDecomposed: result.autoDecomposed }),
180
166
  ...(result.reopenedAncestors?.length && {
181
167
  reopenedAncestors: result.reopenedAncestors,
182
168
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"session-scope.js","sourceRoot":"","sources":["../../src/tasks/session-scope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-scope.js","sourceRoot":"","sources":["../../src/tasks/session-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAAqB,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAiCtC;;;;;;GAMG;AACH,MAAM,6BAA6B,GAAwB,IAAI,GAAG,CAAC;IACjE,MAAM;IACN,WAAW;IACX,UAAU;CACX,CAAC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,WAAmB,EACnB,MAIC;IAED,2EAA2E;IAC3E,8CAA8C;IAC9C,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;IACrE,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;IAEpD,6EAA6E;IAC7E,8DAA8D;IAC9D,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,MAAM,YAAY,GAAG,MAAM,SAAS,CAClC,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,EACxC,WAAW,EACX,QAAQ,CACT,CAAC;QACF,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACtC,OAAO;gBACL,cAAc,EAAE,KAAK,CAAC,EAAE;gBACxB,YAAY,EAAE,eAAe;gBAC7B,aAAa,EAAE,oBAAoB,MAAM,CAAC,YAAY,iBAAiB,KAAK,CAAC,EAAE,EAAE;aAClF,CAAC;QACJ,CAAC;QACD,OAAO;YACL,cAAc,EAAE,IAAI;YACpB,YAAY,EAAE,UAAU;YACxB,KAAK,EAAE,WAAW,CAChB,aAAa,EACb,2CAA2C,MAAM,CAAC,YAAY,GAAG,CAC3C;SACzB,CAAC;IACJ,CAAC;IAED,4DAA4D;IAC5D,EAAE;IACF,6EAA6E;IAC7E,4EAA4E;IAC5E,2EAA2E;IAC3E,oEAAoE;IACpE,wEAAwE;IACxE,uEAAuE;IACvE,yCAAyC;IACzC,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;YACpD,IAAI,OAAO,EAAE,KAAK,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBACpC,mEAAmE;gBACnE,wCAAwC;gBACxC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACnD,IAAI,IAAI,IAAI,6BAA6B,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC3D,OAAO;wBACL,cAAc,EAAE,IAAI;wBACpB,YAAY,EAAE,UAAU;wBACxB,aAAa,EACX,8BAA8B,MAAM,iCAAiC;4BACrE,kBAAkB,IAAI,CAAC,MAAM,kCAAkC;qBAClE,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,cAAc,EAAE,MAAM;oBACtB,YAAY,EAAE,mBAAmB;oBACjC,aAAa,EACX,8BAA8B,MAAM,kCAAkC;wBACtE,uBAAuB;iBAC1B,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,oEAAoE;YACpE,kEAAkE;YAClE,OAAO;gBACL,cAAc,EAAE,IAAI;gBACpB,YAAY,EAAE,UAAU;gBACxB,aAAa,EAAE,+CACb,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE;aACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,WAAmB,EACnB,MAAsB;IA2BtB,IAAI,CAAC;QACH,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,MAAM,wBAAwB,CAC3F,WAAW,EACX;YACE,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CACF,CAAC;QAEF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAOL,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B;YACE,GAAG,gBAAgB,CAAC,MAAM,CAAC;YAC3B,QAAQ,EAAE,cAAc;YACxB,sEAAsE;YACtE,qEAAqE;YACrE,YAAY,EACV,MAAM,CAAC,YAAY,KAAK,mBAAmB,IAAI,YAAY,KAAK,mBAAmB;gBACjF,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,UAAU;SACjB,EACD,WAAW,EACX,QAAQ,CACT,CAAC;QAEF,OAAO,aAAa,CAAC;YACnB,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC;YAC/B,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,KAAK;YACpC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,gEAAgE;YAChE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC7D,uEAAuE;YACvE,GAAG,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC;YACvE,GAAG,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,IAAI;gBACtC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;aAC5C,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,uEAAuE;QACvE,mEAAmE;QACnE,OAAO,uBAAuB,CAAC,GAAG,EAAE,YAAY,EAAE,uCAAuC,CAAC,CAAC;IAC7F,CAAC;AACH,CAAC"}
@@ -11,6 +11,8 @@
11
11
  *
12
12
  * Signed attestation lines are appended to
13
13
  * `.cleo/audit/severity-attestation.jsonl` (one JSON object per line). The
14
+ * Task mutations persist signed assertions atomically in the task audit instead.
15
+ * Standalone JSONL assertions do not prove a task mutation committed. The
14
16
  * previous path `.cleo/audit/bug-severity.jsonl` was bug-command-specific;
15
17
  * callers that still write to the old path will see a one-time deprecation
16
18
  * notice emitted to stderr — migration to the new path is separate cleanup.
@@ -19,13 +21,13 @@
19
21
  *
20
22
  * If `.cleo/config.json` declares an `ownerPubkeys` array, only identities
21
23
  * whose Ed25519 public key (hex) appears in that list may assert a severity.
22
- * Signers outside the allowlist receive an error with `code: 'E_OWNER_ONLY'`.
24
+ * Signers outside the allowlist receive a permission error naming `E_OWNER_ONLY`.
23
25
  * When the allowlist is absent or empty, any identity may sign (opt-in policy).
24
26
  *
25
27
  * @task T9071
26
28
  * @adr ADR-054 (draft)
27
29
  */
28
- import type { SeverityAttestation } from '@cleocode/contracts';
30
+ import { type SeverityAttestation, type SignedSeverityAttestation } from '@cleocode/contracts';
29
31
  export type { SeverityAttestation };
30
32
  /**
31
33
  * Audit log path for severity attestations.
@@ -45,11 +47,16 @@ export declare const SEVERITY_ATTESTATION_AUDIT_FILE = "severity-attestation.jso
45
47
  */
46
48
  export declare const LEGACY_BUG_SEVERITY_AUDIT_FILE = "bug-severity.jsonl";
47
49
  /**
48
- * Load the owner-pubkey allowlist from `.cleo/config.json`. Returns an empty
49
- * array when the file is missing, malformed, or does not declare the field.
50
+ * Read the project's opt-in severity signer allowlist.
50
51
  *
51
- * @param cwd - Optional working directory override (defaults to `process.cwd()`).
52
- * @internal
52
+ * @param cwd - Explicit project root, otherwise the current project.
53
+ * @returns Authorized keys; absent config or an absent/empty field returns an empty list.
54
+ * @throws CleoError when configured authority cannot be read or validated.
55
+ * @remarks An unreadable or malformed authority is not permission for every signer.
56
+ * @example
57
+ * ```ts
58
+ * const owners = await loadOwnerPubkeys(projectRoot);
59
+ * ```
53
60
  */
54
61
  export declare function loadOwnerPubkeys(cwd?: string): Promise<string[]>;
55
62
  /**
@@ -78,17 +85,15 @@ export interface AppendSeverityAttestationOptions {
78
85
  * Append a signed severity attestation to
79
86
  * `.cleo/audit/severity-attestation.jsonl`.
80
87
  *
81
- * Throws a shaped error with `code: 'E_OWNER_ONLY'` when the signer's pubkey
88
+ * Throws a permission error naming `E_OWNER_ONLY` when the signer's pubkey
82
89
  * is not in the configured `ownerPubkeys` allowlist (allowlist enforcement is
83
90
  * only active when the list is non-empty).
84
91
  *
85
- * @param taskId - Task ID, if already assigned at attestation time.
86
92
  * @param record - Attestation fields (excluding `signerPub` which is derived
87
93
  * from the local CLEO identity).
88
94
  * @param options - Optional overrides (e.g. `cwd`).
89
95
  *
90
- * @throws `Error` with `code: 'E_OWNER_ONLY'` when the allowlist rejects the
91
- * signer.
96
+ * @throws CleoError with permission exit code when the allowlist rejects the signer.
92
97
  *
93
98
  * @example
94
99
  * ```ts
@@ -103,4 +108,28 @@ export interface AppendSeverityAttestationOptions {
103
108
  * ```
104
109
  */
105
110
  export declare function appendSignedSeverityAttestation(record: Omit<SeverityAttestation, 'signerPub'>, options?: AppendSeverityAttestationOptions): Promise<void>;
111
+ /**
112
+ * Authorize and sign a severity assertion without appending a filesystem log.
113
+ *
114
+ * Task mutations persist this result in their task transaction, binding the
115
+ * signature to the assigned task ID. The established owner allowlist is opt-in:
116
+ * absent or empty lists permit the local identity; nonempty lists restrict it.
117
+ *
118
+ * @param record - Assertion to bind to the project identity.
119
+ * @param options - Explicit project used for both identity and owner policy.
120
+ * @returns Signed assertion ready for atomic audit persistence.
121
+ * @remarks Preparation creates no committed task evidence; persist in the task transaction.
122
+ * Restricted authority never provisions an unknown signer. With opt-in unrestricted
123
+ * authority, first-use key provisioning is independent persistent project setup;
124
+ * a later task rollback does not delete or roll back that signing identity.
125
+ * @example
126
+ * ```ts
127
+ * const assertion = await prepareSignedSeverityAttestation({
128
+ * timestamp: new Date().toISOString(), taskId: 'T001',
129
+ * title: 'Restore service', severity: 'P1',
130
+ * }, { cwd: projectRoot });
131
+ * ```
132
+ * @throws CleoError with permission exit code when the signer is not allowed.
133
+ */
134
+ export declare function prepareSignedSeverityAttestation(record: Omit<SeverityAttestation, 'signerPub'>, options?: AppendSeverityAttestationOptions): Promise<SignedSeverityAttestation>;
106
135
  //# sourceMappingURL=severity-attestation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"severity-attestation.d.ts","sourceRoot":"","sources":["../../src/tasks/severity-attestation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAI/D,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAEpC;;;;;;;;GAQG;AACH,eAAO,MAAM,+BAA+B,+BAA+B,CAAC;AAE5E;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,uBAAuB,CAAC;AAMnE;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAmBtE;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAO5E;AAMD;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,EAC9C,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,IAAI,CAAC,CAqBf"}
1
+ {"version":3,"file":"severity-attestation.d.ts","sourceRoot":"","sources":["../../src/tasks/severity-attestation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAKH,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC/B,MAAM,qBAAqB,CAAC;AAM7B,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAEpC;;;;;;;;GAQG;AACH,eAAO,MAAM,+BAA+B,+BAA+B,CAAC;AAE5E;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,uBAAuB,CAAC;AAUnE;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAsBtE;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAO5E;AAMD;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,EAC9C,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,gCAAgC,CACpD,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,EAC9C,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,yBAAyB,CAAC,CAapC"}