@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
@@ -10,44 +10,45 @@ import {
10
10
  parseLinkedTestMinLines,
11
11
  parseLinkedTestRegexList,
12
12
  parseLinkedTestStringList
13
- } from "./chunk-WJ2NAC37.js";
14
- import {
15
- buildInvalidTypeError
16
- } from "./chunk-7Y53ZJIQ.js";
13
+ } from "./chunk-N7ACFE26.js";
17
14
  import {
18
15
  createStdinTokenResolver,
19
16
  mergeAdditiveTags,
20
17
  parseCsvKv,
21
18
  parseOptionalNumber,
22
19
  parseTags
23
- } from "./chunk-NGN7UV5K.js";
20
+ } from "./chunk-XLTD2HN3.js";
24
21
  import {
25
22
  normalizeParentReferenceValue,
26
23
  validateMissingParentReference,
27
24
  validateSprintOrReleaseValue
28
- } from "./chunk-AKOOMO3T.js";
25
+ } from "./chunk-KAG77BY3.js";
26
+ import {
27
+ buildInvalidTypeError
28
+ } from "./chunk-OVQCEJPG.js";
29
29
  import {
30
30
  printError
31
- } from "./chunk-5HSEP75M.js";
31
+ } from "./chunk-LCM63IXU.js";
32
32
  import {
33
+ acquireLock,
33
34
  appendHistoryEntry,
35
+ applyRegisteredItemFieldDefaultsAndValidation,
36
+ collectRegisteredItemFieldNames,
34
37
  createHistoryEntry,
35
- locateItem
36
- } from "./chunk-BUPWJ3IJ.js";
37
- import {
38
- acquireLock
39
- } from "./chunk-4AEZR5EJ.js";
38
+ locateItem,
39
+ parseRegisteredItemFieldAssignments
40
+ } from "./chunk-XTGLRY2Y.js";
40
41
  import {
41
42
  generateItemId,
42
43
  normalizeItemId
43
- } from "./chunk-CEFIVZPG.js";
44
+ } from "./chunk-T3LC5LKB.js";
44
45
  import {
45
46
  canonicalDocument,
46
47
  collectRuntimeCreateFieldValues,
47
48
  normalizeFrontMatter,
48
49
  normalizeStatusInput,
49
50
  serializeItemDocument
50
- } from "./chunk-MD7K4JYF.js";
51
+ } from "./chunk-AO442XLN.js";
51
52
  import {
52
53
  canonicalizeCommandOptionKey,
53
54
  commandOptionFlagLabel,
@@ -56,11 +57,11 @@ import {
56
57
  resolveTypeDefinition,
57
58
  resolveTypeName,
58
59
  validateTypeOptions
59
- } from "./chunk-WDPXDQFG.js";
60
+ } from "./chunk-KJE2FOS4.js";
60
61
  import {
61
62
  nowIso,
62
63
  resolveIsoOrRelative
63
- } from "./chunk-PVNQLCIS.js";
64
+ } from "./chunk-QO7EBBOM.js";
64
65
  import {
65
66
  CONFIDENCE_TEXT_VALUES,
66
67
  DEPENDENCY_KIND_VALUES,
@@ -77,7 +78,9 @@ import {
77
78
  getItemPath,
78
79
  getSettingsPath,
79
80
  pathExists,
81
+ projectAfterCommandItemSnapshot,
80
82
  readSettings,
83
+ recordAfterCommandAffectedItem,
81
84
  removeFileIfExists,
82
85
  resolvePmRoot,
83
86
  resolveRuntimeFieldRegistry,
@@ -86,7 +89,7 @@ import {
86
89
  runActiveOnWriteHooks,
87
90
  weekdayOrderIndex,
88
91
  writeFileAtomic
89
- } from "./chunk-LSXGH6NE.js";
92
+ } from "./chunk-U5SXYXSY.js";
90
93
 
91
94
  // dist/core/item/priority.js
92
95
  !(function() {
@@ -161,88 +164,6 @@ function resolveTypeSynonym(rawType) {
161
164
  return TYPE_SYNONYMS[rawType.trim().toLowerCase()];
162
165
  }
163
166
 
164
- // dist/core/extensions/item-fields.js
165
- !(function() {
166
- try {
167
- var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
168
- n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "ded4c408-642b-51bb-8f35-b66db506ce14");
169
- } catch (e2) {
170
- }
171
- })();
172
- function normalizeFieldName(value) {
173
- if (typeof value !== "string") {
174
- return null;
175
- }
176
- const normalized = value.trim();
177
- return normalized.length > 0 ? normalized : null;
178
- }
179
- function normalizeFieldType(value) {
180
- if (typeof value !== "string") {
181
- return null;
182
- }
183
- const normalized = value.trim().toLowerCase();
184
- if (normalized === "string" || normalized === "number" || normalized === "boolean" || normalized === "array" || normalized === "object") {
185
- return normalized;
186
- }
187
- return null;
188
- }
189
- function cloneFieldValue(value) {
190
- try {
191
- return structuredClone(value);
192
- } catch {
193
- return value;
194
- }
195
- }
196
- function isValidFieldType(value, expectedType) {
197
- if (expectedType === "string") {
198
- return typeof value === "string";
199
- }
200
- if (expectedType === "number") {
201
- return typeof value === "number" && Number.isFinite(value);
202
- }
203
- if (expectedType === "boolean") {
204
- return typeof value === "boolean";
205
- }
206
- if (expectedType === "array") {
207
- return Array.isArray(value);
208
- }
209
- return typeof value === "object" && value !== null && !Array.isArray(value);
210
- }
211
- function isAllowedFieldValue(value, allowed) {
212
- if (!allowed || allowed.length === 0) {
213
- return true;
214
- }
215
- return allowed.some((candidate) => Object.is(candidate, value));
216
- }
217
- function applyRegisteredItemFieldDefaultsAndValidation(frontMatter, registrations) {
218
- if (!registrations) {
219
- return;
220
- }
221
- for (const registration of registrations.item_fields) {
222
- for (const definition of registration.fields) {
223
- const fieldName = normalizeFieldName(definition.name);
224
- if (!fieldName) {
225
- continue;
226
- }
227
- if (!(fieldName in frontMatter) && Object.prototype.hasOwnProperty.call(definition, "default")) {
228
- frontMatter[fieldName] = cloneFieldValue(definition.default);
229
- }
230
- const currentValue = frontMatter[fieldName];
231
- if (currentValue === void 0) {
232
- continue;
233
- }
234
- const expectedType = normalizeFieldType(definition.type);
235
- if (expectedType && !isValidFieldType(currentValue, expectedType)) {
236
- throw new TypeError(`Item field "${fieldName}" must be of type ${expectedType}`);
237
- }
238
- const allowedValues = Array.isArray(definition.values) ? definition.values : void 0;
239
- if (!isAllowedFieldValue(currentValue, allowedValues)) {
240
- throw new TypeError(`Item field "${fieldName}" must match one of the configured allowed values`);
241
- }
242
- }
243
- }
244
- }
245
-
246
167
  // dist/cli/commands/metadata-normalizers.js
247
168
  !(function() {
248
169
  try {
@@ -284,44 +205,6 @@ function parseRegressionInput(value) {
284
205
  throw new PmCliError("Regression must be one of true|false|1|0", EXIT_CODE.USAGE);
285
206
  }
286
207
 
287
- // dist/cli/commands/event-validation-messages.js
288
- !(function() {
289
- try {
290
- var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
291
- n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d61c5566-4a50-5cd2-aafa-b52e99aa266a");
292
- } catch (e2) {
293
- }
294
- })();
295
- var EVENT_END_AFTER_START_MESSAGE = "--event end must be strictly after start. Equal start/end timestamps are treated as an instant event (end is dropped); an end earlier than start is rejected. Omit end for an instant event or set end later than start.";
296
- var EVENT_END_DURATION_MUTUALLY_EXCLUSIVE_MESSAGE = "--event end and duration are mutually exclusive; provide only one (use duration=<relative> like duration=2h, or set an explicit end).";
297
- function resolveEventEndAt(startAt, endRaw, durationRaw, referenceDate) {
298
- if (endRaw && durationRaw) {
299
- throw new PmCliError(EVENT_END_DURATION_MUTUALLY_EXCLUSIVE_MESSAGE, EXIT_CODE.USAGE);
300
- }
301
- if (durationRaw) {
302
- const normalizedDuration = durationRaw.startsWith("+") ? durationRaw : `+${durationRaw}`;
303
- const endAt2 = resolveIsoOrRelative(normalizedDuration, new Date(startAt), "event.duration");
304
- if (endAt2 < startAt) {
305
- throw new PmCliError(EVENT_END_AFTER_START_MESSAGE, EXIT_CODE.USAGE);
306
- }
307
- if (endAt2 === startAt) {
308
- return void 0;
309
- }
310
- return endAt2;
311
- }
312
- if (!endRaw) {
313
- return void 0;
314
- }
315
- const endAt = resolveIsoOrRelative(endRaw, referenceDate, "event.end");
316
- if (endAt < startAt) {
317
- throw new PmCliError(EVENT_END_AFTER_START_MESSAGE, EXIT_CODE.USAGE);
318
- }
319
- if (endAt === startAt) {
320
- return void 0;
321
- }
322
- return endAt;
323
- }
324
-
325
208
  // dist/cli/commands/legacy-none-tokens.js
326
209
  !(function() {
327
210
  try {
@@ -435,11 +318,162 @@ function parseRecurrenceRule(kv, startAt, nowValue, emptyNumericGuard) {
435
318
  };
436
319
  }
437
320
 
321
+ // dist/cli/commands/event-validation-messages.js
322
+ !(function() {
323
+ try {
324
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
325
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d61c5566-4a50-5cd2-aafa-b52e99aa266a");
326
+ } catch (e2) {
327
+ }
328
+ })();
329
+ var EVENT_END_AFTER_START_MESSAGE = "--event end must be strictly after start. Equal start/end timestamps are treated as an instant event (end is dropped); an end earlier than start is rejected. Omit end for an instant event or set end later than start.";
330
+ var EVENT_END_DURATION_MUTUALLY_EXCLUSIVE_MESSAGE = "--event end and duration are mutually exclusive; provide only one (use duration=<relative> like duration=2h, or set an explicit end).";
331
+ function resolveEventEndAt(startAt, endRaw, durationRaw, referenceDate) {
332
+ if (endRaw && durationRaw) {
333
+ throw new PmCliError(EVENT_END_DURATION_MUTUALLY_EXCLUSIVE_MESSAGE, EXIT_CODE.USAGE);
334
+ }
335
+ if (durationRaw) {
336
+ const normalizedDuration = durationRaw.startsWith("+") ? durationRaw : `+${durationRaw}`;
337
+ const endAt2 = resolveIsoOrRelative(normalizedDuration, new Date(startAt), "event.duration");
338
+ if (endAt2 < startAt) {
339
+ throw new PmCliError(EVENT_END_AFTER_START_MESSAGE, EXIT_CODE.USAGE);
340
+ }
341
+ if (endAt2 === startAt) {
342
+ return void 0;
343
+ }
344
+ return endAt2;
345
+ }
346
+ if (!endRaw) {
347
+ return void 0;
348
+ }
349
+ const endAt = resolveIsoOrRelative(endRaw, referenceDate, "event.end");
350
+ if (endAt < startAt) {
351
+ throw new PmCliError(EVENT_END_AFTER_START_MESSAGE, EXIT_CODE.USAGE);
352
+ }
353
+ if (endAt === startAt) {
354
+ return void 0;
355
+ }
356
+ return endAt;
357
+ }
358
+
359
+ // dist/cli/commands/repeatable-metadata-parsers.js
360
+ !(function() {
361
+ try {
362
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
363
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "1f8d48a8-041d-5a4c-9dd2-a175d9be03ea");
364
+ } catch (e2) {
365
+ }
366
+ })();
367
+ function optionalString(value, mode) {
368
+ return mode === "trimmed" ? value?.trim() : value;
369
+ }
370
+ function isProvided(value, guard) {
371
+ return guard === "defined" ? value !== void 0 : Boolean(value);
372
+ }
373
+ function parseReminderEntries(raw, nowValue, options) {
374
+ return raw.map((entry) => {
375
+ const kv = parseCsvKv(entry, "--reminder");
376
+ const atRaw = optionalString(kv.at ?? kv.date, options.valueMode);
377
+ const textRaw = optionalString(kv.text ?? kv.title, options.valueMode);
378
+ if (!atRaw || !textRaw) {
379
+ throw new PmCliError("--reminder requires at=<iso|relative> or date=<iso|relative>, plus text=<value> or title=<value>", EXIT_CODE.USAGE);
380
+ }
381
+ const text = textRaw.trim();
382
+ if (!text) {
383
+ throw new PmCliError("--reminder text must not be empty", EXIT_CODE.USAGE);
384
+ }
385
+ return {
386
+ at: resolveIsoOrRelative(atRaw, nowValue, "reminder.at"),
387
+ text
388
+ };
389
+ });
390
+ }
391
+ function parseEventEntries(raw, nowValue, options) {
392
+ return raw.map((entry) => {
393
+ const kv = parseCsvKv(entry, "--event");
394
+ const startRaw = (kv.start ?? kv.date)?.trim();
395
+ if (!startRaw) {
396
+ throw new PmCliError("--event requires start=<iso|relative> or date=<iso|relative>", EXIT_CODE.USAGE);
397
+ }
398
+ const startAt = resolveIsoOrRelative(startRaw, nowValue, "event.start");
399
+ const endRaw = kv.end?.trim();
400
+ const durationRaw = kv.duration?.trim();
401
+ const endAt = resolveEventEndAt(startAt, endRaw, durationRaw, nowValue);
402
+ const titleRaw = kv.title;
403
+ const descriptionRaw = kv.description;
404
+ const locationRaw = kv.location;
405
+ const timezoneRaw = kv.timezone;
406
+ const title = titleRaw?.trim();
407
+ const description = descriptionRaw?.trim();
408
+ const location = locationRaw?.trim();
409
+ const timezone = timezoneRaw?.trim();
410
+ if (titleRaw !== void 0 && !title) {
411
+ throw new PmCliError("--event title must not be empty", EXIT_CODE.USAGE);
412
+ }
413
+ if (descriptionRaw !== void 0 && !description) {
414
+ throw new PmCliError("--event description must not be empty", EXIT_CODE.USAGE);
415
+ }
416
+ if (locationRaw !== void 0 && !location) {
417
+ throw new PmCliError("--event location must not be empty", EXIT_CODE.USAGE);
418
+ }
419
+ if (timezoneRaw !== void 0 && !timezone) {
420
+ throw new PmCliError("--event timezone must not be empty", EXIT_CODE.USAGE);
421
+ }
422
+ const allDayRaw = kv.all_day?.trim();
423
+ const recurrence = parseRecurrenceRule(kv, startAt, nowValue, options.recurrenceEmptyNumericGuard);
424
+ const allDay = isProvided(allDayRaw, options.allDayEmptyGuard) ? parseEventBoolean(allDayRaw, "--event all_day") : void 0;
425
+ return {
426
+ start_at: startAt,
427
+ end_at: endAt,
428
+ title,
429
+ description,
430
+ location,
431
+ all_day: allDay,
432
+ timezone,
433
+ recurrence
434
+ };
435
+ });
436
+ }
437
+ function parseTypeOptionEntries(raw) {
438
+ const values = {};
439
+ for (const entry of raw) {
440
+ const trimmedEntry = entry.trim();
441
+ if (trimmedEntry.length === 0) {
442
+ throw new PmCliError("--type-option values must not be empty", EXIT_CODE.USAGE);
443
+ }
444
+ let key;
445
+ let value;
446
+ const prefersStructuredKv = trimmedEntry.includes(",") || trimmedEntry.includes("\n") || trimmedEntry.startsWith("```") || /^(?:[-*+]\s+)?(?:key|value)\s*[:=]/i.test(trimmedEntry);
447
+ if (prefersStructuredKv) {
448
+ const kv = parseCsvKv(trimmedEntry, "--type-option");
449
+ key = kv.key?.trim();
450
+ value = kv.value?.trim();
451
+ } else {
452
+ const equalsIndex = trimmedEntry.indexOf("=");
453
+ const colonIndex = trimmedEntry.indexOf(":");
454
+ let separatorIndex = equalsIndex;
455
+ if (equalsIndex <= 0 && colonIndex > 0) {
456
+ separatorIndex = colonIndex;
457
+ }
458
+ if (separatorIndex <= 0 || separatorIndex === trimmedEntry.length - 1) {
459
+ throw new PmCliError("--type-option requires key=value or key=<name>,value=<value> entries", EXIT_CODE.USAGE);
460
+ }
461
+ key = trimmedEntry.slice(0, separatorIndex).trim();
462
+ value = trimmedEntry.slice(separatorIndex + 1).trim();
463
+ }
464
+ if (!key || !value) {
465
+ throw new PmCliError("--type-option requires key and value", EXIT_CODE.USAGE);
466
+ }
467
+ values[key] = value;
468
+ }
469
+ return Object.fromEntries(Object.entries(values).sort((left, right) => left[0].localeCompare(right[0])));
470
+ }
471
+
438
472
  // dist/cli/commands/create.js
439
473
  !(function() {
440
474
  try {
441
475
  var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
442
- n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "34bfa540-3464-5b83-87d4-fe09e97d916d");
476
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "6d06ae5b-933c-54ca-90c4-998090c1fcb3");
443
477
  } catch (e2) {
444
478
  }
445
479
  })();
@@ -711,9 +745,9 @@ function parseDependencies(raw, nowValue, prefix) {
711
745
  assertNoLegacyNoneTokens(raw, "--dep", "Use --clear-deps to clear dependencies.");
712
746
  const values = raw.map((entry) => {
713
747
  const trimmedEntry = entry.trim();
714
- const kv = looksLikeStructuredEntry(trimmedEntry, ["id", "kind", "author", "created_at"]) ? parseCsvKv(entry, "--dep") : { id: trimmedEntry, kind: "related" };
748
+ const kv = looksLikeStructuredEntry(trimmedEntry, ["id", "kind", "type", "author", "created_at"]) ? parseCsvKv(entry, "--dep") : { id: trimmedEntry, kind: "related" };
715
749
  const id = parseOptionalString(kv.id);
716
- const kind = parseOptionalString(kv.kind);
750
+ const kind = normalizeDependencyKindInput(parseOptionalString(kv.kind ?? kv.type));
717
751
  if (!id || !kind) {
718
752
  throw new PmCliError("--dep requires id and kind, or a bare item id to create a related dependency", EXIT_CODE.USAGE);
719
753
  }
@@ -729,6 +763,18 @@ function parseDependencies(raw, nowValue, prefix) {
729
763
  });
730
764
  return { values, explicitEmpty: false };
731
765
  }
766
+ var DEPENDENCY_KIND_INPUT_ALIASES = {
767
+ "blocked-by": "blocked_by",
768
+ depends_on: "blocked_by",
769
+ "depends-on": "blocked_by"
770
+ };
771
+ function normalizeDependencyKindInput(raw) {
772
+ if (typeof raw !== "string") {
773
+ return raw;
774
+ }
775
+ const alias = DEPENDENCY_KIND_INPUT_ALIASES[raw.toLowerCase()];
776
+ return alias ?? raw;
777
+ }
732
778
  function looksLikeStructuredEntry(raw, keys) {
733
779
  if (raw.startsWith("```") || raw.includes("\n")) {
734
780
  return true;
@@ -861,77 +907,27 @@ function parseReminders(raw, nowValue) {
861
907
  if (!raw || raw.length === 0)
862
908
  return { values: void 0, explicitEmpty: false };
863
909
  assertNoLegacyNoneTokens(raw, "--reminder", "Use --clear-reminders to clear reminders.");
864
- const values = raw.map((entry) => {
865
- const kv = parseCsvKv(entry, "--reminder");
866
- const atRaw = parseOptionalString(kv.at ?? kv.date);
867
- const textRaw = parseOptionalString(kv.text ?? kv.title);
868
- if (!atRaw || !textRaw) {
869
- throw new PmCliError("--reminder requires at=<iso|relative> or date=<iso|relative>, plus text=<value> or title=<value>", EXIT_CODE.USAGE);
870
- }
871
- const text = textRaw.trim();
872
- if (!text) {
873
- throw new PmCliError("--reminder text must not be empty", EXIT_CODE.USAGE);
874
- }
875
- return {
876
- at: resolveIsoOrRelative(atRaw, new Date(nowValue), "reminder.at"),
877
- text
878
- };
879
- });
880
- return { values, explicitEmpty: false };
910
+ return {
911
+ values: parseReminderEntries(raw, new Date(nowValue), { valueMode: "raw" }),
912
+ explicitEmpty: false
913
+ };
881
914
  }
882
915
  function parseEvents(raw, nowValue) {
883
916
  if (!raw || raw.length === 0)
884
917
  return { values: void 0, explicitEmpty: false };
885
918
  assertNoLegacyNoneTokens(raw, "--event", "Use --clear-events to clear linked events.");
886
- const referenceDate = new Date(nowValue);
887
- const values = raw.map((entry) => {
888
- const kv = parseCsvKv(entry, "--event");
889
- const startRaw = parseOptionalString(kv.start ?? kv.date)?.trim();
890
- if (!startRaw) {
891
- throw new PmCliError("--event requires start=<iso|relative> or date=<iso|relative>", EXIT_CODE.USAGE);
892
- }
893
- const startAt = resolveIsoOrRelative(startRaw, referenceDate, "event.start");
894
- const endRaw = parseOptionalString(kv.end)?.trim();
895
- const durationRaw = parseOptionalString(kv.duration)?.trim();
896
- const endAt = resolveEventEndAt(startAt, endRaw, durationRaw, referenceDate);
897
- const titleRaw = parseOptionalString(kv.title);
898
- const descriptionRaw = parseOptionalString(kv.description);
899
- const locationRaw = parseOptionalString(kv.location);
900
- const timezoneRaw = parseOptionalString(kv.timezone);
901
- const title = titleRaw?.trim();
902
- const description = descriptionRaw?.trim();
903
- const location = locationRaw?.trim();
904
- const timezone = timezoneRaw?.trim();
905
- if (titleRaw !== void 0 && !title) {
906
- throw new PmCliError("--event title must not be empty", EXIT_CODE.USAGE);
907
- }
908
- if (descriptionRaw !== void 0 && !description) {
909
- throw new PmCliError("--event description must not be empty", EXIT_CODE.USAGE);
910
- }
911
- if (locationRaw !== void 0 && !location) {
912
- throw new PmCliError("--event location must not be empty", EXIT_CODE.USAGE);
913
- }
914
- if (timezoneRaw !== void 0 && !timezone) {
915
- throw new PmCliError("--event timezone must not be empty", EXIT_CODE.USAGE);
916
- }
917
- const allDayRaw = parseOptionalString(kv.all_day)?.trim();
918
- const recurrence = parseRecurrenceRule(kv, startAt, referenceDate, "defined");
919
- return {
920
- start_at: startAt,
921
- end_at: endAt,
922
- title,
923
- description,
924
- location,
925
- all_day: allDayRaw !== void 0 ? parseEventBoolean(allDayRaw, "--event all_day") : void 0,
926
- timezone,
927
- recurrence
928
- };
929
- });
930
- return { values, explicitEmpty: false };
919
+ return {
920
+ values: parseEventEntries(raw, new Date(nowValue), {
921
+ allDayEmptyGuard: "defined",
922
+ recurrenceEmptyNumericGuard: "defined"
923
+ }),
924
+ explicitEmpty: false
925
+ };
931
926
  }
932
- function buildChangedFields(frontMatter, body, explicitUnsets) {
927
+ function buildChangedFields(frontMatter, body, explicitUnsets, additionalFrontMatterKeys = []) {
933
928
  const changed = [
934
929
  ...FRONT_MATTER_KEY_ORDER.filter((key) => frontMatter[key] !== void 0),
930
+ ...additionalFrontMatterKeys.filter((key) => frontMatter[key] !== void 0),
935
931
  ...body.length > 0 ? ["body"] : [],
936
932
  ...explicitUnsets.map((key) => `unset:${key}`)
937
933
  ];
@@ -957,40 +953,8 @@ function parseTypeOptions(raw) {
957
953
  return { values: void 0, explicitEmpty: false };
958
954
  }
959
955
  assertNoLegacyNoneTokens(raw, "--type-option", "Use --clear-type-options to clear existing type options.");
960
- const values = {};
961
- for (const entry of raw) {
962
- const trimmedEntry = entry.trim();
963
- if (trimmedEntry.length === 0) {
964
- throw new PmCliError("--type-option values must not be empty", EXIT_CODE.USAGE);
965
- }
966
- let key;
967
- let value;
968
- const prefersStructuredKv = trimmedEntry.includes(",") || trimmedEntry.includes("\n") || trimmedEntry.startsWith("```") || /^(?:[-*+]\s+)?(?:key|value)\s*[:=]/i.test(trimmedEntry);
969
- if (prefersStructuredKv) {
970
- const kv = parseCsvKv(trimmedEntry, "--type-option");
971
- key = parseOptionalString(kv.key)?.trim();
972
- value = parseOptionalString(kv.value)?.trim();
973
- } else {
974
- const equalsIndex = trimmedEntry.indexOf("=");
975
- const colonIndex = trimmedEntry.indexOf(":");
976
- let separatorIndex = equalsIndex;
977
- if (equalsIndex <= 0 && colonIndex > 0) {
978
- separatorIndex = colonIndex;
979
- }
980
- if (separatorIndex <= 0 || separatorIndex === trimmedEntry.length - 1) {
981
- throw new PmCliError("--type-option requires key=value or key=<name>,value=<value> entries", EXIT_CODE.USAGE);
982
- }
983
- key = trimmedEntry.slice(0, separatorIndex).trim();
984
- value = trimmedEntry.slice(separatorIndex + 1).trim();
985
- }
986
- if (!key || !value) {
987
- throw new PmCliError("--type-option requires key and value", EXIT_CODE.USAGE);
988
- }
989
- values[key] = value;
990
- }
991
- const sortedEntries = Object.entries(values).sort((left, right) => left[0].localeCompare(right[0]));
992
956
  return {
993
- values: Object.fromEntries(sortedEntries),
957
+ values: parseTypeOptionEntries(raw),
994
958
  explicitEmpty: false
995
959
  };
996
960
  }
@@ -1008,7 +972,8 @@ async function resolveCreateStdinInputs(options) {
1008
972
  doc: await stdinResolver.resolveList(options.doc, "--doc"),
1009
973
  reminder: await stdinResolver.resolveList(options.reminder, "--reminder"),
1010
974
  event: await stdinResolver.resolveList(options.event, "--event"),
1011
- typeOption: await stdinResolver.resolveList(options.typeOption, "--type-option")
975
+ typeOption: await stdinResolver.resolveList(options.typeOption, "--type-option"),
976
+ field: await stdinResolver.resolveList(options.field, "--field")
1012
977
  };
1013
978
  }
1014
979
  function resolveCreateMode(createMode, defaultMode) {
@@ -1104,7 +1069,8 @@ function requireCreateOptionByType(typeDefinition, options, createMode, clearOpt
1104
1069
  doc: options.doc,
1105
1070
  reminder: options.reminder,
1106
1071
  event: options.event,
1107
- typeOption: options.typeOption
1072
+ typeOption: options.typeOption,
1073
+ field: options.field
1108
1074
  };
1109
1075
  const hasOptionValue = (optionKey) => {
1110
1076
  if (optionKey === "tags") {
@@ -1565,8 +1531,17 @@ async function runCreate(options, global2) {
1565
1531
  const events = parseEvents(resolvedOptions.event, nowValue);
1566
1532
  const typeOptions = parseTypeOptions(resolvedOptions.typeOption);
1567
1533
  const validatedTypeOptions = validateTypeOptions(type, typeOptions.values, typeRegistry);
1534
+ const extensionRegistrations = getActiveExtensionRegistrations();
1535
+ const extensionFieldNames = collectRegisteredItemFieldNames(extensionRegistrations);
1536
+ const registeredItemFieldValues = parseRegisteredItemFieldAssignments(resolvedOptions.field, extensionRegistrations);
1537
+ for (const fieldKey of Object.keys(registeredItemFieldValues)) {
1538
+ if (!unsetTargets.frontMatterKeys.has(fieldKey)) {
1539
+ continue;
1540
+ }
1541
+ throw new PmCliError(`Cannot combine --unset ${fieldKey.replaceAll("_", "-")} with --field ${fieldKey}=...`, EXIT_CODE.USAGE);
1542
+ }
1568
1543
  const runtimeCreateFieldValues = collectRuntimeCreateFieldValues(resolvedOptions, runtimeFieldRegistry, type);
1569
- for (const fieldKey of Object.keys(runtimeCreateFieldValues.values)) {
1544
+ for (const fieldKey of Object.keys(runtimeCreateFieldValues.values ?? {})) {
1570
1545
  if (!unsetTargets.frontMatterKeys.has(fieldKey)) {
1571
1546
  continue;
1572
1547
  }
@@ -1774,17 +1749,18 @@ async function runCreate(options, global2) {
1774
1749
  docs: docs.values,
1775
1750
  reminders: reminders.values,
1776
1751
  events: events.values,
1777
- ...runtimeCreateFieldValues.values
1752
+ ...registeredItemFieldValues,
1753
+ ...runtimeCreateFieldValues.values ?? {}
1778
1754
  });
1779
1755
  try {
1780
- applyRegisteredItemFieldDefaultsAndValidation(frontMatter, getActiveExtensionRegistrations());
1756
+ applyRegisteredItemFieldDefaultsAndValidation(frontMatter, extensionRegistrations);
1781
1757
  } catch (error) {
1782
1758
  throw new PmCliError(error instanceof Error ? error.message : "Invalid extension item field values", EXIT_CODE.USAGE);
1783
1759
  }
1784
1760
  const afterDocument = canonicalDocument({
1785
1761
  metadata: frontMatter,
1786
1762
  body
1787
- }, { schema: settings.schema });
1763
+ }, { schema: settings.schema, extensionFieldNames });
1788
1764
  const beforeDocument = {
1789
1765
  metadata: {},
1790
1766
  body: ""
@@ -1794,9 +1770,17 @@ async function runCreate(options, global2) {
1794
1770
  const lockRelease = await acquireLock(pmRoot, id, settings.locks.ttl_seconds, author, false, settings.governance.force_required_for_stale_lock);
1795
1771
  const explicitUnsetKeys = [...explicitUnsets].sort((left, right) => left.localeCompare(right));
1796
1772
  const historyMessage = buildHistoryMessage(resolvedOptions.message, explicitUnsetKeys);
1773
+ const changedFields = buildChangedFields(frontMatter, body, explicitUnsetKeys, [
1774
+ ...Object.keys(registeredItemFieldValues),
1775
+ ...Object.keys(runtimeCreateFieldValues.values ?? {})
1776
+ ]);
1797
1777
  let hookWarnings = [];
1798
1778
  try {
1799
- await writeFileAtomic(itemPath, serializeItemDocument(afterDocument, { format: settings.item_format, schema: settings.schema }));
1779
+ await writeFileAtomic(itemPath, serializeItemDocument(afterDocument, {
1780
+ format: settings.item_format,
1781
+ schema: settings.schema,
1782
+ extensionFieldNames
1783
+ }));
1800
1784
  try {
1801
1785
  const entry = createHistoryEntry({
1802
1786
  nowIso: nowValue,
@@ -1815,18 +1799,35 @@ async function runCreate(options, global2) {
1815
1799
  ...await runActiveOnWriteHooks({
1816
1800
  path: itemPath,
1817
1801
  scope: "project",
1818
- op: "create"
1802
+ op: "create",
1803
+ item_id: afterDocument.metadata.id,
1804
+ item_type: afterDocument.metadata.type,
1805
+ before: beforeDocument,
1806
+ after: afterDocument,
1807
+ changed_fields: changedFields
1819
1808
  }),
1820
1809
  ...await runActiveOnWriteHooks({
1821
1810
  path: historyPath,
1822
1811
  scope: "project",
1823
- op: "create:history"
1812
+ op: "create:history",
1813
+ item_id: afterDocument.metadata.id,
1814
+ item_type: afterDocument.metadata.type,
1815
+ before: beforeDocument,
1816
+ after: afterDocument,
1817
+ changed_fields: changedFields
1824
1818
  })
1825
1819
  ];
1820
+ recordAfterCommandAffectedItem({
1821
+ id: afterDocument.metadata.id,
1822
+ op: "create",
1823
+ item_type: afterDocument.metadata.type,
1824
+ status: afterDocument.metadata.status,
1825
+ current: projectAfterCommandItemSnapshot(afterDocument.metadata, changedFields),
1826
+ changed_fields: changedFields
1827
+ });
1826
1828
  } finally {
1827
1829
  await lockRelease();
1828
1830
  }
1829
- const changedFields = buildChangedFields(frontMatter, body, explicitUnsetKeys);
1830
1831
  const outputItem = structuredClone(frontMatter);
1831
1832
  if (calendarRelevantTypes.has(type.toLowerCase()) && !hasDeadline && !hasReminders && !hasEvents) {
1832
1833
  printError(`[pm] warning: ${type} '${id}' has no deadline/reminder/event \u2014 it will not appear on the calendar. Add one via 'pm update ${id} --deadline <ISO>' or 'pm update ${id} --event "start=<ISO>,end=<ISO>"'.`);
@@ -1840,22 +1841,21 @@ async function runCreate(options, global2) {
1840
1841
 
1841
1842
  export {
1842
1843
  resolvePriority,
1843
- applyRegisteredItemFieldDefaultsAndValidation,
1844
1844
  normalizeRiskInput,
1845
1845
  normalizeSeverityInput,
1846
1846
  parseConfidenceInput,
1847
1847
  parseRegressionInput,
1848
- resolveEventEndAt,
1849
1848
  isLegacyNoneToken,
1850
1849
  assertNoLegacyNoneToken,
1851
1850
  assertNoLegacyNoneTokens,
1852
- parseEventBoolean,
1853
1851
  ensureEnumValue,
1854
- parseRecurrenceRule,
1852
+ parseReminderEntries,
1853
+ parseEventEntries,
1854
+ parseTypeOptionEntries,
1855
1855
  parseLogSeed,
1856
1856
  parseFiles,
1857
1857
  parseTests,
1858
1858
  parseDocs,
1859
1859
  runCreate
1860
1860
  };
1861
- //# sourceMappingURL=chunk-JTWRXG4B.js.map
1861
+ //# sourceMappingURL=chunk-IJGCZSIQ.js.map