@cleocode/cleo 2026.10.3 → 2026.10.4

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 (307) hide show
  1. package/bin/cleo.js +11 -1
  2. package/dist/cli/adapter-LVXHFBC4.js +158 -0
  3. package/dist/cli/add-WUAV7LDT.js +443 -0
  4. package/dist/cli/add-batch-U2DLKAQC.js +163 -0
  5. package/dist/cli/admin-I7BQYVZD.js +340 -0
  6. package/dist/cli/adr-K2THMQBS.js +171 -0
  7. package/dist/cli/agent-WQ6XY2DW.js +2366 -0
  8. package/dist/cli/agent-outputs-BJIYLVTU.js +84 -0
  9. package/dist/cli/analyze-PGQZWGOC.js +48 -0
  10. package/dist/cli/archive-5LZPF7C3.js +64 -0
  11. package/dist/cli/archive-stats-U6CYC6JM.js +100 -0
  12. package/dist/cli/attention-SOURWCNI.js +167 -0
  13. package/dist/cli/audit-FO2Y4LH2.js +122 -0
  14. package/dist/cli/auth-ED7TAIXI.js +491 -0
  15. package/dist/cli/backfill-32TRAYRD.js +156 -0
  16. package/dist/cli/backup-LEJMZJKL.js +587 -0
  17. package/dist/cli/backup-inspect-6HPLUEI2.js +26 -0
  18. package/dist/cli/backup-recover-2BTYBZU2.js +29 -0
  19. package/dist/cli/blockers-5JULUJTV.js +54 -0
  20. package/dist/cli/brain-273N3FW4.js +400 -0
  21. package/dist/cli/briefing-7H6OLECX.js +212 -0
  22. package/dist/cli/caamp-MFQVN6VU.js +181 -0
  23. package/dist/cli/cancel-SCMJTXZB.js +84 -0
  24. package/dist/cli/canon-NPF5RODM.js +142 -0
  25. package/dist/cli/canon-docs-2GTOLF7Y.js +26 -0
  26. package/dist/cli/cant-46XCUP4P.js +239 -0
  27. package/dist/cli/changeset-32NMBGG2.js +248 -0
  28. package/dist/cli/check-RWJLBCI2.js +907 -0
  29. package/dist/cli/checkpoint-37HMMKD7.js +128 -0
  30. package/dist/cli/chunk-2JIJD2I7.js +108 -0
  31. package/dist/cli/chunk-37NU2XDP.js +171 -0
  32. package/dist/cli/chunk-3IOQVUO7.js +17308 -0
  33. package/dist/cli/chunk-3PGH67MT.js +175 -0
  34. package/dist/cli/chunk-3ZO3M37V.js +1002 -0
  35. package/dist/cli/chunk-47JYZAMS.js +30 -0
  36. package/dist/cli/chunk-5J2VH3BC.js +66 -0
  37. package/dist/cli/chunk-5ZFFUFH7.js +92 -0
  38. package/dist/cli/chunk-6JSJNYH2.js +114 -0
  39. package/dist/cli/chunk-7INMKEAD.js +85 -0
  40. package/dist/cli/chunk-A2IUEIM5.js +278 -0
  41. package/dist/cli/chunk-AWCQH2W5.js +35 -0
  42. package/dist/cli/chunk-AYA6F4ZT.js +56 -0
  43. package/dist/cli/chunk-BCEXRFA2.js +76 -0
  44. package/dist/cli/chunk-BPEVD37G.js +124 -0
  45. package/dist/cli/chunk-C3B7C43W.js +16 -0
  46. package/dist/cli/chunk-DVTPIZJM.js +72 -0
  47. package/dist/cli/chunk-DYABOIHB.js +96 -0
  48. package/dist/cli/chunk-EBRZ76HS.js +51 -0
  49. package/dist/cli/chunk-EGOTK2HA.js +57 -0
  50. package/dist/cli/chunk-EOPQFCSR.js +148 -0
  51. package/dist/cli/chunk-FORFDPP5.js +288 -0
  52. package/dist/cli/chunk-GFGLLDXX.js +110 -0
  53. package/dist/cli/chunk-GH37QXW5.js +280 -0
  54. package/dist/cli/chunk-GZFVDR44.js +320 -0
  55. package/dist/cli/chunk-I3CRQQAD.js +225 -0
  56. package/dist/cli/chunk-J3ZFM3UQ.js +754 -0
  57. package/dist/cli/chunk-JNZJPIPJ.js +90 -0
  58. package/dist/cli/chunk-KHB52JNB.js +209 -0
  59. package/dist/cli/chunk-KJDWWQFY.js +46 -0
  60. package/dist/cli/chunk-LKNUA3SB.js +83 -0
  61. package/dist/cli/chunk-LVGIFMCV.js +163 -0
  62. package/dist/cli/chunk-LWQBJQSE.js +67 -0
  63. package/dist/cli/chunk-MNJRLSEQ.js +107 -0
  64. package/dist/cli/chunk-NRKWJLMS.js +91 -0
  65. package/dist/cli/chunk-NSHV2JNM.js +48 -0
  66. package/dist/cli/chunk-NWTATTEQ.js +210 -0
  67. package/dist/cli/chunk-OAPN46TC.js +89 -0
  68. package/dist/cli/chunk-OGV57L4J.js +59 -0
  69. package/dist/cli/chunk-OILHT47L.js +252 -0
  70. package/dist/cli/chunk-OPTEQKBB.js +258 -0
  71. package/dist/cli/chunk-PKKZPOOP.js +352 -0
  72. package/dist/cli/chunk-QA6T2LQ5.js +71 -0
  73. package/dist/cli/chunk-QFFQSKRC.js +4497 -0
  74. package/dist/cli/chunk-QPUY2HQZ.js +74 -0
  75. package/dist/cli/chunk-REUTEW3O.js +258 -0
  76. package/dist/cli/chunk-S24YI723.js +88 -0
  77. package/dist/cli/chunk-SXXOC6KZ.js +209 -0
  78. package/dist/cli/chunk-ULN4OKQQ.js +259 -0
  79. package/dist/cli/chunk-V5GBGOGM.js +46 -0
  80. package/dist/cli/chunk-VLEYOOPH.js +31 -0
  81. package/dist/cli/chunk-W33Q3FBH.js +66 -0
  82. package/dist/cli/chunk-W3JLYKKY.js +140 -0
  83. package/dist/cli/chunk-XRAX6XFP.js +48 -0
  84. package/dist/cli/chunk-YGKEECTI.js +78 -0
  85. package/dist/cli/chunk-YUZJI67I.js +108 -0
  86. package/dist/cli/chunk-YY66LFZF.js +29 -0
  87. package/dist/cli/chunk-ZBISIPCK.js +78 -0
  88. package/dist/cli/chunk-ZZTHTMQP.js +77 -0
  89. package/dist/cli/claim-KPENYHIQ.js +96 -0
  90. package/dist/cli/classify-DRVMCFQU.js +117 -0
  91. package/dist/cli/cli-T3CR7J57.js +48 -0
  92. package/dist/cli/cloud-PPQ4O5TX.js +565 -0
  93. package/dist/cli/cockpit-RZKLGYPN.js +790 -0
  94. package/dist/cli/code-Z5CTMVTD.js +178 -0
  95. package/dist/cli/complete-UBOCOBRB.js +34 -0
  96. package/dist/cli/complexity-BV2AGQRZ.js +56 -0
  97. package/dist/cli/compliance-32PD5Y47.js +276 -0
  98. package/dist/cli/conduit-VDKCH33F.js +307 -0
  99. package/dist/cli/config-I72JAXK4.js +516 -0
  100. package/dist/cli/consensus-LFILLSTK.js +121 -0
  101. package/dist/cli/context-XUUVFVTP.js +141 -0
  102. package/dist/cli/contribution-37NQ4N5R.js +111 -0
  103. package/dist/cli/curator-TFDXU2EX.js +139 -0
  104. package/dist/cli/current-C4SN5BWV.js +42 -0
  105. package/dist/cli/daemon-DV25JQ62.js +451 -0
  106. package/dist/cli/dash-TFU4RLQW.js +70 -0
  107. package/dist/cli/decide-5VPMNTSI.js +419 -0
  108. package/dist/cli/decompose-KOYEZNJL.js +77 -0
  109. package/dist/cli/decomposition-7OHUFIQN.js +121 -0
  110. package/dist/cli/delete-Q7YCAFY5.js +68 -0
  111. package/dist/cli/deps-6UZKLDGJ.js +463 -0
  112. package/dist/cli/detect-FERY35UL.js +45 -0
  113. package/dist/cli/detect-drift-UL2JTPUK.js +408 -0
  114. package/dist/cli/diagnostics-TI5QAZXR.js +132 -0
  115. package/dist/cli/docs-QI2PRN3T.js +3095 -0
  116. package/dist/cli/doctor-AX5TICQO.js +1253 -0
  117. package/dist/cli/doctor-ac-bindings-YPMYHU2G.js +26 -0
  118. package/dist/cli/doctor-acceptance-drift-PYNFGMKB.js +26 -0
  119. package/dist/cli/doctor-credentials-UZRIADKM.js +26 -0
  120. package/dist/cli/doctor-db-substrate-Q2TOYM2S.js +27 -0
  121. package/dist/cli/doctor-dep-cycles-GCVYZY6F.js +26 -0
  122. package/dist/cli/doctor-exodus-RO5SUTC2.js +26 -0
  123. package/dist/cli/doctor-exodus-residue-EM2AWQXP.js +26 -0
  124. package/dist/cli/doctor-fk-check-Q3FOLECE.js +26 -0
  125. package/dist/cli/doctor-global-delivery-TNOAQ3NP.js +26 -0
  126. package/dist/cli/doctor-heavy-command-hook-IO3QAQLG.js +26 -0
  127. package/dist/cli/doctor-legacy-backups-O2YH5VLS.js +26 -0
  128. package/dist/cli/doctor-legacy-reaper-VSEJEIFA.js +26 -0
  129. package/dist/cli/doctor-malformed-ids-LQ766V5K.js +26 -0
  130. package/dist/cli/doctor-manifest-rows-6FQDNHLH.js +26 -0
  131. package/dist/cli/doctor-memory-guard-J4PSEKB5.js +26 -0
  132. package/dist/cli/doctor-migrations-ONOH56YM.js +26 -0
  133. package/dist/cli/doctor-nexus-residency-FUQAX7PV.js +26 -0
  134. package/dist/cli/doctor-project-identity-GUDK3HYX.js +26 -0
  135. package/dist/cli/doctor-projects-7L3BNL4O.js +30 -0
  136. package/dist/cli/doctor-projects-registry-TEAVHFQU.js +26 -0
  137. package/dist/cli/doctor-release-readiness-IEGHX6SL.js +26 -0
  138. package/dist/cli/doctor-repair-NBONOSZU.js +26 -0
  139. package/dist/cli/doctor-skill-fixtures-7Y6L34A3.js +26 -0
  140. package/dist/cli/doctor-split-brain-TUKIGVHF.js +26 -0
  141. package/dist/cli/doctor-superseded-store-BHZY2B2L.js +26 -0
  142. package/dist/cli/doctor-tool-locks-REQMIVYK.js +26 -0
  143. package/dist/cli/doctor-twin-collapse-222GOSPE.js +26 -0
  144. package/dist/cli/doctor-worktree-stores-J7TCRVJ3.js +26 -0
  145. package/dist/cli/done-V3AOO65B.js +195 -0
  146. package/dist/cli/dynamic-RR4HB7BB.js +29 -0
  147. package/dist/cli/event-EGNPGE5A.js +372 -0
  148. package/dist/cli/exists-H4SDCBPL.js +65 -0
  149. package/dist/cli/exodus-KALO3B3X.js +401 -0
  150. package/dist/cli/export-ROFOCG4M.js +92 -0
  151. package/dist/cli/export-tasks-US3WBIEQ.js +96 -0
  152. package/dist/cli/federation-SUIB5QWT.js +145 -0
  153. package/dist/cli/find-YICG4BG6.js +177 -0
  154. package/dist/cli/focus-TKCZPKOM.js +55 -0
  155. package/dist/cli/gateway-H4HFDC3E.js +77 -0
  156. package/dist/cli/gateway-auto-start-EDK7XI6E.js +36 -0
  157. package/dist/cli/gc-5R2TUY5T.js +291 -0
  158. package/dist/cli/go-PRQFK5YG.js +206 -0
  159. package/dist/cli/goal-7CZRMLHC.js +212 -0
  160. package/dist/cli/grade-PY2YRPUS.js +56 -0
  161. package/dist/cli/graph-XIXMCFKG.js +878 -0
  162. package/dist/cli/history-EIXADPAD.js +137 -0
  163. package/dist/cli/hook-UF7J7R6D.js +57 -0
  164. package/dist/cli/hook-entry.js +244 -19
  165. package/dist/cli/hygiene-3QZ2NI7P.js +55 -0
  166. package/dist/cli/import-R73SO444.js +88 -0
  167. package/dist/cli/import-tasks-O22FZJ4U.js +108 -0
  168. package/dist/cli/index.js +419 -94612
  169. package/dist/cli/init-IHEJDQWU.js +40 -0
  170. package/dist/cli/inject-LSRVWNCP.js +82 -0
  171. package/dist/cli/install-global-4AZUCH6U.js +95 -0
  172. package/dist/cli/intelligence-2OSFOGD2.js +181 -0
  173. package/dist/cli/issue-IIWEDNFC.js +158 -0
  174. package/dist/cli/janitor-GPMC7VOR.js +111 -0
  175. package/dist/cli/labels-5NPOIQXN.js +87 -0
  176. package/dist/cli/lifecycle-4FFS2K2T.js +272 -0
  177. package/dist/cli/list-47KEUGPQ.js +108 -0
  178. package/dist/cli/llm-G5B3I6GD.js +703 -0
  179. package/dist/cli/llm-cost-S7RS6BVA.js +25 -0
  180. package/dist/cli/llm-stream-24A45NTS.js +27 -0
  181. package/dist/cli/log-XF6H2XSD.js +75 -0
  182. package/dist/cli/login-LBPLGHYG.js +43 -0
  183. package/dist/cli/logout-SX4JSJIV.js +74 -0
  184. package/dist/cli/manifest-NMCW4PIW.js +353 -0
  185. package/dist/cli/map-BU72KMGF.js +52 -0
  186. package/dist/cli/memory-UHYIVGVM.js +1956 -0
  187. package/dist/cli/migrate-agents-v2-OO7OILZK.js +33 -0
  188. package/dist/cli/migrate-claude-mem-EDNYUY3K.js +201 -0
  189. package/dist/cli/next-RZFRG5X7.js +56 -0
  190. package/dist/cli/nexus-4S4Z5EVU.js +2923 -0
  191. package/dist/cli/ops-KR7AWCG3.js +51 -0
  192. package/dist/cli/orchestrate-HOYZY3VX.js +948 -0
  193. package/dist/cli/otel-U7IIRBCT.js +188 -0
  194. package/dist/cli/phase-NYZFHUE5.js +220 -0
  195. package/dist/cli/pivot-FF2CVUZL.js +87 -0
  196. package/dist/cli/plan-3SL2NTRV.js +48 -0
  197. package/dist/cli/playbook-2FCBV7N3.js +229 -0
  198. package/dist/cli/project-WDX2TGMC.js +330 -0
  199. package/dist/cli/promote-YINYFBZY.js +52 -0
  200. package/dist/cli/provenance-C7AYD7WG.js +128 -0
  201. package/dist/cli/provider-QLJEDQBR.js +212 -0
  202. package/dist/cli/reason-JF5BHBM5.js +137 -0
  203. package/dist/cli/reconcile-NMISHDGX.js +127 -0
  204. package/dist/cli/refresh-memory-EY5YNICV.js +45 -0
  205. package/dist/cli/relates-R3ZPICAY.js +259 -0
  206. package/dist/cli/release-4ZJTMUUT.js +524 -0
  207. package/dist/cli/remote-QSONJDIK.js +279 -0
  208. package/dist/cli/renderers-64OR3IWX.js +37 -0
  209. package/dist/cli/reorder-J3DOE7ST.js +86 -0
  210. package/dist/cli/reparent-2OUMKEZX.js +58 -0
  211. package/dist/cli/req-TZB7OFKO.js +129 -0
  212. package/dist/cli/research-MTD7EX45.js +365 -0
  213. package/dist/cli/restore-VEUOX7NF.js +423 -0
  214. package/dist/cli/revert-3YF2IL5G.js +240 -0
  215. package/dist/cli/roadmap-7OOQLXKG.js +61 -0
  216. package/dist/cli/run-2U5NZV5Z.js +211 -0
  217. package/dist/cli/safestop-VR4VK56D.js +88 -0
  218. package/dist/cli/saga-SEWPIOX2.js +285 -0
  219. package/dist/cli/schema-C52WZ35V.js +195 -0
  220. package/dist/cli/self-update-GQIGUDPS.js +504 -0
  221. package/dist/cli/selfimprove-3Y5L4ECT.js +88 -0
  222. package/dist/cli/sentient-M4YMAVGV.js +1088 -0
  223. package/dist/cli/sequence-6UBMA4IF.js +93 -0
  224. package/dist/cli/service-5R7SILZ7.js +155 -0
  225. package/dist/cli/session-3C6AAC4Y.js +707 -0
  226. package/dist/cli/setup-BTUBW5PU.js +323 -0
  227. package/dist/cli/show-MXT2V7TF.js +122 -0
  228. package/dist/cli/skill-GFUZOU2C.js +84 -0
  229. package/dist/cli/skills-EDWLKAF3.js +928 -0
  230. package/dist/cli/smoke-provider-SKUFMZXU.js +218 -0
  231. package/dist/cli/snapshot-GUWMURCM.js +119 -0
  232. package/dist/cli/src-66GAKPXR.js +80 -0
  233. package/dist/cli/start-QFG56RGN.js +67 -0
  234. package/dist/cli/stats-GW55P7RR.js +95 -0
  235. package/dist/cli/status-46HTKNRR.js +157 -0
  236. package/dist/cli/sticky-2DUZOUGI.js +338 -0
  237. package/dist/cli/stop-J2QEUKHX.js +42 -0
  238. package/dist/cli/sync-GJP2QYT5.js +154 -0
  239. package/dist/cli/tasks-BNXTM7PB.js +174 -0
  240. package/dist/cli/telemetry-55Z2XJWL.js +120 -0
  241. package/dist/cli/templates-7O77TKPV.js +611 -0
  242. package/dist/cli/testing-37YTBNKP.js +146 -0
  243. package/dist/cli/token-UAVJMNUI.js +220 -0
  244. package/dist/cli/transcript-LORQTV5Z.js +440 -0
  245. package/dist/cli/tui-BPUFHYKK.js +51 -0
  246. package/dist/cli/update-NVCYV2FT.js +476 -0
  247. package/dist/cli/upgrade-OXJXOGEF.js +243 -0
  248. package/dist/cli/verify-LYLDHPT2.js +190 -0
  249. package/dist/cli/web-QP2RP266.js +275 -0
  250. package/dist/cli/workgraph-FXBSZDQE.js +232 -0
  251. package/dist/cli/worktree-6RXAJIST.js +370 -0
  252. package/package.json +13 -13
  253. package/studio-dist/client/_app/immutable/chunks/{DMj27Pxj.js → Btgeq_wq.js} +1 -1
  254. package/studio-dist/client/_app/immutable/chunks/{qq3pe1aT.js → CgBjxmu6.js} +1 -1
  255. package/studio-dist/client/_app/immutable/chunks/{Dc2owyvE.js → DgEKqO6r.js} +1 -1
  256. package/studio-dist/client/_app/immutable/chunks/t81h7afa.js +1 -0
  257. package/studio-dist/client/_app/immutable/entry/{app.CHWXLeE9.js → app.a02HWaRB.js} +2 -2
  258. package/studio-dist/client/_app/immutable/entry/start.BreMSngo.js +1 -0
  259. package/studio-dist/client/_app/immutable/nodes/{0.DmKQGvFh.js → 0.nTXyRfc-.js} +1 -1
  260. package/studio-dist/client/_app/immutable/nodes/{1.DqJk_REO.js → 1.4zrWeHtl.js} +1 -1
  261. package/studio-dist/client/_app/immutable/nodes/{15.GUy6kdW1.js → 15.D9mk4JyY.js} +1 -1
  262. package/studio-dist/client/_app/immutable/nodes/{16.CcnKZ8f9.js → 16._-wt-sQf.js} +1 -1
  263. package/studio-dist/client/_app/immutable/nodes/{17.DAlQF3lQ.js → 17.CUu6LQDj.js} +1 -1
  264. package/studio-dist/client/_app/immutable/nodes/{18.vQFr-vFj.js → 18.Dz4QRTkX.js} +1 -1
  265. package/studio-dist/client/_app/immutable/nodes/{20.GVOj5j_r.js → 20.CJ2_EB0U.js} +1 -1
  266. package/studio-dist/client/_app/immutable/nodes/{24.2-wC6DOh.js → 24.Igj2FS7k.js} +1 -1
  267. package/studio-dist/client/_app/immutable/nodes/{25.D1vYaH8g.js → 25.BnATjVGN.js} +2 -2
  268. package/studio-dist/client/_app/immutable/nodes/{26.C3rNqzZF.js → 26.6iPyjT44.js} +1 -1
  269. package/studio-dist/client/_app/immutable/nodes/{3.b-7pzc3M.js → 3.AA5GwNgP.js} +1 -1
  270. package/studio-dist/client/_app/version.json +1 -1
  271. package/studio-dist/server/chunks/{0-BaCce-O1.js → 0-DGmsoBYm.js} +3 -3
  272. package/studio-dist/server/chunks/1-8PfxPvlK.js +9 -0
  273. package/studio-dist/server/chunks/{15-DRMOSIC9.js → 15-Bg6YTndh.js} +3 -3
  274. package/studio-dist/server/chunks/{16-BulXhoZZ.js → 16-BObLwgyD.js} +3 -3
  275. package/studio-dist/server/chunks/{17-DUEOCM0H.js → 17-BNXGyAHX.js} +3 -3
  276. package/studio-dist/server/chunks/{18-DP7Q8zPs.js → 18-UqQFRIID.js} +3 -3
  277. package/studio-dist/server/chunks/{20-9ta6MI7q.js → 20-CMn8a_yP.js} +3 -3
  278. package/studio-dist/server/chunks/{24-DysdL1ab.js → 24-BuOTDzib.js} +3 -3
  279. package/studio-dist/server/chunks/{25-CYsps38R.js → 25-CIMSmjVx.js} +4 -4
  280. package/studio-dist/server/chunks/{26-Df4YXgg0.js → 26-DWGObn2T.js} +3 -3
  281. package/studio-dist/server/chunks/{3-BEhOhYpL.js → 3-CyiffdJZ.js} +3 -3
  282. package/studio-dist/server/chunks/{_layout.svelte-CnLcXYG-.js → _layout.svelte-DYtClaIk.js} +4 -4
  283. package/studio-dist/server/chunks/{_page.svelte-HUqTICJR.js → _page.svelte-1h9E6s_f.js} +3 -3
  284. package/studio-dist/server/chunks/{_page.svelte-DOl0DGOO.js → _page.svelte-BNNF62Nm.js} +3 -3
  285. package/studio-dist/server/chunks/{_page.svelte-DzcZljiy.js → _page.svelte-BT1EUadj.js} +5 -5
  286. package/studio-dist/server/chunks/{_page.svelte-Dv8tmDEC.js → _page.svelte-Bip079LT.js} +3 -3
  287. package/studio-dist/server/chunks/{_page.svelte-DGhXqeRc.js → _page.svelte-CEATWp_5.js} +3 -3
  288. package/studio-dist/server/chunks/{_page.svelte-C0qgUvzA.js → _page.svelte-CV3xiD1y.js} +4 -4
  289. package/studio-dist/server/chunks/{_page.svelte-CbyEPj2j.js → _page.svelte-Cv_KVJDV.js} +3 -3
  290. package/studio-dist/server/chunks/{_page.svelte-ui7LnWkL.js → _page.svelte-DSSy6LuK.js} +3 -3
  291. package/studio-dist/server/chunks/{_page.svelte-Da4q5l93.js → _page.svelte-TF795TAS.js} +3 -3
  292. package/studio-dist/server/chunks/{_server.ts-CnKVmf_s.js → _server.ts-BlhRFLY3.js} +2 -2
  293. package/studio-dist/server/chunks/{_server.ts-Cr57EKWf.js → _server.ts-C4w6UdU0.js} +3 -3
  294. package/studio-dist/server/chunks/{_server.ts-P4wVVksg.js → _server.ts-CzrwbhkQ.js} +3 -3
  295. package/studio-dist/server/chunks/{_server.ts-2BazvYRP.js → _server.ts-DWt8Dziu.js} +3 -3
  296. package/studio-dist/server/chunks/{_server.ts-C0evMKCk.js → _server.ts-Db6mEile.js} +3 -3
  297. package/studio-dist/server/chunks/{client-CPM4LrO2.js → client-D8f2k-H_.js} +2 -2
  298. package/studio-dist/server/chunks/{dist-CdoCt9zT.js → dist-B8xbIrdB.js} +3 -1
  299. package/studio-dist/server/chunks/{error.svelte-ShcZo43D.js → error.svelte-DbbOwIme.js} +3 -3
  300. package/studio-dist/server/chunks/{http-BiQjEmVU.js → http-1ftNGTs5.js} +2 -2
  301. package/studio-dist/server/chunks/{internal-Cgsrya1j.js → internal-CTULuLPB.js} +2 -2
  302. package/studio-dist/server/chunks/{stores-BGrpEDMK.js → stores-CS5XOReX.js} +2 -2
  303. package/studio-dist/server/index.js +1 -1
  304. package/studio-dist/server/manifest.js +17 -17
  305. package/studio-dist/client/_app/immutable/chunks/Bw6J8NDM.js +0 -1
  306. package/studio-dist/client/_app/immutable/entry/start.C9bwPpvc.js +0 -1
  307. package/studio-dist/server/chunks/1-CVo7Nk6d.js +0 -9
