@unbrained/pm-cli 2026.7.14 → 2026.7.15

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 (708) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +48 -0
  3. package/README.md +14 -11
  4. package/dist/cli/argv-utils.d.ts +1 -4
  5. package/dist/cli/argv-utils.js +3 -13
  6. package/dist/cli/argv-utils.js.map +1 -1
  7. package/dist/cli/bootstrap-args.d.ts +6 -4
  8. package/dist/cli/bootstrap-args.js +51 -16
  9. package/dist/cli/bootstrap-args.js.map +1 -1
  10. package/dist/cli/bundle-integrity.d.ts +49 -0
  11. package/dist/cli/bundle-integrity.js +111 -0
  12. package/dist/cli/bundle-integrity.js.map +1 -0
  13. package/dist/cli/commands/completion.js +7 -2
  14. package/dist/cli/commands/completion.js.map +1 -1
  15. package/dist/cli/commands/config.d.ts +6 -163
  16. package/dist/cli/commands/config.js +4 -1133
  17. package/dist/cli/commands/config.js.map +1 -1
  18. package/dist/cli/commands/context.d.ts +2 -4
  19. package/dist/cli/commands/context.js +10 -85
  20. package/dist/cli/commands/context.js.map +1 -1
  21. package/dist/cli/commands/create.d.ts +1 -0
  22. package/dist/cli/commands/create.js +3 -2
  23. package/dist/cli/commands/create.js.map +1 -1
  24. package/dist/cli/commands/extension/describe.d.ts +2 -91
  25. package/dist/cli/commands/extension/describe.js +4 -142
  26. package/dist/cli/commands/extension/describe.js.map +1 -1
  27. package/dist/cli/commands/extension/scaffold.d.ts +2 -36
  28. package/dist/cli/commands/extension/scaffold.js +4 -2435
  29. package/dist/cli/commands/extension/scaffold.js.map +1 -1
  30. package/dist/cli/commands/extension/shared.d.ts +2 -28
  31. package/dist/cli/commands/extension/shared.js +4 -130
  32. package/dist/cli/commands/extension/shared.js.map +1 -1
  33. package/dist/cli/commands/extension.d.ts +3 -400
  34. package/dist/cli/commands/extension.js +4 -2183
  35. package/dist/cli/commands/extension.js.map +1 -1
  36. package/dist/cli/commands/gc.d.ts +6 -56
  37. package/dist/cli/commands/gc.js +4 -270
  38. package/dist/cli/commands/gc.js.map +1 -1
  39. package/dist/cli/commands/get.d.ts +18 -5
  40. package/dist/cli/commands/get.js +117 -58
  41. package/dist/cli/commands/get.js.map +1 -1
  42. package/dist/cli/commands/health.d.ts +6 -184
  43. package/dist/cli/commands/health.js +4 -1747
  44. package/dist/cli/commands/health.js.map +1 -1
  45. package/dist/cli/commands/history-compact.d.ts +4 -139
  46. package/dist/cli/commands/history-compact.js +5 -510
  47. package/dist/cli/commands/history-compact.js.map +1 -1
  48. package/dist/cli/commands/history-redact.d.ts +8 -120
  49. package/dist/cli/commands/history-redact.js +6 -581
  50. package/dist/cli/commands/history-redact.js.map +1 -1
  51. package/dist/cli/commands/history-repair.d.ts +7 -89
  52. package/dist/cli/commands/history-repair.js +5 -257
  53. package/dist/cli/commands/history-repair.js.map +1 -1
  54. package/dist/cli/commands/history.d.ts +1 -2
  55. package/dist/cli/commands/history.js +6 -48
  56. package/dist/cli/commands/history.js.map +1 -1
  57. package/dist/cli/commands/index.d.ts +1 -0
  58. package/dist/cli/commands/index.js +3 -2
  59. package/dist/cli/commands/index.js.map +1 -1
  60. package/dist/cli/commands/init-agent-guidance.d.ts +6 -113
  61. package/dist/cli/commands/init-agent-guidance.js +4 -431
  62. package/dist/cli/commands/init-agent-guidance.js.map +1 -1
  63. package/dist/cli/commands/init.d.ts +6 -181
  64. package/dist/cli/commands/init.js +4 -690
  65. package/dist/cli/commands/init.js.map +1 -1
  66. package/dist/cli/commands/next.js +3 -3
  67. package/dist/cli/commands/next.js.map +1 -1
  68. package/dist/cli/commands/profile.d.ts +4 -174
  69. package/dist/cli/commands/profile.js +4 -425
  70. package/dist/cli/commands/profile.js.map +1 -1
  71. package/dist/cli/commands/restore.d.ts +4 -19
  72. package/dist/cli/commands/restore.js +9 -158
  73. package/dist/cli/commands/restore.js.map +1 -1
  74. package/dist/cli/commands/schema.d.ts +7 -507
  75. package/dist/cli/commands/schema.js +5 -1254
  76. package/dist/cli/commands/schema.js.map +1 -1
  77. package/dist/cli/commands/test.d.ts +2 -4
  78. package/dist/cli/commands/test.js +7 -97
  79. package/dist/cli/commands/test.js.map +1 -1
  80. package/dist/cli/commands/validate.d.ts +9 -249
  81. package/dist/cli/commands/validate.js +9 -2150
  82. package/dist/cli/commands/validate.js.map +1 -1
  83. package/dist/cli/extension-command-help.js +18 -4
  84. package/dist/cli/extension-command-help.js.map +1 -1
  85. package/dist/cli/extension-command-options.js +3 -3
  86. package/dist/cli/extension-command-options.js.map +1 -1
  87. package/dist/cli/help-content.js +7 -3
  88. package/dist/cli/help-content.js.map +1 -1
  89. package/dist/cli/main.js +20 -30
  90. package/dist/cli/main.js.map +1 -1
  91. package/dist/cli/register-list-query.js +4 -2
  92. package/dist/cli/register-list-query.js.map +1 -1
  93. package/dist/cli/register-mutation.js +11 -3
  94. package/dist/cli/register-mutation.js.map +1 -1
  95. package/dist/cli/register-setup.js +4 -2
  96. package/dist/cli/register-setup.js.map +1 -1
  97. package/dist/cli/registration-helpers.js +3 -2
  98. package/dist/cli/registration-helpers.js.map +1 -1
  99. package/dist/cli-bundle/bundle-manifest.json +782 -0
  100. package/dist/cli-bundle/chunks/{append-PVZJDM6J.js → append-OJQFUQ4T.js} +5 -5
  101. package/dist/cli-bundle/chunks/append-UZVHUO74.js +11 -0
  102. package/dist/cli-bundle/chunks/{chunk-MQZ3PLCF.js → chunk-2IFFUZLC.js} +2 -2
  103. package/dist/cli-bundle/chunks/{chunk-P6MYFH6K.js → chunk-2JKGO6QX.js} +4 -4
  104. package/dist/cli-bundle/chunks/{chunk-X3GYR4P2.js → chunk-2NCIPMQP.js} +2 -2
  105. package/dist/cli-bundle/chunks/{chunk-Q7E6OYZK.js → chunk-2VPAVL7O.js} +2 -2
  106. package/dist/cli-bundle/chunks/{chunk-DRNJPEPQ.js → chunk-2WSE6PO2.js} +4 -4
  107. package/dist/cli-bundle/chunks/{chunk-FDSBDNYE.js → chunk-34L5OT3Y.js} +2 -2
  108. package/dist/cli-bundle/chunks/{chunk-TH7U4KLY.js → chunk-3AUGG2DP.js} +3 -3
  109. package/dist/cli-bundle/chunks/{chunk-NKW36AMT.js → chunk-3CLU2XZO.js} +4 -4
  110. package/dist/cli-bundle/chunks/{chunk-N3CMP4NI.js → chunk-3S5QVM5H.js} +43 -7
  111. package/dist/cli-bundle/chunks/chunk-3S5QVM5H.js.map +1 -0
  112. package/dist/cli-bundle/chunks/chunk-3U7ZR6M4.js +64 -0
  113. package/dist/cli-bundle/chunks/chunk-3U7ZR6M4.js.map +7 -0
  114. package/dist/cli-bundle/chunks/{chunk-ABRCOSDC.js → chunk-3WM75PWC.js} +3 -3
  115. package/dist/cli-bundle/chunks/chunk-4223PVZT.js +121 -0
  116. package/dist/cli-bundle/chunks/chunk-4223PVZT.js.map +7 -0
  117. package/dist/cli-bundle/chunks/{chunk-5URI7TPJ.js → chunk-4XQ3BDV4.js} +281 -164
  118. package/dist/cli-bundle/chunks/chunk-4XQ3BDV4.js.map +7 -0
  119. package/dist/cli-bundle/chunks/{chunk-X6BVXQ52.js → chunk-5JLUII3O.js} +13 -13
  120. package/dist/cli-bundle/chunks/{chunk-MKL4CP2I.js → chunk-5ZSLZLDN.js} +631 -246
  121. package/dist/cli-bundle/chunks/chunk-5ZSLZLDN.js.map +1 -0
  122. package/dist/cli-bundle/chunks/{chunk-Q37E63AM.js → chunk-6CFNAVTF.js} +21 -141
  123. package/dist/cli-bundle/chunks/chunk-6CFNAVTF.js.map +7 -0
  124. package/dist/cli-bundle/chunks/{chunk-3TL7WOEF.js → chunk-6N2VXVTQ.js} +2 -2
  125. package/dist/cli-bundle/chunks/{chunk-ERL2YFJ2.js → chunk-6S3YSUYG.js} +3 -3
  126. package/dist/cli-bundle/chunks/{chunk-ZUKSZVBW.js → chunk-7B67ZL4N.js} +8 -7
  127. package/dist/cli-bundle/chunks/chunk-7B67ZL4N.js.map +7 -0
  128. package/dist/cli-bundle/chunks/{chunk-IA3YFTXT.js → chunk-7PIWCHTW.js} +11 -13
  129. package/dist/cli-bundle/chunks/chunk-7PIWCHTW.js.map +1 -0
  130. package/dist/cli-bundle/chunks/{chunk-BPD26E3P.js → chunk-7Z4LKRS4.js} +291 -81
  131. package/dist/cli-bundle/chunks/chunk-7Z4LKRS4.js.map +1 -0
  132. package/dist/cli-bundle/chunks/{chunk-IFZA4VB5.js → chunk-AHVTB5I5.js} +4 -4
  133. package/dist/cli-bundle/chunks/{chunk-DO5RGJXT.js → chunk-APRVSW2O.js} +3 -3
  134. package/dist/cli-bundle/chunks/{chunk-NAQYVWSQ.js → chunk-B7PE22W6.js} +4 -4
  135. package/dist/cli-bundle/chunks/{chunk-MD6ULIPJ.js → chunk-BCOFWYW4.js} +3 -3
  136. package/dist/cli-bundle/chunks/{chunk-KADLSPIU.js → chunk-BEP7WJA2.js} +4 -4
  137. package/dist/cli-bundle/chunks/chunk-BKVG6XOA.js +1114 -0
  138. package/dist/cli-bundle/chunks/chunk-BKVG6XOA.js.map +7 -0
  139. package/dist/cli-bundle/chunks/{chunk-AFWZRL7M.js → chunk-BSEQUTQP.js} +2 -2
  140. package/dist/cli-bundle/chunks/{chunk-AFWZRL7M.js.map → chunk-BSEQUTQP.js.map} +2 -2
  141. package/dist/cli-bundle/chunks/{chunk-OBDLEQG5.js → chunk-CRVF2JDM.js} +10 -10
  142. package/dist/cli-bundle/chunks/{chunk-FJZDA6MS.js → chunk-DM4H7FP4.js} +3 -3
  143. package/dist/cli-bundle/chunks/chunk-DUT67M43.js +5 -0
  144. package/dist/cli-bundle/chunks/{chunk-44LNIULG.js → chunk-DYH63FX7.js} +4 -4
  145. package/dist/cli-bundle/chunks/{chunk-LWTIRS3Y.js → chunk-E2OJMKML.js} +306 -82
  146. package/dist/cli-bundle/chunks/chunk-E2OJMKML.js.map +7 -0
  147. package/dist/cli-bundle/chunks/{chunk-HAMLIWAF.js → chunk-EAB64KLB.js} +4 -4
  148. package/dist/cli-bundle/chunks/{chunk-CIOZ376P.js → chunk-EACOH7AU.js} +10 -10
  149. package/dist/cli-bundle/chunks/{chunk-HL7V2PHX.js → chunk-EH2OPHBI.js} +10 -10
  150. package/dist/cli-bundle/chunks/{chunk-HL7V2PHX.js.map → chunk-EH2OPHBI.js.map} +1 -1
  151. package/dist/cli-bundle/chunks/{chunk-QK2ZN6UL.js → chunk-EJEXHTY5.js} +2 -2
  152. package/dist/cli-bundle/chunks/{chunk-WQUEHPZB.js → chunk-EYLCSJAI.js} +2 -2
  153. package/dist/cli-bundle/chunks/{chunk-655STMGA.js → chunk-FMBNM2EN.js} +2 -2
  154. package/dist/cli-bundle/chunks/{chunk-RMF3IOYQ.js → chunk-FNSPG7MU.js} +12 -12
  155. package/dist/cli-bundle/chunks/{chunk-5CT5BW6E.js → chunk-GM5QHQU6.js} +46 -40
  156. package/dist/cli-bundle/chunks/chunk-GM5QHQU6.js.map +7 -0
  157. package/dist/cli-bundle/chunks/{chunk-FTQLW4JD.js → chunk-GOSLKLFE.js} +418 -24
  158. package/dist/cli-bundle/chunks/chunk-GOSLKLFE.js.map +1 -0
  159. package/dist/cli-bundle/chunks/{chunk-KB726FMH.js → chunk-H2Z3FYXQ.js} +4 -4
  160. package/dist/cli-bundle/chunks/chunk-H3EIEWGR.js +162 -0
  161. package/dist/cli-bundle/chunks/chunk-H3EIEWGR.js.map +1 -0
  162. package/dist/cli-bundle/chunks/{chunk-2QIQGYPW.js → chunk-H5APFTHZ.js} +53 -10
  163. package/dist/cli-bundle/chunks/chunk-H5APFTHZ.js.map +7 -0
  164. package/dist/cli-bundle/chunks/chunk-HDH3JUGG.js +118 -0
  165. package/dist/cli-bundle/chunks/chunk-HDH3JUGG.js.map +1 -0
  166. package/dist/cli-bundle/chunks/{chunk-ZAYYDNB3.js → chunk-HO4KXD6I.js} +22 -142
  167. package/dist/cli-bundle/chunks/chunk-HO4KXD6I.js.map +1 -0
  168. package/dist/cli-bundle/chunks/{chunk-ILLUE5DI.js → chunk-HYB5AZ63.js} +203 -62
  169. package/dist/cli-bundle/chunks/{chunk-ILLUE5DI.js.map → chunk-HYB5AZ63.js.map} +3 -3
  170. package/dist/cli-bundle/chunks/{chunk-BN62TO2S.js → chunk-IA5FKNII.js} +2 -2
  171. package/dist/cli-bundle/chunks/{chunk-JL7WZ4O2.js → chunk-IG3SWA4A.js} +33 -9
  172. package/dist/cli-bundle/chunks/chunk-IG3SWA4A.js.map +7 -0
  173. package/dist/cli-bundle/chunks/{chunk-W6HZ55JO.js → chunk-IJIICKVW.js} +2 -2
  174. package/dist/cli-bundle/chunks/{chunk-IGED7NH2.js → chunk-ILX33QXL.js} +668 -251
  175. package/dist/cli-bundle/chunks/chunk-ILX33QXL.js.map +7 -0
  176. package/dist/cli-bundle/chunks/{chunk-UGTVWL3E.js → chunk-INU6DKT5.js} +47 -41
  177. package/dist/cli-bundle/chunks/chunk-INU6DKT5.js.map +1 -0
  178. package/dist/cli-bundle/chunks/{chunk-UB2QYSTO.js → chunk-J5AOEGDC.js} +26 -18
  179. package/dist/cli-bundle/chunks/chunk-J5AOEGDC.js.map +1 -0
  180. package/dist/cli-bundle/chunks/{chunk-4DY4KPQI.js → chunk-J6364LFM.js} +1330 -937
  181. package/dist/cli-bundle/chunks/chunk-J6364LFM.js.map +7 -0
  182. package/dist/cli-bundle/chunks/{chunk-DVOLZJ3C.js → chunk-J6EY5V4N.js} +1295 -939
  183. package/dist/cli-bundle/chunks/chunk-J6EY5V4N.js.map +1 -0
  184. package/dist/cli-bundle/chunks/chunk-JFTKLTEF.js +1097 -0
  185. package/dist/cli-bundle/chunks/chunk-JFTKLTEF.js.map +1 -0
  186. package/dist/cli-bundle/chunks/{chunk-M7EWN4TF.js → chunk-JOUQZENX.js} +3 -3
  187. package/dist/cli-bundle/chunks/{chunk-J4NZOP3I.js → chunk-JXQUXVMI.js} +9 -8
  188. package/dist/cli-bundle/chunks/chunk-JXQUXVMI.js.map +1 -0
  189. package/dist/cli-bundle/chunks/{chunk-2FNWQXZ2.js → chunk-JYFOV7FC.js} +4 -4
  190. package/dist/cli-bundle/chunks/{chunk-HLHSQ5CA.js → chunk-K2X6U4UA.js} +4 -4
  191. package/dist/cli-bundle/chunks/{chunk-6OTZMORS.js → chunk-K3WII2ME.js} +27 -27
  192. package/dist/cli-bundle/chunks/chunk-K3WII2ME.js.map +7 -0
  193. package/dist/cli-bundle/chunks/{chunk-M6ASXYCU.js → chunk-KG44YSKD.js} +4 -4
  194. package/dist/cli-bundle/chunks/{chunk-YVKE5ZDM.js → chunk-KPMKHGEA.js} +4 -4
  195. package/dist/cli-bundle/chunks/{chunk-QASRVKUQ.js → chunk-LPYWLWDS.js} +257 -163
  196. package/dist/cli-bundle/chunks/chunk-LPYWLWDS.js.map +1 -0
  197. package/dist/cli-bundle/chunks/{chunk-RGXD5JJR.js → chunk-LSG2U345.js} +19 -12
  198. package/dist/cli-bundle/chunks/chunk-LSG2U345.js.map +7 -0
  199. package/dist/cli-bundle/chunks/chunk-MIQDDLB5.js +5 -0
  200. package/dist/cli-bundle/chunks/{chunk-UJ4HJYWL.js → chunk-NLDFBC6J.js} +2 -2
  201. package/dist/cli-bundle/chunks/{chunk-WRKB56FC.js → chunk-NP22ERDF.js} +3 -3
  202. package/dist/cli-bundle/chunks/{chunk-YQYG2V23.js → chunk-NU3IMIEA.js} +2 -2
  203. package/dist/cli-bundle/chunks/{chunk-3I3LRT2G.js → chunk-NVPZIJVR.js} +2 -2
  204. package/dist/cli-bundle/chunks/{chunk-JAF4TUQ7.js → chunk-ODALILG3.js} +2 -2
  205. package/dist/cli-bundle/chunks/{chunk-CDJYP7OQ.js → chunk-ONG5V5CI.js} +190 -63
  206. package/dist/cli-bundle/chunks/chunk-ONG5V5CI.js.map +1 -0
  207. package/dist/cli-bundle/chunks/{chunk-QZ7LT3XE.js → chunk-ONREO4ST.js} +3 -3
  208. package/dist/cli-bundle/chunks/chunk-OW4JWD5M.js +61 -0
  209. package/dist/cli-bundle/chunks/chunk-OW4JWD5M.js.map +1 -0
  210. package/dist/cli-bundle/chunks/{chunk-3CMRNVTO.js → chunk-P74IZQ7A.js} +12 -12
  211. package/dist/cli-bundle/chunks/chunk-PENXZX3U.js +172 -0
  212. package/dist/cli-bundle/chunks/chunk-PENXZX3U.js.map +7 -0
  213. package/dist/cli-bundle/chunks/{chunk-ZTRBSABY.js → chunk-PGY23YTC.js} +3 -3
  214. package/dist/cli-bundle/chunks/{chunk-H2QBAKLQ.js → chunk-PMOSXADO.js} +3 -3
  215. package/dist/cli-bundle/chunks/chunk-PNTULOGU.js +9 -0
  216. package/dist/cli-bundle/chunks/{chunk-GSEADLRH.js → chunk-Q7A43DS4.js} +2 -2
  217. package/dist/cli-bundle/chunks/{chunk-QSPARJWF.js → chunk-QEHQ2GVG.js} +2 -2
  218. package/dist/cli-bundle/chunks/{chunk-VJTAEIPC.js → chunk-QIPLHNP7.js} +7 -7
  219. package/dist/cli-bundle/chunks/{chunk-GXXC7QSK.js → chunk-QKECXBBG.js} +3 -3
  220. package/dist/cli-bundle/chunks/{chunk-GXXC7QSK.js.map → chunk-QKECXBBG.js.map} +1 -1
  221. package/dist/cli-bundle/chunks/{chunk-K7WNZ7KD.js → chunk-QKJGPFAF.js} +3 -3
  222. package/dist/cli-bundle/chunks/{chunk-F7PSHRNO.js → chunk-QKXHFPYM.js} +27 -10
  223. package/dist/cli-bundle/chunks/chunk-QKXHFPYM.js.map +1 -0
  224. package/dist/cli-bundle/chunks/{chunk-ZNP64HOW.js → chunk-RLCHOOHC.js} +2 -2
  225. package/dist/cli-bundle/chunks/{chunk-IAPHYPRL.js → chunk-RMLWNPH2.js} +2 -2
  226. package/dist/cli-bundle/chunks/{chunk-UVBA6F5A.js → chunk-RRM5JYJC.js} +2 -2
  227. package/dist/cli-bundle/chunks/{chunk-6IIVBC56.js → chunk-S6MQESFR.js} +4 -4
  228. package/dist/cli-bundle/chunks/{chunk-QABYZYLU.js → chunk-SDQLJWBO.js} +4 -4
  229. package/dist/cli-bundle/chunks/{chunk-ANSJHDOZ.js → chunk-SELVXEZK.js} +2 -2
  230. package/dist/cli-bundle/chunks/{chunk-DYEX6NFH.js → chunk-TD3LVC7D.js} +438 -23
  231. package/dist/cli-bundle/chunks/chunk-TD3LVC7D.js.map +7 -0
  232. package/dist/cli-bundle/chunks/{chunk-WD6MSYMP.js → chunk-TKOVBP6C.js} +2 -2
  233. package/dist/cli-bundle/chunks/{chunk-TZ2PSLLT.js → chunk-TQSZFPIS.js} +4 -4
  234. package/dist/cli-bundle/chunks/{chunk-WPAWZW7S.js → chunk-TSMHDIW4.js} +2 -2
  235. package/dist/cli-bundle/chunks/{chunk-TZRTLMWM.js → chunk-UFXU44HV.js} +4 -4
  236. package/dist/cli-bundle/chunks/{chunk-TWLDBKQU.js → chunk-ULTHRDBP.js} +3 -3
  237. package/dist/cli-bundle/chunks/{chunk-OI4S4KCI.js → chunk-UMOPHQSU.js} +9 -9
  238. package/dist/cli-bundle/chunks/{chunk-OI4S4KCI.js.map → chunk-UMOPHQSU.js.map} +2 -2
  239. package/dist/cli-bundle/chunks/{chunk-RA5AIAMP.js → chunk-UOHFKBUV.js} +3 -3
  240. package/dist/cli-bundle/chunks/{chunk-PHKP3AGR.js → chunk-UWQHLMEB.js} +35 -18
  241. package/dist/cli-bundle/chunks/chunk-UWQHLMEB.js.map +7 -0
  242. package/dist/cli-bundle/chunks/{chunk-6TTOHMTB.js → chunk-UXONS674.js} +45 -112
  243. package/dist/cli-bundle/chunks/chunk-UXONS674.js.map +1 -0
  244. package/dist/cli-bundle/chunks/{chunk-4RXTMU57.js → chunk-UY2ACEMF.js} +7 -7
  245. package/dist/cli-bundle/chunks/{chunk-6PKA3SJQ.js → chunk-WQPUU7XD.js} +19 -28
  246. package/dist/cli-bundle/chunks/chunk-WQPUU7XD.js.map +1 -0
  247. package/dist/cli-bundle/chunks/{chunk-7TQMR6LK.js → chunk-WT3ZEOGH.js} +70 -20
  248. package/dist/cli-bundle/chunks/chunk-WT3ZEOGH.js.map +7 -0
  249. package/dist/cli-bundle/chunks/{chunk-FIGXOCEQ.js → chunk-WUJQK4YV.js} +4 -4
  250. package/dist/cli-bundle/chunks/{chunk-T4BRCB6Z.js → chunk-XSJUSQAE.js} +2 -2
  251. package/dist/cli-bundle/chunks/{chunk-6MHSBDGD.js → chunk-XXXF6PAQ.js} +50 -117
  252. package/dist/cli-bundle/chunks/chunk-XXXF6PAQ.js.map +7 -0
  253. package/dist/cli-bundle/chunks/{chunk-UKUIIBDW.js → chunk-YAQEBNY7.js} +4 -4
  254. package/dist/cli-bundle/chunks/{chunk-7QDSYUMF.js → chunk-YAROI3PD.js} +44 -21
  255. package/dist/cli-bundle/chunks/chunk-YAROI3PD.js.map +1 -0
  256. package/dist/cli-bundle/chunks/{chunk-E2WC6S4P.js → chunk-YBLZ2VE7.js} +13 -13
  257. package/dist/cli-bundle/chunks/{chunk-Y72FV7RM.js → chunk-YCQET3OT.js} +2 -2
  258. package/dist/cli-bundle/chunks/chunk-YUSOJDWM.js +9 -0
  259. package/dist/cli-bundle/chunks/chunk-YXSHIAUJ.js +58 -0
  260. package/dist/cli-bundle/chunks/chunk-YXSHIAUJ.js.map +1 -0
  261. package/dist/cli-bundle/chunks/{chunk-FS6UM5WH.js → chunk-ZI6VQWQ7.js} +4 -4
  262. package/dist/cli-bundle/chunks/chunk-ZKRZY773.js +68 -0
  263. package/dist/cli-bundle/chunks/chunk-ZKRZY773.js.map +7 -0
  264. package/dist/cli-bundle/chunks/{close-LZECOMHO.js → close-CWODTPKG.js} +5 -5
  265. package/dist/cli-bundle/chunks/close-W6LI2PKM.js +12 -0
  266. package/dist/cli-bundle/chunks/{close-many-ZHI6A5TN.js → close-many-CQFUY7MR.js} +15 -13
  267. package/dist/cli-bundle/chunks/close-many-DLDDVSH5.js +23 -0
  268. package/dist/cli-bundle/chunks/comments-E3TNTK24.js +13 -0
  269. package/dist/cli-bundle/chunks/{comments-AJWRTFZ5.js → comments-WGLHR7LB.js} +7 -7
  270. package/dist/cli-bundle/chunks/{copy-GMXYKBXT.js → copy-LXVDXH7B.js} +4 -4
  271. package/dist/cli-bundle/chunks/copy-Q5ZJPUKR.js +9 -0
  272. package/dist/cli-bundle/chunks/{create-F53OBTOU.js → create-J5U6ND4K.js} +9 -9
  273. package/dist/cli-bundle/chunks/{create-HU4Q7RJX.js → create-LBVCYMEG.js} +9 -9
  274. package/dist/cli-bundle/chunks/{delete-GSDZLTRC.js → delete-PMJBNY5G.js} +4 -4
  275. package/dist/cli-bundle/chunks/delete-WNHB3LYW.js +10 -0
  276. package/dist/cli-bundle/chunks/{deps-WWB7P2GT.js → deps-JZ7TMVCB.js} +7 -4
  277. package/dist/cli-bundle/chunks/{deps-U57I7EAK.js → deps-OA26IS25.js} +7 -4
  278. package/dist/cli-bundle/chunks/{docs-MQIY2ZQS.js → docs-FEWB2DQB.js} +6 -6
  279. package/dist/cli-bundle/chunks/docs-HA2AIDBB.js +14 -0
  280. package/dist/cli-bundle/chunks/{files-TBZD7V6H.js → files-6YFBJRBG.js} +6 -6
  281. package/dist/cli-bundle/chunks/{files-TTY6N2AV.js → files-EFIWKFTM.js} +6 -6
  282. package/dist/cli-bundle/chunks/{focus-XT6YVFFX.js → focus-4QJR7FOQ.js} +5 -5
  283. package/dist/cli-bundle/chunks/focus-POIW5LTJ.js +10 -0
  284. package/dist/cli-bundle/chunks/{history-compact-KKVUWB4V.js → history-compact-CKRPDTJN.js} +6 -10
  285. package/dist/cli-bundle/chunks/history-compact-FWG2C7FZ.js +16 -0
  286. package/dist/cli-bundle/chunks/history-redact-BB3TGDAE.js +15 -0
  287. package/dist/cli-bundle/chunks/{history-redact-3DVZOILD.js → history-redact-D225BHOZ.js} +5 -6
  288. package/dist/cli-bundle/chunks/history-repair-6GEAM7HE.js +16 -0
  289. package/dist/cli-bundle/chunks/{history-repair-ITDUMK4N.js → history-repair-RQXKQHL4.js} +6 -8
  290. package/dist/cli-bundle/chunks/{learnings-FGO3NSFW.js → learnings-JLNLCOL5.js} +7 -7
  291. package/dist/cli-bundle/chunks/learnings-RSNLSWDC.js +13 -0
  292. package/dist/cli-bundle/chunks/notes-2WDH6DXU.js +13 -0
  293. package/dist/cli-bundle/chunks/{notes-NQ6RXVW6.js → notes-GB47XXQQ.js} +7 -7
  294. package/dist/cli-bundle/chunks/plan-DOVI2VMW.js +24 -0
  295. package/dist/cli-bundle/chunks/{plan-2NNEO46V.js → plan-VDCJ2PCN.js} +10 -10
  296. package/dist/cli-bundle/chunks/{profile-AAQUU6T3.js → profile-FAU7NZML.js} +10 -10
  297. package/dist/cli-bundle/chunks/{profile-U725ATWZ.js → profile-IVXQEL3D.js} +10 -10
  298. package/dist/cli-bundle/chunks/{register-list-query-BUWCYHBT.js → register-list-query-DKA3EH5D.js} +22 -19
  299. package/dist/cli-bundle/chunks/register-list-query-DKA3EH5D.js.map +7 -0
  300. package/dist/cli-bundle/chunks/{register-list-query-KTZ6AGE7.js → register-list-query-UL4UKBBN.js} +23 -20
  301. package/dist/cli-bundle/chunks/register-list-query-UL4UKBBN.js.map +1 -0
  302. package/dist/cli-bundle/chunks/{register-mutation-UELYYOR7.js → register-mutation-ARFHRW55.js} +36 -32
  303. package/dist/cli-bundle/chunks/{register-mutation-UELYYOR7.js.map → register-mutation-ARFHRW55.js.map} +2 -2
  304. package/dist/cli-bundle/chunks/{register-mutation-4FMGJJF7.js → register-mutation-RBBJ52DK.js} +37 -33
  305. package/dist/cli-bundle/chunks/register-mutation-RBBJ52DK.js.map +1 -0
  306. package/dist/cli-bundle/chunks/{register-operations-JVW24J2Y.js → register-operations-ZIBBRSED.js} +41 -39
  307. package/dist/cli-bundle/chunks/{register-operations-JVW24J2Y.js.map → register-operations-ZIBBRSED.js.map} +1 -1
  308. package/dist/cli-bundle/chunks/{register-operations-ISUX6LY5.js → register-operations-ZUJ5JWPE.js} +39 -37
  309. package/dist/cli-bundle/chunks/{register-operations-ISUX6LY5.js.map → register-operations-ZUJ5JWPE.js.map} +1 -1
  310. package/dist/cli-bundle/chunks/{register-setup-5XNGKJ22.js → register-setup-BCVLFEYS.js} +29 -17
  311. package/dist/cli-bundle/chunks/{register-setup-5XNGKJ22.js.map → register-setup-BCVLFEYS.js.map} +2 -2
  312. package/dist/cli-bundle/chunks/{register-setup-ZTNY6S7R.js → register-setup-TDCGWIOS.js} +19 -18
  313. package/dist/cli-bundle/chunks/{register-setup-ZTNY6S7R.js.map → register-setup-TDCGWIOS.js.map} +1 -1
  314. package/dist/cli-bundle/chunks/{restore-B3BAB6X2.js → restore-25DLT2Q2.js} +6 -6
  315. package/dist/cli-bundle/chunks/restore-YPMVUUEX.js +14 -0
  316. package/dist/cli-bundle/chunks/{schema-U7IM2DXV.js → schema-FNU3WE4O.js} +7 -6
  317. package/dist/cli-bundle/chunks/{schema-LZNUYHDB.js → schema-NBCM3RAD.js} +7 -6
  318. package/dist/cli-bundle/chunks/update-WWBYOPXO.js +21 -0
  319. package/dist/cli-bundle/chunks/update-WWBYOPXO.js.map +7 -0
  320. package/dist/cli-bundle/chunks/{update-Q3UCILNR.js → update-XHSIAIXE.js} +12 -12
  321. package/dist/cli-bundle/chunks/update-XHSIAIXE.js.map +1 -0
  322. package/dist/cli-bundle/chunks/update-many-OUGIU5SF.js +32 -0
  323. package/dist/cli-bundle/chunks/update-many-OUGIU5SF.js.map +7 -0
  324. package/dist/cli-bundle/chunks/update-many-TA7NGQBO.js +36 -0
  325. package/dist/cli-bundle/chunks/update-many-TA7NGQBO.js.map +1 -0
  326. package/dist/cli-bundle/main.js +826 -43
  327. package/dist/cli-bundle/main.js.map +4 -4
  328. package/dist/cli-bundle/sdk-runtime.js +70 -57
  329. package/dist/cli-bundle/sdk-testing.js +6 -6
  330. package/dist/cli-bundle/sdk.js +876 -74
  331. package/dist/cli-bundle/sdk.js.map +4 -4
  332. package/dist/cli.js +5 -4
  333. package/dist/cli.js.map +1 -1
  334. package/dist/core/diagnostics/remediation.js +12 -2
  335. package/dist/core/diagnostics/remediation.js.map +1 -1
  336. package/dist/core/history/projection.d.ts +39 -0
  337. package/dist/core/history/projection.js +164 -0
  338. package/dist/core/history/projection.js.map +1 -0
  339. package/dist/core/history/read.d.ts +3 -0
  340. package/dist/core/history/read.js +55 -0
  341. package/dist/core/history/read.js.map +1 -0
  342. package/dist/core/output/output-control.d.ts +18 -0
  343. package/dist/core/output/output-control.js +26 -0
  344. package/dist/core/output/output-control.js.map +1 -0
  345. package/dist/core/output/output.js +20 -8
  346. package/dist/core/output/output.js.map +1 -1
  347. package/dist/core/sentry/helpers.js +10 -2
  348. package/dist/core/sentry/helpers.js.map +1 -1
  349. package/dist/core/shared/command-types.d.ts +2 -0
  350. package/dist/core/shared/command-types.js +2 -2
  351. package/dist/core/shared/command-types.js.map +1 -1
  352. package/dist/core/shared/errors.d.ts +11 -0
  353. package/dist/core/shared/errors.js +2 -2
  354. package/dist/core/shared/errors.js.map +1 -1
  355. package/dist/mcp/server.d.ts +2 -2
  356. package/dist/mcp/tool-definitions.js +5 -5
  357. package/dist/mcp/tool-definitions.js.map +1 -1
  358. package/dist/sdk/author-attribution.d.ts +35 -0
  359. package/dist/sdk/author-attribution.js +118 -0
  360. package/dist/sdk/author-attribution.js.map +1 -0
  361. package/dist/sdk/cli-contracts/command-aliases.d.ts +7 -0
  362. package/dist/sdk/cli-contracts/command-aliases.js +17 -0
  363. package/dist/sdk/cli-contracts/command-aliases.js.map +1 -0
  364. package/dist/sdk/cli-contracts/flag-contracts.js +5 -2
  365. package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -1
  366. package/dist/sdk/cli-contracts/tool-option-contracts.js +6 -2
  367. package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
  368. package/dist/sdk/cli-contracts/tool-parameter-tables.js +21 -2
  369. package/dist/sdk/cli-contracts/tool-parameter-tables.js.map +1 -1
  370. package/dist/sdk/cli-contracts/tool-schema.js +3 -3
  371. package/dist/sdk/cli-contracts/tool-schema.js.map +1 -1
  372. package/dist/sdk/cli-contracts.d.ts +1 -0
  373. package/dist/sdk/cli-contracts.js +3 -2
  374. package/dist/sdk/cli-contracts.js.map +1 -1
  375. package/dist/sdk/cli-program.d.ts +8 -0
  376. package/dist/sdk/cli-program.js +39 -0
  377. package/dist/sdk/cli-program.js.map +1 -0
  378. package/dist/sdk/command-line.d.ts +11 -0
  379. package/dist/sdk/command-line.js +40 -0
  380. package/dist/sdk/command-line.js.map +1 -0
  381. package/dist/sdk/config.d.ts +163 -0
  382. package/dist/sdk/config.js +1087 -0
  383. package/dist/sdk/config.js.map +1 -0
  384. package/dist/sdk/context-relevance.d.ts +21 -0
  385. package/dist/sdk/context-relevance.js +70 -2
  386. package/dist/sdk/context-relevance.js.map +1 -1
  387. package/dist/sdk/dependencies.d.ts +15 -2
  388. package/dist/sdk/dependencies.js +97 -8
  389. package/dist/sdk/dependencies.js.map +1 -1
  390. package/dist/{cli/commands → sdk}/extension/bundled-catalog.d.ts +1 -1
  391. package/dist/{cli/commands → sdk}/extension/bundled-catalog.js +12 -12
  392. package/dist/sdk/extension/bundled-catalog.js.map +1 -0
  393. package/dist/sdk/extension/concurrency.d.ts +7 -0
  394. package/dist/sdk/extension/concurrency.js +26 -0
  395. package/dist/sdk/extension/concurrency.js.map +1 -0
  396. package/dist/sdk/extension/describe.d.ts +91 -0
  397. package/dist/sdk/extension/describe.js +144 -0
  398. package/dist/sdk/extension/describe.js.map +1 -0
  399. package/dist/{cli/commands → sdk}/extension/doctor.d.ts +3 -3
  400. package/dist/{cli/commands → sdk}/extension/doctor.js +7 -7
  401. package/dist/sdk/extension/doctor.js.map +1 -0
  402. package/dist/sdk/extension/install-runtime.d.ts +26 -0
  403. package/dist/sdk/extension/install-runtime.js +269 -0
  404. package/dist/sdk/extension/install-runtime.js.map +1 -0
  405. package/dist/sdk/extension/install-snapshot.d.ts +23 -0
  406. package/dist/sdk/extension/install-snapshot.js +66 -0
  407. package/dist/sdk/extension/install-snapshot.js.map +1 -0
  408. package/dist/{cli/commands → sdk}/extension/install-sources.d.ts +3 -3
  409. package/dist/{cli/commands → sdk}/extension/install-sources.js +15 -12
  410. package/dist/sdk/extension/install-sources.js.map +1 -0
  411. package/dist/{cli/commands → sdk}/extension/managed-state.js +6 -6
  412. package/dist/sdk/extension/managed-state.js.map +1 -0
  413. package/dist/sdk/extension/scaffold.d.ts +36 -0
  414. package/dist/sdk/extension/scaffold.js +2436 -0
  415. package/dist/sdk/extension/scaffold.js.map +1 -0
  416. package/dist/sdk/extension/shared.d.ts +28 -0
  417. package/dist/sdk/extension/shared.js +140 -0
  418. package/dist/sdk/extension/shared.js.map +1 -0
  419. package/dist/sdk/extension/update-check.d.ts +15 -0
  420. package/dist/sdk/extension/update-check.js +68 -0
  421. package/dist/sdk/extension/update-check.js.map +1 -0
  422. package/dist/sdk/extension.d.ts +367 -0
  423. package/dist/sdk/extension.js +2174 -0
  424. package/dist/sdk/extension.js.map +1 -0
  425. package/dist/sdk/governance/gc.d.ts +56 -0
  426. package/dist/sdk/governance/gc.js +276 -0
  427. package/dist/sdk/governance/gc.js.map +1 -0
  428. package/dist/sdk/governance/health.d.ts +187 -0
  429. package/dist/sdk/governance/health.js +1796 -0
  430. package/dist/sdk/governance/health.js.map +1 -0
  431. package/dist/sdk/governance/validate.d.ts +255 -0
  432. package/dist/sdk/governance/validate.js +2175 -0
  433. package/dist/sdk/governance/validate.js.map +1 -0
  434. package/dist/sdk/history-compact.d.ts +142 -0
  435. package/dist/sdk/history-compact.js +508 -0
  436. package/dist/sdk/history-compact.js.map +1 -0
  437. package/dist/sdk/history-mcp.d.ts +17 -0
  438. package/dist/sdk/history-mcp.js +68 -0
  439. package/dist/sdk/history-mcp.js.map +1 -0
  440. package/dist/sdk/history-read.d.ts +31 -0
  441. package/dist/sdk/history-read.js +58 -0
  442. package/dist/sdk/history-read.js.map +1 -0
  443. package/dist/sdk/history-redact.d.ts +120 -0
  444. package/dist/sdk/history-redact.js +577 -0
  445. package/dist/sdk/history-redact.js.map +1 -0
  446. package/dist/sdk/history-repair.d.ts +89 -0
  447. package/dist/sdk/history-repair.js +263 -0
  448. package/dist/sdk/history-repair.js.map +1 -0
  449. package/dist/sdk/index.d.ts +25 -1
  450. package/dist/sdk/index.js +27 -3
  451. package/dist/sdk/index.js.map +1 -1
  452. package/dist/sdk/init-agent-guidance.d.ts +113 -0
  453. package/dist/sdk/init-agent-guidance.js +437 -0
  454. package/dist/sdk/init-agent-guidance.js.map +1 -0
  455. package/dist/sdk/init.d.ts +186 -0
  456. package/dist/sdk/init.js +733 -0
  457. package/dist/sdk/init.js.map +1 -0
  458. package/dist/sdk/invocation-author.d.ts +2 -0
  459. package/dist/sdk/invocation-author.js +39 -0
  460. package/dist/sdk/invocation-author.js.map +1 -0
  461. package/dist/sdk/item-children.d.ts +45 -0
  462. package/dist/sdk/item-children.js +75 -0
  463. package/dist/sdk/item-children.js.map +1 -0
  464. package/dist/sdk/item-schedule.d.ts +26 -0
  465. package/dist/sdk/item-schedule.js +28 -0
  466. package/dist/sdk/item-schedule.js.map +1 -0
  467. package/dist/sdk/output.d.ts +7 -0
  468. package/dist/sdk/output.js +11 -0
  469. package/dist/sdk/output.js.map +1 -0
  470. package/dist/sdk/pagination.d.ts +4 -1
  471. package/dist/sdk/pagination.js +13 -5
  472. package/dist/sdk/pagination.js.map +1 -1
  473. package/dist/sdk/profile.d.ts +176 -0
  474. package/dist/sdk/profile.js +431 -0
  475. package/dist/sdk/profile.js.map +1 -0
  476. package/dist/sdk/relationship-analytics.d.ts +108 -0
  477. package/dist/sdk/relationship-analytics.js +292 -0
  478. package/dist/sdk/relationship-analytics.js.map +1 -0
  479. package/dist/sdk/relationship-context.d.ts +67 -0
  480. package/dist/sdk/relationship-context.js +207 -0
  481. package/dist/sdk/relationship-context.js.map +1 -0
  482. package/dist/sdk/relationship-history.d.ts +109 -0
  483. package/dist/sdk/relationship-history.js +401 -0
  484. package/dist/sdk/relationship-history.js.map +1 -0
  485. package/dist/sdk/relationships.d.ts +145 -0
  486. package/dist/sdk/relationships.js +551 -0
  487. package/dist/sdk/relationships.js.map +1 -0
  488. package/dist/sdk/runtime-input.d.ts +10 -0
  489. package/dist/sdk/runtime-input.js +60 -0
  490. package/dist/sdk/runtime-input.js.map +1 -0
  491. package/dist/sdk/runtime.d.ts +31 -8
  492. package/dist/sdk/runtime.js +61 -57
  493. package/dist/sdk/runtime.js.map +1 -1
  494. package/dist/sdk/schema.d.ts +507 -0
  495. package/dist/sdk/schema.js +1269 -0
  496. package/dist/sdk/schema.js.map +1 -0
  497. package/dist/{cli/commands → sdk}/templates.d.ts +1 -1
  498. package/dist/{cli/commands → sdk}/templates.js +9 -9
  499. package/dist/sdk/templates.js.map +1 -0
  500. package/dist/{cli/commands → sdk}/test/linked-command-detection.d.ts +10 -2
  501. package/dist/sdk/test/linked-command-detection.js +525 -0
  502. package/dist/sdk/test/linked-command-detection.js.map +1 -0
  503. package/docs/COMMANDS.md +58 -40
  504. package/docs/EXTENSIONS.md +10 -1
  505. package/docs/RELATIONSHIP_GRAPH.md +113 -0
  506. package/docs/RELEASING.md +2 -0
  507. package/docs/SDK.md +156 -9
  508. package/docs/SDK_CUSTOMIZATION_PRIMITIVES.md +79 -0
  509. package/marketplace.json +2 -2
  510. package/package.json +3 -2
  511. package/packages/pm-beads/package.json +1 -1
  512. package/packages/pm-calendar/package.json +1 -1
  513. package/packages/pm-command-kit/package.json +1 -1
  514. package/packages/pm-governance-audit/extensions/governance-audit/runtime-utils.ts +76 -16
  515. package/packages/pm-governance-audit/extensions/governance-audit/sdk.ts +8 -0
  516. package/packages/pm-governance-audit/package.json +1 -1
  517. package/packages/pm-guide-shell/package.json +1 -1
  518. package/packages/pm-kanban/package.json +1 -1
  519. package/packages/pm-lifecycle-hooks/package.json +1 -1
  520. package/packages/pm-linked-test-adapters/package.json +1 -1
  521. package/packages/pm-search-advanced/package.json +1 -1
  522. package/packages/pm-templates/package.json +1 -1
  523. package/packages/pm-todos/package.json +1 -1
  524. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  525. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  526. package/scripts/bundle-cli.mjs +66 -23
  527. package/dist/cli/commands/extension/bundled-catalog.js.map +0 -1
  528. package/dist/cli/commands/extension/doctor.js.map +0 -1
  529. package/dist/cli/commands/extension/install-sources.js.map +0 -1
  530. package/dist/cli/commands/extension/managed-state.js.map +0 -1
  531. package/dist/cli/commands/templates.js.map +0 -1
  532. package/dist/cli/commands/test/linked-command-detection.js +0 -248
  533. package/dist/cli/commands/test/linked-command-detection.js.map +0 -1
  534. package/dist/cli-bundle/chunks/append-DYQWQK2J.js +0 -11
  535. package/dist/cli-bundle/chunks/chunk-2GA3NK35.js +0 -530
  536. package/dist/cli-bundle/chunks/chunk-2GA3NK35.js.map +0 -1
  537. package/dist/cli-bundle/chunks/chunk-2QIQGYPW.js.map +0 -7
  538. package/dist/cli-bundle/chunks/chunk-4DY4KPQI.js.map +0 -7
  539. package/dist/cli-bundle/chunks/chunk-4WREH7RT.js +0 -554
  540. package/dist/cli-bundle/chunks/chunk-4WREH7RT.js.map +0 -7
  541. package/dist/cli-bundle/chunks/chunk-5CT5BW6E.js.map +0 -7
  542. package/dist/cli-bundle/chunks/chunk-5URI7TPJ.js.map +0 -7
  543. package/dist/cli-bundle/chunks/chunk-6MHSBDGD.js.map +0 -7
  544. package/dist/cli-bundle/chunks/chunk-6OTZMORS.js.map +0 -7
  545. package/dist/cli-bundle/chunks/chunk-6PKA3SJQ.js.map +0 -1
  546. package/dist/cli-bundle/chunks/chunk-6TTOHMTB.js.map +0 -1
  547. package/dist/cli-bundle/chunks/chunk-7QDSYUMF.js.map +0 -1
  548. package/dist/cli-bundle/chunks/chunk-7TQMR6LK.js.map +0 -7
  549. package/dist/cli-bundle/chunks/chunk-B5DZYTT3.js +0 -312
  550. package/dist/cli-bundle/chunks/chunk-B5DZYTT3.js.map +0 -7
  551. package/dist/cli-bundle/chunks/chunk-BPD26E3P.js.map +0 -1
  552. package/dist/cli-bundle/chunks/chunk-CDJYP7OQ.js.map +0 -1
  553. package/dist/cli-bundle/chunks/chunk-DBZVUJTK.js +0 -858
  554. package/dist/cli-bundle/chunks/chunk-DBZVUJTK.js.map +0 -1
  555. package/dist/cli-bundle/chunks/chunk-DVOLZJ3C.js.map +0 -1
  556. package/dist/cli-bundle/chunks/chunk-DYEX6NFH.js.map +0 -7
  557. package/dist/cli-bundle/chunks/chunk-F7PSHRNO.js.map +0 -1
  558. package/dist/cli-bundle/chunks/chunk-FO7GMJKG.js +0 -875
  559. package/dist/cli-bundle/chunks/chunk-FO7GMJKG.js.map +0 -7
  560. package/dist/cli-bundle/chunks/chunk-FTQLW4JD.js.map +0 -1
  561. package/dist/cli-bundle/chunks/chunk-IA3YFTXT.js.map +0 -1
  562. package/dist/cli-bundle/chunks/chunk-IGED7NH2.js.map +0 -7
  563. package/dist/cli-bundle/chunks/chunk-J4NZOP3I.js.map +0 -1
  564. package/dist/cli-bundle/chunks/chunk-JL7WZ4O2.js.map +0 -7
  565. package/dist/cli-bundle/chunks/chunk-L24HCJFC.js +0 -309
  566. package/dist/cli-bundle/chunks/chunk-L24HCJFC.js.map +0 -1
  567. package/dist/cli-bundle/chunks/chunk-LWTIRS3Y.js.map +0 -7
  568. package/dist/cli-bundle/chunks/chunk-MKL4CP2I.js.map +0 -1
  569. package/dist/cli-bundle/chunks/chunk-N3CMP4NI.js.map +0 -1
  570. package/dist/cli-bundle/chunks/chunk-PHKP3AGR.js.map +0 -7
  571. package/dist/cli-bundle/chunks/chunk-Q37E63AM.js.map +0 -7
  572. package/dist/cli-bundle/chunks/chunk-QASRVKUQ.js.map +0 -1
  573. package/dist/cli-bundle/chunks/chunk-RGXD5JJR.js.map +0 -7
  574. package/dist/cli-bundle/chunks/chunk-UB2QYSTO.js.map +0 -1
  575. package/dist/cli-bundle/chunks/chunk-UGTVWL3E.js.map +0 -1
  576. package/dist/cli-bundle/chunks/chunk-ZAYYDNB3.js.map +0 -1
  577. package/dist/cli-bundle/chunks/chunk-ZUKSZVBW.js.map +0 -7
  578. package/dist/cli-bundle/chunks/close-RI4JQQHU.js +0 -12
  579. package/dist/cli-bundle/chunks/close-many-LY2XJ52M.js +0 -21
  580. package/dist/cli-bundle/chunks/comments-35M273DN.js +0 -13
  581. package/dist/cli-bundle/chunks/copy-NPYM7M7U.js +0 -9
  582. package/dist/cli-bundle/chunks/delete-ODRWJWAM.js +0 -10
  583. package/dist/cli-bundle/chunks/docs-G7N4E2JO.js +0 -14
  584. package/dist/cli-bundle/chunks/focus-U5TRVCRS.js +0 -10
  585. package/dist/cli-bundle/chunks/history-compact-M7GHYVFN.js +0 -20
  586. package/dist/cli-bundle/chunks/history-redact-JIHZLHDP.js +0 -16
  587. package/dist/cli-bundle/chunks/history-repair-NAFCHLH7.js +0 -18
  588. package/dist/cli-bundle/chunks/learnings-SONGPSHI.js +0 -13
  589. package/dist/cli-bundle/chunks/notes-BSD53H2W.js +0 -13
  590. package/dist/cli-bundle/chunks/plan-AWLYGBNV.js +0 -24
  591. package/dist/cli-bundle/chunks/register-list-query-BUWCYHBT.js.map +0 -7
  592. package/dist/cli-bundle/chunks/register-list-query-KTZ6AGE7.js.map +0 -1
  593. package/dist/cli-bundle/chunks/register-mutation-4FMGJJF7.js.map +0 -1
  594. package/dist/cli-bundle/chunks/restore-66GLMHIX.js +0 -14
  595. package/dist/cli-bundle/chunks/update-2XGHIVQ2.js +0 -21
  596. package/dist/cli-bundle/chunks/update-many-75K57FS3.js +0 -34
  597. package/dist/cli-bundle/chunks/update-many-U42YA445.js +0 -30
  598. /package/dist/cli-bundle/chunks/{append-PVZJDM6J.js.map → append-OJQFUQ4T.js.map} +0 -0
  599. /package/dist/cli-bundle/chunks/{append-DYQWQK2J.js.map → append-UZVHUO74.js.map} +0 -0
  600. /package/dist/cli-bundle/chunks/{chunk-MQZ3PLCF.js.map → chunk-2IFFUZLC.js.map} +0 -0
  601. /package/dist/cli-bundle/chunks/{chunk-P6MYFH6K.js.map → chunk-2JKGO6QX.js.map} +0 -0
  602. /package/dist/cli-bundle/chunks/{chunk-X3GYR4P2.js.map → chunk-2NCIPMQP.js.map} +0 -0
  603. /package/dist/cli-bundle/chunks/{chunk-Q7E6OYZK.js.map → chunk-2VPAVL7O.js.map} +0 -0
  604. /package/dist/cli-bundle/chunks/{chunk-DRNJPEPQ.js.map → chunk-2WSE6PO2.js.map} +0 -0
  605. /package/dist/cli-bundle/chunks/{chunk-FDSBDNYE.js.map → chunk-34L5OT3Y.js.map} +0 -0
  606. /package/dist/cli-bundle/chunks/{chunk-TH7U4KLY.js.map → chunk-3AUGG2DP.js.map} +0 -0
  607. /package/dist/cli-bundle/chunks/{chunk-NKW36AMT.js.map → chunk-3CLU2XZO.js.map} +0 -0
  608. /package/dist/cli-bundle/chunks/{chunk-ABRCOSDC.js.map → chunk-3WM75PWC.js.map} +0 -0
  609. /package/dist/cli-bundle/chunks/{chunk-X6BVXQ52.js.map → chunk-5JLUII3O.js.map} +0 -0
  610. /package/dist/cli-bundle/chunks/{chunk-3TL7WOEF.js.map → chunk-6N2VXVTQ.js.map} +0 -0
  611. /package/dist/cli-bundle/chunks/{chunk-ERL2YFJ2.js.map → chunk-6S3YSUYG.js.map} +0 -0
  612. /package/dist/cli-bundle/chunks/{chunk-IFZA4VB5.js.map → chunk-AHVTB5I5.js.map} +0 -0
  613. /package/dist/cli-bundle/chunks/{chunk-DO5RGJXT.js.map → chunk-APRVSW2O.js.map} +0 -0
  614. /package/dist/cli-bundle/chunks/{chunk-NAQYVWSQ.js.map → chunk-B7PE22W6.js.map} +0 -0
  615. /package/dist/cli-bundle/chunks/{chunk-MD6ULIPJ.js.map → chunk-BCOFWYW4.js.map} +0 -0
  616. /package/dist/cli-bundle/chunks/{chunk-KADLSPIU.js.map → chunk-BEP7WJA2.js.map} +0 -0
  617. /package/dist/cli-bundle/chunks/{chunk-OBDLEQG5.js.map → chunk-CRVF2JDM.js.map} +0 -0
  618. /package/dist/cli-bundle/chunks/{chunk-FJZDA6MS.js.map → chunk-DM4H7FP4.js.map} +0 -0
  619. /package/dist/cli-bundle/chunks/{close-LZECOMHO.js.map → chunk-DUT67M43.js.map} +0 -0
  620. /package/dist/cli-bundle/chunks/{chunk-44LNIULG.js.map → chunk-DYH63FX7.js.map} +0 -0
  621. /package/dist/cli-bundle/chunks/{chunk-HAMLIWAF.js.map → chunk-EAB64KLB.js.map} +0 -0
  622. /package/dist/cli-bundle/chunks/{chunk-CIOZ376P.js.map → chunk-EACOH7AU.js.map} +0 -0
  623. /package/dist/cli-bundle/chunks/{chunk-QK2ZN6UL.js.map → chunk-EJEXHTY5.js.map} +0 -0
  624. /package/dist/cli-bundle/chunks/{chunk-WQUEHPZB.js.map → chunk-EYLCSJAI.js.map} +0 -0
  625. /package/dist/cli-bundle/chunks/{chunk-655STMGA.js.map → chunk-FMBNM2EN.js.map} +0 -0
  626. /package/dist/cli-bundle/chunks/{chunk-RMF3IOYQ.js.map → chunk-FNSPG7MU.js.map} +0 -0
  627. /package/dist/cli-bundle/chunks/{chunk-KB726FMH.js.map → chunk-H2Z3FYXQ.js.map} +0 -0
  628. /package/dist/cli-bundle/chunks/{chunk-BN62TO2S.js.map → chunk-IA5FKNII.js.map} +0 -0
  629. /package/dist/cli-bundle/chunks/{chunk-W6HZ55JO.js.map → chunk-IJIICKVW.js.map} +0 -0
  630. /package/dist/cli-bundle/chunks/{chunk-M7EWN4TF.js.map → chunk-JOUQZENX.js.map} +0 -0
  631. /package/dist/cli-bundle/chunks/{chunk-2FNWQXZ2.js.map → chunk-JYFOV7FC.js.map} +0 -0
  632. /package/dist/cli-bundle/chunks/{chunk-HLHSQ5CA.js.map → chunk-K2X6U4UA.js.map} +0 -0
  633. /package/dist/cli-bundle/chunks/{chunk-M6ASXYCU.js.map → chunk-KG44YSKD.js.map} +0 -0
  634. /package/dist/cli-bundle/chunks/{chunk-YVKE5ZDM.js.map → chunk-KPMKHGEA.js.map} +0 -0
  635. /package/dist/cli-bundle/chunks/{close-many-ZHI6A5TN.js.map → chunk-MIQDDLB5.js.map} +0 -0
  636. /package/dist/cli-bundle/chunks/{chunk-UJ4HJYWL.js.map → chunk-NLDFBC6J.js.map} +0 -0
  637. /package/dist/cli-bundle/chunks/{chunk-WRKB56FC.js.map → chunk-NP22ERDF.js.map} +0 -0
  638. /package/dist/cli-bundle/chunks/{chunk-YQYG2V23.js.map → chunk-NU3IMIEA.js.map} +0 -0
  639. /package/dist/cli-bundle/chunks/{chunk-3I3LRT2G.js.map → chunk-NVPZIJVR.js.map} +0 -0
  640. /package/dist/cli-bundle/chunks/{chunk-JAF4TUQ7.js.map → chunk-ODALILG3.js.map} +0 -0
  641. /package/dist/cli-bundle/chunks/{chunk-QZ7LT3XE.js.map → chunk-ONREO4ST.js.map} +0 -0
  642. /package/dist/cli-bundle/chunks/{chunk-3CMRNVTO.js.map → chunk-P74IZQ7A.js.map} +0 -0
  643. /package/dist/cli-bundle/chunks/{chunk-ZTRBSABY.js.map → chunk-PGY23YTC.js.map} +0 -0
  644. /package/dist/cli-bundle/chunks/{chunk-H2QBAKLQ.js.map → chunk-PMOSXADO.js.map} +0 -0
  645. /package/dist/cli-bundle/chunks/{close-RI4JQQHU.js.map → chunk-PNTULOGU.js.map} +0 -0
  646. /package/dist/cli-bundle/chunks/{chunk-GSEADLRH.js.map → chunk-Q7A43DS4.js.map} +0 -0
  647. /package/dist/cli-bundle/chunks/{chunk-QSPARJWF.js.map → chunk-QEHQ2GVG.js.map} +0 -0
  648. /package/dist/cli-bundle/chunks/{chunk-VJTAEIPC.js.map → chunk-QIPLHNP7.js.map} +0 -0
  649. /package/dist/cli-bundle/chunks/{chunk-K7WNZ7KD.js.map → chunk-QKJGPFAF.js.map} +0 -0
  650. /package/dist/cli-bundle/chunks/{chunk-ZNP64HOW.js.map → chunk-RLCHOOHC.js.map} +0 -0
  651. /package/dist/cli-bundle/chunks/{chunk-IAPHYPRL.js.map → chunk-RMLWNPH2.js.map} +0 -0
  652. /package/dist/cli-bundle/chunks/{chunk-UVBA6F5A.js.map → chunk-RRM5JYJC.js.map} +0 -0
  653. /package/dist/cli-bundle/chunks/{chunk-6IIVBC56.js.map → chunk-S6MQESFR.js.map} +0 -0
  654. /package/dist/cli-bundle/chunks/{chunk-QABYZYLU.js.map → chunk-SDQLJWBO.js.map} +0 -0
  655. /package/dist/cli-bundle/chunks/{chunk-ANSJHDOZ.js.map → chunk-SELVXEZK.js.map} +0 -0
  656. /package/dist/cli-bundle/chunks/{chunk-WD6MSYMP.js.map → chunk-TKOVBP6C.js.map} +0 -0
  657. /package/dist/cli-bundle/chunks/{chunk-TZ2PSLLT.js.map → chunk-TQSZFPIS.js.map} +0 -0
  658. /package/dist/cli-bundle/chunks/{chunk-WPAWZW7S.js.map → chunk-TSMHDIW4.js.map} +0 -0
  659. /package/dist/cli-bundle/chunks/{chunk-TZRTLMWM.js.map → chunk-UFXU44HV.js.map} +0 -0
  660. /package/dist/cli-bundle/chunks/{chunk-TWLDBKQU.js.map → chunk-ULTHRDBP.js.map} +0 -0
  661. /package/dist/cli-bundle/chunks/{chunk-RA5AIAMP.js.map → chunk-UOHFKBUV.js.map} +0 -0
  662. /package/dist/cli-bundle/chunks/{chunk-4RXTMU57.js.map → chunk-UY2ACEMF.js.map} +0 -0
  663. /package/dist/cli-bundle/chunks/{chunk-FIGXOCEQ.js.map → chunk-WUJQK4YV.js.map} +0 -0
  664. /package/dist/cli-bundle/chunks/{chunk-T4BRCB6Z.js.map → chunk-XSJUSQAE.js.map} +0 -0
  665. /package/dist/cli-bundle/chunks/{chunk-UKUIIBDW.js.map → chunk-YAQEBNY7.js.map} +0 -0
  666. /package/dist/cli-bundle/chunks/{chunk-E2WC6S4P.js.map → chunk-YBLZ2VE7.js.map} +0 -0
  667. /package/dist/cli-bundle/chunks/{chunk-Y72FV7RM.js.map → chunk-YCQET3OT.js.map} +0 -0
  668. /package/dist/cli-bundle/chunks/{close-many-LY2XJ52M.js.map → chunk-YUSOJDWM.js.map} +0 -0
  669. /package/dist/cli-bundle/chunks/{chunk-FS6UM5WH.js.map → chunk-ZI6VQWQ7.js.map} +0 -0
  670. /package/dist/cli-bundle/chunks/{comments-AJWRTFZ5.js.map → close-CWODTPKG.js.map} +0 -0
  671. /package/dist/cli-bundle/chunks/{comments-35M273DN.js.map → close-W6LI2PKM.js.map} +0 -0
  672. /package/dist/cli-bundle/chunks/{copy-GMXYKBXT.js.map → close-many-CQFUY7MR.js.map} +0 -0
  673. /package/dist/cli-bundle/chunks/{copy-NPYM7M7U.js.map → close-many-DLDDVSH5.js.map} +0 -0
  674. /package/dist/cli-bundle/chunks/{create-F53OBTOU.js.map → comments-E3TNTK24.js.map} +0 -0
  675. /package/dist/cli-bundle/chunks/{create-HU4Q7RJX.js.map → comments-WGLHR7LB.js.map} +0 -0
  676. /package/dist/cli-bundle/chunks/{delete-GSDZLTRC.js.map → copy-LXVDXH7B.js.map} +0 -0
  677. /package/dist/cli-bundle/chunks/{delete-ODRWJWAM.js.map → copy-Q5ZJPUKR.js.map} +0 -0
  678. /package/dist/cli-bundle/chunks/{deps-U57I7EAK.js.map → create-J5U6ND4K.js.map} +0 -0
  679. /package/dist/cli-bundle/chunks/{deps-WWB7P2GT.js.map → create-LBVCYMEG.js.map} +0 -0
  680. /package/dist/cli-bundle/chunks/{docs-MQIY2ZQS.js.map → delete-PMJBNY5G.js.map} +0 -0
  681. /package/dist/cli-bundle/chunks/{docs-G7N4E2JO.js.map → delete-WNHB3LYW.js.map} +0 -0
  682. /package/dist/cli-bundle/chunks/{files-TTY6N2AV.js.map → deps-JZ7TMVCB.js.map} +0 -0
  683. /package/dist/cli-bundle/chunks/{files-TBZD7V6H.js.map → deps-OA26IS25.js.map} +0 -0
  684. /package/dist/cli-bundle/chunks/{focus-XT6YVFFX.js.map → docs-FEWB2DQB.js.map} +0 -0
  685. /package/dist/cli-bundle/chunks/{focus-U5TRVCRS.js.map → docs-HA2AIDBB.js.map} +0 -0
  686. /package/dist/cli-bundle/chunks/{history-compact-M7GHYVFN.js.map → files-6YFBJRBG.js.map} +0 -0
  687. /package/dist/cli-bundle/chunks/{history-compact-KKVUWB4V.js.map → files-EFIWKFTM.js.map} +0 -0
  688. /package/dist/cli-bundle/chunks/{history-redact-3DVZOILD.js.map → focus-4QJR7FOQ.js.map} +0 -0
  689. /package/dist/cli-bundle/chunks/{history-redact-JIHZLHDP.js.map → focus-POIW5LTJ.js.map} +0 -0
  690. /package/dist/cli-bundle/chunks/{history-repair-ITDUMK4N.js.map → history-compact-CKRPDTJN.js.map} +0 -0
  691. /package/dist/cli-bundle/chunks/{history-repair-NAFCHLH7.js.map → history-compact-FWG2C7FZ.js.map} +0 -0
  692. /package/dist/cli-bundle/chunks/{learnings-SONGPSHI.js.map → history-redact-BB3TGDAE.js.map} +0 -0
  693. /package/dist/cli-bundle/chunks/{learnings-FGO3NSFW.js.map → history-redact-D225BHOZ.js.map} +0 -0
  694. /package/dist/cli-bundle/chunks/{notes-BSD53H2W.js.map → history-repair-6GEAM7HE.js.map} +0 -0
  695. /package/dist/cli-bundle/chunks/{notes-NQ6RXVW6.js.map → history-repair-RQXKQHL4.js.map} +0 -0
  696. /package/dist/cli-bundle/chunks/{plan-2NNEO46V.js.map → learnings-JLNLCOL5.js.map} +0 -0
  697. /package/dist/cli-bundle/chunks/{plan-AWLYGBNV.js.map → learnings-RSNLSWDC.js.map} +0 -0
  698. /package/dist/cli-bundle/chunks/{profile-U725ATWZ.js.map → notes-2WDH6DXU.js.map} +0 -0
  699. /package/dist/cli-bundle/chunks/{profile-AAQUU6T3.js.map → notes-GB47XXQQ.js.map} +0 -0
  700. /package/dist/cli-bundle/chunks/{restore-66GLMHIX.js.map → plan-DOVI2VMW.js.map} +0 -0
  701. /package/dist/cli-bundle/chunks/{restore-B3BAB6X2.js.map → plan-VDCJ2PCN.js.map} +0 -0
  702. /package/dist/cli-bundle/chunks/{schema-U7IM2DXV.js.map → profile-FAU7NZML.js.map} +0 -0
  703. /package/dist/cli-bundle/chunks/{schema-LZNUYHDB.js.map → profile-IVXQEL3D.js.map} +0 -0
  704. /package/dist/cli-bundle/chunks/{update-Q3UCILNR.js.map → restore-25DLT2Q2.js.map} +0 -0
  705. /package/dist/cli-bundle/chunks/{update-2XGHIVQ2.js.map → restore-YPMVUUEX.js.map} +0 -0
  706. /package/dist/cli-bundle/chunks/{update-many-75K57FS3.js.map → schema-FNU3WE4O.js.map} +0 -0
  707. /package/dist/cli-bundle/chunks/{update-many-U42YA445.js.map → schema-NBCM3RAD.js.map} +0 -0
  708. /package/dist/{cli/commands → sdk}/extension/managed-state.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"tool-schema.js","sources":["sdk/cli-contracts/tool-schema.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/cli-contracts/tool-schema\n *\n * MCP tool-parameter schema contracts: the per-action required/optional key sets\n * and the lazily-built strict (action-scoped) and provider-compatible (flat)\n * JSON Schemas served to MCP clients, the `pm contracts` command, and SDK\n * consumers from a single source of truth.\n */\nimport { normalizeUniqueStringList } from \"./string-lists.js\";\nimport { PM_TOOL_ACTIONS, type PmToolAction } from \"./enum-contracts.js\";\nimport {\n TOOL_CREATE_OPTION_CONTRACTS,\n TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS,\n TOOL_UPDATE_OPTION_CONTRACTS,\n TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS,\n TOOL_CONTEXT_OPTION_CONTRACTS,\n TOOL_ACTIVITY_OPTION_CONTRACTS,\n TOOL_LIST_FILTER_OPTION_CONTRACTS,\n TOOL_AGGREGATE_OPTION_CONTRACTS,\n TOOL_SEARCH_FILTER_OPTION_CONTRACTS,\n TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS,\n} from \"./tool-option-contracts.js\";\nimport {\n PM_TOOL_PARAMETER_PROPERTIES,\n PM_TOOL_PARAMETER_METADATA,\n PM_TOOL_ACTION_SCOPED_PARAMETER_METADATA,\n PLAN_ACTION_PARAMETER_PROPERTIES,\n PLAN_ACTION_PARAMETER_METADATA,\n} from \"./tool-parameter-tables.js\";\nimport {\n toUniqueFlagContracts,\n withFlagAliasMetadata,\n} from \"./flag-contracts.js\";\n\nconst PM_TOOL_GLOBAL_PARAMETER_KEYS = [\n \"json\",\n \"quiet\",\n \"profile\",\n \"noExtensions\",\n \"noPager\",\n \"path\",\n \"pmExecutable\",\n \"timeoutMs\",\n] as const;\n\nconst PM_TOOL_ACTION_MUTATION_PARAMETER_KEYS: Partial<\n Record<PmToolAction, readonly string[]>\n> = {\n create: [\"fullChangedFields\", \"idOnly\"],\n copy: [\"fullChangedFields\", \"idOnly\"],\n update: [\"fullChangedFields\", \"idOnly\"],\n close: [\"fullChangedFields\", \"idOnly\"],\n restore: [\"fullChangedFields\", \"idOnly\"],\n append: [\"fullChangedFields\"],\n \"update-many\": [\"fullChangedFields\"],\n \"close-many\": [\"fullChangedFields\"],\n};\n\n/** Declarative description of one pm action's MCP parameter constraints — required/optional keys plus JSON-Schema-style cross-field rules (anyOf, oneOf, conditional, dependent, and mutually-exclusive groups) — from which the strict action-scoped tool schema is built. */\nexport interface PmActionSchemaContract {\n /** Value that configures or reports required for this contract. */\n required?: string[];\n /** Value that configures or reports optional for this contract. */\n optional?: string[];\n /** Value that configures or reports any of required for this contract. */\n anyOfRequired?: Array<string[]>;\n /** Value that configures or reports one of required for this contract. */\n oneOfRequired?: Array<string[]>;\n /** Value that configures or reports dependent any of required for this contract. */\n dependentAnyOfRequired?: Array<{\n property: string;\n anyOfRequired: Array<string[]>;\n }>;\n /** Value that configures or reports conditional required for this contract. */\n conditionalRequired?: Array<{\n property: string;\n value: string;\n required: string[];\n }>;\n /** Groups of parameters that must not be supplied together. Each group emits a JSON Schema `not: { required: [...] }` constraint so MCP clients validating against the contract reject the same combinations the runtime rejects (e.g. focus `id` + `clear`), keeping schema and runtime in lock-step. */\n mutuallyExclusive?: Array<string[]>;\n /** Value that configures or reports mutually exclusive when for this contract. */\n mutuallyExclusiveWhen?: Array<\n Array<{\n property: string;\n schema: Record<string, unknown>;\n }>\n >;\n}\n\nfunction toSchemaKeyList(values: string[]): string[] {\n return normalizeUniqueStringList(values);\n}\n\nconst CREATE_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_CREATE_OPTION_CONTRACTS.map((entry) => entry.param),\n ...TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS.map((entry) => entry.param),\n \"assignee\",\n]);\n\nconst UPDATE_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_UPDATE_OPTION_CONTRACTS.map((entry) => entry.param),\n ...TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS.map((entry) => entry.param),\n \"force\",\n]);\n\nconst UPDATE_MANY_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS.map((entry) => entry.param),\n ...UPDATE_CONTRACT_PARAMETER_KEYS,\n \"dryRun\",\n \"rollback\",\n \"noCheckpoint\",\n]);\n\n\nconst CLOSE_MANY_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS.map((entry) => entry.param),\n \"reason\",\n \"resolution\",\n \"expectedResult\",\n \"actualResult\",\n \"validateClose\",\n \"dryRun\",\n \"rollback\",\n \"noCheckpoint\",\n \"author\",\n \"message\",\n \"force\",\n]);\n\nconst CONTEXT_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_CONTEXT_OPTION_CONTRACTS.map((entry) => entry.param),\n \"past\",\n \"section\",\n]);\n\nconst ACTIVITY_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_ACTIVITY_OPTION_CONTRACTS.map((entry) => entry.param),\n \"stream\",\n]);\n\nconst LIST_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_LIST_FILTER_OPTION_CONTRACTS.map((entry) => entry.param),\n \"includeBody\",\n \"noTruncate\",\n \"compact\",\n \"brief\",\n \"full\",\n]);\nconst LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS = [\n [\n { property: \"today\", schema: { const: true } },\n { property: \"recent\", schema: { const: true } },\n ],\n [\n { property: \"today\", schema: { const: true } },\n { property: \"updatedAfter\", schema: { type: \"string\", pattern: \"\\\\S\" } },\n ],\n [\n { property: \"recent\", schema: { const: true } },\n { property: \"updatedAfter\", schema: { type: \"string\", pattern: \"\\\\S\" } },\n ],\n];\nconst CONTRACTS_PROJECTION_MUTUALLY_EXCLUSIVE_GROUPS = [\n [\n { property: \"summary\", schema: { const: true } },\n { property: \"schemaOnly\", schema: { const: true } },\n ],\n [\n { property: \"summary\", schema: { const: true } },\n { property: \"flagsOnly\", schema: { const: true } },\n ],\n [\n { property: \"summary\", schema: { const: true } },\n { property: \"availabilityOnly\", schema: { const: true } },\n ],\n [\n { property: \"schemaOnly\", schema: { const: true } },\n { property: \"flagsOnly\", schema: { const: true } },\n ],\n [\n { property: \"schemaOnly\", schema: { const: true } },\n { property: \"availabilityOnly\", schema: { const: true } },\n ],\n [\n { property: \"flagsOnly\", schema: { const: true } },\n { property: \"availabilityOnly\", schema: { const: true } },\n ],\n];\nconst AGGREGATE_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_AGGREGATE_OPTION_CONTRACTS.map((entry) => entry.param),\n \"count\",\n \"completion\",\n \"includeUnparented\",\n]);\nconst SEARCH_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n \"query\",\n \"keywords\",\n \"mode\",\n \"semantic\",\n \"hybrid\",\n \"includeLinked\",\n \"titleExact\",\n \"phraseExact\",\n \"highlight\",\n \"compact\",\n \"full\",\n ...TOOL_SEARCH_FILTER_OPTION_CONTRACTS.map((entry) => entry.param),\n]);\n\nconst NEXT_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n \"type\",\n \"tag\",\n \"priority\",\n \"assignee\",\n \"assigneeFilter\",\n \"sprint\",\n \"release\",\n \"parent\",\n \"limit\",\n \"blockedLimit\",\n \"readyOnly\",\n \"format\",\n \"includeDecisions\",\n]);\n\nconst AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS = [\"author\", \"message\", \"force\"];\nconst LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS = [\n \"author\",\n \"assignee\",\n \"message\",\n \"force\",\n];\n\nconst MANAGED_EXTENSION_PACKAGE_OPTION_KEYS = [\n \"target\",\n \"scope\",\n \"github\",\n \"ref\",\n \"init\",\n \"install\",\n \"uninstall\",\n \"explore\",\n \"manage\",\n \"describe\",\n \"markdown\",\n \"output\",\n \"reload\",\n \"doctor\",\n \"catalog\",\n \"adopt\",\n \"adoptAll\",\n \"activate\",\n \"deactivate\",\n \"runtimeProbe\",\n \"fixManagedState\",\n \"isolated\",\n \"ignoreGlobal\",\n \"detail\",\n \"trace\",\n \"watch\",\n \"strictExit\",\n \"failOnWarn\",\n];\n\nfunction managedLifecycleSchemaContracts(\n prefix: \"extension\" | \"package\",\n): Record<string, PmActionSchemaContract> {\n return {\n [`${prefix}-init`]: { required: [\"target\"], optional: [\"scope\"] },\n [`${prefix}-install`]: {\n optional: [\"target\", \"github\", \"scope\", \"ref\"],\n anyOfRequired: [[\"target\"], [\"github\"]],\n },\n [`${prefix}-uninstall`]: { required: [\"target\"], optional: [\"scope\"] },\n [`${prefix}-explore`]: { optional: [\"scope\"] },\n [`${prefix}-manage`]: {\n optional: [\"scope\", \"runtimeProbe\", \"fixManagedState\"],\n },\n [`${prefix}-describe`]: {\n optional: [\"target\", \"scope\", \"markdown\", \"output\"],\n },\n [`${prefix}-reload`]: { optional: [\"scope\", \"watch\"] },\n [`${prefix}-doctor`]: {\n optional: [\n \"scope\",\n \"detail\",\n \"trace\",\n \"fixManagedState\",\n \"isolated\",\n \"ignoreGlobal\",\n \"strictExit\",\n \"failOnWarn\",\n ],\n },\n [`${prefix}-catalog`]: { optional: [\"scope\", \"fields\"] },\n [`${prefix}-adopt`]: {\n required: [\"target\"],\n optional: [\"scope\", \"github\", \"ref\"],\n },\n [`${prefix}-adopt-all`]: { optional: [\"scope\"] },\n [`${prefix}-activate`]: { required: [\"target\"], optional: [\"scope\"] },\n [`${prefix}-deactivate`]: { required: [\"target\"], optional: [\"scope\"] },\n [prefix]: {\n optional: MANAGED_EXTENSION_PACKAGE_OPTION_KEYS,\n },\n };\n}\n\nconst PM_TOOL_ACTION_SCHEMA_CONTRACTS: Record<string, PmActionSchemaContract> =\n {\n init: {\n optional: [\n \"prefix\",\n \"preset\",\n \"typePreset\",\n \"defaults\",\n \"author\",\n \"agentGuidance\",\n \"withPackages\",\n \"force\",\n \"verbose\",\n ],\n },\n config: {\n required: [\"scope\", \"configAction\"],\n optional: [\n \"key\",\n \"value\",\n \"criterion\",\n \"clearCriteria\",\n \"format\",\n \"policy\",\n ],\n },\n ...managedLifecycleSchemaContracts(\"extension\"),\n ...managedLifecycleSchemaContracts(\"package\"),\n install: {\n optional: [\"target\", \"github\", \"scope\", \"ref\"],\n anyOfRequired: [[\"target\"], [\"github\"]],\n },\n upgrade: {\n optional: [\n \"target\",\n \"scope\",\n \"dryRun\",\n \"cliOnly\",\n \"packagesOnly\",\n \"repair\",\n \"tag\",\n \"packageName\",\n ],\n },\n create: {\n required: [\n \"title\",\n \"description\",\n \"type\",\n \"status\",\n \"priority\",\n \"message\",\n ],\n optional: CREATE_CONTRACT_PARAMETER_KEYS,\n },\n copy: { required: [\"id\"], optional: [\"title\", \"author\", \"message\"] },\n focus: { optional: [\"id\", \"clear\"], mutuallyExclusive: [[\"id\", \"clear\"]] },\n list: {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-all\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-draft\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-open\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-in-progress\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-blocked\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-closed\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-canceled\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n aggregate: { optional: AGGREGATE_CONTRACT_PARAMETER_KEYS },\n guide: { optional: [\"list\", \"format\", \"depth\"] },\n context: { optional: CONTEXT_CONTRACT_PARAMETER_KEYS },\n ctx: { optional: CONTEXT_CONTRACT_PARAMETER_KEYS },\n get: {\n required: [\"id\"],\n optional: [\"depth\", \"full\", \"fields\", \"tree\", \"treeDepth\", \"format\"],\n },\n search: {\n optional: SEARCH_CONTRACT_PARAMETER_KEYS,\n anyOfRequired: [[\"query\"], [\"keywords\"]],\n },\n next: { optional: NEXT_CONTRACT_PARAMETER_KEYS },\n reindex: { optional: [\"mode\", \"progress\"] },\n history: {\n required: [\"id\"],\n optional: [\"limit\", \"compact\", \"full\", \"diff\", \"verify\", \"format\"],\n },\n \"history-redact\": {\n required: [\"id\"],\n optional: [\n \"literal\",\n \"regex\",\n \"replacement\",\n \"dryRun\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n anyOfRequired: [[\"literal\"], [\"regex\"]],\n },\n \"history-repair\": {\n // Exactly one of `id` (single stream) or `all` (bulk drift repair) is required.\n optional: [\"id\", \"all\", \"dryRun\", ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS],\n oneOfRequired: [[\"id\"], [\"all\"]],\n },\n \"history-compact\": {\n // Single-id mode (`id` + optional `before`) or bulk mode (any of `ids` /\n // `allOver` / `closed` / `allStreams`, with optional `minEntries`). Scan\n // selectors (`allOver` + `closed`/`allStreams`) legitimately combine, so the\n // mode/exclusivity contract is enforced at runtime by assertHistoryCompactTarget\n // rather than a one-of schema rule.\n optional: [\n \"id\",\n \"before\",\n \"ids\",\n \"allOver\",\n \"closed\",\n \"allStreams\",\n \"minEntries\",\n \"dryRun\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n schema: {\n required: [\"subcommand\"],\n // No --message: schema mutations write config files, not item history.\n optional: [\n \"name\",\n \"description\",\n \"defaultStatus\",\n \"folder\",\n \"alias\",\n \"role\",\n \"order\",\n \"fieldType\",\n \"commands\",\n \"cliFlag\",\n \"required\",\n \"requiredOnCreate\",\n \"allowUnset\",\n \"requiredTypes\",\n \"typePreset\",\n \"infer\",\n \"minCount\",\n \"apply\",\n \"author\",\n \"force\",\n ],\n conditionalRequired: [\n { property: \"subcommand\", value: \"show\", required: [\"name\"] },\n { property: \"subcommand\", value: \"show-status\", required: [\"name\"] },\n { property: \"subcommand\", value: \"add-type\", required: [\"name\"] },\n { property: \"subcommand\", value: \"remove-type\", required: [\"name\"] },\n // show-status/add-status/remove-status pass the status id as `name`.\n { property: \"subcommand\", value: \"add-status\", required: [\"name\"] },\n { property: \"subcommand\", value: \"remove-status\", required: [\"name\"] },\n // field subcommands pass the field key as `name`.\n { property: \"subcommand\", value: \"add-field\", required: [\"name\"] },\n { property: \"subcommand\", value: \"remove-field\", required: [\"name\"] },\n { property: \"subcommand\", value: \"show-field\", required: [\"name\"] },\n // apply-preset passes the preset name as `typePreset`.\n {\n property: \"subcommand\",\n value: \"apply-preset\",\n required: [\"typePreset\"],\n },\n ],\n },\n profile: {\n required: [\"subcommand\"],\n // No --message: profile staging writes config/schema files, not item history.\n optional: [\"name\", \"dryRun\", \"author\", \"force\"],\n conditionalRequired: [\n { property: \"subcommand\", value: \"show\", required: [\"name\"] },\n { property: \"subcommand\", value: \"apply\", required: [\"name\"] },\n { property: \"subcommand\", value: \"lint\", required: [\"name\"] },\n ],\n },\n plan: {\n required: [\"subcommand\"],\n optional: [\n \"id\",\n \"stepRef\",\n \"reorderTo\",\n \"title\",\n \"description\",\n \"scope\",\n \"parent\",\n \"related\",\n \"blocks\",\n \"blockedBy\",\n \"harness\",\n \"mode\",\n \"resumeContext\",\n \"tags\",\n \"priority\",\n \"body\",\n \"claim\",\n \"fromSearch\",\n \"stepTitle\",\n \"step\",\n \"stepBody\",\n \"stepOwner\",\n \"stepStatus\",\n \"stepEvidence\",\n \"stepBlockedReason\",\n \"stepReplacement\",\n \"dependsOn\",\n \"link\",\n \"linkKind\",\n \"linkNote\",\n \"promoteToItemDep\",\n \"allowMultipleActive\",\n \"file\",\n \"test\",\n \"doc\",\n \"decisionText\",\n \"decision\",\n \"decisionRationale\",\n \"decisionEvidence\",\n \"discoveryText\",\n \"discovery\",\n \"validationText\",\n \"validation\",\n \"validationCommand\",\n \"validationExpected\",\n \"depth\",\n \"fields\",\n \"steps\",\n \"materializeType\",\n \"materializeParent\",\n \"materializeTags\",\n \"field\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n activity: { optional: ACTIVITY_CONTRACT_PARAMETER_KEYS },\n restore: {\n required: [\"id\", \"target\"],\n optional: AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n update: { required: [\"id\"], optional: UPDATE_CONTRACT_PARAMETER_KEYS },\n \"update-many\": { optional: UPDATE_MANY_CONTRACT_PARAMETER_KEYS },\n close: {\n required: [\"id\"],\n optional: [\n \"text\",\n \"reason\",\n \"closeReason\",\n \"duplicateOf\",\n \"validateClose\",\n \"resolution\",\n \"expectedResult\",\n \"actualResult\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n \"close-many\": { optional: CLOSE_MANY_CONTRACT_PARAMETER_KEYS },\n delete: {\n required: [\"id\"],\n optional: [\"dryRun\", ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS],\n },\n append: {\n required: [\"id\", \"body\"],\n optional: AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n comments: {\n required: [\"id\"],\n optional: [\n \"text\",\n \"add\",\n \"stdin\",\n \"edit\",\n \"delete\",\n \"limit\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n notes: {\n required: [\"id\"],\n optional: [\n \"text\",\n \"add\",\n \"stdin\",\n \"edit\",\n \"delete\",\n \"limit\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n learnings: {\n required: [\"id\"],\n optional: [\n \"text\",\n \"add\",\n \"stdin\",\n \"edit\",\n \"delete\",\n \"limit\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n files: {\n required: [\"id\"],\n optional: [\n \"add\",\n \"addGlob\",\n \"remove\",\n \"migrate\",\n \"list\",\n // GH-170 (pm-pfnx): `addNote` is the MCP spelling of the CLI --note flag\n // (the shared `note` parameter is the array-typed create/update note\n // seed, so files/docs use a distinct single-string key).\n \"addNote\",\n \"discover\",\n \"apply\",\n \"discoveryNote\",\n \"appendStable\",\n \"validatePaths\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n dependentAnyOfRequired: [\n { property: \"addNote\", anyOfRequired: [[\"add\"], [\"addGlob\"]] },\n ],\n },\n docs: {\n required: [\"id\"],\n optional: [\n \"add\",\n \"addGlob\",\n \"remove\",\n \"migrate\",\n \"addNote\",\n \"list\",\n \"validatePaths\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n dependentAnyOfRequired: [\n { property: \"addNote\", anyOfRequired: [[\"add\"], [\"addGlob\"]] },\n ],\n },\n deps: {\n required: [\"id\"],\n optional: [\"format\", \"maxDepth\", \"collapse\", \"summary\"],\n },\n test: {\n required: [\"id\"],\n optional: [\n \"add\",\n \"addJson\",\n \"remove\",\n \"run\",\n \"match\",\n \"onlyIndex\",\n \"onlyLast\",\n \"background\",\n \"timeout\",\n \"progress\",\n \"envSet\",\n \"envClear\",\n \"sharedHostSafe\",\n \"pmContext\",\n \"overrideLinkedPmContext\",\n \"failOnContextMismatch\",\n \"failOnSkipped\",\n \"failOnEmptyTestRun\",\n \"requireAssertionsForPm\",\n \"checkContext\",\n \"autoPmContext\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n \"test-all\": {\n optional: [\n \"status\",\n \"limit\",\n \"offset\",\n \"background\",\n \"timeout\",\n \"progress\",\n \"envSet\",\n \"envClear\",\n \"sharedHostSafe\",\n \"pmContext\",\n \"overrideLinkedPmContext\",\n \"failOnContextMismatch\",\n \"failOnSkipped\",\n \"failOnEmptyTestRun\",\n \"requireAssertionsForPm\",\n \"checkContext\",\n \"autoPmContext\",\n ],\n },\n telemetry: {\n optional: [\"subcommand\", \"limit\"],\n },\n \"test-runs-list\": {\n optional: [\"status\", \"limit\"],\n },\n \"test-runs-status\": {\n required: [\"runId\"],\n },\n \"test-runs-logs\": {\n required: [\"runId\"],\n optional: [\"stream\", \"tail\"],\n },\n \"test-runs-stop\": {\n required: [\"runId\"],\n optional: [\"force\"],\n },\n \"test-runs-resume\": {\n required: [\"runId\"],\n optional: [\"author\"],\n },\n stats: {\n optional: [\n \"storage\",\n \"metadataCoverage\",\n \"fieldUtilization\",\n \"byAssignee\",\n \"byTag\",\n \"byPriority\",\n \"tagPrefix\",\n ],\n },\n health: {\n optional: [\n \"strictDirectories\",\n \"strictExit\",\n \"failOnWarn\",\n \"checkOnly\",\n \"checkTelemetry\",\n \"noRefresh\",\n \"refreshVectors\",\n \"verboseStaleItems\",\n \"brief\",\n \"summary\",\n \"skipVectors\",\n \"skipIntegrity\",\n \"skipDrift\",\n \"full\",\n ],\n },\n validate: {\n optional: [\n \"checkMetadata\",\n \"metadataProfile\",\n \"checkResolution\",\n \"checkLifecycle\",\n \"checkStaleBlockers\",\n \"dependencyCycleSeverity\",\n \"parentCycleSeverity\",\n \"checkFiles\",\n \"scanMode\",\n \"includePmInternals\",\n \"verboseFileLists\",\n \"verboseDiagnostics\",\n \"allAffectedIds\",\n \"strictExit\",\n \"failOnWarn\",\n \"fixHints\",\n \"autoFix\",\n \"dryRun\",\n \"fixScope\",\n \"pruneMissing\",\n \"checkHistoryDrift\",\n \"checkCommandReferences\",\n ],\n },\n gc: { optional: [\"dryRun\", \"gcScope\"] },\n contracts: {\n optional: [\n \"contractAction\",\n \"command\",\n \"summary\",\n \"schemaOnly\",\n \"flagsOnly\",\n \"availabilityOnly\",\n \"runtimeOnly\",\n \"activeOnly\",\n \"full\",\n ],\n mutuallyExclusiveWhen: CONTRACTS_PROJECTION_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n completion: { required: [\"shell\"], optional: [\"eagerTags\"] },\n claim: {\n optional: [\n \"id\",\n \"next\",\n \"ifAvailable\",\n \"maxAttempts\",\n \"includeDecisions\",\n ...NEXT_CONTRACT_PARAMETER_KEYS,\n ...LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n oneOfRequired: [[\"id\"], [\"next\"]],\n },\n release: {\n required: [\"id\"],\n optional: LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n \"start-task\": {\n required: [\"id\"],\n optional: LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n \"pause-task\": {\n required: [\"id\"],\n optional: LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n \"close-task\": {\n required: [\"id\"],\n optional: [\n \"text\",\n \"validateClose\",\n ...LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n };\n\n/** Public contract for pm tool action parameter contracts, shared by SDK and presentation-layer consumers. */\nexport const PM_TOOL_ACTION_PARAMETER_CONTRACTS: Readonly<\n Record<PmToolAction, PmActionSchemaContract>\n> = Object.freeze(\n Object.fromEntries(\n PM_TOOL_ACTIONS.map((action) => [\n action,\n PM_TOOL_ACTION_SCHEMA_CONTRACTS[action],\n ]),\n ),\n) as Readonly<Record<PmToolAction, PmActionSchemaContract>>;\n\nfunction fallbackToolParameterDescription(key: string): string {\n return key\n .replace(/([a-z0-9])([A-Z])/g, \"$1 $2\")\n .replace(/[_-]/g, \" \")\n .trim()\n .replace(/^./, (value) => value.toUpperCase())\n .concat(\".\");\n}\n\nfunction decorateToolParameterDefinition(\n key: string,\n definition: unknown,\n): Record<string, unknown> {\n const baseDefinition =\n typeof definition === \"object\" && definition !== null\n ? { ...(definition as Record<string, unknown>) }\n : {};\n const metadata = PM_TOOL_PARAMETER_METADATA[key];\n return {\n ...baseDefinition,\n description: metadata?.description ?? fallbackToolParameterDescription(key),\n ...(metadata?.examples ? { examples: metadata.examples } : {}),\n };\n}\n\nfunction actionScopedToolParameterMetadata(\n action: PmToolAction,\n key: string,\n): { description: string; examples?: unknown[] } | undefined {\n if (\n action === \"plan\" &&\n Object.prototype.hasOwnProperty.call(PLAN_ACTION_PARAMETER_METADATA, key)\n ) {\n return PLAN_ACTION_PARAMETER_METADATA[key];\n }\n const actionOverrides = PM_TOOL_ACTION_SCOPED_PARAMETER_METADATA[action];\n if (\n actionOverrides &&\n Object.prototype.hasOwnProperty.call(actionOverrides, key)\n ) {\n return actionOverrides[key];\n }\n return PM_TOOL_PARAMETER_METADATA[key];\n}\n\nfunction decorateActionScopedToolParameterDefinition(\n action: PmToolAction,\n key: string,\n definition: unknown,\n): Record<string, unknown> {\n const baseDefinition =\n typeof definition === \"object\" && definition !== null\n ? { ...(definition as Record<string, unknown>) }\n : {};\n const metadata = actionScopedToolParameterMetadata(action, key);\n return {\n ...baseDefinition,\n description: metadata?.description ?? fallbackToolParameterDescription(key),\n ...(metadata?.examples ? { examples: metadata.examples } : {}),\n };\n}\n\nfunction actionScopedToolParameterDefinition(\n action: PmToolAction,\n key: string,\n): unknown {\n if (\n action === \"plan\" &&\n Object.prototype.hasOwnProperty.call(PLAN_ACTION_PARAMETER_PROPERTIES, key)\n ) {\n return PLAN_ACTION_PARAMETER_PROPERTIES[key];\n }\n if (\n (action === \"get\" || action === \"history\" || action === \"search\") &&\n key === \"format\"\n ) {\n return { type: \"string\", enum: [\"json\", \"toon\"] };\n }\n return PM_TOOL_PARAMETER_PROPERTIES[key];\n}\n\n/** Build the `properties` map for one action-scoped schema: the fixed `action` literal followed by every allowed parameter that resolves to a concrete definition, each decorated with its action-scoped description and examples. */\nfunction buildActionScopedSchemaProperties(\n action: PmToolAction,\n allowedKeys: string[],\n): Record<string, unknown> {\n const properties: Record<string, unknown> = {\n action: {\n const: action,\n description:\n PM_TOOL_PARAMETER_METADATA.action?.description ??\n \"Tool action to execute.\",\n },\n };\n for (const key of allowedKeys) {\n if (key === \"action\") {\n continue;\n }\n const definition = actionScopedToolParameterDefinition(action, key);\n if (definition) {\n properties[key] = decorateActionScopedToolParameterDefinition(\n action,\n key,\n definition,\n );\n }\n }\n return properties;\n}\n\n/** Build the `oneOf` branches for an action whose contract requires exactly one of several field groups. Each branch requires its own group and — when sibling groups exist — forbids any field drawn from them, so the schema rejects the same overlapping combinations the runtime rejects; `history-repair`'s `all` branch additionally pins `all` to the literal `true`. */\nfunction buildOneOfSchemaEntries(\n action: PmToolAction,\n oneOfRequiredGroups: Array<string[]>,\n): Array<Record<string, unknown>> {\n const allOneOfFields = oneOfRequiredGroups.flat();\n return oneOfRequiredGroups.map((requiredFields) => {\n const otherFields = allOneOfFields.filter(\n (field) => !requiredFields.includes(field),\n );\n return {\n required: [...requiredFields],\n ...(otherFields.length > 0\n ? {\n not: { anyOf: otherFields.map((field) => ({ required: [field] })) },\n }\n : {}),\n ...(action === \"history-repair\" && requiredFields.includes(\"all\")\n ? { properties: { all: { const: true } } }\n : action === \"claim\" && requiredFields.includes(\"next\")\n ? { properties: { next: { const: true } } }\n : {}),\n };\n });\n}\n\n/** Build the consolidated `allOf` constraint list for an action's contract, appending branches in a fixed order — conditional-required (`if`/`then`), then dependent any-of-required, then mutually-exclusive (`not`/`required`) — so a given contract always serializes to a byte-identical schema. Returns an empty array when the contract declares none of these constraints, letting the caller omit the `allOf` key entirely. */\nfunction buildActionScopedAllOf(\n contract: PmActionSchemaContract,\n): Array<Record<string, unknown>> {\n const allOf: Array<Record<string, unknown>> = [];\n if (contract.conditionalRequired && contract.conditionalRequired.length > 0) {\n for (const entry of contract.conditionalRequired) {\n allOf.push({\n if: {\n properties: {\n [entry.property]: { const: entry.value },\n },\n required: [entry.property],\n },\n // eslint-disable-next-line unicorn/no-thenable -- JSON Schema conditional keyword, not a Promise-like object.\n then: {\n required: entry.required,\n },\n });\n }\n }\n if (\n contract.dependentAnyOfRequired &&\n contract.dependentAnyOfRequired.length > 0\n ) {\n for (const entry of contract.dependentAnyOfRequired) {\n allOf.push({\n if: { required: [entry.property] },\n // eslint-disable-next-line unicorn/no-thenable -- JSON Schema conditional keyword, not a Promise-like object.\n then: {\n anyOf: entry.anyOfRequired.map((requiredFields) => ({\n required: [...requiredFields],\n })),\n },\n });\n }\n }\n if (contract.mutuallyExclusive && contract.mutuallyExclusive.length > 0) {\n for (const group of contract.mutuallyExclusive) {\n allOf.push({ not: { required: toSchemaKeyList(group) } });\n }\n }\n if (\n contract.mutuallyExclusiveWhen &&\n contract.mutuallyExclusiveWhen.length > 0\n ) {\n for (const group of contract.mutuallyExclusiveWhen) {\n allOf.push({\n not: {\n allOf: group.map((condition) => ({\n properties: { [condition.property]: condition.schema },\n required: [condition.property],\n })),\n },\n });\n }\n }\n return allOf;\n}\n\nfunction buildActionScopedToolSchema(\n action: PmToolAction,\n): Record<string, unknown> {\n const contract = PM_TOOL_ACTION_SCHEMA_CONTRACTS[action];\n const required = toSchemaKeyList(contract.required ?? []);\n const optional = toSchemaKeyList(contract.optional ?? []);\n const mutationParameterKeys =\n PM_TOOL_ACTION_MUTATION_PARAMETER_KEYS[action] ?? [];\n const allowedKeys = toSchemaKeyList([\n \"action\",\n ...PM_TOOL_GLOBAL_PARAMETER_KEYS,\n ...mutationParameterKeys,\n ...required,\n ...optional,\n ]);\n const schema: Record<string, unknown> = {\n type: \"object\",\n additionalProperties: false,\n required: [\"action\", ...required],\n title: `pm action \"${action}\" parameters`,\n properties: buildActionScopedSchemaProperties(action, allowedKeys),\n };\n if (contract.anyOfRequired && contract.anyOfRequired.length > 0) {\n schema.anyOf = contract.anyOfRequired.map((requiredFields) => ({\n required: [...requiredFields],\n }));\n }\n if (contract.oneOfRequired && contract.oneOfRequired.length > 0) {\n schema.oneOf = buildOneOfSchemaEntries(action, contract.oneOfRequired);\n }\n const allOf = buildActionScopedAllOf(contract);\n if (allOf.length > 0) {\n schema.allOf = allOf;\n }\n return schema;\n}\n\n// Building the full MCP tool-parameter schemas (one variant per action) is only\n// needed by the MCP server, the `pm contracts` command, and SDK consumers — never\n// on the hot CLI path that imports this module for flag contracts. Wrap them in a\n// memoized lazy Proxy so the build is deferred until first property access and the\n// object API (`.type`, `.oneOf`, spread, JSON.stringify) stays identical.\nfunction createLazyContractSchema(\n build: () => Record<string, unknown>,\n): Record<string, unknown> {\n let value: Record<string, unknown> | undefined;\n const resolve = (): Record<string, unknown> => (value ??= build());\n return new Proxy({} as Record<string, unknown>, {\n get: (_target, prop) => resolve()[prop as string],\n has: (_target, prop) => prop in resolve(),\n ownKeys: () => Reflect.ownKeys(resolve()),\n getOwnPropertyDescriptor: (_target, prop) => {\n const descriptor = Reflect.getOwnPropertyDescriptor(resolve(), prop);\n if (descriptor) {\n descriptor.configurable = true;\n }\n return descriptor;\n },\n });\n}\n\n/** Canonical version of the action-scoped strict MCP tool-parameters schema (`PM_TOOL_PARAMETERS_SCHEMA`). Exported as the single source of truth so the MCP server, the `pm contracts` command, SDK consumers, and the contract tests all bind to one constant instead of re-typing the `\"4.0.2\"` literal (pm-r9sz). Bump the patch/minor for additive, backward-compatible schema changes; bump the MAJOR for breaking changes — the major also drives the `$id` `tool-parameters-v{major}` slug, so the two never drift. */\nexport const PM_TOOL_PARAMETERS_SCHEMA_VERSION = \"4.0.7\" as const;\n\n/**\n * Major component of {@link PM_TOOL_PARAMETERS_SCHEMA_VERSION}, used to build the\n * schema `$id` slug so a breaking version bump renames the document in lockstep.\n */\nexport const PM_TOOL_PARAMETERS_SCHEMA_MAJOR =\n PM_TOOL_PARAMETERS_SCHEMA_VERSION.split(\".\")[0];\n\n/** Version of the provider-compatible flat tool-parameters schema (`PM_PROVIDER_TOOL_PARAMETERS_SCHEMA`). Tracked separately from the strict schema because the flat projection evolves independently. */\nexport const PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION = \"1.0.0\" as const;\n\n/** Public contract for pm tool parameters schema, shared by SDK and presentation-layer consumers. */\nexport const PM_TOOL_PARAMETERS_SCHEMA: Record<string, unknown> =\n createLazyContractSchema(() => ({\n $schema: \"https://json-schema.org/draft/2020-12/schema\",\n $id: `https://schema.unbrained.dev/pm-cli/tool-parameters-v${PM_TOOL_PARAMETERS_SCHEMA_MAJOR}.schema.json`,\n title: \"pm-cli tool parameters (action-scoped strict schema)\",\n \"x-schema-version\": PM_TOOL_PARAMETERS_SCHEMA_VERSION,\n type: \"object\",\n oneOf: PM_TOOL_ACTIONS.map((action) => buildActionScopedToolSchema(action)),\n }));\n\nfunction toProviderCompatibleParameterDefinition(\n key: string,\n definition: unknown,\n): Record<string, unknown> {\n const decorated = decorateToolParameterDefinition(key, definition);\n if (typeof decorated.type === \"string\") {\n return decorated;\n }\n const anyOf = Array.isArray(decorated.anyOf)\n ? (decorated.anyOf as Array<Record<string, unknown>>)\n : [];\n const firstTypedVariant = anyOf.find(\n (variant) => typeof variant.type === \"string\",\n );\n if (firstTypedVariant) {\n const { anyOf: _anyOf, ...rest } = decorated;\n // Spread the whole typed variant (type plus any enum/minimum/maximum/pattern\n // constraints) so the flat provider schema keeps the variant's validation,\n // then let the decorated top-level fields (description, examples) win.\n return {\n ...firstTypedVariant,\n ...rest,\n };\n }\n const { anyOf: _anyOf, ...rest } = decorated;\n return {\n ...rest,\n type: \"string\",\n };\n}\n\nfunction buildProviderCompatibleToolSchema(): Record<string, unknown> {\n const properties: Record<string, unknown> = {\n action: {\n type: \"string\",\n description:\n PM_TOOL_PARAMETER_METADATA.action?.description ??\n \"Tool action to execute.\",\n },\n options: {\n type: \"object\",\n additionalProperties: true,\n description:\n \"Advanced command options object forwarded to the selected pm action.\",\n },\n };\n for (const key of Object.keys(PM_TOOL_PARAMETER_PROPERTIES).sort()) {\n properties[key] = toProviderCompatibleParameterDefinition(\n key,\n PM_TOOL_PARAMETER_PROPERTIES[key],\n );\n }\n return {\n title: \"pm-cli tool parameters (provider-compatible flat schema)\",\n \"x-schema-version\": PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION,\n type: \"object\",\n additionalProperties: false,\n required: [\"action\"],\n properties,\n };\n}\n\n/** Public contract for pm provider tool parameters schema, shared by SDK and presentation-layer consumers. */\nexport const PM_PROVIDER_TOOL_PARAMETERS_SCHEMA: Record<string, unknown> =\n createLazyContractSchema(buildProviderCompatibleToolSchema);\n\n/** Public contract for test only cli contracts, shared by SDK and presentation-layer consumers. */\nexport const _testOnlyCliContracts = {\n buildActionScopedToolSchema,\n buildProviderCompatibleToolSchema,\n decorateActionScopedToolParameterDefinition,\n decorateToolParameterDefinition,\n toolActionSchemaContracts: PM_TOOL_ACTION_SCHEMA_CONTRACTS,\n toolParameterMetadata: PM_TOOL_PARAMETER_METADATA,\n toProviderCompatibleParameterDefinition,\n toUniqueFlagContracts,\n withFlagAliasMetadata,\n};\n"],"names":[],"mappings":"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","debugId":"0da07ad9-bb86-5626-8c6e-f1d67cd3a988"}
