@proletariat/cli 0.3.71 → 0.3.73

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 (447) hide show
  1. package/dist/commands/action/create.d.ts +6 -2
  2. package/dist/commands/action/create.js +108 -40
  3. package/dist/commands/action/create.js.map +1 -1
  4. package/dist/commands/action/delete.js +1 -1
  5. package/dist/commands/action/delete.js.map +1 -1
  6. package/dist/commands/action/list.d.ts +1 -1
  7. package/dist/commands/action/list.js +12 -10
  8. package/dist/commands/action/list.js.map +1 -1
  9. package/dist/commands/action/run.js +3 -3
  10. package/dist/commands/action/run.js.map +1 -1
  11. package/dist/commands/action/show.js +25 -4
  12. package/dist/commands/action/show.js.map +1 -1
  13. package/dist/commands/action/update.d.ts +6 -2
  14. package/dist/commands/action/update.js +131 -53
  15. package/dist/commands/action/update.js.map +1 -1
  16. package/dist/commands/agent/auth.js +4 -0
  17. package/dist/commands/agent/auth.js.map +1 -1
  18. package/dist/commands/agent/cleanup.js +1 -1
  19. package/dist/commands/agent/cleanup.js.map +1 -1
  20. package/dist/commands/agent/discover.js +1 -0
  21. package/dist/commands/agent/discover.js.map +1 -1
  22. package/dist/commands/agent/index.js +2 -0
  23. package/dist/commands/agent/index.js.map +1 -1
  24. package/dist/commands/agent/rebuild.js +1 -1
  25. package/dist/commands/agent/rebuild.js.map +1 -1
  26. package/dist/commands/agent/remove.js +1 -1
  27. package/dist/commands/agent/remove.js.map +1 -1
  28. package/dist/commands/agent/restart.js +1 -1
  29. package/dist/commands/agent/restart.js.map +1 -1
  30. package/dist/commands/agent/visit.js +1 -1
  31. package/dist/commands/agent/visit.js.map +1 -1
  32. package/dist/commands/asana/connect.js +6 -5
  33. package/dist/commands/asana/connect.js.map +1 -1
  34. package/dist/commands/asana/import.js +4 -4
  35. package/dist/commands/asana/import.js.map +1 -1
  36. package/dist/commands/asana/sync.js +3 -3
  37. package/dist/commands/asana/sync.js.map +1 -1
  38. package/dist/commands/autocomplete/setup.js +2 -1
  39. package/dist/commands/autocomplete/setup.js.map +1 -1
  40. package/dist/commands/board/index.js +1 -0
  41. package/dist/commands/board/index.js.map +1 -1
  42. package/dist/commands/board/view.js +1 -1
  43. package/dist/commands/board/view.js.map +1 -1
  44. package/dist/commands/branch/create.js +1 -1
  45. package/dist/commands/branch/create.js.map +1 -1
  46. package/dist/commands/branch/validate.js +2 -0
  47. package/dist/commands/branch/validate.js.map +1 -1
  48. package/dist/commands/branch/where.js +1 -0
  49. package/dist/commands/branch/where.js.map +1 -1
  50. package/dist/commands/category/create.js +3 -0
  51. package/dist/commands/category/create.js.map +1 -1
  52. package/dist/commands/category/delete.js +3 -0
  53. package/dist/commands/category/delete.js.map +1 -1
  54. package/dist/commands/category/rename.js +6 -0
  55. package/dist/commands/category/rename.js.map +1 -1
  56. package/dist/commands/claude/index.js +5 -5
  57. package/dist/commands/claude/index.js.map +1 -1
  58. package/dist/commands/claude/open.js +5 -0
  59. package/dist/commands/claude/open.js.map +1 -1
  60. package/dist/commands/commit.js +1 -1
  61. package/dist/commands/commit.js.map +1 -1
  62. package/dist/commands/config/index.js +6 -1
  63. package/dist/commands/config/index.js.map +1 -1
  64. package/dist/commands/dashboard.js +1 -0
  65. package/dist/commands/dashboard.js.map +1 -1
  66. package/dist/commands/diet.js +1 -0
  67. package/dist/commands/diet.js.map +1 -1
  68. package/dist/commands/docker/clean.js +2 -0
  69. package/dist/commands/docker/clean.js.map +1 -1
  70. package/dist/commands/docker/index.js +1 -0
  71. package/dist/commands/docker/index.js.map +1 -1
  72. package/dist/commands/docker/logs.js +6 -0
  73. package/dist/commands/docker/logs.js.map +1 -1
  74. package/dist/commands/docker/prune.js +1 -0
  75. package/dist/commands/docker/prune.js.map +1 -1
  76. package/dist/commands/docker/restart.js +5 -0
  77. package/dist/commands/docker/restart.js.map +1 -1
  78. package/dist/commands/docker/start.js +4 -0
  79. package/dist/commands/docker/start.js.map +1 -1
  80. package/dist/commands/docker/stop.js +4 -0
  81. package/dist/commands/docker/stop.js.map +1 -1
  82. package/dist/commands/epic/activate.js +1 -1
  83. package/dist/commands/epic/activate.js.map +1 -1
  84. package/dist/commands/epic/archive.js +1 -1
  85. package/dist/commands/epic/archive.js.map +1 -1
  86. package/dist/commands/epic/create.js +4 -0
  87. package/dist/commands/epic/create.js.map +1 -1
  88. package/dist/commands/epic/delete.js +1 -1
  89. package/dist/commands/epic/delete.js.map +1 -1
  90. package/dist/commands/epic/move.js +1 -1
  91. package/dist/commands/epic/move.js.map +1 -1
  92. package/dist/commands/epic/progress.js +1 -0
  93. package/dist/commands/epic/progress.js.map +1 -1
  94. package/dist/commands/epic/project.js +1 -1
  95. package/dist/commands/epic/project.js.map +1 -1
  96. package/dist/commands/epic/reorder.js +1 -1
  97. package/dist/commands/epic/reorder.js.map +1 -1
  98. package/dist/commands/epic/spec.js +1 -1
  99. package/dist/commands/epic/spec.js.map +1 -1
  100. package/dist/commands/epic/ticket.js +1 -1
  101. package/dist/commands/epic/ticket.js.map +1 -1
  102. package/dist/commands/epic/view.js +1 -1
  103. package/dist/commands/epic/view.js.map +1 -1
  104. package/dist/commands/execution/config.js +7 -1
  105. package/dist/commands/execution/config.js.map +1 -1
  106. package/dist/commands/execution/list.js +1 -0
  107. package/dist/commands/execution/list.js.map +1 -1
  108. package/dist/commands/execution/logs.js +1 -0
  109. package/dist/commands/execution/logs.js.map +1 -1
  110. package/dist/commands/execution/stop.js +2 -0
  111. package/dist/commands/execution/stop.js.map +1 -1
  112. package/dist/commands/execution/view.js +3 -1
  113. package/dist/commands/execution/view.js.map +1 -1
  114. package/dist/commands/feedback/list.js +2 -0
  115. package/dist/commands/feedback/list.js.map +1 -1
  116. package/dist/commands/feedback/submit.js +2 -0
  117. package/dist/commands/feedback/submit.js.map +1 -1
  118. package/dist/commands/feedback/view.js +2 -0
  119. package/dist/commands/feedback/view.js.map +1 -1
  120. package/dist/commands/gh/login.js +1 -1
  121. package/dist/commands/gh/login.js.map +1 -1
  122. package/dist/commands/gh/token.js +1 -1
  123. package/dist/commands/gh/token.js.map +1 -1
  124. package/dist/commands/linear/auth.js +4 -4
  125. package/dist/commands/linear/auth.js.map +1 -1
  126. package/dist/commands/linear/connect.js +10 -5
  127. package/dist/commands/linear/connect.js.map +1 -1
  128. package/dist/commands/linear/import.js +4 -3
  129. package/dist/commands/linear/import.js.map +1 -1
  130. package/dist/commands/linear/sync.js +3 -3
  131. package/dist/commands/linear/sync.js.map +1 -1
  132. package/dist/commands/link/create.js +1 -1
  133. package/dist/commands/link/create.js.map +1 -1
  134. package/dist/commands/link/list.js +1 -1
  135. package/dist/commands/link/list.js.map +1 -1
  136. package/dist/commands/link/remove.js +1 -1
  137. package/dist/commands/link/remove.js.map +1 -1
  138. package/dist/commands/media/add.js +2 -1
  139. package/dist/commands/media/add.js.map +1 -1
  140. package/dist/commands/media/index.js +2 -0
  141. package/dist/commands/media/index.js.map +1 -1
  142. package/dist/commands/media/list.js +1 -0
  143. package/dist/commands/media/list.js.map +1 -1
  144. package/dist/commands/media/preprocess.js +1 -1
  145. package/dist/commands/media/preprocess.js.map +1 -1
  146. package/dist/commands/media/remove.js +2 -1
  147. package/dist/commands/media/remove.js.map +1 -1
  148. package/dist/commands/media/show.js +1 -1
  149. package/dist/commands/media/show.js.map +1 -1
  150. package/dist/commands/monday/connect.js +4 -4
  151. package/dist/commands/monday/connect.js.map +1 -1
  152. package/dist/commands/monday/sync.js +4 -4
  153. package/dist/commands/monday/sync.js.map +1 -1
  154. package/dist/commands/new.js +1 -0
  155. package/dist/commands/new.js.map +1 -1
  156. package/dist/commands/orchestrator/start.js +2 -0
  157. package/dist/commands/orchestrator/start.js.map +1 -1
  158. package/dist/commands/phase/delete.js +1 -1
  159. package/dist/commands/phase/delete.js.map +1 -1
  160. package/dist/commands/phase/move.js +1 -1
  161. package/dist/commands/phase/move.js.map +1 -1
  162. package/dist/commands/phase/template/delete.js +1 -0
  163. package/dist/commands/phase/template/delete.js.map +1 -1
  164. package/dist/commands/phase/update.js +1 -1
  165. package/dist/commands/phase/update.js.map +1 -1
  166. package/dist/commands/pmo/init.js +2 -2
  167. package/dist/commands/pmo/init.js.map +1 -1
  168. package/dist/commands/pr/checks.js +1 -1
  169. package/dist/commands/pr/checks.js.map +1 -1
  170. package/dist/commands/pr/create.js +1 -1
  171. package/dist/commands/pr/create.js.map +1 -1
  172. package/dist/commands/pr/index.js +1 -1
  173. package/dist/commands/pr/index.js.map +1 -1
  174. package/dist/commands/pr/link.js +3 -3
  175. package/dist/commands/pr/link.js.map +1 -1
  176. package/dist/commands/pr/list.js +1 -1
  177. package/dist/commands/pr/list.js.map +1 -1
  178. package/dist/commands/pr/merge.js +1 -1
  179. package/dist/commands/pr/merge.js.map +1 -1
  180. package/dist/commands/pr/status.js +1 -1
  181. package/dist/commands/pr/status.js.map +1 -1
  182. package/dist/commands/priority/add.js +2 -2
  183. package/dist/commands/priority/add.js.map +1 -1
  184. package/dist/commands/priority/remove.js +2 -2
  185. package/dist/commands/priority/remove.js.map +1 -1
  186. package/dist/commands/priority/set.js +2 -2
  187. package/dist/commands/priority/set.js.map +1 -1
  188. package/dist/commands/project/archive.js +1 -1
  189. package/dist/commands/project/archive.js.map +1 -1
  190. package/dist/commands/project/create.js +4 -0
  191. package/dist/commands/project/create.js.map +1 -1
  192. package/dist/commands/project/delete.js +1 -1
  193. package/dist/commands/project/delete.js.map +1 -1
  194. package/dist/commands/project/spec.js +1 -1
  195. package/dist/commands/project/spec.js.map +1 -1
  196. package/dist/commands/project/unarchive.js +1 -1
  197. package/dist/commands/project/unarchive.js.map +1 -1
  198. package/dist/commands/project/update.js +1 -1
  199. package/dist/commands/project/update.js.map +1 -1
  200. package/dist/commands/project/view.js +1 -1
  201. package/dist/commands/project/view.js.map +1 -1
  202. package/dist/commands/pull.js +3 -0
  203. package/dist/commands/pull.js.map +1 -1
  204. package/dist/commands/qa/index.js +4 -4
  205. package/dist/commands/qa/index.js.map +1 -1
  206. package/dist/commands/repo/add.js +1 -1
  207. package/dist/commands/repo/add.js.map +1 -1
  208. package/dist/commands/repo/create.js +1 -1
  209. package/dist/commands/repo/create.js.map +1 -1
  210. package/dist/commands/repo/remove.js +2 -2
  211. package/dist/commands/repo/remove.js.map +1 -1
  212. package/dist/commands/repo/view.js +1 -1
  213. package/dist/commands/repo/view.js.map +1 -1
  214. package/dist/commands/roadmap/create.js +1 -0
  215. package/dist/commands/roadmap/create.js.map +1 -1
  216. package/dist/commands/session/create.js +4 -0
  217. package/dist/commands/session/create.js.map +1 -1
  218. package/dist/commands/session/exec.js +4 -0
  219. package/dist/commands/session/exec.js.map +1 -1
  220. package/dist/commands/session/health.js +2 -0
  221. package/dist/commands/session/health.js.map +1 -1
  222. package/dist/commands/session/inspect.js +3 -0
  223. package/dist/commands/session/inspect.js.map +1 -1
  224. package/dist/commands/session/peek.js +1 -0
  225. package/dist/commands/session/peek.js.map +1 -1
  226. package/dist/commands/session/restart.js +4 -0
  227. package/dist/commands/session/restart.js.map +1 -1
  228. package/dist/commands/shortcut/connect.js +4 -4
  229. package/dist/commands/shortcut/connect.js.map +1 -1
  230. package/dist/commands/staff/remove.js +1 -1
  231. package/dist/commands/staff/remove.js.map +1 -1
  232. package/dist/commands/status/delete.js +2 -1
  233. package/dist/commands/status/delete.js.map +1 -1
  234. package/dist/commands/status/list.js +1 -0
  235. package/dist/commands/status/list.js.map +1 -1
  236. package/dist/commands/status/move.js +2 -1
  237. package/dist/commands/status/move.js.map +1 -1
  238. package/dist/commands/status/update.js +1 -1
  239. package/dist/commands/status/update.js.map +1 -1
  240. package/dist/commands/telemetry/disable.js +1 -0
  241. package/dist/commands/telemetry/disable.js.map +1 -1
  242. package/dist/commands/telemetry/enable.js +1 -0
  243. package/dist/commands/telemetry/enable.js.map +1 -1
  244. package/dist/commands/telemetry/index.js +1 -0
  245. package/dist/commands/telemetry/index.js.map +1 -1
  246. package/dist/commands/template/apply.js +2 -2
  247. package/dist/commands/template/apply.js.map +1 -1
  248. package/dist/commands/template/delete.js +1 -0
  249. package/dist/commands/template/delete.js.map +1 -1
  250. package/dist/commands/template/save.js +1 -0
  251. package/dist/commands/template/save.js.map +1 -1
  252. package/dist/commands/template/update.js +1 -0
  253. package/dist/commands/template/update.js.map +1 -1
  254. package/dist/commands/ticket/complete.js +1 -1
  255. package/dist/commands/ticket/complete.js.map +1 -1
  256. package/dist/commands/ticket/create.js +14 -4
  257. package/dist/commands/ticket/create.js.map +1 -1
  258. package/dist/commands/ticket/delete.js +23 -8
  259. package/dist/commands/ticket/delete.js.map +1 -1
  260. package/dist/commands/ticket/edit.js +2 -2
  261. package/dist/commands/ticket/edit.js.map +1 -1
  262. package/dist/commands/ticket/link/block.js +1 -1
  263. package/dist/commands/ticket/link/block.js.map +1 -1
  264. package/dist/commands/ticket/link/duplicates.js +1 -1
  265. package/dist/commands/ticket/link/duplicates.js.map +1 -1
  266. package/dist/commands/ticket/link/relates.js +1 -1
  267. package/dist/commands/ticket/link/relates.js.map +1 -1
  268. package/dist/commands/ticket/list.d.ts +0 -8
  269. package/dist/commands/ticket/list.js +15 -121
  270. package/dist/commands/ticket/list.js.map +1 -1
  271. package/dist/commands/ticket/move.js +34 -7
  272. package/dist/commands/ticket/move.js.map +1 -1
  273. package/dist/commands/ticket/resolve.js +2 -2
  274. package/dist/commands/ticket/resolve.js.map +1 -1
  275. package/dist/commands/ticket/status.js +1 -1
  276. package/dist/commands/ticket/status.js.map +1 -1
  277. package/dist/commands/ticket/template/delete.js +1 -0
  278. package/dist/commands/ticket/template/delete.js.map +1 -1
  279. package/dist/commands/ticket/template/save.js +1 -0
  280. package/dist/commands/ticket/template/save.js.map +1 -1
  281. package/dist/commands/ticket/update.js +1 -0
  282. package/dist/commands/ticket/update.js.map +1 -1
  283. package/dist/commands/ticket/view.js +1 -1
  284. package/dist/commands/ticket/view.js.map +1 -1
  285. package/dist/commands/tools/add.js +6 -0
  286. package/dist/commands/tools/add.js.map +1 -1
  287. package/dist/commands/tools/remove.js +3 -0
  288. package/dist/commands/tools/remove.js.map +1 -1
  289. package/dist/commands/trello/configure.js +5 -5
  290. package/dist/commands/trello/configure.js.map +1 -1
  291. package/dist/commands/trello/import.js +4 -4
  292. package/dist/commands/trello/import.js.map +1 -1
  293. package/dist/commands/trello/sync.js +3 -3
  294. package/dist/commands/trello/sync.js.map +1 -1
  295. package/dist/commands/version/bump.js +3 -0
  296. package/dist/commands/version/bump.js.map +1 -1
  297. package/dist/commands/work/complete.js +34 -1
  298. package/dist/commands/work/complete.js.map +1 -1
  299. package/dist/commands/work/hooks/add.js +7 -0
  300. package/dist/commands/work/hooks/add.js.map +1 -1
  301. package/dist/commands/work/hooks/list.js +2 -0
  302. package/dist/commands/work/hooks/list.js.map +1 -1
  303. package/dist/commands/work/hooks/remove.js +4 -0
  304. package/dist/commands/work/hooks/remove.js.map +1 -1
  305. package/dist/commands/work/hooks/toggle.js +4 -0
  306. package/dist/commands/work/hooks/toggle.js.map +1 -1
  307. package/dist/commands/work/ready.js +48 -7
  308. package/dist/commands/work/ready.js.map +1 -1
  309. package/dist/commands/work/resolve.js +1 -1
  310. package/dist/commands/work/resolve.js.map +1 -1
  311. package/dist/commands/work/review.js +3 -1
  312. package/dist/commands/work/review.js.map +1 -1
  313. package/dist/commands/work/revise.js +1 -1
  314. package/dist/commands/work/revise.js.map +1 -1
  315. package/dist/commands/work/source/set.js +3 -0
  316. package/dist/commands/work/source/set.js.map +1 -1
  317. package/dist/commands/work/source.js +1 -0
  318. package/dist/commands/work/source.js.map +1 -1
  319. package/dist/commands/work/spawn.js +4 -3
  320. package/dist/commands/work/spawn.js.map +1 -1
  321. package/dist/commands/work/start.js +121 -24
  322. package/dist/commands/work/start.js.map +1 -1
  323. package/dist/commands/work/watch.js +1 -1
  324. package/dist/commands/work/watch.js.map +1 -1
  325. package/dist/commands/workflow/delete.js +1 -1
  326. package/dist/commands/workflow/delete.js.map +1 -1
  327. package/dist/commands/workflow/setup.d.ts +24 -0
  328. package/dist/commands/workflow/setup.js +351 -0
  329. package/dist/commands/workflow/setup.js.map +1 -0
  330. package/dist/commands/workflow/switch.js +1 -1
  331. package/dist/commands/workflow/switch.js.map +1 -1
  332. package/dist/commands/workflow/view.js +1 -1
  333. package/dist/commands/workflow/view.js.map +1 -1
  334. package/dist/commands/workflow-rule/create.d.ts +19 -0
  335. package/dist/commands/workflow-rule/create.js +141 -0
  336. package/dist/commands/workflow-rule/create.js.map +1 -0
  337. package/dist/commands/workflow-rule/delete.d.ts +18 -0
  338. package/dist/commands/workflow-rule/delete.js +72 -0
  339. package/dist/commands/workflow-rule/delete.js.map +1 -0
  340. package/dist/commands/workflow-rule/index.d.ts +16 -0
  341. package/dist/commands/workflow-rule/index.js +83 -0
  342. package/dist/commands/workflow-rule/index.js.map +1 -0
  343. package/dist/commands/workflow-rule/list.d.ts +17 -0
  344. package/dist/commands/workflow-rule/list.js +72 -0
  345. package/dist/commands/workflow-rule/list.js.map +1 -0
  346. package/dist/commands/workflow-rule/update.d.ts +22 -0
  347. package/dist/commands/workflow-rule/update.js +84 -0
  348. package/dist/commands/workflow-rule/update.js.map +1 -0
  349. package/dist/commands/workspace/add.js +5 -0
  350. package/dist/commands/workspace/add.js.map +1 -1
  351. package/dist/commands/workspace/remove.js +1 -1
  352. package/dist/commands/workspace/remove.js.map +1 -1
  353. package/dist/hooks/init.js +37 -11
  354. package/dist/hooks/init.js.map +1 -1
  355. package/dist/hooks/postrun.d.ts +6 -4
  356. package/dist/hooks/postrun.js +25 -18
  357. package/dist/hooks/postrun.js.map +1 -1
  358. package/dist/lib/database/drizzle-schema.d.ts +269 -4
  359. package/dist/lib/database/drizzle-schema.js +22 -2
  360. package/dist/lib/database/drizzle-schema.js.map +1 -1
  361. package/dist/lib/database/migrations/0003_actions_redesign.d.ts +15 -0
  362. package/dist/lib/database/migrations/0003_actions_redesign.js +105 -0
  363. package/dist/lib/database/migrations/0003_actions_redesign.js.map +1 -0
  364. package/dist/lib/database/migrations/0004_workflow_rules.d.ts +2 -0
  365. package/dist/lib/database/migrations/0004_workflow_rules.js +25 -0
  366. package/dist/lib/database/migrations/0004_workflow_rules.js.map +1 -0
  367. package/dist/lib/database/migrations/index.js +4 -0
  368. package/dist/lib/database/migrations/index.js.map +1 -1
  369. package/dist/lib/events/events.d.ts +13 -1
  370. package/dist/lib/execution/commit-validation.d.ts +58 -0
  371. package/dist/lib/execution/commit-validation.js +252 -0
  372. package/dist/lib/execution/commit-validation.js.map +1 -0
  373. package/dist/lib/execution/config.js +3 -0
  374. package/dist/lib/execution/config.js.map +1 -1
  375. package/dist/lib/execution/storage.d.ts +24 -1
  376. package/dist/lib/execution/storage.js +35 -6
  377. package/dist/lib/execution/storage.js.map +1 -1
  378. package/dist/lib/flags/resolver.js +3 -6
  379. package/dist/lib/flags/resolver.js.map +1 -1
  380. package/dist/lib/linear/client.d.ts +4 -0
  381. package/dist/lib/linear/client.js +12 -0
  382. package/dist/lib/linear/client.js.map +1 -1
  383. package/dist/lib/onboarding/wizard.js +3 -3
  384. package/dist/lib/onboarding/wizard.js.map +1 -1
  385. package/dist/lib/pmo/base-command.d.ts +21 -1
  386. package/dist/lib/pmo/base-command.js +28 -4
  387. package/dist/lib/pmo/base-command.js.map +1 -1
  388. package/dist/lib/pmo/schema.d.ts +3 -1
  389. package/dist/lib/pmo/schema.js +25 -3
  390. package/dist/lib/pmo/schema.js.map +1 -1
  391. package/dist/lib/pmo/storage/actions.d.ts +5 -3
  392. package/dist/lib/pmo/storage/actions.js +89 -23
  393. package/dist/lib/pmo/storage/actions.js.map +1 -1
  394. package/dist/lib/pmo/storage/base.d.ts +5 -0
  395. package/dist/lib/pmo/storage/base.js +203 -20
  396. package/dist/lib/pmo/storage/base.js.map +1 -1
  397. package/dist/lib/pmo/storage/index.d.ts +9 -2
  398. package/dist/lib/pmo/storage/index.js +28 -3
  399. package/dist/lib/pmo/storage/index.js.map +1 -1
  400. package/dist/lib/pmo/storage/types.d.ts +19 -2
  401. package/dist/lib/pmo/storage/workflow-rules.d.ts +35 -0
  402. package/dist/lib/pmo/storage/workflow-rules.js +183 -0
  403. package/dist/lib/pmo/storage/workflow-rules.js.map +1 -0
  404. package/dist/lib/pmo/sync-manager.js +6 -0
  405. package/dist/lib/pmo/sync-manager.js.map +1 -1
  406. package/dist/lib/pmo/types.d.ts +59 -4
  407. package/dist/lib/pmo/types.js.map +1 -1
  408. package/dist/lib/prompt-command.js +1 -1
  409. package/dist/lib/prompt-command.js.map +1 -1
  410. package/dist/lib/prompt-json.d.ts +19 -11
  411. package/dist/lib/prompt-json.js +32 -17
  412. package/dist/lib/prompt-json.js.map +1 -1
  413. package/dist/lib/providers/index.d.ts +11 -0
  414. package/dist/lib/providers/index.js +11 -0
  415. package/dist/lib/providers/index.js.map +1 -0
  416. package/dist/lib/providers/linear-provider.d.ts +26 -0
  417. package/dist/lib/providers/linear-provider.js +339 -0
  418. package/dist/lib/providers/linear-provider.js.map +1 -0
  419. package/dist/lib/providers/pmo-provider.d.ts +20 -0
  420. package/dist/lib/providers/pmo-provider.js +83 -0
  421. package/dist/lib/providers/pmo-provider.js.map +1 -0
  422. package/dist/lib/providers/resolver.d.ts +44 -0
  423. package/dist/lib/providers/resolver.js +82 -0
  424. package/dist/lib/providers/resolver.js.map +1 -0
  425. package/dist/lib/providers/types.d.ts +136 -0
  426. package/dist/lib/providers/types.js +12 -0
  427. package/dist/lib/providers/types.js.map +1 -0
  428. package/dist/lib/telemetry/analytics.d.ts +25 -7
  429. package/dist/lib/telemetry/analytics.js +123 -58
  430. package/dist/lib/telemetry/analytics.js.map +1 -1
  431. package/dist/lib/update-prompt.d.ts +3 -3
  432. package/dist/lib/update-prompt.js +15 -10
  433. package/dist/lib/update-prompt.js.map +1 -1
  434. package/dist/lib/work-lifecycle/action-chaining.d.ts +61 -0
  435. package/dist/lib/work-lifecycle/action-chaining.js +211 -0
  436. package/dist/lib/work-lifecycle/action-chaining.js.map +1 -0
  437. package/dist/lib/work-lifecycle/index.d.ts +4 -0
  438. package/dist/lib/work-lifecycle/index.js +4 -0
  439. package/dist/lib/work-lifecycle/index.js.map +1 -1
  440. package/dist/lib/work-lifecycle/post-execution.d.ts +85 -0
  441. package/dist/lib/work-lifecycle/post-execution.js +120 -0
  442. package/dist/lib/work-lifecycle/post-execution.js.map +1 -0
  443. package/dist/lib/work-lifecycle/rule-evaluator.d.ts +38 -0
  444. package/dist/lib/work-lifecycle/rule-evaluator.js +102 -0
  445. package/dist/lib/work-lifecycle/rule-evaluator.js.map +1 -0
  446. package/oclif.manifest.json +4248 -3757
  447. package/package.json +1 -1
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Migration 0003 — Actions Table Redesign
3
+ *
4
+ * Redesigns pmo_actions to use state-name-based wiring (from_state/to_state)
5
+ * instead of category-based (suggestedForCategories/defaultMoveToCategory).
6
+ *
7
+ * New columns: from_state, to_state, executor, environment, permission_mode,
8
+ * timeout, model, is_default, updated_at
9
+ * Removed columns: suggested_for_categories, default_move_to_category
10
+ *
11
+ * Migration strategy: Add new columns first, migrate data, then remove old columns.
12
+ * SQLite doesn't support DROP COLUMN before 3.35.0, so we recreate the table.
13
+ */
14
+ /**
15
+ * Map a StateCategory to a default state name.
16
+ * Used during migration to convert old category-based values to state names.
17
+ */
18
+ function categoryToStateName(category) {
19
+ const map = {
20
+ triage: 'Triage',
21
+ backlog: 'Backlog',
22
+ unstarted: 'Todo',
23
+ started: 'In Progress',
24
+ completed: 'Done',
25
+ canceled: 'Canceled',
26
+ };
27
+ return map[category] || category;
28
+ }
29
+ export const actionsRedesign = {
30
+ id: '0003',
31
+ name: 'actions_redesign',
32
+ up: (db) => {
33
+ // Check if pmo_actions table exists
34
+ const tableExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='pmo_actions'").get();
35
+ if (!tableExists)
36
+ return;
37
+ // Check if migration is already done (from_state column exists)
38
+ const columns = db.pragma('table_info(pmo_actions)');
39
+ const columnNames = new Set(columns.map(c => c.name));
40
+ if (columnNames.has('from_state')) {
41
+ // Already migrated — just ensure old columns are gone
42
+ return;
43
+ }
44
+ // Read existing data before migration
45
+ const existingActions = db.prepare('SELECT * FROM pmo_actions').all();
46
+ // Create new table with updated schema
47
+ db.exec(`
48
+ CREATE TABLE pmo_actions_new (
49
+ id TEXT PRIMARY KEY,
50
+ name TEXT NOT NULL UNIQUE,
51
+ description TEXT,
52
+ prompt TEXT NOT NULL,
53
+ end_prompt TEXT,
54
+ from_state TEXT,
55
+ to_state TEXT,
56
+ executor TEXT CHECK (executor IN ('claude', 'codex', 'opencode', 'custom')),
57
+ environment TEXT CHECK (environment IN ('devcontainer', 'docker', 'host', 'vm')),
58
+ permission_mode TEXT CHECK (permission_mode IN ('full', 'readonly', 'bypassPermissions')),
59
+ timeout INTEGER,
60
+ model TEXT,
61
+ modifies_code INTEGER NOT NULL DEFAULT 1,
62
+ is_default INTEGER NOT NULL DEFAULT 0,
63
+ is_builtin INTEGER NOT NULL DEFAULT 0,
64
+ position INTEGER NOT NULL DEFAULT 0,
65
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
66
+ updated_at TIMESTAMP
67
+ )
68
+ `);
69
+ // Migrate existing actions with backward-compatible data mapping
70
+ const insert = db.prepare(`
71
+ INSERT INTO pmo_actions_new (id, name, description, prompt, end_prompt, from_state, to_state,
72
+ executor, environment, permission_mode, modifies_code, is_default, is_builtin, position, created_at, updated_at)
73
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
74
+ `);
75
+ for (const action of existingActions) {
76
+ // Map suggestedForCategories to from_state (use first category as from_state)
77
+ let fromState = null;
78
+ if (action.suggested_for_categories) {
79
+ try {
80
+ const categories = JSON.parse(action.suggested_for_categories);
81
+ if (categories.length > 0) {
82
+ fromState = categoryToStateName(categories[0]);
83
+ }
84
+ }
85
+ catch {
86
+ // Ignore parse errors
87
+ }
88
+ }
89
+ // Map defaultMoveToCategory to to_state
90
+ const toState = action.default_move_to_category
91
+ ? categoryToStateName(action.default_move_to_category)
92
+ : null;
93
+ insert.run(action.id, action.name, action.description, action.prompt, action.end_prompt, fromState, toState, 'claude', // Default executor
94
+ 'host', // Default environment
95
+ 'full', // Default permission mode
96
+ action.modifies_code, 0, // is_default
97
+ action.is_builtin, action.position, action.created_at, action.created_at // updated_at = created_at for migrated records
98
+ );
99
+ }
100
+ // Swap tables
101
+ db.exec('DROP TABLE pmo_actions');
102
+ db.exec('ALTER TABLE pmo_actions_new RENAME TO pmo_actions');
103
+ },
104
+ };
105
+ //# sourceMappingURL=0003_actions_redesign.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"0003_actions_redesign.js","sourceRoot":"","sources":["../../../../src/lib/database/migrations/0003_actions_redesign.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH;;;GAGG;AACH,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,MAAM,GAAG,GAA2B;QAClC,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,SAAS;QAClB,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,aAAa;QACtB,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,UAAU;KACrB,CAAA;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAA;AAClC,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAc;IACxC,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,kBAAkB;IACxB,EAAE,EAAE,CAAC,EAAqB,EAAE,EAAE;QAC5B,oCAAoC;QACpC,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAC5B,0EAA0E,CAC3E,CAAC,GAAG,EAAE,CAAA;QACP,IAAI,CAAC,WAAW;YAAE,OAAM;QAExB,gEAAgE;QAChE,MAAM,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,yBAAyB,CAA4B,CAAA;QAC/E,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;QAErD,IAAI,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAClC,sDAAsD;YACtD,OAAM;QACR,CAAC;QAED,sCAAsC;QACtC,MAAM,eAAe,GAAG,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC,GAAG,EAYjE,CAAA;QAEF,uCAAuC;QACvC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;KAqBP,CAAC,CAAA;QAEF,iEAAiE;QACjE,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC;;;;KAIzB,CAAC,CAAA;QAEF,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;YACrC,8EAA8E;YAC9E,IAAI,SAAS,GAAkB,IAAI,CAAA;YACnC,IAAI,MAAM,CAAC,wBAAwB,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACH,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,wBAAwB,CAAa,CAAA;oBAC1E,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC1B,SAAS,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;oBAChD,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,sBAAsB;gBACxB,CAAC;YACH,CAAC;YAED,wCAAwC;YACxC,MAAM,OAAO,GAAG,MAAM,CAAC,wBAAwB;gBAC7C,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,wBAAwB,CAAC;gBACtD,CAAC,CAAC,IAAI,CAAA;YAER,MAAM,CAAC,GAAG,CACR,MAAM,CAAC,EAAE,EACT,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,UAAU,EACjB,SAAS,EACT,OAAO,EACP,QAAQ,EAAQ,mBAAmB;YACnC,MAAM,EAAU,sBAAsB;YACtC,MAAM,EAAU,0BAA0B;YAC1C,MAAM,CAAC,aAAa,EACpB,CAAC,EAAe,aAAa;YAC7B,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,UAAU,CAAE,+CAA+C;aACnE,CAAA;QACH,CAAC;QAED,cAAc;QACd,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;QACjC,EAAE,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAA;IAC9D,CAAC;CACF,CAAA"}
@@ -0,0 +1,2 @@
1
+ import type { Migration } from '../migrator.js';
2
+ export declare const workflowRules: Migration;
@@ -0,0 +1,25 @@
1
+ export const workflowRules = {
2
+ id: '0004',
3
+ name: 'workflow_rules',
4
+ up: (db) => {
5
+ // Check if table already exists
6
+ const tableExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='pmo_workflow_rules'").get();
7
+ if (tableExists)
8
+ return;
9
+ // Create the workflow_rules table
10
+ db.exec(`
11
+ CREATE TABLE IF NOT EXISTS pmo_workflow_rules (
12
+ id TEXT PRIMARY KEY,
13
+ from_state TEXT,
14
+ to_state TEXT NOT NULL,
15
+ action_id TEXT NOT NULL,
16
+ trigger TEXT NOT NULL DEFAULT 'manual' CHECK (trigger IN ('manual', 'on_enter')),
17
+ enabled INTEGER NOT NULL DEFAULT 1,
18
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
19
+ updated_at TIMESTAMP,
20
+ FOREIGN KEY (action_id) REFERENCES pmo_actions(id) ON DELETE CASCADE
21
+ )
22
+ `);
23
+ },
24
+ };
25
+ //# sourceMappingURL=0004_workflow_rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"0004_workflow_rules.js","sourceRoot":"","sources":["../../../../src/lib/database/migrations/0004_workflow_rules.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,aAAa,GAAc;IACtC,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,gBAAgB;IACtB,EAAE,EAAE,CAAC,EAAqB,EAAE,EAAE;QAC5B,gCAAgC;QAChC,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAC5B,iFAAiF,CAClF,CAAC,GAAG,EAAE,CAAA;QACP,IAAI,WAAW;YAAE,OAAM;QAEvB,kCAAkC;QAClC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;KAYP,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -6,6 +6,8 @@
6
6
  */