@@ -0,0 +1,476 @@
1
+ (() => {
2
+ const _installed = Symbol.for('cleocode.cli.sqliteWarningFilter');
3
+ if (globalThis[_installed]) return;
4
+ globalThis[_installed] = true;
5
+ const _origEmitWarning = process.emitWarning;
6
+ process.emitWarning = function(warning, type, code, ctor) {
7
+ if (typeof warning === 'object' && warning.name === 'ExperimentalWarning' && typeof warning.message === 'string' && /SQLite is an experimental feature/i.test(warning.message)) {
8
+ return;
9
+ }
10
+ if (typeof warning === 'string' && /SQLite is an experimental feature/i.test(warning)) {
11
+ return;
12
+ }
13
+ return _origEmitWarning.call(process, warning, type, code, ctor);
14
+ };
15
+ })();
16
+ import {
17
+ collectMutateInput
18
+ } from "./chunk-QA6T2LQ5.js";
19
+ import {
20
+ defineCommand,
21
+ showUsage
22
+ } from "./chunk-PKKZPOOP.js";
23
+ import {
24
+ dispatchFromCli,
25
+ dispatchRaw,
26
+ handleRawError,
27
+ maybeEmitDescribe
28
+ } from "./chunk-3IOQVUO7.js";
29
+ import "./chunk-AWCQH2W5.js";
30
+ import "./chunk-OGV57L4J.js";
31
+ import "./chunk-ZBISIPCK.js";
32
+ import {
33
+ cliError,
34
+ cliOutput
35
+ } from "./chunk-3ZO3M37V.js";
36
+ import "./chunk-6JSJNYH2.js";
37
+ import "./chunk-QFFQSKRC.js";
38
+
39
+ // packages/cleo/src/cli/commands/update.ts
40
+ import { ExitCode, TASK_SEVERITIES } from "@cleocode/contracts";
41
+ import {
42
+ INPUT_CONTRACTS,
43
+ isPipelineTransitionForward,
44
+ isValidPipelineStage,
45
+ parseAcceptanceCriteria,
46
+ TASK_PIPELINE_STAGES,
47
+ validateOperationInput
48
+ } from "@cleocode/core";
49
+ var updateCommand = defineCommand({
50
+ meta: {
51
+ name: "update",
52
+ description: "Update a task. Safe under concurrent invocation \u2014 retries on SQLITE_BUSY up to 4 attempts (gh#391)."
53
+ },
54
+ args: {
55
+ /**
56
+ * Schema-first input — supersedes all flag-based args when present.
57
+ *
58
+ * Accepts a JSON object matching `INPUT_CONTRACTS['tasks.update']`.
59
+ * The `taskId` MUST be present in the JSON payload (positional
60
+ * `taskId` arg is ignored in this path).
61
+ *
62
+ * @task T9917
63
+ */
64
+ params: {
65
+ type: "string",
66
+ description: 'Inline JSON object matching INPUT_CONTRACTS["tasks.update"] (T9917). Overrides positional + flags.'
67
+ },
68
+ /**
69
+ * Schema-first input from a JSON file. Same semantics as --params.
70
+ *
71
+ * @task T9917
72
+ */
73
+ "params-file": {
74
+ type: "string",
75
+ description: 'Path to JSON file matching INPUT_CONTRACTS["tasks.update"] (T9917).'
76
+ },
77
+ taskId: {
78
+ type: "positional",
79
+ description: "Task ID to update",
80
+ required: false
81
+ },
82
+ title: {
83
+ type: "string",
84
+ description: "New title"
85
+ },
86
+ status: {
87
+ type: "string",
88
+ description: "New status (pending|active|blocked|done|cancelled)",
89
+ alias: "s"
90
+ },
91
+ priority: {
92
+ type: "string",
93
+ description: "New priority (critical|high|medium|low). Orthogonal to --severity \u2014 see `cleo find --urgent` for the unified surface (T9905).",
94
+ alias: "p"
95
+ },
96
+ type: {
97
+ type: "string",
98
+ description: "New type (task|epic|subtask)",
99
+ alias: "t"
100
+ },
101
+ size: {
102
+ type: "string",
103
+ description: "New size"
104
+ },
105
+ phase: {
106
+ type: "string",
107
+ description: "New phase",
108
+ alias: "P"
109
+ },
110
+ description: {
111
+ type: "string",
112
+ description: "New description",
113
+ alias: "d"
114
+ },
115
+ labels: {
116
+ type: "string",
117
+ description: 'Set labels (comma-separated; lowercase alphanumeric + hyphens + periods only, e.g. "track-b,wave.1") (gh-392)',
118
+ alias: "l"
119
+ },
120
+ "add-labels": {
121
+ type: "string",
122
+ description: 'Add labels (comma-separated; lowercase alphanumeric + hyphens + periods only, e.g. "track-b,wave.1") (gh-392)'
123
+ },
124
+ "remove-labels": {
125
+ type: "string",
126
+ description: "Remove labels (comma-separated)"
127
+ },
128
+ depends: {
129
+ type: "string",
130
+ description: "Set dependencies (comma-separated)",
131
+ alias: "D"
132
+ },
133
+ "add-depends": {
134
+ type: "string",
135
+ description: "Add dependencies (comma-separated)"
136
+ },
137
+ "remove-depends": {
138
+ type: "string",
139
+ description: "Remove dependencies (comma-separated)"
140
+ },
141
+ notes: {
142
+ type: "string",
143
+ description: "Add a note"
144
+ },
145
+ note: {
146
+ type: "string",
147
+ description: "Alias for --notes"
148
+ },
149
+ acceptance: {
150
+ type: "string",
151
+ description: 'Set acceptance criteria (pipe-separated, e.g. "AC1|AC2|AC3")'
152
+ },
153
+ files: {
154
+ type: "string",
155
+ description: "Set files (comma-separated)"
156
+ },
157
+ "add-files": {
158
+ type: "string",
159
+ description: "Add files incrementally (comma-separated)"
160
+ },
161
+ "remove-files": {
162
+ type: "string",
163
+ description: "Remove files incrementally (comma-separated)"
164
+ },
165
+ "blocked-by": {
166
+ type: "string",
167
+ description: "Set blocked-by reason"
168
+ },
169
+ "clear-blocked-by": {
170
+ type: "boolean",
171
+ description: "Clear the blocked-by reason string"
172
+ },
173
+ parent: {
174
+ type: "string",
175
+ description: "Set parent ID"
176
+ },
177
+ "parent-id": {
178
+ type: "string",
179
+ description: "Alias for --parent (legacy parentId compatibility)"
180
+ },
181
+ "auto-complete": {
182
+ type: "boolean",
183
+ description: "Enable auto-complete for epic",
184
+ negativeDescription: "Disable auto-complete for epic"
185
+ },
186
+ "pipeline-stage": {
187
+ type: "string",
188
+ description: "Set pipeline stage (forward-only: research|consensus|architecture_decision|specification|decomposition|implementation|validation|testing|release|contribution)"
189
+ },
190
+ /**
191
+ * Task kind axis — intent of work.
192
+ * Values: work | research | experiment | bug | spike | release
193
+ * @task T944
194
+ * @task T9072
195
+ */
196
+ kind: {
197
+ type: "string",
198
+ description: "Task kind / intent axis (work|research|experiment|bug|spike|release) \u2014 orthogonal to --type (T944)"
199
+ },
200
+ /**
201
+ * Task scope axis — granularity of work.
202
+ * Values: project | feature | unit
203
+ * @task T944
204
+ */
205
+ scope: {
206
+ type: "string",
207
+ description: "Task scope / granularity axis (project|feature|unit) \u2014 orthogonal to --type (T944)"
208
+ },
209
+ /**
210
+ * Severity level — valid for any role (not just bug).
211
+ * Values: P0 | P1 | P2 | P3
212
+ * Orthogonal to --priority — does NOT auto-map priority.
213
+ * Appends a signed attestation to .cleo/audit/severity-attestation.jsonl (T9071/T9073).
214
+ * @task T9073
215
+ */
216
+ severity: {
217
+ type: "string",
218
+ description: "Severity level (P0|P1|P2|P3) \u2014 valid for any --kind (T9073). Orthogonal to --priority \u2014 does NOT auto-map (a P0 with priority=medium stays medium). Use `cleo find --urgent` for the unified surface (T9905). Appends signed attestation."
219
+ },
220
+ /**
221
+ * Operator-supplied justification required to override the
222
+ * acceptance-criteria immutability guard once a task has entered the
223
+ * implementation pipeline stage. Audit log: `.cleo/audit/ac-changes.jsonl`.
224
+ *
225
+ * @epic T1586 Foundation Lockdown
226
+ * @task T1590
227
+ */
228
+ reason: {
229
+ type: "string",
230
+ description: "Why this change is made. Recorded on the audit row of any priority/severity/kind/depends change (D11161; see `cleo history ranking <id>`), and required to mutate --acceptance once stage >= implementation (T1590)"
231
+ },
232
+ /**
233
+ * Waiver for the critical-priority dependency declaration requirement.
234
+ *
235
+ * Critical-priority tasks without declared dependencies silently break
236
+ * wave-order spawning when downstream work assumes they are load-bearing.
237
+ * Provide a justification string to waive the `--depends` requirement.
238
+ * The waiver is stored in the task update audit log in the mutation transaction.
239
+ *
240
+ * @task T1856
241
+ * @epic T1855
242
+ */
243
+ /**
244
+ * Optimistic-concurrency guard: the task `updatedAt` the caller read
245
+ * (e.g. from `cleo show <id> --field /data/task/updatedAt`). When the
246
+ * stored version differs, the update fails with E_CONFLICT carrying the
247
+ * current version instead of overwriting a newer write.
248
+ *
249
+ * @task T12503
250
+ */
251
+ "expected-updated-at": {
252
+ type: "string",
253
+ description: "Fail with E_CONFLICT unless the task updatedAt still equals this value (optimistic concurrency; T12503)"
254
+ },
255
+ "if-match": {
256
+ type: "string",
257
+ description: "Fail with E_CONFLICT unless the task updatedAt still equals this version (from cleo show). Same as --expected-updated-at."
258
+ },
259
+ "depends-waiver": {
260
+ type: "string",
261
+ description: "Non-empty justification to waive the dependency requirement for --priority critical. Stored verbatim in the transactional task update audit log. Rejected for non-critical updates. (gh-405 / T1856)"
262
+ },
263
+ /**
264
+ * Related tasks — semantic relationships (non-dependency).
265
+ *
266
+ * Direction convention (gh-403):
267
+ * `cleo update <fromId> --add-relates <toId>:<type>`
268
+ * creates a directed edge FROM `<fromId>` TO `<toId>` with the given type.
269
+ * Example: `cleo update T127 --add-relates T123:blocks` means
270
+ * "T127 blocks T123" (the task being updated is the source).
271
+ *
272
+ * For dependency edges (T127 must complete before T128 can start), prefer
273
+ * `--add-depends T128` on T127 — `depends` is the canonical dep primitive
274
+ * and is what `cleo orchestrate ready`/`waves` walks. `--add-relates` is for
275
+ * semantic relationships (blocks/supersedes/groups/related) that don't
276
+ * affect wave-order scheduling.
277
+ */
278
+ relates: {
279
+ type: "string",
280
+ description: 'Set related tasks (comma-separated, optional type suffix: "T001:blocks,T002"). Direction: <current task> \u2192 <relate>. For dep edges, prefer --add-depends. (gh-403)'
281
+ },
282
+ "add-relates": {
283
+ type: "string",
284
+ description: 'Add related tasks without overwriting (comma-separated, optional type suffix: "T001:blocks"). Direction: <current task> \u2192 <relate>. For dep edges, prefer --add-depends. (gh-403)'
285
+ },
286
+ "remove-relates": {
287
+ type: "string",
288
+ description: "Remove related tasks by taskId (comma-separated)"
289
+ }
290
+ },
291
+ async run({ args, cmd }) {
292
+ if (maybeEmitDescribe("mutate", "tasks", "update", { command: "update" })) return;
293
+ const paramsArg = args.params;
294
+ const paramsFileArg = args["params-file"];
295
+ if (paramsArg !== void 0 || paramsFileArg !== void 0) {
296
+ const collectArgs = {};
297
+ if (paramsArg !== void 0) collectArgs.params = paramsArg;
298
+ if (paramsFileArg !== void 0) collectArgs.file = paramsFileArg;
299
+ let raw;
300
+ try {
301
+ raw = await collectMutateInput(
302
+ collectArgs,
303
+ process.stdin
304
+ );
305
+ } catch (err) {
306
+ cliError(
307
+ err.message,
308
+ ExitCode.VALIDATION_ERROR,
309
+ {
310
+ name: "E_VALIDATION_FAILED",
311
+ fix: "Verify the JSON syntax of your --params / --params-file input"
312
+ },
313
+ { operation: "tasks.update" }
314
+ );
315
+ process.exit(ExitCode.VALIDATION_ERROR);
316
+ return;
317
+ }
318
+ if (raw !== null && typeof raw === "object" && !Array.isArray(raw) && raw["taskId"] === void 0 && args.taskId !== void 0) {
319
+ raw["taskId"] = args.taskId;
320
+ }
321
+ const contract = INPUT_CONTRACTS["tasks.update"];
322
+ if (!contract) {
323
+ cliError(
324
+ "tasks.update contract missing from INPUT_CONTRACTS registry",
325
+ ExitCode.GENERAL_ERROR,
326
+ { name: "E_INTERNAL", fix: "This is a CLI bug \u2014 file an issue" },
327
+ { operation: "tasks.update" }
328
+ );
329
+ process.exit(ExitCode.GENERAL_ERROR);
330
+ return;
331
+ }
332
+ const validation = validateOperationInput(contract, raw);
333
+ if (!validation.ok) {
334
+ cliError(
335
+ "tasks.update failed: validation",
336
+ ExitCode.VALIDATION_ERROR,
337
+ {
338
+ name: "E_VALIDATION_FAILED",
339
+ fix: validation.errors[0]?.fix ?? "Inspect errors[] and correct the input",
340
+ details: { errors: validation.errors }
341
+ },
342
+ { operation: "tasks.update" }
343
+ );
344
+ process.exit(ExitCode.VALIDATION_ERROR);
345
+ return;
346
+ }
347
+ const validatedPayload = raw;
348
+ const response = await dispatchRaw("mutate", "tasks", "update", validatedPayload);
349
+ if (!response.success) {
350
+ handleRawError(response, { command: "update", operation: "tasks.update" });
351
+ return;
352
+ }
353
+ cliOutput(response.data, { command: "update", operation: "tasks.update" });
354
+ return;
355
+ }
356
+ if (!args.taskId) {
357
+ await showUsage(cmd);
358
+ return;
359
+ }
360
+ if (args.severity !== void 0 && !TASK_SEVERITIES.includes(args.severity)) {
361
+ const valid = TASK_SEVERITIES.join(", ");
362
+ cliError(
363
+ `severity must be one of: ${valid} \u2014 got '${args.severity}'`,
364
+ 6,
365
+ {
366
+ name: "E_INVALID_SEVERITY_VALUE",
367
+ fix: `Pass --severity with one of: ${valid}`
368
+ },
369
+ { operation: "tasks.update" }
370
+ );
371
+ process.exit(6);
372
+ return;
373
+ }
374
+ if (args["pipeline-stage"] !== void 0) {
375
+ const requestedStage = String(args["pipeline-stage"]);
376
+ if (!isValidPipelineStage(requestedStage)) {
377
+ const valid = TASK_PIPELINE_STAGES.join(", ");
378
+ cliError(
379
+ `pipeline-stage must be one of: ${valid} \u2014 got '${requestedStage}'`,
380
+ 6,
381
+ {
382
+ name: "E_INVALID_PIPELINE_STAGE",
383
+ fix: `Pass --pipeline-stage with one of: ${valid}`
384
+ },
385
+ { operation: "tasks.update" }
386
+ );
387
+ process.exit(6);
388
+ return;
389
+ }
390
+ const showResponse = await dispatchRaw("query", "tasks", "show", {
391
+ taskId: args.taskId
392
+ });
393
+ if (!showResponse.success) {
394
+ handleRawError(showResponse, { command: "update", operation: "tasks.show" });
395
+ return;
396
+ }
397
+ const existingTask = showResponse.data;
398
+ const currentStage = typeof existingTask?.["pipelineStage"] === "string" ? existingTask["pipelineStage"] : null;
399
+ if (currentStage && !isPipelineTransitionForward(currentStage, requestedStage)) {
400
+ const validForward = TASK_PIPELINE_STAGES.filter((s) => {
401
+ return isPipelineTransitionForward(currentStage, s);
402
+ }).join(", ");
403
+ cliError(
404
+ `pipeline-stage transition rejected: cannot move backward from '${currentStage}' to '${requestedStage}'. Pipeline stages are forward-only.`,
405
+ 6,
406
+ {
407
+ name: "E_INVALID_PIPELINE_STAGE",
408
+ fix: `Pass --pipeline-stage with a stage at or after '${currentStage}'. Valid forward stages: ${validForward}`
409
+ },
410
+ { operation: "tasks.update" }
411
+ );
412
+ process.exit(6);
413
+ return;
414
+ }
415
+ }
416
+ const params = { taskId: args.taskId };
417
+ if (args.title !== void 0) params["title"] = args.title;
418
+ if (args.status !== void 0) params["status"] = args.status;
419
+ if (args.priority !== void 0) params["priority"] = args.priority;
420
+ if (args.type !== void 0) params["type"] = args.type;
421
+ if (args.size !== void 0) params["size"] = args.size;
422
+ if (args.phase !== void 0) params["phase"] = args.phase;
423
+ if (args.description !== void 0) params["description"] = args.description;
424
+ if (args.labels) params["labels"] = args.labels.split(",").map((s) => s.trim());
425
+ if (args["add-labels"])
426
+ params["addLabels"] = args["add-labels"].split(",").map((s) => s.trim());
427
+ if (args["remove-labels"])
428
+ params["removeLabels"] = args["remove-labels"].split(",").map((s) => s.trim());
429
+ if (args.depends) params["depends"] = args.depends.split(",").map((s) => s.trim());
430
+ if (args["add-depends"])
431
+ params["addDepends"] = args["add-depends"].split(",").map((s) => s.trim());
432
+ if (args["remove-depends"])
433
+ params["removeDepends"] = args["remove-depends"].split(",").map((s) => s.trim());
434
+ if (args.relates) {
435
+ params["relates"] = args.relates.split(",").map((s) => {
436
+ const [taskId, relType = "related"] = s.trim().split(":");
437
+ return { taskId: taskId.trim(), type: relType.trim() };
438
+ });
439
+ }
440
+ if (args["add-relates"]) {
441
+ params["addRelates"] = args["add-relates"].split(",").map((s) => {
442
+ const [taskId, relType = "related"] = s.trim().split(":");
443
+ return { taskId: taskId.trim(), type: relType.trim() };
444
+ });
445
+ }
446
+ if (args["remove-relates"]) {
447
+ params["removeRelates"] = args["remove-relates"].split(",").map((s) => s.trim());
448
+ }
449
+ if (args.notes !== void 0) params["notes"] = args.notes;
450
+ if (args.note !== void 0) params["notes"] = params["notes"] ?? args.note;
451
+ if (args.acceptance) params["acceptance"] = parseAcceptanceCriteria(args.acceptance);
452
+ if (args.files) params["files"] = args.files.split(",").map((s) => s.trim());
453
+ if (args["add-files"])
454
+ params["addFiles"] = args["add-files"].split(",").map((s) => s.trim());
455
+ if (args["remove-files"])
456
+ params["removeFiles"] = args["remove-files"].split(",").map((s) => s.trim());
457
+ if (args["blocked-by"] !== void 0) params["blockedBy"] = args["blocked-by"];
458
+ if (args["clear-blocked-by"] === true) params["clearBlockedBy"] = true;
459
+ if (args.parent !== void 0) params["parent"] = args.parent;
460
+ if (args["parent-id"] !== void 0) params["parent"] = params["parent"] ?? args["parent-id"];
461
+ if (args["auto-complete"] !== void 0) params["noAutoComplete"] = !args["auto-complete"];
462
+ if (args["pipeline-stage"] !== void 0) params["pipelineStage"] = args["pipeline-stage"];
463
+ if (args.kind !== void 0) params["kind"] = args.kind;
464
+ if (args.scope !== void 0) params["scope"] = args.scope;
465
+ if (args.severity !== void 0) params["severity"] = args.severity;
466
+ if (args.reason !== void 0) params["reason"] = args.reason;
467
+ if (args["depends-waiver"] !== void 0) params["dependsWaiver"] = args["depends-waiver"];
468
+ const ifMatch = args["if-match"] ?? args["expected-updated-at"];
469
+ if (ifMatch !== void 0) params["expectedUpdatedAt"] = ifMatch;
470
+ await dispatchFromCli("mutate", "tasks", "update", params, { command: "update" });
471
+ }
472
+ });
473
+ export {
474
+ updateCommand
475
+ };
476
+ //# sourceMappingURL=update-NVCYV2FT.js.map