@cleocode/cleo 2026.4.9 → 2026.4.11

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 (693) hide show
  1. package/dist/cli/commander-shim.d.ts +112 -0
  2. package/dist/cli/commander-shim.d.ts.map +1 -0
  3. package/dist/cli/commander-shim.js +233 -0
  4. package/dist/cli/commander-shim.js.map +1 -0
  5. package/dist/cli/commands/add.d.ts +12 -0
  6. package/dist/cli/commands/add.d.ts.map +1 -0
  7. package/dist/cli/commands/add.js +98 -0
  8. package/dist/cli/commands/add.js.map +1 -0
  9. package/dist/cli/commands/admin.d.ts +12 -0
  10. package/dist/cli/commands/admin.d.ts.map +1 -0
  11. package/dist/cli/commands/admin.js +59 -0
  12. package/dist/cli/commands/admin.js.map +1 -0
  13. package/dist/cli/commands/adr.d.ts +27 -0
  14. package/dist/cli/commands/adr.d.ts.map +1 -0
  15. package/dist/cli/commands/adr.js +79 -0
  16. package/dist/cli/commands/adr.js.map +1 -0
  17. package/dist/cli/commands/agent-profile-status.d.ts +98 -0
  18. package/dist/cli/commands/agent-profile-status.d.ts.map +1 -0
  19. package/dist/cli/commands/agent-profile-status.js +71 -0
  20. package/dist/cli/commands/agent-profile-status.js.map +1 -0
  21. package/dist/cli/commands/agent.d.ts +38 -0
  22. package/dist/cli/commands/agent.d.ts.map +1 -0
  23. package/dist/cli/commands/agent.js +1125 -0
  24. package/dist/cli/commands/agent.js.map +1 -0
  25. package/dist/cli/commands/agents.d.ts +17 -0
  26. package/dist/cli/commands/agents.d.ts.map +1 -0
  27. package/dist/cli/commands/agents.js +20 -0
  28. package/dist/cli/commands/agents.js.map +1 -0
  29. package/dist/cli/commands/analyze.d.ts +12 -0
  30. package/dist/cli/commands/analyze.d.ts.map +1 -0
  31. package/dist/cli/commands/analyze.js +20 -0
  32. package/dist/cli/commands/analyze.js.map +1 -0
  33. package/dist/cli/commands/archive-stats.d.ts +18 -0
  34. package/dist/cli/commands/archive-stats.d.ts.map +1 -0
  35. package/dist/cli/commands/archive-stats.js +49 -0
  36. package/dist/cli/commands/archive-stats.js.map +1 -0
  37. package/dist/cli/commands/archive.d.ts +12 -0
  38. package/dist/cli/commands/archive.d.ts.map +1 -0
  39. package/dist/cli/commands/archive.js +32 -0
  40. package/dist/cli/commands/archive.js.map +1 -0
  41. package/dist/cli/commands/backfill.d.ts +38 -0
  42. package/dist/cli/commands/backfill.d.ts.map +1 -0
  43. package/dist/cli/commands/backfill.js +147 -0
  44. package/dist/cli/commands/backfill.js.map +1 -0
  45. package/dist/cli/commands/backup.d.ts +8 -0
  46. package/dist/cli/commands/backup.d.ts.map +1 -0
  47. package/dist/cli/commands/backup.js +35 -0
  48. package/dist/cli/commands/backup.js.map +1 -0
  49. package/dist/cli/commands/blockers.d.ts +7 -0
  50. package/dist/cli/commands/blockers.d.ts.map +1 -0
  51. package/dist/cli/commands/blockers.js +16 -0
  52. package/dist/cli/commands/blockers.js.map +1 -0
  53. package/dist/cli/commands/brain.d.ts +29 -0
  54. package/dist/cli/commands/brain.d.ts.map +1 -0
  55. package/dist/cli/commands/brain.js +107 -0
  56. package/dist/cli/commands/brain.js.map +1 -0
  57. package/dist/cli/commands/briefing.d.ts +22 -0
  58. package/dist/cli/commands/briefing.d.ts.map +1 -0
  59. package/dist/cli/commands/briefing.js +45 -0
  60. package/dist/cli/commands/briefing.js.map +1 -0
  61. package/dist/cli/commands/bug.d.ts +12 -0
  62. package/dist/cli/commands/bug.d.ts.map +1 -0
  63. package/dist/cli/commands/bug.js +81 -0
  64. package/dist/cli/commands/bug.js.map +1 -0
  65. package/dist/cli/commands/cant.d.ts +32 -0
  66. package/dist/cli/commands/cant.d.ts.map +1 -0
  67. package/dist/cli/commands/cant.js +281 -0
  68. package/dist/cli/commands/cant.js.map +1 -0
  69. package/dist/cli/commands/check.d.ts +22 -0
  70. package/dist/cli/commands/check.d.ts.map +1 -0
  71. package/dist/cli/commands/check.js +164 -0
  72. package/dist/cli/commands/check.js.map +1 -0
  73. package/dist/cli/commands/checkpoint.d.ts +15 -0
  74. package/dist/cli/commands/checkpoint.d.ts.map +1 -0
  75. package/dist/cli/commands/checkpoint.js +91 -0
  76. package/dist/cli/commands/checkpoint.js.map +1 -0
  77. package/dist/cli/commands/code.d.ts +11 -0
  78. package/dist/cli/commands/code.d.ts.map +1 -0
  79. package/dist/cli/commands/code.js +114 -0
  80. package/dist/cli/commands/code.js.map +1 -0
  81. package/dist/cli/commands/commands.d.ts +13 -0
  82. package/dist/cli/commands/commands.d.ts.map +1 -0
  83. package/dist/cli/commands/commands.js +29 -0
  84. package/dist/cli/commands/commands.js.map +1 -0
  85. package/dist/cli/commands/complete.d.ts +12 -0
  86. package/dist/cli/commands/complete.d.ts.map +1 -0
  87. package/dist/cli/commands/complete.js +43 -0
  88. package/dist/cli/commands/complete.js.map +1 -0
  89. package/dist/cli/commands/compliance.d.ts +8 -0
  90. package/dist/cli/commands/compliance.d.ts.map +1 -0
  91. package/dist/cli/commands/compliance.js +85 -0
  92. package/dist/cli/commands/compliance.js.map +1 -0
  93. package/dist/cli/commands/config.d.ts +10 -0
  94. package/dist/cli/commands/config.d.ts.map +1 -0
  95. package/dist/cli/commands/config.js +69 -0
  96. package/dist/cli/commands/config.js.map +1 -0
  97. package/dist/cli/commands/consensus.d.ts +13 -0
  98. package/dist/cli/commands/consensus.d.ts.map +1 -0
  99. package/dist/cli/commands/consensus.js +45 -0
  100. package/dist/cli/commands/consensus.js.map +1 -0
  101. package/dist/cli/commands/context.d.ts +8 -0
  102. package/dist/cli/commands/context.d.ts.map +1 -0
  103. package/dist/cli/commands/context.js +40 -0
  104. package/dist/cli/commands/context.js.map +1 -0
  105. package/dist/cli/commands/contribution.d.ts +13 -0
  106. package/dist/cli/commands/contribution.d.ts.map +1 -0
  107. package/dist/cli/commands/contribution.js +41 -0
  108. package/dist/cli/commands/contribution.js.map +1 -0
  109. package/dist/cli/commands/current.d.ts +13 -0
  110. package/dist/cli/commands/current.d.ts.map +1 -0
  111. package/dist/cli/commands/current.js +20 -0
  112. package/dist/cli/commands/current.js.map +1 -0
  113. package/dist/cli/commands/dash.d.ts +12 -0
  114. package/dist/cli/commands/dash.d.ts.map +1 -0
  115. package/dist/cli/commands/dash.js +24 -0
  116. package/dist/cli/commands/dash.js.map +1 -0
  117. package/dist/cli/commands/decomposition.d.ts +13 -0
  118. package/dist/cli/commands/decomposition.d.ts.map +1 -0
  119. package/dist/cli/commands/decomposition.js +45 -0
  120. package/dist/cli/commands/decomposition.js.map +1 -0
  121. package/dist/cli/commands/delete.d.ts +12 -0
  122. package/dist/cli/commands/delete.d.ts.map +1 -0
  123. package/dist/cli/commands/delete.js +37 -0
  124. package/dist/cli/commands/delete.js.map +1 -0
  125. package/dist/cli/commands/deps.d.ts +24 -0
  126. package/dist/cli/commands/deps.d.ts.map +1 -0
  127. package/dist/cli/commands/deps.js +98 -0
  128. package/dist/cli/commands/deps.js.map +1 -0
  129. package/dist/cli/commands/detect-drift.d.ts +15 -0
  130. package/dist/cli/commands/detect-drift.d.ts.map +1 -0
  131. package/dist/cli/commands/detect-drift.js +424 -0
  132. package/dist/cli/commands/detect-drift.js.map +1 -0
  133. package/dist/cli/commands/detect.d.ts +10 -0
  134. package/dist/cli/commands/detect.d.ts.map +1 -0
  135. package/dist/cli/commands/detect.js +24 -0
  136. package/dist/cli/commands/detect.js.map +1 -0
  137. package/dist/cli/commands/docs.d.ts +13 -0
  138. package/dist/cli/commands/docs.d.ts.map +1 -0
  139. package/dist/cli/commands/docs.js +169 -0
  140. package/dist/cli/commands/docs.js.map +1 -0
  141. package/dist/cli/commands/doctor.d.ts +15 -0
  142. package/dist/cli/commands/doctor.d.ts.map +1 -0
  143. package/dist/cli/commands/doctor.js +133 -0
  144. package/dist/cli/commands/doctor.js.map +1 -0
  145. package/dist/cli/commands/dynamic.d.ts +24 -0
  146. package/dist/cli/commands/dynamic.d.ts.map +1 -0
  147. package/dist/cli/commands/dynamic.js +27 -0
  148. package/dist/cli/commands/dynamic.js.map +1 -0
  149. package/dist/cli/commands/env.d.ts +12 -0
  150. package/dist/cli/commands/env.d.ts.map +1 -0
  151. package/dist/cli/commands/env.js +44 -0
  152. package/dist/cli/commands/env.js.map +1 -0
  153. package/dist/cli/commands/exists.d.ts +22 -0
  154. package/dist/cli/commands/exists.d.ts.map +1 -0
  155. package/dist/cli/commands/exists.js +51 -0
  156. package/dist/cli/commands/exists.js.map +1 -0
  157. package/dist/cli/commands/export-tasks.d.ts +10 -0
  158. package/dist/cli/commands/export-tasks.d.ts.map +1 -0
  159. package/dist/cli/commands/export-tasks.js +47 -0
  160. package/dist/cli/commands/export-tasks.js.map +1 -0
  161. package/dist/cli/commands/export.d.ts +9 -0
  162. package/dist/cli/commands/export.d.ts.map +1 -0
  163. package/dist/cli/commands/export.js +46 -0
  164. package/dist/cli/commands/export.js.map +1 -0
  165. package/dist/cli/commands/find.d.ts +14 -0
  166. package/dist/cli/commands/find.d.ts.map +1 -0
  167. package/dist/cli/commands/find.js +70 -0
  168. package/dist/cli/commands/find.js.map +1 -0
  169. package/dist/cli/commands/generate-changelog.d.ts +14 -0
  170. package/dist/cli/commands/generate-changelog.d.ts.map +1 -0
  171. package/dist/cli/commands/generate-changelog.js +252 -0
  172. package/dist/cli/commands/generate-changelog.js.map +1 -0
  173. package/dist/cli/commands/grade.d.ts +13 -0
  174. package/dist/cli/commands/grade.d.ts.map +1 -0
  175. package/dist/cli/commands/grade.js +26 -0
  176. package/dist/cli/commands/grade.js.map +1 -0
  177. package/dist/cli/commands/history.d.ts +9 -0
  178. package/dist/cli/commands/history.d.ts.map +1 -0
  179. package/dist/cli/commands/history.js +30 -0
  180. package/dist/cli/commands/history.js.map +1 -0
  181. package/dist/cli/commands/implementation.d.ts +13 -0
  182. package/dist/cli/commands/implementation.d.ts.map +1 -0
  183. package/dist/cli/commands/implementation.js +41 -0
  184. package/dist/cli/commands/implementation.js.map +1 -0
  185. package/dist/cli/commands/import-tasks.d.ts +10 -0
  186. package/dist/cli/commands/import-tasks.d.ts.map +1 -0
  187. package/dist/cli/commands/import-tasks.js +38 -0
  188. package/dist/cli/commands/import-tasks.js.map +1 -0
  189. package/dist/cli/commands/import.d.ts +9 -0
  190. package/dist/cli/commands/import.d.ts.map +1 -0
  191. package/dist/cli/commands/import.js +28 -0
  192. package/dist/cli/commands/import.js.map +1 -0
  193. package/dist/cli/commands/init.d.ts +34 -0
  194. package/dist/cli/commands/init.d.ts.map +1 -0
  195. package/dist/cli/commands/init.js +96 -0
  196. package/dist/cli/commands/init.js.map +1 -0
  197. package/dist/cli/commands/inject.d.ts +8 -0
  198. package/dist/cli/commands/inject.d.ts.map +1 -0
  199. package/dist/cli/commands/inject.js +28 -0
  200. package/dist/cli/commands/inject.js.map +1 -0
  201. package/dist/cli/commands/issue.d.ts +17 -0
  202. package/dist/cli/commands/issue.d.ts.map +1 -0
  203. package/dist/cli/commands/issue.js +107 -0
  204. package/dist/cli/commands/issue.js.map +1 -0
  205. package/dist/cli/commands/labels.d.ts +13 -0
  206. package/dist/cli/commands/labels.d.ts.map +1 -0
  207. package/dist/cli/commands/labels.js +44 -0
  208. package/dist/cli/commands/labels.js.map +1 -0
  209. package/dist/cli/commands/lifecycle.d.ts +8 -0
  210. package/dist/cli/commands/lifecycle.d.ts.map +1 -0
  211. package/dist/cli/commands/lifecycle.js +84 -0
  212. package/dist/cli/commands/lifecycle.js.map +1 -0
  213. package/dist/cli/commands/list.d.ts +14 -0
  214. package/dist/cli/commands/list.d.ts.map +1 -0
  215. package/dist/cli/commands/list.js +71 -0
  216. package/dist/cli/commands/list.js.map +1 -0
  217. package/dist/cli/commands/log.d.ts +12 -0
  218. package/dist/cli/commands/log.d.ts.map +1 -0
  219. package/dist/cli/commands/log.js +30 -0
  220. package/dist/cli/commands/log.js.map +1 -0
  221. package/dist/cli/commands/map.d.ts +10 -0
  222. package/dist/cli/commands/map.d.ts.map +1 -0
  223. package/dist/cli/commands/map.js +23 -0
  224. package/dist/cli/commands/map.js.map +1 -0
  225. package/dist/cli/commands/memory-brain.d.ts +14 -0
  226. package/dist/cli/commands/memory-brain.d.ts.map +1 -0
  227. package/dist/cli/commands/memory-brain.js +157 -0
  228. package/dist/cli/commands/memory-brain.js.map +1 -0
  229. package/dist/cli/commands/migrate-claude-mem.d.ts +18 -0
  230. package/dist/cli/commands/migrate-claude-mem.d.ts.map +1 -0
  231. package/dist/cli/commands/migrate-claude-mem.js +60 -0
  232. package/dist/cli/commands/migrate-claude-mem.js.map +1 -0
  233. package/dist/cli/commands/next.d.ts +9 -0
  234. package/dist/cli/commands/next.d.ts.map +1 -0
  235. package/dist/cli/commands/next.js +20 -0
  236. package/dist/cli/commands/next.js.map +1 -0
  237. package/dist/cli/commands/nexus.d.ts +16 -0
  238. package/dist/cli/commands/nexus.d.ts.map +1 -0
  239. package/dist/cli/commands/nexus.js +155 -0
  240. package/dist/cli/commands/nexus.js.map +1 -0
  241. package/dist/cli/commands/observe.d.ts +9 -0
  242. package/dist/cli/commands/observe.d.ts.map +1 -0
  243. package/dist/cli/commands/observe.js +39 -0
  244. package/dist/cli/commands/observe.js.map +1 -0
  245. package/dist/cli/commands/ops.d.ts +10 -0
  246. package/dist/cli/commands/ops.d.ts.map +1 -0
  247. package/dist/cli/commands/ops.js +19 -0
  248. package/dist/cli/commands/ops.js.map +1 -0
  249. package/dist/cli/commands/orchestrate.d.ts +8 -0
  250. package/dist/cli/commands/orchestrate.d.ts.map +1 -0
  251. package/dist/cli/commands/orchestrate.js +58 -0
  252. package/dist/cli/commands/orchestrate.js.map +1 -0
  253. package/dist/cli/commands/otel.d.ts +12 -0
  254. package/dist/cli/commands/otel.d.ts.map +1 -0
  255. package/dist/cli/commands/otel.js +128 -0
  256. package/dist/cli/commands/otel.js.map +1 -0
  257. package/dist/cli/commands/phase.d.ts +12 -0
  258. package/dist/cli/commands/phase.d.ts.map +1 -0
  259. package/dist/cli/commands/phase.js +91 -0
  260. package/dist/cli/commands/phase.js.map +1 -0
  261. package/dist/cli/commands/phases.d.ts +12 -0
  262. package/dist/cli/commands/phases.d.ts.map +1 -0
  263. package/dist/cli/commands/phases.js +37 -0
  264. package/dist/cli/commands/phases.js.map +1 -0
  265. package/dist/cli/commands/plan.d.ts +8 -0
  266. package/dist/cli/commands/plan.d.ts.map +1 -0
  267. package/dist/cli/commands/plan.js +15 -0
  268. package/dist/cli/commands/plan.js.map +1 -0
  269. package/dist/cli/commands/promote.d.ts +7 -0
  270. package/dist/cli/commands/promote.d.ts.map +1 -0
  271. package/dist/cli/commands/promote.js +15 -0
  272. package/dist/cli/commands/promote.js.map +1 -0
  273. package/dist/cli/commands/reason.d.ts +35 -0
  274. package/dist/cli/commands/reason.d.ts.map +1 -0
  275. package/dist/cli/commands/reason.js +104 -0
  276. package/dist/cli/commands/reason.js.map +1 -0
  277. package/dist/cli/commands/refresh-memory.d.ts +9 -0
  278. package/dist/cli/commands/refresh-memory.d.ts.map +1 -0
  279. package/dist/cli/commands/refresh-memory.js +24 -0
  280. package/dist/cli/commands/refresh-memory.js.map +1 -0
  281. package/dist/cli/commands/relates.d.ts +12 -0
  282. package/dist/cli/commands/relates.d.ts.map +1 -0
  283. package/dist/cli/commands/relates.js +53 -0
  284. package/dist/cli/commands/relates.js.map +1 -0
  285. package/dist/cli/commands/release.d.ts +8 -0
  286. package/dist/cli/commands/release.d.ts.map +1 -0
  287. package/dist/cli/commands/release.js +72 -0
  288. package/dist/cli/commands/release.js.map +1 -0
  289. package/dist/cli/commands/remote.d.ts +12 -0
  290. package/dist/cli/commands/remote.d.ts.map +1 -0
  291. package/dist/cli/commands/remote.js +207 -0
  292. package/dist/cli/commands/remote.js.map +1 -0
  293. package/dist/cli/commands/reorder.d.ts +7 -0
  294. package/dist/cli/commands/reorder.d.ts.map +1 -0
  295. package/dist/cli/commands/reorder.js +20 -0
  296. package/dist/cli/commands/reorder.js.map +1 -0
  297. package/dist/cli/commands/reparent.d.ts +10 -0
  298. package/dist/cli/commands/reparent.d.ts.map +1 -0
  299. package/dist/cli/commands/reparent.js +19 -0
  300. package/dist/cli/commands/reparent.js.map +1 -0
  301. package/dist/cli/commands/research.d.ts +8 -0
  302. package/dist/cli/commands/research.d.ts.map +1 -0
  303. package/dist/cli/commands/research.js +129 -0
  304. package/dist/cli/commands/research.js.map +1 -0
  305. package/dist/cli/commands/restore.d.ts +11 -0
  306. package/dist/cli/commands/restore.d.ts.map +1 -0
  307. package/dist/cli/commands/restore.js +224 -0
  308. package/dist/cli/commands/restore.js.map +1 -0
  309. package/dist/cli/commands/roadmap.d.ts +8 -0
  310. package/dist/cli/commands/roadmap.d.ts.map +1 -0
  311. package/dist/cli/commands/roadmap.js +21 -0
  312. package/dist/cli/commands/roadmap.js.map +1 -0
  313. package/dist/cli/commands/safestop.d.ts +14 -0
  314. package/dist/cli/commands/safestop.d.ts.map +1 -0
  315. package/dist/cli/commands/safestop.js +32 -0
  316. package/dist/cli/commands/safestop.js.map +1 -0
  317. package/dist/cli/commands/self-update.d.ts +15 -0
  318. package/dist/cli/commands/self-update.d.ts.map +1 -0
  319. package/dist/cli/commands/self-update.js +329 -0
  320. package/dist/cli/commands/self-update.js.map +1 -0
  321. package/dist/cli/commands/sequence.d.ts +8 -0
  322. package/dist/cli/commands/sequence.d.ts.map +1 -0
  323. package/dist/cli/commands/sequence.js +30 -0
  324. package/dist/cli/commands/sequence.js.map +1 -0
  325. package/dist/cli/commands/session.d.ts +12 -0
  326. package/dist/cli/commands/session.d.ts.map +1 -0
  327. package/dist/cli/commands/session.js +175 -0
  328. package/dist/cli/commands/session.js.map +1 -0
  329. package/dist/cli/commands/show.d.ts +13 -0
  330. package/dist/cli/commands/show.d.ts.map +1 -0
  331. package/dist/cli/commands/show.js +20 -0
  332. package/dist/cli/commands/show.js.map +1 -0
  333. package/dist/cli/commands/skills.d.ts +13 -0
  334. package/dist/cli/commands/skills.d.ts.map +1 -0
  335. package/dist/cli/commands/skills.js +131 -0
  336. package/dist/cli/commands/skills.js.map +1 -0
  337. package/dist/cli/commands/snapshot.d.ts +9 -0
  338. package/dist/cli/commands/snapshot.d.ts.map +1 -0
  339. package/dist/cli/commands/snapshot.js +50 -0
  340. package/dist/cli/commands/snapshot.js.map +1 -0
  341. package/dist/cli/commands/specification.d.ts +13 -0
  342. package/dist/cli/commands/specification.d.ts.map +1 -0
  343. package/dist/cli/commands/specification.js +45 -0
  344. package/dist/cli/commands/specification.js.map +1 -0
  345. package/dist/cli/commands/start.d.ts +13 -0
  346. package/dist/cli/commands/start.d.ts.map +1 -0
  347. package/dist/cli/commands/start.js +20 -0
  348. package/dist/cli/commands/start.js.map +1 -0
  349. package/dist/cli/commands/stats.d.ts +12 -0
  350. package/dist/cli/commands/stats.d.ts.map +1 -0
  351. package/dist/cli/commands/stats.js +35 -0
  352. package/dist/cli/commands/stats.js.map +1 -0
  353. package/dist/cli/commands/sticky.d.ts +16 -0
  354. package/dist/cli/commands/sticky.d.ts.map +1 -0
  355. package/dist/cli/commands/sticky.js +211 -0
  356. package/dist/cli/commands/sticky.js.map +1 -0
  357. package/dist/cli/commands/stop.d.ts +13 -0
  358. package/dist/cli/commands/stop.d.ts.map +1 -0
  359. package/dist/cli/commands/stop.js +20 -0
  360. package/dist/cli/commands/stop.js.map +1 -0
  361. package/dist/cli/commands/testing.d.ts +13 -0
  362. package/dist/cli/commands/testing.d.ts.map +1 -0
  363. package/dist/cli/commands/testing.js +64 -0
  364. package/dist/cli/commands/testing.js.map +1 -0
  365. package/dist/cli/commands/token.d.ts +10 -0
  366. package/dist/cli/commands/token.d.ts.map +1 -0
  367. package/dist/cli/commands/token.js +135 -0
  368. package/dist/cli/commands/token.js.map +1 -0
  369. package/dist/cli/commands/update.d.ts +12 -0
  370. package/dist/cli/commands/update.d.ts.map +1 -0
  371. package/dist/cli/commands/update.js +83 -0
  372. package/dist/cli/commands/update.js.map +1 -0
  373. package/dist/cli/commands/upgrade.d.ts +18 -0
  374. package/dist/cli/commands/upgrade.d.ts.map +1 -0
  375. package/dist/cli/commands/upgrade.js +103 -0
  376. package/dist/cli/commands/upgrade.js.map +1 -0
  377. package/dist/cli/commands/validate.d.ts +12 -0
  378. package/dist/cli/commands/validate.d.ts.map +1 -0
  379. package/dist/cli/commands/validate.js +23 -0
  380. package/dist/cli/commands/validate.js.map +1 -0
  381. package/dist/cli/commands/verify.d.ts +8 -0
  382. package/dist/cli/commands/verify.d.ts.map +1 -0
  383. package/dist/cli/commands/verify.js +28 -0
  384. package/dist/cli/commands/verify.js.map +1 -0
  385. package/dist/cli/commands/web.d.ts +13 -0
  386. package/dist/cli/commands/web.d.ts.map +1 -0
  387. package/dist/cli/commands/web.js +277 -0
  388. package/dist/cli/commands/web.js.map +1 -0
  389. package/dist/cli/field-context.d.ts +32 -0
  390. package/dist/cli/field-context.d.ts.map +1 -0
  391. package/dist/cli/field-context.js +47 -0
  392. package/dist/cli/field-context.js.map +1 -0
  393. package/dist/cli/format-context.d.ts +32 -0
  394. package/dist/cli/format-context.d.ts.map +1 -0
  395. package/dist/cli/format-context.js +50 -0
  396. package/dist/cli/format-context.js.map +1 -0
  397. package/dist/cli/index.d.ts +9 -0
  398. package/dist/cli/index.d.ts.map +1 -0
  399. package/dist/cli/index.js +3931 -3401
  400. package/dist/cli/index.js.map +4 -4
  401. package/dist/cli/logger-bootstrap.d.ts +6 -0
  402. package/dist/cli/logger-bootstrap.d.ts.map +1 -0
  403. package/dist/cli/logger-bootstrap.js +10 -0
  404. package/dist/cli/logger-bootstrap.js.map +1 -0
  405. package/dist/cli/middleware/output-format.d.ts +30 -0
  406. package/dist/cli/middleware/output-format.d.ts.map +1 -0
  407. package/dist/cli/middleware/output-format.js +35 -0
  408. package/dist/cli/middleware/output-format.js.map +1 -0
  409. package/dist/cli/progress.d.ts +84 -0
  410. package/dist/cli/progress.d.ts.map +1 -0
  411. package/dist/cli/progress.js +169 -0
  412. package/dist/cli/progress.js.map +1 -0
  413. package/dist/cli/renderers/colors.d.ts +32 -0
  414. package/dist/cli/renderers/colors.d.ts.map +1 -0
  415. package/dist/cli/renderers/colors.js +141 -0
  416. package/dist/cli/renderers/colors.js.map +1 -0
  417. package/dist/cli/renderers/error.d.ts +13 -0
  418. package/dist/cli/renderers/error.d.ts.map +1 -0
  419. package/dist/cli/renderers/error.js +42 -0
  420. package/dist/cli/renderers/error.js.map +1 -0
  421. package/dist/cli/renderers/index.d.ts +59 -0
  422. package/dist/cli/renderers/index.d.ts.map +1 -0
  423. package/dist/cli/renderers/index.js +208 -0
  424. package/dist/cli/renderers/index.js.map +1 -0
  425. package/dist/cli/renderers/lafs-validator.d.ts +97 -0
  426. package/dist/cli/renderers/lafs-validator.d.ts.map +1 -0
  427. package/dist/cli/renderers/lafs-validator.js +229 -0
  428. package/dist/cli/renderers/lafs-validator.js.map +1 -0
  429. package/dist/cli/renderers/normalizer.d.ts +21 -0
  430. package/dist/cli/renderers/normalizer.d.ts.map +1 -0
  431. package/dist/cli/renderers/normalizer.js +106 -0
  432. package/dist/cli/renderers/normalizer.js.map +1 -0
  433. package/dist/cli/renderers/system.d.ts +25 -0
  434. package/dist/cli/renderers/system.d.ts.map +1 -0
  435. package/dist/cli/renderers/system.js +416 -0
  436. package/dist/cli/renderers/system.js.map +1 -0
  437. package/dist/cli/renderers/tasks.d.ts +28 -0
  438. package/dist/cli/renderers/tasks.d.ts.map +1 -0
  439. package/dist/cli/renderers/tasks.js +306 -0
  440. package/dist/cli/renderers/tasks.js.map +1 -0
  441. package/dist/dispatch/adapters/cli.d.ts +67 -0
  442. package/dist/dispatch/adapters/cli.d.ts.map +1 -0
  443. package/dist/dispatch/adapters/cli.js +262 -0
  444. package/dist/dispatch/adapters/cli.js.map +1 -0
  445. package/dist/dispatch/context/session-context.d.ts +54 -0
  446. package/dist/dispatch/context/session-context.d.ts.map +1 -0
  447. package/dist/dispatch/context/session-context.js +61 -0
  448. package/dist/dispatch/context/session-context.js.map +1 -0
  449. package/dist/dispatch/dispatcher.d.ts +23 -0
  450. package/dist/dispatch/dispatcher.d.ts.map +1 -0
  451. package/dist/dispatch/dispatcher.js +84 -0
  452. package/dist/dispatch/dispatcher.js.map +1 -0
  453. package/dist/dispatch/domains/_base.d.ts +59 -0
  454. package/dist/dispatch/domains/_base.d.ts.map +1 -0
  455. package/dist/dispatch/domains/_base.js +77 -0
  456. package/dist/dispatch/domains/_base.js.map +1 -0
  457. package/dist/dispatch/domains/_meta.d.ts +23 -0
  458. package/dist/dispatch/domains/_meta.d.ts.map +1 -0
  459. package/dist/dispatch/domains/_meta.js +25 -0
  460. package/dist/dispatch/domains/_meta.js.map +1 -0
  461. package/dist/dispatch/domains/_routing.d.ts +8 -0
  462. package/dist/dispatch/domains/_routing.d.ts.map +1 -0
  463. package/dist/dispatch/domains/_routing.js +20 -0
  464. package/dist/dispatch/domains/_routing.js.map +1 -0
  465. package/dist/dispatch/domains/admin.d.ts +25 -0
  466. package/dist/dispatch/domains/admin.d.ts.map +1 -0
  467. package/dist/dispatch/domains/admin.js +719 -0
  468. package/dist/dispatch/domains/admin.js.map +1 -0
  469. package/dist/dispatch/domains/check.d.ts +22 -0
  470. package/dist/dispatch/domains/check.d.ts.map +1 -0
  471. package/dist/dispatch/domains/check.js +360 -0
  472. package/dist/dispatch/domains/check.js.map +1 -0
  473. package/dist/dispatch/domains/conduit.d.ts +38 -0
  474. package/dist/dispatch/domains/conduit.d.ts.map +1 -0
  475. package/dist/dispatch/domains/conduit.js +247 -0
  476. package/dist/dispatch/domains/conduit.js.map +1 -0
  477. package/dist/dispatch/domains/index.d.ts +27 -0
  478. package/dist/dispatch/domains/index.d.ts.map +1 -0
  479. package/dist/dispatch/domains/index.js +40 -0
  480. package/dist/dispatch/domains/index.js.map +1 -0
  481. package/dist/dispatch/domains/memory.d.ts +22 -0
  482. package/dist/dispatch/domains/memory.d.ts.map +1 -0
  483. package/dist/dispatch/domains/memory.js +303 -0
  484. package/dist/dispatch/domains/memory.js.map +1 -0
  485. package/dist/dispatch/domains/nexus.d.ts +22 -0
  486. package/dist/dispatch/domains/nexus.d.ts.map +1 -0
  487. package/dist/dispatch/domains/nexus.js +286 -0
  488. package/dist/dispatch/domains/nexus.js.map +1 -0
  489. package/dist/dispatch/domains/orchestrate.d.ts +19 -0
  490. package/dist/dispatch/domains/orchestrate.d.ts.map +1 -0
  491. package/dist/dispatch/domains/orchestrate.js +259 -0
  492. package/dist/dispatch/domains/orchestrate.js.map +1 -0
  493. package/dist/dispatch/domains/pipeline.d.ts +35 -0
  494. package/dist/dispatch/domains/pipeline.d.ts.map +1 -0
  495. package/dist/dispatch/domains/pipeline.js +593 -0
  496. package/dist/dispatch/domains/pipeline.js.map +1 -0
  497. package/dist/dispatch/domains/session.d.ts +22 -0
  498. package/dist/dispatch/domains/session.d.ts.map +1 -0
  499. package/dist/dispatch/domains/session.js +257 -0
  500. package/dist/dispatch/domains/session.js.map +1 -0
  501. package/dist/dispatch/domains/sticky.d.ts +20 -0
  502. package/dist/dispatch/domains/sticky.d.ts.map +1 -0
  503. package/dist/dispatch/domains/sticky.js +164 -0
  504. package/dist/dispatch/domains/sticky.js.map +1 -0
  505. package/dist/dispatch/domains/tasks.d.ts +25 -0
  506. package/dist/dispatch/domains/tasks.d.ts.map +1 -0
  507. package/dist/dispatch/domains/tasks.js +361 -0
  508. package/dist/dispatch/domains/tasks.js.map +1 -0
  509. package/dist/dispatch/domains/tools.d.ts +37 -0
  510. package/dist/dispatch/domains/tools.d.ts.map +1 -0
  511. package/dist/dispatch/domains/tools.js +481 -0
  512. package/dist/dispatch/domains/tools.js.map +1 -0
  513. package/dist/dispatch/engines/_error.d.ts +85 -0
  514. package/dist/dispatch/engines/_error.d.ts.map +1 -0
  515. package/dist/dispatch/engines/_error.js +244 -0
  516. package/dist/dispatch/engines/_error.js.map +1 -0
  517. package/dist/dispatch/engines/code-engine.d.ts +18 -0
  518. package/dist/dispatch/engines/code-engine.d.ts.map +1 -0
  519. package/dist/dispatch/engines/code-engine.js +71 -0
  520. package/dist/dispatch/engines/code-engine.js.map +1 -0
  521. package/dist/dispatch/engines/codebase-map-engine.d.ts +31 -0
  522. package/dist/dispatch/engines/codebase-map-engine.d.ts.map +1 -0
  523. package/dist/dispatch/engines/codebase-map-engine.js +43 -0
  524. package/dist/dispatch/engines/codebase-map-engine.js.map +1 -0
  525. package/dist/dispatch/engines/config-engine.d.ts +32 -0
  526. package/dist/dispatch/engines/config-engine.d.ts.map +1 -0
  527. package/dist/dispatch/engines/config-engine.js +70 -0
  528. package/dist/dispatch/engines/config-engine.js.map +1 -0
  529. package/dist/dispatch/engines/hooks-engine.d.ts +96 -0
  530. package/dist/dispatch/engines/hooks-engine.d.ts.map +1 -0
  531. package/dist/dispatch/engines/hooks-engine.js +144 -0
  532. package/dist/dispatch/engines/hooks-engine.js.map +1 -0
  533. package/dist/dispatch/engines/init-engine.d.ts +56 -0
  534. package/dist/dispatch/engines/init-engine.d.ts.map +1 -0
  535. package/dist/dispatch/engines/init-engine.js +78 -0
  536. package/dist/dispatch/engines/init-engine.js.map +1 -0
  537. package/dist/dispatch/engines/lifecycle-engine.d.ts +66 -0
  538. package/dist/dispatch/engines/lifecycle-engine.d.ts.map +1 -0
  539. package/dist/dispatch/engines/lifecycle-engine.js +224 -0
  540. package/dist/dispatch/engines/lifecycle-engine.js.map +1 -0
  541. package/dist/dispatch/engines/memory-engine.d.ts +10 -0
  542. package/dist/dispatch/engines/memory-engine.d.ts.map +1 -0
  543. package/dist/dispatch/engines/memory-engine.js +10 -0
  544. package/dist/dispatch/engines/memory-engine.js.map +1 -0
  545. package/dist/dispatch/engines/nexus-engine.d.ts +167 -0
  546. package/dist/dispatch/engines/nexus-engine.d.ts.map +1 -0
  547. package/dist/dispatch/engines/nexus-engine.js +356 -0
  548. package/dist/dispatch/engines/nexus-engine.js.map +1 -0
  549. package/dist/dispatch/engines/orchestrate-engine.d.ts +133 -0
  550. package/dist/dispatch/engines/orchestrate-engine.d.ts.map +1 -0
  551. package/dist/dispatch/engines/orchestrate-engine.js +769 -0
  552. package/dist/dispatch/engines/orchestrate-engine.js.map +1 -0
  553. package/dist/dispatch/engines/pipeline-engine.d.ts +51 -0
  554. package/dist/dispatch/engines/pipeline-engine.d.ts.map +1 -0
  555. package/dist/dispatch/engines/pipeline-engine.js +191 -0
  556. package/dist/dispatch/engines/pipeline-engine.js.map +1 -0
  557. package/dist/dispatch/engines/release-engine.d.ts +94 -0
  558. package/dist/dispatch/engines/release-engine.d.ts.map +1 -0
  559. package/dist/dispatch/engines/release-engine.js +763 -0
  560. package/dist/dispatch/engines/release-engine.js.map +1 -0
  561. package/dist/dispatch/engines/session-engine.d.ts +383 -0
  562. package/dist/dispatch/engines/session-engine.d.ts.map +1 -0
  563. package/dist/dispatch/engines/session-engine.js +960 -0
  564. package/dist/dispatch/engines/session-engine.js.map +1 -0
  565. package/dist/dispatch/engines/sticky-engine.d.ts +100 -0
  566. package/dist/dispatch/engines/sticky-engine.d.ts.map +1 -0
  567. package/dist/dispatch/engines/sticky-engine.js +181 -0
  568. package/dist/dispatch/engines/sticky-engine.js.map +1 -0
  569. package/dist/dispatch/engines/system-engine.d.ts +539 -0
  570. package/dist/dispatch/engines/system-engine.d.ts.map +1 -0
  571. package/dist/dispatch/engines/system-engine.js +1266 -0
  572. package/dist/dispatch/engines/system-engine.js.map +1 -0
  573. package/dist/dispatch/engines/task-engine.d.ts +1055 -0
  574. package/dist/dispatch/engines/task-engine.d.ts.map +1 -0
  575. package/dist/dispatch/engines/task-engine.js +1387 -0
  576. package/dist/dispatch/engines/task-engine.js.map +1 -0
  577. package/dist/dispatch/engines/template-parser.d.ts +85 -0
  578. package/dist/dispatch/engines/template-parser.d.ts.map +1 -0
  579. package/dist/dispatch/engines/template-parser.js +108 -0
  580. package/dist/dispatch/engines/template-parser.js.map +1 -0
  581. package/dist/dispatch/engines/tools-engine.d.ts +270 -0
  582. package/dist/dispatch/engines/tools-engine.d.ts.map +1 -0
  583. package/dist/dispatch/engines/tools-engine.js +636 -0
  584. package/dist/dispatch/engines/tools-engine.js.map +1 -0
  585. package/dist/dispatch/engines/validate-engine.d.ts +218 -0
  586. package/dist/dispatch/engines/validate-engine.d.ts.map +1 -0
  587. package/dist/dispatch/engines/validate-engine.js +737 -0
  588. package/dist/dispatch/engines/validate-engine.js.map +1 -0
  589. package/dist/dispatch/index.d.ts +20 -0
  590. package/dist/dispatch/index.d.ts.map +1 -0
  591. package/dist/dispatch/index.js +19 -0
  592. package/dist/dispatch/index.js.map +1 -0
  593. package/dist/dispatch/lib/background-jobs.d.ts +86 -0
  594. package/dist/dispatch/lib/background-jobs.d.ts.map +1 -0
  595. package/dist/dispatch/lib/background-jobs.js +183 -0
  596. package/dist/dispatch/lib/background-jobs.js.map +1 -0
  597. package/dist/dispatch/lib/budget.d.ts +35 -0
  598. package/dist/dispatch/lib/budget.d.ts.map +1 -0
  599. package/dist/dispatch/lib/budget.js +102 -0
  600. package/dist/dispatch/lib/budget.js.map +1 -0
  601. package/dist/dispatch/lib/capability-matrix.d.ts +11 -0
  602. package/dist/dispatch/lib/capability-matrix.d.ts.map +1 -0
  603. package/dist/dispatch/lib/capability-matrix.js +10 -0
  604. package/dist/dispatch/lib/capability-matrix.js.map +1 -0
  605. package/dist/dispatch/lib/config-loader.d.ts +42 -0
  606. package/dist/dispatch/lib/config-loader.d.ts.map +1 -0
  607. package/dist/dispatch/lib/config-loader.js +217 -0
  608. package/dist/dispatch/lib/config-loader.js.map +1 -0
  609. package/dist/dispatch/lib/config.d.ts +11 -0
  610. package/dist/dispatch/lib/config.d.ts.map +1 -0
  611. package/dist/dispatch/lib/config.js +10 -0
  612. package/dist/dispatch/lib/config.js.map +1 -0
  613. package/dist/dispatch/lib/defaults.d.ts +117 -0
  614. package/dist/dispatch/lib/defaults.d.ts.map +1 -0
  615. package/dist/dispatch/lib/defaults.js +58 -0
  616. package/dist/dispatch/lib/defaults.js.map +1 -0
  617. package/dist/dispatch/lib/engine.d.ts +26 -0
  618. package/dist/dispatch/lib/engine.d.ts.map +1 -0
  619. package/dist/dispatch/lib/engine.js +46 -0
  620. package/dist/dispatch/lib/engine.js.map +1 -0
  621. package/dist/dispatch/lib/gateway-meta.d.ts +37 -0
  622. package/dist/dispatch/lib/gateway-meta.d.ts.map +1 -0
  623. package/dist/dispatch/lib/gateway-meta.js +50 -0
  624. package/dist/dispatch/lib/gateway-meta.js.map +1 -0
  625. package/dist/dispatch/lib/job-manager-accessor.d.ts +9 -0
  626. package/dist/dispatch/lib/job-manager-accessor.d.ts.map +1 -0
  627. package/dist/dispatch/lib/job-manager-accessor.js +13 -0
  628. package/dist/dispatch/lib/job-manager-accessor.js.map +1 -0
  629. package/dist/dispatch/lib/meta.d.ts +26 -0
  630. package/dist/dispatch/lib/meta.d.ts.map +1 -0
  631. package/dist/dispatch/lib/meta.js +37 -0
  632. package/dist/dispatch/lib/meta.js.map +1 -0
  633. package/dist/dispatch/lib/param-utils.d.ts +11 -0
  634. package/dist/dispatch/lib/param-utils.d.ts.map +1 -0
  635. package/dist/dispatch/lib/param-utils.js +10 -0
  636. package/dist/dispatch/lib/param-utils.js.map +1 -0
  637. package/dist/dispatch/lib/projections.d.ts +56 -0
  638. package/dist/dispatch/lib/projections.d.ts.map +1 -0
  639. package/dist/dispatch/lib/projections.js +65 -0
  640. package/dist/dispatch/lib/projections.js.map +1 -0
  641. package/dist/dispatch/lib/schema-utils.d.ts +39 -0
  642. package/dist/dispatch/lib/schema-utils.d.ts.map +1 -0
  643. package/dist/dispatch/lib/schema-utils.js +88 -0
  644. package/dist/dispatch/lib/schema-utils.js.map +1 -0
  645. package/dist/dispatch/lib/security.d.ts +11 -0
  646. package/dist/dispatch/lib/security.d.ts.map +1 -0
  647. package/dist/dispatch/lib/security.js +10 -0
  648. package/dist/dispatch/lib/security.js.map +1 -0
  649. package/dist/dispatch/middleware/audit.d.ts +23 -0
  650. package/dist/dispatch/middleware/audit.d.ts.map +1 -0
  651. package/dist/dispatch/middleware/audit.js +169 -0
  652. package/dist/dispatch/middleware/audit.js.map +1 -0
  653. package/dist/dispatch/middleware/field-filter.d.ts +24 -0
  654. package/dist/dispatch/middleware/field-filter.d.ts.map +1 -0
  655. package/dist/dispatch/middleware/field-filter.js +65 -0
  656. package/dist/dispatch/middleware/field-filter.js.map +1 -0
  657. package/dist/dispatch/middleware/pipeline.d.ts +33 -0
  658. package/dist/dispatch/middleware/pipeline.d.ts.map +1 -0
  659. package/dist/dispatch/middleware/pipeline.js +60 -0
  660. package/dist/dispatch/middleware/pipeline.js.map +1 -0
  661. package/dist/dispatch/middleware/projection.d.ts +35 -0
  662. package/dist/dispatch/middleware/projection.d.ts.map +1 -0
  663. package/dist/dispatch/middleware/projection.js +146 -0
  664. package/dist/dispatch/middleware/projection.js.map +1 -0
  665. package/dist/dispatch/middleware/protocol-enforcement.d.ts +27 -0
  666. package/dist/dispatch/middleware/protocol-enforcement.d.ts.map +1 -0
  667. package/dist/dispatch/middleware/protocol-enforcement.js +45 -0
  668. package/dist/dispatch/middleware/protocol-enforcement.js.map +1 -0
  669. package/dist/dispatch/middleware/rate-limiter.d.ts +72 -0
  670. package/dist/dispatch/middleware/rate-limiter.d.ts.map +1 -0
  671. package/dist/dispatch/middleware/rate-limiter.js +127 -0
  672. package/dist/dispatch/middleware/rate-limiter.js.map +1 -0
  673. package/dist/dispatch/middleware/sanitizer.d.ts +24 -0
  674. package/dist/dispatch/middleware/sanitizer.d.ts.map +1 -0
  675. package/dist/dispatch/middleware/sanitizer.js +56 -0
  676. package/dist/dispatch/middleware/sanitizer.js.map +1 -0
  677. package/dist/dispatch/middleware/session-resolver.d.ts +26 -0
  678. package/dist/dispatch/middleware/session-resolver.d.ts.map +1 -0
  679. package/dist/dispatch/middleware/session-resolver.js +65 -0
  680. package/dist/dispatch/middleware/session-resolver.js.map +1 -0
  681. package/dist/dispatch/middleware/verification-gates.d.ts +22 -0
  682. package/dist/dispatch/middleware/verification-gates.d.ts.map +1 -0
  683. package/dist/dispatch/middleware/verification-gates.js +59 -0
  684. package/dist/dispatch/middleware/verification-gates.js.map +1 -0
  685. package/dist/dispatch/registry.d.ts +91 -0
  686. package/dist/dispatch/registry.d.ts.map +1 -0
  687. package/dist/dispatch/registry.js +3133 -0
  688. package/dist/dispatch/registry.js.map +1 -0
  689. package/dist/dispatch/types.d.ts +202 -0
  690. package/dist/dispatch/types.d.ts.map +1 -0
  691. package/dist/dispatch/types.js +26 -0
  692. package/dist/dispatch/types.js.map +1 -0
  693. package/package.json +7 -7
