@proletariat/cli 0.3.81 → 0.3.83

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 (377) hide show
  1. package/README.md +2 -46
  2. package/dist/commands/action/run.js +2 -2
  3. package/dist/commands/action/run.js.map +1 -1
  4. package/dist/commands/agent/staff/add.d.ts +17 -1
  5. package/dist/commands/agent/staff/add.js +274 -1
  6. package/dist/commands/agent/staff/add.js.map +1 -1
  7. package/dist/commands/agent/staff/list.d.ts +10 -1
  8. package/dist/commands/agent/staff/list.js +103 -1
  9. package/dist/commands/agent/staff/list.js.map +1 -1
  10. package/dist/commands/agent/staff/remove.d.ts +18 -1
  11. package/dist/commands/agent/staff/remove.js +143 -1
  12. package/dist/commands/agent/staff/remove.js.map +1 -1
  13. package/dist/commands/{epic/activate.d.ts → pr/close.d.ts} +8 -2
  14. package/dist/commands/pr/close.js +157 -0
  15. package/dist/commands/pr/close.js.map +1 -0
  16. package/dist/commands/pr/index.js +6 -2
  17. package/dist/commands/pr/index.js.map +1 -1
  18. package/dist/commands/pr/list.d.ts +1 -0
  19. package/dist/commands/pr/list.js +37 -3
  20. package/dist/commands/pr/list.js.map +1 -1
  21. package/dist/commands/pr/merge.js +1 -1
  22. package/dist/commands/pr/merge.js.map +1 -1
  23. package/dist/commands/pr/status.js +33 -1
  24. package/dist/commands/pr/status.js.map +1 -1
  25. package/dist/commands/self-update.d.ts +7 -14
  26. package/dist/commands/self-update.js +11 -179
  27. package/dist/commands/self-update.js.map +1 -1
  28. package/dist/commands/{workflow/switch.d.ts → ticket/cancel.d.ts} +4 -2
  29. package/dist/commands/ticket/cancel.js +204 -0
  30. package/dist/commands/ticket/cancel.js.map +1 -0
  31. package/dist/commands/ticket/link/index.js +0 -12
  32. package/dist/commands/ticket/link/index.js.map +1 -1
  33. package/dist/commands/ticket/move.d.ts +1 -0
  34. package/dist/commands/ticket/move.js +10 -3
  35. package/dist/commands/ticket/move.js.map +1 -1
  36. package/dist/commands/update.d.ts +18 -0
  37. package/dist/commands/update.js +184 -0
  38. package/dist/commands/update.js.map +1 -0
  39. package/dist/lib/database/drizzle-schema.d.ts +301 -0
  40. package/dist/lib/database/drizzle-schema.js +22 -0
  41. package/dist/lib/database/drizzle-schema.js.map +1 -1
  42. package/dist/lib/database/index.d.ts +3 -0
  43. package/dist/lib/database/index.js +556 -479
  44. package/dist/lib/database/index.js.map +1 -1
  45. package/dist/lib/database/migrations/0006_drop_theme_names_used.d.ts +8 -0
  46. package/dist/lib/database/migrations/0006_drop_theme_names_used.js +30 -0
  47. package/dist/lib/database/migrations/0006_drop_theme_names_used.js.map +1 -0
  48. package/dist/lib/database/migrations/0007_add_worktree_columns.d.ts +8 -0
  49. package/dist/lib/database/migrations/0007_add_worktree_columns.js +24 -0
  50. package/dist/lib/database/migrations/0007_add_worktree_columns.js.map +1 -0
  51. package/dist/lib/database/migrations/0008_add_agent_mount_mode.d.ts +8 -0
  52. package/dist/lib/database/migrations/0008_add_agent_mount_mode.js +18 -0
  53. package/dist/lib/database/migrations/0008_add_agent_mount_mode.js.map +1 -0
  54. package/dist/lib/database/migrations/0009_create_media_items.d.ts +7 -0
  55. package/dist/lib/database/migrations/0009_create_media_items.js +29 -0
  56. package/dist/lib/database/migrations/0009_create_media_items.js.map +1 -0
  57. package/dist/lib/database/migrations/0010_add_ticket_position.d.ts +9 -0
  58. package/dist/lib/database/migrations/0010_add_ticket_position.js +44 -0
  59. package/dist/lib/database/migrations/0010_add_ticket_position.js.map +1 -0
  60. package/dist/lib/database/migrations/index.js +10 -0
  61. package/dist/lib/database/migrations/index.js.map +1 -1
  62. package/dist/lib/events/events.d.ts +2 -1
  63. package/dist/lib/pmo/storage/dependencies.js +45 -21
  64. package/dist/lib/pmo/storage/dependencies.js.map +1 -1
  65. package/dist/lib/pmo/storage/statuses.d.ts +2 -0
  66. package/dist/lib/pmo/storage/statuses.js +209 -150
  67. package/dist/lib/pmo/storage/statuses.js.map +1 -1
  68. package/dist/lib/pr/index.d.ts +14 -0
  69. package/dist/lib/pr/index.js +48 -0
  70. package/dist/lib/pr/index.js.map +1 -1
  71. package/dist/lib/telemetry/analytics.d.ts +5 -5
  72. package/dist/lib/telemetry/analytics.js +87 -21
  73. package/dist/lib/telemetry/analytics.js.map +1 -1
  74. package/dist/lib/update-check.js +1 -1
  75. package/dist/lib/update-check.js.map +1 -1
  76. package/dist/lib/update-prompt.js +1 -1
  77. package/dist/lib/work-lifecycle/events.d.ts +11 -0
  78. package/oclif.manifest.json +4823 -11486
  79. package/package.json +2 -1
  80. package/dist/commands/agents/index.d.ts +0 -11
  81. package/dist/commands/agents/index.js +0 -105
  82. package/dist/commands/agents/index.js.map +0 -1
  83. package/dist/commands/agents/themes/add-names.d.ts +0 -1
  84. package/dist/commands/agents/themes/add-names.js +0 -2
  85. package/dist/commands/agents/themes/add-names.js.map +0 -1
  86. package/dist/commands/agents/themes/create.d.ts +0 -1
  87. package/dist/commands/agents/themes/create.js +0 -2
  88. package/dist/commands/agents/themes/create.js.map +0 -1
  89. package/dist/commands/agents/themes/list.d.ts +0 -1
  90. package/dist/commands/agents/themes/list.js +0 -2
  91. package/dist/commands/agents/themes/list.js.map +0 -1
  92. package/dist/commands/category/create.d.ts +0 -19
  93. package/dist/commands/category/create.js +0 -130
  94. package/dist/commands/category/create.js.map +0 -1
  95. package/dist/commands/category/delete.d.ts +0 -18
  96. package/dist/commands/category/delete.js +0 -124
  97. package/dist/commands/category/delete.js.map +0 -1
  98. package/dist/commands/category/index.d.ts +0 -16
  99. package/dist/commands/category/index.js +0 -88
  100. package/dist/commands/category/index.js.map +0 -1
  101. package/dist/commands/category/list.d.ts +0 -19
  102. package/dist/commands/category/list.js +0 -111
  103. package/dist/commands/category/list.js.map +0 -1
  104. package/dist/commands/category/rename.d.ts +0 -19
  105. package/dist/commands/category/rename.js +0 -160
  106. package/dist/commands/category/rename.js.map +0 -1
  107. package/dist/commands/epic/activate.js +0 -107
  108. package/dist/commands/epic/activate.js.map +0 -1
  109. package/dist/commands/epic/archive.d.ts +0 -15
  110. package/dist/commands/epic/archive.js +0 -118
  111. package/dist/commands/epic/archive.js.map +0 -1
  112. package/dist/commands/epic/create.d.ts +0 -17
  113. package/dist/commands/epic/create.js +0 -179
  114. package/dist/commands/epic/create.js.map +0 -1
  115. package/dist/commands/epic/delete.d.ts +0 -15
  116. package/dist/commands/epic/delete.js +0 -129
  117. package/dist/commands/epic/delete.js.map +0 -1
  118. package/dist/commands/epic/index.d.ts +0 -14
  119. package/dist/commands/epic/index.js +0 -88
  120. package/dist/commands/epic/index.js.map +0 -1
  121. package/dist/commands/epic/list.d.ts +0 -13
  122. package/dist/commands/epic/list.js +0 -103
  123. package/dist/commands/epic/list.js.map +0 -1
  124. package/dist/commands/epic/move.d.ts +0 -16
  125. package/dist/commands/epic/move.js +0 -162
  126. package/dist/commands/epic/move.js.map +0 -1
  127. package/dist/commands/epic/progress.d.ts +0 -17
  128. package/dist/commands/epic/progress.js +0 -170
  129. package/dist/commands/epic/progress.js.map +0 -1
  130. package/dist/commands/epic/project.d.ts +0 -16
  131. package/dist/commands/epic/project.js +0 -199
  132. package/dist/commands/epic/project.js.map +0 -1
  133. package/dist/commands/epic/reorder.d.ts +0 -22
  134. package/dist/commands/epic/reorder.js +0 -152
  135. package/dist/commands/epic/reorder.js.map +0 -1
  136. package/dist/commands/epic/show.d.ts +0 -13
  137. package/dist/commands/epic/show.js +0 -17
  138. package/dist/commands/epic/show.js.map +0 -1
  139. package/dist/commands/epic/spec.d.ts +0 -17
  140. package/dist/commands/epic/spec.js +0 -189
  141. package/dist/commands/epic/spec.js.map +0 -1
  142. package/dist/commands/epic/ticket.d.ts +0 -21
  143. package/dist/commands/epic/ticket.js +0 -300
  144. package/dist/commands/epic/ticket.js.map +0 -1
  145. package/dist/commands/epic/view.d.ts +0 -14
  146. package/dist/commands/epic/view.js +0 -141
  147. package/dist/commands/epic/view.js.map +0 -1
  148. package/dist/commands/execution/kill.d.ts +0 -12
  149. package/dist/commands/execution/kill.js +0 -18
  150. package/dist/commands/execution/kill.js.map +0 -1
  151. package/dist/commands/label/create.d.ts +0 -20
  152. package/dist/commands/label/create.js +0 -58
  153. package/dist/commands/label/create.js.map +0 -1
  154. package/dist/commands/label/delete.d.ts +0 -17
  155. package/dist/commands/label/delete.js +0 -33
  156. package/dist/commands/label/delete.js.map +0 -1
  157. package/dist/commands/label/group/create.d.ts +0 -20
  158. package/dist/commands/label/group/create.js +0 -56
  159. package/dist/commands/label/group/create.js.map +0 -1
  160. package/dist/commands/label/group/list.d.ts +0 -14
  161. package/dist/commands/label/group/list.js +0 -53
  162. package/dist/commands/label/group/list.js.map +0 -1
  163. package/dist/commands/label/index.d.ts +0 -15
  164. package/dist/commands/label/index.js +0 -59
  165. package/dist/commands/label/index.js.map +0 -1
  166. package/dist/commands/label/list.d.ts +0 -16
  167. package/dist/commands/label/list.js +0 -84
  168. package/dist/commands/label/list.js.map +0 -1
  169. package/dist/commands/link/create.d.ts +0 -16
  170. package/dist/commands/link/create.js +0 -136
  171. package/dist/commands/link/create.js.map +0 -1
  172. package/dist/commands/link/index.d.ts +0 -14
  173. package/dist/commands/link/index.js +0 -82
  174. package/dist/commands/link/index.js.map +0 -1
  175. package/dist/commands/link/list.d.ts +0 -18
  176. package/dist/commands/link/list.js +0 -178
  177. package/dist/commands/link/list.js.map +0 -1
  178. package/dist/commands/link/remove.d.ts +0 -16
  179. package/dist/commands/link/remove.js +0 -115
  180. package/dist/commands/link/remove.js.map +0 -1
  181. package/dist/commands/media/add.d.ts +0 -19
  182. package/dist/commands/media/add.js +0 -98
  183. package/dist/commands/media/add.js.map +0 -1
  184. package/dist/commands/media/index.d.ts +0 -14
  185. package/dist/commands/media/index.js +0 -93
  186. package/dist/commands/media/index.js.map +0 -1
  187. package/dist/commands/media/list.d.ts +0 -15
  188. package/dist/commands/media/list.js +0 -94
  189. package/dist/commands/media/list.js.map +0 -1
  190. package/dist/commands/media/preprocess.d.ts +0 -19
  191. package/dist/commands/media/preprocess.js +0 -91
  192. package/dist/commands/media/preprocess.js.map +0 -1
  193. package/dist/commands/media/remove.d.ts +0 -18
  194. package/dist/commands/media/remove.js +0 -105
  195. package/dist/commands/media/remove.js.map +0 -1
  196. package/dist/commands/media/show.d.ts +0 -17
  197. package/dist/commands/media/show.js +0 -122
  198. package/dist/commands/media/show.js.map +0 -1
  199. package/dist/commands/phase/create.d.ts +0 -22
  200. package/dist/commands/phase/create.js +0 -165
  201. package/dist/commands/phase/create.js.map +0 -1
  202. package/dist/commands/phase/delete.d.ts +0 -18
  203. package/dist/commands/phase/delete.js +0 -75
  204. package/dist/commands/phase/delete.js.map +0 -1
  205. package/dist/commands/phase/list.d.ts +0 -13
  206. package/dist/commands/phase/list.js +0 -75
  207. package/dist/commands/phase/list.js.map +0 -1
  208. package/dist/commands/phase/move.d.ts +0 -18
  209. package/dist/commands/phase/move.js +0 -124
  210. package/dist/commands/phase/move.js.map +0 -1
  211. package/dist/commands/phase/template/apply.d.ts +0 -26
  212. package/dist/commands/phase/template/apply.js +0 -15
  213. package/dist/commands/phase/template/apply.js.map +0 -1
  214. package/dist/commands/phase/template/create.d.ts +0 -23
  215. package/dist/commands/phase/template/create.js +0 -15
  216. package/dist/commands/phase/template/create.js.map +0 -1
  217. package/dist/commands/phase/template/delete.d.ts +0 -18
  218. package/dist/commands/phase/template/delete.js +0 -63
  219. package/dist/commands/phase/template/delete.js.map +0 -1
  220. package/dist/commands/phase/template/list.d.ts +0 -17
  221. package/dist/commands/phase/template/list.js +0 -90
  222. package/dist/commands/phase/template/list.js.map +0 -1
  223. package/dist/commands/phase/template/update.d.ts +0 -1
  224. package/dist/commands/phase/template/update.js +0 -2
  225. package/dist/commands/phase/template/update.js.map +0 -1
  226. package/dist/commands/phase/update.d.ts +0 -23
  227. package/dist/commands/phase/update.js +0 -209
  228. package/dist/commands/phase/update.js.map +0 -1
  229. package/dist/commands/priority/add.d.ts +0 -16
  230. package/dist/commands/priority/add.js +0 -71
  231. package/dist/commands/priority/add.js.map +0 -1
  232. package/dist/commands/priority/list.d.ts +0 -11
  233. package/dist/commands/priority/list.js +0 -35
  234. package/dist/commands/priority/list.js.map +0 -1
  235. package/dist/commands/priority/remove.d.ts +0 -14
  236. package/dist/commands/priority/remove.js +0 -55
  237. package/dist/commands/priority/remove.js.map +0 -1
  238. package/dist/commands/priority/set.d.ts +0 -15
  239. package/dist/commands/priority/set.js +0 -61
  240. package/dist/commands/priority/set.js.map +0 -1
  241. package/dist/commands/roadmap/add-project.d.ts +0 -19
  242. package/dist/commands/roadmap/add-project.js +0 -119
  243. package/dist/commands/roadmap/add-project.js.map +0 -1
  244. package/dist/commands/roadmap/create.d.ts +0 -22
  245. package/dist/commands/roadmap/create.js +0 -168
  246. package/dist/commands/roadmap/create.js.map +0 -1
  247. package/dist/commands/roadmap/delete.d.ts +0 -18
  248. package/dist/commands/roadmap/delete.js +0 -96
  249. package/dist/commands/roadmap/delete.js.map +0 -1
  250. package/dist/commands/roadmap/generate.d.ts +0 -24
  251. package/dist/commands/roadmap/generate.js +0 -201
  252. package/dist/commands/roadmap/generate.js.map +0 -1
  253. package/dist/commands/roadmap/index.d.ts +0 -14
  254. package/dist/commands/roadmap/index.js +0 -57
  255. package/dist/commands/roadmap/index.js.map +0 -1
  256. package/dist/commands/roadmap/list.d.ts +0 -14
  257. package/dist/commands/roadmap/list.js +0 -58
  258. package/dist/commands/roadmap/list.js.map +0 -1
  259. package/dist/commands/roadmap/remove-project.d.ts +0 -19
  260. package/dist/commands/roadmap/remove-project.js +0 -124
  261. package/dist/commands/roadmap/remove-project.js.map +0 -1
  262. package/dist/commands/roadmap/reorder.d.ts +0 -18
  263. package/dist/commands/roadmap/reorder.js +0 -147
  264. package/dist/commands/roadmap/reorder.js.map +0 -1
  265. package/dist/commands/roadmap/update.d.ts +0 -20
  266. package/dist/commands/roadmap/update.js +0 -134
  267. package/dist/commands/roadmap/update.js.map +0 -1
  268. package/dist/commands/roadmap/view.d.ts +0 -17
  269. package/dist/commands/roadmap/view.js +0 -93
  270. package/dist/commands/roadmap/view.js.map +0 -1
  271. package/dist/commands/staff/add.d.ts +0 -17
  272. package/dist/commands/staff/add.js +0 -275
  273. package/dist/commands/staff/add.js.map +0 -1
  274. package/dist/commands/staff/index.d.ts +0 -15
  275. package/dist/commands/staff/index.js +0 -88
  276. package/dist/commands/staff/index.js.map +0 -1
  277. package/dist/commands/staff/list.d.ts +0 -10
  278. package/dist/commands/staff/list.js +0 -104
  279. package/dist/commands/staff/list.js.map +0 -1
  280. package/dist/commands/staff/remove.d.ts +0 -18
  281. package/dist/commands/staff/remove.js +0 -144
  282. package/dist/commands/staff/remove.js.map +0 -1
  283. package/dist/commands/status/category.d.ts +0 -15
  284. package/dist/commands/status/category.js +0 -64
  285. package/dist/commands/status/category.js.map +0 -1
  286. package/dist/commands/status/create.d.ts +0 -21
  287. package/dist/commands/status/create.js +0 -161
  288. package/dist/commands/status/create.js.map +0 -1
  289. package/dist/commands/status/delete.d.ts +0 -14
  290. package/dist/commands/status/delete.js +0 -86
  291. package/dist/commands/status/delete.js.map +0 -1
  292. package/dist/commands/status/index.d.ts +0 -15
  293. package/dist/commands/status/index.js +0 -98
  294. package/dist/commands/status/index.js.map +0 -1
  295. package/dist/commands/status/list.d.ts +0 -13
  296. package/dist/commands/status/list.js +0 -97
  297. package/dist/commands/status/list.js.map +0 -1
  298. package/dist/commands/status/move.d.ts +0 -15
  299. package/dist/commands/status/move.js +0 -126
  300. package/dist/commands/status/move.js.map +0 -1
  301. package/dist/commands/status/update.d.ts +0 -20
  302. package/dist/commands/status/update.js +0 -214
  303. package/dist/commands/status/update.js.map +0 -1
  304. package/dist/commands/template/apply.d.ts +0 -28
  305. package/dist/commands/template/apply.js +0 -258
  306. package/dist/commands/template/apply.js.map +0 -1
  307. package/dist/commands/template/create.d.ts +0 -28
  308. package/dist/commands/template/create.js +0 -238
  309. package/dist/commands/template/create.js.map +0 -1
  310. package/dist/commands/template/delete.d.ts +0 -16
  311. package/dist/commands/template/delete.js +0 -141
  312. package/dist/commands/template/delete.js.map +0 -1
  313. package/dist/commands/template/index.d.ts +0 -11
  314. package/dist/commands/template/index.js +0 -65
  315. package/dist/commands/template/index.js.map +0 -1
  316. package/dist/commands/template/list.d.ts +0 -19
  317. package/dist/commands/template/list.js +0 -155
  318. package/dist/commands/template/list.js.map +0 -1
  319. package/dist/commands/template/save.d.ts +0 -17
  320. package/dist/commands/template/save.js +0 -101
  321. package/dist/commands/template/save.js.map +0 -1
  322. package/dist/commands/template/update.d.ts +0 -19
  323. package/dist/commands/template/update.js +0 -94
  324. package/dist/commands/template/update.js.map +0 -1
  325. package/dist/commands/ticket/template/apply.d.ts +0 -26
  326. package/dist/commands/ticket/template/apply.js +0 -15
  327. package/dist/commands/ticket/template/apply.js.map +0 -1
  328. package/dist/commands/ticket/template/delete.d.ts +0 -18
  329. package/dist/commands/ticket/template/delete.js +0 -63
  330. package/dist/commands/ticket/template/delete.js.map +0 -1
  331. package/dist/commands/ticket/template/list.d.ts +0 -17
  332. package/dist/commands/ticket/template/list.js +0 -79
  333. package/dist/commands/ticket/template/list.js.map +0 -1
  334. package/dist/commands/ticket/template/save.d.ts +0 -17
  335. package/dist/commands/ticket/template/save.js +0 -99
  336. package/dist/commands/ticket/template/save.js.map +0 -1
  337. package/dist/commands/work/spawn-all.d.ts +0 -19
  338. package/dist/commands/work/spawn-all.js +0 -64
  339. package/dist/commands/work/spawn-all.js.map +0 -1
  340. package/dist/commands/workflow/create.d.ts +0 -19
  341. package/dist/commands/workflow/create.js +0 -118
  342. package/dist/commands/workflow/create.js.map +0 -1
  343. package/dist/commands/workflow/delete.d.ts +0 -18
  344. package/dist/commands/workflow/delete.js +0 -108
  345. package/dist/commands/workflow/delete.js.map +0 -1
  346. package/dist/commands/workflow/index.d.ts +0 -16
  347. package/dist/commands/workflow/index.js +0 -73
  348. package/dist/commands/workflow/index.js.map +0 -1
  349. package/dist/commands/workflow/list.d.ts +0 -16
  350. package/dist/commands/workflow/list.js +0 -73
  351. package/dist/commands/workflow/list.js.map +0 -1
  352. package/dist/commands/workflow/setup.d.ts +0 -24
  353. package/dist/commands/workflow/setup.js +0 -351
  354. package/dist/commands/workflow/setup.js.map +0 -1
  355. package/dist/commands/workflow/show.d.ts +0 -13
  356. package/dist/commands/workflow/show.js +0 -17
  357. package/dist/commands/workflow/show.js.map +0 -1
  358. package/dist/commands/workflow/switch.js +0 -144
  359. package/dist/commands/workflow/switch.js.map +0 -1
  360. package/dist/commands/workflow/view.d.ts +0 -17
  361. package/dist/commands/workflow/view.js +0 -106
  362. package/dist/commands/workflow/view.js.map +0 -1
  363. package/dist/commands/workflow-rule/create.d.ts +0 -19
  364. package/dist/commands/workflow-rule/create.js +0 -141
  365. package/dist/commands/workflow-rule/create.js.map +0 -1
  366. package/dist/commands/workflow-rule/delete.d.ts +0 -18
  367. package/dist/commands/workflow-rule/delete.js +0 -72
  368. package/dist/commands/workflow-rule/delete.js.map +0 -1
  369. package/dist/commands/workflow-rule/index.d.ts +0 -16
  370. package/dist/commands/workflow-rule/index.js +0 -83
  371. package/dist/commands/workflow-rule/index.js.map +0 -1
  372. package/dist/commands/workflow-rule/list.d.ts +0 -17
  373. package/dist/commands/workflow-rule/list.js +0 -72
  374. package/dist/commands/workflow-rule/list.js.map +0 -1
  375. package/dist/commands/workflow-rule/update.d.ts +0 -22
  376. package/dist/commands/workflow-rule/update.js +0 -84
  377. package/dist/commands/workflow-rule/update.js.map +0 -1
