@unbrained/pm-cli 2026.7.5 → 2026.7.7

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 (597) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/dist/cli/commands/annotation-command.d.ts +1 -0
  3. package/dist/cli/commands/annotation-command.js +29 -2
  4. package/dist/cli/commands/annotation-command.js.map +1 -1
  5. package/dist/cli/commands/comments.js +3 -4
  6. package/dist/cli/commands/comments.js.map +1 -1
  7. package/dist/cli/commands/extension/bundled-catalog.d.ts +3 -0
  8. package/dist/cli/commands/extension/bundled-catalog.js +38 -28
  9. package/dist/cli/commands/extension/bundled-catalog.js.map +1 -1
  10. package/dist/cli/commands/extension/install-sources.js +81 -18
  11. package/dist/cli/commands/extension/install-sources.js.map +1 -1
  12. package/dist/cli/commands/health.js +9 -5
  13. package/dist/cli/commands/health.js.map +1 -1
  14. package/dist/cli/commands/learnings.js +5 -3
  15. package/dist/cli/commands/learnings.js.map +1 -1
  16. package/dist/cli/commands/notes.js +5 -3
  17. package/dist/cli/commands/notes.js.map +1 -1
  18. package/dist/cli/commands/reindex.js +4 -3
  19. package/dist/cli/commands/reindex.js.map +1 -1
  20. package/dist/cli/commands/search.js +3 -3
  21. package/dist/cli/commands/search.js.map +1 -1
  22. package/dist/cli/commands/test.d.ts +9 -0
  23. package/dist/cli/commands/test.js +144 -105
  24. package/dist/cli/commands/test.js.map +1 -1
  25. package/dist/cli/extension-command-help.js +10 -2
  26. package/dist/cli/extension-command-help.js.map +1 -1
  27. package/dist/cli/register-list-query.d.ts +1 -1
  28. package/dist/cli/register-list-query.js +18 -27
  29. package/dist/cli/register-list-query.js.map +1 -1
  30. package/dist/cli/register-operations.d.ts +0 -8
  31. package/dist/cli/register-operations.js +41 -46
  32. package/dist/cli/register-operations.js.map +1 -1
  33. package/dist/cli/register-setup.js +113 -13
  34. package/dist/cli/register-setup.js.map +1 -1
  35. package/dist/cli/registration-helpers.d.ts +5 -1
  36. package/dist/cli/registration-helpers.js +14 -2
  37. package/dist/cli/registration-helpers.js.map +1 -1
  38. package/dist/cli-bundle/chunks/append-F7WPGIQL.js +11 -0
  39. package/dist/cli-bundle/chunks/{contracts-OJEXMKVW.js → append-PVCTBVJG.js} +8 -9
  40. package/dist/cli-bundle/chunks/{chunk-PPE4YUQM.js → chunk-2APXX4TZ.js} +17 -28
  41. package/dist/cli-bundle/chunks/chunk-2APXX4TZ.js.map +1 -0
  42. package/dist/cli-bundle/chunks/{docs-S6UTOTO5.js → chunk-2LEJGRQ7.js} +3 -12
  43. package/dist/cli-bundle/chunks/{docs-S6UTOTO5.js.map → chunk-2LEJGRQ7.js.map} +1 -1
  44. package/dist/cli-bundle/chunks/{chunk-T3ABIMGW.js → chunk-2TILG6F2.js} +3 -3
  45. package/dist/cli-bundle/chunks/{chunk-S5AYOUT5.js → chunk-3G6UMXT3.js} +6 -8
  46. package/dist/cli-bundle/chunks/{chunk-S5AYOUT5.js.map → chunk-3G6UMXT3.js.map} +1 -1
  47. package/dist/cli-bundle/chunks/{chunk-RCT3YJOK.js → chunk-3TYOW6RR.js} +8 -8
  48. package/dist/cli-bundle/chunks/{chunk-3JZNEQBA.js → chunk-3X542TEY.js} +7 -7
  49. package/dist/cli-bundle/chunks/{history-repair-EVTO6LIH.js → chunk-42LXP4VO.js} +14 -21
  50. package/dist/cli-bundle/chunks/{history-repair-EVTO6LIH.js.map → chunk-42LXP4VO.js.map} +1 -1
  51. package/dist/cli-bundle/chunks/{chunk-5J2XPTAD.js → chunk-43SIHQND.js} +36 -15
  52. package/dist/cli-bundle/chunks/chunk-43SIHQND.js.map +7 -0
  53. package/dist/cli-bundle/chunks/{history-repair-4N6SDVHK.js → chunk-43UQN754.js} +12 -19
  54. package/dist/cli-bundle/chunks/{history-repair-4N6SDVHK.js.map → chunk-43UQN754.js.map} +1 -1
  55. package/dist/cli-bundle/chunks/{chunk-OWTIRHX4.js → chunk-43YSKY75.js} +4 -6
  56. package/dist/cli-bundle/chunks/{chunk-OWTIRHX4.js.map → chunk-43YSKY75.js.map} +1 -1
  57. package/dist/cli-bundle/chunks/{notes-72YXN5JX.js → chunk-4BKDAEDF.js} +6 -13
  58. package/dist/cli-bundle/chunks/{notes-72YXN5JX.js.map → chunk-4BKDAEDF.js.map} +2 -2
  59. package/dist/cli-bundle/chunks/{close-many-AP4MWU36.js → chunk-4IQKDKGE.js} +18 -32
  60. package/dist/cli-bundle/chunks/{close-many-AP4MWU36.js.map → chunk-4IQKDKGE.js.map} +1 -1
  61. package/dist/cli-bundle/chunks/{chunk-ZCJAA3JK.js → chunk-4MZOKTI2.js} +6 -8
  62. package/dist/cli-bundle/chunks/{chunk-ZCJAA3JK.js.map → chunk-4MZOKTI2.js.map} +1 -1
  63. package/dist/cli-bundle/chunks/{chunk-IJ6CO3JV.js → chunk-52NS7JDP.js} +14 -20
  64. package/dist/cli-bundle/chunks/{chunk-IJ6CO3JV.js.map → chunk-52NS7JDP.js.map} +1 -1
  65. package/dist/cli-bundle/chunks/{chunk-T3F4DF23.js → chunk-565WYS5W.js} +12 -16
  66. package/dist/cli-bundle/chunks/{chunk-T3F4DF23.js.map → chunk-565WYS5W.js.map} +1 -1
  67. package/dist/cli-bundle/chunks/{copy-OTJOWFL6.js → chunk-5FIQ4EX3.js} +13 -19
  68. package/dist/cli-bundle/chunks/{copy-OTJOWFL6.js.map → chunk-5FIQ4EX3.js.map} +1 -1
  69. package/dist/cli-bundle/chunks/{config-V57QD47V.js → chunk-6G6O3OPQ.js} +259 -41
  70. package/dist/cli-bundle/chunks/chunk-6G6O3OPQ.js.map +1 -0
  71. package/dist/cli-bundle/chunks/{chunk-K3AGVXSF.js → chunk-6LCJRGPD.js} +9 -13
  72. package/dist/cli-bundle/chunks/{chunk-K3AGVXSF.js.map → chunk-6LCJRGPD.js.map} +1 -1
  73. package/dist/cli-bundle/chunks/{chunk-7MDXZAZS.js → chunk-6UQCNWFV.js} +6 -8
  74. package/dist/cli-bundle/chunks/{chunk-7MDXZAZS.js.map → chunk-6UQCNWFV.js.map} +1 -1
  75. package/dist/cli-bundle/chunks/{chunk-LEKT4K7I.js → chunk-6XTSYPPO.js} +1216 -387
  76. package/dist/cli-bundle/chunks/chunk-6XTSYPPO.js.map +7 -0
  77. package/dist/cli-bundle/chunks/chunk-7ML7JONU.js +5434 -0
  78. package/dist/cli-bundle/chunks/chunk-7ML7JONU.js.map +1 -0
  79. package/dist/cli-bundle/chunks/{chunk-TSPKZRRW.js → chunk-7PNQA24K.js} +30 -36
  80. package/dist/cli-bundle/chunks/{chunk-TSPKZRRW.js.map → chunk-7PNQA24K.js.map} +1 -1
  81. package/dist/cli-bundle/chunks/{chunk-YOF5VPKM.js → chunk-7VQ3JJN5.js} +2 -2
  82. package/dist/cli-bundle/chunks/{chunk-BFVHCAOO.js → chunk-7Y5N34HX.js} +8 -12
  83. package/dist/cli-bundle/chunks/{chunk-BFVHCAOO.js.map → chunk-7Y5N34HX.js.map} +1 -1
  84. package/dist/cli-bundle/chunks/{chunk-P5TFTLWW.js → chunk-AGAVEDIE.js} +7 -7
  85. package/dist/cli-bundle/chunks/{chunk-YFIE7YK6.js → chunk-AJUON7E6.js} +3 -3
  86. package/dist/cli-bundle/chunks/{close-many-OMZIGZB4.js → chunk-ARKHKYYS.js} +16 -30
  87. package/dist/cli-bundle/chunks/{close-many-OMZIGZB4.js.map → chunk-ARKHKYYS.js.map} +1 -1
  88. package/dist/cli-bundle/chunks/{chunk-7EQNAZX2.js → chunk-C5ACVMOI.js} +99 -51
  89. package/dist/cli-bundle/chunks/chunk-C5ACVMOI.js.map +7 -0
  90. package/dist/cli-bundle/chunks/{chunk-PJ3A56YF.js → chunk-CJQM7O7R.js} +16 -20
  91. package/dist/cli-bundle/chunks/{chunk-PJ3A56YF.js.map → chunk-CJQM7O7R.js.map} +1 -1
  92. package/dist/cli-bundle/chunks/{chunk-WISPVC2E.js → chunk-D2DCTFTL.js} +7 -9
  93. package/dist/cli-bundle/chunks/{chunk-WISPVC2E.js.map → chunk-D2DCTFTL.js.map} +1 -1
  94. package/dist/cli-bundle/chunks/{append-CZGUZ45Q.js → chunk-DDDWVPID.js} +7 -11
  95. package/dist/cli-bundle/chunks/{append-CZGUZ45Q.js.map → chunk-DDDWVPID.js.map} +1 -1
  96. package/dist/cli-bundle/chunks/{learnings-2HTPZNGZ.js → chunk-DG6BSXZ7.js} +6 -13
  97. package/dist/cli-bundle/chunks/{learnings-2HTPZNGZ.js.map → chunk-DG6BSXZ7.js.map} +2 -2
  98. package/dist/cli-bundle/chunks/{chunk-7WYXBPYQ.js → chunk-DR2V5OIV.js} +3 -3
  99. package/dist/cli-bundle/chunks/{chunk-YQMMMONE.js → chunk-E3LWJUGF.js} +4 -6
  100. package/dist/cli-bundle/chunks/{chunk-YQMMMONE.js.map → chunk-E3LWJUGF.js.map} +1 -1
  101. package/dist/cli-bundle/chunks/{chunk-D3UCE7RW.js → chunk-E3YQFSFE.js} +6 -10
  102. package/dist/cli-bundle/chunks/{chunk-D3UCE7RW.js.map → chunk-E3YQFSFE.js.map} +1 -1
  103. package/dist/cli-bundle/chunks/{chunk-PDXT6Q55.js → chunk-EDO7VXSO.js} +2 -2
  104. package/dist/cli-bundle/chunks/{chunk-FDBARR33.js → chunk-EIUBK2LT.js} +12 -18
  105. package/dist/cli-bundle/chunks/{chunk-FDBARR33.js.map → chunk-EIUBK2LT.js.map} +1 -1
  106. package/dist/cli-bundle/chunks/{chunk-HBYZDSK5.js → chunk-EMXPI36L.js} +14 -20
  107. package/dist/cli-bundle/chunks/{chunk-HBYZDSK5.js.map → chunk-EMXPI36L.js.map} +1 -1
  108. package/dist/cli-bundle/chunks/{chunk-4OFLJHX6.js → chunk-EOUVR7JN.js} +13 -8
  109. package/dist/cli-bundle/chunks/chunk-EOUVR7JN.js.map +1 -0
  110. package/dist/cli-bundle/chunks/{chunk-FUM6UMY4.js → chunk-EVEPHNXJ.js} +4 -4
  111. package/dist/cli-bundle/chunks/{deps-L2FPIAD3.js → chunk-F6MT7KKE.js} +6 -10
  112. package/dist/cli-bundle/chunks/{deps-L2FPIAD3.js.map → chunk-F6MT7KKE.js.map} +1 -1
  113. package/dist/cli-bundle/chunks/{chunk-FGQKEDE4.js → chunk-F6YC2A6X.js} +7 -11
  114. package/dist/cli-bundle/chunks/{chunk-FGQKEDE4.js.map → chunk-F6YC2A6X.js.map} +1 -1
  115. package/dist/cli-bundle/chunks/chunk-FILL6BB2.js +5514 -0
  116. package/dist/cli-bundle/chunks/chunk-FILL6BB2.js.map +7 -0
  117. package/dist/cli-bundle/chunks/{chunk-RX3HQSYG.js → chunk-FN6SB4HU.js} +2 -2
  118. package/dist/cli-bundle/chunks/chunk-GH73UOSJ.js +5359 -0
  119. package/dist/cli-bundle/chunks/chunk-GH73UOSJ.js.map +1 -0
  120. package/dist/cli-bundle/chunks/{chunk-JLA7EVYV.js → chunk-GLS6VMWI.js} +37 -16
  121. package/dist/cli-bundle/chunks/chunk-GLS6VMWI.js.map +1 -0
  122. package/dist/cli-bundle/chunks/{files-JPU3FNJ7.js → chunk-GPIDUMMN.js} +10 -17
  123. package/dist/cli-bundle/chunks/{files-JPU3FNJ7.js.map → chunk-GPIDUMMN.js.map} +1 -1
  124. package/dist/cli-bundle/chunks/{history-compact-3F6VELO7.js → chunk-GTM5HQL4.js} +15 -21
  125. package/dist/cli-bundle/chunks/{history-compact-3F6VELO7.js.map → chunk-GTM5HQL4.js.map} +1 -1
  126. package/dist/cli-bundle/chunks/{chunk-DLQ4ZTCU.js → chunk-H2SMKL2N.js} +8 -8
  127. package/dist/cli-bundle/chunks/{chunk-S4APD35C.js → chunk-HHEWQXPD.js} +6 -6
  128. package/dist/cli-bundle/chunks/chunk-HHEWQXPD.js.map +7 -0
  129. package/dist/cli-bundle/chunks/{chunk-C3PMDWGX.js → chunk-HX6QXV5P.js} +2 -2
  130. package/dist/cli-bundle/chunks/{copy-LEE6P6EM.js → chunk-I74FMIWA.js} +11 -17
  131. package/dist/cli-bundle/chunks/{copy-LEE6P6EM.js.map → chunk-I74FMIWA.js.map} +1 -1
  132. package/dist/cli-bundle/chunks/chunk-IDIBF4E2.js +804 -0
  133. package/dist/cli-bundle/chunks/chunk-IDIBF4E2.js.map +7 -0
  134. package/dist/cli-bundle/chunks/{comments-SAG5LSKL.js → chunk-II7R6KD4.js} +9 -13
  135. package/dist/cli-bundle/chunks/{comments-SAG5LSKL.js.map → chunk-II7R6KD4.js.map} +1 -1
  136. package/dist/cli-bundle/chunks/chunk-J2VGADNG.js +10320 -0
  137. package/dist/cli-bundle/chunks/chunk-J2VGADNG.js.map +1 -0
  138. package/dist/cli-bundle/chunks/{chunk-Y76TWC45.js → chunk-J7BOLHAV.js} +5 -7
  139. package/dist/cli-bundle/chunks/{chunk-Y76TWC45.js.map → chunk-J7BOLHAV.js.map} +1 -1
  140. package/dist/cli-bundle/chunks/{chunk-QHZO65XW.js → chunk-KTGJ2CBU.js} +4 -6
  141. package/dist/cli-bundle/chunks/{chunk-QHZO65XW.js.map → chunk-KTGJ2CBU.js.map} +1 -1
  142. package/dist/cli-bundle/chunks/{chunk-5VVUKE3U.js → chunk-LCFJ7XAM.js} +32 -2
  143. package/dist/cli-bundle/chunks/{chunk-5VVUKE3U.js.map → chunk-LCFJ7XAM.js.map} +3 -3
  144. package/dist/cli-bundle/chunks/{chunk-YMABYTNG.js → chunk-LZQU6XJG.js} +28 -34
  145. package/dist/cli-bundle/chunks/{chunk-YMABYTNG.js.map → chunk-LZQU6XJG.js.map} +1 -1
  146. package/dist/cli-bundle/chunks/{chunk-3Y4OESPP.js → chunk-M62RO3XK.js} +10 -14
  147. package/dist/cli-bundle/chunks/{chunk-3Y4OESPP.js.map → chunk-M62RO3XK.js.map} +1 -1
  148. package/dist/cli-bundle/chunks/{chunk-YPPVU5GX.js → chunk-MCEUKJKW.js} +9 -11
  149. package/dist/cli-bundle/chunks/{chunk-YPPVU5GX.js.map → chunk-MCEUKJKW.js.map} +1 -1
  150. package/dist/cli-bundle/chunks/{chunk-T5Y3QSNF.js → chunk-MHNMCDWR.js} +1447 -86
  151. package/dist/cli-bundle/chunks/chunk-MHNMCDWR.js.map +1 -0
  152. package/dist/cli-bundle/chunks/{chunk-HJE4JTKQ.js → chunk-MRFWUSVA.js} +4 -6
  153. package/dist/cli-bundle/chunks/{chunk-HJE4JTKQ.js.map → chunk-MRFWUSVA.js.map} +1 -1
  154. package/dist/cli-bundle/chunks/{chunk-P3VRG72Q.js → chunk-N6ZHDLUY.js} +6 -8
  155. package/dist/cli-bundle/chunks/{chunk-P3VRG72Q.js.map → chunk-N6ZHDLUY.js.map} +1 -1
  156. package/dist/cli-bundle/chunks/{delete-HQKGRNRZ.js → chunk-NWWL22C7.js} +8 -12
  157. package/dist/cli-bundle/chunks/{delete-HQKGRNRZ.js.map → chunk-NWWL22C7.js.map} +1 -1
  158. package/dist/cli-bundle/chunks/{chunk-N6DNM2FA.js → chunk-P3MJJW7P.js} +2 -2
  159. package/dist/cli-bundle/chunks/{chunk-5JE6SMYS.js → chunk-PDXJXEZJ.js} +2 -2
  160. package/dist/cli-bundle/chunks/{append-NSQBCXZJ.js → chunk-Q64AYQYW.js} +9 -13
  161. package/dist/cli-bundle/chunks/{append-NSQBCXZJ.js.map → chunk-Q64AYQYW.js.map} +1 -1
  162. package/dist/cli-bundle/chunks/{update-many-SLLAMHT7.js → chunk-QDABF2RB.js} +26 -47
  163. package/dist/cli-bundle/chunks/{update-many-SLLAMHT7.js.map → chunk-QDABF2RB.js.map} +1 -1
  164. package/dist/cli-bundle/chunks/{chunk-NBFCNJ7Q.js → chunk-QFBSP3NI.js} +529 -46
  165. package/dist/cli-bundle/chunks/chunk-QFBSP3NI.js.map +1 -0
  166. package/dist/cli-bundle/chunks/{focus-LFZ6IDBR.js → chunk-RB3KLPAH.js} +11 -16
  167. package/dist/cli-bundle/chunks/{focus-LFZ6IDBR.js.map → chunk-RB3KLPAH.js.map} +1 -1
  168. package/dist/cli-bundle/chunks/{chunk-YSAH5FY5.js → chunk-RY7PTTUB.js} +94 -53
  169. package/dist/cli-bundle/chunks/chunk-RY7PTTUB.js.map +1 -0
  170. package/dist/cli-bundle/chunks/{chunk-WVSGSZ6J.js → chunk-S547WBYG.js} +1477 -86
  171. package/dist/cli-bundle/chunks/chunk-S547WBYG.js.map +7 -0
  172. package/dist/cli-bundle/chunks/{update-many-DC7X3EWM.js → chunk-S5BNGFN5.js} +24 -45
  173. package/dist/cli-bundle/chunks/{update-many-DC7X3EWM.js.map → chunk-S5BNGFN5.js.map} +1 -1
  174. package/dist/cli-bundle/chunks/{focus-WNMYCVYA.js → chunk-S6VC2A2K.js} +9 -14
  175. package/dist/cli-bundle/chunks/{focus-WNMYCVYA.js.map → chunk-S6VC2A2K.js.map} +1 -1
  176. package/dist/cli-bundle/chunks/{learnings-YBIHY3D6.js → chunk-SIM5JDON.js} +7 -14
  177. package/dist/cli-bundle/chunks/{learnings-YBIHY3D6.js.map → chunk-SIM5JDON.js.map} +1 -1
  178. package/dist/cli-bundle/chunks/{chunk-ZD34OFFQ.js → chunk-SY75LYXR.js} +12 -7
  179. package/dist/cli-bundle/chunks/chunk-SY75LYXR.js.map +7 -0
  180. package/dist/cli-bundle/chunks/{chunk-TT42JUMF.js → chunk-TEISGNSH.js} +7 -7
  181. package/dist/cli-bundle/chunks/chunk-TEISGNSH.js.map +1 -0
  182. package/dist/cli-bundle/chunks/{chunk-AAEQMOC6.js → chunk-TEKZOS7M.js} +2 -2
  183. package/dist/cli-bundle/chunks/{chunk-4QQ6PM7M.js → chunk-TGUK6XN6.js} +14 -18
  184. package/dist/cli-bundle/chunks/{chunk-4QQ6PM7M.js.map → chunk-TGUK6XN6.js.map} +1 -1
  185. package/dist/cli-bundle/chunks/{plan-R4NDQ27E.js → chunk-TNC6MZUD.js} +10 -21
  186. package/dist/cli-bundle/chunks/{plan-R4NDQ27E.js.map → chunk-TNC6MZUD.js.map} +1 -1
  187. package/dist/cli-bundle/chunks/chunk-TZLYO4PP.js +10498 -0
  188. package/dist/cli-bundle/chunks/chunk-TZLYO4PP.js.map +7 -0
  189. package/dist/cli-bundle/chunks/{chunk-YD5FML7K.js → chunk-UO7XAZK6.js} +27 -4
  190. package/dist/cli-bundle/chunks/chunk-UO7XAZK6.js.map +1 -0
  191. package/dist/cli-bundle/chunks/{docs-6CRCSVKK.js → chunk-V5ZWKJNY.js} +5 -14
  192. package/dist/cli-bundle/chunks/{docs-6CRCSVKK.js.map → chunk-V5ZWKJNY.js.map} +1 -1
  193. package/dist/cli-bundle/chunks/{notes-NJ7IQJX4.js → chunk-VGO73OCK.js} +7 -14
  194. package/dist/cli-bundle/chunks/{notes-NJ7IQJX4.js.map → chunk-VGO73OCK.js.map} +1 -1
  195. package/dist/cli-bundle/chunks/{chunk-NER3KUUS.js → chunk-VLEA2UTQ.js} +2 -2
  196. package/dist/cli-bundle/chunks/{files-6P57MRKL.js → chunk-W5HXHC7C.js} +8 -15
  197. package/dist/cli-bundle/chunks/{files-6P57MRKL.js.map → chunk-W5HXHC7C.js.map} +1 -1
  198. package/dist/cli-bundle/chunks/{chunk-ZMD35NYG.js → chunk-WCWVEXGA.js} +2 -2
  199. package/dist/cli-bundle/chunks/chunk-X47MKQXU.js +6690 -0
  200. package/dist/cli-bundle/chunks/chunk-X47MKQXU.js.map +7 -0
  201. package/dist/cli-bundle/chunks/{delete-62JQTYT4.js → chunk-XBX5CBRQ.js} +6 -10
  202. package/dist/cli-bundle/chunks/{delete-62JQTYT4.js.map → chunk-XBX5CBRQ.js.map} +1 -1
  203. package/dist/cli-bundle/chunks/{chunk-MTTXDAK4.js → chunk-XC3X7BQR.js} +541 -44
  204. package/dist/cli-bundle/chunks/chunk-XC3X7BQR.js.map +7 -0
  205. package/dist/cli-bundle/chunks/{history-compact-656Y2TN4.js → chunk-XHCVAZGM.js} +17 -23
  206. package/dist/cli-bundle/chunks/{history-compact-656Y2TN4.js.map → chunk-XHCVAZGM.js.map} +1 -1
  207. package/dist/cli-bundle/chunks/{chunk-ZAHXPXVY.js → chunk-XPMXPR7K.js} +7 -9
  208. package/dist/cli-bundle/chunks/{chunk-ZAHXPXVY.js.map → chunk-XPMXPR7K.js.map} +1 -1
  209. package/dist/cli-bundle/chunks/{deps-55FTG6Z5.js → chunk-XS2TMNXR.js} +8 -12
  210. package/dist/cli-bundle/chunks/{deps-55FTG6Z5.js.map → chunk-XS2TMNXR.js.map} +1 -1
  211. package/dist/cli-bundle/chunks/{plan-XWY5T67S.js → chunk-XXIYUTLK.js} +12 -23
  212. package/dist/cli-bundle/chunks/{plan-XWY5T67S.js.map → chunk-XXIYUTLK.js.map} +1 -1
  213. package/dist/cli-bundle/chunks/{chunk-7QH7DHUB.js → chunk-XZWL7VNE.js} +1220 -398
  214. package/dist/cli-bundle/chunks/chunk-XZWL7VNE.js.map +1 -0
  215. package/dist/cli-bundle/chunks/chunk-Y5IKRUEM.js +6624 -0
  216. package/dist/cli-bundle/chunks/chunk-Y5IKRUEM.js.map +1 -0
  217. package/dist/cli-bundle/chunks/{chunk-ABRA3BHY.js → chunk-Y7KYVCZM.js} +12 -18
  218. package/dist/cli-bundle/chunks/{chunk-ABRA3BHY.js.map → chunk-Y7KYVCZM.js.map} +1 -1
  219. package/dist/cli-bundle/chunks/{chunk-UI5BJ6DO.js → chunk-YCVWWIKY.js} +17 -28
  220. package/dist/cli-bundle/chunks/chunk-YCVWWIKY.js.map +7 -0
  221. package/dist/cli-bundle/chunks/chunk-YH5NBDFA.js +780 -0
  222. package/dist/cli-bundle/chunks/chunk-YH5NBDFA.js.map +1 -0
  223. package/dist/cli-bundle/chunks/chunk-YNCFP5AR.js +5509 -0
  224. package/dist/cli-bundle/chunks/chunk-YNCFP5AR.js.map +7 -0
  225. package/dist/cli-bundle/chunks/{comments-MIW5MZOX.js → chunk-YPD7SQ5P.js} +8 -12
  226. package/dist/cli-bundle/chunks/{comments-MIW5MZOX.js.map → chunk-YPD7SQ5P.js.map} +2 -2
  227. package/dist/cli-bundle/chunks/{chunk-T35XLYZF.js → chunk-YPMZMKN7.js} +2 -2
  228. package/dist/cli-bundle/chunks/{chunk-R3ZBLGTC.js → chunk-YTD5GICJ.js} +4 -4
  229. package/dist/cli-bundle/chunks/{config-DJJKZB5R.js → chunk-ZNEG2UDO.js} +264 -39
  230. package/dist/cli-bundle/chunks/{config-DJJKZB5R.js.map → chunk-ZNEG2UDO.js.map} +4 -4
  231. package/dist/cli-bundle/chunks/{chunk-EEY54JMF.js → chunk-ZO7CLOY2.js} +3 -3
  232. package/dist/cli-bundle/chunks/{close-3YRR3XY6.js → close-3YYQ5OG2.js} +5 -9
  233. package/dist/cli-bundle/chunks/close-Z3Q4U7TS.js +12 -0
  234. package/dist/cli-bundle/chunks/close-many-3L2RXH3M.js +22 -0
  235. package/dist/cli-bundle/chunks/close-many-D366FTIG.js +26 -0
  236. package/dist/cli-bundle/chunks/comments-54XDJNFE.js +17 -0
  237. package/dist/cli-bundle/chunks/comments-HGHC2PN6.js +13 -0
  238. package/dist/cli-bundle/chunks/copy-44RT5GDW.js +13 -0
  239. package/dist/cli-bundle/chunks/copy-UGMUGHZA.js +9 -0
  240. package/dist/cli-bundle/chunks/{create-XWWQFQ6S.js → create-4GWJWPXG.js} +9 -14
  241. package/dist/cli-bundle/chunks/create-AZXCUYKP.js +25 -0
  242. package/dist/cli-bundle/chunks/delete-Y6SXIQ4X.js +10 -0
  243. package/dist/cli-bundle/chunks/delete-YQ2VPXNF.js +14 -0
  244. package/dist/cli-bundle/chunks/deps-BU5EBJDU.js +17 -0
  245. package/dist/cli-bundle/chunks/deps-FMANWFRP.js +13 -0
  246. package/dist/cli-bundle/chunks/docs-OQBSJNIA.js +18 -0
  247. package/dist/cli-bundle/chunks/docs-VNPBZXEL.js +14 -0
  248. package/dist/cli-bundle/chunks/files-72HZEBOE.js +18 -0
  249. package/dist/cli-bundle/chunks/{activity-YKAKZTZ4.js → files-HTSB2KJG.js} +13 -13
  250. package/dist/cli-bundle/chunks/focus-FOG4ALC2.js +14 -0
  251. package/dist/cli-bundle/chunks/focus-SUTMKXGX.js +10 -0
  252. package/dist/cli-bundle/chunks/history-compact-M6IFAMBP.js +25 -0
  253. package/dist/cli-bundle/chunks/history-compact-NEXRPP2O.js +21 -0
  254. package/dist/cli-bundle/chunks/{history-redact-54ICFKXM.js → history-redact-NQX3OGZP.js} +7 -11
  255. package/dist/cli-bundle/chunks/history-redact-WQJBZ3PX.js +17 -0
  256. package/dist/cli-bundle/chunks/history-repair-CBHMHAJO.js +19 -0
  257. package/dist/cli-bundle/chunks/history-repair-NHOJG7WO.js +23 -0
  258. package/dist/cli-bundle/chunks/learnings-M64NTSOR.js +13 -0
  259. package/dist/cli-bundle/chunks/learnings-T63JGKKN.js +17 -0
  260. package/dist/cli-bundle/chunks/notes-73WE2UV2.js +13 -0
  261. package/dist/cli-bundle/chunks/notes-U7L6HQQ2.js +17 -0
  262. package/dist/cli-bundle/chunks/plan-OSCNYFGC.js +24 -0
  263. package/dist/cli-bundle/chunks/plan-OSCNYFGC.js.map +7 -0
  264. package/dist/cli-bundle/chunks/plan-TN537L24.js +28 -0
  265. package/dist/cli-bundle/chunks/plan-TN537L24.js.map +1 -0
  266. package/dist/cli-bundle/chunks/profile-MHAMXMHQ.js +37 -0
  267. package/dist/cli-bundle/chunks/profile-MHAMXMHQ.js.map +1 -0
  268. package/dist/cli-bundle/chunks/profile-TIGLAKJ7.js +33 -0
  269. package/dist/cli-bundle/chunks/profile-TIGLAKJ7.js.map +7 -0
  270. package/dist/cli-bundle/chunks/{register-list-query-5H66WFYF.js → register-list-query-OHXD7G5N.js} +41 -33
  271. package/dist/cli-bundle/chunks/register-list-query-OHXD7G5N.js.map +7 -0
  272. package/dist/cli-bundle/chunks/{register-list-query-FB3FNDLZ.js → register-list-query-ZCRABAPN.js} +42 -34
  273. package/dist/cli-bundle/chunks/register-list-query-ZCRABAPN.js.map +1 -0
  274. package/dist/cli-bundle/chunks/{register-mutation-UJO23C7R.js → register-mutation-P3G4XP6Q.js} +36 -41
  275. package/dist/cli-bundle/chunks/{register-mutation-UJO23C7R.js.map → register-mutation-P3G4XP6Q.js.map} +1 -1
  276. package/dist/cli-bundle/chunks/{register-mutation-Z2ETYHKS.js → register-mutation-XX4H56PE.js} +34 -39
  277. package/dist/cli-bundle/chunks/{register-mutation-Z2ETYHKS.js.map → register-mutation-XX4H56PE.js.map} +1 -1
  278. package/dist/cli-bundle/chunks/{register-operations-A3XAM5J7.js → register-operations-V6PIYEDU.js} +80 -52
  279. package/dist/cli-bundle/chunks/register-operations-V6PIYEDU.js.map +1 -0
  280. package/dist/cli-bundle/chunks/{register-operations-SG7HBSUP.js → register-operations-V6VKTG54.js} +79 -51
  281. package/dist/cli-bundle/chunks/register-operations-V6VKTG54.js.map +7 -0
  282. package/dist/cli-bundle/chunks/{register-setup-K6U3NVY5.js → register-setup-6RVAWT6W.js} +129 -31
  283. package/dist/cli-bundle/chunks/register-setup-6RVAWT6W.js.map +7 -0
  284. package/dist/cli-bundle/chunks/{register-setup-I45OGJUV.js → register-setup-6YVUSQYD.js} +130 -32
  285. package/dist/cli-bundle/chunks/register-setup-6YVUSQYD.js.map +1 -0
  286. package/dist/cli-bundle/chunks/{restore-YJ2ET6AT.js → restore-HC3YSWF7.js} +7 -11
  287. package/dist/cli-bundle/chunks/restore-HC3YSWF7.js.map +1 -0
  288. package/dist/cli-bundle/chunks/restore-LFAMMRYZ.js +15 -0
  289. package/dist/cli-bundle/chunks/restore-LFAMMRYZ.js.map +7 -0
  290. package/dist/cli-bundle/chunks/{schema-2PUXCZ25.js → schema-DAGSYO6E.js} +6 -10
  291. package/dist/cli-bundle/chunks/schema-DAGSYO6E.js.map +7 -0
  292. package/dist/cli-bundle/chunks/{schema-Y6DXXK2F.js → schema-UBXJCQAC.js} +6 -10
  293. package/dist/cli-bundle/chunks/schema-UBXJCQAC.js.map +1 -0
  294. package/dist/cli-bundle/chunks/update-CJGG5WMV.js +21 -0
  295. package/dist/cli-bundle/chunks/update-CJGG5WMV.js.map +7 -0
  296. package/dist/cli-bundle/chunks/update-LKD64AFP.js +25 -0
  297. package/dist/cli-bundle/chunks/update-LKD64AFP.js.map +1 -0
  298. package/dist/cli-bundle/chunks/update-many-G4SM7BHC.js +31 -0
  299. package/dist/cli-bundle/chunks/update-many-G4SM7BHC.js.map +7 -0
  300. package/dist/cli-bundle/chunks/update-many-VLIV3D7R.js +35 -0
  301. package/dist/cli-bundle/chunks/update-many-VLIV3D7R.js.map +1 -0
  302. package/dist/cli-bundle/main.js +29 -31
  303. package/dist/cli-bundle/main.js.map +2 -2
  304. package/dist/cli-bundle/sdk-runtime.js +136 -54
  305. package/dist/cli-bundle/sdk-testing.js +7 -8
  306. package/dist/cli-bundle/sdk.js +132 -84
  307. package/dist/cli-bundle/sdk.js.map +2 -2
  308. package/dist/core/history/drift-scan.js +3 -8
  309. package/dist/core/history/drift-scan.js.map +1 -1
  310. package/dist/core/output/mutation-projection.js +11 -5
  311. package/dist/core/output/mutation-projection.js.map +1 -1
  312. package/dist/core/search/cache.js +3 -3
  313. package/dist/core/search/cache.js.map +1 -1
  314. package/dist/core/search/semantic-defaults.d.ts +2 -0
  315. package/dist/core/search/semantic-defaults.js +11 -4
  316. package/dist/core/search/semantic-defaults.js.map +1 -1
  317. package/dist/core/search/vector-stores.d.ts +1 -1
  318. package/dist/core/search/vector-stores.js +33 -7
  319. package/dist/core/search/vector-stores.js.map +1 -1
  320. package/dist/mcp/server.d.ts +22 -50
  321. package/dist/mcp/server.js +62 -916
  322. package/dist/mcp/server.js.map +1 -1
  323. package/dist/sdk/cli-contracts/flag-contracts.js +7 -7
  324. package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -1
  325. package/dist/sdk/cli-contracts/tool-schema.js +9 -7
  326. package/dist/sdk/cli-contracts/tool-schema.js.map +1 -1
  327. package/dist/sdk/index.d.ts +4 -2
  328. package/dist/sdk/index.js +4 -4
  329. package/dist/sdk/index.js.map +1 -1
  330. package/dist/sdk/runtime.d.ts +312 -5
  331. package/dist/sdk/runtime.js +1391 -26
  332. package/dist/sdk/runtime.js.map +1 -1
  333. package/dist/sdk/start-task-status.d.ts +13 -0
  334. package/dist/sdk/start-task-status.js +19 -0
  335. package/dist/sdk/start-task-status.js.map +1 -0
  336. package/dist/sdk/workspace-contracts-cache.d.ts +17 -0
  337. package/dist/sdk/workspace-contracts-cache.js +36 -0
  338. package/dist/sdk/workspace-contracts-cache.js.map +1 -0
  339. package/docs/COMMANDS.md +10 -1
  340. package/docs/RELEASING.md +3 -1
  341. package/docs/SDK.md +81 -0
  342. package/docs/TESTING.md +3 -0
  343. package/docs/examples/sdk-app-embedding/run-embedded-pm.mjs +16 -2
  344. package/docs/examples/sdk-contract-consumer/inspect-contracts.mjs +16 -1
  345. package/package.json +1 -1
  346. package/dist/cli-bundle/chunks/activity-4XQIDNM5.js +0 -18
  347. package/dist/cli-bundle/chunks/aggregate-EQX2RGB7.js +0 -375
  348. package/dist/cli-bundle/chunks/aggregate-EQX2RGB7.js.map +0 -7
  349. package/dist/cli-bundle/chunks/aggregate-PEGZGJXD.js +0 -372
  350. package/dist/cli-bundle/chunks/aggregate-PEGZGJXD.js.map +0 -1
  351. package/dist/cli-bundle/chunks/chunk-37E72CNS.js +0 -217
  352. package/dist/cli-bundle/chunks/chunk-37E72CNS.js.map +0 -1
  353. package/dist/cli-bundle/chunks/chunk-3PL6LEKP.js +0 -1961
  354. package/dist/cli-bundle/chunks/chunk-3PL6LEKP.js.map +0 -1
  355. package/dist/cli-bundle/chunks/chunk-3U3VEWK6.js +0 -1749
  356. package/dist/cli-bundle/chunks/chunk-3U3VEWK6.js.map +0 -7
  357. package/dist/cli-bundle/chunks/chunk-4BU75MF4.js +0 -87
  358. package/dist/cli-bundle/chunks/chunk-4BU75MF4.js.map +0 -7
  359. package/dist/cli-bundle/chunks/chunk-4LRVSBO6.js +0 -822
  360. package/dist/cli-bundle/chunks/chunk-4LRVSBO6.js.map +0 -7
  361. package/dist/cli-bundle/chunks/chunk-4OFLJHX6.js.map +0 -1
  362. package/dist/cli-bundle/chunks/chunk-53BTLLAF.js +0 -2181
  363. package/dist/cli-bundle/chunks/chunk-53BTLLAF.js.map +0 -1
  364. package/dist/cli-bundle/chunks/chunk-57C2RLW5.js +0 -1704
  365. package/dist/cli-bundle/chunks/chunk-57C2RLW5.js.map +0 -1
  366. package/dist/cli-bundle/chunks/chunk-5B3X4Y22.js +0 -2330
  367. package/dist/cli-bundle/chunks/chunk-5B3X4Y22.js.map +0 -7
  368. package/dist/cli-bundle/chunks/chunk-5J2XPTAD.js.map +0 -7
  369. package/dist/cli-bundle/chunks/chunk-5JZ7APJU.js +0 -995
  370. package/dist/cli-bundle/chunks/chunk-5JZ7APJU.js.map +0 -1
  371. package/dist/cli-bundle/chunks/chunk-75U6M5ZD.js +0 -819
  372. package/dist/cli-bundle/chunks/chunk-75U6M5ZD.js.map +0 -1
  373. package/dist/cli-bundle/chunks/chunk-7C2O74AE.js +0 -23
  374. package/dist/cli-bundle/chunks/chunk-7C2O74AE.js.map +0 -7
  375. package/dist/cli-bundle/chunks/chunk-7EQNAZX2.js.map +0 -7
  376. package/dist/cli-bundle/chunks/chunk-7QH7DHUB.js.map +0 -1
  377. package/dist/cli-bundle/chunks/chunk-BVEUCSH2.js +0 -530
  378. package/dist/cli-bundle/chunks/chunk-BVEUCSH2.js.map +0 -7
  379. package/dist/cli-bundle/chunks/chunk-DC3QJQWI.js +0 -275
  380. package/dist/cli-bundle/chunks/chunk-DC3QJQWI.js.map +0 -7
  381. package/dist/cli-bundle/chunks/chunk-DRBV5UC2.js +0 -231
  382. package/dist/cli-bundle/chunks/chunk-DRBV5UC2.js.map +0 -7
  383. package/dist/cli-bundle/chunks/chunk-E2FUG6GD.js +0 -2184
  384. package/dist/cli-bundle/chunks/chunk-E2FUG6GD.js.map +0 -7
  385. package/dist/cli-bundle/chunks/chunk-EZFKWSC7.js +0 -1615
  386. package/dist/cli-bundle/chunks/chunk-EZFKWSC7.js.map +0 -7
  387. package/dist/cli-bundle/chunks/chunk-FJRKQREY.js +0 -228
  388. package/dist/cli-bundle/chunks/chunk-FJRKQREY.js.map +0 -1
  389. package/dist/cli-bundle/chunks/chunk-GIWXVMZ3.js +0 -3237
  390. package/dist/cli-bundle/chunks/chunk-GIWXVMZ3.js.map +0 -7
  391. package/dist/cli-bundle/chunks/chunk-HK72NWAD.js +0 -1570
  392. package/dist/cli-bundle/chunks/chunk-HK72NWAD.js.map +0 -1
  393. package/dist/cli-bundle/chunks/chunk-JFCVQXZX.js +0 -3206
  394. package/dist/cli-bundle/chunks/chunk-JFCVQXZX.js.map +0 -1
  395. package/dist/cli-bundle/chunks/chunk-JINYH2DB.js +0 -371
  396. package/dist/cli-bundle/chunks/chunk-JINYH2DB.js.map +0 -7
  397. package/dist/cli-bundle/chunks/chunk-JLA7EVYV.js.map +0 -1
  398. package/dist/cli-bundle/chunks/chunk-K32L7HZO.js +0 -76
  399. package/dist/cli-bundle/chunks/chunk-K32L7HZO.js.map +0 -1
  400. package/dist/cli-bundle/chunks/chunk-KDZ6K25I.js +0 -79
  401. package/dist/cli-bundle/chunks/chunk-KDZ6K25I.js.map +0 -7
  402. package/dist/cli-bundle/chunks/chunk-KL22PY6L.js +0 -915
  403. package/dist/cli-bundle/chunks/chunk-KL22PY6L.js.map +0 -1
  404. package/dist/cli-bundle/chunks/chunk-KLG4ZULO.js +0 -218
  405. package/dist/cli-bundle/chunks/chunk-KLG4ZULO.js.map +0 -7
  406. package/dist/cli-bundle/chunks/chunk-LEKT4K7I.js.map +0 -7
  407. package/dist/cli-bundle/chunks/chunk-MNZ7DRNC.js +0 -1858
  408. package/dist/cli-bundle/chunks/chunk-MNZ7DRNC.js.map +0 -1
  409. package/dist/cli-bundle/chunks/chunk-MTTXDAK4.js.map +0 -7
  410. package/dist/cli-bundle/chunks/chunk-MZ7VNEVY.js +0 -520
  411. package/dist/cli-bundle/chunks/chunk-MZ7VNEVY.js.map +0 -1
  412. package/dist/cli-bundle/chunks/chunk-N7X4WP6L.js +0 -1041
  413. package/dist/cli-bundle/chunks/chunk-N7X4WP6L.js.map +0 -7
  414. package/dist/cli-bundle/chunks/chunk-NBFCNJ7Q.js.map +0 -1
  415. package/dist/cli-bundle/chunks/chunk-NNHHXJB2.js +0 -20
  416. package/dist/cli-bundle/chunks/chunk-NNHHXJB2.js.map +0 -1
  417. package/dist/cli-bundle/chunks/chunk-OBA2WH65.js +0 -918
  418. package/dist/cli-bundle/chunks/chunk-OBA2WH65.js.map +0 -7
  419. package/dist/cli-bundle/chunks/chunk-OESSOFJ4.js +0 -1985
  420. package/dist/cli-bundle/chunks/chunk-OESSOFJ4.js.map +0 -7
  421. package/dist/cli-bundle/chunks/chunk-OK5NXCZB.js +0 -238
  422. package/dist/cli-bundle/chunks/chunk-OK5NXCZB.js.map +0 -1
  423. package/dist/cli-bundle/chunks/chunk-P5YORJRH.js +0 -1977
  424. package/dist/cli-bundle/chunks/chunk-P5YORJRH.js.map +0 -7
  425. package/dist/cli-bundle/chunks/chunk-PPAJG4GB.js +0 -1031
  426. package/dist/cli-bundle/chunks/chunk-PPAJG4GB.js.map +0 -1
  427. package/dist/cli-bundle/chunks/chunk-PPE4YUQM.js.map +0 -1
  428. package/dist/cli-bundle/chunks/chunk-QZ342C63.js +0 -220
  429. package/dist/cli-bundle/chunks/chunk-QZ342C63.js.map +0 -7
  430. package/dist/cli-bundle/chunks/chunk-R2EMWY7Q.js +0 -368
  431. package/dist/cli-bundle/chunks/chunk-R2EMWY7Q.js.map +0 -1
  432. package/dist/cli-bundle/chunks/chunk-S4APD35C.js.map +0 -7
  433. package/dist/cli-bundle/chunks/chunk-STPSZ2XY.js +0 -1149
  434. package/dist/cli-bundle/chunks/chunk-STPSZ2XY.js.map +0 -1
  435. package/dist/cli-bundle/chunks/chunk-T4MX77AK.js +0 -272
  436. package/dist/cli-bundle/chunks/chunk-T4MX77AK.js.map +0 -1
  437. package/dist/cli-bundle/chunks/chunk-T5Y3QSNF.js.map +0 -1
  438. package/dist/cli-bundle/chunks/chunk-TT42JUMF.js.map +0 -1
  439. package/dist/cli-bundle/chunks/chunk-UHKX7I75.js +0 -165
  440. package/dist/cli-bundle/chunks/chunk-UHKX7I75.js.map +0 -1
  441. package/dist/cli-bundle/chunks/chunk-UI5BJ6DO.js.map +0 -7
  442. package/dist/cli-bundle/chunks/chunk-US3T3W5J.js +0 -1932
  443. package/dist/cli-bundle/chunks/chunk-US3T3W5J.js.map +0 -1
  444. package/dist/cli-bundle/chunks/chunk-UZRDBL6W.js +0 -175
  445. package/dist/cli-bundle/chunks/chunk-UZRDBL6W.js.map +0 -7
  446. package/dist/cli-bundle/chunks/chunk-VY3VQ22F.js +0 -84
  447. package/dist/cli-bundle/chunks/chunk-VY3VQ22F.js.map +0 -1
  448. package/dist/cli-bundle/chunks/chunk-VZIYHZDX.js +0 -1868
  449. package/dist/cli-bundle/chunks/chunk-VZIYHZDX.js.map +0 -7
  450. package/dist/cli-bundle/chunks/chunk-WVSGSZ6J.js.map +0 -7
  451. package/dist/cli-bundle/chunks/chunk-XQCG2JGW.js +0 -1152
  452. package/dist/cli-bundle/chunks/chunk-XQCG2JGW.js.map +0 -7
  453. package/dist/cli-bundle/chunks/chunk-YD5FML7K.js.map +0 -1
  454. package/dist/cli-bundle/chunks/chunk-YSAH5FY5.js.map +0 -1
  455. package/dist/cli-bundle/chunks/chunk-YZIR4R3U.js +0 -1005
  456. package/dist/cli-bundle/chunks/chunk-YZIR4R3U.js.map +0 -7
  457. package/dist/cli-bundle/chunks/chunk-Z2CRRZYF.js +0 -215
  458. package/dist/cli-bundle/chunks/chunk-Z2CRRZYF.js.map +0 -1
  459. package/dist/cli-bundle/chunks/chunk-ZD34OFFQ.js.map +0 -7
  460. package/dist/cli-bundle/chunks/chunk-ZJB3UV5U.js +0 -2306
  461. package/dist/cli-bundle/chunks/chunk-ZJB3UV5U.js.map +0 -1
  462. package/dist/cli-bundle/chunks/chunk-ZVDL32GJ.js +0 -241
  463. package/dist/cli-bundle/chunks/chunk-ZVDL32GJ.js.map +0 -7
  464. package/dist/cli-bundle/chunks/claim-4DROPSIS.js +0 -144
  465. package/dist/cli-bundle/chunks/claim-4DROPSIS.js.map +0 -1
  466. package/dist/cli-bundle/chunks/claim-VX54TV5U.js +0 -147
  467. package/dist/cli-bundle/chunks/claim-VX54TV5U.js.map +0 -7
  468. package/dist/cli-bundle/chunks/close-OB2Y4QP5.js +0 -16
  469. package/dist/cli-bundle/chunks/config-V57QD47V.js.map +0 -1
  470. package/dist/cli-bundle/chunks/context-4OQGIPSO.js +0 -45
  471. package/dist/cli-bundle/chunks/context-WLA6IAWE.js +0 -49
  472. package/dist/cli-bundle/chunks/contracts-HXJLKCRI.js +0 -12
  473. package/dist/cli-bundle/chunks/create-WKOZKPQR.js +0 -30
  474. package/dist/cli-bundle/chunks/eval-N6UHFWVO.js +0 -288
  475. package/dist/cli-bundle/chunks/eval-N6UHFWVO.js.map +0 -7
  476. package/dist/cli-bundle/chunks/eval-PHOTWYHI.js +0 -278
  477. package/dist/cli-bundle/chunks/eval-PHOTWYHI.js.map +0 -1
  478. package/dist/cli-bundle/chunks/extension-NBAH62ML.js +0 -40
  479. package/dist/cli-bundle/chunks/extension-ZF6ZZPOU.js +0 -44
  480. package/dist/cli-bundle/chunks/gc-AETFKZ44.js +0 -398
  481. package/dist/cli-bundle/chunks/gc-AETFKZ44.js.map +0 -7
  482. package/dist/cli-bundle/chunks/gc-RLBP4QVN.js +0 -388
  483. package/dist/cli-bundle/chunks/gc-RLBP4QVN.js.map +0 -1
  484. package/dist/cli-bundle/chunks/get-NH2MPBCI.js +0 -283
  485. package/dist/cli-bundle/chunks/get-NH2MPBCI.js.map +0 -1
  486. package/dist/cli-bundle/chunks/get-P4ZQXCPZ.js +0 -286
  487. package/dist/cli-bundle/chunks/get-P4ZQXCPZ.js.map +0 -7
  488. package/dist/cli-bundle/chunks/health-3GVPMQBL.js +0 -1612
  489. package/dist/cli-bundle/chunks/health-3GVPMQBL.js.map +0 -1
  490. package/dist/cli-bundle/chunks/health-DNTM72GJ.js +0 -1615
  491. package/dist/cli-bundle/chunks/health-DNTM72GJ.js.map +0 -7
  492. package/dist/cli-bundle/chunks/history-RYKLC72X.js +0 -20
  493. package/dist/cli-bundle/chunks/history-SGPYRAFT.js +0 -24
  494. package/dist/cli-bundle/chunks/history-redact-4H3FCKF3.js +0 -21
  495. package/dist/cli-bundle/chunks/init-RPIPQUNV.js +0 -32
  496. package/dist/cli-bundle/chunks/init-SKQAESQS.js +0 -28
  497. package/dist/cli-bundle/chunks/list-64LHZ3HM.js +0 -32
  498. package/dist/cli-bundle/chunks/list-7LXBTEKI.js +0 -36
  499. package/dist/cli-bundle/chunks/next-7ODPAQ4U.js +0 -306
  500. package/dist/cli-bundle/chunks/next-7ODPAQ4U.js.map +0 -7
  501. package/dist/cli-bundle/chunks/next-ODJUM4ZM.js +0 -303
  502. package/dist/cli-bundle/chunks/next-ODJUM4ZM.js.map +0 -1
  503. package/dist/cli-bundle/chunks/profile-XQWEQKS3.js +0 -397
  504. package/dist/cli-bundle/chunks/profile-XQWEQKS3.js.map +0 -1
  505. package/dist/cli-bundle/chunks/profile-YRDHLMRO.js +0 -400
  506. package/dist/cli-bundle/chunks/profile-YRDHLMRO.js.map +0 -7
  507. package/dist/cli-bundle/chunks/register-list-query-5H66WFYF.js.map +0 -7
  508. package/dist/cli-bundle/chunks/register-list-query-FB3FNDLZ.js.map +0 -1
  509. package/dist/cli-bundle/chunks/register-operations-A3XAM5J7.js.map +0 -1
  510. package/dist/cli-bundle/chunks/register-operations-SG7HBSUP.js.map +0 -7
  511. package/dist/cli-bundle/chunks/register-setup-I45OGJUV.js.map +0 -1
  512. package/dist/cli-bundle/chunks/register-setup-K6U3NVY5.js.map +0 -7
  513. package/dist/cli-bundle/chunks/restore-PXOFL6AM.js +0 -19
  514. package/dist/cli-bundle/chunks/scheduling-shortcuts-SSC4MYWQ.js +0 -91
  515. package/dist/cli-bundle/chunks/scheduling-shortcuts-SSC4MYWQ.js.map +0 -7
  516. package/dist/cli-bundle/chunks/scheduling-shortcuts-ULRG7MNP.js +0 -88
  517. package/dist/cli-bundle/chunks/scheduling-shortcuts-ULRG7MNP.js.map +0 -1
  518. package/dist/cli-bundle/chunks/search-3S72CTD6.js +0 -38
  519. package/dist/cli-bundle/chunks/search-WNUNBQXO.js +0 -34
  520. package/dist/cli-bundle/chunks/stats-IJYTRQGV.js +0 -250
  521. package/dist/cli-bundle/chunks/stats-IJYTRQGV.js.map +0 -7
  522. package/dist/cli-bundle/chunks/stats-L2D5Y2O5.js +0 -240
  523. package/dist/cli-bundle/chunks/stats-L2D5Y2O5.js.map +0 -1
  524. package/dist/cli-bundle/chunks/telemetry-L2CVOKVN.js +0 -309
  525. package/dist/cli-bundle/chunks/telemetry-L2CVOKVN.js.map +0 -7
  526. package/dist/cli-bundle/chunks/telemetry-QBYWQA76.js +0 -306
  527. package/dist/cli-bundle/chunks/telemetry-QBYWQA76.js.map +0 -1
  528. package/dist/cli-bundle/chunks/test-DQ2QFJ7W.js +0 -45
  529. package/dist/cli-bundle/chunks/test-W7QBLVJS.js +0 -41
  530. package/dist/cli-bundle/chunks/test-all-636NTRTT.js +0 -434
  531. package/dist/cli-bundle/chunks/test-all-636NTRTT.js.map +0 -1
  532. package/dist/cli-bundle/chunks/test-all-DWYK3RG6.js +0 -437
  533. package/dist/cli-bundle/chunks/test-all-DWYK3RG6.js.map +0 -7
  534. package/dist/cli-bundle/chunks/test-runs-245OINZR.js +0 -28
  535. package/dist/cli-bundle/chunks/test-runs-ZRD4GCTT.js +0 -24
  536. package/dist/cli-bundle/chunks/update-SFLZPJXX.js +0 -30
  537. package/dist/cli-bundle/chunks/update-SJZ6S77U.js +0 -26
  538. package/dist/cli-bundle/chunks/upgrade-HFFXLZJA.js +0 -290
  539. package/dist/cli-bundle/chunks/upgrade-HFFXLZJA.js.map +0 -7
  540. package/dist/cli-bundle/chunks/upgrade-UYQKM7RF.js +0 -287
  541. package/dist/cli-bundle/chunks/upgrade-UYQKM7RF.js.map +0 -1
  542. package/dist/cli-bundle/chunks/validate-PA4FDTOV.js +0 -2143
  543. package/dist/cli-bundle/chunks/validate-PA4FDTOV.js.map +0 -7
  544. package/dist/cli-bundle/chunks/validate-Z7L75YEJ.js +0 -2105
  545. package/dist/cli-bundle/chunks/validate-Z7L75YEJ.js.map +0 -1
  546. /package/dist/cli-bundle/chunks/{activity-4XQIDNM5.js.map → append-F7WPGIQL.js.map} +0 -0
  547. /package/dist/cli-bundle/chunks/{activity-YKAKZTZ4.js.map → append-PVCTBVJG.js.map} +0 -0
  548. /package/dist/cli-bundle/chunks/{chunk-T3ABIMGW.js.map → chunk-2TILG6F2.js.map} +0 -0
  549. /package/dist/cli-bundle/chunks/{chunk-RCT3YJOK.js.map → chunk-3TYOW6RR.js.map} +0 -0
  550. /package/dist/cli-bundle/chunks/{chunk-3JZNEQBA.js.map → chunk-3X542TEY.js.map} +0 -0
  551. /package/dist/cli-bundle/chunks/{chunk-YOF5VPKM.js.map → chunk-7VQ3JJN5.js.map} +0 -0
  552. /package/dist/cli-bundle/chunks/{chunk-P5TFTLWW.js.map → chunk-AGAVEDIE.js.map} +0 -0
  553. /package/dist/cli-bundle/chunks/{chunk-YFIE7YK6.js.map → chunk-AJUON7E6.js.map} +0 -0
  554. /package/dist/cli-bundle/chunks/{chunk-7WYXBPYQ.js.map → chunk-DR2V5OIV.js.map} +0 -0
  555. /package/dist/cli-bundle/chunks/{chunk-PDXT6Q55.js.map → chunk-EDO7VXSO.js.map} +0 -0
  556. /package/dist/cli-bundle/chunks/{chunk-FUM6UMY4.js.map → chunk-EVEPHNXJ.js.map} +0 -0
  557. /package/dist/cli-bundle/chunks/{chunk-RX3HQSYG.js.map → chunk-FN6SB4HU.js.map} +0 -0
  558. /package/dist/cli-bundle/chunks/{chunk-DLQ4ZTCU.js.map → chunk-H2SMKL2N.js.map} +0 -0
  559. /package/dist/cli-bundle/chunks/{chunk-C3PMDWGX.js.map → chunk-HX6QXV5P.js.map} +0 -0
  560. /package/dist/cli-bundle/chunks/{chunk-N6DNM2FA.js.map → chunk-P3MJJW7P.js.map} +0 -0
  561. /package/dist/cli-bundle/chunks/{chunk-5JE6SMYS.js.map → chunk-PDXJXEZJ.js.map} +0 -0
  562. /package/dist/cli-bundle/chunks/{chunk-AAEQMOC6.js.map → chunk-TEKZOS7M.js.map} +0 -0
  563. /package/dist/cli-bundle/chunks/{chunk-NER3KUUS.js.map → chunk-VLEA2UTQ.js.map} +0 -0
  564. /package/dist/cli-bundle/chunks/{chunk-ZMD35NYG.js.map → chunk-WCWVEXGA.js.map} +0 -0
  565. /package/dist/cli-bundle/chunks/{chunk-T35XLYZF.js.map → chunk-YPMZMKN7.js.map} +0 -0
  566. /package/dist/cli-bundle/chunks/{chunk-R3ZBLGTC.js.map → chunk-YTD5GICJ.js.map} +0 -0
  567. /package/dist/cli-bundle/chunks/{chunk-EEY54JMF.js.map → chunk-ZO7CLOY2.js.map} +0 -0
  568. /package/dist/cli-bundle/chunks/{close-3YRR3XY6.js.map → close-3YYQ5OG2.js.map} +0 -0
  569. /package/dist/cli-bundle/chunks/{close-OB2Y4QP5.js.map → close-Z3Q4U7TS.js.map} +0 -0
  570. /package/dist/cli-bundle/chunks/{context-4OQGIPSO.js.map → close-many-3L2RXH3M.js.map} +0 -0
  571. /package/dist/cli-bundle/chunks/{context-WLA6IAWE.js.map → close-many-D366FTIG.js.map} +0 -0
  572. /package/dist/cli-bundle/chunks/{contracts-OJEXMKVW.js.map → comments-54XDJNFE.js.map} +0 -0
  573. /package/dist/cli-bundle/chunks/{contracts-HXJLKCRI.js.map → comments-HGHC2PN6.js.map} +0 -0
  574. /package/dist/cli-bundle/chunks/{create-XWWQFQ6S.js.map → copy-44RT5GDW.js.map} +0 -0
  575. /package/dist/cli-bundle/chunks/{create-WKOZKPQR.js.map → copy-UGMUGHZA.js.map} +0 -0
  576. /package/dist/cli-bundle/chunks/{extension-ZF6ZZPOU.js.map → create-4GWJWPXG.js.map} +0 -0
  577. /package/dist/cli-bundle/chunks/{extension-NBAH62ML.js.map → create-AZXCUYKP.js.map} +0 -0
  578. /package/dist/cli-bundle/chunks/{history-RYKLC72X.js.map → delete-Y6SXIQ4X.js.map} +0 -0
  579. /package/dist/cli-bundle/chunks/{history-SGPYRAFT.js.map → delete-YQ2VPXNF.js.map} +0 -0
  580. /package/dist/cli-bundle/chunks/{history-redact-54ICFKXM.js.map → deps-BU5EBJDU.js.map} +0 -0
  581. /package/dist/cli-bundle/chunks/{history-redact-4H3FCKF3.js.map → deps-FMANWFRP.js.map} +0 -0
  582. /package/dist/cli-bundle/chunks/{init-RPIPQUNV.js.map → docs-OQBSJNIA.js.map} +0 -0
  583. /package/dist/cli-bundle/chunks/{init-SKQAESQS.js.map → docs-VNPBZXEL.js.map} +0 -0
  584. /package/dist/cli-bundle/chunks/{list-64LHZ3HM.js.map → files-72HZEBOE.js.map} +0 -0
  585. /package/dist/cli-bundle/chunks/{list-7LXBTEKI.js.map → files-HTSB2KJG.js.map} +0 -0
  586. /package/dist/cli-bundle/chunks/{restore-YJ2ET6AT.js.map → focus-FOG4ALC2.js.map} +0 -0
  587. /package/dist/cli-bundle/chunks/{restore-PXOFL6AM.js.map → focus-SUTMKXGX.js.map} +0 -0
  588. /package/dist/cli-bundle/chunks/{schema-Y6DXXK2F.js.map → history-compact-M6IFAMBP.js.map} +0 -0
  589. /package/dist/cli-bundle/chunks/{schema-2PUXCZ25.js.map → history-compact-NEXRPP2O.js.map} +0 -0
  590. /package/dist/cli-bundle/chunks/{search-3S72CTD6.js.map → history-redact-NQX3OGZP.js.map} +0 -0
  591. /package/dist/cli-bundle/chunks/{search-WNUNBQXO.js.map → history-redact-WQJBZ3PX.js.map} +0 -0
  592. /package/dist/cli-bundle/chunks/{test-W7QBLVJS.js.map → history-repair-CBHMHAJO.js.map} +0 -0
  593. /package/dist/cli-bundle/chunks/{test-DQ2QFJ7W.js.map → history-repair-NHOJG7WO.js.map} +0 -0
  594. /package/dist/cli-bundle/chunks/{test-runs-ZRD4GCTT.js.map → learnings-M64NTSOR.js.map} +0 -0
  595. /package/dist/cli-bundle/chunks/{test-runs-245OINZR.js.map → learnings-T63JGKKN.js.map} +0 -0
  596. /package/dist/cli-bundle/chunks/{update-SJZ6S77U.js.map → notes-73WE2UV2.js.map} +0 -0
  597. /package/dist/cli-bundle/chunks/{update-SFLZPJXX.js.map → notes-U7L6HQQ2.js.map} +0 -0