@@ -0,0 +1,1055 @@
1
+ /**
2
+ * Task Engine
3
+ *
4
+ * Native TypeScript implementation of core task CRUD operations.
5
+ * Uses StoreProvider (via getStore()) for task/session data access,
6
+ * falling back to direct JSON for config and specialized operations.
7
+ *
8
+ * CRUD operations (show, list, find, exists, create, update, complete, delete, archive)
9
+ * delegate to src/core/tasks/*.
10
+ *
11
+ * Non-CRUD operations delegate to src/core/tasks/task-ops.ts.
12
+ *
13
+ * @task T4657
14
+ * @task T4790
15
+ * @epic T4654
16
+ */
17
+ import { type CompactTask, type ComplexityFactor, type ImpactReport } from '@cleocode/core/internal';
18
+ import { type EngineResult } from './_error.js';
19
+ /**
20
+ * Task object as stored in task data.
21
+ */
22
+ export interface TaskRecord {
23
+ /** Unique task identifier (e.g. "T001"). */
24
+ id: string;
25
+ /** Short summary of the task. */
26
+ title: string;
27
+ /** Full task description. */
28
+ description: string;
29
+ /** Current status (pending, active, blocked, done, cancelled). */
30
+ status: string;
31
+ /** Priority level (critical, high, medium, low). */
32
+ priority: string;
33
+ /** Task type (task, epic, milestone, bug). */
34
+ type?: string;
35
+ /** Project phase this task belongs to. */
36
+ phase?: string;
37
+ /** ISO timestamp when the task was created. */
38
+ createdAt: string;
39
+ /** ISO timestamp of the last update, or null. */
40
+ updatedAt: string | null;
41
+ /** ISO timestamp when the task was completed, or null. */
42
+ completedAt?: string | null;
43
+ /** ISO timestamp when the task was cancelled, or null. */
44
+ cancelledAt?: string | null;
45
+ /** Parent task ID for hierarchical nesting, or null for root tasks. */
46
+ parentId?: string | null;
47
+ /** Ordering position among siblings. */
48
+ position?: number | null;
49
+ /** Optimistic concurrency version for position updates. */
50
+ positionVersion?: number;
51
+ /** Task IDs this task depends on (must complete first). */
52
+ depends?: string[];
53
+ /** Related tasks with relationship type and optional reason. */
54
+ relates?: Array<{
55
+ /** Related task ID. */
56
+ taskId: string;
57
+ /** Relationship type (e.g. "related-to", "blocks"). */
58
+ type: string;
59
+ /** Optional explanation for the relationship. */
60
+ reason?: string;
61
+ }>;
62
+ /** File paths associated with this task. */
63
+ files?: string[];
64
+ /** Acceptance criteria lines. */
65
+ acceptance?: string[];
66
+ /** Free-form notes. */
67
+ notes?: string[];
68
+ /** Classification labels. */
69
+ labels?: string[];
70
+ /** Complexity sizing (small, medium, large). */
71
+ size?: string | null;
72
+ /** Epic lifecycle state for epic-type tasks. */
73
+ epicLifecycle?: string | null;
74
+ /** When true, prevents auto-completion on child task completion. */
75
+ noAutoComplete?: boolean | null;
76
+ /** Verification gate state and round tracking. */
77
+ verification?: import('@cleocode/contracts').TaskVerification | null;
78
+ /** How the task was created (manual, decomposition, import). */
79
+ origin?: string | null;
80
+ /** Agent or user who created the task. */
81
+ createdBy?: string | null;
82
+ /** Agent or user who validated the task. */
83
+ validatedBy?: string | null;
84
+ /** Agent or user who tested the task. */
85
+ testedBy?: string | null;
86
+ /** Current lifecycle governance state. */
87
+ lifecycleState?: string | null;
88
+ /** History of lifecycle validation transitions. */
89
+ validationHistory?: Array<Record<string, unknown>>;
90
+ /** Task IDs that are blocking this task. */
91
+ blockedBy?: string[];
92
+ /** Reason provided when the task was cancelled. */
93
+ cancellationReason?: string;
94
+ /** RCASD-IVTR+C pipeline stage (T060). */
95
+ pipelineStage?: string | null;
96
+ }
97
+ /**
98
+ * Minimal task representation for find results.
99
+ *
100
+ * @remarks
101
+ * Used by `taskFind` to return lightweight task records that minimize
102
+ * context consumption for agent discovery operations.
103
+ */
104
+ export interface MinimalTaskRecord {
105
+ /** Unique task identifier. */
106
+ id: string;
107
+ /** Short summary of the task. */
108
+ title: string;
109
+ /** Current status. */
110
+ status: string;
111
+ /** Priority level. */
112
+ priority: string;
113
+ /** Parent task ID, or null for root tasks. */
114
+ parentId?: string | null;
115
+ }
116
+ export type { CompactTask } from '@cleocode/core/internal';
117
+ export type { EngineResult } from './_error.js';
118
+ /**
119
+ * Get a single task by ID.
120
+ *
121
+ * @remarks
122
+ * Fetches the full task record from the data accessor and converts it
123
+ * to the backward-compatible TaskRecord format.
124
+ *
125
+ * @param projectRoot - Absolute path to the project root
126
+ * @param taskId - Task identifier (e.g. "T001")
127
+ * @returns EngineResult containing the task record
128
+ *
129
+ * @example
130
+ * ```typescript
131
+ * const result = await taskShow('/project', 'T42');
132
+ * if (result.success) console.log(result.data.task.title);
133
+ * ```
134
+ *
135
+ * @task T4657
136
+ * @epic T4654
137
+ */
138
+ export declare function taskShow(projectRoot: string, taskId: string): Promise<EngineResult<{
139
+ task: TaskRecord;
140
+ }>>;
141
+ /**
142
+ * List tasks with optional filters.
143
+ *
144
+ * @remarks
145
+ * Supports filtering by parent, status, priority, type, phase, and label.
146
+ * When `compact` is true, returns lightweight CompactTask records.
147
+ * Results are paginated via `limit` and `offset` parameters.
148
+ *
149
+ * @param projectRoot - Absolute path to the project root
150
+ * @param params - Optional filter, pagination, and format parameters
151
+ * @returns EngineResult with task array, total count, and filtered count
152
+ *
153
+ * @example
154
+ * ```typescript
155
+ * const result = await taskList('/project', { status: 'active', limit: 10 });
156
+ * ```
157
+ *
158
+ * @task T4657
159
+ * @epic T4654
160
+ */
161
+ export declare function taskList(projectRoot: string, params?: {
162
+ parent?: string;
163
+ status?: string;
164
+ priority?: string;
165
+ type?: string;
166
+ phase?: string;
167
+ label?: string;
168
+ children?: boolean;
169
+ limit?: number;
170
+ offset?: number;
171
+ compact?: boolean;
172
+ }): Promise<EngineResult<{
173
+ tasks: TaskRecord[] | CompactTask[];
174
+ total: number;
175
+ filtered: number;
176
+ }>>;
177
+ /**
178
+ * Fuzzy search tasks by title/description/ID.
179
+ *
180
+ * @remarks
181
+ * Returns minimal task records to keep context consumption low.
182
+ * Supports exact matching, status filtering, and archive inclusion.
183
+ *
184
+ * @param projectRoot - Absolute path to the project root
185
+ * @param query - Search string to match against title, description, or ID
186
+ * @param limit - Maximum number of results (defaults to 20)
187
+ * @param options - Additional search options
188
+ * @returns EngineResult with matching tasks and total count
189
+ *
190
+ * @example
191
+ * ```typescript
192
+ * const result = await taskFind('/project', 'authentication', 10);
193
+ * ```
194
+ *
195
+ * @task T4657
196
+ * @epic T4654
197
+ */
198
+ export declare function taskFind(projectRoot: string, query: string, limit?: number, options?: {
199
+ id?: string;
200
+ exact?: boolean;
201
+ status?: string;
202
+ includeArchive?: boolean;
203
+ offset?: number;
204
+ }): Promise<EngineResult<{
205
+ results: MinimalTaskRecord[];
206
+ total: number;
207
+ }>>;
208
+ /**
209
+ * Check if a task exists.
210
+ *
211
+ * @remarks
212
+ * Returns `{ exists: true }` if the task is found, `{ exists: false }` otherwise.
213
+ * Never fails -- catches all errors and returns false.
214
+ *
215
+ * @param projectRoot - Absolute path to the project root
216
+ * @param taskId - Task identifier to check
217
+ * @returns EngineResult with exists flag and the queried taskId
218
+ *
219
+ * @example
220
+ * ```typescript
221
+ * const result = await taskExists('/project', 'T42');
222
+ * if (result.success && result.data.exists) { console.log('exists'); }
223
+ * ```
224
+ *
225
+ *
226
+ @task
227
+ T4657
228
+ * @epic T4654
229
+ */
230
+ export declare function taskExists(projectRoot: string, taskId: string): Promise<EngineResult<{
231
+ exists: boolean;
232
+ taskId: string;
233
+ }>>;
234
+ /**
235
+ * Create a new task.
236
+ *
237
+ * @remarks
238
+ * Validates hierarchy depth, sibling limits, parent type, and circular
239
+ * references before creating the task. Supports dry-run mode for preview.
240
+ *
241
+ * @param projectRoot - Absolute path to the project root
242
+ * @param params - Task creation parameters
243
+ * @returns EngineResult with the created task record and duplicate flag
244
+ *
245
+ * @example
246
+ * ```typescript
247
+ * const result = await taskCreate('/project', {
248
+ * title: 'Implement auth',
249
+ * description: 'Add JWT-based authentication',
250
+ * priority: 'high',
251
+ * });
252
+ * ```
253
+ */
254
+ export declare function taskCreate(projectRoot: string, params: {
255
+ title: string;
256
+ description: string;
257
+ parent?: string;
258
+ depends?: string[];
259
+ priority?: string;
260
+ labels?: string[];
261
+ type?: string;
262
+ phase?: string;
263
+ size?: string;
264
+ acceptance?: string[];
265
+ notes?: string;
266
+ files?: string[];
267
+ dryRun?: boolean;
268
+ }): Promise<EngineResult<{
269
+ task: TaskRecord;
270
+ duplicate: boolean;
271
+ dryRun?: boolean;
272
+ }>>;
273
+ /**
274
+ * Update a task's fields.
275
+ *
276
+ * @remarks
277
+ * Supports atomic label and dependency operations via addLabels/removeLabels
278
+ * and addDepends/removeDepends. Returns the updated task and a list of
279
+ * changed fields.
280
+ *
281
+ * @param projectRoot - Absolute path to the project root
282
+ * @param taskId - Task identifier to update
283
+ * @param updates - Fields to update (only provided fields are changed)
284
+ * @returns EngineResult with the updated task record and list of changes
285
+ *
286
+ * @example
287
+ * ```typescript
288
+ * const result = await taskUpdate('/project', 'T42', { status: 'active' });
289
+ * ```
290
+ */
291
+ export declare function taskUpdate(projectRoot: string, taskId: string, updates: {
292
+ title?: string;
293
+ description?: string;
294
+ status?: string;
295
+ priority?: string;
296
+ notes?: string;
297
+ labels?: string[];
298
+ addLabels?: string[];
299
+ removeLabels?: string[];
300
+ depends?: string[];
301
+ addDepends?: string[];
302
+ removeDepends?: string[];
303
+ acceptance?: string[];
304
+ parent?: string | null;
305
+ type?: string;
306
+ size?: string;
307
+ }): Promise<EngineResult<{
308
+ task: TaskRecord;
309
+ changes?: string[];
310
+ }>>;
311
+ /**
312
+ * Complete a task (set status to done).
313
+ *
314
+ * @remarks
315
+ * May trigger auto-completion of parent tasks and unblocking of dependent
316
+ * tasks. Maps core exit codes to engine error codes for structured error reporting.
317
+ *
318
+ * @param projectRoot - Absolute path to the project root
319
+ * @param taskId - Task identifier to complete
320
+ * @param notes - Optional completion notes
321
+ * @returns EngineResult with the completed task, auto-completed parents, and unblocked tasks
322
+ *
323
+ * @example
324
+ * ```typescript
325
+ * const result = await taskComplete('/project', 'T42', 'All tests passing');
326
+ * ```
327
+ */
328
+ export declare function taskComplete(projectRoot: string, taskId: string, notes?: string): Promise<EngineResult<{
329
+ task: TaskRecord;
330
+ autoCompleted?: string[];
331
+ unblockedTasks?: Array<{
332
+ id: string;
333
+ title: string;
334
+ }>;
335
+ }>>;
336
+ /**
337
+ * Delete a task.
338
+ *
339
+ * @remarks
340
+ * When `force` is true, cascade-deletes child tasks. Otherwise, returns
341
+ * E_HAS_CHILDREN if the task has children.
342
+ *
343
+ * @param projectRoot - Absolute path to the project root
344
+ * @param taskId - Task identifier to delete
345
+ * @param force - When true, enables cascade deletion of children
346
+ * @returns EngineResult with the deleted task and optional cascade info
347
+ *
348
+ * @example
349
+ * ```typescript
350
+ * const result = await taskDelete('/project', 'T42', true);
351
+ * ```
352
+ */
353
+ export declare function taskDelete(projectRoot: string, taskId: string, force?: boolean): Promise<EngineResult<{
354
+ deletedTask: TaskRecord;
355
+ deleted: boolean;
356
+ cascadeDeleted?: string[];
357
+ }>>;
358
+ /**
359
+ * Archive completed tasks.
360
+ * Moves done/cancelled tasks from active task data to archive.
361
+ *
362
+ * @remarks
363
+ * Archives a specific task by ID, or all tasks completed before a given date.
364
+ * Archived tasks are no longer returned by default queries.
365
+ *
366
+ * @param projectRoot - Absolute path to the project root
367
+ * @param taskId - Optional specific task ID to archive
368
+ * @param before - Optional ISO date string; archives tasks completed before this date
369
+ * @returns EngineResult with count and list of archived task IDs
370
+ *
371
+ * @example
372
+ * ```typescript
373
+ * const result = await taskArchive('/project', undefined, '2026-01-01');
374
+ * ```
375
+ */
376
+ export declare function taskArchive(projectRoot: string, taskId?: string, before?: string): Promise<EngineResult<{
377
+ archivedCount: number;
378
+ archivedTasks: Array<{
379
+ id: string;
380
+ }>;
381
+ }>>;
382
+ /**
383
+ * Suggest next task to work on based on priority, phase alignment, age, and dependency readiness.
384
+ *
385
+ * @remarks
386
+ * Scores all pending tasks and returns ranked suggestions. When `explain`
387
+ * is true, includes per-task scoring reasons in the response.
388
+ *
389
+ * @param projectRoot - Absolute path to the project root
390
+ * @param params - Optional count limit and explain flag
391
+ * @returns EngineResult with scored suggestions and total candidate count
392
+ *
393
+ * @example
394
+ * ```typescript
395
+ * const result = await taskNext('/project', { count: 3, explain: true });
396
+ * ```
397
+ *
398
+ * @task T4657
399
+ * @task T4790
400
+ * @epic T4654
401
+ */
402
+ export declare function taskNext(projectRoot: string, params?: {
403
+ count?: number;
404
+ explain?: boolean;
405
+ }): Promise<EngineResult<{
406
+ suggestions: Array<{
407
+ id: string;
408
+ title: string;
409
+ priority: string;
410
+ phase: string | null;
411
+ score: number;
412
+ reasons?: string[];
413
+ }>;
414
+ totalCandidates: number;
415
+ }>>;
416
+ /**
417
+ * Show blocked tasks and analyze blocking chains.
418
+ *
419
+ * @remarks
420
+ * Identifies all blocked tasks, traces their blocking chains, and highlights
421
+ * critical blockers (tasks that block the most other tasks).
422
+ *
423
+ * @param projectRoot - Absolute path to the project root
424
+ * @param params - Optional analysis and limit parameters
425
+ * @returns EngineResult with blocked tasks, critical blockers, and summary
426
+ *
427
+ * @example
428
+ * ```typescript
429
+ * const result = await taskBlockers('/project', { analyze: true });
430
+ * ```
431
+ *
432
+ * @task T4657
433
+ * @task T4790
434
+ * @epic T4654
435
+ */
436
+ export declare function taskBlockers(projectRoot: string, params?: {
437
+ analyze?: boolean;
438
+ limit?: number;
439
+ }): Promise<EngineResult<{
440
+ blockedTasks: Array<{
441
+ id: string;
442
+ title: string;
443
+ status: string;
444
+ depends?: string[];
445
+ blockingChain: string[];
446
+ }>;
447
+ criticalBlockers: Array<{
448
+ id: string;
449
+ title: string;
450
+ blocksCount: number;
451
+ }>;
452
+ summary: string;
453
+ total: number;
454
+ limit: number;
455
+ }>>;
456
+ /**
457
+ * Build hierarchy tree.
458
+ *
459
+ * @remarks
460
+ * Returns a tree structure of tasks rooted at the given task ID, or
461
+ * the full project tree when no task ID is specified.
462
+ *
463
+ * @param projectRoot - Absolute path to the project root
464
+ * @param taskId - Optional root task ID for subtree
465
+ * @returns EngineResult with the hierarchical tree data
466
+ *
467
+ * @example
468
+ * ```typescript
469
+ * const result = await taskTree('/project', 'T1');
470
+ * ```
471
+ *
472
+ * @task T4657
473
+ * @task T4790
474
+ * @epic T4654
475
+ */
476
+ export declare function taskTree(projectRoot: string, taskId?: string): Promise<EngineResult>;
477
+ /**
478
+ * Show dependencies for a task - both what it depends on and what depends on it.
479
+ *
480
+ * @remarks
481
+ * Returns bidirectional dependency information including unresolved deps
482
+ * and a ready flag indicating whether all dependencies are satisfied.
483
+ *
484
+ * @param projectRoot - Absolute path to the project root
485
+ * @param taskId - Task identifier to inspect
486
+ * @returns EngineResult with dependency information in both directions
487
+ *
488
+ * @example
489
+ * ```typescript
490
+ * const result = await taskDeps('/project', 'T42');
491
+ * ```
492
+ *
493
+ * @task T4657
494
+ * @task T4790
495
+ * @epic T4654
496
+ */
497
+ export declare function taskDeps(projectRoot: string, taskId: string): Promise<EngineResult<{
498
+ taskId: string;
499
+ dependsOn: Array<{
500
+ id: string;
501
+ title: string;
502
+ status: string;
503
+ }>;
504
+ dependedOnBy: Array<{
505
+ id: string;
506
+ title: string;
507
+ status: string;
508
+ }>;
509
+ unresolvedDeps: string[];
510
+ allDepsReady: boolean;
511
+ }>>;
512
+ /**
513
+ * Show task relations (existing relates entries).
514
+ *
515
+ * @remarks
516
+ * Lists all `relates` entries for a given task, including the relationship
517
+ * type and optional reason.
518
+ *
519
+ * @param projectRoot - Absolute path to the project root
520
+ * @param taskId - Task identifier to inspect
521
+ * @returns EngineResult with relations array and count
522
+ *
523
+ * @example
524
+ * ```typescript
525
+ * const result = await taskRelates('/project', 'T42');
526
+ * ```
527
+ *
528
+ * @task T4657
529
+ * @task T4790
530
+ * @epic T4654
531
+ */
532
+ export declare function taskRelates(projectRoot: string, taskId: string): Promise<EngineResult<{
533
+ taskId: string;
534
+ relations: Array<{
535
+ taskId: string;
536
+ type: string;
537
+ reason?: string;
538
+ }>;
539
+ count: number;
540
+ }>>;
541
+ /**
542
+ * Add a relation between two tasks.
543
+ *
544
+ * @remarks
545
+ * Valid relation types: related, blocks, duplicates, absorbs, fixes, extends, supersedes.
546
+ *
547
+ * @param projectRoot - Absolute path to the project root
548
+ * @param taskId - Source task identifier
549
+ * @param relatedId - Target task identifier
550
+ * @param type - Relation type (e.g. "blocks", "related")
551
+ * @param reason - Optional explanation for the relation
552
+ * @returns EngineResult confirming the relation was added
553
+ *
554
+ * @example
555
+ * ```typescript
556
+ * const result = await taskRelatesAdd('/project', 'T42', 'T43', 'blocks', 'Needs auth first');
557
+ * ```
558
+ *
559
+ * @task T4790
560
+ */
561
+ export declare function taskRelatesAdd(projectRoot: string, taskId: string, relatedId: string, type: string, reason?: string): Promise<EngineResult<{
562
+ from: string;
563
+ to: string;
564
+ type: string;
565
+ added: boolean;
566
+ }>>;
567
+ /**
568
+ * Analyze a task for description quality, missing fields, and dependency health.
569
+ *
570
+ * @remarks
571
+ * When no task ID is provided, analyzes all tasks to identify bottlenecks,
572
+ * leverage opportunities, and overall project health metrics.
573
+ *
574
+ * @param projectRoot - Absolute path to the project root
575
+ * @param taskId - Optional specific task to analyze
576
+ * @param params - Optional analysis parameters
577
+ * @returns EngineResult with recommended task, bottlenecks, tiers, and metrics
578
+ *
579
+ * @example
580
+ * ```typescript
581
+ * const result = await taskAnalyze('/project');
582
+ * ```
583
+ *
584
+ * @task T4657
585
+ * @task T4790
586
+ * @epic T4654
587
+ */
588
+ export declare function taskAnalyze(projectRoot: string, taskId?: string, params?: {
589
+ tierLimit?: number;
590
+ }): Promise<EngineResult<{
591
+ recommended: {
592
+ id: string;
593
+ title: string;
594
+ leverage: number;
595
+ reason: string;
596
+ } | null;
597
+ bottlenecks: Array<{
598
+ id: string;
599
+ title: string;
600
+ blocksCount: number;
601
+ }>;
602
+ tiers: {
603
+ critical: Array<{
604
+ id: string;
605
+ title: string;
606
+ leverage: number;
607
+ }>;
608
+ high: Array<{
609
+ id: string;
610
+ title: string;
611
+ leverage: number;
612
+ }>;
613
+ normal: Array<{
614
+ id: string;
615
+ title: string;
616
+ leverage: number;
617
+ }>;
618
+ };
619
+ metrics: {
620
+ totalTasks: number;
621
+ actionable: number;
622
+ blocked: number;
623
+ avgLeverage: number;
624
+ };
625
+ tierLimit: number;
626
+ }>>;
627
+ /**
628
+ * Predict downstream impact of a free-text change description.
629
+ *
630
+ * Delegates to {@link predictImpact} from the intelligence module.
631
+ * Uses keyword matching against task titles/descriptions, then traces
632
+ * the reverse dependency graph for transitive effects.
633
+ *
634
+ * @remarks
635
+ * The impact report includes directly affected tasks, transitively
636
+ * affected tasks (through the dependency graph), and a severity assessment.
637
+ *
638
+ * @param projectRoot - Project root directory
639
+ * @param change - Free-text description of the proposed change
640
+ * @param matchLimit - Maximum seed tasks to match (default: 5)
641
+ * @returns Impact prediction report
642
+ *
643
+ * @example
644
+ * ```typescript
645
+ * const result = await taskImpact('/project', 'Refactor authentication module');
646
+ * ```
647
+ *
648
+ * @task T043
649
+ */
650
+ export declare function taskImpact(projectRoot: string, change: string, matchLimit?: number): Promise<EngineResult<ImpactReport>>;
651
+ /**
652
+ * Restore a cancelled task back to pending.
653
+ *
654
+ * @remarks
655
+ * When cascade is true, also restores cancelled children.
656
+ *
657
+ * @param projectRoot - Absolute path to the project root
658
+ * @param taskId - Task identifier to restore
659
+ * @param params - Optional cascade and notes options
660
+ * @returns EngineResult with restored task IDs and count
661
+ *
662
+ * @example
663
+ * ```typescript
664
+ * const result = await taskRestore('/project', 'T42', { cascade: true });
665
+ * ```
666
+ *
667
+ * @task T4790
668
+ */
669
+ export declare function taskRestore(projectRoot: string, taskId: string, params?: {
670
+ cascade?: boolean;
671
+ notes?: string;
672
+ }): Promise<EngineResult<{
673
+ task: string;
674
+ restored: string[];
675
+ count: number;
676
+ }>>;
677
+ /**
678
+ * Move an archived task back to active task data with status 'done' (or specified status).
679
+ *
680
+ * @remarks
681
+ * By default restores with status 'done'. Use `preserveStatus` to keep
682
+ * the original status, or `status` to set a specific status.
683
+ *
684
+ * @param projectRoot - Absolute path to the project root
685
+ * @param taskId - Archived task identifier to restore
686
+ * @param params - Optional status override parameters
687
+ * @returns EngineResult with the unarchived task info
688
+ *
689
+ * @example
690
+ * ```typescript
691
+ * const result = await taskUnarchive('/project', 'T42', { status: 'pending' });
692
+ * ```
693
+ *
694
+ * @task T4790
695
+ */
696
+ export declare function taskUnarchive(projectRoot: string, taskId: string, params?: {
697
+ status?: string;
698
+ preserveStatus?: boolean;
699
+ }): Promise<EngineResult<{
700
+ task: string;
701
+ unarchived: boolean;
702
+ title: string;
703
+ status: string;
704
+ }>>;
705
+ /**
706
+ * Change task position within its sibling group.
707
+ *
708
+ * @remarks
709
+ * Reorders a task to the specified zero-based position among its siblings.
710
+ *
711
+ * @param projectRoot - Absolute path to the project root
712
+ * @param taskId - Task identifier to reorder
713
+ * @param position - Target zero-based position
714
+ * @returns EngineResult with new position and total siblings
715
+ *
716
+ * @example
717
+ * ```typescript
718
+ * const result = await taskReorder('/project', 'T42', 0); // move to first
719
+ * ```
720
+ *
721
+ * @task T4790
722
+ */
723
+ export declare function taskReorder(projectRoot: string, taskId: string, position: number): Promise<EngineResult<{
724
+ task: string;
725
+ reordered: boolean;
726
+ newPosition: number;
727
+ totalSiblings: number;
728
+ }>>;
729
+ /**
730
+ * Move task under a different parent.
731
+ *
732
+ * @remarks
733
+ * Pass null as `newParentId` to promote the task to a root-level task.
734
+ * Validates hierarchy depth and circular reference constraints.
735
+ *
736
+ * @param projectRoot - Absolute path to the project root
737
+ * @param taskId - Task identifier to move
738
+ * @param newParentId - New parent task ID, or null for root
739
+ * @returns EngineResult with old and new parent information
740
+ *
741
+ * @example
742
+ * ```typescript
743
+ * const result = await taskReparent('/project', 'T42', 'T1');
744
+ * ```
745
+ *
746
+ * @task T4790
747
+ */
748
+ export declare function taskReparent(projectRoot: string, taskId: string, newParentId: string | null): Promise<EngineResult<{
749
+ task: string;
750
+ reparented: boolean;
751
+ oldParent: string | null;
752
+ newParent: string | null;
753
+ newType?: string;
754
+ }>>;
755
+ /**
756
+ * Promote a subtask to task or task to root (remove parent).
757
+ *
758
+ * @remarks
759
+ * Removes the parent reference and may change the task type from subtask to task.
760
+ *
761
+ * @param projectRoot - Absolute path to the project root
762
+ * @param taskId - Task identifier to promote
763
+ * @returns EngineResult with promotion details
764
+ *
765
+ * @example
766
+ * ```typescript
767
+ * const result = await taskPromote('/project', 'T42');
768
+ * ```
769
+ *
770
+ * @task T4790
771
+ */
772
+ export declare function taskPromote(projectRoot: string, taskId: string): Promise<EngineResult<{
773
+ task: string;
774
+ promoted: boolean;
775
+ previousParent: string | null;
776
+ typeChanged: boolean;
777
+ }>>;
778
+ /**
779
+ * Reopen a completed task (set status back to pending).
780
+ *
781
+ * @remarks
782
+ * Only works on tasks with status 'done'. Optionally sets a different
783
+ * target status and records a reason for reopening.
784
+ *
785
+ * @param projectRoot - Absolute path to the project root
786
+ * @param taskId - Task identifier to reopen
787
+ * @param params - Optional target status and reason
788
+ * @returns EngineResult with reopen details including previous and new status
789
+ *
790
+ * @example
791
+ * ```typescript
792
+ * const result = await taskReopen('/project', 'T42', { reason: 'Tests regressed' });
793
+ * ```
794
+ *
795
+ * @task T4790
796
+ */
797
+ export declare function taskReopen(projectRoot: string, taskId: string, params?: {
798
+ status?: string;
799
+ reason?: string;
800
+ }): Promise<EngineResult<{
801
+ task: string;
802
+ reopened: boolean;
803
+ previousStatus: string;
804
+ newStatus: string;
805
+ }>>;
806
+ /**
807
+ * Cancel a task (soft terminal state -- reversible via restore).
808
+ *
809
+ * @remarks
810
+ * Sets the task status to cancelled with an optional reason. The task can
811
+ * be restored later via {@link taskRestore}.
812
+ *
813
+ * @param projectRoot - Absolute path to the project root
814
+ * @param taskId - Task identifier to cancel
815
+ * @param reason - Optional cancellation reason
816
+ * @returns EngineResult with cancellation details
817
+ *
818
+ * @example
819
+ * ```typescript
820
+ * const result = await taskCancel('/project', 'T42', 'No longer needed');
821
+ * ```
822
+ *
823
+ * @task T4529
824
+ */
825
+ export declare function taskCancel(projectRoot: string, taskId: string, reason?: string): Promise<EngineResult<{
826
+ task: string;
827
+ cancelled: boolean;
828
+ reason?: string;
829
+ cancelledAt: string;
830
+ }>>;
831
+ /**
832
+ * Deterministic complexity scoring from task metadata.
833
+ *
834
+ * @remarks
835
+ * Produces a size estimate (small/medium/large) based on dependency depth,
836
+ * subtask count, file count, and other structural factors.
837
+ *
838
+ * @param projectRoot - Absolute path to the project root
839
+ * @param params - Parameters including the task ID to estimate
840
+ * @returns EngineResult with size, score, factors, and structural metrics
841
+ *
842
+ * @example
843
+ * ```typescript
844
+ * const result = await taskComplexityEstimate('/project', { taskId: 'T42' });
845
+ * ```
846
+ *
847
+ * @task T4657
848
+ * @task T4790
849
+ * @epic T4654
850
+ */
851
+ export declare function taskComplexityEstimate(projectRoot: string, params: {
852
+ taskId: string;
853
+ }): Promise<EngineResult<{
854
+ size: 'small' | 'medium' | 'large';
855
+ score: number;
856
+ factors: ComplexityFactor[];
857
+ dependencyDepth: number;
858
+ subtaskCount: number;
859
+ fileCount: number;
860
+ }>>;
861
+ /**
862
+ * List dependencies for a task in a given direction.
863
+ * @task T4657
864
+ * @task T4790
865
+ * @epic T4654
866
+ */
867
+ export declare function taskDepends(projectRoot: string, taskId: string, direction?: 'upstream' | 'downstream' | 'both', tree?: boolean): Promise<EngineResult>;
868
+ /**
869
+ * Overview of all dependencies across the project.
870
+ * @task T5157
871
+ */
872
+ export declare function taskDepsOverview(projectRoot: string): Promise<EngineResult<{
873
+ totalTasks: number;
874
+ tasksWithDeps: number;
875
+ blockedTasks: Array<{
876
+ id: string;
877
+ title: string;
878
+ status: string;
879
+ unblockedBy: string[];
880
+ }>;
881
+ readyTasks: Array<{
882
+ id: string;
883
+ title: string;
884
+ status: string;
885
+ }>;
886
+ validation: {
887
+ valid: boolean;
888
+ errorCount: number;
889
+ warningCount: number;
890
+ };
891
+ }>>;
892
+ /**
893
+ * Detect circular dependencies across the project.
894
+ * @task T5157
895
+ */
896
+ export declare function taskDepsCycles(projectRoot: string): Promise<EngineResult<{
897
+ hasCycles: boolean;
898
+ cycles: Array<{
899
+ path: string[];
900
+ tasks: Array<{
901
+ id: string;
902
+ title: string;
903
+ }>;
904
+ }>;
905
+ }>>;
906
+ /**
907
+ * Compute task statistics, optionally scoped to an epic.
908
+ * @task T4657
909
+ * @task T4790
910
+ * @epic T4654
911
+ */
912
+ export declare function taskStats(projectRoot: string, epicId?: string): Promise<EngineResult<{
913
+ total: number;
914
+ pending: number;
915
+ active: number;
916
+ blocked: number;
917
+ done: number;
918
+ cancelled: number;
919
+ byPriority: Record<string, number>;
920
+ byType: Record<string, number>;
921
+ }>>;
922
+ /**
923
+ * Export tasks as JSON or CSV.
924
+ * @task T4657
925
+ * @task T4790
926
+ * @epic T4654
927
+ */
928
+ export declare function taskExport(projectRoot: string, params?: {
929
+ format?: 'json' | 'csv';
930
+ status?: string;
931
+ parent?: string;
932
+ }): Promise<EngineResult<unknown>>;
933
+ /**
934
+ * Get task history from the log file.
935
+ * @task T4657
936
+ * @task T4790
937
+ * @epic T4654
938
+ */
939
+ export declare function taskHistory(projectRoot: string, taskId: string, limit?: number): Promise<EngineResult<Array<Record<string, unknown>>>>;
940
+ /**
941
+ * Lint tasks for common issues.
942
+ * @task T4657
943
+ * @task T4790
944
+ * @epic T4654
945
+ */
946
+ export declare function taskLint(projectRoot: string, taskId?: string): Promise<EngineResult<Array<{
947
+ taskId: string;
948
+ severity: 'error' | 'warning';
949
+ rule: string;
950
+ message: string;
951
+ }>>>;
952
+ /**
953
+ * Validate multiple tasks at once.
954
+ * @task T4657
955
+ * @task T4790
956
+ * @epic T4654
957
+ */
958
+ export declare function taskBatchValidate(projectRoot: string, taskIds: string[], checkMode?: 'full' | 'quick'): Promise<EngineResult<{
959
+ results: Record<string, Array<{
960
+ severity: 'error' | 'warning';
961
+ rule: string;
962
+ message: string;
963
+ }>>;
964
+ summary: {
965
+ totalTasks: number;
966
+ validTasks: number;
967
+ invalidTasks: number;
968
+ totalIssues: number;
969
+ errors: number;
970
+ warnings: number;
971
+ };
972
+ }>>;
973
+ /**
974
+ * Import tasks from a JSON source string or export package.
975
+ * @task T4790
976
+ */
977
+ export declare function taskImport(projectRoot: string, source: string, overwrite?: boolean): Promise<EngineResult<{
978
+ imported: number;
979
+ skipped: number;
980
+ errors: string[];
981
+ remapTable?: Record<string, string>;
982
+ }>>;
983
+ /**
984
+ * Compute a ranked plan: in-progress epics, ready tasks, blockers, bugs.
985
+ * @task T4815
986
+ */
987
+ export declare function taskPlan(projectRoot: string): Promise<EngineResult>;
988
+ /**
989
+ * Find related tasks using semantic search or keyword matching.
990
+ * @task T5672
991
+ */
992
+ export declare function taskRelatesFind(projectRoot: string, taskId: string, params?: {
993
+ mode?: 'suggest' | 'discover';
994
+ threshold?: number;
995
+ }): Promise<EngineResult<Record<string, unknown>>>;
996
+ /**
997
+ * List all labels used in tasks.
998
+ * @task T5672
999
+ */
1000
+ export declare function taskLabelList(projectRoot: string): Promise<EngineResult<{
1001
+ labels: unknown[];
1002
+ count: number;
1003
+ }>>;
1004
+ /**
1005
+ * Show tasks associated with a label.
1006
+ * @task T5672
1007
+ */
1008
+ export declare function taskLabelShow(projectRoot: string, label: string): Promise<EngineResult<Record<string, unknown>>>;
1009
+ /**
1010
+ * Reconcile external tasks with CLEO as SSoT.
1011
+ */
1012
+ export declare function taskSyncReconcile(projectRoot: string, params: {
1013
+ providerId: string;
1014
+ externalTasks: Array<import('@cleocode/contracts').ExternalTask>;
1015
+ dryRun?: boolean;
1016
+ conflictPolicy?: string;
1017
+ defaultPhase?: string;
1018
+ defaultLabels?: string[];
1019
+ }): Promise<EngineResult<import('@cleocode/contracts').ReconcileResult>>;
1020
+ /**
1021
+ * List external task links by provider or task ID.
1022
+ */
1023
+ export declare function taskSyncLinks(projectRoot: string, params?: {
1024
+ providerId?: string;
1025
+ taskId?: string;
1026
+ }): Promise<EngineResult<{
1027
+ links: import('@cleocode/contracts').ExternalTaskLink[];
1028
+ count: number;
1029
+ }>>;
1030
+ /**
1031
+ * Remove all external task links for a provider.
1032
+ */
1033
+ export declare function taskSyncLinksRemove(projectRoot: string, providerId: string): Promise<EngineResult<{
1034
+ providerId: string;
1035
+ removed: number;
1036
+ }>>;
1037
+ /**
1038
+ * Atomically claim a task for an agent.
1039
+ *
1040
+ * Fails if the task is already claimed by a different agent.
1041
+ * No-op if the task is already claimed by the same agent (idempotent).
1042
+ */
1043
+ export declare function taskClaim(projectRoot: string, taskId: string, agentId: string): Promise<EngineResult<{
1044
+ taskId: string;
1045
+ agentId: string;
1046
+ }>>;
1047
+ /**
1048
+ * Release an agent's claim on a task, setting assignee to null.
1049
+ *
1050
+ * No-op if the task is not currently claimed.
1051
+ */
1052
+ export declare function taskUnclaim(projectRoot: string, taskId: string): Promise<EngineResult<{
1053
+ taskId: string;
1054
+ }>>;
1055
+ //# sourceMappingURL=task-engine.d.ts.map