7
7
  import { baseline } from './0001_baseline.js';
8
8
  import { workHooks } from './0002_work_hooks.js';
9
+ import { actionsRedesign } from './0003_actions_redesign.js';
10
+ import { workflowRules } from './0004_workflow_rules.js';
9
11
  /**
10
12
  * Ordered list of all migrations.
11
13
  * New migrations should be appended to the end of this array.
@@ -13,5 +15,7 @@ import { workHooks } from './0002_work_hooks.js';
13
15
  export const ALL_MIGRATIONS = [
14
16
  baseline,
15
17
  workHooks,
18
+ actionsRedesign,
19
+ workflowRules,
16
20
  ];
17
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/database/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,QAAQ;IACR,SAAS;CACV,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/database/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAExD;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,QAAQ;IACR,SAAS;IACT,eAAe;IACf,aAAa;CACd,CAAA"}
@@ -6,7 +6,7 @@
6
6
  * orchestration hooks, and outbound sync to external issue trackers.
7
7
  */
8
8
  import type { ExecutionStatus } from '../execution/types.js';
9
- import type { StateCategory } from '../pmo/types.js';
9
+ import type { StateCategory, WorkflowRuleTrigger } from '../pmo/types.js';
10
10
  import type { WorkStartedEvent, WorkStatusChangedEvent, WorkPRCreatedEvent, WorkPRMergedEvent, WorkCompletedEvent } from '../work-lifecycle/events.js';