1
+ {"version":3,"file":"tool-schema.js","sources":["sdk/cli-contracts/tool-schema.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/cli-contracts/tool-schema\n *\n * MCP tool-parameter schema contracts: the per-action required/optional key sets\n * and the lazily-built strict (action-scoped) and provider-compatible (flat)\n * JSON Schemas served to MCP clients, the `pm contracts` command, and SDK\n * consumers from a single source of truth.\n */\nimport { normalizeUniqueStringList } from \"./string-lists.js\";\nimport { PM_TOOL_ACTIONS, type PmToolAction } from \"./enum-contracts.js\";\nimport {\n TOOL_CREATE_OPTION_CONTRACTS,\n TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS,\n TOOL_UPDATE_OPTION_CONTRACTS,\n TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS,\n TOOL_CONTEXT_OPTION_CONTRACTS,\n TOOL_ACTIVITY_OPTION_CONTRACTS,\n TOOL_LIST_FILTER_OPTION_CONTRACTS,\n TOOL_AGGREGATE_OPTION_CONTRACTS,\n TOOL_SEARCH_FILTER_OPTION_CONTRACTS,\n TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS,\n} from \"./tool-option-contracts.js\";\nimport {\n PM_TOOL_PARAMETER_PROPERTIES,\n PM_TOOL_PARAMETER_METADATA,\n PM_TOOL_ACTION_SCOPED_PARAMETER_METADATA,\n PLAN_ACTION_PARAMETER_PROPERTIES,\n PLAN_ACTION_PARAMETER_METADATA,\n} from \"./tool-parameter-tables.js\";\nimport {\n toUniqueFlagContracts,\n withFlagAliasMetadata,\n} from \"./flag-contracts.js\";\n\nconst PM_TOOL_GLOBAL_PARAMETER_KEYS = [\n \"json\",\n \"quiet\",\n \"profile\",\n \"noExtensions\",\n \"noPager\",\n \"path\",\n \"pmExecutable\",\n \"timeoutMs\",\n] as const;\n\nconst PM_TOOL_ACTION_MUTATION_PARAMETER_KEYS: Partial<\n Record<PmToolAction, readonly string[]>\n> = {\n create: [\"fullChangedFields\", \"idOnly\"],\n copy: [\"fullChangedFields\", \"idOnly\"],\n update: [\"fullChangedFields\", \"idOnly\"],\n close: [\"fullChangedFields\", \"idOnly\"],\n restore: [\"fullChangedFields\", \"idOnly\"],\n append: [\"fullChangedFields\"],\n \"update-many\": [\"fullChangedFields\"],\n \"close-many\": [\"fullChangedFields\"],\n};\n\n/** Declarative description of one pm action's MCP parameter constraints — required/optional keys plus JSON-Schema-style cross-field rules (anyOf, oneOf, conditional, dependent, and mutually-exclusive groups) — from which the strict action-scoped tool schema is built. */\nexport interface PmActionSchemaContract {\n /** Value that configures or reports required for this contract. */\n required?: string[];\n /** Value that configures or reports optional for this contract. */\n optional?: string[];\n /** Value that configures or reports any of required for this contract. */\n anyOfRequired?: Array<string[]>;\n /** Value that configures or reports one of required for this contract. */\n oneOfRequired?: Array<string[]>;\n /** Value that configures or reports dependent any of required for this contract. */\n dependentAnyOfRequired?: Array<{\n property: string;\n anyOfRequired: Array<string[]>;\n }>;\n /** Value that configures or reports conditional required for this contract. */\n conditionalRequired?: Array<{\n property: string;\n value: string;\n required: string[];\n }>;\n /** Groups of parameters that must not be supplied together. Each group emits a JSON Schema `not: { required: [...] }` constraint so MCP clients validating against the contract reject the same combinations the runtime rejects (e.g. focus `id` + `clear`), keeping schema and runtime in lock-step. */\n mutuallyExclusive?: Array<string[]>;\n /** Value that configures or reports mutually exclusive when for this contract. */\n mutuallyExclusiveWhen?: Array<\n Array<{\n property: string;\n schema: Record<string, unknown>;\n }>\n >;\n}\n\nfunction toSchemaKeyList(values: string[]): string[] {\n return normalizeUniqueStringList(values);\n}\n\nconst CREATE_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_CREATE_OPTION_CONTRACTS.map((entry) => entry.param),\n ...TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS.map((entry) => entry.param),\n \"assignee\",\n]);\n\nconst UPDATE_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_UPDATE_OPTION_CONTRACTS.map((entry) => entry.param),\n ...TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS.map((entry) => entry.param),\n \"force\",\n]);\n\nconst UPDATE_MANY_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS.map((entry) => entry.param),\n ...UPDATE_CONTRACT_PARAMETER_KEYS,\n \"dryRun\",\n \"rollback\",\n \"noCheckpoint\",\n]);\n\n\nconst CLOSE_MANY_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS.map((entry) => entry.param),\n \"reason\",\n \"resolution\",\n \"expectedResult\",\n \"actualResult\",\n \"validateClose\",\n \"dryRun\",\n \"rollback\",\n \"noCheckpoint\",\n \"author\",\n \"message\",\n \"force\",\n]);\n\nconst CONTEXT_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_CONTEXT_OPTION_CONTRACTS.map((entry) => entry.param),\n \"past\",\n \"section\",\n]);\n\nconst ACTIVITY_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_ACTIVITY_OPTION_CONTRACTS.map((entry) => entry.param),\n \"stream\",\n]);\n\nconst LIST_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_LIST_FILTER_OPTION_CONTRACTS.map((entry) => entry.param),\n \"includeBody\",\n \"noTruncate\",\n \"compact\",\n \"brief\",\n \"full\",\n]);\nconst LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS = [\n [\n { property: \"today\", schema: { const: true } },\n { property: \"recent\", schema: { const: true } },\n ],\n [\n { property: \"today\", schema: { const: true } },\n { property: \"updatedAfter\", schema: { type: \"string\", pattern: \"\\\\S\" } },\n ],\n [\n { property: \"recent\", schema: { const: true } },\n { property: \"updatedAfter\", schema: { type: \"string\", pattern: \"\\\\S\" } },\n ],\n];\nconst CONTRACTS_PROJECTION_MUTUALLY_EXCLUSIVE_GROUPS = [\n [\n { property: \"summary\", schema: { const: true } },\n { property: \"schemaOnly\", schema: { const: true } },\n ],\n [\n { property: \"summary\", schema: { const: true } },\n { property: \"flagsOnly\", schema: { const: true } },\n ],\n [\n { property: \"summary\", schema: { const: true } },\n { property: \"availabilityOnly\", schema: { const: true } },\n ],\n [\n { property: \"schemaOnly\", schema: { const: true } },\n { property: \"flagsOnly\", schema: { const: true } },\n ],\n [\n { property: \"schemaOnly\", schema: { const: true } },\n { property: \"availabilityOnly\", schema: { const: true } },\n ],\n [\n { property: \"flagsOnly\", schema: { const: true } },\n { property: \"availabilityOnly\", schema: { const: true } },\n ],\n];\nconst AGGREGATE_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n ...TOOL_AGGREGATE_OPTION_CONTRACTS.map((entry) => entry.param),\n \"count\",\n \"completion\",\n \"includeUnparented\",\n]);\nconst SEARCH_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n \"query\",\n \"keywords\",\n \"mode\",\n \"semantic\",\n \"hybrid\",\n \"includeLinked\",\n \"titleExact\",\n \"phraseExact\",\n \"highlight\",\n \"compact\",\n \"full\",\n ...TOOL_SEARCH_FILTER_OPTION_CONTRACTS.map((entry) => entry.param),\n]);\n\nconst NEXT_CONTRACT_PARAMETER_KEYS = toSchemaKeyList([\n \"type\",\n \"tag\",\n \"priority\",\n \"assignee\",\n \"assigneeFilter\",\n \"sprint\",\n \"release\",\n \"parent\",\n \"limit\",\n \"blockedLimit\",\n \"readyOnly\",\n \"format\",\n \"includeDecisions\",\n]);\n\nconst AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS = [\"author\", \"message\", \"force\"];\nconst LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS = [\n \"author\",\n \"assignee\",\n \"message\",\n \"force\",\n];\n\nconst MANAGED_EXTENSION_PACKAGE_OPTION_KEYS = [\n \"target\",\n \"scope\",\n \"github\",\n \"ref\",\n \"init\",\n \"install\",\n \"uninstall\",\n \"explore\",\n \"manage\",\n \"describe\",\n \"markdown\",\n \"output\",\n \"reload\",\n \"doctor\",\n \"catalog\",\n \"adopt\",\n \"adoptAll\",\n \"activate\",\n \"deactivate\",\n \"runtimeProbe\",\n \"fixManagedState\",\n \"isolated\",\n \"ignoreGlobal\",\n \"detail\",\n \"trace\",\n \"watch\",\n \"strictExit\",\n \"failOnWarn\",\n];\n\nfunction managedLifecycleSchemaContracts(\n prefix: \"extension\" | \"package\",\n): Record<string, PmActionSchemaContract> {\n return {\n [`${prefix}-init`]: { required: [\"target\"], optional: [\"scope\"] },\n [`${prefix}-install`]: {\n optional: [\"target\", \"github\", \"scope\", \"ref\"],\n anyOfRequired: [[\"target\"], [\"github\"]],\n },\n [`${prefix}-uninstall`]: { required: [\"target\"], optional: [\"scope\"] },\n [`${prefix}-explore`]: { optional: [\"scope\"] },\n [`${prefix}-manage`]: {\n optional: [\"scope\", \"runtimeProbe\", \"fixManagedState\"],\n },\n [`${prefix}-describe`]: {\n optional: [\"target\", \"scope\", \"markdown\", \"output\"],\n },\n [`${prefix}-reload`]: { optional: [\"scope\", \"watch\"] },\n [`${prefix}-doctor`]: {\n optional: [\n \"scope\",\n \"detail\",\n \"trace\",\n \"fixManagedState\",\n \"isolated\",\n \"ignoreGlobal\",\n \"strictExit\",\n \"failOnWarn\",\n ],\n },\n [`${prefix}-catalog`]: { optional: [\"scope\", \"fields\"] },\n [`${prefix}-adopt`]: {\n required: [\"target\"],\n optional: [\"scope\", \"github\", \"ref\"],\n },\n [`${prefix}-adopt-all`]: { optional: [\"scope\"] },\n [`${prefix}-activate`]: { required: [\"target\"], optional: [\"scope\"] },\n [`${prefix}-deactivate`]: { required: [\"target\"], optional: [\"scope\"] },\n [prefix]: {\n optional: MANAGED_EXTENSION_PACKAGE_OPTION_KEYS,\n },\n };\n}\n\nconst PM_TOOL_ACTION_SCHEMA_CONTRACTS: Record<string, PmActionSchemaContract> =\n {\n init: {\n optional: [\n \"prefix\",\n \"preset\",\n \"typePreset\",\n \"defaults\",\n \"author\",\n \"agentGuidance\",\n \"withPackages\",\n \"force\",\n \"verbose\",\n ],\n },\n config: {\n required: [\"scope\", \"configAction\"],\n optional: [\n \"key\",\n \"value\",\n \"criterion\",\n \"clearCriteria\",\n \"format\",\n \"policy\",\n ],\n },\n ...managedLifecycleSchemaContracts(\"extension\"),\n ...managedLifecycleSchemaContracts(\"package\"),\n install: {\n optional: [\"target\", \"github\", \"scope\", \"ref\"],\n anyOfRequired: [[\"target\"], [\"github\"]],\n },\n upgrade: {\n optional: [\n \"target\",\n \"scope\",\n \"dryRun\",\n \"cliOnly\",\n \"packagesOnly\",\n \"repair\",\n \"tag\",\n \"packageName\",\n ],\n },\n create: {\n required: [\n \"title\",\n \"description\",\n \"type\",\n \"status\",\n \"priority\",\n \"message\",\n ],\n optional: CREATE_CONTRACT_PARAMETER_KEYS,\n },\n copy: { required: [\"id\"], optional: [\"title\", \"author\", \"message\"] },\n focus: { optional: [\"id\", \"clear\"], mutuallyExclusive: [[\"id\", \"clear\"]] },\n list: {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-all\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-draft\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-open\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-in-progress\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-blocked\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-closed\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n \"list-canceled\": {\n optional: LIST_CONTRACT_PARAMETER_KEYS,\n mutuallyExclusiveWhen: LIST_WINDOW_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n aggregate: { optional: AGGREGATE_CONTRACT_PARAMETER_KEYS },\n guide: { optional: [\"list\", \"format\", \"depth\"] },\n context: { optional: CONTEXT_CONTRACT_PARAMETER_KEYS },\n ctx: { optional: CONTEXT_CONTRACT_PARAMETER_KEYS },\n get: {\n required: [\"id\"],\n optional: [\"depth\", \"full\", \"fields\", \"tree\", \"treeDepth\", \"format\"],\n },\n search: {\n optional: SEARCH_CONTRACT_PARAMETER_KEYS,\n anyOfRequired: [[\"query\"], [\"keywords\"]],\n },\n next: { optional: NEXT_CONTRACT_PARAMETER_KEYS },\n reindex: { optional: [\"mode\", \"progress\"] },\n history: {\n required: [\"id\"],\n optional: [\"limit\", \"compact\", \"full\", \"diff\", \"verify\", \"format\"],\n },\n \"history-redact\": {\n required: [\"id\"],\n optional: [\n \"literal\",\n \"regex\",\n \"replacement\",\n \"dryRun\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n anyOfRequired: [[\"literal\"], [\"regex\"]],\n },\n \"history-repair\": {\n // Exactly one of `id` (single stream) or `all` (bulk drift repair) is required.\n optional: [\"id\", \"all\", \"dryRun\", ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS],\n oneOfRequired: [[\"id\"], [\"all\"]],\n },\n \"history-compact\": {\n // Single-id mode (`id` + optional `before`) or bulk mode (any of `ids` /\n // `allOver` / `closed` / `allStreams`, with optional `minEntries`). Scan\n // selectors (`allOver` + `closed`/`allStreams`) legitimately combine, so the\n // mode/exclusivity contract is enforced at runtime by assertHistoryCompactTarget\n // rather than a one-of schema rule.\n optional: [\n \"id\",\n \"before\",\n \"ids\",\n \"allOver\",\n \"closed\",\n \"allStreams\",\n \"minEntries\",\n \"dryRun\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n schema: {\n required: [\"subcommand\"],\n // No --message: schema mutations write config files, not item history.\n optional: [\n \"name\",\n \"description\",\n \"defaultStatus\",\n \"folder\",\n \"alias\",\n \"role\",\n \"order\",\n \"fieldType\",\n \"commands\",\n \"cliFlag\",\n \"required\",\n \"requiredOnCreate\",\n \"allowUnset\",\n \"requiredTypes\",\n \"typePreset\",\n \"infer\",\n \"minCount\",\n \"apply\",\n \"author\",\n \"force\",\n ],\n conditionalRequired: [\n { property: \"subcommand\", value: \"show\", required: [\"name\"] },\n { property: \"subcommand\", value: \"show-status\", required: [\"name\"] },\n { property: \"subcommand\", value: \"add-type\", required: [\"name\"] },\n { property: \"subcommand\", value: \"remove-type\", required: [\"name\"] },\n // show-status/add-status/remove-status pass the status id as `name`.\n { property: \"subcommand\", value: \"add-status\", required: [\"name\"] },\n { property: \"subcommand\", value: \"remove-status\", required: [\"name\"] },\n // field subcommands pass the field key as `name`.\n { property: \"subcommand\", value: \"add-field\", required: [\"name\"] },\n { property: \"subcommand\", value: \"remove-field\", required: [\"name\"] },\n { property: \"subcommand\", value: \"show-field\", required: [\"name\"] },\n // apply-preset passes the preset name as `typePreset`.\n {\n property: \"subcommand\",\n value: \"apply-preset\",\n required: [\"typePreset\"],\n },\n ],\n },\n profile: {\n required: [\"subcommand\"],\n // No --message: profile staging writes config/schema files, not item history.\n optional: [\"name\", \"dryRun\", \"author\", \"force\"],\n conditionalRequired: [\n { property: \"subcommand\", value: \"show\", required: [\"name\"] },\n { property: \"subcommand\", value: \"apply\", required: [\"name\"] },\n { property: \"subcommand\", value: \"lint\", required: [\"name\"] },\n ],\n },\n plan: {\n required: [\"subcommand\"],\n optional: [\n \"id\",\n \"stepRef\",\n \"reorderTo\",\n \"title\",\n \"description\",\n \"scope\",\n \"parent\",\n \"related\",\n \"blocks\",\n \"blockedBy\",\n \"harness\",\n \"mode\",\n \"resumeContext\",\n \"tags\",\n \"priority\",\n \"body\",\n \"claim\",\n \"fromSearch\",\n \"stepTitle\",\n \"step\",\n \"stepBody\",\n \"stepOwner\",\n \"stepStatus\",\n \"stepEvidence\",\n \"stepBlockedReason\",\n \"stepReplacement\",\n \"dependsOn\",\n \"link\",\n \"linkKind\",\n \"linkNote\",\n \"promoteToItemDep\",\n \"allowMultipleActive\",\n \"file\",\n \"test\",\n \"doc\",\n \"decisionText\",\n \"decision\",\n \"decisionRationale\",\n \"decisionEvidence\",\n \"discoveryText\",\n \"discovery\",\n \"validationText\",\n \"validation\",\n \"validationCommand\",\n \"validationExpected\",\n \"depth\",\n \"fields\",\n \"steps\",\n \"materializeType\",\n \"materializeParent\",\n \"materializeTags\",\n \"field\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n activity: { optional: ACTIVITY_CONTRACT_PARAMETER_KEYS },\n restore: {\n required: [\"id\", \"target\"],\n optional: AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n update: { required: [\"id\"], optional: UPDATE_CONTRACT_PARAMETER_KEYS },\n \"update-many\": { optional: UPDATE_MANY_CONTRACT_PARAMETER_KEYS },\n close: {\n required: [\"id\"],\n optional: [\n \"text\",\n \"reason\",\n \"closeReason\",\n \"duplicateOf\",\n \"validateClose\",\n \"resolution\",\n \"expectedResult\",\n \"actualResult\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n \"close-many\": { optional: CLOSE_MANY_CONTRACT_PARAMETER_KEYS },\n delete: {\n required: [\"id\"],\n optional: [\"dryRun\", ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS],\n },\n append: {\n required: [\"id\", \"body\"],\n optional: AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n comments: {\n required: [\"id\"],\n optional: [\n \"text\",\n \"add\",\n \"stdin\",\n \"edit\",\n \"delete\",\n \"limit\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n notes: {\n required: [\"id\"],\n optional: [\n \"text\",\n \"add\",\n \"stdin\",\n \"edit\",\n \"delete\",\n \"limit\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n learnings: {\n required: [\"id\"],\n optional: [\n \"text\",\n \"add\",\n \"stdin\",\n \"edit\",\n \"delete\",\n \"limit\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n files: {\n required: [\"id\"],\n optional: [\n \"add\",\n \"addGlob\",\n \"remove\",\n \"migrate\",\n \"list\",\n // GH-170 (pm-pfnx): `addNote` is the MCP spelling of the CLI --note flag\n // (the shared `note` parameter is the array-typed create/update note\n // seed, so files/docs use a distinct single-string key).\n \"addNote\",\n \"discover\",\n \"apply\",\n \"discoveryNote\",\n \"appendStable\",\n \"validatePaths\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n dependentAnyOfRequired: [\n { property: \"addNote\", anyOfRequired: [[\"add\"], [\"addGlob\"]] },\n ],\n },\n docs: {\n required: [\"id\"],\n optional: [\n \"add\",\n \"addGlob\",\n \"remove\",\n \"migrate\",\n \"addNote\",\n \"list\",\n \"validatePaths\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n dependentAnyOfRequired: [\n { property: \"addNote\", anyOfRequired: [[\"add\"], [\"addGlob\"]] },\n ],\n },\n deps: {\n required: [\"id\"],\n optional: [\"format\", \"maxDepth\", \"collapse\", \"summary\", \"nodeLimit\", \"edgeLimit\", \"tokenBudget\", \"cursor\"],\n },\n test: {\n required: [\"id\"],\n optional: [\n \"add\",\n \"addJson\",\n \"remove\",\n \"run\",\n \"match\",\n \"onlyIndex\",\n \"onlyLast\",\n \"background\",\n \"timeout\",\n \"progress\",\n \"envSet\",\n \"envClear\",\n \"sharedHostSafe\",\n \"pmContext\",\n \"overrideLinkedPmContext\",\n \"failOnContextMismatch\",\n \"failOnSkipped\",\n \"failOnEmptyTestRun\",\n \"requireAssertionsForPm\",\n \"checkContext\",\n \"autoPmContext\",\n ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n \"test-all\": {\n optional: [\n \"status\",\n \"limit\",\n \"offset\",\n \"background\",\n \"timeout\",\n \"progress\",\n \"envSet\",\n \"envClear\",\n \"sharedHostSafe\",\n \"pmContext\",\n \"overrideLinkedPmContext\",\n \"failOnContextMismatch\",\n \"failOnSkipped\",\n \"failOnEmptyTestRun\",\n \"requireAssertionsForPm\",\n \"checkContext\",\n \"autoPmContext\",\n ],\n },\n telemetry: {\n optional: [\"subcommand\", \"limit\"],\n },\n \"test-runs-list\": {\n optional: [\"status\", \"limit\"],\n },\n \"test-runs-status\": {\n required: [\"runId\"],\n },\n \"test-runs-logs\": {\n required: [\"runId\"],\n optional: [\"stream\", \"tail\"],\n },\n \"test-runs-stop\": {\n required: [\"runId\"],\n optional: [\"force\"],\n },\n \"test-runs-resume\": {\n required: [\"runId\"],\n optional: [\"author\"],\n },\n stats: {\n optional: [\n \"storage\",\n \"metadataCoverage\",\n \"fieldUtilization\",\n \"byAssignee\",\n \"byTag\",\n \"byPriority\",\n \"tagPrefix\",\n ],\n },\n health: {\n optional: [\n \"strictDirectories\",\n \"strictExit\",\n \"failOnWarn\",\n \"checkOnly\",\n \"checkTelemetry\",\n \"noRefresh\",\n \"refreshVectors\",\n \"verboseStaleItems\",\n \"brief\",\n \"summary\",\n \"skipVectors\",\n \"skipIntegrity\",\n \"skipDrift\",\n \"full\",\n ],\n },\n validate: {\n optional: [\n \"checkMetadata\",\n \"metadataProfile\",\n \"checkResolution\",\n \"checkLifecycle\",\n \"checkStaleBlockers\",\n \"dependencyCycleSeverity\",\n \"parentCycleSeverity\",\n \"checkFiles\",\n \"scanMode\",\n \"includePmInternals\",\n \"verboseFileLists\",\n \"verboseDiagnostics\",\n \"allAffectedIds\",\n \"strictExit\",\n \"failOnWarn\",\n \"fixHints\",\n \"autoFix\",\n \"dryRun\",\n \"fixScope\",\n \"pruneMissing\",\n \"checkHistoryDrift\",\n \"checkCommandReferences\",\n ],\n },\n gc: { optional: [\"dryRun\", \"gcScope\"] },\n contracts: {\n optional: [\n \"contractAction\",\n \"command\",\n \"summary\",\n \"schemaOnly\",\n \"flagsOnly\",\n \"availabilityOnly\",\n \"runtimeOnly\",\n \"activeOnly\",\n \"full\",\n ],\n mutuallyExclusiveWhen: CONTRACTS_PROJECTION_MUTUALLY_EXCLUSIVE_GROUPS,\n },\n completion: { required: [\"shell\"], optional: [\"eagerTags\"] },\n claim: {\n optional: [\n \"id\",\n \"next\",\n \"ifAvailable\",\n \"maxAttempts\",\n \"includeDecisions\",\n ...NEXT_CONTRACT_PARAMETER_KEYS,\n ...LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n oneOfRequired: [[\"id\"], [\"next\"]],\n },\n release: {\n required: [\"id\"],\n optional: LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n \"start-task\": {\n required: [\"id\"],\n optional: LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n \"pause-task\": {\n required: [\"id\"],\n optional: LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n },\n \"close-task\": {\n required: [\"id\"],\n optional: [\n \"text\",\n \"validateClose\",\n ...LIFECYCLE_AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,\n ],\n },\n };\n\n/** Public contract for pm tool action parameter contracts, shared by SDK and presentation-layer consumers. */\nexport const PM_TOOL_ACTION_PARAMETER_CONTRACTS: Readonly<\n Record<PmToolAction, PmActionSchemaContract>\n> = Object.freeze(\n Object.fromEntries(\n PM_TOOL_ACTIONS.map((action) => [\n action,\n PM_TOOL_ACTION_SCHEMA_CONTRACTS[action],\n ]),\n ),\n) as Readonly<Record<PmToolAction, PmActionSchemaContract>>;\n\nfunction fallbackToolParameterDescription(key: string): string {\n return key\n .replace(/([a-z0-9])([A-Z])/g, \"$1 $2\")\n .replace(/[_-]/g, \" \")\n .trim()\n .replace(/^./, (value) => value.toUpperCase())\n .concat(\".\");\n}\n\nfunction decorateToolParameterDefinition(\n key: string,\n definition: unknown,\n): Record<string, unknown> {\n const baseDefinition =\n typeof definition === \"object\" && definition !== null\n ? { ...(definition as Record<string, unknown>) }\n : {};\n const metadata = PM_TOOL_PARAMETER_METADATA[key];\n return {\n ...baseDefinition,\n description: metadata?.description ?? fallbackToolParameterDescription(key),\n ...(metadata?.examples ? { examples: metadata.examples } : {}),\n };\n}\n\nfunction actionScopedToolParameterMetadata(\n action: PmToolAction,\n key: string,\n): { description: string; examples?: unknown[] } | undefined {\n if (\n action === \"plan\" &&\n Object.prototype.hasOwnProperty.call(PLAN_ACTION_PARAMETER_METADATA, key)\n ) {\n return PLAN_ACTION_PARAMETER_METADATA[key];\n }\n const actionOverrides = PM_TOOL_ACTION_SCOPED_PARAMETER_METADATA[action];\n if (\n actionOverrides &&\n Object.prototype.hasOwnProperty.call(actionOverrides, key)\n ) {\n return actionOverrides[key];\n }\n return PM_TOOL_PARAMETER_METADATA[key];\n}\n\nfunction decorateActionScopedToolParameterDefinition(\n action: PmToolAction,\n key: string,\n definition: unknown,\n): Record<string, unknown> {\n const baseDefinition =\n typeof definition === \"object\" && definition !== null\n ? { ...(definition as Record<string, unknown>) }\n : {};\n const metadata = actionScopedToolParameterMetadata(action, key);\n return {\n ...baseDefinition,\n description: metadata?.description ?? fallbackToolParameterDescription(key),\n ...(metadata?.examples ? { examples: metadata.examples } : {}),\n };\n}\n\nfunction actionScopedToolParameterDefinition(\n action: PmToolAction,\n key: string,\n): unknown {\n if (\n action === \"plan\" &&\n Object.prototype.hasOwnProperty.call(PLAN_ACTION_PARAMETER_PROPERTIES, key)\n ) {\n return PLAN_ACTION_PARAMETER_PROPERTIES[key];\n }\n if (\n (action === \"get\" || action === \"history\" || action === \"search\") &&\n key === \"format\"\n ) {\n return { type: \"string\", enum: [\"json\", \"toon\"] };\n }\n return PM_TOOL_PARAMETER_PROPERTIES[key];\n}\n\n/** Build the `properties` map for one action-scoped schema: the fixed `action` literal followed by every allowed parameter that resolves to a concrete definition, each decorated with its action-scoped description and examples. */\nfunction buildActionScopedSchemaProperties(\n action: PmToolAction,\n allowedKeys: string[],\n): Record<string, unknown> {\n const properties: Record<string, unknown> = {\n action: {\n const: action,\n description:\n PM_TOOL_PARAMETER_METADATA.action?.description ??\n \"Tool action to execute.\",\n },\n };\n for (const key of allowedKeys) {\n if (key === \"action\") {\n continue;\n }\n const definition = actionScopedToolParameterDefinition(action, key);\n if (definition) {\n properties[key] = decorateActionScopedToolParameterDefinition(\n action,\n key,\n definition,\n );\n }\n }\n return properties;\n}\n\n/** Build the `oneOf` branches for an action whose contract requires exactly one of several field groups. Each branch requires its own group and — when sibling groups exist — forbids any field drawn from them, so the schema rejects the same overlapping combinations the runtime rejects; `history-repair`'s `all` branch additionally pins `all` to the literal `true`. */\nfunction buildOneOfSchemaEntries(\n action: PmToolAction,\n oneOfRequiredGroups: Array<string[]>,\n): Array<Record<string, unknown>> {\n const allOneOfFields = oneOfRequiredGroups.flat();\n return oneOfRequiredGroups.map((requiredFields) => {\n const otherFields = allOneOfFields.filter(\n (field) => !requiredFields.includes(field),\n );\n return {\n required: [...requiredFields],\n ...(otherFields.length > 0\n ? {\n not: { anyOf: otherFields.map((field) => ({ required: [field] })) },\n }\n : {}),\n ...(action === \"history-repair\" && requiredFields.includes(\"all\")\n ? { properties: { all: { const: true } } }\n : action === \"claim\" && requiredFields.includes(\"next\")\n ? { properties: { next: { const: true } } }\n : {}),\n };\n });\n}\n\n/** Build the consolidated `allOf` constraint list for an action's contract, appending branches in a fixed order — conditional-required (`if`/`then`), then dependent any-of-required, then mutually-exclusive (`not`/`required`) — so a given contract always serializes to a byte-identical schema. Returns an empty array when the contract declares none of these constraints, letting the caller omit the `allOf` key entirely. */\nfunction buildActionScopedAllOf(\n contract: PmActionSchemaContract,\n): Array<Record<string, unknown>> {\n const allOf: Array<Record<string, unknown>> = [];\n if (contract.conditionalRequired && contract.conditionalRequired.length > 0) {\n for (const entry of contract.conditionalRequired) {\n allOf.push({\n if: {\n properties: {\n [entry.property]: { const: entry.value },\n },\n required: [entry.property],\n },\n // eslint-disable-next-line unicorn/no-thenable -- JSON Schema conditional keyword, not a Promise-like object.\n then: {\n required: entry.required,\n },\n });\n }\n }\n if (\n contract.dependentAnyOfRequired &&\n contract.dependentAnyOfRequired.length > 0\n ) {\n for (const entry of contract.dependentAnyOfRequired) {\n allOf.push({\n if: { required: [entry.property] },\n // eslint-disable-next-line unicorn/no-thenable -- JSON Schema conditional keyword, not a Promise-like object.\n then: {\n anyOf: entry.anyOfRequired.map((requiredFields) => ({\n required: [...requiredFields],\n })),\n },\n });\n }\n }\n if (contract.mutuallyExclusive && contract.mutuallyExclusive.length > 0) {\n for (const group of contract.mutuallyExclusive) {\n allOf.push({ not: { required: toSchemaKeyList(group) } });\n }\n }\n if (\n contract.mutuallyExclusiveWhen &&\n contract.mutuallyExclusiveWhen.length > 0\n ) {\n for (const group of contract.mutuallyExclusiveWhen) {\n allOf.push({\n not: {\n allOf: group.map((condition) => ({\n properties: { [condition.property]: condition.schema },\n required: [condition.property],\n })),\n },\n });\n }\n }\n return allOf;\n}\n\nfunction buildActionScopedToolSchema(\n action: PmToolAction,\n): Record<string, unknown> {\n const contract = PM_TOOL_ACTION_SCHEMA_CONTRACTS[action];\n const required = toSchemaKeyList(contract.required ?? []);\n const optional = toSchemaKeyList(contract.optional ?? []);\n const mutationParameterKeys =\n PM_TOOL_ACTION_MUTATION_PARAMETER_KEYS[action] ?? [];\n const allowedKeys = toSchemaKeyList([\n \"action\",\n ...PM_TOOL_GLOBAL_PARAMETER_KEYS,\n ...mutationParameterKeys,\n ...required,\n ...optional,\n ]);\n const schema: Record<string, unknown> = {\n type: \"object\",\n additionalProperties: false,\n required: [\"action\", ...required],\n title: `pm action \"${action}\" parameters`,\n properties: buildActionScopedSchemaProperties(action, allowedKeys),\n };\n if (contract.anyOfRequired && contract.anyOfRequired.length > 0) {\n schema.anyOf = contract.anyOfRequired.map((requiredFields) => ({\n required: [...requiredFields],\n }));\n }\n if (contract.oneOfRequired && contract.oneOfRequired.length > 0) {\n schema.oneOf = buildOneOfSchemaEntries(action, contract.oneOfRequired);\n }\n const allOf = buildActionScopedAllOf(contract);\n if (allOf.length > 0) {\n schema.allOf = allOf;\n }\n return schema;\n}\n\n// Building the full MCP tool-parameter schemas (one variant per action) is only\n// needed by the MCP server, the `pm contracts` command, and SDK consumers — never\n// on the hot CLI path that imports this module for flag contracts. Wrap them in a\n// memoized lazy Proxy so the build is deferred until first property access and the\n// object API (`.type`, `.oneOf`, spread, JSON.stringify) stays identical.\nfunction createLazyContractSchema(\n build: () => Record<string, unknown>,\n): Record<string, unknown> {\n let value: Record<string, unknown> | undefined;\n const resolve = (): Record<string, unknown> => (value ??= build());\n return new Proxy({} as Record<string, unknown>, {\n get: (_target, prop) => resolve()[prop as string],\n has: (_target, prop) => prop in resolve(),\n ownKeys: () => Reflect.ownKeys(resolve()),\n getOwnPropertyDescriptor: (_target, prop) => {\n const descriptor = Reflect.getOwnPropertyDescriptor(resolve(), prop);\n if (descriptor) {\n descriptor.configurable = true;\n }\n return descriptor;\n },\n });\n}\n\n/** Canonical version of the action-scoped strict MCP tool-parameters schema (`PM_TOOL_PARAMETERS_SCHEMA`). Exported as the single source of truth so the MCP server, the `pm contracts` command, SDK consumers, and the contract tests all bind to one constant instead of re-typing the `\"4.0.2\"` literal (pm-r9sz). Bump the patch/minor for additive, backward-compatible schema changes; bump the MAJOR for breaking changes — the major also drives the `$id` `tool-parameters-v{major}` slug, so the two never drift. */\nexport const PM_TOOL_PARAMETERS_SCHEMA_VERSION = \"4.0.7\" as const;\n\n/**\n * Major component of {@link PM_TOOL_PARAMETERS_SCHEMA_VERSION}, used to build the\n * schema `$id` slug so a breaking version bump renames the document in lockstep.\n */\nexport const PM_TOOL_PARAMETERS_SCHEMA_MAJOR =\n PM_TOOL_PARAMETERS_SCHEMA_VERSION.split(\".\")[0];\n\n/** Version of the provider-compatible flat tool-parameters schema (`PM_PROVIDER_TOOL_PARAMETERS_SCHEMA`). Tracked separately from the strict schema because the flat projection evolves independently. */\nexport const PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION = \"1.0.0\" as const;\n\n/** Public contract for pm tool parameters schema, shared by SDK and presentation-layer consumers. */\nexport const PM_TOOL_PARAMETERS_SCHEMA: Record<string, unknown> =\n createLazyContractSchema(() => ({\n $schema: \"https://json-schema.org/draft/2020-12/schema\",\n $id: `https://schema.unbrained.dev/pm-cli/tool-parameters-v${PM_TOOL_PARAMETERS_SCHEMA_MAJOR}.schema.json`,\n title: \"pm-cli tool parameters (action-scoped strict schema)\",\n \"x-schema-version\": PM_TOOL_PARAMETERS_SCHEMA_VERSION,\n type: \"object\",\n oneOf: PM_TOOL_ACTIONS.map((action) => buildActionScopedToolSchema(action)),\n }));\n\nfunction toProviderCompatibleParameterDefinition(\n key: string,\n definition: unknown,\n): Record<string, unknown> {\n const decorated = decorateToolParameterDefinition(key, definition);\n if (typeof decorated.type === \"string\") {\n return decorated;\n }\n const anyOf = Array.isArray(decorated.anyOf)\n ? (decorated.anyOf as Array<Record<string, unknown>>)\n : [];\n const firstTypedVariant = anyOf.find(\n (variant) => typeof variant.type === \"string\",\n );\n if (firstTypedVariant) {\n const { anyOf: _anyOf, ...rest } = decorated;\n // Spread the whole typed variant (type plus any enum/minimum/maximum/pattern\n // constraints) so the flat provider schema keeps the variant's validation,\n // then let the decorated top-level fields (description, examples) win.\n return {\n ...firstTypedVariant,\n ...rest,\n };\n }\n const { anyOf: _anyOf, ...rest } = decorated;\n return {\n ...rest,\n type: \"string\",\n };\n}\n\nfunction buildProviderCompatibleToolSchema(): Record<string, unknown> {\n const properties: Record<string, unknown> = {\n action: {\n type: \"string\",\n description:\n PM_TOOL_PARAMETER_METADATA.action?.description ??\n \"Tool action to execute.\",\n },\n options: {\n type: \"object\",\n additionalProperties: true,\n description:\n \"Advanced command options object forwarded to the selected pm action.\",\n },\n };\n for (const key of Object.keys(PM_TOOL_PARAMETER_PROPERTIES).sort()) {\n properties[key] = toProviderCompatibleParameterDefinition(\n key,\n PM_TOOL_PARAMETER_PROPERTIES[key],\n );\n }\n return {\n title: \"pm-cli tool parameters (provider-compatible flat schema)\",\n \"x-schema-version\": PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION,\n type: \"object\",\n additionalProperties: false,\n required: [\"action\"],\n properties,\n };\n}\n\n/** Public contract for pm provider tool parameters schema, shared by SDK and presentation-layer consumers. */\nexport const PM_PROVIDER_TOOL_PARAMETERS_SCHEMA: Record<string, unknown> =\n createLazyContractSchema(buildProviderCompatibleToolSchema);\n\n/** Public contract for test only cli contracts, shared by SDK and presentation-layer consumers. */\nexport const _testOnlyCliContracts = {\n buildActionScopedToolSchema,\n buildProviderCompatibleToolSchema,\n decorateActionScopedToolParameterDefinition,\n decorateToolParameterDefinition,\n toolActionSchemaContracts: PM_TOOL_ACTION_SCHEMA_CONTRACTS,\n toolParameterMetadata: PM_TOOL_PARAMETER_METADATA,\n toProviderCompatibleParameterDefinition,\n toUniqueFlagContracts,\n withFlagAliasMetadata,\n};\n"],"names":[],"mappings":"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","debugId":"15ef6d3d-a3e4-50ab-a3d8-ac9cfa57c110"}
@@ -11,6 +11,7 @@
11
11
  * here.)