@@ -1,31 +1,133 @@
1
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]="c6d1c49f-01ed-5fa4-b05d-e515ef54f671")}catch(e){}}();
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]="8e64eac6-c632-5921-b8ce-74dd117c9670")}catch(e){}}();
3
3
  import {
4
- runContracts
5
- } from "./chunk-MNZ7DRNC.js";
4
+ runFiles,
5
+ runFilesDiscover
6
+ } from "./chunk-GPIDUMMN.js";
6
7
  import {
7
- runUpdate
8
- } from "./chunk-TSPKZRRW.js";
8
+ runDocs
9
+ } from "./chunk-V5ZWKJNY.js";
9
10
  import {
10
- jaccardSimilarity,
11
- normalizeLowercaseWhitespace,
12
- tokenizeAlphaNumeric
13
- } from "./chunk-ZJB3UV5U.js";
11
+ runDeps
12
+ } from "./chunk-XS2TMNXR.js";
14
13
  import {
15
- parseTags
16
- } from "./chunk-7WYXBPYQ.js";
14
+ assertHistoryRepairTarget,
15
+ runHistoryRepair,
16
+ runHistoryRepairAll
17
+ } from "./chunk-42LXP4VO.js";
18
+ import {
19
+ resolveStartTaskInProgressStatus,
20
+ runClaim,
21
+ runContracts,
22
+ runGc,
23
+ runHealth,
24
+ runRelease,
25
+ runStats,
26
+ runTelemetry,
27
+ runTest,
28
+ runTestAll,
29
+ runValidate
30
+ } from "./chunk-J2VGADNG.js";
31
+ import {
32
+ runComments
33
+ } from "./chunk-II7R6KD4.js";
34
+ import {
35
+ runCopy
36
+ } from "./chunk-5FIQ4EX3.js";
37
+ import {
38
+ runFocus
39
+ } from "./chunk-RB3KLPAH.js";
40
+ import {
41
+ runDelete
42
+ } from "./chunk-NWWL22C7.js";
43
+ import {
44
+ runAppend
45
+ } from "./chunk-Q64AYQYW.js";
46
+ import {
47
+ runProfileApply,
48
+ runProfileLint,
49
+ runProfileList,
50
+ runProfileShow
51
+ } from "./chunk-YH5NBDFA.js";
52
+ import {
53
+ runNotes
54
+ } from "./chunk-VGO73OCK.js";
55
+ import {
56
+ runLearnings
57
+ } from "./chunk-SIM5JDON.js";
58
+ import {
59
+ runCloseMany
60
+ } from "./chunk-4IQKDKGE.js";
61
+ import {
62
+ runUpdateMany
63
+ } from "./chunk-QDABF2RB.js";
64
+ import {
65
+ runRestore
66
+ } from "./chunk-EMXPI36L.js";
67
+ import {
68
+ runUpdate
69
+ } from "./chunk-7PNQA24K.js";
17
70
  import {
18
71
  runClose
19
- } from "./chunk-K3AGVXSF.js";
72
+ } from "./chunk-6LCJRGPD.js";
73
+ import {
74
+ runPlan
75
+ } from "./chunk-XXIYUTLK.js";
76
+ import {
77
+ runHistoryCompact
78
+ } from "./chunk-XHCVAZGM.js";
20
79
  import {
21
- buildListQueryFilters
22
- } from "./chunk-VY3VQ22F.js";
80
+ runHistoryRedact
81
+ } from "./chunk-52NS7JDP.js";
23
82
  import {
83
+ runConfig,
84
+ runUpgrade
85
+ } from "./chunk-6G6O3OPQ.js";
86
+ import {
87
+ SCAFFOLD_CAPABILITIES,
88
+ runExtension,
89
+ runInit
90
+ } from "./chunk-Y5IKRUEM.js";
91
+ import {
92
+ runSchemaAddField,
93
+ runSchemaAddStatus,
94
+ runSchemaAddType,
95
+ runSchemaApplyPreset,
96
+ runSchemaInferTypes,
97
+ runSchemaList,
98
+ runSchemaListFields,
99
+ runSchemaRemoveField,
100
+ runSchemaRemoveStatus,
101
+ runSchemaRemoveType,
102
+ runSchemaShow,
103
+ runSchemaShowField,
104
+ runSchemaShowStatus
105
+ } from "./chunk-CJQM7O7R.js";
106
+ import {
107
+ jaccardSimilarity,
108
+ normalizeLowercaseWhitespace,
109
+ runActivity,
110
+ runAggregate,
111
+ runContext,
112
+ runGet,
113
+ runNext,
114
+ runSearch,
115
+ tokenizeAlphaNumeric
116
+ } from "./chunk-7ML7JONU.js";
117
+ import {
118
+ buildListQueryFilters,
24
119
  runList
25
- } from "./chunk-YSAH5FY5.js";
120
+ } from "./chunk-RY7PTTUB.js";
121
+ import {
122
+ runHistory
123
+ } from "./chunk-565WYS5W.js";
26
124
  import {
27
125
  parseIntegerLimit
28
- } from "./chunk-YFIE7YK6.js";
126
+ } from "./chunk-AJUON7E6.js";
127
+ import {
128
+ resolveRegisteredSearchProvider,
129
+ resolveRegisteredVectorStoreAdapter
130
+ } from "./chunk-KGHH652T.js";
29
131
  import {
30
132
  REINDEX_LOCK_ID,
31
133
  buildSearchCorpus,
@@ -39,6 +141,8 @@ import {
39
141
  hasVectorizationEmbeddingIdentityChanged,
40
142
  hasVectorizationVectorDimensionChanged,
41
143
  inferConsistentVectorDimension,
144
+ normalizeListOptions,
145
+ normalizeUpdateOptions,
42
146
  readVectorizationStatusLedger,
43
147
  resolveEmbeddingProviders,
44
148
  resolveSearchCorpusFields,
@@ -46,17 +150,7 @@ import {
46
150
  resolveSettingsWithSemanticRuntimeDefaults,
47
151
  resolveVectorStores,
48
152
  writeVectorizationStatusLedger
49
- } from "./chunk-7QH7DHUB.js";
50
- import {
51
- resolveRegisteredSearchProvider,
52
- resolveRegisteredVectorStoreAdapter
53
- } from "./chunk-KGHH652T.js";
54
- import {
55
- SCAFFOLD_CAPABILITIES
56
- } from "./chunk-53BTLLAF.js";
57
- import {
58
- splitCommaList
59
- } from "./chunk-P4SESZGT.js";
153
+ } from "./chunk-XZWL7VNE.js";
60
154
  import {
61
155
  ACTIVITY_FLAG_CONTRACTS,
62
156
  AGGREGATE_FLAG_CONTRACTS,
@@ -85,42 +179,66 @@ import {
85
179
  PM_CORE_COMMAND_NAMES,
86
180
  REMIND_FLAG_CONTRACTS,
87
181
  SEARCH_FLAG_CONTRACTS,
182
+ UPDATE_COMMANDER_STRING_OPTION_CONTRACTS,
88
183
  UPDATE_FLAG_CONTRACTS,
89
184
  UPDATE_MANY_FLAG_CONTRACTS,
90
185
  toCompletionFlagString
91
- } from "./chunk-PPE4YUQM.js";
186
+ } from "./chunk-2APXX4TZ.js";
92
187
  import {
188
+ runCreate
189
+ } from "./chunk-QFBSP3NI.js";
190
+ import {
191
+ parseTags
192
+ } from "./chunk-DR2V5OIV.js";
193
+ import {
194
+ splitCommaList
195
+ } from "./chunk-P4SESZGT.js";
196
+ import {
197
+ projectMutationResult
198
+ } from "./chunk-EOUVR7JN.js";
199
+ import {
200
+ PmCliError,
93
201
  acquireLock,
94
202
  appendHistoryEntry,
95
203
  collectRegisteredItemFieldNames,
204
+ compareTimestampStrings,
96
205
  createHistoryEntry,
206
+ getActiveExtensionRegistrations,
207
+ isTerminalStatus,
97
208
  listAllDocumentCandidatesCached,
98
209
  locateItem,
99
- readLocatedItem,
100
- toItemRecord
101
- } from "./chunk-57C2RLW5.js";
102
- import {
103
- isTerminalStatus,
104
210
  normalizeStatusInput,
211
+ nowIso,
105
212
  parseItemDocument,
106
- serializeItemDocument
107
- } from "./chunk-HK72NWAD.js";
108
- import {
109
- compareTimestampStrings,
110
- nowIso
111
- } from "./chunk-FJRKQREY.js";
112
- import {
113
- PmCliError,
114
- getActiveExtensionRegistrations,
213
+ readLocatedItem,
115
214
  readSettings,
215
+ runActiveCommandHandler,
116
216
  runActiveOnIndexHooks,
117
- runActiveOnWriteHooks
118
- } from "./chunk-US3T3W5J.js";
217
+ runActiveOnWriteHooks,
218
+ serializeItemDocument,
219
+ setActiveExtensionCommands,
220
+ setActiveExtensionHooks,
221
+ setActiveExtensionParsers,
222
+ setActiveExtensionPreflight,
223
+ setActiveExtensionRegistrations,
224
+ setActiveExtensionRenderers,
225
+ setActiveExtensionServices,
226
+ toItemRecord
227
+ } from "./chunk-GH73UOSJ.js";
119
228
  import {
120
229
  BUILTIN_ITEM_TYPE_VALUES,
121
230
  EXIT_CODE,
122
231
  STATUS_VALUES,
123
232
  activateExtensions,
233
+ asRecordClone,
234
+ createEmptyExtensionCommandRegistry,
235
+ createEmptyExtensionHookRegistry,
236
+ createEmptyExtensionParserRegistry,
237
+ createEmptyExtensionPreflightRegistry,
238
+ createEmptyExtensionRegistrationRegistry,
239
+ createEmptyExtensionRendererRegistry,
240
+ createEmptyExtensionServiceRegistry,
241
+ deactivateExtensions,
124
242
  getHistoryPath,
125
243
  getSettingsPath,
126
244
  loadExtensions,
@@ -133,11 +251,97 @@ import {
133
251
  toErrorMessage,
134
252
  toNonEmptyStringOrUndefined,
135
253
  writeFileAtomic
136
- } from "./chunk-YD5FML7K.js";
254
+ } from "./chunk-UO7XAZK6.js";
137
255
 
