@unbrained/pm-cli 2026.5.31 → 2026.6.6

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 (638) hide show
  1. package/CHANGELOG.md +167 -0
  2. package/CONTRIBUTING.md +1 -0
  3. package/README.md +12 -4
  4. package/dist/cli/argv-utils.js +7 -3
  5. package/dist/cli/argv-utils.js.map +1 -1
  6. package/dist/cli/bootstrap-args.d.ts +1 -0
  7. package/dist/cli/bootstrap-args.js +23 -3
  8. package/dist/cli/bootstrap-args.js.map +1 -1
  9. package/dist/cli/commands/calendar.js +17 -3
  10. package/dist/cli/commands/calendar.js.map +1 -1
  11. package/dist/cli/commands/close-many.d.ts +63 -0
  12. package/dist/cli/commands/close-many.js +302 -0
  13. package/dist/cli/commands/close-many.js.map +1 -0
  14. package/dist/cli/commands/completion.d.ts +1 -0
  15. package/dist/cli/commands/completion.js +260 -32
  16. package/dist/cli/commands/completion.js.map +1 -1
  17. package/dist/cli/commands/config.d.ts +4 -4
  18. package/dist/cli/commands/config.js +115 -3
  19. package/dist/cli/commands/config.js.map +1 -1
  20. package/dist/cli/commands/contracts.js +193 -162
  21. package/dist/cli/commands/contracts.js.map +1 -1
  22. package/dist/cli/commands/create.d.ts +1 -0
  23. package/dist/cli/commands/create.js +77 -114
  24. package/dist/cli/commands/create.js.map +1 -1
  25. package/dist/cli/commands/extension/doctor.d.ts +12 -0
  26. package/dist/cli/commands/extension/doctor.js +97 -2
  27. package/dist/cli/commands/extension/doctor.js.map +1 -1
  28. package/dist/cli/commands/extension/scaffold.js +49 -48
  29. package/dist/cli/commands/extension/scaffold.js.map +1 -1
  30. package/dist/cli/commands/extension.js +51 -23
  31. package/dist/cli/commands/extension.js.map +1 -1
  32. package/dist/cli/commands/gc.d.ts +8 -1
  33. package/dist/cli/commands/gc.js +26 -3
  34. package/dist/cli/commands/gc.js.map +1 -1
  35. package/dist/cli/commands/get.js +7 -7
  36. package/dist/cli/commands/get.js.map +1 -1
  37. package/dist/cli/commands/health.js +51 -3
  38. package/dist/cli/commands/health.js.map +1 -1
  39. package/dist/cli/commands/history.d.ts +4 -1
  40. package/dist/cli/commands/history.js +12 -24
  41. package/dist/cli/commands/history.js.map +1 -1
  42. package/dist/cli/commands/index.d.ts +3 -1
  43. package/dist/cli/commands/index.js +5 -3
  44. package/dist/cli/commands/index.js.map +1 -1
  45. package/dist/cli/commands/init.d.ts +10 -0
  46. package/dist/cli/commands/init.js +107 -4
  47. package/dist/cli/commands/init.js.map +1 -1
  48. package/dist/cli/commands/list.d.ts +5 -0
  49. package/dist/cli/commands/list.js +58 -26
  50. package/dist/cli/commands/list.js.map +1 -1
  51. package/dist/cli/commands/reindex.js +163 -47
  52. package/dist/cli/commands/reindex.js.map +1 -1
  53. package/dist/cli/commands/repeatable-metadata-parsers.d.ts +15 -0
  54. package/dist/cli/commands/repeatable-metadata-parsers.js +120 -0
  55. package/dist/cli/commands/repeatable-metadata-parsers.js.map +1 -0
  56. package/dist/cli/commands/restore.js +25 -4
  57. package/dist/cli/commands/restore.js.map +1 -1
  58. package/dist/cli/commands/schema.d.ts +122 -1
  59. package/dist/cli/commands/schema.js +536 -6
  60. package/dist/cli/commands/schema.js.map +1 -1
  61. package/dist/cli/commands/search.d.ts +1 -0
  62. package/dist/cli/commands/search.js +18 -4
  63. package/dist/cli/commands/search.js.map +1 -1
  64. package/dist/cli/commands/stats.d.ts +8 -1
  65. package/dist/cli/commands/stats.js +18 -17
  66. package/dist/cli/commands/stats.js.map +1 -1
  67. package/dist/cli/commands/telemetry.d.ts +8 -0
  68. package/dist/cli/commands/telemetry.js +253 -0
  69. package/dist/cli/commands/telemetry.js.map +1 -0
  70. package/dist/cli/commands/test.js +4 -3
  71. package/dist/cli/commands/test.js.map +1 -1
  72. package/dist/cli/commands/update-many.js +69 -140
  73. package/dist/cli/commands/update-many.js.map +1 -1
  74. package/dist/cli/commands/update.d.ts +2 -0
  75. package/dist/cli/commands/update.js +138 -119
  76. package/dist/cli/commands/update.js.map +1 -1
  77. package/dist/cli/commands/validate.d.ts +1 -0
  78. package/dist/cli/commands/validate.js +63 -33
  79. package/dist/cli/commands/validate.js.map +1 -1
  80. package/dist/cli/error-guidance.js +26 -3
  81. package/dist/cli/error-guidance.js.map +1 -1
  82. package/dist/cli/help-content.js +91 -3
  83. package/dist/cli/help-content.js.map +1 -1
  84. package/dist/cli/main.js +377 -23
  85. package/dist/cli/main.js.map +1 -1
  86. package/dist/cli/register-list-query.js +14 -5
  87. package/dist/cli/register-list-query.js.map +1 -1
  88. package/dist/cli/register-mutation.js +200 -28
  89. package/dist/cli/register-mutation.js.map +1 -1
  90. package/dist/cli/register-operations.js +31 -6
  91. package/dist/cli/register-operations.js.map +1 -1
  92. package/dist/cli/register-setup.js +4 -2
  93. package/dist/cli/register-setup.js.map +1 -1
  94. package/dist/cli/registration-helpers.js +31 -4
  95. package/dist/cli/registration-helpers.js.map +1 -1
  96. package/dist/cli-bundle/chunks/activity-CVXTCHYY.js +16 -0
  97. package/dist/cli-bundle/chunks/activity-JM6DTDND.js +20 -0
  98. package/dist/cli-bundle/chunks/activity-JM6DTDND.js.map +1 -0
  99. package/dist/cli-bundle/chunks/aggregate-GI7WSZPH.js +206 -0
  100. package/dist/cli-bundle/chunks/aggregate-GI7WSZPH.js.map +1 -0
  101. package/dist/cli-bundle/chunks/{aggregate-ADUOSFRO.js → aggregate-VNAHUNNF.js} +11 -11
  102. package/dist/cli-bundle/chunks/{append-JD2DETU7.js → append-7H5N64R2.js} +8 -9
  103. package/dist/cli-bundle/chunks/{append-JD2DETU7.js.map → append-7H5N64R2.js.map} +1 -1
  104. package/dist/cli-bundle/chunks/append-WMKRXKCE.js +69 -0
  105. package/dist/cli-bundle/chunks/append-WMKRXKCE.js.map +1 -0
  106. package/dist/cli-bundle/chunks/{chunk-3M73P3G6.js → chunk-23YFZ3IG.js} +210 -132
  107. package/dist/cli-bundle/chunks/chunk-23YFZ3IG.js.map +7 -0
  108. package/dist/cli-bundle/chunks/chunk-2HVRUSQA.js +128 -0
  109. package/dist/cli-bundle/chunks/chunk-2HVRUSQA.js.map +1 -0
  110. package/dist/cli-bundle/chunks/chunk-2RSPZI5H.js +266 -0
  111. package/dist/cli-bundle/chunks/chunk-2RSPZI5H.js.map +1 -0
  112. package/dist/cli-bundle/chunks/chunk-2VBQ6ZXS.js +631 -0
  113. package/dist/cli-bundle/chunks/chunk-2VBQ6ZXS.js.map +1 -0
  114. package/dist/cli-bundle/chunks/chunk-2VVCGBNV.js +380 -0
  115. package/dist/cli-bundle/chunks/chunk-2VVCGBNV.js.map +1 -0
  116. package/dist/cli-bundle/chunks/chunk-3BWOVLTH.js +1664 -0
  117. package/dist/cli-bundle/chunks/chunk-3BWOVLTH.js.map +1 -0
  118. package/dist/cli-bundle/chunks/{chunk-6HT2F4TK.js → chunk-3FI4SEFT.js} +175 -54
  119. package/dist/cli-bundle/chunks/chunk-3FI4SEFT.js.map +7 -0
  120. package/dist/cli-bundle/chunks/{chunk-JULRTHJQ.js → chunk-3LB74A67.js} +119 -6
  121. package/dist/cli-bundle/chunks/chunk-3LB74A67.js.map +7 -0
  122. package/dist/cli-bundle/chunks/chunk-3VAM3NNM.js +57 -0
  123. package/dist/cli-bundle/chunks/chunk-3VAM3NNM.js.map +1 -0
  124. package/dist/cli-bundle/chunks/chunk-4LL6TK5B.js +1832 -0
  125. package/dist/cli-bundle/chunks/chunk-4LL6TK5B.js.map +1 -0
  126. package/dist/cli-bundle/chunks/chunk-52MAOQ6J.js +422 -0
  127. package/dist/cli-bundle/chunks/chunk-52MAOQ6J.js.map +7 -0
  128. package/dist/cli-bundle/chunks/chunk-5FDATVEZ.js +412 -0
  129. package/dist/cli-bundle/chunks/chunk-5FDATVEZ.js.map +1 -0
  130. package/dist/cli-bundle/chunks/chunk-5SFCOO6B.js +5622 -0
  131. package/dist/cli-bundle/chunks/chunk-5SFCOO6B.js.map +1 -0
  132. package/dist/cli-bundle/chunks/{chunk-U7FMKRXH.js → chunk-6ER6DXH5.js} +37 -16
  133. package/dist/cli-bundle/chunks/chunk-6ER6DXH5.js.map +7 -0
  134. package/dist/cli-bundle/chunks/chunk-6P6GGMOG.js +218 -0
  135. package/dist/cli-bundle/chunks/chunk-6P6GGMOG.js.map +1 -0
  136. package/dist/cli-bundle/chunks/chunk-77GFDHGF.js +80 -0
  137. package/dist/cli-bundle/chunks/chunk-77GFDHGF.js.map +1 -0
  138. package/dist/cli-bundle/chunks/{chunk-MD7K4JYF.js → chunk-AO442XLN.js} +26 -15
  139. package/dist/cli-bundle/chunks/chunk-AO442XLN.js.map +7 -0
  140. package/dist/cli-bundle/chunks/chunk-AY43SBIN.js +751 -0
  141. package/dist/cli-bundle/chunks/chunk-AY43SBIN.js.map +1 -0
  142. package/dist/cli-bundle/chunks/{chunk-D7AOMPRH.js → chunk-BQHUILZS.js} +5 -5
  143. package/dist/cli-bundle/chunks/chunk-E5FJNAZA.js +242 -0
  144. package/dist/cli-bundle/chunks/chunk-E5FJNAZA.js.map +1 -0
  145. package/dist/cli-bundle/chunks/{chunk-OGZEG5TT.js → chunk-ECCMVXGM.js} +164 -53
  146. package/dist/cli-bundle/chunks/chunk-ECCMVXGM.js.map +7 -0
  147. package/dist/cli-bundle/chunks/chunk-FRAUKRU2.js +182 -0
  148. package/dist/cli-bundle/chunks/chunk-FRAUKRU2.js.map +1 -0
  149. package/dist/cli-bundle/chunks/chunk-GCOQW437.js +130 -0
  150. package/dist/cli-bundle/chunks/chunk-GCOQW437.js.map +1 -0
  151. package/dist/cli-bundle/chunks/chunk-GGYWB3Y2.js +1340 -0
  152. package/dist/cli-bundle/chunks/chunk-GGYWB3Y2.js.map +1 -0
  153. package/dist/cli-bundle/chunks/{chunk-G57E5D7T.js → chunk-GU2ZJ2VV.js} +5 -5
  154. package/dist/cli-bundle/chunks/chunk-GXSUPCBV.js +231 -0
  155. package/dist/cli-bundle/chunks/chunk-GXSUPCBV.js.map +1 -0
  156. package/dist/cli-bundle/chunks/chunk-HZGUAH22.js +76 -0
  157. package/dist/cli-bundle/chunks/chunk-HZGUAH22.js.map +1 -0
  158. package/dist/cli-bundle/chunks/chunk-I2HSTRJF.js +346 -0
  159. package/dist/cli-bundle/chunks/chunk-I2HSTRJF.js.map +1 -0
  160. package/dist/cli-bundle/chunks/chunk-I6BNFU5X.js +140 -0
  161. package/dist/cli-bundle/chunks/chunk-I6BNFU5X.js.map +7 -0
  162. package/dist/cli-bundle/chunks/{chunk-JTWRXG4B.js → chunk-IJGCZSIQ.js} +251 -251
  163. package/dist/cli-bundle/chunks/chunk-IJGCZSIQ.js.map +7 -0
  164. package/dist/cli-bundle/chunks/chunk-IOR7LGF4.js +1491 -0
  165. package/dist/cli-bundle/chunks/chunk-IOR7LGF4.js.map +1 -0
  166. package/dist/cli-bundle/chunks/chunk-IUV734HF.js +17 -0
  167. package/dist/cli-bundle/chunks/chunk-IUV734HF.js.map +1 -0
  168. package/dist/cli-bundle/chunks/chunk-J27KIHTG.js +15 -0
  169. package/dist/cli-bundle/chunks/chunk-J27KIHTG.js.map +1 -0
  170. package/dist/cli-bundle/chunks/{chunk-AKOOMO3T.js → chunk-KAG77BY3.js} +2 -2
  171. package/dist/cli-bundle/chunks/{chunk-KBQY3YG5.js → chunk-KJ33AOCY.js} +3 -3
  172. package/dist/cli-bundle/chunks/{chunk-WDPXDQFG.js → chunk-KJE2FOS4.js} +6 -4
  173. package/dist/cli-bundle/chunks/chunk-KJE2FOS4.js.map +7 -0
  174. package/dist/cli-bundle/chunks/chunk-KWU6HG75.js +3883 -0
  175. package/dist/cli-bundle/chunks/chunk-KWU6HG75.js.map +1 -0
  176. package/dist/cli-bundle/chunks/chunk-LB3RUL2N.js +1325 -0
  177. package/dist/cli-bundle/chunks/chunk-LB3RUL2N.js.map +1 -0
  178. package/dist/cli-bundle/chunks/{chunk-5HSEP75M.js → chunk-LCM63IXU.js} +18 -6
  179. package/dist/cli-bundle/chunks/chunk-LCM63IXU.js.map +7 -0
  180. package/dist/cli-bundle/chunks/chunk-LXYVKYMQ.js +24 -0
  181. package/dist/cli-bundle/chunks/chunk-LXYVKYMQ.js.map +1 -0
  182. package/dist/cli-bundle/chunks/chunk-ME2YH6FN.js +182 -0
  183. package/dist/cli-bundle/chunks/chunk-ME2YH6FN.js.map +1 -0
  184. package/dist/cli-bundle/chunks/chunk-MITFDD35.js +1809 -0
  185. package/dist/cli-bundle/chunks/chunk-MITFDD35.js.map +1 -0
  186. package/dist/cli-bundle/chunks/{chunk-WJ2NAC37.js → chunk-N7ACFE26.js} +3 -3
  187. package/dist/cli-bundle/chunks/chunk-NUZ5HKR4.js +332 -0
  188. package/dist/cli-bundle/chunks/chunk-NUZ5HKR4.js.map +1 -0
  189. package/dist/cli-bundle/chunks/{chunk-7Y53ZJIQ.js → chunk-OVQCEJPG.js} +22 -3
  190. package/dist/cli-bundle/chunks/chunk-OVQCEJPG.js.map +7 -0
  191. package/dist/cli-bundle/chunks/{chunk-PXUAZUUY.js → chunk-OZ7NSQHL.js} +12 -11
  192. package/dist/cli-bundle/chunks/chunk-OZ7NSQHL.js.map +7 -0
  193. package/dist/cli-bundle/chunks/{chunk-P53TN6IA.js → chunk-PDDFYW4X.js} +35 -8
  194. package/dist/cli-bundle/chunks/chunk-PDDFYW4X.js.map +7 -0
  195. package/dist/cli-bundle/chunks/{chunk-6YCV7WSL.js → chunk-PIU6RSL3.js} +10 -12
  196. package/dist/cli-bundle/chunks/{chunk-6YCV7WSL.js.map → chunk-PIU6RSL3.js.map} +1 -1
  197. package/dist/cli-bundle/chunks/chunk-PO3GSVFV.js +338 -0
  198. package/dist/cli-bundle/chunks/chunk-PO3GSVFV.js.map +1 -0
  199. package/dist/cli-bundle/chunks/{chunk-LRBOHPUE.js → chunk-PRJCELV4.js} +108 -21
  200. package/dist/cli-bundle/chunks/chunk-PRJCELV4.js.map +7 -0
  201. package/dist/cli-bundle/chunks/{chunk-GN7IJPCD.js → chunk-PROOHX4K.js} +332 -32
  202. package/dist/cli-bundle/chunks/chunk-PROOHX4K.js.map +7 -0
  203. package/dist/cli-bundle/chunks/{chunk-FQE6XZDB.js → chunk-Q7SPNHLW.js} +54 -32
  204. package/dist/cli-bundle/chunks/chunk-Q7SPNHLW.js.map +7 -0
  205. package/dist/cli-bundle/chunks/{chunk-PVNQLCIS.js → chunk-QO7EBBOM.js} +2 -2
  206. package/dist/cli-bundle/chunks/{chunk-A7E7PUVX.js → chunk-R6UFP2GE.js} +7 -7
  207. package/dist/cli-bundle/chunks/chunk-RWPSOIEE.js +154 -0
  208. package/dist/cli-bundle/chunks/chunk-RWPSOIEE.js.map +1 -0
  209. package/dist/cli-bundle/chunks/chunk-RZN6VURO.js +119 -0
  210. package/dist/cli-bundle/chunks/chunk-RZN6VURO.js.map +1 -0
  211. package/dist/cli-bundle/chunks/chunk-SKJWX3QB.js +1501 -0
  212. package/dist/cli-bundle/chunks/chunk-SKJWX3QB.js.map +7 -0
  213. package/dist/cli-bundle/chunks/{chunk-CEFIVZPG.js → chunk-T3LC5LKB.js} +2 -2
  214. package/dist/cli-bundle/chunks/chunk-TCD3R2PF.js +173 -0
  215. package/dist/cli-bundle/chunks/chunk-TCD3R2PF.js.map +1 -0
  216. package/dist/cli-bundle/chunks/chunk-TPH5XEVD.js +2988 -0
  217. package/dist/cli-bundle/chunks/chunk-TPH5XEVD.js.map +1 -0
  218. package/dist/cli-bundle/chunks/{chunk-LSXGH6NE.js → chunk-U5SXYXSY.js} +821 -200
  219. package/dist/cli-bundle/chunks/chunk-U5SXYXSY.js.map +7 -0
  220. package/dist/cli-bundle/chunks/chunk-UBOPJT3S.js +540 -0
  221. package/dist/cli-bundle/chunks/chunk-UBOPJT3S.js.map +1 -0
  222. package/dist/cli-bundle/chunks/{chunk-JFWUHHS2.js → chunk-UM2GBHS4.js} +5 -4
  223. package/dist/cli-bundle/chunks/chunk-W7XABV4H.js +454 -0
  224. package/dist/cli-bundle/chunks/chunk-W7XABV4H.js.map +1 -0
  225. package/dist/cli-bundle/chunks/{chunk-SEXQN4KL.js → chunk-WKY2IBOQ.js} +3 -3
  226. package/dist/cli-bundle/chunks/chunk-WOPXVEZP.js +698 -0
  227. package/dist/cli-bundle/chunks/chunk-WOPXVEZP.js.map +1 -0
  228. package/dist/cli-bundle/chunks/chunk-WSMOSYRD.js +1704 -0
  229. package/dist/cli-bundle/chunks/chunk-WSMOSYRD.js.map +1 -0
  230. package/dist/cli-bundle/chunks/{chunk-NGN7UV5K.js → chunk-XLTD2HN3.js} +2 -2
  231. package/dist/cli-bundle/chunks/chunk-XSJCLN2R.js +131 -0
  232. package/dist/cli-bundle/chunks/chunk-XSJCLN2R.js.map +7 -0
  233. package/dist/cli-bundle/chunks/chunk-XSLQSXAH.js +53 -0
  234. package/dist/cli-bundle/chunks/chunk-XSLQSXAH.js.map +1 -0
  235. package/dist/cli-bundle/chunks/{chunk-BUPWJ3IJ.js → chunk-XTGLRY2Y.js} +484 -49
  236. package/dist/cli-bundle/chunks/chunk-XTGLRY2Y.js.map +7 -0
  237. package/dist/cli-bundle/chunks/{chunk-L2FXEKDB.js → chunk-YL2DJGYS.js} +7 -7
  238. package/dist/cli-bundle/chunks/{claim-EE4TKKCV.js → claim-4DBF6RVG.js} +10 -11
  239. package/dist/cli-bundle/chunks/{claim-EE4TKKCV.js.map → claim-4DBF6RVG.js.map} +1 -1
  240. package/dist/cli-bundle/chunks/claim-X2P4IB7J.js +129 -0
  241. package/dist/cli-bundle/chunks/claim-X2P4IB7J.js.map +1 -0
  242. package/dist/cli-bundle/chunks/close-3HDWDA3L.js +13 -0
  243. package/dist/cli-bundle/chunks/close-PTYFA45H.js +17 -0
  244. package/dist/cli-bundle/chunks/close-PTYFA45H.js.map +1 -0
  245. package/dist/cli-bundle/chunks/close-many-7CGIDPTJ.js +314 -0
  246. package/dist/cli-bundle/chunks/close-many-7CGIDPTJ.js.map +7 -0
  247. package/dist/cli-bundle/chunks/close-many-ERFO6LHR.js +311 -0
  248. package/dist/cli-bundle/chunks/close-many-ERFO6LHR.js.map +1 -0
  249. package/dist/cli-bundle/chunks/comments-OONGABK5.js +100 -0
  250. package/dist/cli-bundle/chunks/comments-OONGABK5.js.map +1 -0
  251. package/dist/cli-bundle/chunks/{comments-AAKJQ6LW.js → comments-QKBYCWKD.js} +10 -11
  252. package/dist/cli-bundle/chunks/{comments-AAKJQ6LW.js.map → comments-QKBYCWKD.js.map} +1 -1
  253. package/dist/cli-bundle/chunks/config-6FXCQKIF.js +1671 -0
  254. package/dist/cli-bundle/chunks/config-6FXCQKIF.js.map +1 -0
  255. package/dist/cli-bundle/chunks/{config-V3FZOKLI.js → config-U4RZ4CQB.js} +121 -10
  256. package/dist/cli-bundle/chunks/config-U4RZ4CQB.js.map +7 -0
  257. package/dist/cli-bundle/chunks/{context-RZ5QPNJB.js → context-FYYJGFWS.js} +32 -19
  258. package/dist/cli-bundle/chunks/{context-RZ5QPNJB.js.map → context-FYYJGFWS.js.map} +2 -2
  259. package/dist/cli-bundle/chunks/context-YMJ3Z2HQ.js +1461 -0
  260. package/dist/cli-bundle/chunks/context-YMJ3Z2HQ.js.map +1 -0
  261. package/dist/cli-bundle/chunks/contracts-QDB6OMLQ.js +1278 -0
  262. package/dist/cli-bundle/chunks/contracts-QDB6OMLQ.js.map +1 -0
  263. package/dist/cli-bundle/chunks/{contracts-YLMH33VU.js → contracts-RFSPGVVJ.js} +198 -162
  264. package/dist/cli-bundle/chunks/contracts-RFSPGVVJ.js.map +7 -0
  265. package/dist/cli-bundle/chunks/create-I5L4EYYZ.js +31 -0
  266. package/dist/cli-bundle/chunks/create-I5L4EYYZ.js.map +1 -0
  267. package/dist/cli-bundle/chunks/create-JTZNCTQC.js +27 -0
  268. package/dist/cli-bundle/chunks/delete-7HPGI4GZ.js +55 -0
  269. package/dist/cli-bundle/chunks/delete-7HPGI4GZ.js.map +1 -0
  270. package/dist/cli-bundle/chunks/{delete-RHCTEORS.js → delete-VXUPH5RS.js} +7 -8
  271. package/dist/cli-bundle/chunks/{delete-RHCTEORS.js.map → delete-VXUPH5RS.js.map} +1 -1
  272. package/dist/cli-bundle/chunks/{deps-MZYCMLAO.js → deps-JSRRWC3Z.js} +7 -8
  273. package/dist/cli-bundle/chunks/{deps-MZYCMLAO.js.map → deps-JSRRWC3Z.js.map} +1 -1
  274. package/dist/cli-bundle/chunks/deps-SCZIFK2Z.js +225 -0
  275. package/dist/cli-bundle/chunks/deps-SCZIFK2Z.js.map +1 -0
  276. package/dist/cli-bundle/chunks/docs-GJK6K4VP.js +31 -0
  277. package/dist/cli-bundle/chunks/docs-GJK6K4VP.js.map +1 -0
  278. package/dist/cli-bundle/chunks/{docs-FXXUCZYU.js → docs-WW4N3MBM.js} +9 -10
  279. package/dist/cli-bundle/chunks/{docs-FXXUCZYU.js.map → docs-WW4N3MBM.js.map} +1 -1
  280. package/dist/cli-bundle/chunks/{extension-B4WL7BQU.js → extension-J7IBMFTD.js} +4 -5
  281. package/dist/cli-bundle/chunks/extension-VDY2U33M.js +28 -0
  282. package/dist/cli-bundle/chunks/extension-VDY2U33M.js.map +1 -0
  283. package/dist/cli-bundle/chunks/files-ISZJGILQ.js +282 -0
  284. package/dist/cli-bundle/chunks/files-ISZJGILQ.js.map +1 -0
  285. package/dist/cli-bundle/chunks/{files-WVOX67PE.js → files-WKOD326U.js} +9 -10
  286. package/dist/cli-bundle/chunks/{files-WVOX67PE.js.map → files-WKOD326U.js.map} +1 -1
  287. package/dist/cli-bundle/chunks/gc-JDVJ6OQ2.js +362 -0
  288. package/dist/cli-bundle/chunks/gc-JDVJ6OQ2.js.map +1 -0
  289. package/dist/cli-bundle/chunks/gc-ULPVWMTN.js +372 -0
  290. package/dist/cli-bundle/chunks/gc-ULPVWMTN.js.map +7 -0
  291. package/dist/cli-bundle/chunks/get-RV37HT3G.js +194 -0
  292. package/dist/cli-bundle/chunks/get-RV37HT3G.js.map +1 -0
  293. package/dist/cli-bundle/chunks/{get-LTK3HOCQ.js → get-WXU6WI5P.js} +16 -17
  294. package/dist/cli-bundle/chunks/get-WXU6WI5P.js.map +7 -0
  295. package/dist/cli-bundle/chunks/{health-TCWL55KM.js → health-6L6EH4WR.js} +57 -16
  296. package/dist/cli-bundle/chunks/health-6L6EH4WR.js.map +7 -0
  297. package/dist/cli-bundle/chunks/health-LOI2HHKB.js +1271 -0
  298. package/dist/cli-bundle/chunks/health-LOI2HHKB.js.map +1 -0
  299. package/dist/cli-bundle/chunks/history-2BA3T5AE.js +20 -0
  300. package/dist/cli-bundle/chunks/history-PKN67D5O.js +24 -0
  301. package/dist/cli-bundle/chunks/history-PKN67D5O.js.map +1 -0
  302. package/dist/cli-bundle/chunks/history-redact-JBZNXHGR.js +19 -0
  303. package/dist/cli-bundle/chunks/history-redact-V4FOJGS7.js +23 -0
  304. package/dist/cli-bundle/chunks/history-redact-V4FOJGS7.js.map +1 -0
  305. package/dist/cli-bundle/chunks/{history-repair-ZWSTDRH2.js → history-repair-HIBCBIKK.js} +12 -14
  306. package/dist/cli-bundle/chunks/{history-repair-ZWSTDRH2.js.map → history-repair-HIBCBIKK.js.map} +1 -1
  307. package/dist/cli-bundle/chunks/history-repair-SDMHR7JT.js +193 -0
  308. package/dist/cli-bundle/chunks/history-repair-SDMHR7JT.js.map +1 -0
  309. package/dist/cli-bundle/chunks/init-HIVSNX3O.js +16 -0
  310. package/dist/cli-bundle/chunks/init-P56QYWJF.js +20 -0
  311. package/dist/cli-bundle/chunks/init-P56QYWJF.js.map +1 -0
  312. package/dist/cli-bundle/chunks/learnings-GDFRG5J7.js +44 -0
  313. package/dist/cli-bundle/chunks/learnings-GDFRG5J7.js.map +1 -0
  314. package/dist/cli-bundle/chunks/{learnings-NXTWE3FR.js → learnings-MIXSESLK.js} +10 -11
  315. package/dist/cli-bundle/chunks/{learnings-NXTWE3FR.js.map → learnings-MIXSESLK.js.map} +1 -1
  316. package/dist/cli-bundle/chunks/list-FGOWQMSM.js +24 -0
  317. package/dist/cli-bundle/chunks/list-FGOWQMSM.js.map +1 -0
  318. package/dist/cli-bundle/chunks/list-MUSQNMTD.js +20 -0
  319. package/dist/cli-bundle/chunks/{notes-DFS5ZGOO.js → notes-4XVSH2AZ.js} +10 -11
  320. package/dist/cli-bundle/chunks/{notes-DFS5ZGOO.js.map → notes-4XVSH2AZ.js.map} +1 -1
  321. package/dist/cli-bundle/chunks/notes-5UK3GEH2.js +44 -0
  322. package/dist/cli-bundle/chunks/notes-5UK3GEH2.js.map +1 -0
  323. package/dist/cli-bundle/chunks/plan-DUMBV3QB.js +1171 -0
  324. package/dist/cli-bundle/chunks/plan-DUMBV3QB.js.map +1 -0
  325. package/dist/cli-bundle/chunks/{plan-67AB2PLM.js → plan-SLMODHWX.js} +13 -14
  326. package/dist/cli-bundle/chunks/{plan-67AB2PLM.js.map → plan-SLMODHWX.js.map} +1 -1
  327. package/dist/cli-bundle/chunks/register-list-query-POCFZ5JW.js +229 -0
  328. package/dist/cli-bundle/chunks/register-list-query-POCFZ5JW.js.map +1 -0
  329. package/dist/cli-bundle/chunks/{register-list-query-UP3VRUFS.js → register-list-query-WST76HSQ.js} +26 -26
  330. package/dist/cli-bundle/chunks/register-list-query-WST76HSQ.js.map +7 -0
  331. package/dist/cli-bundle/chunks/register-mutation-N5GSUZJV.js +813 -0
  332. package/dist/cli-bundle/chunks/register-mutation-N5GSUZJV.js.map +1 -0
  333. package/dist/cli-bundle/chunks/{register-mutation-YWSBF545.js → register-mutation-OA675SOU.js} +154 -43
  334. package/dist/cli-bundle/chunks/register-mutation-OA675SOU.js.map +7 -0
  335. package/dist/cli-bundle/chunks/register-operations-GNHBE5I3.js +383 -0
  336. package/dist/cli-bundle/chunks/register-operations-GNHBE5I3.js.map +1 -0
  337. package/dist/cli-bundle/chunks/{register-operations-3BDTGSDH.js → register-operations-N3PMHXH5.js} +49 -37
  338. package/dist/cli-bundle/chunks/register-operations-N3PMHXH5.js.map +7 -0
  339. package/dist/cli-bundle/chunks/register-setup-JIMPKJKV.js +242 -0
  340. package/dist/cli-bundle/chunks/register-setup-JIMPKJKV.js.map +1 -0
  341. package/dist/cli-bundle/chunks/{register-setup-V56GDRUS.js → register-setup-ZHJI2DI3.js} +18 -19
  342. package/dist/cli-bundle/chunks/{register-setup-V56GDRUS.js.map → register-setup-ZHJI2DI3.js.map} +2 -2
  343. package/dist/cli-bundle/chunks/restore-D4RGNX33.js +17 -0
  344. package/dist/cli-bundle/chunks/restore-PBL6T5TW.js +21 -0
  345. package/dist/cli-bundle/chunks/restore-PBL6T5TW.js.map +1 -0
  346. package/dist/cli-bundle/chunks/schema-2NOO6NGB.js +780 -0
  347. package/dist/cli-bundle/chunks/schema-2NOO6NGB.js.map +7 -0
  348. package/dist/cli-bundle/chunks/schema-EBI4NLUO.js +770 -0
  349. package/dist/cli-bundle/chunks/schema-EBI4NLUO.js.map +1 -0
  350. package/dist/cli-bundle/chunks/search-JPUQTVCY.js +1127 -0
  351. package/dist/cli-bundle/chunks/search-JPUQTVCY.js.map +1 -0
  352. package/dist/cli-bundle/chunks/{search-HENBL456.js → search-OA6JX27A.js} +25 -16
  353. package/dist/cli-bundle/chunks/search-OA6JX27A.js.map +7 -0
  354. package/dist/cli-bundle/chunks/stats-CV54BAWY.js +202 -0
  355. package/dist/cli-bundle/chunks/stats-CV54BAWY.js.map +1 -0
  356. package/dist/cli-bundle/chunks/stats-XYB6KTFG.js +212 -0
  357. package/dist/cli-bundle/chunks/stats-XYB6KTFG.js.map +7 -0
  358. package/dist/cli-bundle/chunks/telemetry-LMJ7PFUO.js +251 -0
  359. package/dist/cli-bundle/chunks/telemetry-LMJ7PFUO.js.map +7 -0
  360. package/dist/cli-bundle/chunks/telemetry-NCMEPJNR.js +248 -0
  361. package/dist/cli-bundle/chunks/telemetry-NCMEPJNR.js.map +1 -0
  362. package/dist/cli-bundle/chunks/test-MXX3E5JL.js +31 -0
  363. package/dist/cli-bundle/chunks/test-WBROAJIE.js +35 -0
  364. package/dist/cli-bundle/chunks/test-WBROAJIE.js.map +1 -0
  365. package/dist/cli-bundle/chunks/test-all-N6NSRDTV.js +328 -0
  366. package/dist/cli-bundle/chunks/test-all-N6NSRDTV.js.map +1 -0
  367. package/dist/cli-bundle/chunks/{test-all-G2AZOHXI.js → test-all-NTOZ7C3M.js} +13 -14
  368. package/dist/cli-bundle/chunks/{test-all-G2AZOHXI.js.map → test-all-NTOZ7C3M.js.map} +1 -1
  369. package/dist/cli-bundle/chunks/test-runs-V6A7LPWZ.js +929 -0
  370. package/dist/cli-bundle/chunks/test-runs-V6A7LPWZ.js.map +1 -0
  371. package/dist/cli-bundle/chunks/{test-runs-GX5HTPSF.js → test-runs-WMVTQU3Y.js} +5 -5
  372. package/dist/cli-bundle/chunks/update-OSV3NAQB.js +25 -0
  373. package/dist/cli-bundle/chunks/update-OSV3NAQB.js.map +1 -0
  374. package/dist/cli-bundle/chunks/update-YRXSUGYQ.js +21 -0
  375. package/dist/cli-bundle/chunks/update-many-EM6OXYGO.js +605 -0
  376. package/dist/cli-bundle/chunks/update-many-EM6OXYGO.js.map +1 -0
  377. package/dist/cli-bundle/chunks/{update-many-46HRSP2Q.js → update-many-KGGEYABR.js} +78 -146
  378. package/dist/cli-bundle/chunks/update-many-KGGEYABR.js.map +7 -0
  379. package/dist/cli-bundle/chunks/{upgrade-H5HHM5UV.js → upgrade-BLI7XBAJ.js} +5 -7
  380. package/dist/cli-bundle/chunks/{upgrade-H5HHM5UV.js.map → upgrade-BLI7XBAJ.js.map} +1 -1
  381. package/dist/cli-bundle/chunks/upgrade-LXPOQKFV.js +266 -0
  382. package/dist/cli-bundle/chunks/upgrade-LXPOQKFV.js.map +1 -0
  383. package/dist/cli-bundle/chunks/{validate-TMCVKIGZ.js → validate-AGOAUOVW.js} +61 -48
  384. package/dist/cli-bundle/chunks/validate-AGOAUOVW.js.map +7 -0
  385. package/dist/cli-bundle/chunks/validate-L5J6A7YO.js +1120 -0
  386. package/dist/cli-bundle/chunks/validate-L5J6A7YO.js.map +1 -0
  387. package/dist/cli-bundle/main.js +534 -1505
  388. package/dist/cli-bundle/main.js.map +4 -4
  389. package/dist/core/checkpoint/mutation-checkpoint.d.ts +44 -0
  390. package/dist/core/checkpoint/mutation-checkpoint.js +119 -0
  391. package/dist/core/checkpoint/mutation-checkpoint.js.map +1 -0
  392. package/dist/core/config/positional-value.js +4 -2
  393. package/dist/core/config/positional-value.js.map +1 -1
  394. package/dist/core/diagnostics/remediation.d.ts +73 -0
  395. package/dist/core/diagnostics/remediation.js +328 -0
  396. package/dist/core/diagnostics/remediation.js.map +1 -0
  397. package/dist/core/extensions/extension-hook-runtime.js +9 -2
  398. package/dist/core/extensions/extension-hook-runtime.js.map +1 -1
  399. package/dist/core/extensions/extension-types.d.ts +60 -4
  400. package/dist/core/extensions/extension-types.js +2 -2
  401. package/dist/core/extensions/extension-types.js.map +1 -1
  402. package/dist/core/extensions/index.d.ts +5 -1
  403. package/dist/core/extensions/index.js +61 -2
  404. package/dist/core/extensions/index.js.map +1 -1
  405. package/dist/core/extensions/item-fields.d.ts +5 -1
  406. package/dist/core/extensions/item-fields.js +126 -4
  407. package/dist/core/extensions/item-fields.js.map +1 -1
  408. package/dist/core/extensions/loader.js +283 -8
  409. package/dist/core/extensions/loader.js.map +1 -1
  410. package/dist/core/history/history-diff.d.ts +47 -0
  411. package/dist/core/history/history-diff.js +152 -0
  412. package/dist/core/history/history-diff.js.map +1 -0
  413. package/dist/core/history/history-storage-stats.d.ts +31 -0
  414. package/dist/core/history/history-storage-stats.js +101 -0
  415. package/dist/core/history/history-storage-stats.js.map +1 -0
  416. package/dist/core/item/item-format.d.ts +3 -2
  417. package/dist/core/item/item-format.js +15 -10
  418. package/dist/core/item/item-format.js.map +1 -1
  419. package/dist/core/item/status-filter.d.ts +29 -0
  420. package/dist/core/item/status-filter.js +97 -0
  421. package/dist/core/item/status-filter.js.map +1 -0
  422. package/dist/core/item/type-registry.js +4 -2
  423. package/dist/core/item/type-registry.js.map +1 -1
  424. package/dist/core/lock/lock-gc.d.ts +46 -0
  425. package/dist/core/lock/lock-gc.js +194 -0
  426. package/dist/core/lock/lock-gc.js.map +1 -0
  427. package/dist/core/output/output.js +17 -5
  428. package/dist/core/output/output.js.map +1 -1
  429. package/dist/core/schema/item-types-file.d.ts +15 -0
  430. package/dist/core/schema/item-types-file.js +27 -2
  431. package/dist/core/schema/item-types-file.js.map +1 -1
  432. package/dist/core/schema/runtime-field-filters.js +4 -3
  433. package/dist/core/schema/runtime-field-filters.js.map +1 -1
  434. package/dist/core/schema/runtime-field-values.d.ts +1 -1
  435. package/dist/core/schema/runtime-field-values.js +10 -4
  436. package/dist/core/schema/runtime-field-values.js.map +1 -1
  437. package/dist/core/schema/runtime-schema.js +75 -2
  438. package/dist/core/schema/runtime-schema.js.map +1 -1
  439. package/dist/core/schema/status-defs-file.d.ts +113 -0
  440. package/dist/core/schema/status-defs-file.js +260 -0
  441. package/dist/core/schema/status-defs-file.js.map +1 -0
  442. package/dist/core/schema/type-workflows.d.ts +64 -0
  443. package/dist/core/schema/type-workflows.js +98 -0
  444. package/dist/core/schema/type-workflows.js.map +1 -0
  445. package/dist/core/search/cache.d.ts +3 -1
  446. package/dist/core/search/cache.js +104 -28
  447. package/dist/core/search/cache.js.map +1 -1
  448. package/dist/core/search/http-client.d.ts +2 -2
  449. package/dist/core/search/http-client.js +2 -2
  450. package/dist/core/search/http-client.js.map +1 -1
  451. package/dist/core/search/vector-stores.d.ts +1 -0
  452. package/dist/core/search/vector-stores.js +64 -14
  453. package/dist/core/search/vector-stores.js.map +1 -1
  454. package/dist/core/search/vectorization-metadata.d.ts +13 -0
  455. package/dist/core/search/vectorization-metadata.js +65 -0
  456. package/dist/core/search/vectorization-metadata.js.map +1 -0
  457. package/dist/core/shared/serial-queue.d.ts +12 -0
  458. package/dist/core/shared/serial-queue.js +43 -0
  459. package/dist/core/shared/serial-queue.js.map +1 -0
  460. package/dist/core/shared/serialization.d.ts +1 -0
  461. package/dist/core/shared/serialization.js +86 -2
  462. package/dist/core/shared/serialization.js.map +1 -1
  463. package/dist/core/store/front-matter-cache.js +14 -5
  464. package/dist/core/store/front-matter-cache.js.map +1 -1
  465. package/dist/core/store/item-store.d.ts +2 -0
  466. package/dist/core/store/item-store.js +61 -6
  467. package/dist/core/store/item-store.js.map +1 -1
  468. package/dist/core/store/settings-validator.js +18 -2
  469. package/dist/core/store/settings-validator.js.map +1 -1
  470. package/dist/core/store/settings.d.ts +19 -1
  471. package/dist/core/store/settings.js +130 -10
  472. package/dist/core/store/settings.js.map +1 -1
  473. package/dist/core/telemetry/consent.js +3 -3
  474. package/dist/core/telemetry/consent.js.map +1 -1
  475. package/dist/core/telemetry/observability.js +5 -4
  476. package/dist/core/telemetry/observability.js.map +1 -1
  477. package/dist/core/telemetry/runtime.js +16 -4
  478. package/dist/core/telemetry/runtime.js.map +1 -1
  479. package/dist/mcp/server.d.ts +1 -0
  480. package/dist/mcp/server.js +372 -45
  481. package/dist/mcp/server.js.map +1 -1
  482. package/dist/sdk/cli-contracts/commander-mutation-options.js +16 -2
  483. package/dist/sdk/cli-contracts/commander-mutation-options.js.map +1 -1
  484. package/dist/sdk/cli-contracts/commander-types.js +7 -2
  485. package/dist/sdk/cli-contracts/commander-types.js.map +1 -1
  486. package/dist/sdk/cli-contracts/enum-contracts.d.ts +2 -2
  487. package/dist/sdk/cli-contracts/enum-contracts.js +6 -2
  488. package/dist/sdk/cli-contracts/enum-contracts.js.map +1 -1
  489. package/dist/sdk/cli-contracts/tool-option-contracts.d.ts +1 -0
  490. package/dist/sdk/cli-contracts/tool-option-contracts.js +53 -3
  491. package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
  492. package/dist/sdk/cli-contracts/tool-parameter-tables.js +42 -10
  493. package/dist/sdk/cli-contracts/tool-parameter-tables.js.map +1 -1
  494. package/dist/sdk/cli-contracts.d.ts +42 -1
  495. package/dist/sdk/cli-contracts.js +225 -19
  496. package/dist/sdk/cli-contracts.js.map +1 -1
  497. package/dist/sdk/errors.d.ts +22 -0
  498. package/dist/sdk/errors.js +46 -0
  499. package/dist/sdk/errors.js.map +1 -0
  500. package/dist/sdk/index.d.ts +2 -1
  501. package/dist/sdk/index.js +3 -2
  502. package/dist/sdk/index.js.map +1 -1
  503. package/dist/sdk/package-import-adapters.js +14 -3
  504. package/dist/sdk/package-import-adapters.js.map +1 -1
  505. package/dist/sdk/runtime.d.ts +1 -0
  506. package/dist/sdk/runtime.js +3 -2
  507. package/dist/sdk/runtime.js.map +1 -1
  508. package/dist/sdk/testing.d.ts +77 -0
  509. package/dist/sdk/testing.js +239 -0
  510. package/dist/sdk/testing.js.map +1 -0
  511. package/dist/types.d.ts +19 -0
  512. package/dist/types.js +3 -2
  513. package/dist/types.js.map +1 -1
  514. package/docs/AGENT_GUIDE.md +22 -3
  515. package/docs/ARCHITECTURE.md +11 -1
  516. package/docs/CLAUDE_CODE_PLUGIN.md +2 -2
  517. package/docs/COMMANDS.md +118 -7
  518. package/docs/CONFIGURATION.md +57 -2
  519. package/docs/EXTENSIONS.md +125 -6
  520. package/docs/EXTENSION_AUTHOR_CONTRACTS.md +73 -0
  521. package/docs/ONBOARDING.md +165 -0
  522. package/docs/QUICKSTART.md +3 -1
  523. package/docs/README.md +12 -4
  524. package/docs/RELEASING.md +38 -3
  525. package/docs/SDK.md +273 -1
  526. package/docs/TESTING.md +36 -1
  527. package/docs/examples/policy-restricted-extension/manifest.json +1 -0
  528. package/docs/examples/starter-extension/index.js +9 -1
  529. package/docs/examples/starter-extension/manifest.json +1 -0
  530. package/package.json +16 -7
  531. package/packages/pm-beads/extensions/beads/index.js +2 -4
  532. package/packages/pm-beads/extensions/beads/index.ts +43 -33
  533. package/packages/pm-beads/extensions/beads/manifest.json +12 -1
  534. package/packages/pm-calendar/README.md +6 -0
  535. package/packages/pm-calendar/extensions/calendar/index.js +6 -1
  536. package/packages/pm-calendar/extensions/calendar/index.ts +6 -1
  537. package/packages/pm-calendar/extensions/calendar/manifest.json +6 -1
  538. package/packages/pm-governance-audit/extensions/governance-audit/manifest.json +6 -1
  539. package/packages/pm-guide-shell/README.md +4 -0
  540. package/packages/pm-guide-shell/extensions/guide-shell/index.js +22 -0
  541. package/packages/pm-guide-shell/extensions/guide-shell/index.ts +22 -0
  542. package/packages/pm-guide-shell/extensions/guide-shell/manifest.json +6 -1
  543. package/packages/pm-guide-shell/extensions/guide-shell/runtime.js +74 -3
  544. package/packages/pm-guide-shell/extensions/guide-shell/runtime.ts +84 -4
  545. package/packages/pm-lifecycle-hooks/README.md +29 -0
  546. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/index.js +18 -0
  547. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/index.ts +20 -0
  548. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/manifest.json +9 -0
  549. package/packages/pm-lifecycle-hooks/package.json +52 -0
  550. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/manifest.json +13 -1
  551. package/packages/pm-search-advanced/extensions/search-advanced/index.js +69 -1
  552. package/packages/pm-search-advanced/extensions/search-advanced/index.ts +91 -2
  553. package/packages/pm-search-advanced/extensions/search-advanced/manifest.json +13 -1
  554. package/packages/pm-templates/extensions/templates/manifest.json +6 -1
  555. package/packages/pm-todos/extensions/todos/index.js +3 -7
  556. package/packages/pm-todos/extensions/todos/index.ts +55 -42
  557. package/packages/pm-todos/extensions/todos/manifest.json +13 -1
  558. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  559. package/plugins/pm-claude/README.md +7 -4
  560. package/plugins/pm-claude/agents/pm-coordinator.md +1 -1
  561. package/plugins/pm-claude/commands/pm-init.md +1 -1
  562. package/scripts/bundle-cli.mjs +121 -17
  563. package/dist/cli-bundle/chunks/activity-OWYSUZOY.js +0 -17
  564. package/dist/cli-bundle/chunks/chunk-3M73P3G6.js.map +0 -7
  565. package/dist/cli-bundle/chunks/chunk-4AEZR5EJ.js +0 -189
  566. package/dist/cli-bundle/chunks/chunk-4AEZR5EJ.js.map +0 -7
  567. package/dist/cli-bundle/chunks/chunk-5HSEP75M.js.map +0 -7
  568. package/dist/cli-bundle/chunks/chunk-6HT2F4TK.js.map +0 -7
  569. package/dist/cli-bundle/chunks/chunk-7Y53ZJIQ.js.map +0 -7
  570. package/dist/cli-bundle/chunks/chunk-BUPWJ3IJ.js.map +0 -7
  571. package/dist/cli-bundle/chunks/chunk-EGUGFSNX.js +0 -47
  572. package/dist/cli-bundle/chunks/chunk-EGUGFSNX.js.map +0 -7
  573. package/dist/cli-bundle/chunks/chunk-FM26RGSU.js +0 -56
  574. package/dist/cli-bundle/chunks/chunk-FM26RGSU.js.map +0 -7
  575. package/dist/cli-bundle/chunks/chunk-FQE6XZDB.js.map +0 -7
  576. package/dist/cli-bundle/chunks/chunk-GN7IJPCD.js.map +0 -7
  577. package/dist/cli-bundle/chunks/chunk-JTWRXG4B.js.map +0 -7
  578. package/dist/cli-bundle/chunks/chunk-JULRTHJQ.js.map +0 -7
  579. package/dist/cli-bundle/chunks/chunk-LRBOHPUE.js.map +0 -7
  580. package/dist/cli-bundle/chunks/chunk-LSXGH6NE.js.map +0 -7
  581. package/dist/cli-bundle/chunks/chunk-MD7K4JYF.js.map +0 -7
  582. package/dist/cli-bundle/chunks/chunk-OGZEG5TT.js.map +0 -7
  583. package/dist/cli-bundle/chunks/chunk-P53TN6IA.js.map +0 -7
  584. package/dist/cli-bundle/chunks/chunk-PXUAZUUY.js.map +0 -7
  585. package/dist/cli-bundle/chunks/chunk-U7FMKRXH.js.map +0 -7
  586. package/dist/cli-bundle/chunks/chunk-VGICHR7D.js +0 -141
  587. package/dist/cli-bundle/chunks/chunk-VGICHR7D.js.map +0 -7
  588. package/dist/cli-bundle/chunks/chunk-WDPXDQFG.js.map +0 -7
  589. package/dist/cli-bundle/chunks/close-XY4CSAYF.js +0 -14
  590. package/dist/cli-bundle/chunks/config-V3FZOKLI.js.map +0 -7
  591. package/dist/cli-bundle/chunks/contracts-YLMH33VU.js.map +0 -7
  592. package/dist/cli-bundle/chunks/create-PZVHRIZQ.js +0 -28
  593. package/dist/cli-bundle/chunks/gc-JWNF66EC.js +0 -181
  594. package/dist/cli-bundle/chunks/gc-JWNF66EC.js.map +0 -7
  595. package/dist/cli-bundle/chunks/get-LTK3HOCQ.js.map +0 -7
  596. package/dist/cli-bundle/chunks/health-TCWL55KM.js.map +0 -7
  597. package/dist/cli-bundle/chunks/history-A2JUDXUE.js +0 -21
  598. package/dist/cli-bundle/chunks/history-redact-ED6RFCPL.js +0 -20
  599. package/dist/cli-bundle/chunks/init-M2WUB4YH.js +0 -16
  600. package/dist/cli-bundle/chunks/list-OGWQPC26.js +0 -20
  601. package/dist/cli-bundle/chunks/register-list-query-UP3VRUFS.js.map +0 -7
  602. package/dist/cli-bundle/chunks/register-mutation-YWSBF545.js.map +0 -7
  603. package/dist/cli-bundle/chunks/register-operations-3BDTGSDH.js.map +0 -7
  604. package/dist/cli-bundle/chunks/restore-MB2ISME7.js +0 -18
  605. package/dist/cli-bundle/chunks/schema-Q622KC46.js +0 -119
  606. package/dist/cli-bundle/chunks/schema-Q622KC46.js.map +0 -7
  607. package/dist/cli-bundle/chunks/search-HENBL456.js.map +0 -7
  608. package/dist/cli-bundle/chunks/stats-N6H3YP2F.js +0 -124
  609. package/dist/cli-bundle/chunks/stats-N6H3YP2F.js.map +0 -7
  610. package/dist/cli-bundle/chunks/test-VNBDRJ4Z.js +0 -32
  611. package/dist/cli-bundle/chunks/update-H6SCWNMA.js +0 -22
  612. package/dist/cli-bundle/chunks/update-many-46HRSP2Q.js.map +0 -7
  613. package/dist/cli-bundle/chunks/validate-TMCVKIGZ.js.map +0 -7
  614. /package/dist/cli-bundle/chunks/{activity-OWYSUZOY.js.map → activity-CVXTCHYY.js.map} +0 -0
  615. /package/dist/cli-bundle/chunks/{aggregate-ADUOSFRO.js.map → aggregate-VNAHUNNF.js.map} +0 -0
  616. /package/dist/cli-bundle/chunks/{chunk-D7AOMPRH.js.map → chunk-BQHUILZS.js.map} +0 -0
  617. /package/dist/cli-bundle/chunks/{chunk-G57E5D7T.js.map → chunk-GU2ZJ2VV.js.map} +0 -0
  618. /package/dist/cli-bundle/chunks/{chunk-AKOOMO3T.js.map → chunk-KAG77BY3.js.map} +0 -0
  619. /package/dist/cli-bundle/chunks/{chunk-KBQY3YG5.js.map → chunk-KJ33AOCY.js.map} +0 -0
  620. /package/dist/cli-bundle/chunks/{chunk-WJ2NAC37.js.map → chunk-N7ACFE26.js.map} +0 -0
  621. /package/dist/cli-bundle/chunks/{chunk-PVNQLCIS.js.map → chunk-QO7EBBOM.js.map} +0 -0
  622. /package/dist/cli-bundle/chunks/{chunk-A7E7PUVX.js.map → chunk-R6UFP2GE.js.map} +0 -0
  623. /package/dist/cli-bundle/chunks/{chunk-CEFIVZPG.js.map → chunk-T3LC5LKB.js.map} +0 -0
  624. /package/dist/cli-bundle/chunks/{chunk-JFWUHHS2.js.map → chunk-UM2GBHS4.js.map} +0 -0
  625. /package/dist/cli-bundle/chunks/{chunk-SEXQN4KL.js.map → chunk-WKY2IBOQ.js.map} +0 -0
  626. /package/dist/cli-bundle/chunks/{chunk-NGN7UV5K.js.map → chunk-XLTD2HN3.js.map} +0 -0
  627. /package/dist/cli-bundle/chunks/{chunk-L2FXEKDB.js.map → chunk-YL2DJGYS.js.map} +0 -0
  628. /package/dist/cli-bundle/chunks/{close-XY4CSAYF.js.map → close-3HDWDA3L.js.map} +0 -0
  629. /package/dist/cli-bundle/chunks/{create-PZVHRIZQ.js.map → create-JTZNCTQC.js.map} +0 -0
  630. /package/dist/cli-bundle/chunks/{extension-B4WL7BQU.js.map → extension-J7IBMFTD.js.map} +0 -0
  631. /package/dist/cli-bundle/chunks/{history-A2JUDXUE.js.map → history-2BA3T5AE.js.map} +0 -0
  632. /package/dist/cli-bundle/chunks/{history-redact-ED6RFCPL.js.map → history-redact-JBZNXHGR.js.map} +0 -0
  633. /package/dist/cli-bundle/chunks/{init-M2WUB4YH.js.map → init-HIVSNX3O.js.map} +0 -0
  634. /package/dist/cli-bundle/chunks/{list-OGWQPC26.js.map → list-MUSQNMTD.js.map} +0 -0
  635. /package/dist/cli-bundle/chunks/{restore-MB2ISME7.js.map → restore-D4RGNX33.js.map} +0 -0
  636. /package/dist/cli-bundle/chunks/{test-VNBDRJ4Z.js.map → test-MXX3E5JL.js.map} +0 -0
  637. /package/dist/cli-bundle/chunks/{test-runs-GX5HTPSF.js.map → test-runs-WMVTQU3Y.js.map} +0 -0
  638. /package/dist/cli-bundle/chunks/{update-H6SCWNMA.js.map → update-YRXSUGYQ.js.map} +0 -0