12
12
  */
13
13
  export type { CommanderOptionAliasContract, CommanderOptionRegistrationContract, } from "./cli-contracts/commander-types.js";
14
+ export { EXECUTABLE_COMMAND_ALIASES } from "./cli-contracts/command-aliases.js";
14
15
  export { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, NEXT_COMMANDER_STRING_OPTION_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, readFirstValueFromCommanderOptions, readFirstStringFromCommanderOptions, readStringArrayFromCommanderOptions, } from "./cli-contracts/commander-types.js";
15
16
  export { CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, CREATE_COMMANDER_STRING_OPTION_CONTRACTS, UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, UPDATE_COMMANDER_STRING_OPTION_CONTRACTS, } from "./cli-contracts/commander-mutation-options.js";
16
17
  export { PM_EXTENSION_CAPABILITY_CONTRACTS, PM_EXTENSION_SERVICE_NAME_CONTRACTS, PM_EXTENSION_POLICY_MODE_CONTRACTS, PM_EXTENSION_TRUST_MODE_CONTRACTS, PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS, PM_EXTENSION_POLICY_SURFACE_CONTRACTS, PM_CORE_COMMAND_NAMES, PM_TOOL_ACTIONS, isPmToolAction, isPmExtensionCapabilityContract, isPmExtensionServiceNameContract, isPmExtensionPolicyModeContract, isPmExtensionPolicySurfaceContract, } from "./cli-contracts/enum-contracts.js";