138
256
  // dist/sdk/runtime.js
139
257
  import path3 from "node:path";
140
258
 
259
+ // dist/core/output/query-summary.js
260
+ function isRecord(value) {
261
+ return value !== null && typeof value === "object" && !Array.isArray(value);
262
+ }
263
+ function resolveQueryProjectionLabel(options) {
264
+ if (options.brief === true) {
265
+ return "brief";
266
+ }
267
+ if (typeof options.fields === "string" && options.fields.trim().length > 0) {
268
+ return "fields";
269
+ }
270
+ if (Array.isArray(options.fields) && options.fields.length > 0) {
271
+ return "fields";
272
+ }
273
+ if (options.compact === true) {
274
+ return "compact";
275
+ }
276
+ return "full";
277
+ }
278
+ function withQuerySummary(result, options) {
279
+ const requestedLabel = resolveQueryProjectionLabel(options);
280
+ const projection = requestedLabel === "brief" ? requestedLabel : isRecord(result.projection) && typeof result.projection.mode === "string" ? result.projection.mode : requestedLabel;
281
+ return {
282
+ ...result,
283
+ query_summary: {
284
+ filters: isRecord(result.filters) ? result.filters : {},
285
+ projection
286
+ }
287
+ };
288
+ }
289
+
290
+ // dist/core/shared/serial-queue.js
291
+ function createSerialQueue() {
292
+ let tail = Promise.resolve();
293
+ let pending = 0;
294
+ const idleWaiters = [];
295
+ const notifyIdle = () => {
296
+ if (pending !== 0) {
297
+ return;
298
+ }
299
+ const waiters = idleWaiters.splice(0);
300
+ for (const resolve of waiters) {
301
+ resolve();
302
+ }
303
+ };
304
+ return {
305
+ enqueue(task) {
306
+ pending++;
307
+ const run = tail.then(() => task());
308
+ tail = run.then(() => void 0, () => void 0).finally(() => {
309
+ pending--;
310
+ notifyIdle();
311
+ });
312
+ return run;
313
+ },
314
+ idle() {
315
+ return pending === 0 ? Promise.resolve() : new Promise((resolve) => idleWaiters.push(resolve));
316
+ }
317
+ };
318
+ }
319
+
320
+ // dist/sdk/workspace-contracts-cache.js
321
+ var WORKSPACE_CONTRACTS_CACHE_LIMIT = 50;
322
+ var workspaceExtensionRegistrationsCache = /* @__PURE__ */ new Map();
323
+ function clearWorkspaceContractsCache() {
324
+ workspaceExtensionRegistrationsCache.clear();
325
+ }
326
+ function memoizeWorkspaceExtensionRegistrations(cacheKey, loadRegistrations) {
327
+ const cached = workspaceExtensionRegistrationsCache.get(cacheKey);
328
+ if (cached !== void 0) {
329
+ return cached;
330
+ }
331
+ if (workspaceExtensionRegistrationsCache.size >= WORKSPACE_CONTRACTS_CACHE_LIMIT) {
332
+ const oldestKey = workspaceExtensionRegistrationsCache.keys().next().value;
333
+ workspaceExtensionRegistrationsCache.delete(oldestKey);
334
+ }
335
+ const registrations = loadRegistrations().catch((error) => {
336
+ if (workspaceExtensionRegistrationsCache.get(cacheKey) === registrations) {
337
+ workspaceExtensionRegistrationsCache.delete(cacheKey);
338
+ }
339
+ throw error;
340
+ });
341
+ workspaceExtensionRegistrationsCache.set(cacheKey, registrations);
342
+ return registrations;
343
+ }
344
+
141
345
  // dist/sdk/package-runtime-options.js
