@unbrained/pm-cli 2026.5.30 → 2026.6.5

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 (578) hide show
  1. package/CHANGELOG.md +152 -0
  2. package/dist/cli/argv-utils.js +7 -3
  3. package/dist/cli/argv-utils.js.map +1 -1
  4. package/dist/cli/bootstrap-args.d.ts +1 -0
  5. package/dist/cli/bootstrap-args.js +23 -3
  6. package/dist/cli/bootstrap-args.js.map +1 -1
  7. package/dist/cli/commands/calendar.js +96 -10
  8. package/dist/cli/commands/calendar.js.map +1 -1
  9. package/dist/cli/commands/close-many.d.ts +63 -0
  10. package/dist/cli/commands/close-many.js +302 -0
  11. package/dist/cli/commands/close-many.js.map +1 -0
  12. package/dist/cli/commands/completion.d.ts +1 -0
  13. package/dist/cli/commands/completion.js +241 -27
  14. package/dist/cli/commands/completion.js.map +1 -1
  15. package/dist/cli/commands/config.d.ts +4 -4
  16. package/dist/cli/commands/config.js +115 -3
  17. package/dist/cli/commands/config.js.map +1 -1
  18. package/dist/cli/commands/contracts.js +191 -162
  19. package/dist/cli/commands/contracts.js.map +1 -1
  20. package/dist/cli/commands/create.d.ts +1 -0
  21. package/dist/cli/commands/create.js +109 -116
  22. package/dist/cli/commands/create.js.map +1 -1
  23. package/dist/cli/commands/extension/doctor.d.ts +12 -0
  24. package/dist/cli/commands/extension/doctor.js +97 -2
  25. package/dist/cli/commands/extension/doctor.js.map +1 -1
  26. package/dist/cli/commands/extension/install-sources.d.ts +2 -0
  27. package/dist/cli/commands/extension/install-sources.js +11 -4
  28. package/dist/cli/commands/extension/install-sources.js.map +1 -1
  29. package/dist/cli/commands/extension/scaffold.js +49 -48
  30. package/dist/cli/commands/extension/scaffold.js.map +1 -1
  31. package/dist/cli/commands/extension.js +51 -23
  32. package/dist/cli/commands/extension.js.map +1 -1
  33. package/dist/cli/commands/get.js +7 -7
  34. package/dist/cli/commands/get.js.map +1 -1
  35. package/dist/cli/commands/health.js +38 -3
  36. package/dist/cli/commands/health.js.map +1 -1
  37. package/dist/cli/commands/index.d.ts +2 -1
  38. package/dist/cli/commands/index.js +4 -3
  39. package/dist/cli/commands/index.js.map +1 -1
  40. package/dist/cli/commands/init.d.ts +10 -0
  41. package/dist/cli/commands/init.js +107 -4
  42. package/dist/cli/commands/init.js.map +1 -1
  43. package/dist/cli/commands/list.d.ts +5 -0
  44. package/dist/cli/commands/list.js +58 -26
  45. package/dist/cli/commands/list.js.map +1 -1
  46. package/dist/cli/commands/reindex.js +164 -48
  47. package/dist/cli/commands/reindex.js.map +1 -1
  48. package/dist/cli/commands/repeatable-metadata-parsers.d.ts +15 -0
  49. package/dist/cli/commands/repeatable-metadata-parsers.js +120 -0
  50. package/dist/cli/commands/repeatable-metadata-parsers.js.map +1 -0
  51. package/dist/cli/commands/restore.js +25 -4
  52. package/dist/cli/commands/restore.js.map +1 -1
  53. package/dist/cli/commands/schema.d.ts +122 -1
  54. package/dist/cli/commands/schema.js +536 -6
  55. package/dist/cli/commands/schema.js.map +1 -1
  56. package/dist/cli/commands/search.d.ts +18 -0
  57. package/dist/cli/commands/search.js +56 -12
  58. package/dist/cli/commands/search.js.map +1 -1
  59. package/dist/cli/commands/test.js +4 -3
  60. package/dist/cli/commands/test.js.map +1 -1
  61. package/dist/cli/commands/update-many.js +69 -140
  62. package/dist/cli/commands/update-many.js.map +1 -1
  63. package/dist/cli/commands/update.d.ts +2 -0
  64. package/dist/cli/commands/update.js +138 -119
  65. package/dist/cli/commands/update.js.map +1 -1
  66. package/dist/cli/commands/validate.d.ts +1 -0
  67. package/dist/cli/commands/validate.js +63 -33
  68. package/dist/cli/commands/validate.js.map +1 -1
  69. package/dist/cli/error-guidance.js +26 -3
  70. package/dist/cli/error-guidance.js.map +1 -1
  71. package/dist/cli/help-content.js +82 -3
  72. package/dist/cli/help-content.js.map +1 -1
  73. package/dist/cli/main.js +377 -23
  74. package/dist/cli/main.js.map +1 -1
  75. package/dist/cli/register-list-query.js +16 -12
  76. package/dist/cli/register-list-query.js.map +1 -1
  77. package/dist/cli/register-mutation.js +217 -47
  78. package/dist/cli/register-mutation.js.map +1 -1
  79. package/dist/cli/register-operations.js +34 -25
  80. package/dist/cli/register-operations.js.map +1 -1
  81. package/dist/cli/register-setup.js +8 -8
  82. package/dist/cli/register-setup.js.map +1 -1
  83. package/dist/cli/registration-helpers.js +35 -5
  84. package/dist/cli/registration-helpers.js.map +1 -1
  85. package/dist/cli/search-refresh.d.ts +2 -0
  86. package/dist/cli/search-refresh.js +13 -0
  87. package/dist/cli/search-refresh.js.map +1 -0
  88. package/dist/cli-bundle/chunks/activity-3RWRRNOW.js +20 -0
  89. package/dist/cli-bundle/chunks/activity-3RWRRNOW.js.map +1 -0
  90. package/dist/cli-bundle/chunks/activity-P5BUMWP3.js +16 -0
  91. package/dist/cli-bundle/chunks/activity-P5BUMWP3.js.map +7 -0
  92. package/dist/cli-bundle/chunks/aggregate-J35K7WZB.js +206 -0
  93. package/dist/cli-bundle/chunks/aggregate-J35K7WZB.js.map +1 -0
  94. package/dist/cli-bundle/chunks/aggregate-OOAGKWRG.js +209 -0
  95. package/dist/cli-bundle/chunks/aggregate-OOAGKWRG.js.map +7 -0
  96. package/dist/cli-bundle/chunks/append-5JE3YGXU.js +72 -0
  97. package/dist/cli-bundle/chunks/append-5JE3YGXU.js.map +7 -0
  98. package/dist/cli-bundle/chunks/append-PNN6UIBZ.js +69 -0
  99. package/dist/cli-bundle/chunks/append-PNN6UIBZ.js.map +1 -0
  100. package/dist/cli-bundle/chunks/chunk-26KTVXJW.js +218 -0
  101. package/dist/cli-bundle/chunks/chunk-26KTVXJW.js.map +1 -0
  102. package/dist/cli-bundle/chunks/chunk-3HUE7XOF.js +27 -0
  103. package/dist/cli-bundle/chunks/chunk-3HUE7XOF.js.map +7 -0
  104. package/dist/cli-bundle/chunks/chunk-3OH4DAEB.js +761 -0
  105. package/dist/cli-bundle/chunks/chunk-3OH4DAEB.js.map +7 -0
  106. package/dist/cli-bundle/chunks/chunk-4LTBNUYT.js +5553 -0
  107. package/dist/cli-bundle/chunks/chunk-4LTBNUYT.js.map +1 -0
  108. package/dist/cli-bundle/chunks/chunk-4PJQSECJ.js +634 -0
  109. package/dist/cli-bundle/chunks/chunk-4PJQSECJ.js.map +7 -0
  110. package/dist/cli-bundle/chunks/chunk-4QCR4QW3.js +1832 -0
  111. package/dist/cli-bundle/chunks/chunk-4QCR4QW3.js.map +1 -0
  112. package/dist/cli-bundle/chunks/chunk-5IRA6IYD.js +1891 -0
  113. package/dist/cli-bundle/chunks/chunk-5IRA6IYD.js.map +7 -0
  114. package/dist/cli-bundle/chunks/chunk-5KB4X7YY.js +412 -0
  115. package/dist/cli-bundle/chunks/chunk-5KB4X7YY.js.map +1 -0
  116. package/dist/cli-bundle/chunks/chunk-5PAOPUZX.js +182 -0
  117. package/dist/cli-bundle/chunks/chunk-5PAOPUZX.js.map +1 -0
  118. package/dist/cli-bundle/chunks/chunk-7K24QB23.js +698 -0
  119. package/dist/cli-bundle/chunks/chunk-7K24QB23.js.map +1 -0
  120. package/dist/cli-bundle/chunks/chunk-A6PEXMYN.js +380 -0
  121. package/dist/cli-bundle/chunks/chunk-A6PEXMYN.js.map +1 -0
  122. package/dist/cli-bundle/chunks/chunk-ASQM3IF5.js +230 -0
  123. package/dist/cli-bundle/chunks/chunk-ASQM3IF5.js.map +1 -0
  124. package/dist/cli-bundle/chunks/chunk-ATBVS6WW.js +185 -0
  125. package/dist/cli-bundle/chunks/chunk-ATBVS6WW.js.map +7 -0
  126. package/dist/cli-bundle/chunks/chunk-AXXKLVTW.js +332 -0
  127. package/dist/cli-bundle/chunks/chunk-AXXKLVTW.js.map +1 -0
  128. package/dist/cli-bundle/chunks/chunk-B3N4TKNL.js +1681 -0
  129. package/dist/cli-bundle/chunks/chunk-B3N4TKNL.js.map +7 -0
  130. package/dist/cli-bundle/chunks/{chunk-PB2YU2E3.js → chunk-BNL6S7QH.js} +28 -70
  131. package/dist/cli-bundle/chunks/chunk-BNL6S7QH.js.map +7 -0
  132. package/dist/cli-bundle/chunks/chunk-CCUFLH4J.js +154 -0
  133. package/dist/cli-bundle/chunks/chunk-CCUFLH4J.js.map +1 -0
  134. package/dist/cli-bundle/chunks/chunk-CJDQB2ED.js +341 -0
  135. package/dist/cli-bundle/chunks/chunk-CJDQB2ED.js.map +7 -0
  136. package/dist/cli-bundle/chunks/chunk-CWT53EYT.js +1340 -0
  137. package/dist/cli-bundle/chunks/chunk-CWT53EYT.js.map +1 -0
  138. package/dist/cli-bundle/chunks/chunk-D3WUNETC.js +349 -0
  139. package/dist/cli-bundle/chunks/chunk-D3WUNETC.js.map +7 -0
  140. package/dist/cli-bundle/chunks/chunk-D5X7N6FI.js +1714 -0
  141. package/dist/cli-bundle/chunks/chunk-D5X7N6FI.js.map +7 -0
  142. package/dist/cli-bundle/chunks/chunk-DFIZGAI5.js +550 -0
  143. package/dist/cli-bundle/chunks/chunk-DFIZGAI5.js.map +7 -0
  144. package/dist/cli-bundle/chunks/chunk-DFUSXJDE.js +1704 -0
  145. package/dist/cli-bundle/chunks/chunk-DFUSXJDE.js.map +1 -0
  146. package/dist/cli-bundle/chunks/chunk-EAOG77HM.js +56 -0
  147. package/dist/cli-bundle/chunks/chunk-EAOG77HM.js.map +7 -0
  148. package/dist/cli-bundle/chunks/chunk-EHXPIKKP.js +2988 -0
  149. package/dist/cli-bundle/chunks/chunk-EHXPIKKP.js.map +1 -0
  150. package/dist/cli-bundle/chunks/chunk-FVXM3GKS.js +128 -0
  151. package/dist/cli-bundle/chunks/chunk-FVXM3GKS.js.map +1 -0
  152. package/dist/cli-bundle/chunks/chunk-G5BACLYH.js +454 -0
  153. package/dist/cli-bundle/chunks/chunk-G5BACLYH.js.map +1 -0
  154. package/dist/cli-bundle/chunks/chunk-GCAVRLGE.js +383 -0
  155. package/dist/cli-bundle/chunks/chunk-GCAVRLGE.js.map +7 -0
  156. package/dist/cli-bundle/chunks/chunk-GFWHHMVV.js +57 -0
  157. package/dist/cli-bundle/chunks/chunk-GFWHHMVV.js.map +1 -0
  158. package/dist/cli-bundle/chunks/chunk-GNHVV4SY.js +3860 -0
  159. package/dist/cli-bundle/chunks/chunk-GNHVV4SY.js.map +1 -0
  160. package/dist/cli-bundle/chunks/chunk-GPGAYASV.js +346 -0
  161. package/dist/cli-bundle/chunks/chunk-GPGAYASV.js.map +1 -0
  162. package/dist/cli-bundle/chunks/chunk-HPH6X4ZZ.js +1356 -0
  163. package/dist/cli-bundle/chunks/chunk-HPH6X4ZZ.js.map +7 -0
  164. package/dist/cli-bundle/chunks/chunk-HZOS2UG5.js +342 -0
  165. package/dist/cli-bundle/chunks/chunk-HZOS2UG5.js.map +7 -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-JB4RGL4V.js +185 -0
  171. package/dist/cli-bundle/chunks/chunk-JB4RGL4V.js.map +7 -0
  172. package/dist/cli-bundle/chunks/chunk-JQI2HE55.js +130 -0
  173. package/dist/cli-bundle/chunks/chunk-JQI2HE55.js.map +1 -0
  174. package/dist/cli-bundle/chunks/chunk-K47WAYQV.js +60 -0
  175. package/dist/cli-bundle/chunks/chunk-K47WAYQV.js.map +7 -0
  176. package/dist/cli-bundle/chunks/chunk-KA24HME7.js +79 -0
  177. package/dist/cli-bundle/chunks/chunk-KA24HME7.js.map +7 -0
  178. package/dist/cli-bundle/chunks/chunk-KBG47ZOY.js +1325 -0
  179. package/dist/cli-bundle/chunks/chunk-KBG47ZOY.js.map +1 -0
  180. package/dist/cli-bundle/chunks/chunk-KCMIYKTA.js +242 -0
  181. package/dist/cli-bundle/chunks/chunk-KCMIYKTA.js.map +1 -0
  182. package/dist/cli-bundle/chunks/chunk-KK6YPGH3.js +221 -0
  183. package/dist/cli-bundle/chunks/chunk-KK6YPGH3.js.map +7 -0
  184. package/dist/cli-bundle/chunks/chunk-LDJK7SHN.js +157 -0
  185. package/dist/cli-bundle/chunks/chunk-LDJK7SHN.js.map +7 -0
  186. package/dist/cli-bundle/chunks/chunk-LXYVKYMQ.js +24 -0
  187. package/dist/cli-bundle/chunks/chunk-LXYVKYMQ.js.map +1 -0
  188. package/dist/cli-bundle/chunks/chunk-MISYRLEP.js +80 -0
  189. package/dist/cli-bundle/chunks/chunk-MISYRLEP.js.map +1 -0
  190. package/dist/cli-bundle/chunks/chunk-N5YF3VFN.js +457 -0
  191. package/dist/cli-bundle/chunks/chunk-N5YF3VFN.js.map +7 -0
  192. package/dist/cli-bundle/chunks/chunk-NQP3ECKF.js +173 -0
  193. package/dist/cli-bundle/chunks/chunk-NQP3ECKF.js.map +1 -0
  194. package/dist/cli-bundle/chunks/chunk-O5IBJE6S.js +338 -0
  195. package/dist/cli-bundle/chunks/chunk-O5IBJE6S.js.map +1 -0
  196. package/dist/cli-bundle/chunks/chunk-O7IWB35H.js +18 -0
  197. package/dist/cli-bundle/chunks/chunk-O7IWB35H.js.map +7 -0
  198. package/dist/cli-bundle/chunks/chunk-OIQIXTNB.js +3040 -0
  199. package/dist/cli-bundle/chunks/chunk-OIQIXTNB.js.map +7 -0
  200. package/dist/cli-bundle/chunks/chunk-ORTLYVA4.js +751 -0
  201. package/dist/cli-bundle/chunks/chunk-ORTLYVA4.js.map +1 -0
  202. package/dist/cli-bundle/chunks/chunk-OUF3ARDX.js +1861 -0
  203. package/dist/cli-bundle/chunks/chunk-OUF3ARDX.js.map +7 -0
  204. package/dist/cli-bundle/chunks/chunk-QAJBIGRA.js +20 -0
  205. package/dist/cli-bundle/chunks/chunk-QAJBIGRA.js.map +7 -0
  206. package/dist/cli-bundle/chunks/chunk-RANZIID5.js +176 -0
  207. package/dist/cli-bundle/chunks/chunk-RANZIID5.js.map +7 -0
  208. package/dist/cli-bundle/chunks/chunk-RQAWLSUU.js +140 -0
  209. package/dist/cli-bundle/chunks/chunk-RQAWLSUU.js.map +7 -0
  210. package/dist/cli-bundle/chunks/chunk-S3CV7JGJ.js +233 -0
  211. package/dist/cli-bundle/chunks/chunk-S3CV7JGJ.js.map +7 -0
  212. package/dist/cli-bundle/chunks/chunk-SRVKTWPR.js +5705 -0
  213. package/dist/cli-bundle/chunks/chunk-SRVKTWPR.js.map +7 -0
  214. package/dist/cli-bundle/chunks/chunk-SSFMJCPF.js +76 -0
  215. package/dist/cli-bundle/chunks/chunk-SSFMJCPF.js.map +1 -0
  216. package/dist/cli-bundle/chunks/chunk-SZQCER6S.js +631 -0
  217. package/dist/cli-bundle/chunks/chunk-SZQCER6S.js.map +1 -0
  218. package/dist/cli-bundle/chunks/chunk-T2ORWB6D.js +540 -0
  219. package/dist/cli-bundle/chunks/chunk-T2ORWB6D.js.map +1 -0
  220. package/dist/cli-bundle/chunks/chunk-TBQVUNVH.js +422 -0
  221. package/dist/cli-bundle/chunks/chunk-TBQVUNVH.js.map +7 -0
  222. package/dist/cli-bundle/chunks/{chunk-RJONRNXN.js → chunk-TK633IVD.js} +51 -32
  223. package/dist/cli-bundle/chunks/chunk-TK633IVD.js.map +7 -0
  224. package/dist/cli-bundle/chunks/chunk-TQ3ZK6VD.js +131 -0
  225. package/dist/cli-bundle/chunks/chunk-TQ3ZK6VD.js.map +7 -0
  226. package/dist/cli-bundle/chunks/chunk-UFCG3SWR.js +119 -0
  227. package/dist/cli-bundle/chunks/chunk-UFCG3SWR.js.map +1 -0
  228. package/dist/cli-bundle/chunks/chunk-UOVLWB47.js +1664 -0
  229. package/dist/cli-bundle/chunks/chunk-UOVLWB47.js.map +1 -0
  230. package/dist/cli-bundle/chunks/chunk-V3JQ4IPL.js +186 -0
  231. package/dist/cli-bundle/chunks/chunk-V3JQ4IPL.js.map +1 -0
  232. package/dist/cli-bundle/chunks/chunk-VGO2T3TY.js +182 -0
  233. package/dist/cli-bundle/chunks/chunk-VGO2T3TY.js.map +1 -0
  234. package/dist/cli-bundle/chunks/chunk-WIKR7KFL.js +189 -0
  235. package/dist/cli-bundle/chunks/chunk-WIKR7KFL.js.map +7 -0
  236. package/dist/cli-bundle/chunks/chunk-XG7RJYHV.js +1385 -0
  237. package/dist/cli-bundle/chunks/chunk-XG7RJYHV.js.map +7 -0
  238. package/dist/cli-bundle/chunks/chunk-XSLQSXAH.js +53 -0
  239. package/dist/cli-bundle/chunks/chunk-XSLQSXAH.js.map +1 -0
  240. package/dist/cli-bundle/chunks/chunk-XX5LRINW.js +90 -0
  241. package/dist/cli-bundle/chunks/chunk-XX5LRINW.js.map +7 -0
  242. package/dist/cli-bundle/chunks/chunk-Y2AKE2HS.js +252 -0
  243. package/dist/cli-bundle/chunks/chunk-Y2AKE2HS.js.map +7 -0
  244. package/dist/cli-bundle/chunks/chunk-ZQ4F6EC4.js +3898 -0
  245. package/dist/cli-bundle/chunks/chunk-ZQ4F6EC4.js.map +7 -0
  246. package/dist/cli-bundle/chunks/chunk-ZRVSMOMR.js +1809 -0
  247. package/dist/cli-bundle/chunks/chunk-ZRVSMOMR.js.map +1 -0
  248. package/dist/cli-bundle/chunks/claim-AZLP7YFO.js +132 -0
  249. package/dist/cli-bundle/chunks/claim-AZLP7YFO.js.map +7 -0
  250. package/dist/cli-bundle/chunks/claim-ZFA7HKU4.js +129 -0
  251. package/dist/cli-bundle/chunks/claim-ZFA7HKU4.js.map +1 -0
  252. package/dist/cli-bundle/chunks/close-65DFYAVS.js +17 -0
  253. package/dist/cli-bundle/chunks/close-65DFYAVS.js.map +1 -0
  254. package/dist/cli-bundle/chunks/close-RMHQ3KWH.js +13 -0
  255. package/dist/cli-bundle/chunks/close-RMHQ3KWH.js.map +7 -0
  256. package/dist/cli-bundle/chunks/close-many-AKPZNSGI.js +311 -0
  257. package/dist/cli-bundle/chunks/close-many-AKPZNSGI.js.map +1 -0
  258. package/dist/cli-bundle/chunks/close-many-UKZSQGM7.js +314 -0
  259. package/dist/cli-bundle/chunks/close-many-UKZSQGM7.js.map +7 -0
  260. package/dist/cli-bundle/chunks/comments-AGBNSJJH.js +103 -0
  261. package/dist/cli-bundle/chunks/comments-AGBNSJJH.js.map +7 -0
  262. package/dist/cli-bundle/chunks/comments-CJWXQI7X.js +100 -0
  263. package/dist/cli-bundle/chunks/comments-CJWXQI7X.js.map +1 -0
  264. package/dist/cli-bundle/chunks/config-5ON3ADRH.js +1688 -0
  265. package/dist/cli-bundle/chunks/config-5ON3ADRH.js.map +7 -0
  266. package/dist/cli-bundle/chunks/config-DDPYIA6J.js +1671 -0
  267. package/dist/cli-bundle/chunks/config-DDPYIA6J.js.map +1 -0
  268. package/dist/cli-bundle/chunks/context-E6U3DWVM.js +1471 -0
  269. package/dist/cli-bundle/chunks/context-E6U3DWVM.js.map +7 -0
  270. package/dist/cli-bundle/chunks/context-ZOJEN5VT.js +1461 -0
  271. package/dist/cli-bundle/chunks/context-ZOJEN5VT.js.map +1 -0
  272. package/dist/cli-bundle/chunks/contracts-CXSFM45B.js +1277 -0
  273. package/dist/cli-bundle/chunks/contracts-CXSFM45B.js.map +7 -0
  274. package/dist/cli-bundle/chunks/contracts-LCSX5R53.js +1274 -0
  275. package/dist/cli-bundle/chunks/contracts-LCSX5R53.js.map +1 -0
  276. package/dist/cli-bundle/chunks/create-ATONSAZW.js +27 -0
  277. package/dist/cli-bundle/chunks/create-ATONSAZW.js.map +7 -0
  278. package/dist/cli-bundle/chunks/create-WYFKN2U4.js +31 -0
  279. package/dist/cli-bundle/chunks/create-WYFKN2U4.js.map +1 -0
  280. package/dist/cli-bundle/chunks/delete-RONNH4F4.js +58 -0
  281. package/dist/cli-bundle/chunks/delete-RONNH4F4.js.map +7 -0
  282. package/dist/cli-bundle/chunks/delete-ZXWC56WO.js +55 -0
  283. package/dist/cli-bundle/chunks/delete-ZXWC56WO.js.map +1 -0
  284. package/dist/cli-bundle/chunks/deps-EHXIFOZR.js +225 -0
  285. package/dist/cli-bundle/chunks/deps-EHXIFOZR.js.map +1 -0
  286. package/dist/cli-bundle/chunks/deps-WII3O4HB.js +228 -0
  287. package/dist/cli-bundle/chunks/deps-WII3O4HB.js.map +7 -0
  288. package/dist/cli-bundle/chunks/docs-JMVCFNHH.js +34 -0
  289. package/dist/cli-bundle/chunks/docs-JMVCFNHH.js.map +7 -0
  290. package/dist/cli-bundle/chunks/docs-PDREIMLS.js +31 -0
  291. package/dist/cli-bundle/chunks/docs-PDREIMLS.js.map +1 -0
  292. package/dist/cli-bundle/chunks/extension-B4ROVWJD.js +28 -0
  293. package/dist/cli-bundle/chunks/extension-B4ROVWJD.js.map +1 -0
  294. package/dist/cli-bundle/chunks/extension-G6UXSM5S.js +24 -0
  295. package/dist/cli-bundle/chunks/extension-G6UXSM5S.js.map +7 -0
  296. package/dist/cli-bundle/chunks/files-2PN7UM2D.js +282 -0
  297. package/dist/cli-bundle/chunks/files-2PN7UM2D.js.map +1 -0
  298. package/dist/cli-bundle/chunks/files-MXYS5W4M.js +285 -0
  299. package/dist/cli-bundle/chunks/files-MXYS5W4M.js.map +7 -0
  300. package/dist/cli-bundle/chunks/gc-GT552UJH.js +178 -0
  301. package/dist/cli-bundle/chunks/gc-GT552UJH.js.map +1 -0
  302. package/dist/cli-bundle/chunks/gc-QNBRJG6H.js +181 -0
  303. package/dist/cli-bundle/chunks/gc-QNBRJG6H.js.map +7 -0
  304. package/dist/cli-bundle/chunks/get-CINFEUIY.js +197 -0
  305. package/dist/cli-bundle/chunks/get-CINFEUIY.js.map +7 -0
  306. package/dist/cli-bundle/chunks/get-WXMLRG7M.js +194 -0
  307. package/dist/cli-bundle/chunks/get-WXMLRG7M.js.map +1 -0
  308. package/dist/cli-bundle/chunks/health-5VPOJQ53.js +1258 -0
  309. package/dist/cli-bundle/chunks/health-5VPOJQ53.js.map +1 -0
  310. package/dist/cli-bundle/chunks/health-IT5DBPRJ.js +1261 -0
  311. package/dist/cli-bundle/chunks/health-IT5DBPRJ.js.map +7 -0
  312. package/dist/cli-bundle/chunks/history-6FC4H6HI.js +20 -0
  313. package/dist/cli-bundle/chunks/history-6FC4H6HI.js.map +7 -0
  314. package/dist/cli-bundle/chunks/history-FLZIP7PM.js +24 -0
  315. package/dist/cli-bundle/chunks/history-FLZIP7PM.js.map +1 -0
  316. package/dist/cli-bundle/chunks/history-redact-SSZBAD76.js +23 -0
  317. package/dist/cli-bundle/chunks/history-redact-SSZBAD76.js.map +1 -0
  318. package/dist/cli-bundle/chunks/history-redact-XKYEZDBL.js +19 -0
  319. package/dist/cli-bundle/chunks/history-redact-XKYEZDBL.js.map +7 -0
  320. package/dist/cli-bundle/chunks/history-repair-KC5ZOJRZ.js +196 -0
  321. package/dist/cli-bundle/chunks/history-repair-KC5ZOJRZ.js.map +7 -0
  322. package/dist/cli-bundle/chunks/history-repair-X7CO5JJZ.js +193 -0
  323. package/dist/cli-bundle/chunks/history-repair-X7CO5JJZ.js.map +1 -0
  324. package/dist/cli-bundle/chunks/init-6MRFVOLH.js +20 -0
  325. package/dist/cli-bundle/chunks/init-6MRFVOLH.js.map +1 -0
  326. package/dist/cli-bundle/chunks/init-KHX3FEEM.js +16 -0
  327. package/dist/cli-bundle/chunks/init-KHX3FEEM.js.map +7 -0
  328. package/dist/cli-bundle/chunks/learnings-A3CLB5CO.js +47 -0
  329. package/dist/cli-bundle/chunks/learnings-A3CLB5CO.js.map +7 -0
  330. package/dist/cli-bundle/chunks/learnings-DCX55BNX.js +44 -0
  331. package/dist/cli-bundle/chunks/learnings-DCX55BNX.js.map +1 -0
  332. package/dist/cli-bundle/chunks/list-53LZ2AEO.js +20 -0
  333. package/dist/cli-bundle/chunks/list-53LZ2AEO.js.map +7 -0
  334. package/dist/cli-bundle/chunks/list-DBRECOG4.js +24 -0
  335. package/dist/cli-bundle/chunks/list-DBRECOG4.js.map +1 -0
  336. package/dist/cli-bundle/chunks/notes-42LIC3UE.js +47 -0
  337. package/dist/cli-bundle/chunks/notes-42LIC3UE.js.map +7 -0
  338. package/dist/cli-bundle/chunks/notes-P5O3VMQ3.js +44 -0
  339. package/dist/cli-bundle/chunks/notes-P5O3VMQ3.js.map +1 -0
  340. package/dist/cli-bundle/chunks/plan-HDQXEUKD.js +1174 -0
  341. package/dist/cli-bundle/chunks/plan-HDQXEUKD.js.map +7 -0
  342. package/dist/cli-bundle/chunks/plan-IGTE3WOJ.js +1171 -0
  343. package/dist/cli-bundle/chunks/plan-IGTE3WOJ.js.map +1 -0
  344. package/dist/cli-bundle/chunks/{register-list-query-EIVQ5FMR.js → register-list-query-AG3XKXWL.js} +25 -18
  345. package/dist/cli-bundle/chunks/register-list-query-AG3XKXWL.js.map +7 -0
  346. package/dist/cli-bundle/chunks/register-list-query-EMNSIUO4.js +227 -0
  347. package/dist/cli-bundle/chunks/register-list-query-EMNSIUO4.js.map +1 -0
  348. package/dist/cli-bundle/chunks/register-mutation-M3YS6XDO.js +813 -0
  349. package/dist/cli-bundle/chunks/register-mutation-M3YS6XDO.js.map +1 -0
  350. package/dist/cli-bundle/chunks/{register-mutation-RSZNPSGI.js → register-mutation-RSMT6DPK.js} +160 -39
  351. package/dist/cli-bundle/chunks/register-mutation-RSMT6DPK.js.map +7 -0
  352. package/dist/cli-bundle/chunks/register-operations-KYUOOOOD.js +370 -0
  353. package/dist/cli-bundle/chunks/register-operations-KYUOOOOD.js.map +1 -0
  354. package/dist/cli-bundle/chunks/{register-operations-APUSYDMR.js → register-operations-Q54JQZUN.js} +50 -32
  355. package/dist/cli-bundle/chunks/register-operations-Q54JQZUN.js.map +7 -0
  356. package/dist/cli-bundle/chunks/register-setup-DI6P7X75.js +242 -0
  357. package/dist/cli-bundle/chunks/register-setup-DI6P7X75.js.map +1 -0
  358. package/dist/cli-bundle/chunks/{register-setup-OZOKSMPJ.js → register-setup-YJKIQRKA.js} +21 -13
  359. package/dist/cli-bundle/chunks/register-setup-YJKIQRKA.js.map +7 -0
  360. package/dist/cli-bundle/chunks/restore-2XVTBLKQ.js +21 -0
  361. package/dist/cli-bundle/chunks/restore-2XVTBLKQ.js.map +1 -0
  362. package/dist/cli-bundle/chunks/restore-JL5QIH7H.js +17 -0
  363. package/dist/cli-bundle/chunks/restore-JL5QIH7H.js.map +7 -0
  364. package/dist/cli-bundle/chunks/schema-LVXZWFGY.js +770 -0
  365. package/dist/cli-bundle/chunks/schema-LVXZWFGY.js.map +1 -0
  366. package/dist/cli-bundle/chunks/schema-V6BX65Q2.js +780 -0
  367. package/dist/cli-bundle/chunks/schema-V6BX65Q2.js.map +7 -0
  368. package/dist/cli-bundle/chunks/search-5A3BMFA7.js +1144 -0
  369. package/dist/cli-bundle/chunks/search-5A3BMFA7.js.map +7 -0
  370. package/dist/cli-bundle/chunks/search-C7NPB7G7.js +1127 -0
  371. package/dist/cli-bundle/chunks/search-C7NPB7G7.js.map +1 -0
  372. package/dist/cli-bundle/chunks/stats-FNLYVXTB.js +120 -0
  373. package/dist/cli-bundle/chunks/stats-FNLYVXTB.js.map +1 -0
  374. package/dist/cli-bundle/chunks/stats-Y2CBTZSL.js +123 -0
  375. package/dist/cli-bundle/chunks/stats-Y2CBTZSL.js.map +7 -0
  376. package/dist/cli-bundle/chunks/test-OFYONO3C.js +35 -0
  377. package/dist/cli-bundle/chunks/test-OFYONO3C.js.map +1 -0
  378. package/dist/cli-bundle/chunks/test-RJ4ZF35X.js +31 -0
  379. package/dist/cli-bundle/chunks/test-RJ4ZF35X.js.map +7 -0
  380. package/dist/cli-bundle/chunks/test-all-EEMKNTGU.js +331 -0
  381. package/dist/cli-bundle/chunks/test-all-EEMKNTGU.js.map +7 -0
  382. package/dist/cli-bundle/chunks/test-all-OJE6CIO7.js +328 -0
  383. package/dist/cli-bundle/chunks/test-all-OJE6CIO7.js.map +1 -0
  384. package/dist/cli-bundle/chunks/test-runs-IPOPFOAF.js +929 -0
  385. package/dist/cli-bundle/chunks/test-runs-IPOPFOAF.js.map +1 -0
  386. package/dist/cli-bundle/chunks/test-runs-L2M7WKH7.js +939 -0
  387. package/dist/cli-bundle/chunks/test-runs-L2M7WKH7.js.map +7 -0
  388. package/dist/cli-bundle/chunks/update-6YEHPVXH.js +25 -0
  389. package/dist/cli-bundle/chunks/update-6YEHPVXH.js.map +1 -0
  390. package/dist/cli-bundle/chunks/update-PYLVHMRD.js +21 -0
  391. package/dist/cli-bundle/chunks/update-PYLVHMRD.js.map +7 -0
  392. package/dist/cli-bundle/chunks/update-many-322CCH2L.js +608 -0
  393. package/dist/cli-bundle/chunks/update-many-322CCH2L.js.map +7 -0
  394. package/dist/cli-bundle/chunks/update-many-DYWGW57M.js +605 -0
  395. package/dist/cli-bundle/chunks/update-many-DYWGW57M.js.map +1 -0
  396. package/dist/cli-bundle/chunks/upgrade-2U727SAM.js +269 -0
  397. package/dist/cli-bundle/chunks/upgrade-2U727SAM.js.map +7 -0
  398. package/dist/cli-bundle/chunks/upgrade-3W3RVSNM.js +266 -0
  399. package/dist/cli-bundle/chunks/upgrade-3W3RVSNM.js.map +1 -0
  400. package/dist/cli-bundle/chunks/validate-GZ24NYHO.js +1120 -0
  401. package/dist/cli-bundle/chunks/validate-GZ24NYHO.js.map +1 -0
  402. package/dist/cli-bundle/chunks/validate-ZFVWPEEN.js +1123 -0
  403. package/dist/cli-bundle/chunks/validate-ZFVWPEEN.js.map +7 -0
  404. package/dist/cli-bundle/main.js +615 -121
  405. package/dist/cli-bundle/main.js.map +4 -4
  406. package/dist/core/checkpoint/mutation-checkpoint.d.ts +44 -0
  407. package/dist/core/checkpoint/mutation-checkpoint.js +119 -0
  408. package/dist/core/checkpoint/mutation-checkpoint.js.map +1 -0
  409. package/dist/core/config/positional-value.js +4 -2
  410. package/dist/core/config/positional-value.js.map +1 -1
  411. package/dist/core/diagnostics/remediation.d.ts +73 -0
  412. package/dist/core/diagnostics/remediation.js +328 -0
  413. package/dist/core/diagnostics/remediation.js.map +1 -0
  414. package/dist/core/extensions/extension-hook-runtime.js +9 -2
  415. package/dist/core/extensions/extension-hook-runtime.js.map +1 -1
  416. package/dist/core/extensions/extension-types.d.ts +60 -4
  417. package/dist/core/extensions/extension-types.js +2 -2
  418. package/dist/core/extensions/extension-types.js.map +1 -1
  419. package/dist/core/extensions/index.d.ts +5 -1
  420. package/dist/core/extensions/index.js +61 -2
  421. package/dist/core/extensions/index.js.map +1 -1
  422. package/dist/core/extensions/item-fields.d.ts +5 -1
  423. package/dist/core/extensions/item-fields.js +126 -4
  424. package/dist/core/extensions/item-fields.js.map +1 -1
  425. package/dist/core/extensions/loader.js +283 -8
  426. package/dist/core/extensions/loader.js.map +1 -1
  427. package/dist/core/item/item-format.d.ts +3 -2
  428. package/dist/core/item/item-format.js +15 -10
  429. package/dist/core/item/item-format.js.map +1 -1
  430. package/dist/core/item/item-type-definition.js +6 -2
  431. package/dist/core/item/item-type-definition.js.map +1 -1
  432. package/dist/core/item/status-filter.d.ts +29 -0
  433. package/dist/core/item/status-filter.js +97 -0
  434. package/dist/core/item/status-filter.js.map +1 -0
  435. package/dist/core/item/type-registry.d.ts +4 -0
  436. package/dist/core/item/type-registry.js +12 -2
  437. package/dist/core/item/type-registry.js.map +1 -1
  438. package/dist/core/output/output.js +17 -5
  439. package/dist/core/output/output.js.map +1 -1
  440. package/dist/core/schema/item-types-file.d.ts +15 -0
  441. package/dist/core/schema/item-types-file.js +27 -2
  442. package/dist/core/schema/item-types-file.js.map +1 -1
  443. package/dist/core/schema/runtime-field-filters.js +4 -3
  444. package/dist/core/schema/runtime-field-filters.js.map +1 -1
  445. package/dist/core/schema/runtime-field-values.d.ts +1 -1
  446. package/dist/core/schema/runtime-field-values.js +10 -4
  447. package/dist/core/schema/runtime-field-values.js.map +1 -1
  448. package/dist/core/schema/runtime-schema.js +75 -2
  449. package/dist/core/schema/runtime-schema.js.map +1 -1
  450. package/dist/core/schema/status-defs-file.d.ts +113 -0
  451. package/dist/core/schema/status-defs-file.js +260 -0
  452. package/dist/core/schema/status-defs-file.js.map +1 -0
  453. package/dist/core/schema/type-workflows.d.ts +64 -0
  454. package/dist/core/schema/type-workflows.js +98 -0
  455. package/dist/core/schema/type-workflows.js.map +1 -0
  456. package/dist/core/search/background-refresh.d.ts +53 -0
  457. package/dist/core/search/background-refresh.js +286 -0
  458. package/dist/core/search/background-refresh.js.map +1 -0
  459. package/dist/core/search/cache.d.ts +23 -2
  460. package/dist/core/search/cache.js +135 -30
  461. package/dist/core/search/cache.js.map +1 -1
  462. package/dist/core/search/http-client.d.ts +2 -2
  463. package/dist/core/search/http-client.js +2 -2
  464. package/dist/core/search/http-client.js.map +1 -1
  465. package/dist/core/search/vector-stores.d.ts +1 -0
  466. package/dist/core/search/vector-stores.js +69 -15
  467. package/dist/core/search/vector-stores.js.map +1 -1
  468. package/dist/core/search/vectorization-metadata.d.ts +13 -0
  469. package/dist/core/search/vectorization-metadata.js +65 -0
  470. package/dist/core/search/vectorization-metadata.js.map +1 -0
  471. package/dist/core/shared/constants.d.ts +2 -2
  472. package/dist/core/shared/constants.js +2 -3
  473. package/dist/core/shared/constants.js.map +1 -1
  474. package/dist/core/shared/serialization.d.ts +1 -0
  475. package/dist/core/shared/serialization.js +86 -2
  476. package/dist/core/shared/serialization.js.map +1 -1
  477. package/dist/core/store/front-matter-cache.js +14 -5
  478. package/dist/core/store/front-matter-cache.js.map +1 -1
  479. package/dist/core/store/item-format-migration.js +25 -15
  480. package/dist/core/store/item-format-migration.js.map +1 -1
  481. package/dist/core/store/item-store.d.ts +2 -0
  482. package/dist/core/store/item-store.js +61 -6
  483. package/dist/core/store/item-store.js.map +1 -1
  484. package/dist/core/store/settings-validator.js +22 -2
  485. package/dist/core/store/settings-validator.js.map +1 -1
  486. package/dist/core/store/settings.js +40 -5
  487. package/dist/core/store/settings.js.map +1 -1
  488. package/dist/core/telemetry/consent.js +3 -3
  489. package/dist/core/telemetry/consent.js.map +1 -1
  490. package/dist/core/telemetry/observability.js +4 -3
  491. package/dist/core/telemetry/observability.js.map +1 -1
  492. package/dist/core/telemetry/runtime.d.ts +10 -0
  493. package/dist/core/telemetry/runtime.js +86 -2
  494. package/dist/core/telemetry/runtime.js.map +1 -1
  495. package/dist/mcp/server.js +221 -12
  496. package/dist/mcp/server.js.map +1 -1
  497. package/dist/sdk/cli-contracts/commander-mutation-options.js +16 -2
  498. package/dist/sdk/cli-contracts/commander-mutation-options.js.map +1 -1
  499. package/dist/sdk/cli-contracts/commander-types.js +7 -2
  500. package/dist/sdk/cli-contracts/commander-types.js.map +1 -1
  501. package/dist/sdk/cli-contracts/enum-contracts.d.ts +2 -2
  502. package/dist/sdk/cli-contracts/enum-contracts.js +4 -2
  503. package/dist/sdk/cli-contracts/enum-contracts.js.map +1 -1
  504. package/dist/sdk/cli-contracts/tool-option-contracts.d.ts +1 -0
  505. package/dist/sdk/cli-contracts/tool-option-contracts.js +53 -3
  506. package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
  507. package/dist/sdk/cli-contracts/tool-parameter-tables.js +37 -8
  508. package/dist/sdk/cli-contracts/tool-parameter-tables.js.map +1 -1
  509. package/dist/sdk/cli-contracts.d.ts +19 -1
  510. package/dist/sdk/cli-contracts.js +211 -18
  511. package/dist/sdk/cli-contracts.js.map +1 -1
  512. package/dist/sdk/errors.d.ts +22 -0
  513. package/dist/sdk/errors.js +46 -0
  514. package/dist/sdk/errors.js.map +1 -0
  515. package/dist/sdk/index.d.ts +2 -1
  516. package/dist/sdk/index.js +3 -2
  517. package/dist/sdk/index.js.map +1 -1
  518. package/dist/sdk/package-import-adapters.js +14 -3
  519. package/dist/sdk/package-import-adapters.js.map +1 -1
  520. package/dist/sdk/runtime.d.ts +1 -0
  521. package/dist/sdk/runtime.js +3 -2
  522. package/dist/sdk/runtime.js.map +1 -1
  523. package/dist/sdk/testing.d.ts +77 -0
  524. package/dist/sdk/testing.js +239 -0
  525. package/dist/sdk/testing.js.map +1 -0
  526. package/dist/types.d.ts +26 -1
  527. package/dist/types.js +3 -2
  528. package/dist/types.js.map +1 -1
  529. package/docs/AGENT_GUIDE.md +21 -2
  530. package/docs/COMMANDS.md +85 -5
  531. package/docs/CONFIGURATION.md +49 -2
  532. package/docs/EXTENSIONS.md +118 -6
  533. package/docs/QUICKSTART.md +2 -0
  534. package/docs/RELEASING.md +3 -3
  535. package/docs/SDK.md +273 -1
  536. package/docs/TESTING.md +17 -0
  537. package/docs/examples/policy-restricted-extension/manifest.json +1 -0
  538. package/docs/examples/starter-extension/index.js +9 -1
  539. package/docs/examples/starter-extension/manifest.json +1 -0
  540. package/package.json +12 -7
  541. package/packages/pm-beads/extensions/beads/index.js +2 -4
  542. package/packages/pm-beads/extensions/beads/index.ts +43 -33
  543. package/packages/pm-beads/extensions/beads/manifest.json +12 -1
  544. package/packages/pm-calendar/README.md +6 -0
  545. package/packages/pm-calendar/extensions/calendar/index.js +6 -1
  546. package/packages/pm-calendar/extensions/calendar/index.ts +6 -1
  547. package/packages/pm-calendar/extensions/calendar/manifest.json +6 -1
  548. package/packages/pm-governance-audit/extensions/governance-audit/manifest.json +6 -1
  549. package/packages/pm-guide-shell/README.md +4 -0
  550. package/packages/pm-guide-shell/extensions/guide-shell/index.js +22 -0
  551. package/packages/pm-guide-shell/extensions/guide-shell/index.ts +22 -0
  552. package/packages/pm-guide-shell/extensions/guide-shell/manifest.json +6 -1
  553. package/packages/pm-guide-shell/extensions/guide-shell/runtime.js +74 -3
  554. package/packages/pm-guide-shell/extensions/guide-shell/runtime.ts +84 -4
  555. package/packages/pm-lifecycle-hooks/README.md +29 -0
  556. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/index.js +18 -0
  557. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/index.ts +20 -0
  558. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/manifest.json +9 -0
  559. package/packages/pm-lifecycle-hooks/package.json +52 -0
  560. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/manifest.json +13 -1
  561. package/packages/pm-search-advanced/extensions/search-advanced/index.js +69 -1
  562. package/packages/pm-search-advanced/extensions/search-advanced/index.ts +91 -2
  563. package/packages/pm-search-advanced/extensions/search-advanced/manifest.json +13 -1
  564. package/packages/pm-templates/extensions/templates/manifest.json +6 -1
  565. package/packages/pm-todos/extensions/todos/index.js +3 -7
  566. package/packages/pm-todos/extensions/todos/index.ts +55 -42
  567. package/packages/pm-todos/extensions/todos/manifest.json +13 -1
  568. package/scripts/bundle-cli.mjs +121 -17
  569. package/dist/cli-bundle/chunks/chunk-PB2YU2E3.js.map +0 -7
  570. package/dist/cli-bundle/chunks/chunk-RJONRNXN.js.map +0 -7
  571. package/dist/cli-bundle/chunks/chunk-SW5BMMCU.js +0 -13864
  572. package/dist/cli-bundle/chunks/chunk-SW5BMMCU.js.map +0 -7
  573. package/dist/cli-bundle/chunks/commands-XJ4TJ5UN.js +0 -24225
  574. package/dist/cli-bundle/chunks/commands-XJ4TJ5UN.js.map +0 -7
  575. package/dist/cli-bundle/chunks/register-list-query-EIVQ5FMR.js.map +0 -7
  576. package/dist/cli-bundle/chunks/register-mutation-RSZNPSGI.js.map +0 -7
  577. package/dist/cli-bundle/chunks/register-operations-APUSYDMR.js.map +0 -7
  578. package/dist/cli-bundle/chunks/register-setup-OZOKSMPJ.js.map +0 -7
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../cli/commands/contracts.ts"],"sourcesContent":["import { EXIT_CODE, SETTINGS_DEFAULTS } from \"../../core/shared/constants.js\";\nimport type { GlobalOptions } from \"../../core/shared/command-types.js\";\nimport { PmCliError } from \"../../core/shared/errors.js\";\nimport {\n activateExtensions,\n getActiveExtensionRegistrations,\n loadExtensions,\n} from \"../../core/extensions/index.js\";\nimport type {\n ExtensionRegistrationRegistry,\n RegisteredExtensionCommandDefinition,\n RegisteredExtensionFlagDefinitions,\n} from \"../../core/extensions/index.js\";\nimport { pathExists } from \"../../core/fs/fs-utils.js\";\nimport {\n commandOptionFlagLabel,\n resolveCommandOptionPolicyState,\n resolveItemTypeRegistry,\n} from \"../../core/item/type-registry.js\";\nimport {\n resolveRuntimeFieldRegistry,\n resolveRuntimeStatusRegistry,\n type RuntimeFieldRegistry,\n} from \"../../core/schema/runtime-schema.js\";\nimport { getSettingsPath, resolvePmRoot } from \"../../core/store/paths.js\";\nimport { readSettings } from \"../../core/store/settings.js\";\nimport {\n ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS,\n ACTIVITY_FLAG_CONTRACTS,\n AGGREGATE_FLAG_CONTRACTS,\n APPEND_FLAG_CONTRACTS,\n CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS,\n CALENDAR_FLAG_CONTRACTS,\n CLAIM_FLAG_CONTRACTS,\n CLOSE_TASK_FLAG_CONTRACTS,\n COMMENTS_FLAG_CONTRACTS,\n COMMENTS_AUDIT_FLAG_CONTRACTS,\n CLOSE_FLAG_CONTRACTS,\n CLOSE_MANY_FLAG_CONTRACTS,\n COMPLETION_FLAG_CONTRACTS,\n CONFIG_FLAG_CONTRACTS,\n CONTRACTS_FLAG_CONTRACTS,\n CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n CONTEXT_FLAG_CONTRACTS,\n CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n CREATE_COMMANDER_STRING_OPTION_CONTRACTS,\n CREATE_FLAG_CONTRACTS,\n DELETE_FLAG_CONTRACTS,\n DEPS_FLAG_CONTRACTS,\n DEDUPE_AUDIT_FLAG_CONTRACTS,\n DOCS_FLAG_CONTRACTS,\n EXTENSION_ACTIVATE_FLAG_CONTRACTS,\n EXTENSION_ADOPT_ALL_FLAG_CONTRACTS,\n EXTENSION_ADOPT_FLAG_CONTRACTS,\n EXTENSION_CATALOG_FLAG_CONTRACTS,\n EXTENSION_DEACTIVATE_FLAG_CONTRACTS,\n EXTENSION_DOCTOR_FLAG_CONTRACTS,\n EXTENSION_EXPLORE_FLAG_CONTRACTS,\n EXTENSION_FLAG_CONTRACTS,\n EXTENSION_INIT_FLAG_CONTRACTS,\n EXTENSION_INSTALL_FLAG_CONTRACTS,\n EXTENSION_MANAGE_FLAG_CONTRACTS,\n EXTENSION_RELOAD_FLAG_CONTRACTS,\n EXTENSION_UNINSTALL_FLAG_CONTRACTS,\n FILES_FLAG_CONTRACTS,\n GC_FLAG_CONTRACTS,\n GET_FLAG_CONTRACTS,\n GUIDE_FLAG_CONTRACTS,\n GLOBAL_FLAG_CONTRACTS,\n HEALTH_FLAG_CONTRACTS,\n HISTORY_FLAG_CONTRACTS,\n HISTORY_REDACT_FLAG_CONTRACTS,\n HISTORY_REPAIR_FLAG_CONTRACTS,\n INSTALL_FLAG_CONTRACTS,\n INIT_FLAG_CONTRACTS,\n LEARNINGS_FLAG_CONTRACTS,\n LIST_COMMANDER_STRING_OPTION_CONTRACTS,\n LIST_FILTER_FLAG_CONTRACTS,\n NORMALIZE_FLAG_CONTRACTS,\n NOTES_FLAG_CONTRACTS,\n PM_EXTENSION_CAPABILITY_CONTRACTS,\n PM_EXTENSION_POLICY_MODE_CONTRACTS,\n PM_EXTENSION_POLICY_SURFACE_CONTRACTS,\n PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS,\n PM_EXTENSION_SERVICE_NAME_CONTRACTS,\n PM_EXTENSION_TRUST_MODE_CONTRACTS,\n PLAN_FLAG_CONTRACTS,\n PM_CORE_COMMAND_NAMES,\n PM_TOOL_ACTIONS,\n PM_TOOL_PARAMETERS_SCHEMA,\n REINDEX_FLAG_CONTRACTS,\n RELEASE_FLAG_CONTRACTS,\n RESTORE_FLAG_CONTRACTS,\n SCHEMA_FLAG_CONTRACTS,\n SEARCH_COMMANDER_STRING_OPTION_CONTRACTS,\n SEARCH_FLAG_CONTRACTS,\n START_TASK_FLAG_CONTRACTS,\n PAUSE_TASK_FLAG_CONTRACTS,\n TEST_ALL_FLAG_CONTRACTS,\n TEST_FLAG_CONTRACTS,\n TEST_RUNS_FLAG_CONTRACTS,\n UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n UPDATE_COMMANDER_STRING_OPTION_CONTRACTS,\n UPDATE_FLAG_CONTRACTS,\n UPDATE_MANY_FLAG_CONTRACTS,\n UPGRADE_FLAG_CONTRACTS,\n VALIDATE_FLAG_CONTRACTS,\n compactFlagAliasContracts,\n withFlagAliasMetadata,\n type CliFlagContract,\n type CommanderOptionAliasContract,\n} from \"../../sdk/cli-contracts.js\";\n\nexport interface ContractsCommandOptions {\n action?: string;\n command?: string;\n schemaOnly?: boolean;\n flagsOnly?: boolean;\n availabilityOnly?: boolean;\n runtimeOnly?: boolean;\n full?: boolean;\n}\n\ninterface CommandFlagSurface {\n command: string;\n flags: CliFlagContract[];\n provider?: \"core\" | \"extension\" | \"mixed\";\n extension_sources?: Array<{\n layer: \"global\" | \"project\";\n name: string;\n }>;\n}\n\ninterface CommandAliasSurface {\n canonical: string;\n aliases: string[];\n}\n\nexport interface ContractsResult {\n schema_version: string | null;\n schema_id: string | null;\n selected: {\n action: string | null;\n command: string | null;\n schema_only: boolean;\n flags_only: boolean;\n availability_only: boolean;\n runtime_only: boolean;\n command_scoped: boolean;\n };\n actions?: string[];\n action_availability?: ContractsActionAvailability[];\n commands: string[];\n schema?: Record<string, unknown>;\n schema_omitted_reason?: string;\n command_flags_omitted_reason?: string;\n commander_aliases_omitted_reason?: string;\n command_flags?: CommandFlagSurface[];\n command_aliases?: CommandAliasSurface[];\n commander_aliases?: Record<string, CommanderOptionAliasContract[]>;\n extension_commands?: ExtensionCommandContract[];\n runtime_schema?: {\n statuses: string[];\n open_status: string;\n close_status: string;\n canceled_status: string;\n types: string[];\n fields_by_command: Record<string, string[]>;\n };\n extension_contracts?: {\n capabilities: string[];\n services: string[];\n policy_modes: string[];\n policy_surfaces: string[];\n trust_modes: string[];\n sandbox_profiles: string[];\n manifest_versions: number[];\n compatibility: {\n current: string;\n previous: string[];\n breaking_strategy: string;\n };\n };\n}\n\ntype PmToolAction = (typeof PM_TOOL_ACTIONS)[number];\n\nexport interface ContractsActionAvailability {\n action: string;\n invocable: boolean;\n available: boolean;\n requires_extension: boolean;\n provider: \"core\" | \"extension\";\n disabled_reason: string | null;\n command_path: string | null;\n cli_exposed: boolean;\n policy_state?: {\n mode: string;\n trust_mode: string;\n default_sandbox_profile: string;\n };\n}\n\ninterface RuntimeExtensionActionProbe {\n handlers: Set<string>;\n disabledReason: string | null;\n commandDefinitions: RegisteredExtensionCommandDefinition[];\n flagRegistrations: RegisteredExtensionFlagDefinitions[];\n registrations: ExtensionRegistrationRegistry | null;\n policyState: {\n mode: string;\n trust_mode: string;\n default_sandbox_profile: string;\n };\n}\n\ninterface ExtensionCommandContract {\n command: string;\n action: string;\n source: {\n layer: \"global\" | \"project\";\n name: string;\n } | null;\n description: string | null;\n intent: string | null;\n arguments: Array<{\n name: string;\n required: boolean;\n variadic: boolean;\n description: string | null;\n }>;\n flags: CliFlagContract[];\n examples: string[];\n failure_hints: string[];\n}\n\nconst LIST_COMMAND_NAMES = new Set([\n \"list\",\n \"list-all\",\n \"list-draft\",\n \"list-open\",\n \"list-in-progress\",\n \"list-blocked\",\n \"list-closed\",\n \"list-canceled\",\n]);\n\nconst PACKAGE_OWNED_ACTIONS = new Set<string>([\n \"calendar\",\n \"dedupe-audit\",\n \"guide\",\n \"reindex\",\n \"normalize\",\n \"comments-audit\",\n \"completion\",\n \"test-runs-list\",\n \"test-runs-status\",\n \"test-runs-logs\",\n \"test-runs-stop\",\n \"test-runs-resume\",\n \"templates-list\",\n \"templates-save\",\n \"templates-show\",\n]);\n\nconst PACKAGE_OWNED_COMMANDS = new Set<string>([\n \"cal\",\n \"calendar\",\n \"comments-audit\",\n \"completion\",\n \"completion-statuses\",\n \"completion-tags\",\n \"completion-types\",\n \"dedupe-audit\",\n \"guide\",\n \"normalize\",\n \"reindex\",\n \"templates\",\n \"templates list\",\n \"templates save\",\n \"templates show\",\n \"test-runs\",\n \"test-runs list\",\n \"test-runs status\",\n \"test-runs logs\",\n \"test-runs stop\",\n \"test-runs resume\",\n]);\n\nconst PACKAGE_OWNED_COMMAND_INSTALL_HINTS = new Map<string, string>([\n [\"cal\", \"calendar\"],\n [\"calendar\", \"calendar\"],\n [\"comments-audit\", \"governance-audit\"],\n [\"completion\", \"guide-shell\"],\n [\"completion-statuses\", \"guide-shell\"],\n [\"completion-tags\", \"guide-shell\"],\n [\"completion-types\", \"guide-shell\"],\n [\"dedupe-audit\", \"governance-audit\"],\n [\"guide\", \"guide-shell\"],\n [\"normalize\", \"governance-audit\"],\n [\"reindex\", \"search-advanced\"],\n [\"templates\", \"templates\"],\n [\"templates list\", \"templates\"],\n [\"templates save\", \"templates\"],\n [\"templates show\", \"templates\"],\n [\"test-runs\", \"linked-test-adapters\"],\n [\"test-runs list\", \"linked-test-adapters\"],\n [\"test-runs status\", \"linked-test-adapters\"],\n [\"test-runs logs\", \"linked-test-adapters\"],\n [\"test-runs stop\", \"linked-test-adapters\"],\n [\"test-runs resume\", \"linked-test-adapters\"],\n]);\n\nconst PACKAGE_OWNED_ACTION_COMMAND_PATHS = new Map<string, string>([\n [\"calendar\", \"calendar|cal\"],\n [\"dedupe-audit\", \"dedupe-audit\"],\n [\"guide\", \"guide\"],\n [\"reindex\", \"reindex\"],\n [\"normalize\", \"normalize\"],\n [\"comments-audit\", \"comments-audit\"],\n [\"completion\", \"completion\"],\n [\"test-runs-list\", \"test-runs|test-runs list\"],\n [\"test-runs-status\", \"test-runs status\"],\n [\"test-runs-logs\", \"test-runs logs\"],\n [\"test-runs-stop\", \"test-runs stop\"],\n [\"test-runs-resume\", \"test-runs resume\"],\n [\"templates-list\", \"templates|templates list\"],\n [\"templates-save\", \"templates save\"],\n [\"templates-show\", \"templates show\"],\n]);\n\nconst PACKAGE_OWNED_COMMAND_ACTIONS = new Map(\n [...PACKAGE_OWNED_ACTION_COMMAND_PATHS.entries()].flatMap(([action, commandPaths]) =>\n splitCommandPathAliases(commandPaths).map((commandPath) => [commandPath, action] as const),\n ),\n);\n\nconst CANONICAL_COMMAND_ALIASES: CommandAliasSurface[] = [\n {\n canonical: \"context\",\n aliases: [\"ctx\"],\n },\n {\n canonical: \"package\",\n aliases: [\"extension\", \"packages\", \"install\"],\n },\n];\n\nconst COMMAND_ALIAS_TO_CANONICAL = new Map(\n CANONICAL_COMMAND_ALIASES.flatMap((entry) =>\n entry.aliases.map((alias) => [alias, entry.canonical] as const),\n ),\n);\n\nconst EXTENSION_PACKAGE_LIFECYCLE_FLAG_CONTRACTS: Array<readonly [string, CliFlagContract[]]> = [\n [\"init\", EXTENSION_INIT_FLAG_CONTRACTS],\n [\"install\", EXTENSION_INSTALL_FLAG_CONTRACTS],\n [\"uninstall\", EXTENSION_UNINSTALL_FLAG_CONTRACTS],\n [\"explore\", EXTENSION_EXPLORE_FLAG_CONTRACTS],\n [\"manage\", EXTENSION_MANAGE_FLAG_CONTRACTS],\n [\"reload\", EXTENSION_RELOAD_FLAG_CONTRACTS],\n [\"doctor\", EXTENSION_DOCTOR_FLAG_CONTRACTS],\n [\"catalog\", EXTENSION_CATALOG_FLAG_CONTRACTS],\n [\"adopt\", EXTENSION_ADOPT_FLAG_CONTRACTS],\n [\"adopt-all\", EXTENSION_ADOPT_ALL_FLAG_CONTRACTS],\n [\"activate\", EXTENSION_ACTIVATE_FLAG_CONTRACTS],\n [\"deactivate\", EXTENSION_DEACTIVATE_FLAG_CONTRACTS],\n];\n\nconst CORE_COMMAND_FLAG_CONTRACT_ENTRIES: Array<readonly [string, CliFlagContract[]]> = [\n ...EXTENSION_PACKAGE_LIFECYCLE_FLAG_CONTRACTS.flatMap(([subcommand, flags]) => [\n [`extension ${subcommand}`, flags] as const,\n [`package ${subcommand}`, flags] as const,\n [`packages ${subcommand}`, flags] as const,\n ]),\n [\"init\", INIT_FLAG_CONTRACTS],\n [\"config\", CONFIG_FLAG_CONTRACTS],\n [\"extension\", EXTENSION_FLAG_CONTRACTS],\n [\"package\", EXTENSION_FLAG_CONTRACTS],\n [\"packages\", EXTENSION_FLAG_CONTRACTS],\n [\"install\", INSTALL_FLAG_CONTRACTS],\n [\"create\", CREATE_FLAG_CONTRACTS],\n [\"update\", UPDATE_FLAG_CONTRACTS],\n [\"update-many\", UPDATE_MANY_FLAG_CONTRACTS],\n [\"upgrade\", UPGRADE_FLAG_CONTRACTS],\n [\"normalize\", NORMALIZE_FLAG_CONTRACTS],\n [\"calendar\", CALENDAR_FLAG_CONTRACTS],\n [\"cal\", CALENDAR_FLAG_CONTRACTS],\n [\"context\", CONTEXT_FLAG_CONTRACTS],\n [\"ctx\", CONTEXT_FLAG_CONTRACTS],\n [\"get\", GET_FLAG_CONTRACTS],\n [\"search\", SEARCH_FLAG_CONTRACTS],\n [\"aggregate\", AGGREGATE_FLAG_CONTRACTS],\n [\"dedupe-audit\", DEDUPE_AUDIT_FLAG_CONTRACTS],\n [\"deps\", DEPS_FLAG_CONTRACTS],\n [\"guide\", GUIDE_FLAG_CONTRACTS],\n [\"reindex\", REINDEX_FLAG_CONTRACTS],\n [\"history\", HISTORY_FLAG_CONTRACTS],\n [\"history-redact\", HISTORY_REDACT_FLAG_CONTRACTS],\n [\"history-repair\", HISTORY_REPAIR_FLAG_CONTRACTS],\n [\"schema\", SCHEMA_FLAG_CONTRACTS],\n [\"plan\", PLAN_FLAG_CONTRACTS],\n [\"restore\", RESTORE_FLAG_CONTRACTS],\n [\"delete\", DELETE_FLAG_CONTRACTS],\n [\"close\", CLOSE_FLAG_CONTRACTS],\n [\"close-many\", CLOSE_MANY_FLAG_CONTRACTS],\n [\"append\", APPEND_FLAG_CONTRACTS],\n [\"claim\", CLAIM_FLAG_CONTRACTS],\n [\"release\", RELEASE_FLAG_CONTRACTS],\n [\"start-task\", START_TASK_FLAG_CONTRACTS],\n [\"pause-task\", PAUSE_TASK_FLAG_CONTRACTS],\n [\"close-task\", CLOSE_TASK_FLAG_CONTRACTS],\n [\"comments\", COMMENTS_FLAG_CONTRACTS],\n [\"notes\", NOTES_FLAG_CONTRACTS],\n [\"learnings\", LEARNINGS_FLAG_CONTRACTS],\n [\"files\", FILES_FLAG_CONTRACTS],\n [\"docs\", DOCS_FLAG_CONTRACTS],\n [\"test\", TEST_FLAG_CONTRACTS],\n [\"test-all\", TEST_ALL_FLAG_CONTRACTS],\n [\"test-runs\", TEST_RUNS_FLAG_CONTRACTS],\n [\"gc\", GC_FLAG_CONTRACTS],\n [\"validate\", VALIDATE_FLAG_CONTRACTS],\n [\"comments-audit\", COMMENTS_AUDIT_FLAG_CONTRACTS],\n [\"health\", HEALTH_FLAG_CONTRACTS],\n [\"contracts\", CONTRACTS_FLAG_CONTRACTS],\n [\"completion\", COMPLETION_FLAG_CONTRACTS],\n [\"activity\", ACTIVITY_FLAG_CONTRACTS],\n ...[...LIST_COMMAND_NAMES].map((command) => [command, LIST_FILTER_FLAG_CONTRACTS] as const),\n];\n\nconst CORE_COMMAND_FLAG_CONTRACTS_BY_COMMAND = new Map(CORE_COMMAND_FLAG_CONTRACT_ENTRIES);\n\nfunction packageOwnedActionForCommand(command: string): string {\n const exactAction = PACKAGE_OWNED_COMMAND_ACTIONS.get(command);\n if (exactAction) {\n return exactAction;\n }\n if (command.startsWith(\"test-runs \")) {\n return `test-runs-${command.slice(\"test-runs \".length)}`;\n }\n if (command.startsWith(\"templates \")) {\n return `templates-${command.slice(\"templates \".length)}`;\n }\n return command;\n}\n\nfunction resolveActionCommandPath(action: PmToolAction): string | null {\n if (\n PM_CORE_COMMAND_NAMES.includes(\n action as (typeof PM_CORE_COMMAND_NAMES)[number],\n )\n ) {\n return normalizeCommandPath(action);\n }\n if (action.startsWith(\"extension-\")) {\n return normalizeCommandPath(\n `extension ${action.slice(\"extension-\".length)}`,\n );\n }\n if (action.startsWith(\"package-\")) {\n return normalizeCommandPath(`package ${action.slice(\"package-\".length)}`);\n }\n if (action.startsWith(\"test-runs-\")) {\n return normalizeCommandPath(\n `test-runs ${action.slice(\"test-runs-\".length)}`,\n );\n }\n if (action.startsWith(\"templates-\")) {\n return normalizeCommandPath(\n `templates ${action.slice(\"templates-\".length)}`,\n );\n }\n if (PACKAGE_OWNED_ACTIONS.has(action)) {\n return PACKAGE_OWNED_ACTION_COMMAND_PATHS.get(action) ?? normalizeCommandPath(action);\n }\n return null;\n}\n\nfunction actionDescriptorMatchesSelectedCommand(\n descriptor: ActionContractDescriptor,\n selectedCommand: string,\n): boolean {\n if (descriptor.command_path === null) {\n return false;\n }\n return splitCommandPathAliases(descriptor.command_path).some((commandPath) => {\n if (commandPath === selectedCommand) {\n return true;\n }\n return commandPath.startsWith(`${selectedCommand} `);\n });\n}\n\nfunction splitCommandPathAliases(commandPath: string): string[] {\n return commandPath\n .split(\"|\")\n .map((entry) => normalizeCommandPath(entry))\n .filter((entry) => entry.length > 0);\n}\n\nfunction resolveScopedCommandsFromActionDescriptors(\n descriptors: ActionContractDescriptor[],\n commandCatalog: string[],\n): string[] {\n const commandSet = new Set(commandCatalog);\n const scoped = new Set<string>();\n for (const descriptor of descriptors) {\n if (!descriptor.command_path) {\n continue;\n }\n for (const commandPath of splitCommandPathAliases(descriptor.command_path)) {\n const tokens = commandPath.split(\" \").filter((entry) => entry.length > 0);\n if (tokens.length === 0) {\n continue;\n }\n for (let end = tokens.length; end > 0; end -= 1) {\n const candidate = tokens.slice(0, end).join(\" \");\n if (!commandSet.has(candidate)) {\n continue;\n }\n scoped.add(candidate);\n break;\n }\n }\n }\n return [...scoped].sort((left, right) => left.localeCompare(right));\n}\n\nfunction normalizeToken(value: string | undefined): string | undefined {\n if (typeof value !== \"string\") {\n return undefined;\n }\n const trimmed = value.trim().toLowerCase();\n return trimmed.length > 0 ? trimmed : undefined;\n}\n\nfunction extractActionBranches(\n schema: Record<string, unknown>,\n): Record<string, unknown>[] {\n const oneOf = schema.oneOf;\n if (!Array.isArray(oneOf)) {\n return [];\n }\n return oneOf.filter(\n (entry): entry is Record<string, unknown> =>\n typeof entry === \"object\" && entry !== null,\n );\n}\n\nfunction filterSchemaByAction(\n schema: Record<string, unknown>,\n action: string | undefined,\n): Record<string, unknown> {\n if (!action) {\n return { ...schema };\n }\n const branches = extractActionBranches(schema);\n const filtered = branches.filter((entry) => {\n const properties = entry.properties;\n if (typeof properties !== \"object\" || properties === null) {\n return false;\n }\n const actionProperty = (properties as Record<string, unknown>).action;\n if (typeof actionProperty !== \"object\" || actionProperty === null) {\n return false;\n }\n return (actionProperty as { const?: unknown }).const === action;\n });\n return {\n ...schema,\n oneOf: filtered,\n };\n}\n\nfunction filterSchemaByActions(\n schema: Record<string, unknown>,\n actions: ReadonlySet<string>,\n): Record<string, unknown> {\n const branches = extractActionBranches(schema);\n const filtered = branches.filter((entry) => {\n const properties = entry.properties;\n if (typeof properties !== \"object\" || properties === null) {\n return false;\n }\n const actionProperty = (properties as Record<string, unknown>).action;\n if (typeof actionProperty !== \"object\" || actionProperty === null) {\n return false;\n }\n const actionConst = (actionProperty as { const?: unknown }).const;\n return typeof actionConst === \"string\" && actions.has(actionConst);\n });\n return {\n ...schema,\n oneOf: filtered,\n };\n}\n\nfunction normalizeCommandPath(value: string): string {\n return value\n .trim()\n .toLowerCase()\n .split(/\\s+/)\n .filter((entry) => entry.length > 0)\n .join(\" \");\n}\n\nfunction normalizeActionNameFromCommand(commandPath: string): string {\n return commandPath.replace(/\\s+/g, \"-\");\n}\n\nfunction toOptionalTrimmedString(value: unknown): string | null {\n if (typeof value !== \"string\") {\n return null;\n }\n const trimmed = value.trim();\n return trimmed.length > 0 ? trimmed : null;\n}\n\nfunction normalizeStringList(values: string[] | undefined): string[] {\n if (!Array.isArray(values)) {\n return [];\n }\n const normalized: string[] = [];\n const seen = new Set<string>();\n for (const value of values) {\n const trimmed = toOptionalTrimmedString(value);\n if (!trimmed || seen.has(trimmed)) {\n continue;\n }\n seen.add(trimmed);\n normalized.push(trimmed);\n }\n return normalized;\n}\n\nfunction toExtensionFlagContract(\n definition: Record<string, unknown>,\n): CliFlagContract | null {\n const longName = toOptionalTrimmedString(definition.long);\n const shortName = toOptionalTrimmedString(definition.short);\n const normalizedLong =\n longName && longName.startsWith(\"--\") && longName.length > 2\n ? longName\n : null;\n const normalizedShort =\n shortName && shortName.startsWith(\"-\") && !shortName.startsWith(\"--\")\n ? shortName\n : null;\n const flag = normalizedLong ?? normalizedShort;\n if (!flag) {\n return null;\n }\n const contract: CliFlagContract = { flag };\n if (normalizedShort && normalizedLong) {\n contract.short = normalizedShort;\n }\n const description = toOptionalTrimmedString(definition.description);\n if (description) {\n contract.description = description;\n }\n if (definition.required === true) {\n contract.required = true;\n }\n if (definition.repeatable === true) {\n contract.repeatable = true;\n }\n const valueName = toOptionalTrimmedString(definition.value_name);\n if (valueName) {\n contract.value_name = valueName;\n }\n const rawValueType = [\n toOptionalTrimmedString(definition.value_type),\n toOptionalTrimmedString(definition.type),\n valueName ? \"string\" : null,\n ].find((candidate): candidate is \"string\" | \"number\" | \"boolean\" =>\n candidate === \"string\" || candidate === \"number\" || candidate === \"boolean\",\n );\n if (rawValueType) {\n contract.value_type = rawValueType;\n }\n return contract;\n}\n\nfunction collectExtensionFlagContractsByCommand(\n registrations: RegisteredExtensionFlagDefinitions[],\n): Map<\n string,\n {\n flags: CliFlagContract[];\n sources: Array<{ layer: \"global\" | \"project\"; name: string }>;\n }\n> {\n const grouped = new Map<\n string,\n {\n flags: CliFlagContract[];\n sources: Array<{ layer: \"global\" | \"project\"; name: string }>;\n dedupe: Set<string>;\n sourceDedupe: Set<string>;\n }\n >();\n for (const registration of registrations) {\n const commandPath = normalizeCommandPath(registration.target_command);\n if (commandPath.length === 0) {\n continue;\n }\n const bucket = grouped.get(commandPath) ?? {\n flags: [],\n sources: [],\n dedupe: new Set<string>(),\n sourceDedupe: new Set<string>(),\n };\n const sourceKey = `${registration.layer}:${registration.name}`;\n if (!bucket.sourceDedupe.has(sourceKey)) {\n bucket.sourceDedupe.add(sourceKey);\n bucket.sources.push({\n layer: registration.layer,\n name: registration.name,\n });\n }\n for (const definition of registration.flags) {\n const contract = toExtensionFlagContract(definition);\n if (!contract) {\n continue;\n }\n const key = `${contract.flag}|${contract.short ?? \"\"}`;\n if (bucket.dedupe.has(key)) {\n continue;\n }\n bucket.dedupe.add(key);\n bucket.flags.push(contract);\n }\n grouped.set(commandPath, bucket);\n }\n const normalized = new Map<\n string,\n {\n flags: CliFlagContract[];\n sources: Array<{ layer: \"global\" | \"project\"; name: string }>;\n }\n >();\n for (const [commandPath, bucket] of grouped.entries()) {\n normalized.set(commandPath, {\n flags: bucket.flags,\n sources: bucket.sources.sort((left, right) => {\n const layerOrder = left.layer.localeCompare(right.layer);\n if (layerOrder !== 0) {\n return layerOrder;\n }\n return (left.name ?? \"\").localeCompare(right.name ?? \"\");\n }),\n });\n }\n return normalized;\n}\n\nfunction collectExtensionCommandContracts(\n runtimeProbe: RuntimeExtensionActionProbe,\n): ExtensionCommandContract[] {\n const flagsByCommand = collectExtensionFlagContractsByCommand(\n runtimeProbe.flagRegistrations,\n );\n const definitionsByCommand = new Map<string, ExtensionCommandContract>();\n for (const definition of runtimeProbe.commandDefinitions) {\n const command = normalizeCommandPath(definition.command);\n if (command.length === 0) {\n continue;\n }\n const action =\n toOptionalTrimmedString(definition.action) ??\n normalizeActionNameFromCommand(command);\n const args = Array.isArray(definition.arguments)\n ? definition.arguments\n .map((argument) => {\n const name = toOptionalTrimmedString(argument.name);\n if (!name) {\n return null;\n }\n return {\n name,\n required: argument.required === true,\n variadic: argument.variadic === true,\n description: toOptionalTrimmedString(argument.description),\n };\n })\n .filter(\n (\n argument,\n ): argument is {\n name: string;\n required: boolean;\n variadic: boolean;\n description: string | null;\n } => argument !== null,\n )\n : [];\n definitionsByCommand.set(command, {\n command,\n action,\n source: {\n layer: definition.layer,\n name: definition.name,\n },\n description: toOptionalTrimmedString(definition.description),\n intent: toOptionalTrimmedString(definition.intent),\n arguments: args,\n flags: flagsByCommand.get(command)?.flags ?? [],\n examples: normalizeStringList(definition.examples),\n failure_hints: normalizeStringList(definition.failure_hints),\n });\n }\n\n const extensionCommands = new Set<string>();\n for (const command of runtimeProbe.handlers) {\n extensionCommands.add(normalizeCommandPath(command));\n }\n for (const command of definitionsByCommand.keys()) {\n extensionCommands.add(command);\n }\n for (const command of flagsByCommand.keys()) {\n extensionCommands.add(command);\n }\n\n const contracts: ExtensionCommandContract[] = [];\n for (const command of [...extensionCommands].sort((left, right) =>\n left.localeCompare(right),\n )) {\n const definition = definitionsByCommand.get(command);\n if (definition) {\n contracts.push({\n ...definition,\n flags:\n definition.flags.length > 0\n ? definition.flags\n : (flagsByCommand.get(command)?.flags ?? []),\n });\n continue;\n }\n contracts.push({\n command,\n action: normalizeActionNameFromCommand(command),\n source: null,\n description: null,\n intent: null,\n arguments: [],\n flags: flagsByCommand.get(command)?.flags ?? [],\n examples: [],\n failure_hints: [],\n });\n }\n return contracts;\n}\n\nfunction extensionSchemaPropertyNameFromFlag(\n flag: CliFlagContract,\n): string | null {\n const normalized = flag.flag.replace(/^-+/, \"\").trim();\n if (normalized.length === 0) {\n return null;\n }\n const camelCased = normalized.replace(\n /-([a-z0-9])/g,\n (_match, char: string) => char.toUpperCase(),\n );\n const cleaned = camelCased.replace(/[^a-zA-Z0-9]/g, \"\");\n return cleaned.length > 0 ? cleaned : null;\n}\n\nfunction buildExtensionActionSchemaBranch(\n contract: ExtensionCommandContract,\n): Record<string, unknown> {\n const commands = contract.command\n .split(\"|\")\n .map((command) => command.trim())\n .filter((command) => command.length > 0);\n const properties: Record<string, unknown> = {\n action: {\n type: \"string\",\n const: contract.action,\n description:\n contract.intent ??\n contract.description ??\n `Invoke extension command '${contract.command}'.`,\n },\n };\n const required: string[] = [\"action\"];\n for (const argument of contract.arguments) {\n if (argument.variadic) {\n properties[argument.name] = {\n type: \"array\",\n items: { type: \"string\" },\n description:\n argument.description ??\n `Variadic argument '${argument.name}' for extension action '${contract.action}'.`,\n };\n } else {\n properties[argument.name] = {\n type: \"string\",\n description:\n argument.description ??\n `Argument '${argument.name}' for extension action '${contract.action}'.`,\n };\n }\n if (argument.required) {\n required.push(argument.name);\n }\n }\n for (const flag of contract.flags) {\n const propertyName = extensionSchemaPropertyNameFromFlag(flag);\n if (!propertyName || properties[propertyName] !== undefined) {\n continue;\n }\n const valueType = flag.value_type ?? \"boolean\";\n const schemaType =\n valueType === \"boolean\" ? \"boolean\" : valueType === \"number\" ? [\"number\", \"string\"] : \"string\";\n properties[propertyName] = {\n type: flag.repeatable ? \"array\" : schemaType,\n ...(flag.repeatable ? { items: { type: schemaType } } : {}),\n description: flag.description ?? `Extension option '${flag.flag}' for action '${contract.action}'.`,\n };\n if (flag.required === true) {\n required.push(propertyName);\n }\n }\n\n return {\n type: \"object\",\n properties,\n required,\n additionalProperties: true,\n \"x-extension-source\": contract.source,\n \"x-extension-command\": commands[0] ?? contract.command,\n \"x-extension-commands\": commands,\n };\n}\n\nfunction mergeExtensionFlagContract(existing: CliFlagContract, incoming: CliFlagContract): void {\n existing.description ??= incoming.description;\n existing.value_name ??= incoming.value_name;\n existing.value_type ??= incoming.value_type;\n if (incoming.required === true) {\n existing.required = true;\n }\n if (incoming.repeatable === true) {\n existing.repeatable = true;\n }\n}\n\nfunction mergeExtensionContractsByAction(\n contracts: ExtensionCommandContract[],\n): ExtensionCommandContract[] {\n const byAction = new Map<string, ExtensionCommandContract>();\n for (const contract of contracts) {\n const existing = byAction.get(contract.action);\n if (!existing) {\n byAction.set(contract.action, {\n ...contract,\n flags: [...contract.flags],\n examples: [...contract.examples],\n failure_hints: [...contract.failure_hints],\n });\n continue;\n }\n existing.command = [...new Set([existing.command, contract.command])]\n .sort((left, right) => left.localeCompare(right))\n .join(\"|\");\n existing.arguments = existing.arguments.length >= contract.arguments.length ? existing.arguments : contract.arguments;\n const flagKeys = new Set(existing.flags.map((flag) => `${flag.flag}|${flag.short ?? \"\"}`));\n for (const flag of contract.flags) {\n const key = `${flag.flag}|${flag.short ?? \"\"}`;\n if (!flagKeys.has(key)) {\n flagKeys.add(key);\n existing.flags.push(flag);\n } else {\n const existingFlag = existing.flags.find((candidate) => `${candidate.flag}|${candidate.short ?? \"\"}` === key);\n if (existingFlag) {\n mergeExtensionFlagContract(existingFlag, flag);\n }\n }\n }\n existing.examples = [...new Set([...existing.examples, ...contract.examples])];\n existing.failure_hints = [...new Set([...existing.failure_hints, ...contract.failure_hints])];\n }\n return [...byAction.values()].sort((left, right) => left.action.localeCompare(right.action));\n}\n\nasync function resolveRuntimeExtensionActionProbe(\n global: GlobalOptions,\n): Promise<RuntimeExtensionActionProbe> {\n const defaultPolicyState = {\n mode: SETTINGS_DEFAULTS.extensions.policy.mode,\n trust_mode: SETTINGS_DEFAULTS.extensions.policy.trust_mode,\n default_sandbox_profile:\n SETTINGS_DEFAULTS.extensions.policy.default_sandbox_profile,\n };\n if (global.noExtensions) {\n return {\n handlers: new Set<string>(),\n disabledReason: \"extensions_disabled\",\n commandDefinitions: [],\n flagRegistrations: [],\n registrations: null,\n policyState: defaultPolicyState,\n };\n }\n\n const pmRoot = resolvePmRoot(process.cwd(), global.path);\n if (!(await pathExists(getSettingsPath(pmRoot)))) {\n return {\n handlers: new Set<string>(),\n disabledReason: null,\n commandDefinitions: [],\n flagRegistrations: [],\n registrations: null,\n policyState: defaultPolicyState,\n };\n }\n\n try {\n const settings = await readSettings(pmRoot);\n const loadResult = await loadExtensions({\n pmRoot,\n settings,\n cwd: process.cwd(),\n noExtensions: false,\n });\n const activationResult = await activateExtensions({\n ...loadResult,\n loaded: loadResult.loaded,\n });\n const handlers = new Set<string>(\n activationResult.commands.handlers.map((entry) =>\n normalizeCommandPath(entry.command),\n ),\n );\n return {\n handlers,\n disabledReason: null,\n commandDefinitions: activationResult.registrations.commands,\n flagRegistrations: activationResult.registrations.flags,\n registrations: activationResult.registrations,\n policyState: {\n mode: loadResult.policy.mode,\n trust_mode: loadResult.policy.trust_mode,\n default_sandbox_profile: loadResult.policy.default_sandbox_profile,\n },\n };\n } catch {\n return {\n handlers: new Set<string>(),\n disabledReason: \"extension_runtime_probe_failed\",\n commandDefinitions: [],\n flagRegistrations: [],\n registrations: null,\n policyState: defaultPolicyState,\n };\n }\n}\n\ninterface ActionContractDescriptor {\n action: string;\n provider: \"core\" | \"extension\";\n requires_extension: boolean;\n command_path: string | null;\n}\n\nfunction collectActionContractDescriptors(\n extensionContracts: ExtensionCommandContract[],\n options: { includePackageOwnedActions?: boolean } = {},\n): ActionContractDescriptor[] {\n const descriptors = new Map<string, ActionContractDescriptor>();\n for (const action of PM_TOOL_ACTIONS) {\n const packageOwned = PACKAGE_OWNED_ACTIONS.has(action);\n if (packageOwned && !options.includePackageOwnedActions) {\n continue;\n }\n const commandPath = resolveActionCommandPath(action as PmToolAction);\n descriptors.set(action, {\n action,\n provider: packageOwned ? \"extension\" : \"core\",\n requires_extension: packageOwned,\n command_path: commandPath,\n });\n }\n if (options.includePackageOwnedActions) {\n for (const action of PACKAGE_OWNED_ACTIONS) {\n if (descriptors.has(action)) {\n continue;\n }\n descriptors.set(action, {\n action,\n provider: \"extension\",\n requires_extension: true,\n command_path: resolveActionCommandPath(action as PmToolAction),\n });\n }\n }\n for (const contract of extensionContracts) {\n if (descriptors.has(contract.action)) {\n continue;\n }\n descriptors.set(contract.action, {\n action: contract.action,\n provider: \"extension\",\n requires_extension: true,\n command_path: normalizeCommandPath(contract.command),\n });\n }\n return [...descriptors.values()].sort((left, right) =>\n (left.action ?? \"\").localeCompare(right.action ?? \"\"),\n );\n}\n\nfunction resolveActionAvailability(\n descriptor: ActionContractDescriptor,\n runtimeProbe: RuntimeExtensionActionProbe,\n): ContractsActionAvailability {\n if (descriptor.provider === \"core\" && !descriptor.requires_extension) {\n return {\n action: descriptor.action,\n invocable: true,\n available: true,\n requires_extension: false,\n provider: \"core\",\n disabled_reason: null,\n command_path: descriptor.command_path,\n cli_exposed: descriptor.command_path !== null,\n };\n }\n\n const commandPaths = descriptor.command_path\n ? splitCommandPathAliases(descriptor.command_path)\n : [];\n const extensionCommandAvailable = commandPaths.some((commandPath) =>\n runtimeProbe.handlers.has(commandPath),\n );\n const optionalPackageHint = commandPaths\n .map((commandPath) => PACKAGE_OWNED_COMMAND_INSTALL_HINTS.get(commandPath))\n .find((hint): hint is string => typeof hint === \"string\");\n const invocable =\n runtimeProbe.disabledReason === null && extensionCommandAvailable;\n return {\n action: descriptor.action,\n invocable,\n available: invocable,\n requires_extension: true,\n provider: \"extension\",\n disabled_reason: invocable\n ? null\n : (runtimeProbe.disabledReason ?? (optionalPackageHint ? `optional_package_not_installed:${optionalPackageHint}` : \"extension_command_not_registered\")),\n command_path: descriptor.command_path,\n cli_exposed: extensionCommandAvailable,\n policy_state: {\n mode: runtimeProbe.policyState.mode,\n trust_mode: runtimeProbe.policyState.trust_mode,\n default_sandbox_profile: runtimeProbe.policyState.default_sandbox_profile,\n },\n };\n}\n\nfunction resolveCoreCommandFlags(command: string): CliFlagContract[] {\n return CORE_COMMAND_FLAG_CONTRACTS_BY_COMMAND.get(command) ?? GLOBAL_FLAG_CONTRACTS;\n}\n\nfunction isCoreCommandPath(command: string): boolean {\n if (PACKAGE_OWNED_COMMANDS.has(command)) {\n return false;\n }\n return CORE_COMMAND_FLAG_CONTRACTS_BY_COMMAND.has(command);\n}\n\nfunction normalizeCommandForRuntimeFieldFlags(command: string): string {\n if (LIST_COMMAND_NAMES.has(command)) {\n return \"list\";\n }\n if (command === \"cal\") {\n return \"calendar\";\n }\n if (command === \"ctx\") {\n return \"context\";\n }\n if (command === \"update-many\") {\n return \"update_many\";\n }\n return command;\n}\n\nfunction toRuntimeLongFlagToken(token: string): string | null {\n const trimmed = token.trim();\n if (!trimmed) {\n return null;\n }\n if (trimmed.startsWith(\"--\")) {\n return trimmed;\n }\n if (trimmed.startsWith(\"-\")) {\n return null;\n }\n return `--${trimmed}`;\n}\n\nfunction toRuntimeShortFlagToken(token: string): string | null {\n const trimmed = token.trim();\n if (!trimmed) {\n return null;\n }\n if (trimmed.startsWith(\"--\")) {\n return null;\n }\n if (trimmed.startsWith(\"-\")) {\n return trimmed;\n }\n return null;\n}\n\nfunction buildRuntimeFieldFlagContracts(\n fieldRegistry: RuntimeFieldRegistry,\n): Map<string, CliFlagContract[]> {\n const buckets = new Map<\n string,\n { flags: CliFlagContract[]; seen: Set<string> }\n >();\n for (const definition of fieldRegistry.definitions) {\n const primaryFlag = toRuntimeLongFlagToken(definition.cli_flag);\n if (!primaryFlag) {\n continue;\n }\n const shortAlias = definition.cli_aliases\n .map((alias) => toRuntimeShortFlagToken(alias))\n .find((alias) => alias !== null);\n const longAliases = definition.cli_aliases\n .map((alias) => toRuntimeLongFlagToken(alias))\n .filter(\n (alias): alias is string => alias !== null && alias !== primaryFlag,\n );\n for (const command of definition.commands) {\n const bucket = buckets.get(command) ?? {\n flags: [],\n seen: new Set<string>(),\n };\n const primaryContract: CliFlagContract = shortAlias\n ? { flag: primaryFlag, short: shortAlias }\n : { flag: primaryFlag };\n const primaryKey = `${primaryContract.flag}|${primaryContract.short ?? \"\"}`;\n if (!bucket.seen.has(primaryKey)) {\n bucket.seen.add(primaryKey);\n bucket.flags.push(primaryContract);\n }\n for (const alias of longAliases) {\n const key = `${alias}|`;\n if (bucket.seen.has(key)) {\n continue;\n }\n bucket.seen.add(key);\n bucket.flags.push({ flag: alias });\n }\n buckets.set(command, bucket);\n }\n }\n const result = new Map<string, CliFlagContract[]>();\n for (const [command, bucket] of buckets.entries()) {\n result.set(command, compactFlagAliasContracts(bucket.flags));\n }\n return result;\n}\n\nfunction mergeFlagContracts(\n primary: CliFlagContract[],\n secondary: CliFlagContract[],\n): CliFlagContract[] {\n const merged: CliFlagContract[] = [];\n const seen = new Set<string>();\n for (const contract of [...primary, ...secondary]) {\n const key = `${contract.flag}|${contract.short ?? \"\"}`;\n if (seen.has(key)) {\n continue;\n }\n seen.add(key);\n merged.push(contract);\n }\n return compactFlagAliasContracts(merged);\n}\n\nfunction buildCommandFlagSurface(\n commands: string[],\n extensionFlagMap: ReturnType<typeof collectExtensionFlagContractsByCommand>,\n runtimeFieldFlagMap: Map<string, CliFlagContract[]>,\n): CommandFlagSurface[] {\n return commands\n .map((command) => {\n const isCoreCommand = isCoreCommandPath(command);\n const coreFlags = isCoreCommand ? resolveCoreCommandFlags(command) : [];\n const runtimeFlags =\n runtimeFieldFlagMap.get(\n normalizeCommandForRuntimeFieldFlags(command),\n ) ?? [];\n const extensionFlags = extensionFlagMap.get(command);\n const coreWithRuntime = mergeFlagContracts(coreFlags, runtimeFlags);\n const flags = mergeFlagContracts(\n coreWithRuntime,\n extensionFlags?.flags ?? [],\n );\n const provider: CommandFlagSurface[\"provider\"] =\n coreFlags.length > 0 && (extensionFlags?.flags.length ?? 0) > 0\n ? \"mixed\"\n : isCoreCommand\n ? \"core\"\n : \"extension\";\n return {\n command,\n flags,\n provider,\n extension_sources: extensionFlags?.sources,\n };\n })\n .sort((left, right) => left.command.localeCompare(right.command));\n}\n\nfunction compactCommandAliasSurface(commands: string[]): string[] {\n const commandSet = new Set(commands);\n const result: string[] = [];\n for (const command of commands) {\n const canonical = COMMAND_ALIAS_TO_CANONICAL.get(command);\n if (canonical && commandSet.has(canonical)) {\n continue;\n }\n result.push(command);\n }\n return result;\n}\n\nfunction buildCommandAliasSurface(commands: string[]): CommandAliasSurface[] {\n const commandSet = new Set(commands);\n return CANONICAL_COMMAND_ALIASES.map((entry) => ({\n canonical: entry.canonical,\n aliases: entry.aliases.filter((alias) => commandSet.has(alias)),\n })).filter(\n (entry) => commandSet.has(entry.canonical) && entry.aliases.length > 0,\n );\n}\n\nfunction buildCommanderAliasSurface(): Record<\n string,\n CommanderOptionAliasContract[]\n> {\n return {\n create_string_options: CREATE_COMMANDER_STRING_OPTION_CONTRACTS,\n create_repeatable_options: CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n update_string_options: UPDATE_COMMANDER_STRING_OPTION_CONTRACTS,\n update_repeatable_options: UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n list_string_options: LIST_COMMANDER_STRING_OPTION_CONTRACTS,\n search_string_options: SEARCH_COMMANDER_STRING_OPTION_CONTRACTS,\n calendar_string_options: CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS,\n context_string_options: CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n activity_string_options: ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS,\n };\n}\n\nfunction resolveCreateRequiredOptionContract(\n typeDefinition: ReturnType<typeof resolveItemTypeRegistry>[\"by_type\"][string],\n createMode: \"strict\" | \"progressive\",\n): {\n required_option_keys: string[];\n required_flags: string[];\n required_type_options: string[];\n policy_errors: string[];\n} {\n const baseRequiredOptions = new Set<string>([\"title\", \"type\"]);\n if (createMode === \"strict\") {\n for (const field of typeDefinition.required_create_fields) {\n baseRequiredOptions.add(field);\n }\n for (const field of typeDefinition.required_create_repeatables) {\n baseRequiredOptions.add(field);\n }\n }\n const policyState = resolveCommandOptionPolicyState(\n typeDefinition,\n \"create\",\n baseRequiredOptions,\n );\n const requiredOptionKeys = [...new Set(policyState.required)].sort(\n (left, right) => left.localeCompare(right),\n );\n const requiredFlags = [\n ...new Set(\n requiredOptionKeys.map((option) =>\n commandOptionFlagLabel(\"create\", option),\n ),\n ),\n ].sort((left, right) => left.localeCompare(right));\n const requiredTypeOptions = [\n ...new Set(\n typeDefinition.options\n .filter((option) => option.required === true)\n .map((option) => option.key),\n ),\n ].sort((left, right) => left.localeCompare(right));\n return {\n required_option_keys: requiredOptionKeys,\n required_flags: requiredFlags,\n required_type_options: requiredTypeOptions,\n policy_errors: [...new Set(policyState.errors)].sort((left, right) =>\n left.localeCompare(right),\n ),\n };\n}\n\nfunction buildCreateRequiredOptionContracts(\n typeRegistry: ReturnType<typeof resolveItemTypeRegistry>,\n): Record<string, unknown> {\n const byTypeStrict: Record<string, unknown> = {};\n const byTypeProgressive: Record<string, unknown> = {};\n for (const typeName of [...typeRegistry.types].sort((left, right) =>\n left.localeCompare(right),\n )) {\n const typeDefinition = typeRegistry.by_type[typeName];\n byTypeStrict[typeName] = resolveCreateRequiredOptionContract(\n typeDefinition,\n \"strict\",\n );\n byTypeProgressive[typeName] = resolveCreateRequiredOptionContract(\n typeDefinition,\n \"progressive\",\n );\n }\n return {\n default_create_mode: \"strict\",\n by_create_mode: {\n strict: {\n by_type: byTypeStrict,\n },\n progressive: {\n by_type: byTypeProgressive,\n },\n },\n };\n}\n\nfunction attachCreateRequiredOptionContracts(\n schema: Record<string, unknown>,\n metadata: Record<string, unknown>,\n): Record<string, unknown> {\n const branches = extractActionBranches(schema);\n if (branches.length === 0) {\n return schema;\n }\n let touched = false;\n const enrichedBranches = branches.map((branch) => {\n const properties = branch.properties;\n if (typeof properties !== \"object\" || properties === null) {\n return branch;\n }\n const actionProperty = (properties as Record<string, unknown>).action;\n if (typeof actionProperty !== \"object\" || actionProperty === null) {\n return branch;\n }\n if ((actionProperty as { const?: unknown }).const !== \"create\") {\n return branch;\n }\n touched = true;\n return {\n ...branch,\n \"x-create-required-options\": metadata,\n };\n });\n if (!touched) {\n return schema;\n }\n return {\n ...schema,\n oneOf: enrichedBranches,\n };\n}\n\nexport async function runContracts(\n options: ContractsCommandOptions,\n global: GlobalOptions,\n): Promise<ContractsResult> {\n const selectedAction = normalizeToken(options.action);\n const selectedCommand = normalizeToken(options.command);\n const schemaOnly = options.schemaOnly === true;\n const flagsOnly = options.flagsOnly === true;\n const availabilityOnly = options.availabilityOnly === true;\n const runtimeOnly = options.runtimeOnly === true;\n const fullOutput = options.full === true;\n const unfilteredDefaultBriefMode =\n !fullOutput && !schemaOnly && !flagsOnly && !availabilityOnly && !selectedAction && !selectedCommand;\n // Agent token-cost guard: when no filter and no projection flag and not --full,\n // skip the giant schema oneOf union (the 200KB+ chunk). Restore via --full\n // or by scoping to a specific --command/--action.\n const omitUnfilteredSchema = unfilteredDefaultBriefMode;\n const omitUnfilteredCommandFlags = unfilteredDefaultBriefMode;\n const omitUnfilteredCommanderAliases = unfilteredDefaultBriefMode;\n const projectionFlagsEnabled = [\n schemaOnly,\n flagsOnly,\n availabilityOnly,\n ].filter((value) => value).length;\n if (projectionFlagsEnabled > 1) {\n throw new PmCliError(\n \"Choose only one projection flag: --schema-only, --flags-only, or --availability-only.\",\n EXIT_CODE.USAGE,\n );\n }\n const pmRoot = resolvePmRoot(process.cwd(), global.path);\n let settings = structuredClone(SETTINGS_DEFAULTS);\n try {\n settings = await readSettings(pmRoot);\n } catch {\n settings = structuredClone(SETTINGS_DEFAULTS);\n }\n const runtimeProbe = await resolveRuntimeExtensionActionProbe(global);\n const typeRegistry = resolveItemTypeRegistry(\n settings,\n runtimeProbe.registrations ?? getActiveExtensionRegistrations(),\n );\n const statusRegistry = resolveRuntimeStatusRegistry(settings.schema);\n const runtimeFieldRegistry = resolveRuntimeFieldRegistry(settings.schema);\n const runtimeFieldFlagMap =\n buildRuntimeFieldFlagContracts(runtimeFieldRegistry);\n const createRequiredOptionContracts =\n buildCreateRequiredOptionContracts(typeRegistry);\n const extensionContracts = collectExtensionCommandContracts(runtimeProbe);\n const mergedExtensionContracts = mergeExtensionContractsByAction(extensionContracts);\n const extensionFlagMap = collectExtensionFlagContractsByCommand(\n runtimeProbe.flagRegistrations,\n );\n const includePackageOwnedActions =\n (selectedAction !== undefined && PACKAGE_OWNED_ACTIONS.has(selectedAction) && availabilityOnly) ||\n (selectedCommand !== undefined && PACKAGE_OWNED_COMMANDS.has(selectedCommand) && availabilityOnly);\n const actionDescriptors =\n collectActionContractDescriptors(mergedExtensionContracts, { includePackageOwnedActions });\n if (\n includePackageOwnedActions &&\n selectedCommand !== undefined &&\n PACKAGE_OWNED_COMMANDS.has(selectedCommand) &&\n !actionDescriptors.some((entry) => entry.command_path === selectedCommand)\n ) {\n actionDescriptors.push({\n action: packageOwnedActionForCommand(selectedCommand),\n provider: \"extension\",\n requires_extension: true,\n command_path: selectedCommand,\n });\n }\n const actionNames = new Set(actionDescriptors.map((entry) => entry.action));\n if (selectedAction && !actionNames.has(selectedAction)) {\n throw new PmCliError(\n `Unknown action: \"${options.action}\".`,\n EXIT_CODE.USAGE,\n );\n }\n\n const commandCatalog = [\n ...new Set([\n ...PM_CORE_COMMAND_NAMES.filter(\n (entry) => !PACKAGE_OWNED_COMMANDS.has(entry),\n ),\n ...[...CORE_COMMAND_FLAG_CONTRACTS_BY_COMMAND.keys()].filter(\n (entry) => !PACKAGE_OWNED_COMMANDS.has(entry),\n ),\n ...actionDescriptors.flatMap((entry) =>\n entry.command_path ? splitCommandPathAliases(entry.command_path) : [],\n ),\n ...mergedExtensionContracts.flatMap((entry) => entry.command.split(\"|\")),\n ]),\n ]\n .map((entry) => normalizeCommandPath(entry))\n .filter((entry) => entry.length > 0)\n .sort((left, right) => left.localeCompare(right));\n const commandNames = new Set(commandCatalog);\n if (selectedCommand && !commandNames.has(selectedCommand)) {\n const packageHint = PACKAGE_OWNED_COMMAND_INSTALL_HINTS.get(selectedCommand);\n if (packageHint) {\n throw new PmCliError(\n `Unknown command: \"${options.command}\". Command \"${selectedCommand}\" is provided by the optional \"${packageHint}\" package. Run \"pm install ${packageHint} --project\" and retry.`,\n EXIT_CODE.USAGE,\n {\n code: \"unknown_command\",\n required: `Install the optional \"${packageHint}\" package, or choose a command from pm contracts --flags-only --json.`,\n why: \"Command contracts include core commands plus commands registered by active packages and extensions.\",\n examples: [`pm install ${packageHint} --project`, `pm contracts --command ${selectedCommand} --flags-only --json`],\n nextSteps: [`Install the optional package first: pm install ${packageHint} --project`],\n recovery: {\n suggested_retry: `pm install ${packageHint} --project`,\n },\n },\n );\n }\n throw new PmCliError(\n `Unknown command: \"${options.command}\".`,\n EXIT_CODE.USAGE,\n {\n code: \"unknown_command\",\n required: \"Use a command path listed by pm contracts --flags-only --json.\",\n why: \"Command contracts are generated from the active core, package, and extension command registry.\",\n examples: [\"pm contracts --flags-only --json\", \"pm --help\"],\n nextSteps: [\"Verify spelling and active packages/extensions, then rerun with a known command path.\"],\n recovery: {\n suggested_retry: \"pm contracts --flags-only --json\",\n },\n },\n );\n }\n const selectedPackageOwnedAction = selectedCommand\n ? PACKAGE_OWNED_COMMAND_ACTIONS.get(selectedCommand)\n : undefined;\n const commandScopedDescriptors = selectedCommand\n ? actionDescriptors.filter((descriptor) =>\n selectedPackageOwnedAction\n ? descriptor.action === selectedPackageOwnedAction\n : actionDescriptorMatchesSelectedCommand(descriptor, selectedCommand),\n )\n : actionDescriptors;\n if (\n selectedCommand &&\n selectedAction &&\n !commandScopedDescriptors.some(\n (descriptor) => descriptor.action === selectedAction,\n )\n ) {\n throw new PmCliError(\n `Action \"${options.action}\" is not mapped to command \"${options.command}\" in contracts output.`,\n EXIT_CODE.USAGE,\n );\n }\n\n const schema = PM_TOOL_PARAMETERS_SCHEMA as Record<string, unknown>;\n const schemaBranches = extractActionBranches(schema);\n const schemaActionSet = new Set(\n schemaBranches\n .map((entry) => {\n const properties = entry.properties;\n if (typeof properties !== \"object\" || properties === null) {\n return null;\n }\n const actionProperty = (properties as Record<string, unknown>).action;\n if (typeof actionProperty !== \"object\" || actionProperty === null) {\n return null;\n }\n const actionConst = (actionProperty as { const?: unknown }).const;\n return typeof actionConst === \"string\" ? actionConst : null;\n })\n .filter((entry): entry is string => entry !== null),\n );\n const extensionBranches = mergedExtensionContracts\n .filter((contract) => !schemaActionSet.has(contract.action))\n .map((contract) => buildExtensionActionSchemaBranch(contract));\n const mergedSchema =\n extensionBranches.length > 0\n ? {\n ...schema,\n oneOf: [...schemaBranches, ...extensionBranches],\n }\n : schema;\n\n const scopedActionDescriptors = selectedAction\n ? commandScopedDescriptors.filter(\n (descriptor) => descriptor.action === selectedAction,\n )\n : commandScopedDescriptors;\n const allActionAvailability = [\n ...new Map(\n scopedActionDescriptors\n .map((descriptor) => resolveActionAvailability(descriptor, runtimeProbe))\n .map((entry) => [\n selectedPackageOwnedAction ? entry.action : `${entry.action}|${entry.command_path ?? \"\"}`,\n entry,\n ] as const),\n ).values(),\n ];\n const actionAvailability =\n runtimeOnly && !selectedAction && !availabilityOnly\n ? allActionAvailability.filter((entry) => entry.invocable)\n : allActionAvailability;\n const actions = [...new Set(actionAvailability.map((entry) => entry.action))];\n const descriptorActionSet = new Set(\n actionDescriptors.map((descriptor) => descriptor.action),\n );\n let filteredSchema = selectedAction\n ? filterSchemaByAction(mergedSchema, selectedAction)\n : selectedCommand\n ? filterSchemaByActions(\n mergedSchema,\n new Set(\n scopedActionDescriptors.map((descriptor) => descriptor.action),\n ),\n )\n : filterSchemaByActions(mergedSchema, descriptorActionSet);\n if (runtimeOnly && !selectedAction) {\n filteredSchema = filterSchemaByActions(filteredSchema, new Set(actions));\n }\n const includeSchemaSurface = !flagsOnly && !availabilityOnly;\n if (includeSchemaSurface) {\n filteredSchema = attachCreateRequiredOptionContracts(\n filteredSchema,\n createRequiredOptionContracts,\n );\n }\n const commands =\n selectedCommand !== undefined\n ? [selectedCommand]\n : selectedAction\n ? resolveScopedCommandsFromActionDescriptors(\n scopedActionDescriptors,\n commandCatalog,\n )\n : commandCatalog;\n const outputCommands =\n flagsOnly && selectedCommand === undefined && selectedAction === undefined\n ? compactCommandAliasSurface(commands)\n : commands;\n const commandAliases = buildCommandAliasSurface(commands);\n const extensionCommandContracts = selectedCommand\n ? extensionContracts.filter((entry) => entry.command === selectedCommand)\n : selectedAction\n ? extensionContracts.filter((entry) =>\n outputCommands.includes(normalizeCommandPath(entry.command)),\n )\n : extensionContracts;\n\n const includeRuntimeContractSections = !(flagsOnly && !fullOutput);\n const result: ContractsResult = {\n schema_version:\n typeof mergedSchema[\"x-schema-version\"] === \"string\"\n ? (mergedSchema[\"x-schema-version\"] as string)\n : null,\n schema_id:\n typeof mergedSchema.$id === \"string\"\n ? (mergedSchema.$id as string)\n : null,\n selected: {\n action: selectedAction ?? null,\n command: selectedCommand ?? null,\n schema_only: schemaOnly,\n flags_only: flagsOnly,\n availability_only: availabilityOnly,\n runtime_only: runtimeOnly,\n command_scoped: selectedCommand !== undefined,\n },\n commands: outputCommands,\n };\n\n if (includeRuntimeContractSections) {\n result.runtime_schema = {\n statuses: statusRegistry.definitions.map((definition) => definition.id),\n open_status: statusRegistry.open_status,\n close_status: statusRegistry.close_status,\n canceled_status: statusRegistry.canceled_status,\n types: [...typeRegistry.types],\n fields_by_command: Object.fromEntries(\n [...runtimeFieldRegistry.command_to_fields.entries()].map(\n ([command, definitions]) => [\n command,\n [\n ...new Set(\n definitions.map((definition) => `--${definition.cli_flag}`),\n ),\n ].sort((left, right) => left.localeCompare(right)),\n ],\n ),\n ),\n };\n result.extension_contracts = {\n capabilities: [...PM_EXTENSION_CAPABILITY_CONTRACTS],\n services: [...PM_EXTENSION_SERVICE_NAME_CONTRACTS],\n policy_modes: [...PM_EXTENSION_POLICY_MODE_CONTRACTS],\n policy_surfaces: [...PM_EXTENSION_POLICY_SURFACE_CONTRACTS],\n trust_modes: [...PM_EXTENSION_TRUST_MODE_CONTRACTS],\n sandbox_profiles: [...PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS],\n manifest_versions: [1, 2],\n compatibility: {\n current: \"v2\",\n previous: [\"v1\"],\n breaking_strategy: \"versioned_breaking\",\n },\n };\n }\n\n if (!flagsOnly) {\n result.actions = actions;\n result.action_availability = actionAvailability;\n }\n\n if (includeSchemaSurface && !omitUnfilteredSchema) {\n result.schema = filteredSchema;\n result.extension_commands = extensionCommandContracts;\n } else if (includeSchemaSurface && omitUnfilteredSchema) {\n result.schema_omitted_reason = \"unfiltered_default_brief\";\n result.extension_commands = extensionCommandContracts;\n }\n\n if (!schemaOnly && !availabilityOnly) {\n if (!omitUnfilteredCommandFlags) {\n result.command_flags = buildCommandFlagSurface(\n outputCommands,\n extensionFlagMap,\n runtimeFieldFlagMap,\n );\n } else {\n result.command_flags_omitted_reason = \"unfiltered_default_brief\";\n }\n if (commandAliases.length > 0) {\n result.command_aliases = commandAliases;\n }\n }\n\n if (!schemaOnly && !flagsOnly && !availabilityOnly) {\n if (!omitUnfilteredCommanderAliases) {\n result.commander_aliases = buildCommanderAliasSurface();\n } else {\n result.commander_aliases_omitted_reason = \"unfiltered_default_brief\";\n }\n }\n\n return result;\n}\n"],"names":[],"mappings":"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","debugId":"6f013070-45a6-59da-9a3f-d7582c1bc681"}
@@ -0,0 +1,27 @@
1
+ import {
2
+ parseDocs,
3
+ parseFiles,
4
+ parseLogSeed,
5
+ parseTests,
6
+ runCreate
7
+ } from "./chunk-OUF3ARDX.js";
8
+ import "./chunk-Y2AKE2HS.js";
9
+ import "./chunk-CJDQB2ED.js";
10
+ import "./chunk-XX5LRINW.js";
11
+ import "./chunk-KK6YPGH3.js";
12
+ import "./chunk-HZOS2UG5.js";
13
+ import "./chunk-3HUE7XOF.js";
14
+ import "./chunk-XG7RJYHV.js";
15
+ import "./chunk-KA24HME7.js";
16
+ import "./chunk-HPH6X4ZZ.js";
17
+ import "./chunk-4PJQSECJ.js";
18
+ import "./chunk-RANZIID5.js";
19
+ import "./chunk-SRVKTWPR.js";
20
+ export {
21
+ parseDocs,
22
+ parseFiles,
23
+ parseLogSeed,
24
+ parseTests,
25
+ runCreate
26
+ };
27
+ //# sourceMappingURL=create-ATONSAZW.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,31 @@
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]="45eac7fa-f181-5cca-93b7-cfb58909dbb3")}catch(e){}}();
3
+ import {
4
+ parseDocs,
5
+ parseFiles,
6
+ parseLogSeed,
7
+ parseTests,
8
+ runCreate
9
+ } from "./chunk-ZRVSMOMR.js";
10
+ import "./chunk-KCMIYKTA.js";
11
+ import "./chunk-O5IBJE6S.js";
12
+ import "./chunk-MISYRLEP.js";
13
+ import "./chunk-26KTVXJW.js";
14
+ import "./chunk-AXXKLVTW.js";
15
+ import "./chunk-LXYVKYMQ.js";
16
+ import "./chunk-CWT53EYT.js";
17
+ import "./chunk-SSFMJCPF.js";
18
+ import "./chunk-KBG47ZOY.js";
19
+ import "./chunk-SZQCER6S.js";
20
+ import "./chunk-NQP3ECKF.js";
21
+ import "./chunk-4LTBNUYT.js";
22
+ export {
23
+ parseDocs,
24
+ parseFiles,
25
+ parseLogSeed,
26
+ parseTests,
27
+ runCreate
28
+ };
29
+ //# sourceMappingURL=create-WYFKN2U4.js.map
30
+
31
+ //# debugId=45eac7fa-f181-5cca-93b7-cfb58909dbb3
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","debugId":"45eac7fa-f181-5cca-93b7-cfb58909dbb3"}
@@ -0,0 +1,58 @@
1
+ import {
2
+ resolveAuthor
3
+ } from "./chunk-O7IWB35H.js";
4
+ import {
5
+ deleteItem,
6
+ toItemRecord
7
+ } from "./chunk-XG7RJYHV.js";
8
+ import "./chunk-KA24HME7.js";
9
+ import "./chunk-HPH6X4ZZ.js";
10
+ import "./chunk-4PJQSECJ.js";
11
+ import "./chunk-RANZIID5.js";
12
+ import {
13
+ EXIT_CODE,
14
+ PmCliError,
15
+ getSettingsPath,
16
+ pathExists,
17
+ readSettings,
18
+ resolvePmRoot
19
+ } from "./chunk-SRVKTWPR.js";
20
+
21
+ // dist/cli/commands/delete.js
22
+ import path from "node:path";
23
+ !(function() {
24
+ try {
25
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
26
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "dde4c802-3d48-5847-b800-0994d53218fd");
27
+ } catch (e2) {
28
+ }
29
+ })();
30
+ async function runDelete(id, options, global2) {
31
+ const pmRoot = resolvePmRoot(process.cwd(), global2.path);
32
+ if (!await pathExists(getSettingsPath(pmRoot))) {
33
+ throw new PmCliError(`Tracker is not initialized at ${pmRoot}. Run pm init first.`, EXIT_CODE.NOT_FOUND);
34
+ }
35
+ const settings = await readSettings(pmRoot);
36
+ const author = resolveAuthor(options.author, settings.author_default);
37
+ const result = await deleteItem({
38
+ pmRoot,
39
+ settings,
40
+ id,
41
+ author,
42
+ message: options.message,
43
+ force: options.force,
44
+ dryRun: options.dryRun
45
+ });
46
+ const targetPath = result.targetPath ? path.relative(pmRoot, result.targetPath).split(path.sep).join("/") : void 0;
47
+ return {
48
+ item: toItemRecord(result.item),
49
+ changed_fields: result.changedFields,
50
+ dry_run: options.dryRun === true,
51
+ ...targetPath ? { target_path: targetPath } : {},
52
+ warnings: result.warnings
53
+ };
54
+ }
55
+ export {
56
+ runDelete
57
+ };
58
+ //# sourceMappingURL=delete-RONNH4F4.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../../cli/commands/delete.ts"],
4
+ "sourcesContent": ["import path from \"node:path\";\nimport { pathExists } from \"../../core/fs/fs-utils.js\";\nimport { EXIT_CODE } from \"../../core/shared/constants.js\";\nimport type { GlobalOptions } from \"../../core/shared/command-types.js\";\nimport { PmCliError } from \"../../core/shared/errors.js\";\nimport { toItemRecord } from \"../../core/item/item-record.js\";\nimport { deleteItem } from \"../../core/store/item-store.js\";\nimport { getSettingsPath, resolvePmRoot } from \"../../core/store/paths.js\";\nimport { readSettings } from \"../../core/store/settings.js\";\nimport { resolveAuthor } from \"../../core/shared/author.js\";\n\nexport interface DeleteCommandOptions {\n author?: string;\n message?: string;\n force?: boolean;\n dryRun?: boolean;\n}\n\nexport interface DeleteResult {\n item: Record<string, unknown>;\n changed_fields: string[];\n dry_run: boolean;\n target_path?: string;\n warnings: string[];\n}\n\nexport async function runDelete(id: string, options: DeleteCommandOptions, global: GlobalOptions): Promise<DeleteResult> {\n const pmRoot = resolvePmRoot(process.cwd(), global.path);\n if (!(await pathExists(getSettingsPath(pmRoot)))) {\n throw new PmCliError(`Tracker is not initialized at ${pmRoot}. Run pm init first.`, EXIT_CODE.NOT_FOUND);\n }\n\n const settings = await readSettings(pmRoot);\n const author = resolveAuthor(options.author, settings.author_default);\n\n const result = await deleteItem({\n pmRoot,\n settings,\n id,\n author,\n message: options.message,\n force: options.force,\n dryRun: options.dryRun,\n });\n const targetPath = result.targetPath ? path.relative(pmRoot, result.targetPath).split(path.sep).join(\"/\") : undefined;\n\n return {\n item: toItemRecord(result.item),\n changed_fields: result.changedFields,\n dry_run: options.dryRun === true,\n ...(targetPath ? { target_path: targetPath } : {}),\n warnings: result.warnings,\n };\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,UAAU;;;;;;;;AA0BjB,eAAsB,UAAU,IAAY,SAA+BA,SAAqB;AAC9F,QAAM,SAAS,cAAc,QAAQ,IAAG,GAAIA,QAAO,IAAI;AACvD,MAAI,CAAE,MAAM,WAAW,gBAAgB,MAAM,CAAC,GAAI;AAChD,UAAM,IAAI,WAAW,iCAAiC,MAAM,wBAAwB,UAAU,SAAS;EACzG;AAEA,QAAM,WAAW,MAAM,aAAa,MAAM;AAC1C,QAAM,SAAS,cAAc,QAAQ,QAAQ,SAAS,cAAc;AAEpE,QAAM,SAAS,MAAM,WAAW;IAC9B;IACA;IACA;IACA;IACA,SAAS,QAAQ;IACjB,OAAO,QAAQ;IACf,QAAQ,QAAQ;GACjB;AACD,QAAM,aAAa,OAAO,aAAa,KAAK,SAAS,QAAQ,OAAO,UAAU,EAAE,MAAM,KAAK,GAAG,EAAE,KAAK,GAAG,IAAI;AAE5G,SAAO;IACL,MAAM,aAAa,OAAO,IAAI;IAC9B,gBAAgB,OAAO;IACvB,SAAS,QAAQ,WAAW;IAC5B,GAAI,aAAa,EAAE,aAAa,WAAU,IAAK,CAAA;IAC/C,UAAU,OAAO;;AAErB;",
6
+ "names": ["global"]
7
+ }
@@ -0,0 +1,55 @@
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]="6251a40d-ca0d-55b9-8ec0-960064565032")}catch(e){}}();
3
+ import {
4
+ resolveAuthor
5
+ } from "./chunk-J27KIHTG.js";
6
+ import {
7
+ deleteItem,
8
+ toItemRecord
9
+ } from "./chunk-CWT53EYT.js";
10
+ import "./chunk-SSFMJCPF.js";
11
+ import "./chunk-KBG47ZOY.js";
12
+ import "./chunk-SZQCER6S.js";
13
+ import "./chunk-NQP3ECKF.js";
14
+ import {
15
+ EXIT_CODE,
16
+ PmCliError,
17
+ getSettingsPath,
18
+ pathExists,
19
+ readSettings,
20
+ resolvePmRoot
21
+ } from "./chunk-4LTBNUYT.js";
22
+
23
+ // dist/cli/commands/delete.js
24
+ import path from "node:path";
25
+ async function runDelete(id, options, global) {
26
+ const pmRoot = resolvePmRoot(process.cwd(), global.path);
27
+ if (!await pathExists(getSettingsPath(pmRoot))) {
28
+ throw new PmCliError(`Tracker is not initialized at ${pmRoot}. Run pm init first.`, EXIT_CODE.NOT_FOUND);
29
+ }
30
+ const settings = await readSettings(pmRoot);
31
+ const author = resolveAuthor(options.author, settings.author_default);
32
+ const result = await deleteItem({
33
+ pmRoot,
34
+ settings,
35
+ id,
36
+ author,
37
+ message: options.message,
38
+ force: options.force,
39
+ dryRun: options.dryRun
40
+ });
41
+ const targetPath = result.targetPath ? path.relative(pmRoot, result.targetPath).split(path.sep).join("/") : void 0;
42
+ return {
43
+ item: toItemRecord(result.item),
44
+ changed_fields: result.changedFields,
45
+ dry_run: options.dryRun === true,
46
+ ...targetPath ? { target_path: targetPath } : {},
47
+ warnings: result.warnings
48
+ };
49
+ }
50
+ export {
51
+ runDelete
52
+ };
53
+ //# sourceMappingURL=delete-ZXWC56WO.js.map
54
+
55
+ //# debugId=6251a40d-ca0d-55b9-8ec0-960064565032
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../cli/commands/delete.ts"],"sourcesContent":["import path from \"node:path\";\nimport { pathExists } from \"../../core/fs/fs-utils.js\";\nimport { EXIT_CODE } from \"../../core/shared/constants.js\";\nimport type { GlobalOptions } from \"../../core/shared/command-types.js\";\nimport { PmCliError } from \"../../core/shared/errors.js\";\nimport { toItemRecord } from \"../../core/item/item-record.js\";\nimport { deleteItem } from \"../../core/store/item-store.js\";\nimport { getSettingsPath, resolvePmRoot } from \"../../core/store/paths.js\";\nimport { readSettings } from \"../../core/store/settings.js\";\nimport { resolveAuthor } from \"../../core/shared/author.js\";\n\nexport interface DeleteCommandOptions {\n author?: string;\n message?: string;\n force?: boolean;\n dryRun?: boolean;\n}\n\nexport interface DeleteResult {\n item: Record<string, unknown>;\n changed_fields: string[];\n dry_run: boolean;\n target_path?: string;\n warnings: string[];\n}\n\nexport async function runDelete(id: string, options: DeleteCommandOptions, global: GlobalOptions): Promise<DeleteResult> {\n const pmRoot = resolvePmRoot(process.cwd(), global.path);\n if (!(await pathExists(getSettingsPath(pmRoot)))) {\n throw new PmCliError(`Tracker is not initialized at ${pmRoot}. Run pm init first.`, EXIT_CODE.NOT_FOUND);\n }\n\n const settings = await readSettings(pmRoot);\n const author = resolveAuthor(options.author, settings.author_default);\n\n const result = await deleteItem({\n pmRoot,\n settings,\n id,\n author,\n message: options.message,\n force: options.force,\n dryRun: options.dryRun,\n });\n const targetPath = result.targetPath ? path.relative(pmRoot, result.targetPath).split(path.sep).join(\"/\") : undefined;\n\n return {\n item: toItemRecord(result.item),\n changed_fields: result.changedFields,\n dry_run: options.dryRun === true,\n ...(targetPath ? { target_path: targetPath } : {}),\n warnings: result.warnings,\n };\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,UAAU;AA0BjB,eAAsB,UAAU,IAAY,SAA+B,QAAqB;AAC9F,QAAM,SAAS,cAAc,QAAQ,IAAG,GAAI,OAAO,IAAI;AACvD,MAAI,CAAE,MAAM,WAAW,gBAAgB,MAAM,CAAC,GAAI;AAChD,UAAM,IAAI,WAAW,iCAAiC,MAAM,wBAAwB,UAAU,SAAS;EACzG;AAEA,QAAM,WAAW,MAAM,aAAa,MAAM;AAC1C,QAAM,SAAS,cAAc,QAAQ,QAAQ,SAAS,cAAc;AAEpE,QAAM,SAAS,MAAM,WAAW;IAC9B;IACA;IACA;IACA;IACA,SAAS,QAAQ;IACjB,OAAO,QAAQ;IACf,QAAQ,QAAQ;GACjB;AACD,QAAM,aAAa,OAAO,aAAa,KAAK,SAAS,QAAQ,OAAO,UAAU,EAAE,MAAM,KAAK,GAAG,EAAE,KAAK,GAAG,IAAI;AAE5G,SAAO;IACL,MAAM,aAAa,OAAO,IAAI;IAC9B,gBAAgB,OAAO;IACvB,SAAS,QAAQ,WAAW;IAC5B,GAAI,aAAa,EAAE,aAAa,WAAU,IAAK,CAAA;IAC/C,UAAU,OAAO;;AAErB","debugId":"6251a40d-ca0d-55b9-8ec0-960064565032"}
@@ -0,0 +1,225 @@
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]="6da7beb3-25f2-5c8f-9186-6c5066ef02c8")}catch(e){}}();
3
+ import {
4
+ listAllFrontMatterLight
5
+ } from "./chunk-CWT53EYT.js";
6
+ import "./chunk-SSFMJCPF.js";
7
+ import "./chunk-KBG47ZOY.js";
8
+ import {
9
+ resolveItemTypeRegistry
10
+ } from "./chunk-SZQCER6S.js";
11
+ import "./chunk-NQP3ECKF.js";
12
+ import {
13
+ EXIT_CODE,
14
+ PmCliError,
15
+ getActiveExtensionRegistrations,
16
+ getSettingsPath,
17
+ pathExists,
18
+ readSettings,
19
+ resolvePmRoot
20
+ } from "./chunk-4LTBNUYT.js";
21
+
22
+ // dist/cli/commands/deps.js
23
+ var DEPS_FORMAT_VALUES = ["tree", "graph"];
24
+ var DEPS_COLLAPSE_VALUES = ["none", "repeated"];
25
+ function parseFormat(raw) {
26
+ const candidate = raw?.trim().toLowerCase() ?? "tree";
27
+ if (DEPS_FORMAT_VALUES.includes(candidate)) {
28
+ return candidate;
29
+ }
30
+ throw new PmCliError(`Invalid --format value "${raw}". Use "tree" or "graph".`, EXIT_CODE.USAGE);
31
+ }
32
+ function parseMaxDepth(raw) {
33
+ if (raw === void 0) {
34
+ return void 0;
35
+ }
36
+ const normalized = typeof raw === "number" ? raw : Number(raw.trim());
37
+ if (!Number.isInteger(normalized) || normalized < 0) {
38
+ throw new PmCliError(`Invalid --max-depth value "${raw}". Use a non-negative integer.`, EXIT_CODE.USAGE);
39
+ }
40
+ return normalized;
41
+ }
42
+ function parseCollapse(raw) {
43
+ const candidate = raw?.trim().toLowerCase() ?? "none";
44
+ if (DEPS_COLLAPSE_VALUES.includes(candidate)) {
45
+ return candidate;
46
+ }
47
+ throw new PmCliError(`Invalid --collapse value "${raw}". Use "none" or "repeated".`, EXIT_CODE.USAGE);
48
+ }
49
+ function normalizeDependencies(dependencies) {
50
+ if (!dependencies || dependencies.length === 0) {
51
+ return [];
52
+ }
53
+ const sorted = [...dependencies].sort((left, right) => {
54
+ const byKind = left.kind.localeCompare(right.kind);
55
+ if (byKind !== 0)
56
+ return byKind;
57
+ const byId = left.id.localeCompare(right.id);
58
+ if (byId !== 0)
59
+ return byId;
60
+ return left.created_at.localeCompare(right.created_at);
61
+ });
62
+ const deduped = /* @__PURE__ */ new Map();
63
+ for (const dependency of sorted) {
64
+ const key = `${dependency.kind}::${dependency.id}`;
65
+ if (!deduped.has(key)) {
66
+ deduped.set(key, dependency);
67
+ }
68
+ }
69
+ return [...deduped.values()];
70
+ }
71
+ function toIndexedItem(item) {
72
+ return {
73
+ id: item.id,
74
+ title: item.title,
75
+ type: item.type,
76
+ status: item.status,
77
+ dependencies: normalizeDependencies(item.dependencies)
78
+ };
79
+ }
80
+ function toTreeNode(id, index, lineage, maxDepth, collapse, expanded, depth = 0, via) {
81
+ const item = index.get(id);
82
+ const baseNode = {
83
+ id,
84
+ title: item?.title,
85
+ type: item?.type,
86
+ status: item?.status,
87
+ via,
88
+ missing: !item,
89
+ cycle: lineage.has(id),
90
+ dependencies: []
91
+ };
92
+ if (!item || baseNode.cycle) {
93
+ return baseNode;
94
+ }
95
+ if (maxDepth !== void 0 && depth >= maxDepth) {
96
+ if (item.dependencies.length > 0) {
97
+ baseNode.truncated = true;
98
+ }
99
+ return baseNode;
100
+ }
101
+ if (collapse === "repeated" && expanded.has(id)) {
102
+ baseNode.collapsed = true;
103
+ return baseNode;
104
+ }
105
+ if (collapse === "repeated") {
106
+ expanded.add(id);
107
+ }
108
+ const nextLineage = new Set(lineage);
109
+ nextLineage.add(id);
110
+ baseNode.dependencies = item.dependencies.map((dependency) => toTreeNode(dependency.id, index, nextLineage, maxDepth, collapse, expanded, depth + 1, dependency.kind));
111
+ return baseNode;
112
+ }
113
+ function mergeGraphNode(existing, candidate) {
114
+ if (!existing) {
115
+ return candidate;
116
+ }
117
+ if (existing.missing && !candidate.missing) {
118
+ return candidate;
119
+ }
120
+ return {
121
+ ...existing,
122
+ title: existing.title ?? candidate.title,
123
+ type: existing.type ?? candidate.type,
124
+ status: existing.status ?? candidate.status
125
+ };
126
+ }
127
+ function toGraph(root) {
128
+ const nodesById = /* @__PURE__ */ new Map();
129
+ const edgesByKey = /* @__PURE__ */ new Map();
130
+ const visit = (node) => {
131
+ nodesById.set(node.id, mergeGraphNode(nodesById.get(node.id), {
132
+ id: node.id,
133
+ title: node.title,
134
+ type: node.type,
135
+ status: node.status,
136
+ missing: node.missing
137
+ }));
138
+ for (const child of node.dependencies) {
139
+ nodesById.set(child.id, mergeGraphNode(nodesById.get(child.id), {
140
+ id: child.id,
141
+ title: child.title,
142
+ type: child.type,
143
+ status: child.status,
144
+ missing: child.missing
145
+ }));
146
+ const relationKind = child.via ?? "related";
147
+ const edgeKey = `${node.id}::${child.id}::${relationKind}`;
148
+ if (!edgesByKey.has(edgeKey)) {
149
+ edgesByKey.set(edgeKey, {
150
+ from: node.id,
151
+ to: child.id,
152
+ kind: relationKind
153
+ });
154
+ }
155
+ if (!child.cycle) {
156
+ visit(child);
157
+ }
158
+ }
159
+ };
160
+ visit(root);
161
+ const nodes = [...nodesById.values()].sort((left, right) => left.id.localeCompare(right.id));
162
+ const edges = [...edgesByKey.values()].sort((left, right) => {
163
+ const byFrom = left.from.localeCompare(right.from);
164
+ if (byFrom !== 0)
165
+ return byFrom;
166
+ const byTo = left.to.localeCompare(right.to);
167
+ if (byTo !== 0)
168
+ return byTo;
169
+ return left.kind.localeCompare(right.kind);
170
+ });
171
+ const missingIds = nodes.filter((node) => node.missing).map((node) => node.id);
172
+ return {
173
+ root_id: root.id,
174
+ nodes,
175
+ edges,
176
+ missing_ids: missingIds
177
+ };
178
+ }
179
+ async function runDeps(id, options, global) {
180
+ const pmRoot = resolvePmRoot(process.cwd(), global.path);
181
+ if (!await pathExists(getSettingsPath(pmRoot))) {
182
+ throw new PmCliError(`Tracker is not initialized at ${pmRoot}. Run pm init first.`, EXIT_CODE.NOT_FOUND);
183
+ }
184
+ const format = parseFormat(options.format);
185
+ const maxDepth = parseMaxDepth(options.maxDepth);
186
+ const collapse = parseCollapse(options.collapse);
187
+ const summaryOnly = options.summary === true;
188
+ const settings = await readSettings(pmRoot);
189
+ const typeRegistry = resolveItemTypeRegistry(settings, getActiveExtensionRegistrations());
190
+ const items = await listAllFrontMatterLight(pmRoot, settings.item_format, typeRegistry.type_to_folder, void 0, settings.schema);
191
+ const index = new Map(items.map((item) => [item.id, toIndexedItem(item)]));
192
+ if (!index.has(id)) {
193
+ throw new PmCliError(`Item ${id} not found`, EXIT_CODE.NOT_FOUND);
194
+ }
195
+ const tree = toTreeNode(id, index, /* @__PURE__ */ new Set(), maxDepth, collapse, /* @__PURE__ */ new Set());
196
+ const graph = toGraph(tree);
197
+ const baseResult = {
198
+ id,
199
+ format,
200
+ node_count: graph.nodes.length,
201
+ edge_count: graph.edges.length,
202
+ missing_count: graph.missing_ids.length
203
+ };
204
+ if (summaryOnly) {
205
+ return baseResult;
206
+ }
207
+ if (format === "tree") {
208
+ return {
209
+ ...baseResult,
210
+ tree
211
+ };
212
+ }
213
+ return {
214
+ ...baseResult,
215
+ graph
216
+ };
217
+ }
218
+ export {
219
+ DEPS_COLLAPSE_VALUES,
220
+ DEPS_FORMAT_VALUES,
221
+ runDeps
222
+ };
223
+ //# sourceMappingURL=deps-EHXIFOZR.js.map
224
+
225
+ //# debugId=6da7beb3-25f2-5c8f-9186-6c5066ef02c8