11
11
  /** Emitted when an agent session is spawned. */
12
12
  export interface AgentSpawnedEvent {
@@ -74,6 +74,17 @@ export interface TicketPRLinkedEvent {
74
74
  prTitle: string | null;
75
75
  timestamp: Date;
76
76
  }
77
+ /** Emitted when a workflow rule matches a ticket state change. */
78
+ export interface WorkflowRuleMatchedEvent {
79
+ ruleId: string;
80
+ ticketId: string;
81
+ projectId: string;
82
+ actionId: string;
83
+ trigger: WorkflowRuleTrigger;
84
+ fromState: string | null;
85
+ toState: string;
86
+ timestamp: Date;
87
+ }
77
88
  /**
78
89
  * Maps event names to their payload types.
79
90
  * Used by EventBus for type-safe subscriptions and emissions.
@@ -87,6 +98,7 @@ export interface RuntimeEventMap {
87
98
  'agent:output': AgentOutputEvent;
88
99
  'ticket:status_changed': TicketStatusChangedEvent;
89
100
  'ticket:pr_linked': TicketPRLinkedEvent;
101
+ 'workflow_rule:matched': WorkflowRuleMatchedEvent;
90
102
  'work:started': WorkStartedEvent;
91
103
  'work:status_changed': WorkStatusChangedEvent;
92
104
  'work:pr_created': WorkPRCreatedEvent;
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Commit Validation
3
+ *
4
+ * Validates that meaningful code was committed on an agent's branch
5
+ * before marking work as complete. Prevents agents from reporting
6
+ * success when they only committed boilerplate (README, config files)
7
+ * or didn't commit anything at all.
8
+ *
9
+ * See: GH#762, PRLT-984
10
+ */
11
+ export interface CommitValidationResult {
12
+ /** Whether the validation passed (meaningful code was committed) */
13
+ passed: boolean;
14
+ /** Total number of files changed */
15
+ totalFiles: number;
16
+ /** Number of non-boilerplate code files changed */
17
+ codeFiles: number;
18
+ /** Total lines added */
19
+ totalInsertions: number;
20
+ /** Total lines removed */
21
+ totalDeletions: number;
22
+ /** True if only boilerplate files (README, LICENSE, etc.) were modified */
23
+ boilerplateOnly: boolean;
24
+ /** True if no commits were found on the branch */
25
+ noCommits: boolean;
26
+ /** Human-readable summary of the validation result */
27
+ details: string;
28
+ }
29
+ /**
30
+ * Validate that meaningful code was committed on a branch.
31
+ *
32
+ * Checks the diff between the branch and its base branch to determine
33
+ * if the agent actually wrote code or just committed boilerplate.
34
+ *
35
+ * A branch passes validation if:
36
+ * - It has at least one commit
37
+ * - It modifies at least one non-boilerplate file
38
+ * - The non-boilerplate files have at least one line inserted
39
+ *
40
+ * @param repoPath - Path to the git repository
41
+ * @param branch - Branch name to validate (must be checked out or reachable)
42
+ * @param baseBranch - Base branch to compare against (auto-detected if omitted)
43
+ */
44
+ export declare function validateCommits(repoPath: string, branch: string, baseBranch?: string): CommitValidationResult;
45
+ /**
46
+ * Try to validate commits for an execution, resolving the repository path
47
+ * from the agent's workspace directory.
48
+ *
49
+ * For container-based executions where the repo might not be accessible
50
+ * from the host, this function tries the container first, then falls back
51
+ * to the host filesystem.
52
+ *
53
+ * @param agentDir - Agent's workspace directory on the host
54
+ * @param branch - Branch name to validate
55
+ * @param repoWorktrees - Optional list of repo worktree names within agentDir
56
+ * @returns Validation result, or null if the repository couldn't be accessed
57
+ */
58
+ export declare function tryValidateCommits(agentDir: string, branch: string, repoWorktrees?: string[]): CommitValidationResult | null;
@@ -0,0 +1,252 @@
1
+ /**
2
+ * Commit Validation
3
+ *
4
+ * Validates that meaningful code was committed on an agent's branch
5
+ * before marking work as complete. Prevents agents from reporting
6
+ * success when they only committed boilerplate (README, config files)
7
+ * or didn't commit anything at all.
8
+ *
9
+ * See: GH#762, PRLT-984
10
+ */
11
+ import { execSync } from 'node:child_process';
12
+ // =============================================================================
13
+ // Boilerplate Detection
14
+ // =============================================================================
15
+ /**
16
+ * Filename patterns that don't count as "meaningful code".
17
+ * These are files that agents commonly create as placeholder work
18
+ * without implementing actual functionality.
19
+ */
20
+ const BOILERPLATE_PATTERNS = [
21
+ /^readme\.md$/i,
22
+ /^readme$/i,
23
+ /^readme\.txt$/i,
24
+ /^readme\.rst$/i,
25
+ /^license$/i,
26
+ /^license\.md$/i,
27
+ /^license\.txt$/i,
28
+ /^\.gitignore$/i,
29
+ /^\.gitkeep$/i,
30
+ /^\.npmignore$/i,
31
+ /^changelog\.md$/i,
32
+ /^changes\.md$/i,
33
+ /^\.editorconfig$/i,
34
+ /^\.prettierrc$/i,
35
+ /^\.prettierignore$/i,
36
+ /^\.eslintignore$/i,
37
+ /^contributing\.md$/i,
38
+ /^code_of_conduct\.md$/i,
39
+ /^\.dockerignore$/i,
40
+ ];
41
+ function isBoilerplateFile(filePath) {
42
+ const basename = filePath.split('/').pop() || '';
43
+ return BOILERPLATE_PATTERNS.some(pattern => pattern.test(basename));
44
+ }
45
+ // =============================================================================
46
+ // Git Helpers
47
+ // =============================================================================
48
+ /**
49
+ * Find the base branch for comparison.
50
+ * Tries origin/main, origin/master, then local main, local master, then HEAD.
51
+ */
52
+ function findBaseBranch(repoPath) {
53
+ const candidates = ['origin/main', 'origin/master', 'main', 'master'];
54
+ for (const branch of candidates) {
55
+ try {
56
+ execSync(`git rev-parse --verify ${branch}`, {
57
+ cwd: repoPath,
58
+ stdio: ['pipe', 'pipe', 'pipe'],
59
+ });
60
+ return branch;
61
+ }
62
+ catch {
63
+ // Try next candidate
64
+ }
65
+ }
66
+ return 'HEAD';
67
+ }
68
+ /**
69
+ * Count the number of commits on a branch relative to a base.
70
+ */
71
+ function getCommitCount(repoPath, base, branch) {
72
+ try {
73
+ const output = execSync(`git rev-list --count ${base}..${branch}`, {
74
+ cwd: repoPath,
75
+ encoding: 'utf-8',
76
+ stdio: ['pipe', 'pipe', 'pipe'],
77
+ }).trim();
78
+ return parseInt(output, 10) || 0;
79
+ }
80
+ catch {
81
+ return 0;
82
+ }
83
+ }
84
+ /**
85
+ * Get the diff stats (files changed, insertions, deletions) between two refs.
86
+ * Uses --numstat for machine-parseable output.
87
+ */
88
+ function getDiffStats(repoPath, base, branch) {
89
+ try {
90
+ const output = execSync(`git diff --numstat ${base}..${branch}`, {
91
+ cwd: repoPath,
92
+ encoding: 'utf-8',
93
+ stdio: ['pipe', 'pipe', 'pipe'],
94
+ }).trim();
95
+ if (!output)
96
+ return [];
97
+ return output.split('\n').map(line => {
98
+ const parts = line.split('\t');
99
+ // Binary files show '-' for insertions/deletions
100
+ const insertions = parts[0] === '-' ? 0 : parseInt(parts[0], 10) || 0;
101
+ const deletions = parts[1] === '-' ? 0 : parseInt(parts[1], 10) || 0;
102
+ const filePath = parts[2] || '';
103
+ return { path: filePath, insertions, deletions };
104
+ }).filter(f => f.path);
105
+ }
106
+ catch {
107
+ return [];
108
+ }
109
+ }
110
+ // =============================================================================
111
+ // Validation
112
+ // =============================================================================
113
+ /**
114
+ * Validate that meaningful code was committed on a branch.
115
+ *
116
+ * Checks the diff between the branch and its base branch to determine
117
+ * if the agent actually wrote code or just committed boilerplate.
118
+ *
119
+ * A branch passes validation if:
120
+ * - It has at least one commit
121
+ * - It modifies at least one non-boilerplate file
122
+ * - The non-boilerplate files have at least one line inserted
123
+ *
124
+ * @param repoPath - Path to the git repository
125
+ * @param branch - Branch name to validate (must be checked out or reachable)
126
+ * @param baseBranch - Base branch to compare against (auto-detected if omitted)
127
+ */
128
+ export function validateCommits(repoPath, branch, baseBranch) {
129
+ const base = baseBranch || findBaseBranch(repoPath);
130
+ // Check if the branch ref exists
131
+ try {
132
+ execSync(`git rev-parse --verify ${branch}`, {
133
+ cwd: repoPath,
134
+ stdio: ['pipe', 'pipe', 'pipe'],
135
+ });
136
+ }
137
+ catch {
138
+ return {
139
+ passed: false,
140
+ totalFiles: 0,
141
+ codeFiles: 0,
142
+ totalInsertions: 0,
143
+ totalDeletions: 0,
144
+ boilerplateOnly: false,
145
+ noCommits: true,
146
+ details: `Branch "${branch}" not found in repository`,
147
+ };
148
+ }
149
+ // Get commit count
150
+ const commitCount = getCommitCount(repoPath, base, branch);
151
+ if (commitCount === 0) {
152
+ return {
153
+ passed: false,
154
+ totalFiles: 0,
155
+ codeFiles: 0,
156
+ totalInsertions: 0,
157
+ totalDeletions: 0,
158
+ boilerplateOnly: false,
159
+ noCommits: true,
160
+ details: 'No commits found on branch',
161
+ };
162
+ }
163
+ // Get diff stats
164
+ const files = getDiffStats(repoPath, base, branch);
165
+ if (files.length === 0) {
166
+ return {
167
+ passed: false,
168
+ totalFiles: 0,
169
+ codeFiles: 0,
170
+ totalInsertions: 0,
171
+ totalDeletions: 0,
172
+ boilerplateOnly: false,
173
+ noCommits: false,
174
+ details: 'No file changes found in diff',
175
+ };
176
+ }
177
+ // Classify files
178
+ const codeFiles = files.filter(f => !isBoilerplateFile(f.path));
179
+ const boilerplateOnly = codeFiles.length === 0;
180
+ // Calculate totals
181
+ const totalInsertions = files.reduce((sum, f) => sum + f.insertions, 0);
182
+ const totalDeletions = files.reduce((sum, f) => sum + f.deletions, 0);
183
+ const codeInsertions = codeFiles.reduce((sum, f) => sum + f.insertions, 0);
184
+ // Validation: at least one non-boilerplate file with meaningful changes
185
+ const passed = codeFiles.length > 0 && codeInsertions > 0;
186
+ let details;
187
+ if (boilerplateOnly) {
188
+ const fileNames = files.map(f => f.path).join(', ');
189
+ details = `Only boilerplate files modified (${fileNames})`;
190
+ }
191
+ else if (codeInsertions === 0) {
192
+ details = `${codeFiles.length} code file(s) touched but no insertions`;
193
+ }
194
+ else {
195
+ details = `${codeFiles.length} code file(s), +${codeInsertions}/-${totalDeletions} lines`;
196
+ }
197
+ return {
198
+ passed,
199
+ totalFiles: files.length,
200
+ codeFiles: codeFiles.length,
201
+ totalInsertions,
202
+ totalDeletions,
203
+ boilerplateOnly,
204
+ noCommits: false,
205
+ details,
206
+ };
207
+ }
208
+ /**
209
+ * Try to validate commits for an execution, resolving the repository path
210
+ * from the agent's workspace directory.
211
+ *
212
+ * For container-based executions where the repo might not be accessible
213
+ * from the host, this function tries the container first, then falls back
214
+ * to the host filesystem.
215
+ *
216
+ * @param agentDir - Agent's workspace directory on the host
217
+ * @param branch - Branch name to validate
218
+ * @param repoWorktrees - Optional list of repo worktree names within agentDir
219
+ * @returns Validation result, or null if the repository couldn't be accessed
220
+ */
221
+ export function tryValidateCommits(agentDir, branch, repoWorktrees) {
222
+ const { existsSync } = require('node:fs');
223
+ const { join } = require('node:path');
224
+ // Determine which repo paths to check
225
+ const repoPaths = [];
226
+ if (repoWorktrees && repoWorktrees.length > 0) {
227
+ for (const wt of repoWorktrees) {
228
+ repoPaths.push(join(agentDir, wt));
229
+ }
230
+ }
231
+ else {
232
+ repoPaths.push(agentDir);
233
+ }
234
+ // Try each repo path
235
+ for (const repoPath of repoPaths) {
236
+ if (!existsSync(repoPath))
237
+ continue;
238
+ // Verify it's a git repo
239
+ try {
240
+ execSync('git rev-parse --git-dir', {
241
+ cwd: repoPath,
242
+ stdio: ['pipe', 'pipe', 'pipe'],
243
+ });
244
+ }
245
+ catch {
246
+ continue;
247
+ }
248
+ return validateCommits(repoPath, branch);
249
+ }
250
+ return null;
251
+ }
252
+ //# sourceMappingURL=commit-validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commit-validation.js","sourceRoot":"","sources":["../../../src/lib/execution/commit-validation.ts"],"names":[],"mappings":"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"}
@@ -582,6 +582,7 @@ export async function promptExecutionSettings(db, options) {
582
582
  // In JSON mode, output the output mode prompt
583
583
  if (isJsonMode && jsonMode) {
584
584
  outputPromptAsJson(buildPromptConfig('list', 'selectedOutputMode', 'How should Claude display output?', outputChoices, 'interactive'), createMetadata(jsonMode.commandName, jsonMode.flags));
585
+ return { executionConfig, permissionMode: 'safe', createPR: false };
585
586
  }
586
587
  const { selectedOutputMode } = await inquirer.prompt([
587
588
  {
@@ -608,6 +609,7 @@ export async function promptExecutionSettings(db, options) {
608
609
  // In JSON mode, output the permissions prompt
609
610
  if (isJsonMode && jsonMode) {
610
611
  outputPromptAsJson(buildPromptConfig('list', 'permissionMode', `Permission mode for Claude Code${containerNote}:`, permissionChoices, 'safe'), createMetadata(jsonMode.commandName, jsonMode.flags));
612
+ return { executionConfig, permissionMode: 'safe', createPR: false };
611
613
  }
612
614
  const { permissionMode: selectedMode } = await inquirer.prompt([
613
615
  {
@@ -632,6 +634,7 @@ export async function promptExecutionSettings(db, options) {
632
634
  // In JSON mode, output the PR creation prompt
633
635
  if (isJsonMode && jsonMode) {
634
636
  outputPromptAsJson(buildPromptConfig('list', 'prChoice', 'Create a pull request when work is ready?', prChoices, 'yes'), createMetadata(jsonMode.commandName, jsonMode.flags));
637
+ return { executionConfig, permissionMode: resolvedPermissionMode, createPR: false };
635
638
  }
636
639
  const { prChoice } = await inquirer.prompt([
637
640
  {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/execution/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/execution/config.ts"],"names":[],"mappings":"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"}