@@ -0,0 +1,751 @@
1
+
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="256a39f4-fc97-5137-9150-eb04dce607f8")}catch(e){}}();
3
+ import {
4
+ normalizeAddTypeInput,
5
+ parseItemTypesFile,
6
+ serializeItemTypesFile,
7
+ upsertItemType
8
+ } from "./chunk-6P6GGMOG.js";
9
+ import {
10
+ runExtension
11
+ } from "./chunk-TPH5XEVD.js";
12
+ import {
13
+ normalizePrefix
14
+ } from "./chunk-HZGUAH22.js";
15
+ import {
16
+ resolveItemTypeRegistry
17
+ } from "./chunk-2VBQ6ZXS.js";
18
+ import {
19
+ DEFAULT_RUNTIME_SCHEMA_FILE_PATHS,
20
+ EXIT_CODE,
21
+ GOVERNANCE_PRESET_DEFAULTS,
22
+ PM_REQUIRED_SUBDIRS,
23
+ PmCliError,
24
+ SETTINGS_DEFAULTS,
25
+ ensureRuntimeSchemaFileScaffold,
26
+ filePathForSchemaSection,
27
+ getActiveExtensionRegistrations,
28
+ normalizeRuntimeSchemaSettings,
29
+ pathExists,
30
+ readFileIfExists,
31
+ readSettings,
32
+ resolvePmRoot,
33
+ runActiveOnWriteHooks,
34
+ writeFileAtomic,
35
+ writeSettings
36
+ } from "./chunk-5SFCOO6B.js";
37
+
38
+ // dist/cli/commands/init.js
39
+ import fs2 from "node:fs/promises";
40
+ import path2 from "node:path";
41
+ import readline2 from "node:readline/promises";
42
+ import { stdin as input2, stdout as output2 } from "node:process";
43
+
44
+ // dist/cli/commands/init-agent-guidance.js
45
+ import fs from "node:fs/promises";
46
+ import path from "node:path";
47
+ import readline from "node:readline/promises";
48
+ import { stdin as input, stdout as output } from "node:process";
49
+ var INIT_AGENT_GUIDANCE_MODE_VALUES = ["ask", "add", "skip", "status"];
50
+ var AGENT_GUIDANCE_TARGET_FILENAMES = ["AGENTS.md", "CLAUDE.md"];
51
+ var AGENT_GUIDANCE_REQUIRED_TOKENS = [
52
+ "pm init",
53
+ "pm context",
54
+ "pm search",
55
+ "pm create",
56
+ "pm claim",
57
+ "pm files",
58
+ "pm docs",
59
+ "pm test --run",
60
+ "pm close",
61
+ "pm release",
62
+ "pm_author"
63
+ ];
64
+ var AGENT_GUIDANCE_REQUIRED_TOKEN_THRESHOLD = 8;
65
+ var AGENT_GUIDANCE_TEMPLATE_VERSION = 1;
66
+ var AGENT_GUIDANCE_START_MARKER_PREFIX = "<!-- pm-cli:agent-guidance:start:";
67
+ var AGENT_GUIDANCE_START_MARKER = `<!-- pm-cli:agent-guidance:start:v${AGENT_GUIDANCE_TEMPLATE_VERSION} -->`;
68
+ var AGENT_GUIDANCE_END_MARKER = "<!-- pm-cli:agent-guidance:end -->";
69
+ function toPortableRelativePath(projectRoot, targetPath) {
70
+ const relative = path.relative(projectRoot, targetPath);
71
+ if (relative.length === 0) {
72
+ return path.basename(targetPath);
73
+ }
74
+ return relative.split(path.sep).join("/");
75
+ }
76
+ function ensureTrailingNewline(value) {
77
+ return value.endsWith("\n") ? value : `${value}
78
+ `;
79
+ }
80
+ function detectLineEnding(value) {
81
+ return value.includes("\r\n") ? "\r\n" : "\n";
82
+ }
83
+ function findGuidanceBlockRange(content) {
84
+ const startIndex = content.indexOf(AGENT_GUIDANCE_START_MARKER_PREFIX);
85
+ if (startIndex === -1) {
86
+ return null;
87
+ }
88
+ const endMarkerIndex = content.indexOf(AGENT_GUIDANCE_END_MARKER, startIndex);
89
+ if (endMarkerIndex === -1) {
90
+ return null;
91
+ }
92
+ return {
93
+ start_index: startIndex,
94
+ end_index: endMarkerIndex + AGENT_GUIDANCE_END_MARKER.length
95
+ };
96
+ }
97
+ function hasGuidanceMarker(content) {
98
+ return findGuidanceBlockRange(content) !== null;
99
+ }
100
+ function buildAgentGuidanceBlock(lineEnding) {
101
+ const lines = [
102
+ AGENT_GUIDANCE_START_MARKER,
103
+ "## pm Workflow (Agent Quickstart)",
104
+ "",
105
+ '- Orient before mutate: `pm context --limit 10`, `pm search "<keywords>" --limit 10`, `pm list-open --limit 20`.',
106
+ "- Claim and execute: `pm claim <id>` then `pm update <id> --status in_progress`.",
107
+ '- Link evidence while coding: `pm files <id> --add ...`, `pm docs <id> --add ...`, `pm test <id> --add command="node scripts/run-tests.mjs test -- ..."`.',
108
+ '- Verify and close: `pm test <id> --run --progress`, `pm close <id> "<evidence>" --validate-close warn`, `pm release <id>`.',
109
+ "- Set `PM_AUTHOR=<stable-agent-id>` before mutation commands.",
110
+ "",
111
+ AGENT_GUIDANCE_END_MARKER,
112
+ ""
113
+ ];
114
+ return lines.join(lineEnding);
115
+ }
116
+ function upsertAgentGuidanceBlock(existingContent) {
117
+ const lineEnding = detectLineEnding(existingContent);
118
+ const nextBlock = buildAgentGuidanceBlock(lineEnding);
119
+ const existingRange = findGuidanceBlockRange(existingContent);
120
+ if (existingRange) {
121
+ const nextContent2 = ensureTrailingNewline(`${existingContent.slice(0, existingRange.start_index)}${nextBlock}${existingContent.slice(existingRange.end_index)}`);
122
+ return {
123
+ next_content: nextContent2,
124
+ changed: nextContent2 !== existingContent
125
+ };
126
+ }
127
+ const separator = existingContent.length === 0 ? "" : existingContent.endsWith("\n") ? "\n" : "\n\n";
128
+ const nextContent = ensureTrailingNewline(`${existingContent}${separator}${nextBlock}`);
129
+ return {
130
+ next_content: nextContent,
131
+ changed: nextContent !== existingContent
132
+ };
133
+ }
134
+ function resolveProjectRoot(pmRoot, cwd) {
135
+ const parent = path.dirname(pmRoot);
136
+ if (path.basename(pmRoot) === "pm" && path.basename(parent) === ".agents") {
137
+ return path.dirname(parent);
138
+ }
139
+ return path.resolve(cwd, pmRoot);
140
+ }
141
+ function resolveTargetGuidancePath(scans, projectRoot) {
142
+ const existingAgents = scans.find((entry) => path.basename(entry.file_path) === "AGENTS.md" && entry.exists);
143
+ if (existingAgents) {
144
+ return existingAgents.file_path;
145
+ }
146
+ const existingAny = scans.find((entry) => entry.exists);
147
+ if (existingAny) {
148
+ return existingAny.file_path;
149
+ }
150
+ return path.join(projectRoot, "AGENTS.md");
151
+ }
152
+ function parsePromptChoice(answer, currentDefault) {
153
+ const normalized = answer.trim().toLowerCase();
154
+ if (normalized.length === 0) {
155
+ return currentDefault;
156
+ }
157
+ if (normalized === "y" || normalized === "yes") {
158
+ return true;
159
+ }
160
+ if (normalized === "n" || normalized === "no") {
161
+ return false;
162
+ }
163
+ return currentDefault;
164
+ }
165
+ async function promptForGuidanceWrite(targetRelativePath) {
166
+ const rl = readline.createInterface({ input, output });
167
+ try {
168
+ output.write("\nAgent guidance check\n");
169
+ output.write("No AGENTS.md/CLAUDE.md file currently contains compact pm workflow guidance.\n");
170
+ const answer = await rl.question(`Add a compact pm workflow section to ${targetRelativePath}? [Y/n] `);
171
+ output.write("\n");
172
+ return parsePromptChoice(answer, true);
173
+ } finally {
174
+ rl.close();
175
+ }
176
+ }
177
+ function normalizeAgentGuidanceState(settings) {
178
+ const current = settings.agent_guidance;
179
+ return {
180
+ prompt_completed: current?.prompt_completed === true,
181
+ declined: current?.declined === true,
182
+ declined_at: typeof current?.declined_at === "string" ? current.declined_at : "",
183
+ template_version: typeof current?.template_version === "number" && Number.isInteger(current.template_version) && current.template_version > 0 ? current.template_version : AGENT_GUIDANCE_TEMPLATE_VERSION,
184
+ last_checked_files: Array.isArray(current?.last_checked_files) ? [...new Set(current.last_checked_files.map((value) => value.trim()).filter((value) => value.length > 0))].sort((left, right) => left.localeCompare(right)) : []
185
+ };
186
+ }
187
+ async function scanGuidanceFiles(projectRoot) {
188
+ const scans = [];
189
+ for (const filename of AGENT_GUIDANCE_TARGET_FILENAMES) {
190
+ const filePath = path.join(projectRoot, filename);
191
+ const exists = await pathExists(filePath);
192
+ if (!exists) {
193
+ scans.push({
194
+ file_path: filePath,
195
+ exists,
196
+ has_guidance: false,
197
+ has_marker: false
198
+ });
199
+ continue;
200
+ }
201
+ const content = await fs.readFile(filePath, "utf8");
202
+ const contentLower = content.toLowerCase();
203
+ const tokenHits = AGENT_GUIDANCE_REQUIRED_TOKENS.filter((token) => contentLower.includes(token));
204
+ const hasMarker = hasGuidanceMarker(content);
205
+ scans.push({
206
+ file_path: filePath,
207
+ exists,
208
+ has_guidance: hasMarker || tokenHits.length >= AGENT_GUIDANCE_REQUIRED_TOKEN_THRESHOLD,
209
+ has_marker: hasMarker
210
+ });
211
+ }
212
+ return scans;
213
+ }
214
+ function pushUnique(target, value) {
215
+ if (!target.includes(value)) {
216
+ target.push(value);
217
+ }
218
+ }
219
+ function applyAgentGuidanceState(settings, currentState) {
220
+ const existing = normalizeAgentGuidanceState(settings);
221
+ const changed = JSON.stringify(existing) !== JSON.stringify(currentState);
222
+ if (changed) {
223
+ settings.agent_guidance = currentState;
224
+ }
225
+ return { changed, state: currentState };
226
+ }
227
+ async function writeGuidanceFile(filePath) {
228
+ const exists = await pathExists(filePath);
229
+ const currentContent = exists ? await fs.readFile(filePath, "utf8") : "";
230
+ const nextContent = upsertAgentGuidanceBlock(currentContent);
231
+ if (!nextContent.changed) {
232
+ return { changed: false, warnings: [] };
233
+ }
234
+ await fs.writeFile(filePath, nextContent.next_content, "utf8");
235
+ return {
236
+ changed: true,
237
+ warnings: await runActiveOnWriteHooks({
238
+ path: filePath,
239
+ scope: "project",
240
+ op: "init:agent_guidance_file"
241
+ })
242
+ };
243
+ }
244
+ async function runInitAgentGuidance(options) {
245
+ const warnings = [];
246
+ const nextSteps = [];
247
+ const projectRoot = resolveProjectRoot(options.pm_root, options.cwd);
248
+ let scans = await scanGuidanceFiles(projectRoot);
249
+ const targetPath = resolveTargetGuidancePath(scans, projectRoot);
250
+ const targetRelativePath = toPortableRelativePath(projectRoot, targetPath);
251
+ const addLaterHint = "Add workflow guidance later: pm init --agent-guidance add";
252
+ let prompted = false;
253
+ let applied = false;
254
+ let skipped = false;
255
+ let state = normalizeAgentGuidanceState(options.settings);
256
+ const checkedFiles = scans.map((entry) => toPortableRelativePath(projectRoot, entry.file_path));
257
+ const presentBefore = scans.some((entry) => entry.has_guidance);
258
+ const markState = (partial) => {
259
+ state = {
260
+ ...state,
261
+ ...partial,
262
+ template_version: AGENT_GUIDANCE_TEMPLATE_VERSION,
263
+ last_checked_files: checkedFiles
264
+ };
265
+ };
266
+ if (options.mode === "status") {
267
+ if (!presentBefore) {
268
+ warnings.push("agent_guidance:missing");
269
+ pushUnique(nextSteps, addLaterHint);
270
+ }
271
+ } else if (options.mode === "skip") {
272
+ skipped = true;
273
+ markState({
274
+ prompt_completed: true,
275
+ declined: true,
276
+ declined_at: state.declined_at.length > 0 ? state.declined_at : (/* @__PURE__ */ new Date()).toISOString()
277
+ });
278
+ warnings.push("agent_guidance:explicit_skip");
279
+ pushUnique(nextSteps, addLaterHint);
280
+ } else if (options.mode === "add") {
281
+ if (!presentBefore) {
282
+ const writeResult = await writeGuidanceFile(targetPath);
283
+ warnings.push(...writeResult.warnings);
284
+ if (writeResult.changed) {
285
+ applied = true;
286
+ warnings.push(`agent_guidance:added:${targetRelativePath}`);
287
+ }
288
+ }
289
+ markState({
290
+ prompt_completed: true,
291
+ declined: false,
292
+ declined_at: ""
293
+ });
294
+ } else if (presentBefore) {
295
+ if (state.declined) {
296
+ markState({
297
+ prompt_completed: true,
298
+ declined: false,
299
+ declined_at: ""
300
+ });
301
+ }
302
+ } else if (state.prompt_completed && state.declined) {
303
+ skipped = true;
304
+ warnings.push("agent_guidance:skipped_declined");
305
+ pushUnique(nextSteps, addLaterHint);
306
+ } else if (options.interactive) {
307
+ prompted = true;
308
+ const approved = await promptForGuidanceWrite(targetRelativePath);
309
+ if (approved) {
310
+ const writeResult = await writeGuidanceFile(targetPath);
311
+ warnings.push(...writeResult.warnings);
312
+ if (writeResult.changed) {
313
+ applied = true;
314
+ warnings.push(`agent_guidance:added:${targetRelativePath}`);
315
+ }
316
+ markState({
317
+ prompt_completed: true,
318
+ declined: false,
319
+ declined_at: ""
320
+ });
321
+ } else {
322
+ skipped = true;
323
+ markState({
324
+ prompt_completed: true,
325
+ declined: true,
326
+ declined_at: (/* @__PURE__ */ new Date()).toISOString()
327
+ });
328
+ warnings.push("agent_guidance:declined");
329
+ pushUnique(nextSteps, addLaterHint);
330
+ }
331
+ } else {
332
+ warnings.push("agent_guidance:missing_non_interactive");
333
+ pushUnique(nextSteps, addLaterHint);
334
+ }
335
+ const stateUpdate = applyAgentGuidanceState(options.settings, state);
336
+ if (applied) {
337
+ scans = await scanGuidanceFiles(projectRoot);
338
+ }
339
+ const summary = {
340
+ mode: options.mode,
341
+ present: scans.some((entry) => entry.has_guidance),
342
+ prompted,
343
+ applied,
344
+ skipped,
345
+ declined: state.declined,
346
+ prompt_completed: state.prompt_completed,
347
+ template_version: state.template_version,
348
+ target_file: targetRelativePath,
349
+ checked_files: scans.map((entry) => toPortableRelativePath(projectRoot, entry.file_path)),
350
+ files_with_guidance: scans.filter((entry) => entry.has_guidance).map((entry) => toPortableRelativePath(projectRoot, entry.file_path)),
351
+ missing_files: scans.filter((entry) => !entry.exists).map((entry) => toPortableRelativePath(projectRoot, entry.file_path))
352
+ };
353
+ return {
354
+ summary,
355
+ warnings,
356
+ next_steps: nextSteps,
357
+ settings_changed: stateUpdate.changed
358
+ };
359
+ }
360
+
361
+ // dist/cli/commands/init.js
362
+ function summarizeInitResult(result) {
363
+ return {
364
+ ok: result.ok,
365
+ path: result.path,
366
+ id_prefix: result.settings.id_prefix,
367
+ governance_preset: result.governance_preset,
368
+ telemetry: {
369
+ enabled: result.settings.telemetry.enabled,
370
+ capture_level: result.settings.telemetry.capture_level
371
+ },
372
+ output_format: result.settings.output.default_format,
373
+ created_dirs_count: result.created_dirs.length,
374
+ created_dirs: result.created_dirs,
375
+ warnings: result.warnings,
376
+ wizard_used: result.wizard_used,
377
+ ...result.registered_type_preset ? { registered_type_preset: result.registered_type_preset } : {},
378
+ ...result.installed_packages ? { installed_packages: result.installed_packages } : {},
379
+ next_steps: result.next_steps,
380
+ agent_guidance: result.agent_guidance,
381
+ hint: "Re-run with --verbose for the full settings tree."
382
+ };
383
+ }
384
+ function cloneDefaults() {
385
+ return structuredClone(SETTINGS_DEFAULTS);
386
+ }
387
+ var BUILTIN_GOVERNANCE_PRESETS = ["minimal", "default", "strict"];
388
+ var INIT_TYPE_PRESET_NAMES = ["agile", "ops", "research"];
389
+ var INIT_TYPE_PRESET_DEFINITIONS = {
390
+ agile: [
391
+ {
392
+ name: "Story",
393
+ description: "User-facing outcome or capability slice expressed from a stakeholder perspective.",
394
+ defaultStatus: "open",
395
+ folder: "stories",
396
+ aliases: ["user-story"]
397
+ },
398
+ {
399
+ name: "Spike",
400
+ description: "Time-boxed investigation used to reduce uncertainty before implementation.",
401
+ defaultStatus: "open",
402
+ folder: "spikes",
403
+ aliases: ["research-spike"]
404
+ }
405
+ ],
406
+ ops: [
407
+ {
408
+ name: "Incident",
409
+ description: "Operational disruption, degradation, or support escalation with recovery tracking.",
410
+ defaultStatus: "open",
411
+ folder: "incidents",
412
+ aliases: ["outage"]
413
+ },
414
+ {
415
+ name: "Runbook",
416
+ description: "Repeatable operational procedure, diagnostic path, or response playbook.",
417
+ defaultStatus: "open",
418
+ folder: "runbooks",
419
+ aliases: ["playbook"]
420
+ }
421
+ ],
422
+ research: [
423
+ {
424
+ name: "Experiment",
425
+ description: "Validated-learning activity with hypothesis, method, and outcome tracking.",
426
+ defaultStatus: "open",
427
+ folder: "experiments",
428
+ aliases: ["study"]
429
+ },
430
+ {
431
+ name: "Hypothesis",
432
+ description: "Testable claim or assumption that should be supported, rejected, or refined.",
433
+ defaultStatus: "open",
434
+ folder: "hypotheses",
435
+ aliases: ["assumption"]
436
+ }
437
+ ]
438
+ };
439
+ function normalizeInitGovernancePreset(rawValue) {
440
+ if (rawValue === void 0) {
441
+ return void 0;
442
+ }
443
+ const normalized = rawValue.trim().toLowerCase().replaceAll("-", "_");
444
+ if (normalized.length === 0) {
445
+ throw new PmCliError("--preset must not be empty", EXIT_CODE.USAGE);
446
+ }
447
+ if (normalized === "minimal" || normalized === "default" || normalized === "strict") {
448
+ return normalized;
449
+ }
450
+ if (normalized === "lite" || normalized === "minimum") {
451
+ return "minimal";
452
+ }
453
+ throw new PmCliError(`Invalid --preset value "${rawValue}". Allowed: ${BUILTIN_GOVERNANCE_PRESETS.join(", ")}`, EXIT_CODE.USAGE);
454
+ }
455
+ function normalizeInitTypePreset(rawValue) {
456
+ if (rawValue === void 0) {
457
+ return void 0;
458
+ }
459
+ const normalized = rawValue.trim().toLowerCase().replaceAll("-", "_");
460
+ if (normalized.length === 0) {
461
+ throw new PmCliError("--type-preset must not be empty", EXIT_CODE.USAGE);
462
+ }
463
+ if (normalized === "agile" || normalized === "ops" || normalized === "research") {
464
+ return normalized;
465
+ }
466
+ throw new PmCliError(`Invalid --type-preset value "${rawValue}". Allowed: ${INIT_TYPE_PRESET_NAMES.join(", ")}`, EXIT_CODE.USAGE);
467
+ }
468
+ function normalizeOptionalInitAuthor(rawValue) {
469
+ if (rawValue === void 0) {
470
+ return void 0;
471
+ }
472
+ const normalized = rawValue.trim();
473
+ if (normalized.length === 0) {
474
+ throw new PmCliError("--author must not be empty", EXIT_CODE.USAGE);
475
+ }
476
+ return normalized;
477
+ }
478
+ function normalizeInitAgentGuidanceMode(rawValue) {
479
+ if (rawValue === void 0) {
480
+ return "ask";
481
+ }
482
+ const normalized = rawValue.trim().toLowerCase().replaceAll("-", "_");
483
+ if (normalized.length === 0) {
484
+ throw new PmCliError("--agent-guidance must not be empty", EXIT_CODE.USAGE);
485
+ }
486
+ if (normalized === "ask" || normalized === "add" || normalized === "skip" || normalized === "status") {
487
+ return normalized;
488
+ }
489
+ throw new PmCliError(`Invalid --agent-guidance value "${rawValue}". Allowed: ${INIT_AGENT_GUIDANCE_MODE_VALUES.join(", ")}`, EXIT_CODE.USAGE);
490
+ }
491
+ function parseYesNoChoice(answer, currentDefault) {
492
+ const normalized = answer.trim().toLowerCase();
493
+ if (normalized.length === 0) {
494
+ return currentDefault;
495
+ }
496
+ if (normalized === "y" || normalized === "yes") {
497
+ return true;
498
+ }
499
+ if (normalized === "n" || normalized === "no") {
500
+ return false;
501
+ }
502
+ return currentDefault;
503
+ }
504
+ function applyGovernancePreset(settings, preset) {
505
+ const knobs = GOVERNANCE_PRESET_DEFAULTS[preset];
506
+ settings.governance = {
507
+ preset,
508
+ ...knobs
509
+ };
510
+ settings.validation.parent_reference = knobs.parent_reference;
511
+ settings.validation.metadata_profile = knobs.metadata_profile;
512
+ }
513
+ function summarizeInstalledPackages(result) {
514
+ const details = result.details;
515
+ return {
516
+ installed_all: details.installed_all === true,
517
+ installed_count: typeof details.installed_count === "number" ? details.installed_count : 0,
518
+ packages: Array.isArray(details.packages) ? details.packages.map((entry) => ({
519
+ alias: typeof entry.alias === "string" ? entry.alias : "",
520
+ ok: entry.ok === true
521
+ })) : []
522
+ };
523
+ }
524
+ async function registerInitTypePreset(pmRoot, settings, preset) {
525
+ const schema = normalizeRuntimeSchemaSettings(settings.schema);
526
+ const typesPath = filePathForSchemaSection(pmRoot, schema.files.types, DEFAULT_RUNTIME_SCHEMA_FILE_PATHS.types);
527
+ const parsed = parseItemTypesFile(await readFileIfExists(typesPath));
528
+ let nextFile = parsed;
529
+ const registered = [];
530
+ const updated = [];
531
+ for (const rawDefinition of INIT_TYPE_PRESET_DEFINITIONS[preset]) {
532
+ const normalized = normalizeAddTypeInput(rawDefinition);
533
+ const upsert = upsertItemType(nextFile, normalized);
534
+ nextFile = upsert.file;
535
+ (upsert.replaced ? updated : registered).push(upsert.definition.name);
536
+ }
537
+ await writeFileAtomic(typesPath, serializeItemTypesFile(nextFile));
538
+ return {
539
+ name: preset,
540
+ registered,
541
+ updated,
542
+ file: typesPath
543
+ };
544
+ }
545
+ async function runInitWizard(initialPrefix, telemetryDefault) {
546
+ const rl = readline2.createInterface({ input: input2, output: output2 });
547
+ try {
548
+ output2.write("pm init setup wizard (agent-optimized)\n");
549
+ output2.write("This walkthrough is non-destructive and each choice can be changed later with pm config.\n\n");
550
+ output2.write("1/3 Item ID prefix\n");
551
+ output2.write("Prefix is prepended to generated IDs (for example pm-a1b2).\n");
552
+ const prefixAnswer = await rl.question(`Item ID prefix [${initialPrefix}]: `);
553
+ const resolvedPrefix = prefixAnswer.trim().length > 0 ? normalizePrefix(prefixAnswer) : initialPrefix;
554
+ output2.write("\n2/3 Governance preset\n");
555
+ output2.write("minimal: no ownership blocking, progressive create defaults, close validation off.\n");
556
+ output2.write("default: ownership conflict warnings, progressive create defaults, close validation warn.\n");
557
+ output2.write("strict: ownership blocking, strict create defaults, close validation strict.\n");
558
+ const presetAnswer = await rl.question("Governance preset [minimal/default/strict] (default: minimal): ");
559
+ const resolvedPreset = normalizeInitGovernancePreset(presetAnswer.trim().length > 0 ? presetAnswer : "minimal") ?? "minimal";
560
+ output2.write("\n3/3 Project telemetry\n");
561
+ output2.write("Telemetry helps improve reliability and can be disabled anytime via pm config.\n");
562
+ const telemetryLabel = telemetryDefault ? "Y/n" : "y/N";
563
+ const telemetryAnswer = await rl.question(`Enable telemetry for this project? [${telemetryLabel}] `);
564
+ const telemetryEnabled = parseYesNoChoice(telemetryAnswer, telemetryDefault);
565
+ output2.write("\n");
566
+ return {
567
+ prefix: resolvedPrefix,
568
+ preset: resolvedPreset,
569
+ telemetry_enabled: telemetryEnabled
570
+ };
571
+ } finally {
572
+ rl.close();
573
+ }
574
+ }
575
+ async function runInit(prefixArg, global, options = {}) {
576
+ const cwd = process.cwd();
577
+ const pmRoot = resolvePmRoot(cwd, global.path);
578
+ const createdDirs = [];
579
+ const warnings = [];
580
+ let wizardUsed = false;
581
+ for (const subdir of PM_REQUIRED_SUBDIRS) {
582
+ const target = subdir ? path2.join(pmRoot, subdir) : pmRoot;
583
+ const existed = await pathExists(target);
584
+ await fs2.mkdir(target, { recursive: true });
585
+ if (existed) {
586
+ warnings.push(`already_exists:${target}`);
587
+ } else {
588
+ createdDirs.push(target);
589
+ }
590
+ warnings.push(...await runActiveOnWriteHooks({
591
+ path: target,
592
+ scope: "project",
593
+ op: "init:ensure_dir"
594
+ }));
595
+ }
596
+ const settingsPath = path2.join(pmRoot, "settings.json");
597
+ const settingsExists = await pathExists(settingsPath);
598
+ let normalizedPrefix = normalizePrefix(prefixArg);
599
+ const presetFromOption = normalizeInitGovernancePreset(options.preset);
600
+ const useDefaults = options.defaults === true;
601
+ const authorFromOption = normalizeOptionalInitAuthor(options.author);
602
+ const installBundledPackages = options.withPackages === true;
603
+ const agentGuidanceMode = normalizeInitAgentGuidanceMode(options.agentGuidance);
604
+ const typePreset = normalizeInitTypePreset(options.typePreset);
605
+ let chosenPreset = presetFromOption;
606
+ let chosenTelemetryEnabled;
607
+ let settings;
608
+ if (settingsExists) {
609
+ settings = await readSettings(pmRoot);
610
+ warnings.push(`already_exists:${settingsPath}`);
611
+ let changed = false;
612
+ if (prefixArg !== void 0 && settings.id_prefix !== normalizedPrefix) {
613
+ settings.id_prefix = normalizedPrefix;
614
+ warnings.push(`updated:id_prefix:${normalizedPrefix}`);
615
+ changed = true;
616
+ }
617
+ if (presetFromOption !== void 0 && settings.governance.preset !== presetFromOption) {
618
+ applyGovernancePreset(settings, presetFromOption);
619
+ warnings.push(`updated:governance_preset:${presetFromOption}`);
620
+ changed = true;
621
+ }
622
+ if (authorFromOption !== void 0 && settings.author_default !== authorFromOption) {
623
+ settings.author_default = authorFromOption;
624
+ warnings.push(`updated:author_default:${authorFromOption}`);
625
+ changed = true;
626
+ }
627
+ if (changed) {
628
+ await writeSettings(pmRoot, settings);
629
+ }
630
+ } else {
631
+ if (presetFromOption === void 0 && !useDefaults && process.stdin.isTTY === true && process.stdout.isTTY === true) {
632
+ const wizardChoices = await runInitWizard(normalizedPrefix, SETTINGS_DEFAULTS.telemetry.enabled);
633
+ normalizedPrefix = wizardChoices.prefix;
634
+ chosenPreset = wizardChoices.preset;
635
+ chosenTelemetryEnabled = wizardChoices.telemetry_enabled;
636
+ wizardUsed = true;
637
+ }
638
+ const effectivePreset = chosenPreset ?? "minimal";
639
+ settings = cloneDefaults();
640
+ settings.id_prefix = normalizedPrefix;
641
+ applyGovernancePreset(settings, effectivePreset);
642
+ if (authorFromOption !== void 0) {
643
+ settings.author_default = authorFromOption;
644
+ }
645
+ if (chosenTelemetryEnabled !== void 0) {
646
+ settings.telemetry.enabled = chosenTelemetryEnabled;
647
+ settings.telemetry.first_run_prompt_completed = true;
648
+ }
649
+ await writeSettings(pmRoot, settings);
650
+ }
651
+ const agentGuidanceResult = await runInitAgentGuidance({
652
+ pm_root: pmRoot,
653
+ cwd,
654
+ mode: agentGuidanceMode,
655
+ interactive: process.stdin.isTTY === true && process.stdout.isTTY === true,
656
+ settings
657
+ });
658
+ warnings.push(...agentGuidanceResult.warnings);
659
+ if (agentGuidanceResult.settings_changed) {
660
+ await writeSettings(pmRoot, settings);
661
+ }
662
+ const runtimeSchemaScaffold = await ensureRuntimeSchemaFileScaffold(pmRoot, settings.schema);
663
+ for (const createdPath of runtimeSchemaScaffold.created_paths) {
664
+ createdDirs.push(createdPath);
665
+ warnings.push(...await runActiveOnWriteHooks({
666
+ path: createdPath,
667
+ scope: "project",
668
+ op: "init:runtime_schema_file"
669
+ }));
670
+ }
671
+ let registeredTypePreset;
672
+ if (typePreset !== void 0) {
673
+ registeredTypePreset = await registerInitTypePreset(pmRoot, settings, typePreset);
674
+ warnings.push(`registered_type_preset:${typePreset}`);
675
+ warnings.push(...await runActiveOnWriteHooks({
676
+ path: registeredTypePreset.file,
677
+ scope: "project",
678
+ op: "init:type_preset"
679
+ }));
680
+ settings = await readSettings(pmRoot);
681
+ }
682
+ const typeRegistry = resolveItemTypeRegistry(settings, getActiveExtensionRegistrations());
683
+ for (const typeFolder of typeRegistry.folders) {
684
+ if (PM_REQUIRED_SUBDIRS.includes(typeFolder)) {
685
+ continue;
686
+ }
687
+ const target = path2.join(pmRoot, typeFolder);
688
+ const existed = await pathExists(target);
689
+ await fs2.mkdir(target, { recursive: true });
690
+ if (existed) {
691
+ warnings.push(`already_exists:${target}`);
692
+ } else {
693
+ createdDirs.push(target);
694
+ }
695
+ warnings.push(...await runActiveOnWriteHooks({
696
+ path: target,
697
+ scope: "project",
698
+ op: "init:ensure_dir"
699
+ }));
700
+ }
701
+ let installedPackages;
702
+ if (installBundledPackages) {
703
+ const packageInstallResult = await runExtension("all", { install: true, project: true }, global);
704
+ warnings.push(...packageInstallResult.warnings);
705
+ installedPackages = summarizeInstalledPackages(packageInstallResult);
706
+ if (!installedPackages.installed_all || installedPackages.packages.some((entry) => !entry.ok)) {
707
+ throw new PmCliError("pm init --with-packages did not install all bundled packages successfully.", EXIT_CODE.GENERIC_FAILURE);
708
+ }
709
+ }
710
+ const nextSteps = [
711
+ 'Create your first item: pm create --type Task --title "<title>"',
712
+ "List active items: pm list",
713
+ "Get agent-friendly project context: pm context"
714
+ ];
715
+ if (!installBundledPackages) {
716
+ nextSteps.push("Add optional packages for richer workflows: pm install calendar --project, pm install templates --project, pm install guide-shell --project");
717
+ nextSteps.push("Or install everything bundled: pm init --with-packages (idempotent on re-run)");
718
+ } else {
719
+ nextSteps.push("Explore newly-available commands: pm cal, pm templates, pm guide");
720
+ }
721
+ if (registeredTypePreset) {
722
+ nextSteps.push(`Inspect registered preset types: pm schema list, pm schema show ${registeredTypePreset.registered[0] ?? registeredTypePreset.updated[0]}`);
723
+ }
724
+ nextSteps.push("Set PM_AUTHOR=<your-agent-id> so mutations attribute to the right caller.");
725
+ for (const guidanceNextStep of agentGuidanceResult.next_steps) {
726
+ if (!nextSteps.includes(guidanceNextStep)) {
727
+ nextSteps.push(guidanceNextStep);
728
+ }
729
+ }
730
+ return {
731
+ ok: true,
732
+ path: pmRoot,
733
+ settings,
734
+ created_dirs: createdDirs,
735
+ warnings,
736
+ governance_preset: settings.governance.preset,
737
+ wizard_used: wizardUsed,
738
+ ...registeredTypePreset ? { registered_type_preset: registeredTypePreset } : {},
739
+ ...installedPackages ? { installed_packages: installedPackages } : {},
740
+ next_steps: nextSteps,
741
+ agent_guidance: agentGuidanceResult.summary
742
+ };
743
+ }
744
+
745
+ export {
746
+ summarizeInitResult,
747
+ runInit
748
+ };
749
+ //# sourceMappingURL=chunk-AY43SBIN.js.map
750
+
751
+ //# debugId=256a39f4-fc97-5137-9150-eb04dce607f8