@@ -1,98 +0,0 @@
1
- import { PMOCommand, pmoBaseFlags } from '../../lib/pmo/index.js';
2
- import { FlagResolver, shouldOutputJson } from '../../lib/flags/index.js';
3
- export default class Status extends PMOCommand {
4
- static description = 'Interactive menu for workflow status operations';
5
- static aliases = ['statuses'];
6
- static examples = [
7
- '<%= config.bin %> <%= command.id %>',
8
- ];
9
- static flags = {
10
- ...pmoBaseFlags,
11
- };
12
- getPMOOptions() {
13
- return { promptIfMultiple: false };
14
- }
15
- async execute() {
16
- const { flags } = await this.parse(Status);
17
- // Check if JSON output mode is active
18
- const jsonMode = shouldOutputJson(flags);
19
- // Define choices once, use for both JSON and interactive modes
20
- // Each choice includes the full command for AI agents to execute
21
- const menuChoices = [
22
- { id: 'list', name: 'List all statuses', command: 'prlt status list --machine' },
23
- { id: 'create', name: 'Create new status', command: 'prlt status create --machine' },
24
- { id: 'update', name: 'Update status', command: 'prlt status update --machine' },
25
- { id: 'move', name: 'Move status (change order)', command: 'prlt status move --machine' },
26
- { id: 'delete', name: 'Delete status', command: 'prlt status delete --machine' },
27
- { id: 'cancel', name: 'Cancel', command: '' },
28
- ];
29
- // Create FlagResolver for menu selection
30
- const resolver = new FlagResolver({
31
- commandName: 'status',
32
- baseCommand: 'prlt status',
33
- jsonMode,
34
- flags,
35
- });
36
- // Add menu prompt
37
- resolver.addPrompt({
38
- flagName: 'action',
39
- type: 'list',
40
- message: '📊 Workflow Statuses - What would you like to do?',
41
- choices: () => menuChoices.map(c => ({
42
- name: c.name,
43
- value: c.id,
44
- command: c.command,
45
- })),
46
- when: (ctx) => !ctx.flags.action,
47
- });
48
- const resolved = await resolver.resolve();
49
- const action = resolved.action;
50
- if (action === 'cancel' || !action) {
51
- return;
52
- }
53
- // Run the selected subcommand
54
- switch (action) {
55
- case 'list':
56
- await this.config.runCommand('status:list', []);
57
- break;
58
- case 'create':
59
- await this.config.runCommand('status:create', ['--interactive']);
60
- break;
61
- case 'update': {
62
- // First list statuses, then prompt for selection
63
- await this.config.runCommand('status:list', []);
64
- const { statusId } = await this.prompt([{
65
- type: 'input',
66
- name: 'statusId',
67
- message: 'Status ID to update:',
68
- validate: (input) => input.length > 0 || 'Status ID is required',
69
- }], null);
70
- await this.config.runCommand('status:update', [statusId]);
71
- break;
72
- }
73
- case 'move': {
74
- await this.config.runCommand('status:list', []);
75
- const { statusId } = await this.prompt([{
76
- type: 'input',
77
- name: 'statusId',
78
- message: 'Status ID to move:',
79
- validate: (input) => input.length > 0 || 'Status ID is required',
80
- }], null);
81
- await this.config.runCommand('status:move', [statusId]);
82
- break;
83
- }
84
- case 'delete': {
85
- await this.config.runCommand('status:list', []);
86
- const { statusId } = await this.prompt([{
87
- type: 'input',
88
- name: 'statusId',
89
- message: 'Status ID to delete:',
90
- validate: (input) => input.length > 0 || 'Status ID is required',
91
- }], null);
92
- await this.config.runCommand('status:delete', [statusId]);
93
- break;
94
- }
95
- }
96
- }
97
- }
98
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/status/index.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import { PMOCommand } from '../../lib/pmo/index.js';
2
- export default class StatusList extends PMOCommand {
3
- static description: string;
4
- static examples: string[];
5
- static flags: {
6
- category: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
- json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
8
- machine: import("@oclif/core/interfaces").BooleanFlag<boolean>;
9
- project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
- };
11
- execute(): Promise<void>;
12
- private groupByCategory;
13
- }
@@ -1,97 +0,0 @@
1
- import { Flags } from '@oclif/core';
2
- import { PMOCommand, pmoBaseFlags } from '../../lib/pmo/index.js';
3
- import { styles } from '../../lib/styles.js';
4
- import { STATE_CATEGORY_ORDER } from '../../lib/pmo/types.js';
5
- import { shouldOutputJson, outputErrorAsJson, createMetadata } from '../../lib/prompt-json.js';
6
- export default class StatusList extends PMOCommand {
7
- static description = 'List all workflow statuses for a project';
8
- static examples = [
9
- '<%= config.bin %> <%= command.id %>',
10
- '<%= config.bin %> <%= command.id %> --project my-project',
11
- '<%= config.bin %> <%= command.id %> --category started',
12
- ];
13
- static flags = {
14
- ...pmoBaseFlags,
15
- category: Flags.string({
16
- char: 'c',
17
- description: 'Filter by category',
18
- options: ['backlog', 'unstarted', 'started', 'completed', 'canceled'],
19
- }),
20
- };
21
- async execute() {
22
- const { flags } = await this.parse(StatusList);
23
- // Check if JSON output mode is active
24
- const jsonMode = shouldOutputJson(flags);
25
- // This command requires project context - get projectId (with JSON mode support)
26
- const projectId = await this.requireProject({
27
- jsonMode: jsonMode ? {
28
- flags,
29
- commandName: 'status list',
30
- baseCommand: 'prlt status list',
31
- } : undefined,
32
- });
33
- // Get the project's workflow ID
34
- const project = await this.storage.getProject(projectId);
35
- if (!project?.workflowId) {
36
- if (jsonMode) {
37
- outputErrorAsJson('NO_WORKFLOW', `Project "${projectId}" has no workflow assigned.`, createMetadata('status list', flags));
38
- return;
39
- }
40
- this.error(`Project "${projectId}" has no workflow assigned.`);
41
- }
42
- const allStatuses = await this.storage.listStatuses(project.workflowId);
43
- // Apply category filter if specified
44
- const statuses = flags.category
45
- ? allStatuses.filter(s => s.category === flags.category)
46
- : allStatuses;
47
- if (jsonMode) {
48
- this.log(JSON.stringify(statuses, null, 2));
49
- return;
50
- }
51
- if (statuses.length === 0) {
52
- this.log(styles.muted('\nNo statuses found.'));
53
- this.log(styles.muted('Apply a template: prlt template apply kanban'));
54
- return;
55
- }
56
- // Group by category
57
- const grouped = this.groupByCategory(statuses);
58
- const projectName = await this.getProjectName(projectId);
59
- this.log(`\n📊 ${styles.emphasis('Workflow Statuses')} - ${projectName}`);
60
- this.log('═'.repeat(60));
61
- const categoryEmoji = {
62
- triage: '📬',
63
- backlog: '📥',
64
- unstarted: '📋',
65
- started: '🚀',
66
- completed: '✅',
67
- canceled: '🚫',
68
- };
69
- for (const category of STATE_CATEGORY_ORDER) {
70
- const categoryStatuses = grouped.get(category);
71
- if (!categoryStatuses || categoryStatuses.length === 0)
72
- continue;
73
- const emoji = categoryEmoji[category];
74
- this.log(`\n${emoji} ${styles.emphasis(category.toUpperCase())}`);
75
- this.log('─'.repeat(40));
76
- for (const status of categoryStatuses) {
77
- const defaultBadge = status.isDefault ? styles.muted(' (default)') : '';
78
- const colorPreview = status.color ? `[${status.color}]` : '';
79
- this.log(` ${status.name}${defaultBadge} ${styles.muted(colorPreview)}`);
80
- if (status.description) {
81
- this.log(` ${styles.muted(status.description)}`);
82
- }
83
- }
84
- }
85
- this.log('');
86
- }
87
- groupByCategory(statuses) {
88
- const grouped = new Map();
89
- for (const status of statuses) {
90
- const existing = grouped.get(status.category) || [];
91
- existing.push(status);
92
- grouped.set(status.category, existing);
93
- }
94
- return grouped;
95
- }
96
- }
97
- //# sourceMappingURL=list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/status/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAiB,oBAAoB,EAAkB,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/F,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,UAAU;IAChD,MAAM,CAAC,WAAW,GAAG,0CAA0C,CAAC;IAEhE,MAAM,CAAC,QAAQ,GAAG;QAChB,qCAAqC;QACrC,0DAA0D;QAC1D,wDAAwD;KACzD,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,YAAY;QACf,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,oBAAoB;YACjC,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC;SACtE,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,OAAO;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAE/C,sCAAsC;QACtC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAEzC,iFAAiF;QACjF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC;YAC1C,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACnB,KAAK;gBACL,WAAW,EAAE,aAAa;gBAC1B,WAAW,EAAE,kBAAkB;aAChC,CAAC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;QAEH,gCAAgC;QAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;YACzB,IAAI,QAAQ,EAAE,CAAC;gBACb,iBAAiB,CAAC,aAAa,EAAE,YAAY,SAAS,6BAA6B,EAAE,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC3H,OAAM;YACR,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,YAAY,SAAS,6BAA6B,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAExE,qCAAqC;QACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ;YAC7B,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC;YACxD,CAAC,CAAC,WAAW,CAAC;QAEhB,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAC/C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,oBAAoB;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAE/C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzB,MAAM,aAAa,GAAkC;YACnD,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,GAAG;YACd,QAAQ,EAAE,IAAI;SACf,CAAC;QAEF,KAAK,MAAM,QAAQ,IAAI,oBAAoB,EAAE,CAAC;YAC5C,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAEjE,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;YAClE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAEzB,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;gBACtC,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxE,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,IAAI,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,YAAY,IAAI,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;gBAC1E,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACvB,IAAI,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAEO,eAAe,CAAC,QAA0B;QAChD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmC,CAAC;QAE3D,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC"}
@@ -1,15 +0,0 @@
1
- import { PMOCommand } from '../../lib/pmo/index.js';
2
- export default class StatusMove extends PMOCommand {
3
- static description: string;
4
- static examples: string[];
5
- static args: {
6
- id: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
7
- };
8
- static flags: {
9
- position: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
- json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
11
- machine: import("@oclif/core/interfaces").BooleanFlag<boolean>;
12
- project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
13
- };
14
- execute(): Promise<void>;
15
- }
@@ -1,126 +0,0 @@
1
- import { Flags, Args } from '@oclif/core';
2
- import { PMOCommand, pmoBaseFlags } from '../../lib/pmo/index.js';
3
- import { styles } from '../../lib/styles.js';
4
- import { FlagResolver, shouldOutputJson } from '../../lib/flags/index.js';
5
- import { outputErrorAsJson, createMetadata, } from '../../lib/prompt-json.js';
6
- export default class StatusMove extends PMOCommand {
7
- static description = 'Reorder a status within its category';
8
- static examples = [
9
- '<%= config.bin %> <%= command.id %> my-project-in-review --position 0 # Move to first',
10
- '<%= config.bin %> <%= command.id %> my-project-blocked --position 2',
11
- '<%= config.bin %> <%= command.id %> # Interactive mode',
12
- ];
13
- static args = {
14
- id: Args.string({
15
- description: 'Status ID - prompts with dropdown if not provided',
16
- required: false,
17
- }),
18
- };
19
- static flags = {
20
- ...pmoBaseFlags,
21
- position: Flags.integer({
22
- char: 'p',
23
- description: 'New position (0-indexed) within the category',
24
- required: false,
25
- }),
26
- };
27
- async execute() {
28
- const { args, flags } = await this.parse(StatusMove);
29
- // Check if JSON output mode is active
30
- const jsonMode = shouldOutputJson(flags);
31
- // This command requires project context - get projectId (with JSON mode support)
32
- const projectId = await this.requireProject({
33
- jsonMode: jsonMode ? {
34
- flags,
35
- commandName: 'status move',
36
- baseCommand: 'prlt status move',
37
- } : undefined,
38
- });
39
- // Helper to handle errors in JSON mode
40
- const handleError = (code, message) => {
41
- if (jsonMode) {
42
- outputErrorAsJson(code, message, createMetadata('status move', flags));
43
- return;
44
- }
45
- this.error(message);
46
- };
47
- // Get the project's workflow ID
48
- const project = await this.storage.getProject(projectId);
49
- if (!project?.workflowId) {
50
- return handleError('NO_WORKFLOW', `Project "${projectId}" has no workflow assigned.`);
51
- }
52
- // Get all statuses for this workflow
53
- const statuses = await this.storage.listStatuses(project.workflowId);
54
- if (statuses.length === 0) {
55
- return handleError('NO_STATUSES', 'No statuses found. Create a status first with "prlt status create".');
56
- }
57
- // Create FlagResolver for prompts
58
- const resolver = new FlagResolver({
59
- commandName: 'status move',
60
- baseCommand: 'prlt status move',
61
- jsonMode,
62
- flags: { ...flags, id: args.id },
63
- context: { projectId },
64
- });
65
- // Add status selection prompt
66
- resolver.addPrompt({
67
- flagName: 'id',
68
- type: 'list',
69
- message: 'Select status to move:',
70
- choices: () => statuses.map(s => ({
71
- name: `${s.name} (${s.category}, position ${s.position})`,
72
- value: s.id,
73
- command: `prlt status move ${s.id} --machine`,
74
- })),
75
- when: (ctx) => !ctx.flags.id,
76
- });
77
- // Resolve status ID
78
- const resolved = await resolver.resolve();
79
- const statusId = resolved.id;
80
- // Get existing status
81
- const existing = await this.storage.getStatus(statusId);
82
- if (!existing) {
83
- return handleError('STATUS_NOT_FOUND', `Status not found: ${statusId}`);
84
- }
85
- // Get statuses in the same category for position selection
86
- const categoryStatuses = statuses.filter(s => s.category === existing.category);
87
- // Create second resolver for position (needs status context)
88
- const positionResolver = new FlagResolver({
89
- commandName: 'status move',
90
- baseCommand: 'prlt status move',
91
- jsonMode,
92
- flags: { ...flags, id: statusId },
93
- context: { projectId, statusId, existing },
94
- });
95
- // Add position selection prompt
96
- positionResolver.addPrompt({
97
- flagName: 'position',
98
- type: 'list',
99
- message: `New position within ${existing.category} (currently ${existing.position}):`,
100
- choices: () => categoryStatuses.map((_, idx) => ({
101
- name: `Position ${idx}${idx === existing.position ? ' (current)' : ''}`,
102
- value: idx,
103
- command: `prlt status move ${statusId} --position ${idx} --machine`,
104
- })),
105
- when: (ctx) => ctx.flags.position === undefined,
106
- });
107
- // Resolve position
108
- const positionResolved = await positionResolver.resolve();
109
- const newPosition = positionResolved.position;
110
- if (newPosition < 0) {
111
- if (jsonMode) {
112
- outputErrorAsJson('INVALID_POSITION', 'Position must be >= 0', createMetadata('status move', flags));
113
- return;
114
- }
115
- this.error('Position must be >= 0');
116
- }
117
- const updated = await this.storage.reorderStatus(statusId, newPosition);
118
- if (existing.position === updated.position) {
119
- this.log(styles.muted(`Status "${updated.name}" is already at position ${updated.position}`));
120
- }
121
- else {
122
- this.log(styles.success(`Moved "${updated.name}" from position ${existing.position} to ${updated.position}`));
123
- }
124
- }
125
- }
126
- //# sourceMappingURL=move.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"move.js","sourceRoot":"","sources":["../../../src/commands/status/move.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- import { PMOCommand } from '../../lib/pmo/index.js';
2
- export default class StatusUpdate extends PMOCommand {
3
- static description: string;
4
- static examples: string[];
5
- static args: {
6
- id: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
7
- };
8
- static flags: {
9
- name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
- category: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
- color: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
12
- description: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
13
- default: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
- interactive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
- json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
- machine: import("@oclif/core/interfaces").BooleanFlag<boolean>;
17
- project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
- };
19
- execute(): Promise<void>;
20
- }
@@ -1,214 +0,0 @@
1
- import { Flags, Args } from '@oclif/core';
2
- import { PMOCommand, pmoBaseFlags } from '../../lib/pmo/index.js';
3
- import { styles } from '../../lib/styles.js';
4
- import { STATE_CATEGORY_ORDER } from '../../lib/pmo/types.js';
5
- import { FlagResolver, shouldOutputJson } from '../../lib/flags/index.js';
6
- import { outputErrorAsJson, createMetadata, } from '../../lib/prompt-json.js';
7
- export default class StatusUpdate extends PMOCommand {
8
- static description = 'Update a workflow status';
9
- static examples = [
10
- '<%= config.bin %> <%= command.id %> my-project-in-review --name "Code Review"',
11
- '<%= config.bin %> <%= command.id %> my-project-blocked --color "#EF4444"',
12
- '<%= config.bin %> <%= command.id %> my-project-todo --default # Set as default',
13
- '<%= config.bin %> <%= command.id %> # Interactive mode',
14
- ];
15
- static args = {
16
- id: Args.string({
17
- description: 'Status ID - prompts with dropdown if not provided',
18
- required: false,
19
- }),
20
- };
21
- static flags = {
22
- ...pmoBaseFlags,
23
- name: Flags.string({
24
- char: 'n',
25
- description: 'New status name',
26
- }),
27
- category: Flags.string({
28
- char: 'c',
29
- description: 'New category',
30
- options: ['backlog', 'unstarted', 'started', 'completed', 'canceled'],
31
- }),
32
- color: Flags.string({
33
- description: 'Hex color code (e.g., #FF0000)',
34
- }),
35
- description: Flags.string({
36
- char: 'd',
37
- description: 'Status description',
38
- }),
39
- default: Flags.boolean({
40
- description: 'Set as default status for new tickets',
41
- allowNo: true,
42
- }),
43
- interactive: Flags.boolean({
44
- char: 'i',
45
- description: 'Interactive mode',
46
- default: false,
47
- }),
48
- };
49
- async execute() {
50
- const { args, flags } = await this.parse(StatusUpdate);
51
- // Check if JSON output mode is active
52
- const jsonMode = shouldOutputJson(flags);
53
- // This command requires project context - get projectId (with JSON mode support)
54
- const projectId = await this.requireProject({
55
- jsonMode: jsonMode ? {
56
- flags,
57
- commandName: 'status update',
58
- baseCommand: 'prlt status update',
59
- } : undefined,
60
- });
61
- // Helper to handle errors in JSON mode
62
- const handleError = (code, message) => {
63
- if (jsonMode) {
64
- outputErrorAsJson(code, message, createMetadata('status update', flags));
65
- return;
66
- }
67
- this.error(message);
68
- };
69
- // Get the project's workflow ID
70
- const project = await this.storage.getProject(projectId);
71
- if (!project?.workflowId) {
72
- return handleError('NO_WORKFLOW', `Project "${projectId}" has no workflow assigned.`);
73
- }
74
- // Get all statuses for this workflow
75
- const statuses = await this.storage.listStatuses(project.workflowId);
76
- if (statuses.length === 0) {
77
- return handleError('NO_STATUSES', 'No statuses found. Create a status first with "prlt status create".');
78
- }
79
- // Create FlagResolver for status selection
80
- const resolver = new FlagResolver({
81
- commandName: 'status update',
82
- baseCommand: 'prlt status update',
83
- jsonMode,
84
- flags: { ...flags, id: args.id, category: flags.category },
85
- context: { projectId },
86
- });
87
- // Add status selection prompt
88
- resolver.addPrompt({
89
- flagName: 'id',
90
- type: 'list',
91
- message: 'Select status to update:',
92
- choices: () => statuses.map(s => ({
93
- name: `${s.name} (${s.category})`,
94
- value: s.id,
95
- command: `prlt status update ${s.id} --machine`,
96
- })),
97
- when: (ctx) => !ctx.flags.id,
98
- });
99
- // Resolve status ID
100
- const resolved = await resolver.resolve();
101
- const statusId = resolved.id;
102
- // Get existing status
103
- const existing = await this.storage.getStatus(statusId);
104
- if (!existing) {
105
- return handleError('STATUS_NOT_FOUND', `Status not found: ${statusId}`);
106
- }
107
- // Check if any change flags were provided
108
- const hasChangeFlags = flags.name !== undefined ||
109
- flags.category !== undefined ||
110
- flags.color !== undefined ||
111
- flags.description !== undefined ||
112
- flags.default !== undefined;
113
- let changes;
114
- // Auto-enter interactive mode if no change flags provided
115
- if (flags.interactive || !hasChangeFlags) {
116
- // Create FlagResolver for field updates
117
- const updateResolver = new FlagResolver({
118
- commandName: 'status update',
119
- baseCommand: `prlt status update ${statusId}`,
120
- jsonMode,
121
- flags: { ...flags, id: statusId, category: flags.category },
122
- context: { projectId, statusId, existing },
123
- });
124
- // Add prompts for each field
125
- updateResolver.addPrompt({
126
- flagName: 'name',
127
- type: 'input',
128
- message: 'Status name:',
129
- default: existing.name,
130
- validate: (value) => value.length > 0 || 'Name is required',
131
- when: (ctx) => ctx.flags.name === undefined,
132
- });
133
- updateResolver.addPrompt({
134
- flagName: 'category',
135
- type: 'list',
136
- message: 'Category:',
137
- choices: () => STATE_CATEGORY_ORDER.map(cat => ({
138
- name: cat,
139
- value: cat,
140
- command: `prlt status update ${statusId} --category ${cat} --machine`,
141
- })),
142
- default: existing.category,
143
- when: (ctx) => ctx.flags.category === undefined,
144
- });
145
- updateResolver.addPrompt({
146
- flagName: 'color',
147
- type: 'input',
148
- message: 'Color (hex, optional):',
149
- default: existing.color || '',
150
- validate: (value) => {
151
- const v = value;
152
- if (!v)
153
- return true;
154
- return /^#[0-9A-Fa-f]{6}$/.test(v) || 'Invalid hex color (e.g., #FF0000)';
155
- },
156
- when: (ctx) => ctx.flags.color === undefined,
157
- });
158
- updateResolver.addPrompt({
159
- flagName: 'description',
160
- type: 'input',
161
- message: 'Description (optional):',
162
- default: existing.description || '',
163
- when: (ctx) => ctx.flags.description === undefined,
164
- });
165
- updateResolver.addPrompt({
166
- flagName: 'default',
167
- type: 'list',
168
- message: 'Set as default status for new tickets?',
169
- choices: () => [
170
- { name: 'Yes', value: true, command: `prlt status update ${statusId} --default --json` },
171
- { name: 'No', value: false, command: `prlt status update ${statusId} --no-default --json` },
172
- ],
173
- default: existing.isDefault || false,
174
- when: (ctx) => ctx.flags.default === undefined,
175
- });
176
- const updateResolved = await updateResolver.resolve();
177
- changes = {};
178
- if (updateResolved.name !== existing.name)
179
- changes.name = updateResolved.name;
180
- if (updateResolved.category !== existing.category)
181
- changes.category = updateResolved.category;
182
- if (updateResolved.color !== (existing.color || ''))
183
- changes.color = updateResolved.color || undefined;
184
- if (updateResolved.description !== (existing.description || ''))
185
- changes.description = updateResolved.description || undefined;
186
- if (updateResolved.default !== (existing.isDefault || false))
187
- changes.isDefault = updateResolved.default;
188
- }
189
- else {
190
- changes = {};
191
- if (flags.name !== undefined)
192
- changes.name = flags.name;
193
- if (flags.category !== undefined)
194
- changes.category = flags.category;
195
- if (flags.color !== undefined)
196
- changes.color = flags.color;
197
- if (flags.description !== undefined)
198
- changes.description = flags.description;
199
- if (flags.default !== undefined)
200
- changes.isDefault = flags.default;
201
- }
202
- const updated = await this.storage.updateStatus(statusId, changes);
203
- this.log(styles.success(`\nUpdated status "${styles.emphasis(updated.name)}"`));
204
- this.log(styles.muted(` ID: ${updated.id}`));
205
- this.log(styles.muted(` Category: ${updated.category}`));
206
- if (updated.color) {
207
- this.log(styles.muted(` Color: ${updated.color}`));
208
- }
209
- if (updated.isDefault) {
210
- this.log(styles.muted(` Default: yes`));
211
- }
212
- }
213
- }
214
- //# sourceMappingURL=update.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/status/update.ts"],"names":[],"mappings":"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"}