142
346
  var BOOLEAN_TRUE_VALUES = /* @__PURE__ */ new Set(["true", "1", "yes", "on"]);
143
347
  var BOOLEAN_FALSE_VALUES = /* @__PURE__ */ new Set(["false", "0", "no", "off"]);
@@ -3689,16 +3893,16 @@ function buildCommentsAuditSummary(items) {
3689
3893
  entry.comments_exported += item.comments.length;
3690
3894
  byTypeAccumulator.set(item.type, entry);
3691
3895
  }
3692
- const byType = [...byTypeAccumulator.entries()].sort(([left], [right]) => left.localeCompare(right)).map(([type, stats]) => {
3693
- const zeroCount = stats.items_scanned - stats.items_with_comments;
3694
- const coverage = ratioPercent(stats.items_with_comments, stats.items_scanned);
3896
+ const byType = [...byTypeAccumulator.entries()].sort(([left], [right]) => left.localeCompare(right)).map(([type, stats2]) => {
3897
+ const zeroCount = stats2.items_scanned - stats2.items_with_comments;
3898
+ const coverage = ratioPercent(stats2.items_with_comments, stats2.items_scanned);
3695
3899
  return {
3696
3900
  type,
3697
- items_scanned: stats.items_scanned,
3698
- items_with_comments: stats.items_with_comments,
3901
+ items_scanned: stats2.items_scanned,
3902
+ items_with_comments: stats2.items_with_comments,
3699
3903
  zero_comment_items: zeroCount,
3700
- comments_total: stats.comments_total,
3701
- comments_exported: stats.comments_exported,
3904
+ comments_total: stats2.comments_total,
3905
+ comments_exported: stats2.comments_exported,
3702
3906
  items_with_comments_ratio: coverage.ratio,
3703
3907
  items_with_comments_percent: coverage.percent
3704
3908
  };
@@ -4204,17 +4408,17 @@ async function applyDedupeMergeReparents(params) {
4204
4408
  }
4205
4409
  async function applyDedupeMergeClose(params) {
4206
4410
  const reason = `Duplicate of ${params.keep}`;
4207
- const close = { duplicate_of: params.keep, reason, applied: false };
4411
+ const close2 = { duplicate_of: params.keep, reason, applied: false };
4208
4412
  if (isTerminalStatus(params.duplicate.metadata.status, params.statusRegistry)) {
4209
- close.skipped_reason = "already_terminal";
4413
+ close2.skipped_reason = "already_terminal";
4210
4414
  if (params.duplicate.metadata.duplicate_of?.trim() !== params.keep) {
4211
4415
  params.warnings.push(`close_skipped_terminal:${params.duplicate.id}:already_closed`);
4212
4416
  }
4213
- return close;
4417
+ return close2;
4214
4418
  }
4215
4419
  if (!params.apply) {
4216
- close.skipped_reason = "dry_run";
4217
- return close;
4420
+ close2.skipped_reason = "dry_run";
4421
+ return close2;
4218
4422
  }
4219
4423
  try {
4220
4424
  await runClose(params.duplicate.id, void 0, {
@@ -4222,12 +4426,12 @@ async function applyDedupeMergeClose(params) {
4222
4426
  author: params.options.author,
4223
4427
  message: params.options.message ?? `dedupe-merge: close ${params.duplicate.id} as duplicate of ${params.keep}`
4224
4428
  }, params.global);
4225
- close.applied = true;
4429
+ close2.applied = true;
4226
4430
  } catch (error) {
4227
- close.skipped_reason = "failed";
4431
+ close2.skipped_reason = "failed";
4228
4432
  params.warnings.push(`close_failed:${params.duplicate.id}:${error instanceof Error ? error.message : String(error)}`);
4229
4433
  }
4230
- return close;
4434
+ return close2;
4231
4435
  }
4232
4436
  async function runDedupeMerge(options, global) {
4233
4437
  const pmRoot = resolvePmRoot(process.cwd(), global.path);
@@ -4274,14 +4478,14 @@ async function runDedupeMerge(options, global) {
4274
4478
  global,
4275
4479
  warnings
4276
4480
  });
4277
- const close = await applyDedupeMergeClose({ duplicate, keep, apply, options, global, statusRegistry, warnings });
4481
+ const close2 = await applyDedupeMergeClose({ duplicate, keep, apply, options, global, statusRegistry, warnings });
4278
4482
  outcomes.push({
4279
4483
  duplicate_id: duplicate.id,
4280
4484
  duplicate_title: duplicate.title,
4281
4485
  canonical_id: keep,
4282
4486
  reparented_children: reparented,
4283
4487
  skipped_children: skippedChildren,
4284
- close
4488
+ close: close2
4285
4489
  });
4286
4490
  }
4287
4491
  const childrenReparented = outcomes.reduce((total, outcome) => total + outcome.reparented_children.filter((child) => child.applied).length, 0);
@@ -4714,9 +4918,9 @@ function resolveExtensionVectorAdapter(settings) {
4714
4918
  ...typeof deleteHandler === "function" ? { delete: deleteHandler } : {}
4715
4919
  };
4716
4920
  }
4717
- function assertVector(value, context) {
4921
+ function assertVector(value, context2) {
4718
4922
  if (!Array.isArray(value) || value.some((entry) => typeof entry !== "number" || !Number.isFinite(entry))) {
4719
- throw new PmCliError(`Invalid vector returned by ${context}`, EXIT_CODE.GENERIC_FAILURE);
4923
+ throw new PmCliError(`Invalid vector returned by ${context2}`, EXIT_CODE.GENERIC_FAILURE);
4720
4924
  }
4721
4925
  return value;
4722
4926
  }
@@ -4885,7 +5089,7 @@ function assertSemanticRuntimeAvailable(params) {
4885
5089
  if (!providerResolution.active && !params.extensionEmbedding) {
4886
5090
  throw new PmCliError(`Reindex mode '${params.requestedMode}' requires a configured embedding provider in settings.providers.openai/settings.providers.ollama or an extension provider selected by settings.search.provider`, EXIT_CODE.USAGE);
4887
5091
  }
4888
- const vectorResolution = resolveVectorStores(params.settings);
5092
+ const vectorResolution = resolveVectorStores(params.settings, params.pmRoot);
4889
5093
  if (!vectorResolution.active && !params.extensionVectorAdapter) {
4890
5094
  throw new PmCliError(`Reindex mode '${params.requestedMode}' requires a configured vector store in settings.vector_store.qdrant/settings.vector_store.lancedb or an extension adapter selected by settings.vector_store.adapter`, EXIT_CODE.USAGE);
4891
5095
  }
@@ -5156,6 +5360,7 @@ async function runReindex(options, global) {
5156
5360
  const extensionVectorAdapter = resolveExtensionVectorAdapter(settings);
5157
5361
  const semanticRuntime = assertSemanticRuntimeAvailable({
5158
5362
  requestedMode,
5363
+ pmRoot,
5159
5364
  settings,
5160
5365
  extensionEmbedding,
5161
5366
  extensionVectorAdapter
@@ -5245,8 +5450,214 @@ async function runReindex(options, global) {
5245
5450
  }
5246
5451
 
5247
5452
  // dist/sdk/runtime.js
5248
- var WORKSPACE_CONTRACTS_CACHE_LIMIT = 50;
5249
- var workspaceExtensionRegistrationsCache = /* @__PURE__ */ new Map();
5453
+ function splitClientMutationOptions(options) {
5454
+ const { fullChangedFields, idOnly, ...runnerOptions } = options;
5455
+ return {
5456
+ ...fullChangedFields === void 0 ? {} : { fullChangedFields },
5457
+ ...idOnly === void 0 ? {} : { idOnly },
5458
+ options: runnerOptions
5459
+ };
5460
+ }
5461
+ var PmClient = class {
5462
+ defaults;
5463
+ /**
5464
+ * Create a client with workspace, author, and extension-loading defaults.
5465
+ */
5466
+ constructor(options = {}) {
5467
+ this.defaults = {
5468
+ ...options.pmRoot === void 0 ? {} : { path: options.pmRoot },
5469
+ ...options.cwd === void 0 ? {} : { cwd: options.cwd },
5470
+ ...options.author === void 0 ? {} : { author: options.author },
5471
+ ...options.noExtensions === void 0 ? {} : { noExtensions: options.noExtensions }
5472
+ };
5473
+ }
5474
+ /**
5475
+ * Run any native or extension-contributed action through the SDK dispatcher.
5476
+ */
5477
+ run(action, args = {}) {
5478
+ return runAction({ ...this.defaults, ...args, action });
5479
+ }
5480
+ runTyped(action, args = {}) {
5481
+ return this.run(action, args);
5482
+ }
5483
+ /**
5484
+ * Return the same context snapshot produced by `pm context`.
5485
+ */
5486
+ context(options = {}) {
5487
+ return this.runTyped("context", { options });
5488
+ }
5489
+ /**
5490
+ * List items with the MCP/agent compact defaults.
5491
+ */
5492
+ list(options = {}) {
5493
+ return this.runTyped("list", { options });
5494
+ }
5495
+ /**
5496
+ * Search items with the MCP/agent compact defaults.
5497
+ */
5498
+ search(query, options = {}) {
5499
+ return this.runTyped("search", { query, options });
5500
+ }
5501
+ /**
5502
+ * Read one item by id.
5503
+ */
5504
+ get(id, options = {}) {
5505
+ return this.runTyped("get", { id, options });
5506
+ }
5507
+ /**
5508
+ * Return the ranked next-work recommendation produced by `pm next`.
5509
+ */
5510
+ next(options = {}) {
5511
+ return this.runTyped("next", { options });
5512
+ }
5513
+ /**
5514
+ * Group matching items with the same semantics as `pm aggregate`.
5515
+ */
5516
+ aggregate(options = {}) {
5517
+ return this.runTyped("aggregate", { options });
5518
+ }
5519
+ /**
5520
+ * Return project tracker statistics with the same sections as `pm stats`.
5521
+ */
5522
+ stats(options = {}) {
5523
+ return this.runTyped("stats", { options });
5524
+ }
5525
+ /**
5526
+ * Create an item using the same mutation path as `pm create`.
5527
+ */
5528
+ create(options = {}) {
5529
+ return this.run("create", splitClientMutationOptions(options));
5530
+ }
5531
+ /**
5532
+ * Update an item using the same mutation path as `pm update`.
5533
+ */
5534
+ update(id, options = {}) {
5535
+ return this.run("update", { id, ...splitClientMutationOptions(options) });
5536
+ }
5537
+ /**
5538
+ * Close an item using the same mutation path as `pm close`.
5539
+ */
5540
+ close(id, reason, options = {}) {
5541
+ return this.run("close", { id, reason, ...splitClientMutationOptions(options) });
5542
+ }
5543
+ /**
5544
+ * Claim an item using the same mutation path as `pm claim`.
5545
+ */
5546
+ claim(id, options = {}) {
5547
+ return this.run("claim", { id, ...splitClientMutationOptions(options) });
5548
+ }
5549
+ /**
5550
+ * Release an item's active claim using the same mutation path as `pm release`.
5551
+ */
5552
+ release(id, options = {}) {
5553
+ return this.run("release", { id, ...splitClientMutationOptions(options) });
5554
+ }
5555
+ /**
5556
+ * Copy an item using the same mutation path as `pm copy`.
5557
+ */
5558
+ copy(id, options = {}) {
5559
+ return this.run("copy", { id, ...splitClientMutationOptions(options) });
5560
+ }
5561
+ /**
5562
+ * Delete an item using the same mutation path as `pm delete`.
5563
+ */
5564
+ delete(id, options = {}) {
5565
+ return this.run("delete", { id, ...splitClientMutationOptions(options) });
5566
+ }
5567
+ /**
5568
+ * Restore an item to a history version or timestamp using `pm restore`.
5569
+ */
5570
+ restore(id, target, options = {}) {
5571
+ const { fullChangedFields, idOnly, ...runnerOptions } = options;
5572
+ return this.run("restore", {
5573
+ ...fullChangedFields === void 0 ? {} : { fullChangedFields },
5574
+ ...idOnly === void 0 ? {} : { idOnly },
5575
+ id,
5576
+ options: { ...runnerOptions, target }
5577
+ });
5578
+ }
5579
+ /**
5580
+ * Set, clear, or read workspace focus using the same path as `pm focus`.
5581
+ */
5582
+ focus(id, options = {}) {
5583
+ return this.run("focus", { ...id === void 0 ? {} : { id }, ...splitClientMutationOptions(options) });
5584
+ }
5585
+ /**
5586
+ * Claim an item and transition it to the workspace in-progress status.
5587
+ */
5588
+ startTask(id, options = {}) {
5589
+ return this.run("start-task", { id, ...splitClientMutationOptions(options) });
5590
+ }
5591
+ /**
5592
+ * Move an item back to the workspace open status and release the claim.
5593
+ */
5594
+ pauseTask(id, options = {}) {
5595
+ return this.run("pause-task", { id, ...splitClientMutationOptions(options) });
5596
+ }
5597
+ /**
5598
+ * Close an item and release its active assignment.
5599
+ */
5600
+ closeTask(id, reason, options = {}) {
5601
+ return this.run("close-task", { id, reason, ...splitClientMutationOptions(options) });
5602
+ }
5603
+ };
5604
+ function context(options = {}, clientOptions = {}) {
5605
+ return new PmClient(clientOptions).context(options);
5606
+ }
5607
+ function list(options = {}, clientOptions = {}) {
5608
+ return new PmClient(clientOptions).list(options);
5609
+ }
5610
+ function search(query, options = {}, clientOptions = {}) {
5611
+ return new PmClient(clientOptions).search(query, options);
5612
+ }
5613
+ function get(id, options = {}, clientOptions = {}) {
5614
+ return new PmClient(clientOptions).get(id, options);
5615
+ }
5616
+ function next(options = {}, clientOptions = {}) {
5617
+ return new PmClient(clientOptions).next(options);
5618
+ }
5619
+ function aggregate(options = {}, clientOptions = {}) {
5620
+ return new PmClient(clientOptions).aggregate(options);
5621
+ }
5622
+ function stats(options = {}, clientOptions = {}) {
5623
+ return new PmClient(clientOptions).stats(options);
5624
+ }
5625
+ function create(options = {}, clientOptions = {}) {
5626
+ return new PmClient(clientOptions).create(options);
5627
+ }
5628
+ function update(id, options = {}, clientOptions = {}) {
5629
+ return new PmClient(clientOptions).update(id, options);
5630
+ }
5631
+ function close(id, reason, options = {}, clientOptions = {}) {
5632
+ return new PmClient(clientOptions).close(id, reason, options);
5633
+ }
5634
+ function claim(id, options = {}, clientOptions = {}) {
5635
+ return new PmClient(clientOptions).claim(id, options);
5636
+ }
5637
+ function release(id, options = {}, clientOptions = {}) {
5638
+ return new PmClient(clientOptions).release(id, options);
5639
+ }
5640
+ function copy(id, options = {}, clientOptions = {}) {
5641
+ return new PmClient(clientOptions).copy(id, options);
5642
+ }
5643
+ function deleteItem(id, options = {}, clientOptions = {}) {
5644
+ return new PmClient(clientOptions).delete(id, options);
5645
+ }
5646
+ function restore(id, target, options = {}, clientOptions = {}) {
5647
+ return new PmClient(clientOptions).restore(id, target, options);
5648
+ }
5649
+ function focus(id, options = {}, clientOptions = {}) {
5650
+ return new PmClient(clientOptions).focus(id, options);
5651
+ }
5652
+ function startTask(id, options = {}, clientOptions = {}) {
5653
+ return new PmClient(clientOptions).startTask(id, options);
5654
+ }
5655
+ function pauseTask(id, options = {}, clientOptions = {}) {
5656
+ return new PmClient(clientOptions).pauseTask(id, options);
5657
+ }
5658
+ function closeTask(id, reason, options = {}, clientOptions = {}) {
5659
+ return new PmClient(clientOptions).closeTask(id, reason, options);
5660
+ }
5250
5661
  function buildWorkspaceExtensionRegistrationsCacheKey(pmRoot, settings, cwd) {
5251
5662
  return JSON.stringify([
5252
5663
  path3.resolve(pmRoot),
@@ -5256,22 +5667,9 @@ function buildWorkspaceExtensionRegistrationsCacheKey(pmRoot, settings, cwd) {
5256
5667
  settings.extensions.policy
5257
5668
  ]);
5258
5669
  }
5259
- function clearWorkspaceContractsCache() {
5260
- workspaceExtensionRegistrationsCache.clear();
5261
- }
5262
5670
  async function resolveWorkspaceExtensionRegistrations(pmRoot, settings, cwd) {
5263
5671
  const cacheKey = buildWorkspaceExtensionRegistrationsCacheKey(pmRoot, settings, cwd);
5264
- const cached = workspaceExtensionRegistrationsCache.get(cacheKey);
5265
- if (cached !== void 0) {
5266
- return cached;
5267
- }
5268
- if (workspaceExtensionRegistrationsCache.size >= WORKSPACE_CONTRACTS_CACHE_LIMIT) {
5269
- const oldestKey = workspaceExtensionRegistrationsCache.keys().next().value;
5270
- workspaceExtensionRegistrationsCache.delete(oldestKey);
5271
- }
5272
- const registrations = loadWorkspaceExtensionRegistrations(pmRoot, settings, cwd);
5273
- workspaceExtensionRegistrationsCache.set(cacheKey, registrations);
5274
- return registrations;
5672
+ return memoizeWorkspaceExtensionRegistrations(cacheKey, () => loadWorkspaceExtensionRegistrations(pmRoot, settings, cwd));
5275
5673
  }
5276
5674
  async function getWorkspaceContracts(pmRoot, options = {}) {
5277
5675
  const settings = await readSettings(pmRoot);
@@ -5298,6 +5696,940 @@ async function getContracts(pmRootOrOptions, options = {}) {
5298
5696
  };
5299
5697
  return runContracts(resolvedOptions, global);
5300
5698
  }
5699
+ function readString(args, key) {
5700
+ const value = args[key];
5701
+ return typeof value === "string" && value.trim().length > 0 ? value : void 0;
5702
+ }
5703
+ function readScalarString(args, key) {
5704
+ const value = args[key];
5705
+ if (typeof value === "string") {
5706
+ return value.trim().length > 0 ? value : void 0;
5707
+ }
5708
+ return typeof value === "number" && Number.isFinite(value) ? String(value) : void 0;
5709
+ }
5710
+ function readScalarStringAllowBlank(args, key) {
5711
+ const value = args[key];
5712
+ if (typeof value === "string") {
5713
+ return value;
5714
+ }
5715
+ return typeof value === "number" && Number.isFinite(value) ? String(value) : void 0;
5716
+ }
5717
+ function isRecord2(value) {
5718
+ return value !== null && typeof value === "object" && !Array.isArray(value);
5719
+ }
5720
+ function readRequiredString(args, key) {
5721
+ const value = readString(args, key);
5722
+ if (!value) {
5723
+ throw new PmCliError(`Missing required argument: ${key}`, 64);
5724
+ }
5725
+ return value;
5726
+ }
5727
+ function globalOptions(args) {
5728
+ return {
5729
+ json: true,
5730
+ quiet: true,
5731
+ path: readString(args, "path"),
5732
+ noExtensions: args.noExtensions === true || args.no_extensions === true,
5733
+ noPager: true
5734
+ };
5735
+ }
5736
+ var ARRAY_TO_CSV_FIELDS = /* @__PURE__ */ new Set(["tags", "blockedBy", "blocked_by", "skills", "fields"]);
5737
+ var SCALAR_TO_ARRAY_FIELDS = /* @__PURE__ */ new Set([
5738
+ "comment",
5739
+ "note",
5740
+ "learning",
5741
+ "reminder",
5742
+ "event",
5743
+ "dep",
5744
+ "depRemove",
5745
+ "dep_remove",
5746
+ "file",
5747
+ "doc",
5748
+ "test",
5749
+ "unset",
5750
+ "addGlob",
5751
+ "add_glob",
5752
+ "migrate",
5753
+ "envSet",
5754
+ "env_set",
5755
+ "envClear",
5756
+ "env_clear"
5757
+ ]);
5758
+ var ARRAY_ADD_REMOVE_ACTIONS = /* @__PURE__ */ new Set([
5759
+ "files",
5760
+ "files-discover",
5761
+ "docs",
5762
+ "test",
5763
+ "test-all"
5764
+ ]);
5765
+ var LIFECYCLE_AUTHOR_ALIAS_ACTIONS = /* @__PURE__ */ new Set([
5766
+ "claim",
5767
+ "release",
5768
+ "start-task",
5769
+ "pause-task",
5770
+ "close-task"
5771
+ ]);
5772
+ function normalizeMcpOptionsArrays(options, action) {
5773
+ const result = {};
5774
+ const promoteAddRemove = action !== void 0 && ARRAY_ADD_REMOVE_ACTIONS.has(action);
5775
+ for (const [key, value] of Object.entries(options)) {
5776
+ if (Array.isArray(value) && ARRAY_TO_CSV_FIELDS.has(key)) {
5777
+ result[key] = value.join(",");
5778
+ continue;
5779
+ }
5780
+ if (typeof value === "string" && SCALAR_TO_ARRAY_FIELDS.has(key)) {
5781
+ result[key] = [value];
5782
+ continue;
5783
+ }
5784
+ if (typeof value === "string" && promoteAddRemove && (key === "add" || key === "remove")) {
5785
+ result[key] = [value];
5786
+ continue;
5787
+ }
5788
+ result[key] = value;
5789
+ }
5790
+ return result;
5791
+ }
5792
+ function optionsWithAuthor(args, action) {
5793
+ const baseOptions = asRecordClone(args.options);
5794
+ const hoistedTopLevel = {};
5795
+ const hoistKey = (key) => {
5796
+ if (baseOptions[key] !== void 0 || args[key] === void 0) {
5797
+ return;
5798
+ }
5799
+ hoistedTopLevel[key] = args[key];
5800
+ };
5801
+ if (action === "list") {
5802
+ hoistKey("status");
5803
+ hoistKey("type");
5804
+ hoistKey("tag");
5805
+ hoistKey("priority");
5806
+ hoistKey("limit");
5807
+ hoistKey("offset");
5808
+ } else if (action === "search") {
5809
+ hoistKey("mode");
5810
+ hoistKey("status");
5811
+ hoistKey("type");
5812
+ hoistKey("tag");
5813
+ hoistKey("priority");
5814
+ hoistKey("limit");
5815
+ } else if (action === "create") {
5816
+ hoistKey("title");
5817
+ hoistKey("type");
5818
+ hoistKey("status");
5819
+ hoistKey("description");
5820
+ hoistKey("body");
5821
+ hoistKey("priority");
5822
+ hoistKey("tags");
5823
+ hoistKey("parent");
5824
+ hoistKey("createMode");
5825
+ hoistKey("create_mode");
5826
+ hoistKey("allowMissingParent");
5827
+ } else if (action === "close") {
5828
+ hoistKey("duplicateOf");
5829
+ } else if (action === "append") {
5830
+ hoistKey("body");
5831
+ }
5832
+ const options = normalizeMcpOptionsArrays({ ...hoistedTopLevel, ...baseOptions }, action);
5833
+ const author = readString(args, "author");
5834
+ const authorFromAssignee = action !== void 0 && LIFECYCLE_AUTHOR_ALIAS_ACTIONS.has(action) ? readString(args, "assignee") ?? readString(options, "assignee") : void 0;
5835
+ if (author && options.author === void 0) {
5836
+ return { ...options, author };
5837
+ }
5838
+ if (authorFromAssignee && options.author === void 0) {
5839
+ return { ...options, author: authorFromAssignee };
5840
+ }
5841
+ return options;
5842
+ }
5843
+ function withAddNoteOption(options) {
5844
+ if (options.addNote === void 0) {
5845
+ return options;
5846
+ }
5847
+ const next2 = { ...options };
5848
+ if (next2.note === void 0 && typeof next2.addNote === "string") {
5849
+ next2.note = next2.addNote;
5850
+ }
5851
+ delete next2.addNote;
5852
+ return next2;
5853
+ }
5854
+ function withFilesDiscoveryOptions(options) {
5855
+ const next2 = { ...options };
5856
+ if (next2.discoveryNote !== void 0 && next2.note === void 0 && typeof next2.discoveryNote === "string") {
5857
+ next2.note = next2.discoveryNote;
5858
+ }
5859
+ delete next2.discover;
5860
+ delete next2.discoveryNote;
5861
+ return next2;
5862
+ }
5863
+ function normalizeActionName(value) {
5864
+ const chunks = [];
5865
+ let lastWasSeparator = true;
5866
+ for (const character of value.trim().toLowerCase()) {
5867
+ const isAlphaNumeric = character >= "a" && character <= "z" || character >= "0" && character <= "9";
5868
+ if (isAlphaNumeric) {
5869
+ chunks.push(character);
5870
+ lastWasSeparator = false;
5871
+ continue;
5872
+ }
5873
+ if (!lastWasSeparator) {
5874
+ chunks.push("-");
5875
+ lastWasSeparator = true;
5876
+ }
5877
+ }
5878
+ if (chunks.at(-1) === "-") {
5879
+ chunks.pop();
5880
+ }
5881
+ return chunks.join("");
5882
+ }
5883
+ function normalizeCommandPath(value) {
5884
+ return value.trim().toLowerCase().split(/\s+/).filter(Boolean).join(" ");
5885
+ }
5886
+ function readStringArray(value) {
5887
+ if (!Array.isArray(value)) {
5888
+ return [];
5889
+ }
5890
+ return value.map((entry) => String(entry)).filter((entry) => entry.length > 0);
5891
+ }
5892
+ function extensionOptionsFromArgs(args, options) {
5893
+ const reserved = /* @__PURE__ */ new Set([
5894
+ "action",
5895
+ "args",
5896
+ "author",
5897
+ "cwd",
5898
+ "fullChangedFields",
5899
+ "id",
5900
+ "options",
5901
+ "path",
5902
+ "query",
5903
+ "reason",
5904
+ "target"
5905
+ ]);
5906
+ const passthrough = {};
5907
+ for (const [key, value] of Object.entries(args)) {
5908
+ if (!reserved.has(key)) {
5909
+ passthrough[key] = value;
5910
+ }
5911
+ }
5912
+ const normalizedOptions = { ...passthrough, ...options };
5913
+ delete normalizedOptions.args;
5914
+ return normalizedOptions;
5915
+ }
5916
+ var extensionActivationQueue = createSerialQueue();
5917
+ function resetActiveExtensionRegistries() {
5918
+ setActiveExtensionHooks(createEmptyExtensionHookRegistry());
5919
+ setActiveExtensionCommands(createEmptyExtensionCommandRegistry());
5920
+ setActiveExtensionParsers(createEmptyExtensionParserRegistry());
5921
+ setActiveExtensionPreflight(createEmptyExtensionPreflightRegistry());
5922
+ setActiveExtensionServices(createEmptyExtensionServiceRegistry());
5923
+ setActiveExtensionRenderers(createEmptyExtensionRendererRegistry());
5924
+ setActiveExtensionRegistrations(createEmptyExtensionRegistrationRegistry());
5925
+ }
5926
+ async function withActiveExtensions(global, explicitCwd, resolutionCwd, run) {
5927
+ return extensionActivationQueue.enqueue(async () => explicitCwd === void 0 ? await withActiveExtensionsExclusively(global, resolutionCwd, run) : await withCwd(explicitCwd, () => withActiveExtensionsExclusively(global, resolutionCwd, run)));
5928
+ }
5929
+ async function withActiveExtensionsExclusively(global, cwd, run) {
5930
+ if (global.noExtensions) {
5931
+ resetActiveExtensionRegistries();
5932
+ return run(null);
5933
+ }
5934
+ const pmRoot = resolvePmRoot(cwd, global.path);
5935
+ if (!await pathExists(getSettingsPath(pmRoot))) {
5936
+ resetActiveExtensionRegistries();
5937
+ return run(null);
5938
+ }
5939
+ let active = null;
5940
+ let activated;
5941
+ try {
5942
+ const settings = await readSettings(pmRoot);
5943
+ const loadResult = await loadExtensions({ pmRoot, settings, cwd, noExtensions: false });
5944
+ const activationResult = await activateExtensions({ ...loadResult, loaded: loadResult.loaded });
5945
+ activated = { loadResult, activationResult };
5946
+ setActiveExtensionHooks(activationResult.hooks);
5947
+ setActiveExtensionCommands(activationResult.commands);
5948
+ setActiveExtensionParsers(activationResult.parsers);
5949
+ setActiveExtensionPreflight(activationResult.preflight);
5950
+ setActiveExtensionServices(activationResult.services);
5951
+ setActiveExtensionRenderers(activationResult.renderers);
5952
+ setActiveExtensionRegistrations(activationResult.registrations);
5953
+ active = { registrations: activationResult.registrations, commands: activationResult.commands, pmRoot };
5954
+ } catch (error) {
5955
+ resetActiveExtensionRegistries();
5956
+ console.error("[pm-sdk] extension activation failed; continuing without active extensions:", error);
5957
+ }
5958
+ try {
5959
+ return await run(active);
5960
+ } finally {
5961
+ resetActiveExtensionRegistries();
5962
+ if (activated) {
5963
+ await deactivateExtensions(activated.loadResult, activated.activationResult).catch(() => void 0);
5964
+ }
5965
+ }
5966
+ }
5967
+ async function dispatchActiveExtensionAction(action, args, options, global, active) {
5968
+ if (!active) {
5969
+ throw new PmCliError(`Unsupported native pm action: ${action}`, 64);
5970
+ }
5971
+ const normalizedAction = normalizeActionName(action);
5972
+ const definition = active.registrations.commands.find((entry) => normalizeActionName(entry.action) === normalizedAction);
5973
+ const command = definition?.command ?? active.commands.handlers.find((entry) => normalizeActionName(entry.command) === normalizedAction)?.command;
5974
+ if (!command) {
5975
+ throw new PmCliError(`Unsupported native pm action: ${action}`, 64);
5976
+ }
5977
+ const handlerResult = await runActiveCommandHandler({
5978
+ command: normalizeCommandPath(command),
5979
+ args: readStringArray(options.args ?? args.args),
5980
+ options: extensionOptionsFromArgs(args, options),
5981
+ global,
5982
+ pm_root: active.pmRoot
5983
+ });
5984
+ if (!handlerResult.handled) {
5985
+ const suffix = handlerResult.warnings.length > 0 ? ` (${handlerResult.warnings.join(", ")})` : "";
5986
+ throw new PmCliError(`Unsupported native pm action: ${action}${suffix}`, 64);
5987
+ }
5988
+ return handlerResult.result;
5989
+ }
5990
+ async function withCwd(cwd, run) {
5991
+ const previous = process.cwd();
5992
+ process.chdir(cwd);
5993
+ try {
5994
+ return await run();
5995
+ } finally {
5996
+ process.chdir(previous);
5997
+ }
5998
+ }
5999
+ function withMutationCompaction(args, options) {
6000
+ return { changedFields: args.fullChangedFields === true ? "full" : "compact", idOnly: args.idOnly === true, runnerOptions: { ...options } };
6001
+ }
6002
+ function mutationListOptions(options) {
6003
+ return {
6004
+ type: readScalarString(options, "filterType"),
6005
+ tag: readScalarString(options, "filterTag"),
6006
+ priority: readScalarString(options, "filterPriority"),
6007
+ deadlineBefore: readScalarString(options, "filterDeadlineBefore"),
6008
+ deadlineAfter: readScalarString(options, "filterDeadlineAfter"),
6009
+ updatedAfter: readScalarString(options, "filterUpdatedAfter"),
6010
+ updatedBefore: readScalarString(options, "filterUpdatedBefore"),
6011
+ createdAfter: readScalarString(options, "filterCreatedAfter"),
6012
+ createdBefore: readScalarString(options, "filterCreatedBefore"),
6013
+ ids: readScalarStringAllowBlank(options, "ids"),
6014
+ assignee: readScalarString(options, "filterAssignee"),
6015
+ assigneeFilter: readScalarString(options, "filterAssigneeFilter") ?? readScalarString(options, "filterAssignee_filter"),
6016
+ parent: readScalarString(options, "filterParent"),
6017
+ sprint: readScalarString(options, "filterSprint"),
6018
+ release: readScalarString(options, "filterRelease"),
6019
+ limit: readScalarString(options, "limit"),
6020
+ offset: readScalarString(options, "offset")
6021
+ };
6022
+ }
6023
+ function closeManyOptionsFromFlat(options) {
6024
+ return {
6025
+ status: readString(options, "filterStatus"),
6026
+ list: isRecord2(options.list) ? normalizeListOptions(options.list) : mutationListOptions(options),
6027
+ reason: readString(options, "reason"),
6028
+ resolution: readString(options, "resolution"),
6029
+ expectedResult: readString(options, "expectedResult") ?? readString(options, "expected_result") ?? readString(options, "expected"),
6030
+ actualResult: readString(options, "actualResult") ?? readString(options, "actual_result") ?? readString(options, "actual"),
6031
+ validateClose: readString(options, "validateClose") ?? readString(options, "validate_close"),
6032
+ author: readString(options, "author"),
6033
+ message: readString(options, "message"),
6034
+ force: options.force === true ? true : void 0,
6035
+ dryRun: options.dryRun === true || options.dry_run === true ? true : void 0,
6036
+ rollback: readString(options, "rollback"),
6037
+ checkpoint: options.checkpoint === false || options.noCheckpoint === true || options.no_checkpoint === true ? false : void 0
6038
+ };
6039
+ }
6040
+ var UPDATE_MANY_FLAT_CONTROL_KEYS = /* @__PURE__ */ new Set([
6041
+ "filterStatus",
6042
+ "filterType",
6043
+ "filterTag",
6044
+ "filterPriority",
6045
+ "filterDeadlineBefore",
6046
+ "filterDeadlineAfter",
6047
+ "filterUpdatedAfter",
6048
+ "filterUpdatedBefore",
6049
+ "filterCreatedAfter",
6050
+ "filterCreatedBefore",
6051
+ "filterAssignee",
6052
+ "filterAssigneeFilter",
6053
+ "filterAssignee_filter",
6054
+ "filterParent",
6055
+ "filterSprint",
6056
+ "filterRelease",
6057
+ "ids",
6058
+ "list",
6059
+ "update",
6060
+ "limit",
6061
+ "offset",
6062
+ "dryRun",
6063
+ "dry_run",
6064
+ "rollback",
6065
+ "checkpoint",
6066
+ "noCheckpoint",
6067
+ "no_checkpoint"
6068
+ ]);
6069
+ function updateManyUpdateOptionsFromFlat(options) {
6070
+ const update2 = {};
6071
+ for (const [key, value] of Object.entries(options)) {
6072
+ if (UPDATE_MANY_FLAT_CONTROL_KEYS.has(key)) {
6073
+ continue;
6074
+ }
6075
+ update2[key] = value;
6076
+ }
6077
+ return normalizeMcpUpdateOptions(update2);
6078
+ }
6079
+ function normalizeMcpUpdateOptions(options) {
6080
+ const normalizedInput = normalizeMcpOptionsArrays(options, "update-many");
6081
+ for (const contract of UPDATE_COMMANDER_STRING_OPTION_CONTRACTS) {
6082
+ for (const key of contract.keys) {
6083
+ const value = normalizedInput[key];
6084
+ if (typeof value === "number" && Number.isFinite(value)) {
6085
+ normalizedInput[key] = String(value);
6086
+ }
6087
+ }
6088
+ }
6089
+ return normalizeUpdateOptions(normalizedInput);
6090
+ }
6091
+ function updateManyOptionsFromFlat(options) {
6092
+ if (isRecord2(options.list) || isRecord2(options.update)) {
6093
+ const updateSource = isRecord2(options.update) ? options.update : updateManyUpdateOptionsFromFlat(options);
6094
+ return {
6095
+ status: readScalarString(options, "filterStatus"),
6096
+ list: isRecord2(options.list) ? normalizeListOptions(options.list) : mutationListOptions(options),
6097
+ update: normalizeMcpUpdateOptions(updateSource),
6098
+ dryRun: options.dryRun === true || options.dry_run === true ? true : void 0,
6099
+ rollback: readString(options, "rollback"),
6100
+ checkpoint: options.checkpoint === false || options.noCheckpoint === true || options.no_checkpoint === true ? false : void 0
6101
+ };
6102
+ }
6103
+ return {
6104
+ status: readScalarString(options, "filterStatus"),
6105
+ list: mutationListOptions(options),
6106
+ update: updateManyUpdateOptionsFromFlat(options),
6107
+ dryRun: options.dryRun === true || options.dry_run === true ? true : void 0,
6108
+ rollback: readString(options, "rollback"),
6109
+ checkpoint: options.checkpoint === false || options.noCheckpoint === true || options.no_checkpoint === true ? false : void 0
6110
+ };
6111
+ }
6112
+ var WORKSPACE_CONTRACTS_CACHE_PRESERVING_ACTIONS = /* @__PURE__ */ new Set([
6113
+ "activity",
6114
+ "aggregate",
6115
+ "context",
6116
+ "contracts",
6117
+ "deps",
6118
+ "files-discover",
6119
+ "get",
6120
+ "health",
6121
+ "history",
6122
+ "list",
6123
+ "next",
6124
+ "search",
6125
+ "stats",
6126
+ "telemetry",
6127
+ "validate"
6128
+ ]);
6129
+ var LIST_ACTION_ALIASES = {
6130
+ "list-all": { action: "list", options: { excludeTerminal: false } },
6131
+ "list-draft": { action: "list", options: { status: "draft", excludeTerminal: false } },
6132
+ "list-open": { action: "list", options: { status: "open", excludeTerminal: false } },
6133
+ "list-in-progress": { action: "list", options: { status: "in_progress", excludeTerminal: false } },
6134
+ "list-blocked": { action: "list", options: { status: "blocked", excludeTerminal: false } },
6135
+ "list-closed": { action: "list", options: { status: "closed", excludeTerminal: false } },
6136
+ "list-canceled": { action: "list", options: { status: "canceled", excludeTerminal: false } }
6137
+ };
6138
+ var EXTENSION_ACTION_ALIASES = {
6139
+ "extension-init": { action: "extension", options: { init: true } },
6140
+ "extension-install": { action: "extension", options: { install: true } },
6141
+ "extension-uninstall": { action: "extension", options: { uninstall: true } },
6142
+ "extension-explore": { action: "extension", options: { explore: true } },
6143
+ "extension-manage": { action: "extension", options: { manage: true } },
6144
+ "extension-describe": { action: "extension", options: { describe: true } },
6145
+ "extension-reload": { action: "extension", options: { reload: true } },
6146
+ "extension-doctor": { action: "extension", options: { doctor: true } },
6147
+ "extension-catalog": { action: "extension", options: { catalog: true } },
6148
+ "extension-adopt": { action: "extension", options: { adopt: true } },
6149
+ "extension-adopt-all": { action: "extension", options: { adoptAll: true } },
6150
+ "extension-activate": { action: "extension", options: { activate: true } },
6151
+ "extension-deactivate": { action: "extension", options: { deactivate: true } }
6152
+ };
6153
+ var PACKAGE_ACTION_ALIASES = {
6154
+ "package-init": { action: "package", options: { init: true, vocabulary: "package" } },
6155
+ "package-install": { action: "package", options: { install: true, vocabulary: "package" } },
6156
+ "package-uninstall": { action: "package", options: { uninstall: true, vocabulary: "package" } },
6157
+ "package-explore": { action: "package", options: { explore: true, vocabulary: "package" } },
6158
+ "package-manage": { action: "package", options: { manage: true, vocabulary: "package" } },
6159
+ "package-describe": { action: "package", options: { describe: true, vocabulary: "package" } },
6160
+ "package-reload": { action: "package", options: { reload: true, vocabulary: "package" } },
6161
+ "package-doctor": { action: "package", options: { doctor: true, vocabulary: "package" } },
6162
+ "package-catalog": { action: "package", options: { catalog: true, vocabulary: "package" } },
6163
+ "package-adopt": { action: "package", options: { adopt: true, vocabulary: "package" } },
6164
+ "package-adopt-all": { action: "package", options: { adoptAll: true, vocabulary: "package" } },
6165
+ "package-activate": { action: "package", options: { activate: true, vocabulary: "package" } },
6166
+ "package-deactivate": { action: "package", options: { deactivate: true, vocabulary: "package" } }
6167
+ };
6168
+ var SDK_ACTION_ALIASES = {
6169
+ ctx: { action: "context" },
6170
+ ...LIST_ACTION_ALIASES,
6171
+ ...EXTENSION_ACTION_ALIASES,
6172
+ ...PACKAGE_ACTION_ALIASES
6173
+ };
6174
+ function resolveSdkActionInput(args) {
6175
+ const rawAction = readRequiredString(args, "action");
6176
+ const normalizedAction = normalizeActionName(rawAction);
6177
+ const alias = getOwnHandler(SDK_ACTION_ALIASES, normalizedAction);
6178
+ const action = alias?.action ?? normalizedAction;
6179
+ const resolvedArgs = { ...args, action };
6180
+ if (alias?.options !== void 0) {
6181
+ resolvedArgs.options = { ...alias.options, ...asRecordClone(args.options) };
6182
+ }
6183
+ return { action, args: resolvedArgs };
6184
+ }
6185
+ function shouldInvalidateWorkspaceContractsCacheAfterAction(action) {
6186
+ return !WORKSPACE_CONTRACTS_CACHE_PRESERVING_ACTIONS.has(normalizeActionName(action));
6187
+ }
6188
+ async function runAction(args) {
6189
+ const resolved = resolveSdkActionInput(args);
6190
+ const global = globalOptions(resolved.args);
6191
+ const invalidateWorkspaceContractsCache = shouldInvalidateWorkspaceContractsCacheAfterAction(resolved.action);
6192
+ const explicitCwd = readString(resolved.args, "cwd");
6193
+ const resolutionCwd = explicitCwd ?? process.cwd();
6194
+ try {
6195
+ return await withActiveExtensions(global, explicitCwd, resolutionCwd, (activeExtensions) => dispatchAction(resolved.action, resolved.args, global, activeExtensions));
6196
+ } finally {
6197
+ if (invalidateWorkspaceContractsCache) {
6198
+ clearWorkspaceContractsCache();
6199
+ }
6200
+ }
6201
+ }
6202
+ function getOwnHandler(handlers, key) {
6203
+ return Object.prototype.hasOwnProperty.call(handlers, key) ? handlers[key] : void 0;
6204
+ }
6205
+ function readMcpTarget(ctx) {
6206
+ return readString(ctx.args, "target") ?? readString(ctx.options, "target");
6207
+ }
6208
+ function requireMcpItemId(ctx, source = ctx.options) {
6209
+ return ctx.id ?? readRequiredString(source, "id");
6210
+ }
6211
+ async function runMcpListAction(ctx) {
6212
+ const listOptions = { ...ctx.options };
6213
+ if (listOptions.compact === void 0 && listOptions.brief === void 0 && listOptions.fields === void 0 && listOptions.includeBody === void 0) {
6214
+ listOptions.compact = true;
6215
+ }
6216
+ return withQuerySummary(await runList(readString(ctx.args, "status") ?? readString(listOptions, "status"), listOptions, ctx.global), listOptions);
6217
+ }
6218
+ async function runMcpSearchAction(ctx) {
6219
+ const searchOptions = { ...ctx.options };
6220
+ if (searchOptions.compact === void 0 && searchOptions.full === void 0 && searchOptions.fields === void 0) {
6221
+ searchOptions.compact = true;
6222
+ }
6223
+ return withQuerySummary(await runSearch(readRequiredString(ctx.args, "query"), searchOptions, ctx.global), searchOptions);
6224
+ }
6225
+ async function runMcpCreateAction(ctx) {
6226
+ const { changedFields, idOnly, runnerOptions } = withMutationCompaction(ctx.args, ctx.options);
6227
+ return projectMutationResult(await runCreate(runnerOptions, ctx.global), { changedFields, idOnly });
6228
+ }
6229
+ async function runMcpCopyAction(ctx) {
6230
+ const { changedFields, idOnly, runnerOptions } = withMutationCompaction(ctx.args, ctx.options);
6231
+ const copyOptions = {
6232
+ ...runnerOptions,
6233
+ ...runnerOptions.title === void 0 && typeof ctx.args.title === "string" ? { title: ctx.args.title } : {},
6234
+ ...runnerOptions.message === void 0 && typeof ctx.args.message === "string" ? { message: ctx.args.message } : {}
6235
+ };
6236
+ return projectMutationResult(await runCopy(requireMcpItemId(ctx, copyOptions), copyOptions, ctx.global), {
6237
+ changedFields,
6238
+ idOnly
6239
+ });
6240
+ }
6241
+ async function runMcpUpdateAction(ctx) {
6242
+ const { changedFields, idOnly, runnerOptions } = withMutationCompaction(ctx.args, ctx.options);
6243
+ return projectMutationResult(await runUpdate(requireMcpItemId(ctx, runnerOptions), runnerOptions, ctx.global), {
6244
+ changedFields,
6245
+ idOnly
6246
+ });
6247
+ }
6248
+ async function runMcpCloseAction(ctx) {
6249
+ const { changedFields, idOnly, runnerOptions } = withMutationCompaction(ctx.args, ctx.options);
6250
+ const closeReason = readString(ctx.args, "reason") ?? readString(ctx.args, "text") ?? readString(runnerOptions, "reason") ?? readString(runnerOptions, "text");
6251
+ return projectMutationResult(await runClose(requireMcpItemId(ctx, runnerOptions), closeReason, runnerOptions, ctx.global), { changedFields, idOnly });
6252
+ }
6253
+ function runMcpCommentsAction(ctx) {
6254
+ const commentOptions = { ...ctx.options };
6255
+ const isListing = commentOptions.add === void 0 && commentOptions.stdin === void 0 && commentOptions.file === void 0 && commentOptions.edit === void 0 && commentOptions.delete === void 0;
6256
+ if (isListing) {
6257
+ commentOptions.includeMeta = true;
6258
+ if (commentOptions.limit === void 0 && commentOptions.full !== true) {
6259
+ commentOptions.limit = "20";
6260
+ }
6261
+ }
6262
+ delete commentOptions.full;
6263
+ return runComments(requireMcpItemId(ctx), commentOptions, ctx.global);
6264
+ }
6265
+ function runMcpFilesAction(ctx) {
6266
+ const fileId = requireMcpItemId(ctx);
6267
+ return ctx.options.discover === true ? runFilesDiscover(fileId, withFilesDiscoveryOptions(ctx.options), ctx.global) : runFiles(fileId, withAddNoteOption(ctx.options), ctx.global);
6268
+ }
6269
+ function runMcpTelemetryAction(ctx) {
6270
+ return runTelemetry({
6271
+ subcommand: readString(ctx.args, "subcommand") ?? readString(ctx.options, "subcommand"),
6272
+ limit: resolveMcpTelemetryLimit(ctx.args, ctx.options)
6273
+ }, ctx.global);
6274
+ }
6275
+ function resolveMcpTelemetryLimit(args, options) {
6276
+ if (typeof args.limit === "number" && Number.isFinite(args.limit)) {
6277
+ return args.limit;
6278
+ }
6279
+ if (typeof options.limit === "number" && Number.isFinite(options.limit)) {
6280
+ return options.limit;
6281
+ }
6282
+ return readString(args, "limit") ?? readString(options, "limit");
6283
+ }
6284
+ function runMcpHealthAction(ctx) {
6285
+ const healthOptions = { ...ctx.options };
6286
+ if (healthOptions.brief === void 0 && healthOptions.summary === void 0 && healthOptions.full === void 0) {
6287
+ healthOptions.summary = true;
6288
+ }
6289
+ return runHealth(ctx.global, healthOptions);
6290
+ }
6291
+ function runMcpConfigAction(ctx) {
6292
+ const configAction = readString(ctx.args, "configAction") ?? readString(ctx.options, "configAction") ?? readString(ctx.options, "action");
6293
+ if (configAction === void 0) {
6294
+ throw new PmCliError("Missing required argument: configAction", 64);
6295
+ }
6296
+ return runConfig(readString(ctx.args, "scope") ?? readString(ctx.options, "scope") ?? "project", configAction, readString(ctx.args, "key") ?? readString(ctx.options, "key"), ctx.options, ctx.global, readString(ctx.args, "value") ?? readString(ctx.options, "value"));
6297
+ }
6298
+ function runMcpActivityAction(ctx) {
6299
+ const activityOptions = { ...ctx.options };
6300
+ if (activityOptions.compact === void 0) {
6301
+ activityOptions.compact = activityOptions.full === true ? false : true;
6302
+ }
6303
+ delete activityOptions.full;
6304
+ return runActivity(activityOptions, ctx.global);
6305
+ }
6306
+ function runMcpHistoryRepairAction(ctx) {
6307
+ const repairAll = ctx.options.all === true;
6308
+ const repairId = ctx.id ?? readString(ctx.options, "id");
6309
+ assertHistoryRepairTarget(repairId, repairAll);
6310
+ return repairAll ? runHistoryRepairAll(ctx.options, ctx.global) : runHistoryRepair(repairId, ctx.options, ctx.global);
6311
+ }
6312
+ function parseMcpInteger(value, label) {
6313
+ if (typeof value === "number") {
6314
+ if (!Number.isInteger(value)) {
6315
+ throw new PmCliError(`${label} must be a finite integer.`, 64);
6316
+ }
6317
+ return value;
6318
+ }
6319
+ if (typeof value === "string" && value.trim().length > 0) {
6320
+ const parsed = Number(value);
6321
+ if (!Number.isInteger(parsed)) {
6322
+ throw new PmCliError(`${label} must be a finite integer.`, 64);
6323
+ }
6324
+ return parsed;
6325
+ }
6326
+ return void 0;
6327
+ }
6328
+ function parseMcpIntegerPrefix(value, label) {
6329
+ if (typeof value === "number") {
6330
+ if (!Number.isFinite(value) || !Number.isInteger(value)) {
6331
+ throw new PmCliError(`${label} must be a finite integer.`, 64);
6332
+ }
6333
+ return value;
6334
+ }
6335
+ if (typeof value === "string" && value.trim().length > 0) {
6336
+ const trimmed = value.trim();
6337
+ if (!/^[+-]?\d+(?:st|nd|rd|th)?$/i.test(trimmed)) {
6338
+ throw new PmCliError(`${label} must be a finite integer.`, 64);
6339
+ }
6340
+ const parsed = Number.parseInt(trimmed, 10);
6341
+ if (!Number.isInteger(parsed)) {
6342
+ throw new PmCliError(`${label} must be a finite integer.`, 64);
6343
+ }
6344
+ return parsed;
6345
+ }
6346
+ return void 0;
6347
+ }
6348
+ function runMcpPlanAction(ctx) {
6349
+ const subcommand = readString(ctx.args, "subcommand") ?? readRequiredString(ctx.options, "subcommand");
6350
+ const planRecord = ctx.options;
6351
+ return runPlan({
6352
+ subcommand,
6353
+ id: typeof ctx.id === "string" ? ctx.id : typeof planRecord.id === "string" ? planRecord.id : void 0,
6354
+ stepRef: readMcpPlanStepRef(ctx),
6355
+ reorderTo: parseMcpIntegerPrefix(planRecord.reorderTo ?? ctx.args.reorderTo, "plan reorderTo"),
6356
+ options: ctx.options,
6357
+ global: ctx.global
6358
+ });
6359
+ }
6360
+ function readMcpPlanStepRef(ctx) {
6361
+ return typeof ctx.options.stepRef === "string" ? ctx.options.stepRef : typeof ctx.args.stepRef === "string" ? ctx.args.stepRef : void 0;
6362
+ }
6363
+ function createMcpSchemaContext(ctx) {
6364
+ const subcommand = readString(ctx.args, "subcommand") ?? readRequiredString(ctx.options, "subcommand");
6365
+ const aliasSource = ctx.args.alias ?? ctx.options.alias;
6366
+ return {
6367
+ ctx,
6368
+ subcommand: subcommand.trim().toLowerCase(),
6369
+ name: readString(ctx.args, "name") ?? readString(ctx.options, "name"),
6370
+ author: readString(ctx.args, "author") ?? readString(ctx.options, "author"),
6371
+ force: ctx.args.force === true || ctx.options.force === true,
6372
+ aliases: aliasSource === void 0 ? void 0 : readStringArray(aliasSource)
6373
+ };
6374
+ }
6375
+ function runMcpSchemaReadOrRemoveAction(schema) {
6376
+ const { ctx, subcommand, name, author, force } = schema;
6377
+ const simpleHandlers = {
6378
+ list: () => runSchemaList(ctx.global),
6379
+ show: () => runSchemaShow(name, ctx.global),
6380
+ "show-status": () => runSchemaShowStatus(name, ctx.global),
6381
+ "list-fields": () => runSchemaListFields(ctx.global),
6382
+ "show-field": () => runSchemaShowField(name, ctx.global),
6383
+ "remove-type": () => runSchemaRemoveType(name, { author, force }, ctx.global),
6384
+ "remove-field": () => runSchemaRemoveField(name, { author, force }, ctx.global),
6385
+ "remove-status": () => runSchemaRemoveStatus(name, { author, force }, ctx.global),
6386
+ "apply-preset": () => runSchemaApplyPreset(readString(ctx.args, "typePreset") ?? readString(ctx.options, "typePreset"), { author, force }, ctx.global)
6387
+ };
6388
+ const handler = getOwnHandler(simpleHandlers, subcommand);
6389
+ return handler ? handler() : null;
6390
+ }
6391
+ function runMcpSchemaAddFieldAction(schema) {
6392
+ const { ctx, name, author, force, aliases } = schema;
6393
+ const commandsSource = ctx.args.commands ?? ctx.options.commands;
6394
+ const requiredTypesSource = ctx.args.requiredTypes ?? ctx.options.requiredTypes;
6395
+ return runSchemaAddField(name, {
6396
+ type: readString(ctx.args, "fieldType") ?? readString(ctx.options, "fieldType"),
6397
+ commands: commandsSource === void 0 ? void 0 : readStringArray(commandsSource),
6398
+ description: readString(ctx.args, "description") ?? readString(ctx.options, "description"),
6399
+ cliFlag: readString(ctx.args, "cliFlag") ?? readString(ctx.options, "cliFlag"),
6400
+ alias: aliases,
6401
+ required: ctx.args.required === true || ctx.options.required === true,
6402
+ requiredOnCreate: ctx.args.requiredOnCreate === true || ctx.options.requiredOnCreate === true,
6403
+ allowUnset: !(ctx.args.allowUnset === false || ctx.options.allowUnset === false),
6404
+ requiredTypes: requiredTypesSource === void 0 ? void 0 : readStringArray(requiredTypesSource),
6405
+ author,
6406
+ force
6407
+ }, ctx.global);
6408
+ }
6409
+ function runMcpSchemaAddStatusAction(schema) {
6410
+ const { ctx, name, author, force, aliases } = schema;
6411
+ const roleSource = ctx.args.role ?? ctx.options.role;
6412
+ return runSchemaAddStatus(name, {
6413
+ role: roleSource === void 0 ? void 0 : readStringArray(roleSource),
6414
+ alias: aliases,
6415
+ description: readString(ctx.args, "description") ?? readString(ctx.options, "description"),
6416
+ order: parseMcpInteger(ctx.args.order ?? ctx.options.order, "schema add-status order"),
6417
+ author,
6418
+ force
6419
+ }, ctx.global);
6420
+ }
6421
+ function runMcpSchemaAddTypeAction(schema) {
6422
+ const { ctx, name, author, force, aliases } = schema;
6423
+ return runSchemaAddType(name, {
6424
+ description: readString(ctx.args, "description") ?? readString(ctx.options, "description"),
6425
+ defaultStatus: readString(ctx.args, "defaultStatus") ?? readString(ctx.args, "default_status") ?? readString(ctx.options, "defaultStatus") ?? readString(ctx.options, "default_status"),
6426
+ folder: readString(ctx.args, "folder") ?? readString(ctx.options, "folder"),
6427
+ alias: aliases,
6428
+ author,
6429
+ force
6430
+ }, ctx.global);
6431
+ }
6432
+ function runMcpSchemaAction(ctx) {
6433
+ const schema = createMcpSchemaContext(ctx);
6434
+ const simpleResult = runMcpSchemaReadOrRemoveAction(schema);
6435
+ if (simpleResult !== null) {
6436
+ return simpleResult;
6437
+ }
6438
+ if (schema.subcommand === "add-field") {
6439
+ return runMcpSchemaAddFieldAction(schema);
6440
+ }
6441
+ if (schema.subcommand === "add-status") {
6442
+ return runMcpSchemaAddStatusAction(schema);
6443
+ }
6444
+ if (schema.subcommand === "add-type") {
6445
+ if (ctx.args.infer === true || ctx.options.infer === true) {
6446
+ return runSchemaInferTypes({
6447
+ minCount: parseMcpInteger(ctx.args.minCount ?? ctx.options.minCount, "schema infer minCount"),
6448
+ apply: ctx.args.apply === true || ctx.options.apply === true,
6449
+ author: schema.author,
6450
+ force: schema.force
6451
+ }, ctx.global);
6452
+ }
6453
+ return runMcpSchemaAddTypeAction(schema);
6454
+ }
6455
+ throw new PmCliError(`Unknown pm schema subcommand "${schema.subcommand}". Allowed: add-type, remove-type, add-status, remove-status, add-field, remove-field, list-fields, show-field, apply-preset, list, show, show-status`, 64);
6456
+ }
6457
+ function runMcpProfileAction(ctx) {
6458
+ const subcommand = readString(ctx.args, "subcommand") ?? readRequiredString(ctx.options, "subcommand");
6459
+ const normalizedSubcommand = subcommand.trim().toLowerCase();
6460
+ const profileName = readString(ctx.args, "name") ?? readString(ctx.options, "name");
6461
+ const handlers = {
6462
+ list: () => runProfileList(),
6463
+ show: () => runProfileShow(profileName),
6464
+ lint: () => runProfileLint(profileName),
6465
+ apply: () => runProfileApply(profileName, {
6466
+ dryRun: ctx.args.dryRun === true || ctx.options.dryRun === true,
6467
+ author: readString(ctx.args, "author") ?? readString(ctx.options, "author"),
6468
+ force: ctx.args.force === true || ctx.options.force === true
6469
+ }, ctx.global)
6470
+ };
6471
+ const handler = getOwnHandler(handlers, normalizedSubcommand);
6472
+ if (!handler) {
6473
+ throw new PmCliError(`Unknown pm profile subcommand "${subcommand}". Allowed: list, show, apply, lint`, 64);
6474
+ }
6475
+ return handler();
6476
+ }
6477
+ function runMcpStatsAction(ctx) {
6478
+ return runStats(ctx.global, {
6479
+ storage: ctx.options.storage === true,
6480
+ metadataCoverage: ctx.options.metadataCoverage === true,
6481
+ fieldUtilization: ctx.options.fieldUtilization === true,
6482
+ byAssignee: ctx.options.byAssignee === true,
6483
+ byTag: ctx.options.byTag === true,
6484
+ byPriority: ctx.options.byPriority === true,
6485
+ tagPrefix: typeof ctx.options.tagPrefix === "string" ? ctx.options.tagPrefix : void 0
6486
+ });
6487
+ }
6488
+ async function runMcpAppendAction(ctx) {
6489
+ const { changedFields, runnerOptions } = withMutationCompaction(ctx.args, ctx.options);
6490
+ return projectMutationResult(await runAppend(requireMcpItemId(ctx, runnerOptions), runnerOptions, ctx.global), {
6491
+ changedFields
6492
+ });
6493
+ }
6494
+ async function runMcpUpdateManyAction(ctx) {
6495
+ const { changedFields, runnerOptions } = withMutationCompaction(ctx.args, ctx.options);
6496
+ return projectMutationResult(await runUpdateMany(updateManyOptionsFromFlat(runnerOptions), ctx.global), { changedFields });
6497
+ }
6498
+ async function runMcpCloseManyAction(ctx) {
6499
+ const { changedFields, runnerOptions } = withMutationCompaction(ctx.args, ctx.options);
6500
+ const topLevelReason = readString(ctx.args, "reason");
6501
+ const closeManyRunnerOptions = topLevelReason !== void 0 && runnerOptions.reason === void 0 ? { ...runnerOptions, reason: topLevelReason } : { ...runnerOptions };
6502
+ if (ctx.force && closeManyRunnerOptions.force === void 0) {
6503
+ closeManyRunnerOptions.force = true;
6504
+ }
6505
+ return projectMutationResult(await runCloseMany(closeManyOptionsFromFlat(closeManyRunnerOptions), ctx.global), { changedFields });
6506
+ }
6507
+ async function runMcpRestoreAction(ctx) {
6508
+ const { changedFields, idOnly, runnerOptions } = withMutationCompaction(ctx.args, ctx.options);
6509
+ const target = readString(runnerOptions, "target") ?? readRequiredString(ctx.args, "target");
6510
+ return projectMutationResult(await runRestore(requireMcpItemId(ctx, runnerOptions), target, runnerOptions, ctx.global), {
6511
+ changedFields,
6512
+ idOnly
6513
+ });
6514
+ }
6515
+ function withoutLifecycleAssigneeAlias(options) {
6516
+ const updateOptions = { ...options };
6517
+ delete updateOptions.assignee;
6518
+ return updateOptions;
6519
+ }
6520
+ async function runMcpStartTaskAction(ctx) {
6521
+ const pmRoot = resolvePmRoot(process.cwd(), ctx.global.path);
6522
+ const settings = await readSettings(pmRoot);
6523
+ const inProgressStatus = resolveStartTaskInProgressStatus(resolveRuntimeStatusRegistry(settings.schema));
6524
+ const id = requireMcpItemId(ctx);
6525
+ const claimResult = await runClaim(id, ctx.force, ctx.global, ctx.options);
6526
+ const updateResult = await runUpdate(id, { ...withoutLifecycleAssigneeAlias(ctx.options), status: inProgressStatus, force: ctx.force }, ctx.global);
6527
+ return { id, action: "start_task", claim: claimResult, update: updateResult };
6528
+ }
6529
+ async function runMcpPauseTaskAction(ctx) {
6530
+ const pmRoot = resolvePmRoot(process.cwd(), ctx.global.path);
6531
+ const settings = await readSettings(pmRoot);
6532
+ const id = requireMcpItemId(ctx);
6533
+ const openStatus = resolveRuntimeStatusRegistry(settings.schema).open_status;
6534
+ const updateResult = await runUpdate(id, { ...withoutLifecycleAssigneeAlias(ctx.options), status: openStatus, force: ctx.force }, ctx.global);
6535
+ const releaseResult = await runRelease(id, ctx.force, ctx.global, ctx.options);
6536
+ return { id, action: "pause_task", update: updateResult, release: releaseResult };
6537
+ }
6538
+ async function runMcpCloseTaskAction(ctx) {
6539
+ const id = requireMcpItemId(ctx);
6540
+ const closeReason = readString(ctx.args, "reason") ?? readString(ctx.args, "text") ?? readString(ctx.options, "reason") ?? readString(ctx.options, "text");
6541
+ const closeResult = await runClose(id, closeReason, { ...ctx.options, force: ctx.force }, ctx.global);
6542
+ const releaseResult = await runRelease(id, ctx.force, ctx.global, ctx.options);
6543
+ return { id, action: "close_task", close: closeResult, release: releaseResult };
6544
+ }
6545
+ var SDK_ACTION_HANDLERS = {
6546
+ init: (ctx) => runInit(readString(ctx.args, "prefix"), ctx.global, ctx.options),
6547
+ context: (ctx) => runContext(ctx.options, ctx.global),
6548
+ next: (ctx) => runNext(ctx.options, ctx.global),
6549
+ list: runMcpListAction,
6550
+ get: (ctx) => runGet(requireMcpItemId(ctx), ctx.global, ctx.options),
6551
+ search: runMcpSearchAction,
6552
+ create: runMcpCreateAction,
6553
+ copy: runMcpCopyAction,
6554
+ focus: (ctx) => runFocus(ctx.id, { clear: ctx.options.clear === true || ctx.args.clear === true }, ctx.global),
6555
+ update: runMcpUpdateAction,
6556
+ restore: runMcpRestoreAction,
6557
+ claim: (ctx) => runClaim(requireMcpItemId(ctx), ctx.force, ctx.global, ctx.options),
6558
+ release: (ctx) => runRelease(requireMcpItemId(ctx), ctx.force, ctx.global, ctx.options),
6559
+ "start-task": runMcpStartTaskAction,
6560
+ "pause-task": runMcpPauseTaskAction,
6561
+ "close-task": runMcpCloseTaskAction,
6562
+ close: runMcpCloseAction,
6563
+ comments: runMcpCommentsAction,
6564
+ notes: (ctx) => runNotes(requireMcpItemId(ctx), ctx.options, ctx.global),
6565
+ learnings: (ctx) => runLearnings(requireMcpItemId(ctx), ctx.options, ctx.global),
6566
+ files: runMcpFilesAction,
6567
+ docs: (ctx) => runDocs(requireMcpItemId(ctx), withAddNoteOption(ctx.options), ctx.global),
6568
+ test: (ctx) => runTest(requireMcpItemId(ctx), ctx.options, ctx.global),
6569
+ "test-all": (ctx) => runTestAll(ctx.options, ctx.global),
6570
+ telemetry: runMcpTelemetryAction,
6571
+ validate: (ctx) => runValidate(ctx.options, ctx.global),
6572
+ health: runMcpHealthAction,
6573
+ contracts: (ctx) => runContracts(ctx.options, ctx.global),
6574
+ config: runMcpConfigAction,
6575
+ activity: runMcpActivityAction,
6576
+ aggregate: (ctx) => runAggregate(ctx.options, ctx.global),
6577
+ extension: (ctx) => runExtension(readMcpTarget(ctx), ctx.options, ctx.global),
6578
+ package: (ctx) => runExtension(readMcpTarget(ctx), ctx.options, ctx.global),
6579
+ install: (ctx) => runExtension(readMcpTarget(ctx), { ...ctx.options, install: true }, ctx.global),
6580
+ upgrade: (ctx) => runUpgrade(readMcpTarget(ctx), ctx.options, ctx.global),
6581
+ delete: (ctx) => runDelete(requireMcpItemId(ctx), ctx.options, ctx.global),
6582
+ deps: (ctx) => runDeps(requireMcpItemId(ctx), ctx.options, ctx.global),
6583
+ "files-discover": (ctx) => runFilesDiscover(requireMcpItemId(ctx), ctx.options, ctx.global),
6584
+ history: (ctx) => runHistory(requireMcpItemId(ctx), ctx.options, ctx.global),
6585
+ "history-redact": (ctx) => runHistoryRedact(requireMcpItemId(ctx), ctx.options, ctx.global),
6586
+ "history-repair": runMcpHistoryRepairAction,
6587
+ "history-compact": (ctx) => runHistoryCompact(requireMcpItemId(ctx), ctx.options, ctx.global),
6588
+ plan: runMcpPlanAction,
6589
+ schema: runMcpSchemaAction,
6590
+ profile: runMcpProfileAction,
6591
+ stats: runMcpStatsAction,
6592
+ append: runMcpAppendAction,
6593
+ "update-many": runMcpUpdateManyAction,
6594
+ "close-many": runMcpCloseManyAction,
6595
+ gc: (ctx) => runGc(ctx.global, ctx.options)
6596
+ };
6597
+ async function dispatchAction(action, args, global, activeExtensions) {
6598
+ const options = optionsWithAuthor(args, action);
6599
+ const ctx = {
6600
+ action,
6601
+ args,
6602
+ options,
6603
+ id: readString(args, "id"),
6604
+ force: args.force === true || options.force === true,
6605
+ global,
6606
+ activeExtensions
6607
+ };
6608
+ const handler = getOwnHandler(SDK_ACTION_HANDLERS, action);
6609
+ return handler ? handler(ctx) : dispatchActiveExtensionAction(action, args, options, global, activeExtensions);
6610
+ }
6611
+ var actionRunnerTestHooks = {
6612
+ closeManyOptionsFromFlat,
6613
+ extensionOptionsFromArgs,
6614
+ globalOptions,
6615
+ mutationListOptions,
6616
+ normalizeActionName,
6617
+ normalizeCommandPath,
6618
+ normalizeMcpUpdateOptions,
6619
+ normalizeMcpOptionsArrays,
6620
+ optionsWithAuthor,
6621
+ readRequiredString,
6622
+ readScalarString,
6623
+ readScalarStringAllowBlank,
6624
+ readStringArray,
6625
+ updateManyOptionsFromFlat,
6626
+ withAddNoteOption,
6627
+ withFilesDiscoveryOptions,
6628
+ withMutationCompaction
6629
+ };
6630
+ if (process.env.NODE_ENV === "test" || process.env.VITEST !== void 0 || process.env.VITEST_WORKER_ID !== void 0) {
6631
+ globalThis.__pmCliActionRunnerTestHooks = actionRunnerTestHooks;
6632
+ }
5301
6633
  async function loadWorkspaceExtensionRegistrations(pmRoot, settings, cwd) {
5302
6634
  const loadResult = await loadExtensions({
5303
6635
  pmRoot,
@@ -5306,10 +6638,18 @@ async function loadWorkspaceExtensionRegistrations(pmRoot, settings, cwd) {
5306
6638
  noExtensions: false
5307
6639
  });
5308
6640
  const activationResult = await activateExtensions(loadResult);
5309
- return activationResult.registrations;
6641
+ try {
6642
+ return activationResult.registrations;
6643
+ } finally {
6644
+ try {
6645
+ await deactivateExtensions(loadResult, activationResult);
6646
+ } catch {
6647
+ }
6648
+ }
5310
6649
  }
5311
6650
 
5312
6651
  export {
6652
+ clearWorkspaceContractsCache,
5313
6653
  readStringOption,
5314
6654
  readBooleanOption,
5315
6655
  readCsvListOption,
@@ -5345,10 +6685,31 @@ export {
5345
6685
  runDedupeMerge,
5346
6686
  runNormalize,
5347
6687
  runReindex,
5348
- clearWorkspaceContractsCache,
6688
+ PmClient,
6689
+ context,
6690
+ list,
6691
+ search,
6692
+ get,
6693
+ next,
6694
+ aggregate,
6695
+ stats,
6696
+ create,
6697
+ update,
6698
+ close,
6699
+ claim,
6700
+ release,
6701
+ copy,
6702
+ deleteItem,
6703
+ restore,
6704
+ focus,
6705
+ startTask,
6706
+ pauseTask,
6707
+ closeTask,
5349
6708
  getWorkspaceContracts,
5350
- getContracts
6709
+ getContracts,
6710
+ readRequiredString,
6711
+ runAction
5351
6712
  };
5352
- //# sourceMappingURL=chunk-T5Y3QSNF.js.map
6713
+ //# sourceMappingURL=chunk-MHNMCDWR.js.map
5353
6714
 
5354
- //# debugId=c6d1c49f-01ed-5fa4-b05d-e515ef54f671
6715
+ //# debugId=8e64eac6-c632-5921-b8ce-74dd117c9670