@@ -1,5 +1,6 @@
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]="d945b6b1-da70-5142-a422-e20888faafaa")}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]="03628345-205e-5ae0-9a16-1f47628ea7af")}catch(e){}}();
3
+ export { EXECUTABLE_COMMAND_ALIASES } from "./cli-contracts/command-aliases.js";
3
4
  export { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, NEXT_COMMANDER_STRING_OPTION_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, readFirstValueFromCommanderOptions, readFirstStringFromCommanderOptions, readStringArrayFromCommanderOptions, } from "./cli-contracts/commander-types.js";
4
5
  export { CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, CREATE_COMMANDER_STRING_OPTION_CONTRACTS, UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, UPDATE_COMMANDER_STRING_OPTION_CONTRACTS, } from "./cli-contracts/commander-mutation-options.js";
5
6
  // PM_* enum/guard contracts and the bulk tool-parameter property/metadata data
@@ -11,4 +12,4 @@ export { TOOL_LIST_FILTER_OPTION_CONTRACTS, TOOL_AGGREGATE_OPTION_CONTRACTS, TOO
11
12
  export { withFlagAliasMetadata, compactFlagAliasContracts, SUBCOMMAND_GLOBAL_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, PROFILE_FLAG_CONTRACTS, PLAN_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_SCOPE_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, REINDEX_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, MEET_FLAG_CONTRACTS, EVENT_FLAG_CONTRACTS, REMIND_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, VALIDATE_FLAG_CONTRACTS, CREATE_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, CALENDAR_FLAG_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, CONTEXT_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, EVAL_FLAG_CONTRACTS, NEXT_FLAG_CONTRACTS, SEARCH_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, resolveSubcommandFlagContractsForCommand, toCompletionFlagString, } from "./cli-contracts/flag-contracts.js";
12
13
  export { PM_TOOL_ACTION_PARAMETER_CONTRACTS, PM_TOOL_PARAMETERS_SCHEMA_VERSION, PM_TOOL_PARAMETERS_SCHEMA_MAJOR, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION, PM_TOOL_PARAMETERS_SCHEMA, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA, _testOnlyCliContracts, } from "./cli-contracts/tool-schema.js";
13
14
  //# sourceMappingURL=cli-contracts.js.map
14
- //# debugId=d945b6b1-da70-5142-a422-e20888faafaa
15
+ //# debugId=03628345-205e-5ae0-9a16-1f47628ea7af
@@ -1 +1 @@
1
- {"version":3,"file":"cli-contracts.js","sources":["sdk/cli-contracts.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/cli-contracts\n *\n * Public barrel for the pm CLI/MCP contract surface. Re-exports the public\n * members of the focused sibling modules — Commander option contracts,\n * enum/guard contracts, MCP tool option contracts, per-command flag contracts,\n * and the tool-parameter JSON Schemas — so existing import sites (sdk/index.ts,\n * mcp/server.ts, commands/contracts.ts, completion.ts, …) keep importing\n * everything from \"./cli-contracts.js\" unchanged. (The raw tool-parameter\n * property/metadata tables stay internal to tool-schema and are not surfaced\n * here.)\n */\nexport type {\n CommanderOptionAliasContract,\n CommanderOptionRegistrationContract,\n} from \"./cli-contracts/commander-types.js\";\nexport {\n ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS,\n CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS,\n CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n LIST_COMMANDER_STRING_OPTION_CONTRACTS,\n NEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n SEARCH_COMMANDER_STRING_OPTION_CONTRACTS,\n readFirstValueFromCommanderOptions,\n readFirstStringFromCommanderOptions,\n readStringArrayFromCommanderOptions,\n} from \"./cli-contracts/commander-types.js\";\nexport {\n CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS,\n CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n CREATE_COMMANDER_STRING_OPTION_CONTRACTS,\n UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS,\n UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n UPDATE_COMMANDER_STRING_OPTION_CONTRACTS,\n} from \"./cli-contracts/commander-mutation-options.js\";\n// PM_* enum/guard contracts and the bulk tool-parameter property/metadata data\n// tables live in sibling modules and are re-exported here so existing import\n// sites (sdk/index.ts, mcp/server.ts, commands/contracts.ts, completion.ts, …)\n// keep importing everything from \"./cli-contracts.js\" unchanged.\nexport {\n PM_EXTENSION_CAPABILITY_CONTRACTS,\n PM_EXTENSION_SERVICE_NAME_CONTRACTS,\n PM_EXTENSION_POLICY_MODE_CONTRACTS,\n PM_EXTENSION_TRUST_MODE_CONTRACTS,\n PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS,\n PM_EXTENSION_POLICY_SURFACE_CONTRACTS,\n PM_CORE_COMMAND_NAMES,\n PM_TOOL_ACTIONS,\n isPmToolAction,\n isPmExtensionCapabilityContract,\n isPmExtensionServiceNameContract,\n isPmExtensionPolicyModeContract,\n isPmExtensionPolicySurfaceContract,\n} from \"./cli-contracts/enum-contracts.js\";\nexport type {\n PmExtensionCapabilityContract,\n PmExtensionServiceNameContract,\n PmExtensionPolicyModeContract,\n PmExtensionTrustModeContract,\n PmExtensionSandboxProfileContract,\n PmExtensionPolicySurfaceContract,\n PmToolAction,\n} from \"./cli-contracts/enum-contracts.js\";\nexport {\n TOOL_LIST_FILTER_OPTION_CONTRACTS,\n TOOL_AGGREGATE_OPTION_CONTRACTS,\n TOOL_SEARCH_FILTER_OPTION_CONTRACTS,\n TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS,\n TOOL_CREATE_OPTION_CONTRACTS,\n TOOL_UPDATE_OPTION_CONTRACTS,\n TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS,\n TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS,\n TOOL_CALENDAR_OPTION_CONTRACTS,\n TOOL_ACTIVITY_OPTION_CONTRACTS,\n TOOL_CONTEXT_OPTION_CONTRACTS,\n TOOL_DEPS_OPTION_CONTRACTS,\n} from \"./cli-contracts/tool-option-contracts.js\";\nexport type {\n CliFlagContract,\n ToolOptionFlagContract,\n} from \"./cli-contracts/flag-contracts.js\";\nexport {\n withFlagAliasMetadata,\n compactFlagAliasContracts,\n SUBCOMMAND_GLOBAL_FLAG_CONTRACTS,\n GLOBAL_FLAG_CONTRACTS,\n LIST_FILTER_FLAG_CONTRACTS,\n AGGREGATE_FLAG_CONTRACTS,\n COMMENTS_FLAG_CONTRACTS,\n NOTES_FLAG_CONTRACTS,\n LEARNINGS_FLAG_CONTRACTS,\n FILES_FLAG_CONTRACTS,\n DOCS_FLAG_CONTRACTS,\n HISTORY_FLAG_CONTRACTS,\n HISTORY_REDACT_FLAG_CONTRACTS,\n HISTORY_REPAIR_FLAG_CONTRACTS,\n HISTORY_COMPACT_FLAG_CONTRACTS,\n SCHEMA_FLAG_CONTRACTS,\n PROFILE_FLAG_CONTRACTS,\n PLAN_FLAG_CONTRACTS,\n INIT_FLAG_CONTRACTS,\n CONFIG_FLAG_CONTRACTS,\n EXTENSION_FLAG_CONTRACTS,\n EXTENSION_SCOPE_FLAG_CONTRACTS,\n EXTENSION_INIT_FLAG_CONTRACTS,\n PACKAGE_FLAG_CONTRACTS,\n PACKAGE_INIT_FLAG_CONTRACTS,\n EXTENSION_INSTALL_FLAG_CONTRACTS,\n EXTENSION_UNINSTALL_FLAG_CONTRACTS,\n EXTENSION_EXPLORE_FLAG_CONTRACTS,\n EXTENSION_DESCRIBE_FLAG_CONTRACTS,\n EXTENSION_ADOPT_ALL_FLAG_CONTRACTS,\n EXTENSION_ACTIVATE_FLAG_CONTRACTS,\n EXTENSION_DEACTIVATE_FLAG_CONTRACTS,\n EXTENSION_MANAGE_FLAG_CONTRACTS,\n EXTENSION_RELOAD_FLAG_CONTRACTS,\n EXTENSION_DOCTOR_FLAG_CONTRACTS,\n EXTENSION_CATALOG_FLAG_CONTRACTS,\n EXTENSION_ADOPT_FLAG_CONTRACTS,\n INSTALL_FLAG_CONTRACTS,\n UPGRADE_FLAG_CONTRACTS,\n REINDEX_FLAG_CONTRACTS,\n CLOSE_FLAG_CONTRACTS,\n CLOSE_MANY_FLAG_CONTRACTS,\n APPEND_FLAG_CONTRACTS,\n CLAIM_FLAG_CONTRACTS,\n RESTORE_FLAG_CONTRACTS,\n DELETE_FLAG_CONTRACTS,\n RELEASE_FLAG_CONTRACTS,\n START_TASK_FLAG_CONTRACTS,\n PAUSE_TASK_FLAG_CONTRACTS,\n CLOSE_TASK_FLAG_CONTRACTS,\n MEET_FLAG_CONTRACTS,\n EVENT_FLAG_CONTRACTS,\n REMIND_FLAG_CONTRACTS,\n TEST_FLAG_CONTRACTS,\n TEST_ALL_FLAG_CONTRACTS,\n TELEMETRY_FLAG_CONTRACTS,\n TEST_RUNS_FLAG_CONTRACTS,\n GC_FLAG_CONTRACTS,\n STATS_FLAG_CONTRACTS,\n HEALTH_FLAG_CONTRACTS,\n VALIDATE_FLAG_CONTRACTS,\n CREATE_FLAG_CONTRACTS,\n COPY_FLAG_CONTRACTS,\n FOCUS_FLAG_CONTRACTS,\n UPDATE_FLAG_CONTRACTS,\n UPDATE_MANY_FLAG_CONTRACTS,\n CALENDAR_FLAG_CONTRACTS,\n ACTIVITY_FLAG_CONTRACTS,\n CONTEXT_FLAG_CONTRACTS,\n GET_FLAG_CONTRACTS,\n GUIDE_FLAG_CONTRACTS,\n DEPS_FLAG_CONTRACTS,\n EVAL_FLAG_CONTRACTS,\n NEXT_FLAG_CONTRACTS,\n SEARCH_FLAG_CONTRACTS,\n CONTRACTS_FLAG_CONTRACTS,\n COMPLETION_FLAG_CONTRACTS,\n resolveSubcommandFlagContractsForCommand,\n toCompletionFlagString,\n} from \"./cli-contracts/flag-contracts.js\";\nexport type { PmActionSchemaContract } from \"./cli-contracts/tool-schema.js\";\nexport {\n PM_TOOL_ACTION_PARAMETER_CONTRACTS,\n PM_TOOL_PARAMETERS_SCHEMA_VERSION,\n PM_TOOL_PARAMETERS_SCHEMA_MAJOR,\n PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION,\n PM_TOOL_PARAMETERS_SCHEMA,\n PM_PROVIDER_TOOL_PARAMETERS_SCHEMA,\n _testOnlyCliContracts,\n} from \"./cli-contracts/tool-schema.js\";\n"],"names":[],"mappings":";;AAgBA,OAAO,EACL,0CAA0C,EAC1C,0CAA0C,EAC1C,yCAAyC,EACzC,sCAAsC,EACtC,sCAAsC,EACtC,wCAAwC,EACxC,kCAAkC,EAClC,mCAAmC,EACnC,mCAAmC,GACpC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,8CAA8C,EAC9C,4CAA4C,EAC5C,wCAAwC,EACxC,8CAA8C,EAC9C,4CAA4C,EAC5C,wCAAwC,GACzC,MAAM,+CAA+C,CAAC;AACvD,+EAA+E;AAC/E,6EAA6E;AAC7E,+EAA+E;AAC/E,iEAAiE;AACjE,OAAO,EACL,iCAAiC,EACjC,mCAAmC,EACnC,kCAAkC,EAClC,iCAAiC,EACjC,sCAAsC,EACtC,qCAAqC,EACrC,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,+BAA+B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,kCAAkC,GACnC,MAAM,mCAAmC,CAAC;AAU3C,OAAO,EACL,iCAAiC,EACjC,+BAA+B,EAC/B,mCAAmC,EACnC,0CAA0C,EAC1C,4BAA4B,EAC5B,4BAA4B,EAC5B,wCAAwC,EACxC,uCAAuC,EACvC,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,0CAA0C,CAAC;AAKlD,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,gCAAgC,EAChC,qBAAqB,EACrB,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,6BAA6B,EAC7B,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,8BAA8B,EAC9B,6BAA6B,EAC7B,sBAAsB,EACtB,2BAA2B,EAC3B,gCAAgC,EAChC,kCAAkC,EAClC,gCAAgC,EAChC,iCAAiC,EACjC,kCAAkC,EAClC,iCAAiC,EACjC,mCAAmC,EACnC,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,gCAAgC,EAChC,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,wCAAwC,EACxC,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,kCAAkC,EAClC,iCAAiC,EACjC,+BAA+B,EAC/B,0CAA0C,EAC1C,yBAAyB,EACzB,kCAAkC,EAClC,qBAAqB,GACtB,MAAM,gCAAgC,CAAC","debugId":"d945b6b1-da70-5142-a422-e20888faafaa"}
1
+ {"version":3,"file":"cli-contracts.js","sources":["sdk/cli-contracts.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/cli-contracts\n *\n * Public barrel for the pm CLI/MCP contract surface. Re-exports the public\n * members of the focused sibling modules — Commander option contracts,\n * enum/guard contracts, MCP tool option contracts, per-command flag contracts,\n * and the tool-parameter JSON Schemas — so existing import sites (sdk/index.ts,\n * mcp/server.ts, commands/contracts.ts, completion.ts, …) keep importing\n * everything from \"./cli-contracts.js\" unchanged. (The raw tool-parameter\n * property/metadata tables stay internal to tool-schema and are not surfaced\n * here.)\n */\nexport type {\n CommanderOptionAliasContract,\n CommanderOptionRegistrationContract,\n} from \"./cli-contracts/commander-types.js\";\nexport { EXECUTABLE_COMMAND_ALIASES } from \"./cli-contracts/command-aliases.js\";\nexport {\n ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS,\n CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS,\n CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n LIST_COMMANDER_STRING_OPTION_CONTRACTS,\n NEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n SEARCH_COMMANDER_STRING_OPTION_CONTRACTS,\n readFirstValueFromCommanderOptions,\n readFirstStringFromCommanderOptions,\n readStringArrayFromCommanderOptions,\n} from \"./cli-contracts/commander-types.js\";\nexport {\n CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS,\n CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n CREATE_COMMANDER_STRING_OPTION_CONTRACTS,\n UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS,\n UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n UPDATE_COMMANDER_STRING_OPTION_CONTRACTS,\n} from \"./cli-contracts/commander-mutation-options.js\";\n// PM_* enum/guard contracts and the bulk tool-parameter property/metadata data\n// tables live in sibling modules and are re-exported here so existing import\n// sites (sdk/index.ts, mcp/server.ts, commands/contracts.ts, completion.ts, …)\n// keep importing everything from \"./cli-contracts.js\" unchanged.\nexport {\n PM_EXTENSION_CAPABILITY_CONTRACTS,\n PM_EXTENSION_SERVICE_NAME_CONTRACTS,\n PM_EXTENSION_POLICY_MODE_CONTRACTS,\n PM_EXTENSION_TRUST_MODE_CONTRACTS,\n PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS,\n PM_EXTENSION_POLICY_SURFACE_CONTRACTS,\n PM_CORE_COMMAND_NAMES,\n PM_TOOL_ACTIONS,\n isPmToolAction,\n isPmExtensionCapabilityContract,\n isPmExtensionServiceNameContract,\n isPmExtensionPolicyModeContract,\n isPmExtensionPolicySurfaceContract,\n} from \"./cli-contracts/enum-contracts.js\";\nexport type {\n PmExtensionCapabilityContract,\n PmExtensionServiceNameContract,\n PmExtensionPolicyModeContract,\n PmExtensionTrustModeContract,\n PmExtensionSandboxProfileContract,\n PmExtensionPolicySurfaceContract,\n PmToolAction,\n} from \"./cli-contracts/enum-contracts.js\";\nexport {\n TOOL_LIST_FILTER_OPTION_CONTRACTS,\n TOOL_AGGREGATE_OPTION_CONTRACTS,\n TOOL_SEARCH_FILTER_OPTION_CONTRACTS,\n TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS,\n TOOL_CREATE_OPTION_CONTRACTS,\n TOOL_UPDATE_OPTION_CONTRACTS,\n TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS,\n TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS,\n TOOL_CALENDAR_OPTION_CONTRACTS,\n TOOL_ACTIVITY_OPTION_CONTRACTS,\n TOOL_CONTEXT_OPTION_CONTRACTS,\n TOOL_DEPS_OPTION_CONTRACTS,\n} from \"./cli-contracts/tool-option-contracts.js\";\nexport type {\n CliFlagContract,\n ToolOptionFlagContract,\n} from \"./cli-contracts/flag-contracts.js\";\nexport {\n withFlagAliasMetadata,\n compactFlagAliasContracts,\n SUBCOMMAND_GLOBAL_FLAG_CONTRACTS,\n GLOBAL_FLAG_CONTRACTS,\n LIST_FILTER_FLAG_CONTRACTS,\n AGGREGATE_FLAG_CONTRACTS,\n COMMENTS_FLAG_CONTRACTS,\n NOTES_FLAG_CONTRACTS,\n LEARNINGS_FLAG_CONTRACTS,\n FILES_FLAG_CONTRACTS,\n DOCS_FLAG_CONTRACTS,\n HISTORY_FLAG_CONTRACTS,\n HISTORY_REDACT_FLAG_CONTRACTS,\n HISTORY_REPAIR_FLAG_CONTRACTS,\n HISTORY_COMPACT_FLAG_CONTRACTS,\n SCHEMA_FLAG_CONTRACTS,\n PROFILE_FLAG_CONTRACTS,\n PLAN_FLAG_CONTRACTS,\n INIT_FLAG_CONTRACTS,\n CONFIG_FLAG_CONTRACTS,\n EXTENSION_FLAG_CONTRACTS,\n EXTENSION_SCOPE_FLAG_CONTRACTS,\n EXTENSION_INIT_FLAG_CONTRACTS,\n PACKAGE_FLAG_CONTRACTS,\n PACKAGE_INIT_FLAG_CONTRACTS,\n EXTENSION_INSTALL_FLAG_CONTRACTS,\n EXTENSION_UNINSTALL_FLAG_CONTRACTS,\n EXTENSION_EXPLORE_FLAG_CONTRACTS,\n EXTENSION_DESCRIBE_FLAG_CONTRACTS,\n EXTENSION_ADOPT_ALL_FLAG_CONTRACTS,\n EXTENSION_ACTIVATE_FLAG_CONTRACTS,\n EXTENSION_DEACTIVATE_FLAG_CONTRACTS,\n EXTENSION_MANAGE_FLAG_CONTRACTS,\n EXTENSION_RELOAD_FLAG_CONTRACTS,\n EXTENSION_DOCTOR_FLAG_CONTRACTS,\n EXTENSION_CATALOG_FLAG_CONTRACTS,\n EXTENSION_ADOPT_FLAG_CONTRACTS,\n INSTALL_FLAG_CONTRACTS,\n UPGRADE_FLAG_CONTRACTS,\n REINDEX_FLAG_CONTRACTS,\n CLOSE_FLAG_CONTRACTS,\n CLOSE_MANY_FLAG_CONTRACTS,\n APPEND_FLAG_CONTRACTS,\n CLAIM_FLAG_CONTRACTS,\n RESTORE_FLAG_CONTRACTS,\n DELETE_FLAG_CONTRACTS,\n RELEASE_FLAG_CONTRACTS,\n START_TASK_FLAG_CONTRACTS,\n PAUSE_TASK_FLAG_CONTRACTS,\n CLOSE_TASK_FLAG_CONTRACTS,\n MEET_FLAG_CONTRACTS,\n EVENT_FLAG_CONTRACTS,\n REMIND_FLAG_CONTRACTS,\n TEST_FLAG_CONTRACTS,\n TEST_ALL_FLAG_CONTRACTS,\n TELEMETRY_FLAG_CONTRACTS,\n TEST_RUNS_FLAG_CONTRACTS,\n GC_FLAG_CONTRACTS,\n STATS_FLAG_CONTRACTS,\n HEALTH_FLAG_CONTRACTS,\n VALIDATE_FLAG_CONTRACTS,\n CREATE_FLAG_CONTRACTS,\n COPY_FLAG_CONTRACTS,\n FOCUS_FLAG_CONTRACTS,\n UPDATE_FLAG_CONTRACTS,\n UPDATE_MANY_FLAG_CONTRACTS,\n CALENDAR_FLAG_CONTRACTS,\n ACTIVITY_FLAG_CONTRACTS,\n CONTEXT_FLAG_CONTRACTS,\n GET_FLAG_CONTRACTS,\n GUIDE_FLAG_CONTRACTS,\n DEPS_FLAG_CONTRACTS,\n EVAL_FLAG_CONTRACTS,\n NEXT_FLAG_CONTRACTS,\n SEARCH_FLAG_CONTRACTS,\n CONTRACTS_FLAG_CONTRACTS,\n COMPLETION_FLAG_CONTRACTS,\n resolveSubcommandFlagContractsForCommand,\n toCompletionFlagString,\n} from \"./cli-contracts/flag-contracts.js\";\nexport type { PmActionSchemaContract } from \"./cli-contracts/tool-schema.js\";\nexport {\n PM_TOOL_ACTION_PARAMETER_CONTRACTS,\n PM_TOOL_PARAMETERS_SCHEMA_VERSION,\n PM_TOOL_PARAMETERS_SCHEMA_MAJOR,\n PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION,\n PM_TOOL_PARAMETERS_SCHEMA,\n PM_PROVIDER_TOOL_PARAMETERS_SCHEMA,\n _testOnlyCliContracts,\n} from \"./cli-contracts/tool-schema.js\";\n"],"names":[],"mappings":";;AAgBA,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EACL,0CAA0C,EAC1C,0CAA0C,EAC1C,yCAAyC,EACzC,sCAAsC,EACtC,sCAAsC,EACtC,wCAAwC,EACxC,kCAAkC,EAClC,mCAAmC,EACnC,mCAAmC,GACpC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,8CAA8C,EAC9C,4CAA4C,EAC5C,wCAAwC,EACxC,8CAA8C,EAC9C,4CAA4C,EAC5C,wCAAwC,GACzC,MAAM,+CAA+C,CAAC;AACvD,+EAA+E;AAC/E,6EAA6E;AAC7E,+EAA+E;AAC/E,iEAAiE;AACjE,OAAO,EACL,iCAAiC,EACjC,mCAAmC,EACnC,kCAAkC,EAClC,iCAAiC,EACjC,sCAAsC,EACtC,qCAAqC,EACrC,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,+BAA+B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,kCAAkC,GACnC,MAAM,mCAAmC,CAAC;AAU3C,OAAO,EACL,iCAAiC,EACjC,+BAA+B,EAC/B,mCAAmC,EACnC,0CAA0C,EAC1C,4BAA4B,EAC5B,4BAA4B,EAC5B,wCAAwC,EACxC,uCAAuC,EACvC,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,0CAA0C,CAAC;AAKlD,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,gCAAgC,EAChC,qBAAqB,EACrB,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,6BAA6B,EAC7B,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,8BAA8B,EAC9B,6BAA6B,EAC7B,sBAAsB,EACtB,2BAA2B,EAC3B,gCAAgC,EAChC,kCAAkC,EAClC,gCAAgC,EAChC,iCAAiC,EACjC,kCAAkC,EAClC,iCAAiC,EACjC,mCAAmC,EACnC,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,gCAAgC,EAChC,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,wCAAwC,EACxC,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,kCAAkC,EAClC,iCAAiC,EACjC,+BAA+B,EAC/B,0CAA0C,EAC1C,yBAAyB,EACzB,kCAAkC,EAClC,qBAAqB,GACtB,MAAM,gCAAgC,CAAC","debugId":"03628345-205e-5ae0-9a16-1f47628ea7af"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module sdk/cli-program
3
+ *
4
+ * Builds the reusable Commander root that embeds pm's universal global contracts.
5
+ */
6
+ import { Command } from "commander";
7
+ /** Create a fresh pm root program suitable for one-shot CLI or embedded hosts. */
8
+ export declare function createPmCliProgram(version: string): Command;
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @module sdk/cli-program
3
+ *
4
+ * Builds the reusable Commander root that embeds pm's universal global contracts.
5
+ */
6
+
7
+ !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]="91531f42-f413-5b2b-8366-76068aade412")}catch(e){}}();
8
+ import { Command } from "commander";
9
+ import { writeStdout } from "../core/output/output.js";
10
+ /** Create a fresh pm root program suitable for one-shot CLI or embedded hosts. */
11
+ export function createPmCliProgram(version) {
12
+ return new Command()
13
+ .name("pm")
14
+ .description("Universal, flexible, extensible, agent-optimized project management CLI for any project or programming language.")
15
+ .version(version)
16
+ .showHelpAfterError(false)
17
+ .allowExcessArguments(false)
18
+ .allowUnknownOption(false)
19
+ .configureOutput({
20
+ writeOut: (value) => {
21
+ writeStdout(value);
22
+ },
23
+ writeErr: () => { },
24
+ })
25
+ .option("--json", "Output JSON instead of TOON")
26
+ .option("--quiet", "Suppress stdout output")
27
+ .option("--no-changed-fields", "Omit the changed_fields array from mutation output (keeps changed_field_count)")
28
+ .option("--id-only", "Print only id and status for single-item mutation output")
29
+ .option("--pm-path <dir>", "Explicit tracker storage path for this command (preferred over --path)")
30
+ .option("--path <dir>", "Backward-compatible alias for --pm-path; this is the tracker storage path, not a workspace cwd")
31
+ .option("--no-extensions", "Disable extension loading")
32
+ .option("--no-pager", "Disable pager integration for help and long output")
33
+ .option("--explain", "Render extended rationale and examples in help output")
34
+ .option("--profile", "Print deterministic timing diagnostics")
35
+ .option("--author <id>", "Override mutation author for this invocation")
36
+ .exitOverride();
37
+ }
38
+ //# sourceMappingURL=cli-program.js.map
39
+ //# debugId=91531f42-f413-5b2b-8366-76068aade412
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-program.js","sources":["sdk/cli-program.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/cli-program\n *\n * Builds the reusable Commander root that embeds pm's universal global contracts.\n */\nimport { Command } from \"commander\";\nimport { writeStdout } from \"../core/output/output.js\";\n\n/** Create a fresh pm root program suitable for one-shot CLI or embedded hosts. */\nexport function createPmCliProgram(version: string): Command {\n return new Command()\n .name(\"pm\")\n .description(\n \"Universal, flexible, extensible, agent-optimized project management CLI for any project or programming language.\",\n )\n .version(version)\n .showHelpAfterError(false)\n .allowExcessArguments(false)\n .allowUnknownOption(false)\n .configureOutput({\n writeOut: (value) => {\n writeStdout(value);\n },\n writeErr: () => {},\n })\n .option(\"--json\", \"Output JSON instead of TOON\")\n .option(\"--quiet\", \"Suppress stdout output\")\n .option(\n \"--no-changed-fields\",\n \"Omit the changed_fields array from mutation output (keeps changed_field_count)\",\n )\n .option(\n \"--id-only\",\n \"Print only id and status for single-item mutation output\",\n )\n .option(\n \"--pm-path <dir>\",\n \"Explicit tracker storage path for this command (preferred over --path)\",\n )\n .option(\n \"--path <dir>\",\n \"Backward-compatible alias for --pm-path; this is the tracker storage path, not a workspace cwd\",\n )\n .option(\"--no-extensions\", \"Disable extension loading\")\n .option(\"--no-pager\", \"Disable pager integration for help and long output\")\n .option(\n \"--explain\",\n \"Render extended rationale and examples in help output\",\n )\n .option(\"--profile\", \"Print deterministic timing diagnostics\")\n .option(\"--author <id>\", \"Override mutation author for this invocation\")\n .exitOverride();\n}\n"],"names":[],"mappings":"AAAA;;;;GAIG;;;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,kFAAkF;AAClF,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,OAAO,IAAI,OAAO,EAAE;SACjB,IAAI,CAAC,IAAI,CAAC;SACV,WAAW,CACV,kHAAkH,CACnH;SACA,OAAO,CAAC,OAAO,CAAC;SAChB,kBAAkB,CAAC,KAAK,CAAC;SACzB,oBAAoB,CAAC,KAAK,CAAC;SAC3B,kBAAkB,CAAC,KAAK,CAAC;SACzB,eAAe,CAAC;QACf,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YAClB,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;KACnB,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE,6BAA6B,CAAC;SAC/C,MAAM,CAAC,SAAS,EAAE,wBAAwB,CAAC;SAC3C,MAAM,CACL,qBAAqB,EACrB,gFAAgF,CACjF;SACA,MAAM,CACL,WAAW,EACX,0DAA0D,CAC3D;SACA,MAAM,CACL,iBAAiB,EACjB,wEAAwE,CACzE;SACA,MAAM,CACL,cAAc,EACd,gGAAgG,CACjG;SACA,MAAM,CAAC,iBAAiB,EAAE,2BAA2B,CAAC;SACtD,MAAM,CAAC,YAAY,EAAE,oDAAoD,CAAC;SAC1E,MAAM,CACL,WAAW,EACX,uDAAuD,CACxD;SACA,MAAM,CAAC,WAAW,EAAE,wCAAwC,CAAC;SAC7D,MAAM,CAAC,eAAe,EAAE,8CAA8C,CAAC;SACvE,YAAY,EAAE,CAAC;AACpB,CAAC","debugId":"91531f42-f413-5b2b-8366-76068aade412"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @module sdk/command-line
3
+ *
4
+ * Renders copy-safe pm command suggestions for SDK and CLI diagnostics.
5
+ */
6
+ /** Quote one Windows argument with the linear CommandLineToArgvW escaping algorithm. */
7
+ export declare const quoteWindowsCommandArg: (arg: string) => string;
8
+ /** Quote one command argument only when platform shell-significant characters require it. */
9
+ export declare const quoteCommandArg: (arg: string, platform?: NodeJS.Platform) => string;
10
+ /** Render a complete pm command from already-tokenized arguments. */
11
+ export declare const renderPmCommand: (argv: string[], platform?: NodeJS.Platform) => string;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * @module sdk/command-line
3
+ *
4
+ * Renders copy-safe pm command suggestions for SDK and CLI diagnostics.
5
+ */
6
+ /** Quote one Windows argument with the linear CommandLineToArgvW escaping algorithm. */
7
+
8
+ !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]="82ea8f22-efe9-5310-9fc7-a373063b7f0b")}catch(e){}}();
9
+ export const quoteWindowsCommandArg = (arg) => {
10
+ let escaped = '"';
11
+ let pendingBackslashes = 0;
12
+ for (const character of arg) {
13
+ if (character === "\\") {
14
+ pendingBackslashes += 1;
15
+ continue;
16
+ }
17
+ escaped += "\\".repeat(character === '"' ? pendingBackslashes * 2 + 1 : pendingBackslashes);
18
+ escaped += character;
19
+ pendingBackslashes = 0;
20
+ }
21
+ return `${escaped}${"\\".repeat(pendingBackslashes * 2)}"`;
22
+ };
23
+ /** Quote one command argument only when platform shell-significant characters require it. */
24
+ export const quoteCommandArg = (arg, platform = process.platform) => {
25
+ const safePattern = platform === "win32" ? /^[A-Za-z0-9._:/\\@=-]+$/ : /^[A-Za-z0-9._:/@=-]+$/;
26
+ if (safePattern.test(arg)) {
27
+ return arg;
28
+ }
29
+ if (platform === "win32") {
30
+ return quoteWindowsCommandArg(arg);
31
+ }
32
+ return `"${arg.replace(/(["\\$`])/g, "\\$1")}"`;
33
+ };
34
+ /** Render a complete pm command from already-tokenized arguments. */
35
+ export const renderPmCommand = (argv, platform = process.platform) => {
36
+ const args = argv.map((token) => quoteCommandArg(token, platform)).join(" ");
37
+ return args.length > 0 ? `pm ${args}` : "pm";
38
+ };
39
+ //# sourceMappingURL=command-line.js.map
40
+ //# debugId=82ea8f22-efe9-5310-9fc7-a373063b7f0b
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-line.js","sources":["sdk/command-line.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/command-line\n *\n * Renders copy-safe pm command suggestions for SDK and CLI diagnostics.\n */\n\n/** Quote one Windows argument with the linear CommandLineToArgvW escaping algorithm. */\nexport const quoteWindowsCommandArg = (arg: string): string => {\n let escaped = '\"';\n let pendingBackslashes = 0;\n for (const character of arg) {\n if (character === \"\\\\\") {\n pendingBackslashes += 1;\n continue;\n }\n escaped += \"\\\\\".repeat(\n character === '\"' ? pendingBackslashes * 2 + 1 : pendingBackslashes,\n );\n escaped += character;\n pendingBackslashes = 0;\n }\n return `${escaped}${\"\\\\\".repeat(pendingBackslashes * 2)}\"`;\n};\n\n/** Quote one command argument only when platform shell-significant characters require it. */\nexport const quoteCommandArg = (\n arg: string,\n platform: NodeJS.Platform = process.platform,\n): string => {\n const safePattern =\n platform === \"win32\" ? /^[A-Za-z0-9._:/\\\\@=-]+$/ : /^[A-Za-z0-9._:/@=-]+$/;\n if (safePattern.test(arg)) {\n return arg;\n }\n if (platform === \"win32\") {\n return quoteWindowsCommandArg(arg);\n }\n return `\"${arg.replace(/([\"\\\\$`])/g, \"\\\\$1\")}\"`;\n};\n\n/** Render a complete pm command from already-tokenized arguments. */\nexport const renderPmCommand = (\n argv: string[],\n platform: NodeJS.Platform = process.platform,\n): string => {\n const args = argv.map((token) => quoteCommandArg(token, platform)).join(\" \");\n return args.length > 0 ? `pm ${args}` : \"pm\";\n};\n"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wFAAwF;;;AACxF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAW,EAAU,EAAE;IAC5D,IAAI,OAAO,GAAG,GAAG,CAAC;IAClB,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,KAAK,MAAM,SAAS,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,kBAAkB,IAAI,CAAC,CAAC;YACxB,SAAS;QACX,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,MAAM,CACpB,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,kBAAkB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CACpE,CAAC;QACF,OAAO,IAAI,SAAS,CAAC;QACrB,kBAAkB,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAC,GAAG,CAAC;AAC7D,CAAC,CAAC;AAEF,6FAA6F;AAC7F,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,GAAW,EACX,WAA4B,OAAO,CAAC,QAAQ,EACpC,EAAE;IACV,MAAM,WAAW,GACf,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,uBAAuB,CAAC;IAC7E,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC;AAClD,CAAC,CAAC;AAEF,qEAAqE;AACrE,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,IAAc,EACd,WAA4B,OAAO,CAAC,QAAQ,EACpC,EAAE;IACV,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7E,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/C,CAAC,CAAC","debugId":"82ea8f22-efe9-5310-9fc7-a373063b7f0b"}