@unbrained/pm-cli 2026.7.1 → 2026.7.2

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 (563) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cli/commander-usage.d.ts +2 -0
  3. package/dist/cli/commander-usage.js +58 -47
  4. package/dist/cli/commander-usage.js.map +1 -1
  5. package/dist/cli/commands/aggregate.js +102 -79
  6. package/dist/cli/commands/aggregate.js.map +1 -1
  7. package/dist/cli/commands/calendar.js +278 -243
  8. package/dist/cli/commands/calendar.js.map +1 -1
  9. package/dist/cli/commands/close-many.js +89 -68
  10. package/dist/cli/commands/close-many.js.map +1 -1
  11. package/dist/cli/commands/close.js +157 -129
  12. package/dist/cli/commands/close.js.map +1 -1
  13. package/dist/cli/commands/comments-audit.js +50 -42
  14. package/dist/cli/commands/comments-audit.js.map +1 -1
  15. package/dist/cli/commands/config.d.ts +2 -0
  16. package/dist/cli/commands/config.js +443 -879
  17. package/dist/cli/commands/config.js.map +1 -1
  18. package/dist/cli/commands/context.js +365 -287
  19. package/dist/cli/commands/context.js.map +1 -1
  20. package/dist/cli/commands/contracts.js +352 -238
  21. package/dist/cli/commands/contracts.js.map +1 -1
  22. package/dist/cli/commands/dedupe-audit.js +46 -39
  23. package/dist/cli/commands/dedupe-audit.js.map +1 -1
  24. package/dist/cli/commands/dedupe-merge.js +88 -69
  25. package/dist/cli/commands/dedupe-merge.js.map +1 -1
  26. package/dist/cli/commands/get.js +114 -81
  27. package/dist/cli/commands/get.js.map +1 -1
  28. package/dist/cli/commands/health.d.ts +17 -0
  29. package/dist/cli/commands/health.js +446 -307
  30. package/dist/cli/commands/health.js.map +1 -1
  31. package/dist/cli/commands/history-compact.js +209 -140
  32. package/dist/cli/commands/history-compact.js.map +1 -1
  33. package/dist/cli/commands/history-redact.js +162 -119
  34. package/dist/cli/commands/history-redact.js.map +1 -1
  35. package/dist/cli/commands/history-repair.js +120 -85
  36. package/dist/cli/commands/history-repair.js.map +1 -1
  37. package/dist/cli/commands/init.d.ts +8 -2
  38. package/dist/cli/commands/init.js +263 -162
  39. package/dist/cli/commands/init.js.map +1 -1
  40. package/dist/cli/commands/list.js +152 -102
  41. package/dist/cli/commands/list.js.map +1 -1
  42. package/dist/cli/commands/next.js +49 -32
  43. package/dist/cli/commands/next.js.map +1 -1
  44. package/dist/cli/commands/plan.js +373 -298
  45. package/dist/cli/commands/plan.js.map +1 -1
  46. package/dist/cli/commands/recurrence-parsers.js +43 -25
  47. package/dist/cli/commands/recurrence-parsers.js.map +1 -1
  48. package/dist/cli/commands/reindex.d.ts +21 -5
  49. package/dist/cli/commands/reindex.js +345 -205
  50. package/dist/cli/commands/reindex.js.map +1 -1
  51. package/dist/cli/commands/restore.d.ts +8 -7
  52. package/dist/cli/commands/restore.js +105 -69
  53. package/dist/cli/commands/restore.js.map +1 -1
  54. package/dist/cli/commands/schema.js +33 -30
  55. package/dist/cli/commands/schema.js.map +1 -1
  56. package/dist/cli/commands/search.d.ts +10 -2
  57. package/dist/cli/commands/search.js +503 -470
  58. package/dist/cli/commands/search.js.map +1 -1
  59. package/dist/cli/commands/telemetry.js +98 -87
  60. package/dist/cli/commands/telemetry.js.map +1 -1
  61. package/dist/cli/commands/test-all.js +237 -168
  62. package/dist/cli/commands/test-all.js.map +1 -1
  63. package/dist/cli/commands/test.d.ts +6 -5
  64. package/dist/cli/commands/test.js +424 -344
  65. package/dist/cli/commands/test.js.map +1 -1
  66. package/dist/cli/commands/update-many.js +57 -42
  67. package/dist/cli/commands/update-many.js.map +1 -1
  68. package/dist/cli/commands/update.d.ts +1 -1
  69. package/dist/cli/commands/update.js +738 -671
  70. package/dist/cli/commands/update.js.map +1 -1
  71. package/dist/cli/commands/validate.d.ts +18 -1
  72. package/dist/cli/commands/validate.js +466 -343
  73. package/dist/cli/commands/validate.js.map +1 -1
  74. package/dist/cli/error-guidance.js +399 -357
  75. package/dist/cli/error-guidance.js.map +1 -1
  76. package/dist/cli/main.d.ts +47 -0
  77. package/dist/cli/main.js +428 -341
  78. package/dist/cli/main.js.map +1 -1
  79. package/dist/cli/migration-gates.js +22 -45
  80. package/dist/cli/migration-gates.js.map +1 -1
  81. package/dist/cli/register-list-query.js +94 -105
  82. package/dist/cli/register-list-query.js.map +1 -1
  83. package/dist/cli/register-mutation.js +400 -416
  84. package/dist/cli/register-mutation.js.map +1 -1
  85. package/dist/cli/register-operations.js +86 -66
  86. package/dist/cli/register-operations.js.map +1 -1
  87. package/dist/cli/register-setup.js +120 -101
  88. package/dist/cli/register-setup.js.map +1 -1
  89. package/dist/cli-bundle/chunks/{activity-DBLQVIP6.js → activity-CUC4JY3U.js} +9 -9
  90. package/dist/cli-bundle/chunks/activity-WEIEMM73.js +16 -0
  91. package/dist/cli-bundle/chunks/{aggregate-JTEF4BP7.js → aggregate-DKUTRY6R.js} +108 -84
  92. package/dist/cli-bundle/chunks/aggregate-DKUTRY6R.js.map +1 -0
  93. package/dist/cli-bundle/chunks/{aggregate-SDF7DUOD.js → aggregate-SW5PNGCS.js} +107 -83
  94. package/dist/cli-bundle/chunks/{aggregate-SDF7DUOD.js.map → aggregate-SW5PNGCS.js.map} +2 -2
  95. package/dist/cli-bundle/chunks/{append-QCFJSDFL.js → append-H32VOR2Y.js} +6 -6
  96. package/dist/cli-bundle/chunks/{append-LOVPGVPT.js → append-UBM632FK.js} +6 -6
  97. package/dist/cli-bundle/chunks/{chunk-RLDHZHQS.js → chunk-2227673O.js} +158 -114
  98. package/dist/cli-bundle/chunks/chunk-2227673O.js.map +1 -0
  99. package/dist/cli-bundle/chunks/{chunk-SLMUGTK3.js → chunk-2ASNV4DH.js} +4 -4
  100. package/dist/cli-bundle/chunks/{chunk-UZIWVBE6.js → chunk-2CHRYUXL.js} +2 -2
  101. package/dist/cli-bundle/chunks/{chunk-NWMZWYYB.js → chunk-2KWL5NPW.js} +42 -27
  102. package/dist/cli-bundle/chunks/chunk-2KWL5NPW.js.map +1 -0
  103. package/dist/cli-bundle/chunks/{chunk-NFDPYAIP.js → chunk-36UGKF4O.js} +21 -29
  104. package/dist/cli-bundle/chunks/chunk-36UGKF4O.js.map +7 -0
  105. package/dist/cli-bundle/chunks/{chunk-NU2UEROZ.js → chunk-3AZUFQK6.js} +6 -6
  106. package/dist/cli-bundle/chunks/{chunk-LB6TP6MC.js → chunk-3LCUASYG.js} +2 -2
  107. package/dist/cli-bundle/chunks/{chunk-HPPFYYOV.js → chunk-3Q2HBMTI.js} +2 -2
  108. package/dist/cli-bundle/chunks/{chunk-IPYBJWTE.js → chunk-4NUOWFBT.js} +109 -72
  109. package/dist/cli-bundle/chunks/chunk-4NUOWFBT.js.map +7 -0
  110. package/dist/cli-bundle/chunks/{chunk-W4ULYO7Z.js → chunk-55XRYWEG.js} +6 -6
  111. package/dist/cli-bundle/chunks/{chunk-HXTQJXWT.js → chunk-5GVTFFTC.js} +2 -2
  112. package/dist/cli-bundle/chunks/{chunk-BDTISOSD.js → chunk-5PGBHRY3.js} +41 -26
  113. package/dist/cli-bundle/chunks/chunk-5PGBHRY3.js.map +7 -0
  114. package/dist/cli-bundle/chunks/{chunk-YITK2PJ6.js → chunk-66Z3X7ZG.js} +261 -161
  115. package/dist/cli-bundle/chunks/chunk-66Z3X7ZG.js.map +7 -0
  116. package/dist/cli-bundle/chunks/{chunk-NUHHPVVS.js → chunk-6ITZLD4T.js} +712 -612
  117. package/dist/cli-bundle/chunks/chunk-6ITZLD4T.js.map +7 -0
  118. package/dist/cli-bundle/chunks/{chunk-V3NOKJF2.js → chunk-6YCYF2AI.js} +262 -162
  119. package/dist/cli-bundle/chunks/chunk-6YCYF2AI.js.map +1 -0
  120. package/dist/cli-bundle/chunks/{chunk-BZCEN4JA.js → chunk-6ZMBJRDJ.js} +492 -403
  121. package/dist/cli-bundle/chunks/chunk-6ZMBJRDJ.js.map +7 -0
  122. package/dist/cli-bundle/chunks/{chunk-CF7RL6FR.js → chunk-7MYWF4ZX.js} +110 -73
  123. package/dist/cli-bundle/chunks/chunk-7MYWF4ZX.js.map +1 -0
  124. package/dist/cli-bundle/chunks/{chunk-RVUALSJF.js → chunk-7NSPKJUS.js} +356 -285
  125. package/dist/cli-bundle/chunks/chunk-7NSPKJUS.js.map +7 -0
  126. package/dist/cli-bundle/chunks/{chunk-4DSGXSBL.js → chunk-7TH5NMVB.js} +95 -53
  127. package/dist/cli-bundle/chunks/chunk-7TH5NMVB.js.map +7 -0
  128. package/dist/cli-bundle/chunks/{chunk-ZETXE4SE.js → chunk-7W4H4K26.js} +713 -613
  129. package/dist/cli-bundle/chunks/chunk-7W4H4K26.js.map +1 -0
  130. package/dist/cli-bundle/chunks/{chunk-64HNBBFQ.js → chunk-A6VOGKBA.js} +6 -6
  131. package/dist/cli-bundle/chunks/{chunk-WYDHYJPO.js → chunk-AIAIXG7I.js} +2 -2
  132. package/dist/cli-bundle/chunks/{chunk-CWFNTKQJ.js → chunk-AJEBCRIY.js} +5 -5
  133. package/dist/cli-bundle/chunks/{chunk-VZDBVEZR.js → chunk-B4O5S7I3.js} +79 -57
  134. package/dist/cli-bundle/chunks/{chunk-VZDBVEZR.js.map → chunk-B4O5S7I3.js.map} +2 -2
  135. package/dist/cli-bundle/chunks/{chunk-NOLPZMSV.js → chunk-BTX5MIQF.js} +2 -2
  136. package/dist/cli-bundle/chunks/{chunk-RH5ZBYFD.js → chunk-BVZZN2LH.js} +3 -3
  137. package/dist/cli-bundle/chunks/{chunk-27BXPBAY.js → chunk-CYBDUHNO.js} +3 -3
  138. package/dist/cli-bundle/chunks/{chunk-A7FPBAQS.js → chunk-CZPVDLD2.js} +4 -4
  139. package/dist/cli-bundle/chunks/{chunk-3VGN2UWE.js → chunk-EMPGXBUF.js} +22 -30
  140. package/dist/cli-bundle/chunks/chunk-EMPGXBUF.js.map +1 -0
  141. package/dist/cli-bundle/chunks/{chunk-JPECA746.js → chunk-EUKTMRN3.js} +2 -2
  142. package/dist/cli-bundle/chunks/{chunk-2466X6E4.js → chunk-FFOQHGNH.js} +6 -6
  143. package/dist/cli-bundle/chunks/{chunk-JLM7BHI7.js → chunk-GFMSLORL.js} +6 -6
  144. package/dist/cli-bundle/chunks/{chunk-SDR5J34Q.js → chunk-GRRG3MCT.js} +4 -4
  145. package/dist/cli-bundle/chunks/{chunk-GJ326ZKX.js → chunk-H4GRLYJS.js} +3 -3
  146. package/dist/cli-bundle/chunks/{chunk-OGXLACHC.js → chunk-HQTPRV4D.js} +6 -6
  147. package/dist/cli-bundle/chunks/{chunk-7R4QEMZZ.js → chunk-I66WE2HE.js} +354 -283
  148. package/dist/cli-bundle/chunks/chunk-I66WE2HE.js.map +1 -0
  149. package/dist/cli-bundle/chunks/{chunk-BHO33VBQ.js → chunk-IEEJQCZ4.js} +3 -3
  150. package/dist/cli-bundle/chunks/{chunk-JMP4E6D7.js → chunk-IG5JYZGU.js} +390 -312
  151. package/dist/cli-bundle/chunks/{chunk-JMP4E6D7.js.map → chunk-IG5JYZGU.js.map} +2 -2
  152. package/dist/cli-bundle/chunks/{chunk-4DUVCVLZ.js → chunk-JMK5GCK2.js} +2 -2
  153. package/dist/cli-bundle/chunks/{chunk-3K2M5OYU.js → chunk-JXAUVO6X.js} +258 -169
  154. package/dist/cli-bundle/chunks/{chunk-3K2M5OYU.js.map → chunk-JXAUVO6X.js.map} +2 -2
  155. package/dist/cli-bundle/chunks/{chunk-AXIDKKAT.js → chunk-K2VYLVX4.js} +2 -2
  156. package/dist/cli-bundle/chunks/{chunk-EJUDVUYZ.js → chunk-KCO2EAN5.js} +3 -3
  157. package/dist/cli-bundle/chunks/{chunk-6AQZPVHQ.js → chunk-KIYCOJ63.js} +4 -4
  158. package/dist/cli-bundle/chunks/{chunk-ZRP4VG5U.js → chunk-KLXF7NCC.js} +2 -2
  159. package/dist/cli-bundle/chunks/{chunk-QCWF6IYD.js → chunk-KN3URLKS.js} +3 -3
  160. package/dist/cli-bundle/chunks/{chunk-N74UMG5H.js → chunk-LRKMWUUV.js} +2 -2
  161. package/dist/cli-bundle/chunks/{chunk-AVEE5EHK.js → chunk-LTRAF2D7.js} +3 -3
  162. package/dist/cli-bundle/chunks/{chunk-VARHOHYV.js → chunk-MNBPX5JS.js} +55 -36
  163. package/dist/cli-bundle/chunks/chunk-MNBPX5JS.js.map +7 -0
  164. package/dist/cli-bundle/chunks/{chunk-IJYK2T43.js → chunk-MRD4T5LF.js} +2 -2
  165. package/dist/cli-bundle/chunks/{chunk-G7I7DEZA.js → chunk-N2JSWVWG.js} +4 -4
  166. package/dist/cli-bundle/chunks/{chunk-5QFDBI4F.js → chunk-N3QCJS4M.js} +6 -6
  167. package/dist/cli-bundle/chunks/{chunk-JSU5P7VS.js → chunk-NRZS637N.js} +258 -169
  168. package/dist/cli-bundle/chunks/chunk-NRZS637N.js.map +1 -0
  169. package/dist/cli-bundle/chunks/{chunk-4A3BJ675.js → chunk-OTUJZKGI.js} +3 -3
  170. package/dist/cli-bundle/chunks/{chunk-5CGRF3L5.js → chunk-Q6K2OACU.js} +153 -90
  171. package/dist/cli-bundle/chunks/chunk-Q6K2OACU.js.map +1 -0
  172. package/dist/cli-bundle/chunks/{chunk-3XZCOZ5J.js → chunk-Q6NXOHS6.js} +391 -313
  173. package/dist/cli-bundle/chunks/chunk-Q6NXOHS6.js.map +1 -0
  174. package/dist/cli-bundle/chunks/{chunk-HZZEHPRG.js → chunk-QH3FSKRJ.js} +2 -2
  175. package/dist/cli-bundle/chunks/{chunk-4XOIEKSD.js → chunk-RM37OPYK.js} +56 -37
  176. package/dist/cli-bundle/chunks/chunk-RM37OPYK.js.map +1 -0
  177. package/dist/cli-bundle/chunks/{chunk-NKZAN7BD.js → chunk-S62UANU7.js} +3 -3
  178. package/dist/cli-bundle/chunks/{chunk-RMMQ74TG.js → chunk-SPM2XLWI.js} +37 -28
  179. package/dist/cli-bundle/chunks/chunk-SPM2XLWI.js.map +7 -0
  180. package/dist/cli-bundle/chunks/{chunk-3J6JRJ3I.js → chunk-SYNKD3ZG.js} +5 -5
  181. package/dist/cli-bundle/chunks/{chunk-FFMQB7WR.js → chunk-SYVUU7EK.js} +493 -404
  182. package/dist/cli-bundle/chunks/chunk-SYVUU7EK.js.map +1 -0
  183. package/dist/cli-bundle/chunks/{chunk-UYUYDGIB.js → chunk-TPOFWBMY.js} +95 -53
  184. package/dist/cli-bundle/chunks/chunk-TPOFWBMY.js.map +1 -0
  185. package/dist/cli-bundle/chunks/{chunk-OTUHB4HS.js → chunk-TTHCEV5Q.js} +92 -77
  186. package/dist/cli-bundle/chunks/chunk-TTHCEV5Q.js.map +1 -0
  187. package/dist/cli-bundle/chunks/{chunk-L5OEFZQG.js → chunk-U2BEEM2X.js} +3 -3
  188. package/dist/cli-bundle/chunks/{chunk-KNPEF7QG.js → chunk-UGLU6Q2I.js} +91 -76
  189. package/dist/cli-bundle/chunks/chunk-UGLU6Q2I.js.map +7 -0
  190. package/dist/cli-bundle/chunks/{chunk-EVMTBV6V.js → chunk-UT73HUPC.js} +3 -3
  191. package/dist/cli-bundle/chunks/{chunk-VICZWYGZ.js → chunk-UTSH5GWX.js} +4 -4
  192. package/dist/cli-bundle/chunks/{chunk-IZBR4NRW.js → chunk-UWKEJMZU.js} +157 -113
  193. package/dist/cli-bundle/chunks/chunk-UWKEJMZU.js.map +7 -0
  194. package/dist/cli-bundle/chunks/{chunk-3S2KT7NG.js → chunk-W47SML5B.js} +152 -89
  195. package/dist/cli-bundle/chunks/chunk-W47SML5B.js.map +7 -0
  196. package/dist/cli-bundle/chunks/{chunk-RGEMWD6Q.js → chunk-WJAMWAHZ.js} +157 -118
  197. package/dist/cli-bundle/chunks/chunk-WJAMWAHZ.js.map +7 -0
  198. package/dist/cli-bundle/chunks/{chunk-JWXRETDF.js → chunk-XCHUVHKU.js} +626 -484
  199. package/dist/cli-bundle/chunks/chunk-XCHUVHKU.js.map +1 -0
  200. package/dist/cli-bundle/chunks/{chunk-55SNVXRQ.js → chunk-XEWQKDYZ.js} +626 -484
  201. package/dist/cli-bundle/chunks/chunk-XEWQKDYZ.js.map +7 -0
  202. package/dist/cli-bundle/chunks/{chunk-TP5Q5ZD3.js → chunk-XTHQWXVC.js} +158 -119
  203. package/dist/cli-bundle/chunks/chunk-XTHQWXVC.js.map +1 -0
  204. package/dist/cli-bundle/chunks/{chunk-MDPEOIGN.js → chunk-XWGEMNBR.js} +2 -2
  205. package/dist/cli-bundle/chunks/{chunk-HYTGA6GI.js → chunk-Y4NRKBFW.js} +3 -3
  206. package/dist/cli-bundle/chunks/{chunk-2D4HATP2.js → chunk-YLZZ6T54.js} +38 -29
  207. package/dist/cli-bundle/chunks/chunk-YLZZ6T54.js.map +1 -0
  208. package/dist/cli-bundle/chunks/{chunk-22WKIL3H.js → chunk-YPKFV2JR.js} +6 -6
  209. package/dist/cli-bundle/chunks/{chunk-OKQ22KTH.js → chunk-Z4DGFQDH.js} +80 -58
  210. package/dist/cli-bundle/chunks/{chunk-OKQ22KTH.js.map → chunk-Z4DGFQDH.js.map} +1 -1
  211. package/dist/cli-bundle/chunks/{chunk-DDPTYJIM.js → chunk-ZNHEYCDD.js} +2 -2
  212. package/dist/cli-bundle/chunks/{chunk-MAUKX7JC.js → chunk-ZNT7KEWE.js} +2 -2
  213. package/dist/cli-bundle/chunks/{claim-T3GCKV7C.js → claim-SENTPZBN.js} +8 -8
  214. package/dist/cli-bundle/chunks/{claim-EMQLYPRW.js → claim-Z7MEQCBT.js} +8 -8
  215. package/dist/cli-bundle/chunks/{close-TQYAAFJP.js → close-424MX4CU.js} +7 -7
  216. package/dist/cli-bundle/chunks/close-YCWQQPDS.js +14 -0
  217. package/dist/cli-bundle/chunks/{close-many-LDRVEQY2.js → close-many-2IV4J2TR.js} +102 -81
  218. package/dist/cli-bundle/chunks/close-many-2IV4J2TR.js.map +1 -0
  219. package/dist/cli-bundle/chunks/{close-many-BG5QQIDQ.js → close-many-SWY34BII.js} +101 -80
  220. package/dist/cli-bundle/chunks/close-many-SWY34BII.js.map +7 -0
  221. package/dist/cli-bundle/chunks/{comments-YUXJRZPQ.js → comments-4FGNTSNV.js} +8 -8
  222. package/dist/cli-bundle/chunks/{comments-QCKR2YY2.js → comments-7YS5MY5X.js} +8 -8
  223. package/dist/cli-bundle/chunks/config-BZJKK7FZ.js +1062 -0
  224. package/dist/cli-bundle/chunks/config-BZJKK7FZ.js.map +1 -0
  225. package/dist/cli-bundle/chunks/config-G74GISC4.js +1072 -0
  226. package/dist/cli-bundle/chunks/config-G74GISC4.js.map +7 -0
  227. package/dist/cli-bundle/chunks/{context-OCZ3FJ4Z.js → context-LHVKJSPJ.js} +12 -12
  228. package/dist/cli-bundle/chunks/{context-B6275WPX.js → context-ZQY54JNS.js} +12 -12
  229. package/dist/cli-bundle/chunks/{contracts-HN7ABKLP.js → contracts-CP2EZJC7.js} +320 -199
  230. package/dist/cli-bundle/chunks/contracts-CP2EZJC7.js.map +7 -0
  231. package/dist/cli-bundle/chunks/{contracts-W4FZVVD6.js → contracts-FIZLMP7O.js} +321 -200
  232. package/dist/cli-bundle/chunks/contracts-FIZLMP7O.js.map +1 -0
  233. package/dist/cli-bundle/chunks/{copy-DEM4DATS.js → copy-GYNQQPW2.js} +5 -5
  234. package/dist/cli-bundle/chunks/{copy-BTJOSKKT.js → copy-TLW7JTQT.js} +5 -5
  235. package/dist/cli-bundle/chunks/{create-RLRJMRTM.js → create-VSKYSOCD.js} +12 -12
  236. package/dist/cli-bundle/chunks/create-XTMAPS7I.js +28 -0
  237. package/dist/cli-bundle/chunks/{delete-LSVHAB4Y.js → delete-4W5JYCEG.js} +5 -5
  238. package/dist/cli-bundle/chunks/{delete-BHK7VB2Z.js → delete-ANTOTI2I.js} +5 -5
  239. package/dist/cli-bundle/chunks/{deps-XHYXWEPT.js → deps-HPPE6MJN.js} +5 -5
  240. package/dist/cli-bundle/chunks/{deps-4UDFJRUA.js → deps-ZQZN54EZ.js} +5 -5
  241. package/dist/cli-bundle/chunks/{docs-GYZNVS26.js → docs-RPOVFMP3.js} +7 -7
  242. package/dist/cli-bundle/chunks/{docs-26S44RXU.js → docs-XJNYBJGE.js} +7 -7
  243. package/dist/cli-bundle/chunks/{eval-PGRVIJQU.js → eval-DM6JBZTS.js} +10 -10
  244. package/dist/cli-bundle/chunks/{eval-UYF3ZPVO.js → eval-RFBI5FGS.js} +10 -10
  245. package/dist/cli-bundle/chunks/{extension-CPSLJQVE.js → extension-B3YY4WY5.js} +11 -11
  246. package/dist/cli-bundle/chunks/{extension-CXJ6RELI.js → extension-TTSEFQTS.js} +11 -11
  247. package/dist/cli-bundle/chunks/{files-NQHEXUZD.js → files-5D65CHGE.js} +7 -7
  248. package/dist/cli-bundle/chunks/{files-MBNICQFM.js → files-GPIG77EN.js} +7 -7
  249. package/dist/cli-bundle/chunks/{focus-XZW5423D.js → focus-C3PEJV2C.js} +6 -6
  250. package/dist/cli-bundle/chunks/{focus-DWYIG7GU.js → focus-ZHN7WIGX.js} +6 -6
  251. package/dist/cli-bundle/chunks/{gc-LPVMKJQJ.js → gc-D4JQ6OWN.js} +3 -3
  252. package/dist/cli-bundle/chunks/{gc-7GQYOS2G.js → gc-VZIXDL32.js} +3 -3
  253. package/dist/cli-bundle/chunks/{get-DSDEKJ3L.js → get-GIBRUUOP.js} +121 -81
  254. package/dist/cli-bundle/chunks/get-GIBRUUOP.js.map +1 -0
  255. package/dist/cli-bundle/chunks/{get-A7MAOHCU.js → get-IOVAN6RU.js} +120 -80
  256. package/dist/cli-bundle/chunks/get-IOVAN6RU.js.map +7 -0
  257. package/dist/cli-bundle/chunks/{health-3IPFLKXB.js → health-L2U3AFKV.js} +437 -265
  258. package/dist/cli-bundle/chunks/health-L2U3AFKV.js.map +1 -0
  259. package/dist/cli-bundle/chunks/{health-GZXGBZ36.js → health-MM7AWXYF.js} +436 -264
  260. package/dist/cli-bundle/chunks/health-MM7AWXYF.js.map +7 -0
  261. package/dist/cli-bundle/chunks/history-DD7L7BNL.js +18 -0
  262. package/dist/cli-bundle/chunks/{history-NERDJNUB.js → history-IL7XCEX2.js} +8 -8
  263. package/dist/cli-bundle/chunks/{history-compact-HR7BB4LR.js → history-compact-HALOTOU7.js} +214 -135
  264. package/dist/cli-bundle/chunks/history-compact-HALOTOU7.js.map +1 -0
  265. package/dist/cli-bundle/chunks/{history-compact-2WRZ2WK4.js → history-compact-MV25P7DM.js} +213 -134
  266. package/dist/cli-bundle/chunks/history-compact-MV25P7DM.js.map +7 -0
  267. package/dist/cli-bundle/chunks/history-redact-IX4YEWMY.js +19 -0
  268. package/dist/cli-bundle/chunks/{history-redact-O3NBCNWC.js → history-redact-VYCWQFK7.js} +9 -9
  269. package/dist/cli-bundle/chunks/{history-repair-XA3LC4GA.js → history-repair-44MODPQF.js} +124 -84
  270. package/dist/cli-bundle/chunks/history-repair-44MODPQF.js.map +1 -0
  271. package/dist/cli-bundle/chunks/{history-repair-LCMOS45X.js → history-repair-CPNAOCNF.js} +123 -83
  272. package/dist/cli-bundle/chunks/history-repair-CPNAOCNF.js.map +7 -0
  273. package/dist/cli-bundle/chunks/{init-64XDLQJB.js → init-F27NHENZ.js} +12 -12
  274. package/dist/cli-bundle/chunks/init-HHVQQP6C.js +22 -0
  275. package/dist/cli-bundle/chunks/{learnings-LPKCSJX7.js → learnings-HJVDQIGY.js} +8 -8
  276. package/dist/cli-bundle/chunks/{learnings-JR6MA5TI.js → learnings-XSFSUUWK.js} +8 -8
  277. package/dist/cli-bundle/chunks/{list-G5Y65VF6.js → list-HPMEKCAA.js} +8 -8
  278. package/dist/cli-bundle/chunks/{list-DNBJVO3E.js → list-VMPWTURB.js} +8 -8
  279. package/dist/cli-bundle/chunks/{next-BCERKDUR.js → next-ETXF2ZCN.js} +59 -37
  280. package/dist/cli-bundle/chunks/next-ETXF2ZCN.js.map +7 -0
  281. package/dist/cli-bundle/chunks/{next-FYTQF6HG.js → next-QM6YJIIS.js} +60 -38
  282. package/dist/cli-bundle/chunks/next-QM6YJIIS.js.map +1 -0
  283. package/dist/cli-bundle/chunks/{notes-2BMU3VVQ.js → notes-GDZIKGR6.js} +8 -8
  284. package/dist/cli-bundle/chunks/{notes-6KTGO2OJ.js → notes-WDDBPC4D.js} +8 -8
  285. package/dist/cli-bundle/chunks/{plan-RKZHQVXR.js → plan-BGDR73Z6.js} +373 -279
  286. package/dist/cli-bundle/chunks/plan-BGDR73Z6.js.map +1 -0
  287. package/dist/cli-bundle/chunks/{plan-4WXEQCTN.js → plan-C5IMM335.js} +372 -278
  288. package/dist/cli-bundle/chunks/plan-C5IMM335.js.map +7 -0
  289. package/dist/cli-bundle/chunks/{profile-QLER5ENE.js → profile-CCOKZ2IQ.js} +9 -9
  290. package/dist/cli-bundle/chunks/{profile-4OMM32CD.js → profile-HUCENIEQ.js} +9 -9
  291. package/dist/cli-bundle/chunks/{register-list-query-7LV46VAU.js → register-list-query-ROSNIL52.js} +80 -83
  292. package/dist/cli-bundle/chunks/register-list-query-ROSNIL52.js.map +1 -0
  293. package/dist/cli-bundle/chunks/{register-list-query-SNG5PGA4.js → register-list-query-XN4ZRHSV.js} +79 -82
  294. package/dist/cli-bundle/chunks/register-list-query-XN4ZRHSV.js.map +7 -0
  295. package/dist/cli-bundle/chunks/{register-mutation-ENNDUAZG.js → register-mutation-CFSB2MS3.js} +403 -382
  296. package/dist/cli-bundle/chunks/register-mutation-CFSB2MS3.js.map +1 -0
  297. package/dist/cli-bundle/chunks/{register-mutation-KK7PHYYU.js → register-mutation-KRLAHEL2.js} +402 -381
  298. package/dist/cli-bundle/chunks/register-mutation-KRLAHEL2.js.map +7 -0
  299. package/dist/cli-bundle/chunks/{register-operations-HZ6XERQG.js → register-operations-4PASGJDB.js} +112 -93
  300. package/dist/cli-bundle/chunks/register-operations-4PASGJDB.js.map +7 -0
  301. package/dist/cli-bundle/chunks/{register-operations-C6OWLDSH.js → register-operations-MBN4KGUM.js} +113 -94
  302. package/dist/cli-bundle/chunks/register-operations-MBN4KGUM.js.map +1 -0
  303. package/dist/cli-bundle/chunks/{register-setup-P67EMBDJ.js → register-setup-VIAWYFP5.js} +129 -104
  304. package/dist/cli-bundle/chunks/register-setup-VIAWYFP5.js.map +1 -0
  305. package/dist/cli-bundle/chunks/{register-setup-ZKJ53RS7.js → register-setup-ZCGKHDKL.js} +128 -103
  306. package/dist/cli-bundle/chunks/register-setup-ZCGKHDKL.js.map +7 -0
  307. package/dist/cli-bundle/chunks/{restore-4MHZFJ2E.js → restore-4CBWUMCX.js} +9 -9
  308. package/dist/cli-bundle/chunks/restore-5UEAGG3W.js +17 -0
  309. package/dist/cli-bundle/chunks/{scheduling-shortcuts-LB6DOLRL.js → scheduling-shortcuts-6VFKNKCM.js} +12 -12
  310. package/dist/cli-bundle/chunks/{scheduling-shortcuts-UTOYKLXQ.js → scheduling-shortcuts-ERHCVTEM.js} +12 -12
  311. package/dist/cli-bundle/chunks/{schema-73HR2OJW.js → schema-TDGK6N3I.js} +7 -7
  312. package/dist/cli-bundle/chunks/{schema-U6LJKSIR.js → schema-UE5KKAUX.js} +7 -7
  313. package/dist/cli-bundle/chunks/{search-KILGT37L.js → search-FP7MEU4S.js} +10 -10
  314. package/dist/cli-bundle/chunks/{search-AXPXKZER.js → search-K4CFLQ5S.js} +10 -10
  315. package/dist/cli-bundle/chunks/{stats-PSYVVTNZ.js → stats-NJJCALEZ.js} +6 -6
  316. package/dist/cli-bundle/chunks/{stats-W5KNVJWQ.js → stats-XT6QRKQY.js} +6 -6
  317. package/dist/cli-bundle/chunks/{telemetry-GAHHQTOS.js → telemetry-5SQ5UDXC.js} +84 -70
  318. package/dist/cli-bundle/chunks/telemetry-5SQ5UDXC.js.map +7 -0
  319. package/dist/cli-bundle/chunks/{telemetry-BZUF6H7G.js → telemetry-HVXFZA2U.js} +85 -71
  320. package/dist/cli-bundle/chunks/telemetry-HVXFZA2U.js.map +1 -0
  321. package/dist/cli-bundle/chunks/{test-ACD52Z3S.js → test-UFSJ5YIO.js} +15 -15
  322. package/dist/cli-bundle/chunks/{test-PWDIZ255.js → test-YCDAUBWF.js} +15 -15
  323. package/dist/cli-bundle/chunks/test-all-2BWKY3GQ.js +427 -0
  324. package/dist/cli-bundle/chunks/test-all-2BWKY3GQ.js.map +1 -0
  325. package/dist/cli-bundle/chunks/test-all-PM7UYN42.js +430 -0
  326. package/dist/cli-bundle/chunks/test-all-PM7UYN42.js.map +7 -0
  327. package/dist/cli-bundle/chunks/{test-runs-UXIXPDKU.js → test-runs-FK5E75AA.js} +185 -147
  328. package/dist/cli-bundle/chunks/test-runs-FK5E75AA.js.map +1 -0
  329. package/dist/cli-bundle/chunks/{test-runs-PLRAZEFW.js → test-runs-H4TGWGRN.js} +184 -146
  330. package/dist/cli-bundle/chunks/test-runs-H4TGWGRN.js.map +7 -0
  331. package/dist/cli-bundle/chunks/update-MTCFES6X.js +24 -0
  332. package/dist/cli-bundle/chunks/{update-KFX2SIAC.js → update-Y5WQVT5O.js} +15 -15
  333. package/dist/cli-bundle/chunks/{update-many-Z5GJS5LC.js → update-many-6YAYYRLE.js} +82 -67
  334. package/dist/cli-bundle/chunks/{update-many-Z5GJS5LC.js.map → update-many-6YAYYRLE.js.map} +2 -2
  335. package/dist/cli-bundle/chunks/{update-many-RNSBX2TA.js → update-many-JTKKSA7Y.js} +83 -68
  336. package/dist/cli-bundle/chunks/{update-many-RNSBX2TA.js.map → update-many-JTKKSA7Y.js.map} +1 -1
  337. package/dist/cli-bundle/chunks/{upgrade-HAK6JG2O.js → upgrade-DTAHZ236.js} +11 -11
  338. package/dist/cli-bundle/chunks/{upgrade-BRL6KCOJ.js → upgrade-JUDU7YL4.js} +11 -11
  339. package/dist/cli-bundle/chunks/{validate-MTUVL5VC.js → validate-732RWS5W.js} +440 -320
  340. package/dist/cli-bundle/chunks/validate-732RWS5W.js.map +7 -0
  341. package/dist/cli-bundle/chunks/{validate-X5W76YJL.js → validate-W7H5TEDC.js} +441 -321
  342. package/dist/cli-bundle/chunks/validate-W7H5TEDC.js.map +1 -0
  343. package/dist/cli-bundle/main.js +945 -812
  344. package/dist/cli-bundle/main.js.map +3 -3
  345. package/dist/core/config/nested-settings.js +89 -67
  346. package/dist/core/config/nested-settings.js.map +1 -1
  347. package/dist/core/governance/metadata-coverage.js +20 -28
  348. package/dist/core/governance/metadata-coverage.js.map +1 -1
  349. package/dist/core/history/drift-scan.js +93 -81
  350. package/dist/core/history/drift-scan.js.map +1 -1
  351. package/dist/core/item/item-type-definition.js +14 -14
  352. package/dist/core/item/item-type-definition.js.map +1 -1
  353. package/dist/core/item/type-registry.js +87 -82
  354. package/dist/core/item/type-registry.js.map +1 -1
  355. package/dist/core/output/mutation-projection.js +42 -26
  356. package/dist/core/output/mutation-projection.js.map +1 -1
  357. package/dist/core/schema/runtime-schema.js +34 -28
  358. package/dist/core/schema/runtime-schema.js.map +1 -1
  359. package/dist/core/search/semantic-defaults.js +64 -37
  360. package/dist/core/search/semantic-defaults.js.map +1 -1
  361. package/dist/core/search/vector-stores.js +32 -17
  362. package/dist/core/search/vector-stores.js.map +1 -1
  363. package/dist/core/sentry/helpers.js +31 -28
  364. package/dist/core/sentry/helpers.js.map +1 -1
  365. package/dist/core/sentry/instrument.js +54 -43
  366. package/dist/core/sentry/instrument.js.map +1 -1
  367. package/dist/core/store/front-matter-cache.js +239 -153
  368. package/dist/core/store/front-matter-cache.js.map +1 -1
  369. package/dist/core/store/item-store.js +33 -26
  370. package/dist/core/store/item-store.js.map +1 -1
  371. package/dist/core/store/settings.js +247 -203
  372. package/dist/core/store/settings.js.map +1 -1
  373. package/dist/core/test/background-runs.js +189 -160
  374. package/dist/core/test/background-runs.js.map +1 -1
  375. package/package.json +2 -2
  376. package/packages/pm-beads/extensions/beads/runtime.ts +240 -167
  377. package/packages/pm-guide-shell/extensions/guide-shell/runtime.ts +65 -58
  378. package/packages/pm-todos/extensions/todos/runtime.ts +65 -42
  379. package/dist/cli-bundle/chunks/activity-AW6XVFH6.js +0 -16
  380. package/dist/cli-bundle/chunks/aggregate-JTEF4BP7.js.map +0 -1
  381. package/dist/cli-bundle/chunks/chunk-2D4HATP2.js.map +0 -1
  382. package/dist/cli-bundle/chunks/chunk-3S2KT7NG.js.map +0 -7
  383. package/dist/cli-bundle/chunks/chunk-3VGN2UWE.js.map +0 -1
  384. package/dist/cli-bundle/chunks/chunk-3XZCOZ5J.js.map +0 -1
  385. package/dist/cli-bundle/chunks/chunk-4DSGXSBL.js.map +0 -7
  386. package/dist/cli-bundle/chunks/chunk-4XOIEKSD.js.map +0 -1
  387. package/dist/cli-bundle/chunks/chunk-55SNVXRQ.js.map +0 -7
  388. package/dist/cli-bundle/chunks/chunk-5CGRF3L5.js.map +0 -1
  389. package/dist/cli-bundle/chunks/chunk-7R4QEMZZ.js.map +0 -1
  390. package/dist/cli-bundle/chunks/chunk-BDTISOSD.js.map +0 -7
  391. package/dist/cli-bundle/chunks/chunk-BZCEN4JA.js.map +0 -7
  392. package/dist/cli-bundle/chunks/chunk-CF7RL6FR.js.map +0 -1
  393. package/dist/cli-bundle/chunks/chunk-FFMQB7WR.js.map +0 -1
  394. package/dist/cli-bundle/chunks/chunk-IPYBJWTE.js.map +0 -7
  395. package/dist/cli-bundle/chunks/chunk-IZBR4NRW.js.map +0 -7
  396. package/dist/cli-bundle/chunks/chunk-JSU5P7VS.js.map +0 -1
  397. package/dist/cli-bundle/chunks/chunk-JWXRETDF.js.map +0 -1
  398. package/dist/cli-bundle/chunks/chunk-KNPEF7QG.js.map +0 -7
  399. package/dist/cli-bundle/chunks/chunk-NFDPYAIP.js.map +0 -7
  400. package/dist/cli-bundle/chunks/chunk-NUHHPVVS.js.map +0 -7
  401. package/dist/cli-bundle/chunks/chunk-NWMZWYYB.js.map +0 -1
  402. package/dist/cli-bundle/chunks/chunk-OTUHB4HS.js.map +0 -1
  403. package/dist/cli-bundle/chunks/chunk-RGEMWD6Q.js.map +0 -7
  404. package/dist/cli-bundle/chunks/chunk-RLDHZHQS.js.map +0 -1
  405. package/dist/cli-bundle/chunks/chunk-RMMQ74TG.js.map +0 -7
  406. package/dist/cli-bundle/chunks/chunk-RVUALSJF.js.map +0 -7
  407. package/dist/cli-bundle/chunks/chunk-TP5Q5ZD3.js.map +0 -1
  408. package/dist/cli-bundle/chunks/chunk-UYUYDGIB.js.map +0 -1
  409. package/dist/cli-bundle/chunks/chunk-V3NOKJF2.js.map +0 -1
  410. package/dist/cli-bundle/chunks/chunk-VARHOHYV.js.map +0 -7
  411. package/dist/cli-bundle/chunks/chunk-YITK2PJ6.js.map +0 -7
  412. package/dist/cli-bundle/chunks/chunk-ZETXE4SE.js.map +0 -1
  413. package/dist/cli-bundle/chunks/close-E6ZZGCJY.js +0 -14
  414. package/dist/cli-bundle/chunks/close-many-BG5QQIDQ.js.map +0 -7
  415. package/dist/cli-bundle/chunks/close-many-LDRVEQY2.js.map +0 -1
  416. package/dist/cli-bundle/chunks/config-DMSU64QO.js +0 -1541
  417. package/dist/cli-bundle/chunks/config-DMSU64QO.js.map +0 -7
  418. package/dist/cli-bundle/chunks/config-QH2DICD6.js +0 -1531
  419. package/dist/cli-bundle/chunks/config-QH2DICD6.js.map +0 -1
  420. package/dist/cli-bundle/chunks/contracts-HN7ABKLP.js.map +0 -7
  421. package/dist/cli-bundle/chunks/contracts-W4FZVVD6.js.map +0 -1
  422. package/dist/cli-bundle/chunks/create-OH3BDGBB.js +0 -28
  423. package/dist/cli-bundle/chunks/get-A7MAOHCU.js.map +0 -7
  424. package/dist/cli-bundle/chunks/get-DSDEKJ3L.js.map +0 -1
  425. package/dist/cli-bundle/chunks/health-3IPFLKXB.js.map +0 -1
  426. package/dist/cli-bundle/chunks/health-GZXGBZ36.js.map +0 -7
  427. package/dist/cli-bundle/chunks/history-WSZHY3PN.js +0 -18
  428. package/dist/cli-bundle/chunks/history-compact-2WRZ2WK4.js.map +0 -7
  429. package/dist/cli-bundle/chunks/history-compact-HR7BB4LR.js.map +0 -1
  430. package/dist/cli-bundle/chunks/history-redact-MP6CH7U5.js +0 -19
  431. package/dist/cli-bundle/chunks/history-repair-LCMOS45X.js.map +0 -7
  432. package/dist/cli-bundle/chunks/history-repair-XA3LC4GA.js.map +0 -1
  433. package/dist/cli-bundle/chunks/init-PAX32BJA.js +0 -22
  434. package/dist/cli-bundle/chunks/next-BCERKDUR.js.map +0 -7
  435. package/dist/cli-bundle/chunks/next-FYTQF6HG.js.map +0 -1
  436. package/dist/cli-bundle/chunks/plan-4WXEQCTN.js.map +0 -7
  437. package/dist/cli-bundle/chunks/plan-RKZHQVXR.js.map +0 -1
  438. package/dist/cli-bundle/chunks/register-list-query-7LV46VAU.js.map +0 -1
  439. package/dist/cli-bundle/chunks/register-list-query-SNG5PGA4.js.map +0 -7
  440. package/dist/cli-bundle/chunks/register-mutation-ENNDUAZG.js.map +0 -1
  441. package/dist/cli-bundle/chunks/register-mutation-KK7PHYYU.js.map +0 -7
  442. package/dist/cli-bundle/chunks/register-operations-C6OWLDSH.js.map +0 -1
  443. package/dist/cli-bundle/chunks/register-operations-HZ6XERQG.js.map +0 -7
  444. package/dist/cli-bundle/chunks/register-setup-P67EMBDJ.js.map +0 -1
  445. package/dist/cli-bundle/chunks/register-setup-ZKJ53RS7.js.map +0 -7
  446. package/dist/cli-bundle/chunks/restore-YALDGTQR.js +0 -17
  447. package/dist/cli-bundle/chunks/telemetry-BZUF6H7G.js.map +0 -1
  448. package/dist/cli-bundle/chunks/telemetry-GAHHQTOS.js.map +0 -7
  449. package/dist/cli-bundle/chunks/test-all-L2MDDUCA.js +0 -358
  450. package/dist/cli-bundle/chunks/test-all-L2MDDUCA.js.map +0 -1
  451. package/dist/cli-bundle/chunks/test-all-RBZ6DLU2.js +0 -361
  452. package/dist/cli-bundle/chunks/test-all-RBZ6DLU2.js.map +0 -7
  453. package/dist/cli-bundle/chunks/test-runs-PLRAZEFW.js.map +0 -7
  454. package/dist/cli-bundle/chunks/test-runs-UXIXPDKU.js.map +0 -1
  455. package/dist/cli-bundle/chunks/update-AMRSOIWP.js +0 -24
  456. package/dist/cli-bundle/chunks/validate-MTUVL5VC.js.map +0 -7
  457. package/dist/cli-bundle/chunks/validate-X5W76YJL.js.map +0 -1
  458. /package/dist/cli-bundle/chunks/{activity-DBLQVIP6.js.map → activity-CUC4JY3U.js.map} +0 -0
  459. /package/dist/cli-bundle/chunks/{activity-AW6XVFH6.js.map → activity-WEIEMM73.js.map} +0 -0
  460. /package/dist/cli-bundle/chunks/{append-QCFJSDFL.js.map → append-H32VOR2Y.js.map} +0 -0
  461. /package/dist/cli-bundle/chunks/{append-LOVPGVPT.js.map → append-UBM632FK.js.map} +0 -0
  462. /package/dist/cli-bundle/chunks/{chunk-SLMUGTK3.js.map → chunk-2ASNV4DH.js.map} +0 -0
  463. /package/dist/cli-bundle/chunks/{chunk-UZIWVBE6.js.map → chunk-2CHRYUXL.js.map} +0 -0
  464. /package/dist/cli-bundle/chunks/{chunk-NU2UEROZ.js.map → chunk-3AZUFQK6.js.map} +0 -0
  465. /package/dist/cli-bundle/chunks/{chunk-LB6TP6MC.js.map → chunk-3LCUASYG.js.map} +0 -0
  466. /package/dist/cli-bundle/chunks/{chunk-HPPFYYOV.js.map → chunk-3Q2HBMTI.js.map} +0 -0
  467. /package/dist/cli-bundle/chunks/{chunk-W4ULYO7Z.js.map → chunk-55XRYWEG.js.map} +0 -0
  468. /package/dist/cli-bundle/chunks/{chunk-HXTQJXWT.js.map → chunk-5GVTFFTC.js.map} +0 -0
  469. /package/dist/cli-bundle/chunks/{chunk-64HNBBFQ.js.map → chunk-A6VOGKBA.js.map} +0 -0
  470. /package/dist/cli-bundle/chunks/{chunk-WYDHYJPO.js.map → chunk-AIAIXG7I.js.map} +0 -0
  471. /package/dist/cli-bundle/chunks/{chunk-CWFNTKQJ.js.map → chunk-AJEBCRIY.js.map} +0 -0
  472. /package/dist/cli-bundle/chunks/{chunk-NOLPZMSV.js.map → chunk-BTX5MIQF.js.map} +0 -0
  473. /package/dist/cli-bundle/chunks/{chunk-RH5ZBYFD.js.map → chunk-BVZZN2LH.js.map} +0 -0
  474. /package/dist/cli-bundle/chunks/{chunk-27BXPBAY.js.map → chunk-CYBDUHNO.js.map} +0 -0
  475. /package/dist/cli-bundle/chunks/{chunk-A7FPBAQS.js.map → chunk-CZPVDLD2.js.map} +0 -0
  476. /package/dist/cli-bundle/chunks/{chunk-JPECA746.js.map → chunk-EUKTMRN3.js.map} +0 -0
  477. /package/dist/cli-bundle/chunks/{chunk-2466X6E4.js.map → chunk-FFOQHGNH.js.map} +0 -0
  478. /package/dist/cli-bundle/chunks/{chunk-JLM7BHI7.js.map → chunk-GFMSLORL.js.map} +0 -0
  479. /package/dist/cli-bundle/chunks/{chunk-SDR5J34Q.js.map → chunk-GRRG3MCT.js.map} +0 -0
  480. /package/dist/cli-bundle/chunks/{chunk-GJ326ZKX.js.map → chunk-H4GRLYJS.js.map} +0 -0
  481. /package/dist/cli-bundle/chunks/{chunk-OGXLACHC.js.map → chunk-HQTPRV4D.js.map} +0 -0
  482. /package/dist/cli-bundle/chunks/{chunk-BHO33VBQ.js.map → chunk-IEEJQCZ4.js.map} +0 -0
  483. /package/dist/cli-bundle/chunks/{chunk-4DUVCVLZ.js.map → chunk-JMK5GCK2.js.map} +0 -0
  484. /package/dist/cli-bundle/chunks/{chunk-AXIDKKAT.js.map → chunk-K2VYLVX4.js.map} +0 -0
  485. /package/dist/cli-bundle/chunks/{chunk-EJUDVUYZ.js.map → chunk-KCO2EAN5.js.map} +0 -0
  486. /package/dist/cli-bundle/chunks/{chunk-6AQZPVHQ.js.map → chunk-KIYCOJ63.js.map} +0 -0
  487. /package/dist/cli-bundle/chunks/{chunk-ZRP4VG5U.js.map → chunk-KLXF7NCC.js.map} +0 -0
  488. /package/dist/cli-bundle/chunks/{chunk-QCWF6IYD.js.map → chunk-KN3URLKS.js.map} +0 -0
  489. /package/dist/cli-bundle/chunks/{chunk-N74UMG5H.js.map → chunk-LRKMWUUV.js.map} +0 -0
  490. /package/dist/cli-bundle/chunks/{chunk-AVEE5EHK.js.map → chunk-LTRAF2D7.js.map} +0 -0
  491. /package/dist/cli-bundle/chunks/{chunk-IJYK2T43.js.map → chunk-MRD4T5LF.js.map} +0 -0
  492. /package/dist/cli-bundle/chunks/{chunk-G7I7DEZA.js.map → chunk-N2JSWVWG.js.map} +0 -0
  493. /package/dist/cli-bundle/chunks/{chunk-5QFDBI4F.js.map → chunk-N3QCJS4M.js.map} +0 -0
  494. /package/dist/cli-bundle/chunks/{chunk-4A3BJ675.js.map → chunk-OTUJZKGI.js.map} +0 -0
  495. /package/dist/cli-bundle/chunks/{chunk-HZZEHPRG.js.map → chunk-QH3FSKRJ.js.map} +0 -0
  496. /package/dist/cli-bundle/chunks/{chunk-NKZAN7BD.js.map → chunk-S62UANU7.js.map} +0 -0
  497. /package/dist/cli-bundle/chunks/{chunk-3J6JRJ3I.js.map → chunk-SYNKD3ZG.js.map} +0 -0
  498. /package/dist/cli-bundle/chunks/{chunk-L5OEFZQG.js.map → chunk-U2BEEM2X.js.map} +0 -0
  499. /package/dist/cli-bundle/chunks/{chunk-EVMTBV6V.js.map → chunk-UT73HUPC.js.map} +0 -0
  500. /package/dist/cli-bundle/chunks/{chunk-VICZWYGZ.js.map → chunk-UTSH5GWX.js.map} +0 -0
  501. /package/dist/cli-bundle/chunks/{chunk-MDPEOIGN.js.map → chunk-XWGEMNBR.js.map} +0 -0
  502. /package/dist/cli-bundle/chunks/{chunk-HYTGA6GI.js.map → chunk-Y4NRKBFW.js.map} +0 -0
  503. /package/dist/cli-bundle/chunks/{chunk-22WKIL3H.js.map → chunk-YPKFV2JR.js.map} +0 -0
  504. /package/dist/cli-bundle/chunks/{chunk-DDPTYJIM.js.map → chunk-ZNHEYCDD.js.map} +0 -0
  505. /package/dist/cli-bundle/chunks/{chunk-MAUKX7JC.js.map → chunk-ZNT7KEWE.js.map} +0 -0
  506. /package/dist/cli-bundle/chunks/{claim-T3GCKV7C.js.map → claim-SENTPZBN.js.map} +0 -0
  507. /package/dist/cli-bundle/chunks/{claim-EMQLYPRW.js.map → claim-Z7MEQCBT.js.map} +0 -0
  508. /package/dist/cli-bundle/chunks/{close-TQYAAFJP.js.map → close-424MX4CU.js.map} +0 -0
  509. /package/dist/cli-bundle/chunks/{close-E6ZZGCJY.js.map → close-YCWQQPDS.js.map} +0 -0
  510. /package/dist/cli-bundle/chunks/{comments-YUXJRZPQ.js.map → comments-4FGNTSNV.js.map} +0 -0
  511. /package/dist/cli-bundle/chunks/{comments-QCKR2YY2.js.map → comments-7YS5MY5X.js.map} +0 -0
  512. /package/dist/cli-bundle/chunks/{context-OCZ3FJ4Z.js.map → context-LHVKJSPJ.js.map} +0 -0
  513. /package/dist/cli-bundle/chunks/{context-B6275WPX.js.map → context-ZQY54JNS.js.map} +0 -0
  514. /package/dist/cli-bundle/chunks/{copy-DEM4DATS.js.map → copy-GYNQQPW2.js.map} +0 -0
  515. /package/dist/cli-bundle/chunks/{copy-BTJOSKKT.js.map → copy-TLW7JTQT.js.map} +0 -0
  516. /package/dist/cli-bundle/chunks/{create-RLRJMRTM.js.map → create-VSKYSOCD.js.map} +0 -0
  517. /package/dist/cli-bundle/chunks/{create-OH3BDGBB.js.map → create-XTMAPS7I.js.map} +0 -0
  518. /package/dist/cli-bundle/chunks/{delete-LSVHAB4Y.js.map → delete-4W5JYCEG.js.map} +0 -0
  519. /package/dist/cli-bundle/chunks/{delete-BHK7VB2Z.js.map → delete-ANTOTI2I.js.map} +0 -0
  520. /package/dist/cli-bundle/chunks/{deps-XHYXWEPT.js.map → deps-HPPE6MJN.js.map} +0 -0
  521. /package/dist/cli-bundle/chunks/{deps-4UDFJRUA.js.map → deps-ZQZN54EZ.js.map} +0 -0
  522. /package/dist/cli-bundle/chunks/{docs-GYZNVS26.js.map → docs-RPOVFMP3.js.map} +0 -0
  523. /package/dist/cli-bundle/chunks/{docs-26S44RXU.js.map → docs-XJNYBJGE.js.map} +0 -0
  524. /package/dist/cli-bundle/chunks/{eval-PGRVIJQU.js.map → eval-DM6JBZTS.js.map} +0 -0
  525. /package/dist/cli-bundle/chunks/{eval-UYF3ZPVO.js.map → eval-RFBI5FGS.js.map} +0 -0
  526. /package/dist/cli-bundle/chunks/{extension-CPSLJQVE.js.map → extension-B3YY4WY5.js.map} +0 -0
  527. /package/dist/cli-bundle/chunks/{extension-CXJ6RELI.js.map → extension-TTSEFQTS.js.map} +0 -0
  528. /package/dist/cli-bundle/chunks/{files-NQHEXUZD.js.map → files-5D65CHGE.js.map} +0 -0
  529. /package/dist/cli-bundle/chunks/{files-MBNICQFM.js.map → files-GPIG77EN.js.map} +0 -0
  530. /package/dist/cli-bundle/chunks/{focus-XZW5423D.js.map → focus-C3PEJV2C.js.map} +0 -0
  531. /package/dist/cli-bundle/chunks/{focus-DWYIG7GU.js.map → focus-ZHN7WIGX.js.map} +0 -0
  532. /package/dist/cli-bundle/chunks/{gc-LPVMKJQJ.js.map → gc-D4JQ6OWN.js.map} +0 -0
  533. /package/dist/cli-bundle/chunks/{gc-7GQYOS2G.js.map → gc-VZIXDL32.js.map} +0 -0
  534. /package/dist/cli-bundle/chunks/{history-WSZHY3PN.js.map → history-DD7L7BNL.js.map} +0 -0
  535. /package/dist/cli-bundle/chunks/{history-NERDJNUB.js.map → history-IL7XCEX2.js.map} +0 -0
  536. /package/dist/cli-bundle/chunks/{history-redact-MP6CH7U5.js.map → history-redact-IX4YEWMY.js.map} +0 -0
  537. /package/dist/cli-bundle/chunks/{history-redact-O3NBCNWC.js.map → history-redact-VYCWQFK7.js.map} +0 -0
  538. /package/dist/cli-bundle/chunks/{init-64XDLQJB.js.map → init-F27NHENZ.js.map} +0 -0
  539. /package/dist/cli-bundle/chunks/{init-PAX32BJA.js.map → init-HHVQQP6C.js.map} +0 -0
  540. /package/dist/cli-bundle/chunks/{learnings-LPKCSJX7.js.map → learnings-HJVDQIGY.js.map} +0 -0
  541. /package/dist/cli-bundle/chunks/{learnings-JR6MA5TI.js.map → learnings-XSFSUUWK.js.map} +0 -0
  542. /package/dist/cli-bundle/chunks/{list-G5Y65VF6.js.map → list-HPMEKCAA.js.map} +0 -0
  543. /package/dist/cli-bundle/chunks/{list-DNBJVO3E.js.map → list-VMPWTURB.js.map} +0 -0
  544. /package/dist/cli-bundle/chunks/{notes-2BMU3VVQ.js.map → notes-GDZIKGR6.js.map} +0 -0
  545. /package/dist/cli-bundle/chunks/{notes-6KTGO2OJ.js.map → notes-WDDBPC4D.js.map} +0 -0
  546. /package/dist/cli-bundle/chunks/{profile-QLER5ENE.js.map → profile-CCOKZ2IQ.js.map} +0 -0
  547. /package/dist/cli-bundle/chunks/{profile-4OMM32CD.js.map → profile-HUCENIEQ.js.map} +0 -0
  548. /package/dist/cli-bundle/chunks/{restore-4MHZFJ2E.js.map → restore-4CBWUMCX.js.map} +0 -0
  549. /package/dist/cli-bundle/chunks/{restore-YALDGTQR.js.map → restore-5UEAGG3W.js.map} +0 -0
  550. /package/dist/cli-bundle/chunks/{scheduling-shortcuts-LB6DOLRL.js.map → scheduling-shortcuts-6VFKNKCM.js.map} +0 -0
  551. /package/dist/cli-bundle/chunks/{scheduling-shortcuts-UTOYKLXQ.js.map → scheduling-shortcuts-ERHCVTEM.js.map} +0 -0
  552. /package/dist/cli-bundle/chunks/{schema-73HR2OJW.js.map → schema-TDGK6N3I.js.map} +0 -0
  553. /package/dist/cli-bundle/chunks/{schema-U6LJKSIR.js.map → schema-UE5KKAUX.js.map} +0 -0
  554. /package/dist/cli-bundle/chunks/{search-KILGT37L.js.map → search-FP7MEU4S.js.map} +0 -0
  555. /package/dist/cli-bundle/chunks/{search-AXPXKZER.js.map → search-K4CFLQ5S.js.map} +0 -0
  556. /package/dist/cli-bundle/chunks/{stats-PSYVVTNZ.js.map → stats-NJJCALEZ.js.map} +0 -0
  557. /package/dist/cli-bundle/chunks/{stats-W5KNVJWQ.js.map → stats-XT6QRKQY.js.map} +0 -0
  558. /package/dist/cli-bundle/chunks/{test-ACD52Z3S.js.map → test-UFSJ5YIO.js.map} +0 -0
  559. /package/dist/cli-bundle/chunks/{test-PWDIZ255.js.map → test-YCDAUBWF.js.map} +0 -0
  560. /package/dist/cli-bundle/chunks/{update-AMRSOIWP.js.map → update-MTCFES6X.js.map} +0 -0
  561. /package/dist/cli-bundle/chunks/{update-KFX2SIAC.js.map → update-Y5WQVT5O.js.map} +0 -0
  562. /package/dist/cli-bundle/chunks/{upgrade-HAK6JG2O.js.map → upgrade-DTAHZ236.js.map} +0 -0
  563. /package/dist/cli-bundle/chunks/{upgrade-BRL6KCOJ.js.map → upgrade-JUDU7YL4.js.map} +0 -0
@@ -1,5 +1,5 @@
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]="443758db-53e4-5330-933e-f1da0312c399")}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]="21765ce8-2cab-5cbb-b2c1-fb35eb307032")}catch(e){}}();
3
3
  import {
4
4
  ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS,
5
5
  ACTIVITY_FLAG_CONTRACTS,
@@ -92,7 +92,7 @@ import {
92
92
  UPGRADE_FLAG_CONTRACTS,
93
93
  VALIDATE_FLAG_CONTRACTS,
94
94
  compactFlagAliasContracts
95
- } from "./chunk-HXTQJXWT.js";
95
+ } from "./chunk-5GVTFFTC.js";
96
96
  import {
97
97
  EXIT_CODE,
98
98
  PmCliError,
@@ -110,7 +110,7 @@ import {
110
110
  resolvePmRoot,
111
111
  resolveRuntimeFieldRegistry,
112
112
  resolveRuntimeStatusRegistry
113
- } from "./chunk-7R4QEMZZ.js";
113
+ } from "./chunk-I66WE2HE.js";
114
114
 
115
115
  // dist/mcp/tool-definitions.js
116
116
  var TOOL_SCHEMA_BASE = {
@@ -832,6 +832,11 @@ function normalizeStringList(values) {
832
832
  }
833
833
  return normalized;
834
834
  }
835
+ function assignExtensionFlagBoolean(contract, key, enabled) {
836
+ if (enabled) {
837
+ contract[key] = true;
838
+ }
839
+ }
835
840
  function toExtensionFlagContract(definition) {
836
841
  const longName = toOptionalTrimmedString(definition.long);
837
842
  const shortName = toOptionalTrimmedString(definition.short);
@@ -845,16 +850,13 @@ function toExtensionFlagContract(definition) {
845
850
  if (normalizedShort && normalizedLong) {
846
851
  contract.short = normalizedShort;
847
852
  }
853
+ assignExtensionFlagBoolean(contract, "required", definition.required === true);
854
+ assignExtensionFlagBoolean(contract, "repeatable", definition.repeatable === true);
855
+ assignExtensionFlagBoolean(contract, "list", definition.list === true);
848
856
  const description = toOptionalTrimmedString(definition.description);
849
857
  if (description) {
850
858
  contract.description = description;
851
859
  }
852
- if (definition.required === true) {
853
- contract.required = true;
854
- }
855
- if (definition.repeatable === true) {
856
- contract.repeatable = true;
857
- }
858
860
  const valueName = toOptionalTrimmedString(definition.value_name);
859
861
  if (valueName) {
860
862
  contract.value_name = valueName;
@@ -998,6 +1000,29 @@ function extensionSchemaPropertyNameFromFlag(flag) {
998
1000
  const cleaned = camelCased.replace(/[^a-zA-Z0-9]/g, "");
999
1001
  return cleaned.length > 0 ? cleaned : null;
1000
1002
  }
1003
+ function buildExtensionArgumentSchema(argument, action) {
1004
+ if (argument.variadic) {
1005
+ return {
1006
+ type: "array",
1007
+ items: { type: "string" },
1008
+ description: argument.description ?? `Variadic argument '${argument.name}' for extension action '${action}'.`
1009
+ };
1010
+ }
1011
+ return {
1012
+ type: "string",
1013
+ description: argument.description ?? `Argument '${argument.name}' for extension action '${action}'.`
1014
+ };
1015
+ }
1016
+ function buildExtensionFlagSchema(flag, action) {
1017
+ const valueType = flag.value_type ?? "boolean";
1018
+ const schemaType = valueType === "boolean" ? "boolean" : valueType === "number" ? ["number", "string"] : "string";
1019
+ const acceptsMultipleValues = flag.repeatable === true || flag.list === true;
1020
+ return {
1021
+ type: acceptsMultipleValues ? "array" : schemaType,
1022
+ ...acceptsMultipleValues ? { items: { type: schemaType } } : {},
1023
+ description: flag.description ?? `Extension option '${flag.flag}' for action '${action}'.`
1024
+ };
1025
+ }
1001
1026
  function buildExtensionActionSchemaBranch(contract) {
1002
1027
  const commands = contract.command.split("|").map((command) => command.trim()).filter((command) => command.length > 0);
1003
1028
  const properties = {
@@ -1009,18 +1034,7 @@ function buildExtensionActionSchemaBranch(contract) {
1009
1034
  };
1010
1035
  const required = ["action"];
1011
1036
  for (const argument of contract.arguments) {
1012
- if (argument.variadic) {
1013
- properties[argument.name] = {
1014
- type: "array",
1015
- items: { type: "string" },
1016
- description: argument.description ?? `Variadic argument '${argument.name}' for extension action '${contract.action}'.`
1017
- };
1018
- } else {
1019
- properties[argument.name] = {
1020
- type: "string",
1021
- description: argument.description ?? `Argument '${argument.name}' for extension action '${contract.action}'.`
1022
- };
1023
- }
1037
+ properties[argument.name] = buildExtensionArgumentSchema(argument, contract.action);
1024
1038
  if (argument.required) {
1025
1039
  required.push(argument.name);
1026
1040
  }
@@ -1030,13 +1044,7 @@ function buildExtensionActionSchemaBranch(contract) {
1030
1044
  if (!propertyName || properties[propertyName] !== void 0) {
1031
1045
  continue;
1032
1046
  }
1033
- const valueType = flag.value_type ?? "boolean";
1034
- const schemaType = valueType === "boolean" ? "boolean" : valueType === "number" ? ["number", "string"] : "string";
1035
- properties[propertyName] = {
1036
- type: flag.repeatable ? "array" : schemaType,
1037
- ...flag.repeatable ? { items: { type: schemaType } } : {},
1038
- description: flag.description ?? `Extension option '${flag.flag}' for action '${contract.action}'.`
1039
- };
1047
+ properties[propertyName] = buildExtensionFlagSchema(flag, contract.action);
1040
1048
  if (flag.required === true) {
1041
1049
  required.push(propertyName);
1042
1050
  }
@@ -1458,57 +1466,89 @@ function attachCreateRequiredOptionContracts(schema, metadata) {
1458
1466
  oneOf: enrichedBranches
1459
1467
  };
1460
1468
  }
1461
- async function runContracts(options, global) {
1462
- const selectedAction = normalizeToken(options.action);
1463
- const selectedCommand = normalizeToken(options.command);
1469
+ function resolveContractsSelection(options) {
1464
1470
  const schemaOnly = options.schemaOnly === true;
1465
1471
  const flagsOnly = options.flagsOnly === true;
1466
1472
  const availabilityOnly = options.availabilityOnly === true;
1467
1473
  const runtimeOnly = options.runtimeOnly === true;
1468
1474
  const fullOutput = options.full === true;
1475
+ const selectedAction = normalizeToken(options.action);
1476
+ const selectedCommand = normalizeToken(options.command);
1469
1477
  const unfilteredDefaultBriefMode = !fullOutput && !schemaOnly && !flagsOnly && !availabilityOnly && !selectedAction && !selectedCommand;
1470
- const omitUnfilteredSchema = unfilteredDefaultBriefMode;
1471
- const omitUnfilteredCommandFlags = unfilteredDefaultBriefMode;
1472
- const omitUnfilteredCommanderAliases = unfilteredDefaultBriefMode;
1473
- const projectionFlagsEnabled = [
1478
+ return {
1479
+ selectedAction,
1480
+ selectedCommand,
1474
1481
  schemaOnly,
1475
1482
  flagsOnly,
1476
- availabilityOnly
1483
+ availabilityOnly,
1484
+ runtimeOnly,
1485
+ fullOutput,
1486
+ omitUnfilteredSchema: unfilteredDefaultBriefMode,
1487
+ omitUnfilteredCommandFlags: unfilteredDefaultBriefMode,
1488
+ omitUnfilteredCommanderAliases: unfilteredDefaultBriefMode
1489
+ };
1490
+ }
1491
+ function assertSingleContractsProjection(selection) {
1492
+ const projectionFlagsEnabled = [
1493
+ selection.schemaOnly,
1494
+ selection.flagsOnly,
1495
+ selection.availabilityOnly
1477
1496
  ].filter((value) => value).length;
1478
1497
  if (projectionFlagsEnabled > 1) {
1479
1498
  throw new PmCliError("Choose only one projection flag: --schema-only, --flags-only, or --availability-only.", EXIT_CODE.USAGE);
1480
1499
  }
1481
- const pmRoot = resolvePmRoot(process.cwd(), global.path);
1482
- let settings = structuredClone(SETTINGS_DEFAULTS);
1500
+ }
1501
+ async function readContractsSettings(pmRoot) {
1483
1502
  try {
1484
- settings = await readSettings(pmRoot);
1503
+ return await readSettings(pmRoot);
1485
1504
  } catch {
1486
- settings = structuredClone(SETTINGS_DEFAULTS);
1505
+ return structuredClone(SETTINGS_DEFAULTS);
1487
1506
  }
1507
+ }
1508
+ async function resolveContractsRuntimeContext(global, pmRoot) {
1509
+ const settings = await readContractsSettings(pmRoot);
1488
1510
  const runtimeProbe = await resolveRuntimeExtensionActionProbe(global);
1489
1511
  const typeRegistry = resolveItemTypeRegistry(settings, runtimeProbe.registrations ?? getActiveExtensionRegistrations());
1490
- const statusRegistry = resolveRuntimeStatusRegistry(settings.schema);
1491
1512
  const runtimeFieldRegistry = resolveRuntimeFieldRegistry(settings.schema);
1492
- const runtimeFieldFlagMap = buildRuntimeFieldFlagContracts(runtimeFieldRegistry);
1493
- const createRequiredOptionContracts = buildCreateRequiredOptionContracts(typeRegistry);
1494
1513
  const extensionContracts = collectExtensionCommandContracts(runtimeProbe);
1495
- const mergedExtensionContracts = mergeExtensionContractsByAction(extensionContracts);
1496
- const extensionFlagMap = collectExtensionFlagContractsByCommand(runtimeProbe.flagRegistrations);
1497
- const includePackageOwnedActions = selectedAction !== void 0 && PACKAGE_OWNED_ACTIONS.has(selectedAction) && availabilityOnly || selectedCommand !== void 0 && PACKAGE_OWNED_COMMANDS.has(selectedCommand) && availabilityOnly;
1498
- const actionDescriptors = collectActionContractDescriptors(mergedExtensionContracts, { includePackageOwnedActions });
1499
- if (includePackageOwnedActions && selectedCommand !== void 0 && PACKAGE_OWNED_COMMANDS.has(selectedCommand) && !actionDescriptors.some((entry) => entry.command_path === selectedCommand)) {
1514
+ return {
1515
+ settings,
1516
+ runtimeProbe,
1517
+ typeRegistry,
1518
+ statusRegistry: resolveRuntimeStatusRegistry(settings.schema),
1519
+ runtimeFieldRegistry,
1520
+ runtimeFieldFlagMap: buildRuntimeFieldFlagContracts(runtimeFieldRegistry),
1521
+ createRequiredOptionContracts: buildCreateRequiredOptionContracts(typeRegistry),
1522
+ extensionContracts,
1523
+ mergedExtensionContracts: mergeExtensionContractsByAction(extensionContracts),
1524
+ extensionFlagMap: collectExtensionFlagContractsByCommand(runtimeProbe.flagRegistrations)
1525
+ };
1526
+ }
1527
+ function shouldIncludePackageOwnedActions(selection) {
1528
+ return selection.availabilityOnly && (selection.selectedAction !== void 0 && PACKAGE_OWNED_ACTIONS.has(selection.selectedAction) || selection.selectedCommand !== void 0 && PACKAGE_OWNED_COMMANDS.has(selection.selectedCommand));
1529
+ }
1530
+ function collectContractsActionDescriptors(selection, mergedExtensionContracts) {
1531
+ const actionDescriptors = collectActionContractDescriptors(mergedExtensionContracts, {
1532
+ includePackageOwnedActions: shouldIncludePackageOwnedActions(selection)
1533
+ });
1534
+ if (shouldIncludePackageOwnedActions(selection) && selection.selectedCommand !== void 0 && PACKAGE_OWNED_COMMANDS.has(selection.selectedCommand) && !actionDescriptors.some((entry) => entry.command_path === selection.selectedCommand)) {
1500
1535
  actionDescriptors.push({
1501
- action: packageOwnedActionForCommand(selectedCommand),
1536
+ action: packageOwnedActionForCommand(selection.selectedCommand),
1502
1537
  provider: "extension",
1503
1538
  requires_extension: true,
1504
- command_path: selectedCommand
1539
+ command_path: selection.selectedCommand
1505
1540
  });
1506
1541
  }
1542
+ return actionDescriptors;
1543
+ }
1544
+ function assertKnownContractsAction(selection, actionDescriptors) {
1507
1545
  const actionNames = new Set(actionDescriptors.map((entry) => entry.action));
1508
- if (selectedAction && !actionNames.has(selectedAction)) {
1509
- throw new PmCliError(`Unknown action: "${options.action}".`, EXIT_CODE.USAGE);
1546
+ if (selection.selectedAction && !actionNames.has(selection.selectedAction)) {
1547
+ throw new PmCliError(`Unknown action: "${selection.selectedAction}".`, EXIT_CODE.USAGE);
1510
1548
  }
1511
- const commandCatalog = [
1549
+ }
1550
+ function buildContractsCommandCatalog(actionDescriptors, mergedExtensionContracts) {
1551
+ return [
1512
1552
  .../* @__PURE__ */ new Set([
1513
1553
  ...PM_CORE_COMMAND_NAMES.filter((entry) => !PACKAGE_OWNED_COMMANDS.has(entry)),
1514
1554
  ...[...CORE_COMMAND_FLAG_CONTRACTS_BY_COMMAND.keys()].filter((entry) => !PACKAGE_OWNED_COMMANDS.has(entry)),
@@ -1517,66 +1557,103 @@ async function runContracts(options, global) {
1517
1557
  ...mergedExtensionContracts.flatMap((entry) => entry.command.split("|"))
1518
1558
  ])
1519
1559
  ].map((entry) => normalizeCommandPath(entry)).filter((entry) => entry.length > 0).sort((left, right) => left.localeCompare(right));
1520
- const commandNames = new Set(commandCatalog);
1521
- if (selectedCommand && !commandNames.has(selectedCommand)) {
1522
- const namespaceChildren = commandCatalog.filter((command) => command.startsWith(`${selectedCommand} `));
1523
- if (namespaceChildren.length > 0) {
1524
- const displayedNamespaceChildren = namespaceChildren.slice(0, COMMAND_NAMESPACE_DISPLAY_LIMIT);
1525
- const hiddenNamespaceChildCount = namespaceChildren.length - displayedNamespaceChildren.length;
1526
- const displayedChildCommandList = hiddenNamespaceChildCount > 0 ? `${displayedNamespaceChildren.join(", ")}, and ${hiddenNamespaceChildCount} more` : displayedNamespaceChildren.join(", ");
1527
- const fallbackCandidates = namespaceChildren.slice(0, COMMAND_NAMESPACE_FALLBACK_LIMIT);
1528
- const childCommandExamples = namespaceChildren.slice(0, 5).map((command) => `pm contracts --command "${command}" --flags-only --json`);
1529
- const suggestedChildCommand = namespaceChildren[0];
1530
- throw new PmCliError(`Command "${options.command}" is a command namespace. Choose a concrete child command: ${displayedChildCommandList}.`, EXIT_CODE.USAGE, {
1531
- code: "command_namespace",
1532
- required: "Use a concrete child command path listed under this namespace.",
1533
- why: "Command groups expose help at the namespace root, but command flag contracts belong to executable child commands.",
1534
- examples: childCommandExamples,
1535
- nextSteps: [
1536
- `Retry with a child command, for example: ${childCommandExamples[0]}`
1537
- ],
1538
- recovery: {
1539
- suggested_retry: `pm contracts --command "${suggestedChildCommand}" --flags-only --json`,
1540
- fallback_candidates: fallbackCandidates.map((command) => ({
1541
- source: "command_namespace",
1542
- command: `pm contracts --command "${command}" --flags-only --json`,
1543
- reason: `Child command under ${selectedCommand}`
1544
- }))
1545
- }
1546
- });
1560
+ }
1561
+ function buildCommandNamespaceError(command, namespaceChildren) {
1562
+ const displayedNamespaceChildren = namespaceChildren.slice(0, COMMAND_NAMESPACE_DISPLAY_LIMIT);
1563
+ const hiddenNamespaceChildCount = namespaceChildren.length - displayedNamespaceChildren.length;
1564
+ const displayedChildCommandList = hiddenNamespaceChildCount > 0 ? `${displayedNamespaceChildren.join(", ")}, and ${hiddenNamespaceChildCount} more` : displayedNamespaceChildren.join(", ");
1565
+ const fallbackCandidates = namespaceChildren.slice(0, COMMAND_NAMESPACE_FALLBACK_LIMIT);
1566
+ const childCommandExamples = namespaceChildren.slice(0, 5).map((childCommand) => `pm contracts --command "${childCommand}" --flags-only --json`);
1567
+ const suggestedChildCommand = namespaceChildren[0];
1568
+ return new PmCliError(`Command "${command}" is a command namespace. Choose a concrete child command: ${displayedChildCommandList}.`, EXIT_CODE.USAGE, {
1569
+ code: "command_namespace",
1570
+ required: "Use a concrete child command path listed under this namespace.",
1571
+ why: "Command groups expose help at the namespace root, but command flag contracts belong to executable child commands.",
1572
+ examples: childCommandExamples,
1573
+ nextSteps: [`Retry with a child command, for example: ${childCommandExamples[0]}`],
1574
+ recovery: {
1575
+ suggested_retry: `pm contracts --command "${suggestedChildCommand}" --flags-only --json`,
1576
+ fallback_candidates: fallbackCandidates.map((childCommand) => ({
1577
+ source: "command_namespace",
1578
+ command: `pm contracts --command "${childCommand}" --flags-only --json`,
1579
+ reason: `Child command under ${command}`
1580
+ }))
1547
1581
  }
1548
- const packageHint = PACKAGE_OWNED_COMMAND_INSTALL_HINTS.get(selectedCommand);
1549
- if (packageHint) {
1550
- throw new PmCliError(`Unknown command: "${options.command}". Command "${selectedCommand}" is provided by the optional "${packageHint}" package. Run "pm install ${packageHint} --project" and retry.`, EXIT_CODE.USAGE, {
1551
- code: "unknown_command",
1552
- required: `Install the optional "${packageHint}" package, or choose a command from pm contracts --flags-only --json.`,
1553
- why: "Command contracts include core commands plus commands registered by active packages and extensions.",
1554
- examples: [`pm install ${packageHint} --project`, `pm contracts --command ${selectedCommand} --flags-only --json`],
1555
- nextSteps: [`Install the optional package first: pm install ${packageHint} --project`],
1556
- recovery: {
1557
- suggested_retry: `pm install ${packageHint} --project`
1558
- }
1559
- });
1582
+ });
1583
+ }
1584
+ function buildPackageOwnedCommandError(command, packageHint) {
1585
+ return new PmCliError(`Unknown command: "${command}". Command "${command}" is provided by the optional "${packageHint}" package. Run "pm install ${packageHint} --project" and retry.`, EXIT_CODE.USAGE, {
1586
+ code: "unknown_command",
1587
+ required: `Install the optional "${packageHint}" package, or choose a command from pm contracts --flags-only --json.`,
1588
+ why: "Command contracts include core commands plus commands registered by active packages and extensions.",
1589
+ examples: [`pm install ${packageHint} --project`, `pm contracts --command ${command} --flags-only --json`],
1590
+ nextSteps: [`Install the optional package first: pm install ${packageHint} --project`],
1591
+ recovery: {
1592
+ suggested_retry: `pm install ${packageHint} --project`
1560
1593
  }
1561
- throw new PmCliError(`Unknown command: "${options.command}".`, EXIT_CODE.USAGE, {
1562
- code: "unknown_command",
1563
- required: "Use a command path listed by pm contracts --flags-only --json.",
1564
- why: "Command contracts are generated from the active core, package, and extension command registry.",
1565
- examples: ["pm contracts --flags-only --json", "pm --help"],
1566
- nextSteps: ["Verify spelling and active packages/extensions, then rerun with a known command path."],
1567
- recovery: {
1568
- suggested_retry: "pm contracts --flags-only --json"
1569
- }
1570
- });
1594
+ });
1595
+ }
1596
+ function buildUnknownCommandError(command) {
1597
+ return new PmCliError(`Unknown command: "${command}".`, EXIT_CODE.USAGE, {
1598
+ code: "unknown_command",
1599
+ required: "Use a command path listed by pm contracts --flags-only --json.",
1600
+ why: "Command contracts are generated from the active core, package, and extension command registry.",
1601
+ examples: ["pm contracts --flags-only --json", "pm --help"],
1602
+ nextSteps: ["Verify spelling and active packages/extensions, then rerun with a known command path."],
1603
+ recovery: {
1604
+ suggested_retry: "pm contracts --flags-only --json"
1605
+ }
1606
+ });
1607
+ }
1608
+ function assertKnownContractsCommand(selection, commandCatalog) {
1609
+ if (!selection.selectedCommand) {
1610
+ return;
1571
1611
  }
1572
- const selectedPackageOwnedAction = selectedCommand ? PACKAGE_OWNED_COMMAND_ACTIONS.get(selectedCommand) : void 0;
1573
- const commandScopedDescriptors = selectedCommand ? actionDescriptors.filter((descriptor) => selectedPackageOwnedAction ? descriptor.action === selectedPackageOwnedAction : actionDescriptorMatchesSelectedCommand(descriptor, selectedCommand)) : actionDescriptors;
1574
- if (selectedCommand && selectedAction && !commandScopedDescriptors.some((descriptor) => descriptor.action === selectedAction)) {
1575
- throw new PmCliError(`Action "${options.action}" is not mapped to command "${options.command}" in contracts output.`, EXIT_CODE.USAGE);
1612
+ const commandNames = new Set(commandCatalog);
1613
+ if (commandNames.has(selection.selectedCommand)) {
1614
+ return;
1576
1615
  }
1577
- const schema = PM_TOOL_PARAMETERS_SCHEMA;
1578
- const schemaBranches = extractActionBranches(schema);
1579
- const schemaActionSet = new Set(schemaBranches.map((entry) => {
1616
+ const namespaceChildren = commandCatalog.filter((command) => command.startsWith(`${selection.selectedCommand} `));
1617
+ if (namespaceChildren.length > 0) {
1618
+ throw buildCommandNamespaceError(selection.selectedCommand, namespaceChildren);
1619
+ }
1620
+ const packageHint = PACKAGE_OWNED_COMMAND_INSTALL_HINTS.get(selection.selectedCommand);
1621
+ if (packageHint) {
1622
+ throw buildPackageOwnedCommandError(selection.selectedCommand, packageHint);
1623
+ }
1624
+ throw buildUnknownCommandError(selection.selectedCommand);
1625
+ }
1626
+ function resolveContractsActionContext(selection, runtime) {
1627
+ const actionDescriptors = collectContractsActionDescriptors(selection, runtime.mergedExtensionContracts);
1628
+ assertKnownContractsAction(selection, actionDescriptors);
1629
+ const commandCatalog = buildContractsCommandCatalog(actionDescriptors, runtime.mergedExtensionContracts);
1630
+ assertKnownContractsCommand(selection, commandCatalog);
1631
+ const selectedPackageOwnedAction = selection.selectedCommand ? PACKAGE_OWNED_COMMAND_ACTIONS.get(selection.selectedCommand) : void 0;
1632
+ const commandScopedDescriptors = selection.selectedCommand ? actionDescriptors.filter((descriptor) => selectedPackageOwnedAction ? descriptor.action === selectedPackageOwnedAction : actionDescriptorMatchesSelectedCommand(descriptor, selection.selectedCommand)) : actionDescriptors;
1633
+ if (selection.selectedCommand && selection.selectedAction && !commandScopedDescriptors.some((descriptor) => descriptor.action === selection.selectedAction)) {
1634
+ throw new PmCliError(`Action "${selection.selectedAction}" is not mapped to command "${selection.selectedCommand}" in contracts output.`, EXIT_CODE.USAGE);
1635
+ }
1636
+ const scopedActionDescriptors = selection.selectedAction ? commandScopedDescriptors.filter((descriptor) => descriptor.action === selection.selectedAction) : commandScopedDescriptors;
1637
+ const allActionAvailability = [
1638
+ ...new Map(scopedActionDescriptors.map((descriptor) => resolveActionAvailability(descriptor, runtime.runtimeProbe)).map((entry) => [
1639
+ /* c8 ignore next -- keyed dedupe by action|path is covered by runtime policy integration tests. */
1640
+ selectedPackageOwnedAction ? entry.action : `${entry.action}|${entry.command_path ?? ""}`,
1641
+ entry
1642
+ ])).values()
1643
+ ];
1644
+ const actionAvailability = selection.runtimeOnly && !selection.selectedAction && !selection.availabilityOnly ? allActionAvailability.filter((entry) => entry.invocable) : allActionAvailability;
1645
+ return {
1646
+ actionDescriptors,
1647
+ commandCatalog,
1648
+ commandScopedDescriptors,
1649
+ scopedActionDescriptors,
1650
+ selectedPackageOwnedAction,
1651
+ actionAvailability,
1652
+ actions: [...new Set(actionAvailability.map((entry) => entry.action))]
1653
+ };
1654
+ }
1655
+ function buildSchemaActionSet(schema) {
1656
+ return new Set(extractActionBranches(schema).map((entry) => {
1580
1657
  const properties = entry.properties;
1581
1658
  if (typeof properties !== "object" || properties === null) {
1582
1659
  return null;
@@ -1588,113 +1665,157 @@ async function runContracts(options, global) {
1588
1665
  const actionConst = actionProperty.const;
1589
1666
  return typeof actionConst === "string" ? actionConst : null;
1590
1667
  }).filter((entry) => entry !== null));
1668
+ }
1669
+ function buildMergedContractsSchema(mergedExtensionContracts) {
1670
+ const schema = PM_TOOL_PARAMETERS_SCHEMA;
1671
+ const schemaBranches = extractActionBranches(schema);
1672
+ const schemaActionSet = buildSchemaActionSet(schema);
1591
1673
  const extensionBranches = mergedExtensionContracts.filter((contract) => !schemaActionSet.has(contract.action)).map((contract) => buildExtensionActionSchemaBranch(contract));
1592
- const mergedSchema = extensionBranches.length > 0 ? {
1674
+ return extensionBranches.length > 0 ? {
1593
1675
  ...schema,
1594
1676
  oneOf: [...schemaBranches, ...extensionBranches]
1595
1677
  } : schema;
1596
- const scopedActionDescriptors = selectedAction ? commandScopedDescriptors.filter((descriptor) => descriptor.action === selectedAction) : commandScopedDescriptors;
1597
- const allActionAvailability = [
1598
- ...new Map(scopedActionDescriptors.map((descriptor) => resolveActionAvailability(descriptor, runtimeProbe)).map((entry) => [
1599
- /* c8 ignore next -- keyed dedupe by action|path is covered by runtime policy integration tests. */
1600
- selectedPackageOwnedAction ? entry.action : `${entry.action}|${entry.command_path ?? ""}`,
1601
- entry
1602
- ])).values()
1603
- ];
1604
- const actionAvailability = runtimeOnly && !selectedAction && !availabilityOnly ? allActionAvailability.filter((entry) => entry.invocable) : allActionAvailability;
1605
- const actions = [...new Set(actionAvailability.map((entry) => entry.action))];
1606
- const descriptorActionSet = new Set(actionDescriptors.map((descriptor) => descriptor.action));
1607
- let filteredSchema = selectedAction ? filterSchemaByAction(mergedSchema, selectedAction) : selectedCommand ? filterSchemaByActions(mergedSchema, new Set(scopedActionDescriptors.map((descriptor) => descriptor.action))) : filterSchemaByActions(mergedSchema, descriptorActionSet);
1608
- if (runtimeOnly && !selectedAction) {
1609
- filteredSchema = filterSchemaByActions(filteredSchema, new Set(actions));
1610
- }
1611
- const includeSchemaSurface = !flagsOnly && !availabilityOnly;
1612
- if (includeSchemaSurface) {
1613
- filteredSchema = attachCreateRequiredOptionContracts(filteredSchema, createRequiredOptionContracts);
1614
- }
1615
- const commands = selectedCommand !== void 0 ? [selectedCommand] : selectedAction ? resolveScopedCommandsFromActionDescriptors(scopedActionDescriptors, commandCatalog) : commandCatalog;
1616
- const outputCommands = flagsOnly && selectedCommand === void 0 && selectedAction === void 0 ? compactCommandAliasSurface(commands) : commands;
1617
- const commandAliases = buildCommandAliasSurface(commands);
1618
- const extensionCommandContracts = selectedCommand ? extensionContracts.filter((entry) => entry.command === selectedCommand) : selectedAction ? extensionContracts.filter((entry) => outputCommands.includes(normalizeCommandPath(entry.command))) : extensionContracts;
1619
- const includeRuntimeContractSections = !(flagsOnly && !fullOutput);
1620
- const result = {
1678
+ }
1679
+ function filterContractsSchema(selection, actionContext, mergedSchema) {
1680
+ const descriptorActionSet = new Set(actionContext.actionDescriptors.map((descriptor) => descriptor.action));
1681
+ const filteredSchema = selection.selectedAction ? filterSchemaByAction(mergedSchema, selection.selectedAction) : selection.selectedCommand ? filterSchemaByActions(mergedSchema, new Set(actionContext.scopedActionDescriptors.map((descriptor) => descriptor.action))) : filterSchemaByActions(mergedSchema, descriptorActionSet);
1682
+ return selection.runtimeOnly && !selection.selectedAction ? filterSchemaByActions(filteredSchema, new Set(actionContext.actions)) : filteredSchema;
1683
+ }
1684
+ function resolveContractsSchemaContext(selection, runtime, actionContext) {
1685
+ const mergedSchema = buildMergedContractsSchema(runtime.mergedExtensionContracts);
1686
+ const includeSchemaSurface = !selection.flagsOnly && !selection.availabilityOnly;
1687
+ const filteredSchema = includeSchemaSurface ? attachCreateRequiredOptionContracts(filterContractsSchema(selection, actionContext, mergedSchema), runtime.createRequiredOptionContracts) : filterContractsSchema(selection, actionContext, mergedSchema);
1688
+ return { mergedSchema, filteredSchema };
1689
+ }
1690
+ function resolveContractsCommands(selection, actionContext) {
1691
+ if (selection.selectedCommand !== void 0) {
1692
+ return [selection.selectedCommand];
1693
+ }
1694
+ if (selection.selectedAction) {
1695
+ return resolveScopedCommandsFromActionDescriptors(actionContext.scopedActionDescriptors, actionContext.commandCatalog);
1696
+ }
1697
+ return actionContext.commandCatalog;
1698
+ }
1699
+ function resolveOutputCommands(selection, commands) {
1700
+ return selection.flagsOnly && selection.selectedCommand === void 0 && selection.selectedAction === void 0 ? compactCommandAliasSurface(commands) : commands;
1701
+ }
1702
+ function resolveExtensionCommandContracts(selection, runtime, outputCommands) {
1703
+ if (selection.selectedCommand) {
1704
+ return runtime.extensionContracts.filter((entry) => splitCommandPathAliases(entry.command).includes(selection.selectedCommand));
1705
+ }
1706
+ if (selection.selectedAction) {
1707
+ const outputCommandSet = new Set(outputCommands);
1708
+ return runtime.extensionContracts.filter((entry) => splitCommandPathAliases(entry.command).some((command) => outputCommandSet.has(command)));
1709
+ }
1710
+ return runtime.extensionContracts;
1711
+ }
1712
+ function createContractsResult(selection, schemaContext, actionContext, outputCommands) {
1713
+ return {
1621
1714
  schema_version: (
1622
1715
  /* c8 ignore next -- schema version/id fallbacks are exercised by schema snapshot tests. */
1623
- typeof mergedSchema["x-schema-version"] === "string" ? mergedSchema["x-schema-version"] : null
1716
+ typeof schemaContext.mergedSchema["x-schema-version"] === "string" ? schemaContext.mergedSchema["x-schema-version"] : null
1624
1717
  ),
1625
1718
  schema_id: (
1626
1719
  /* c8 ignore next -- schema version/id fallbacks are exercised by schema snapshot tests. */
1627
- typeof mergedSchema.$id === "string" ? mergedSchema.$id : null
1720
+ typeof schemaContext.mergedSchema.$id === "string" ? schemaContext.mergedSchema.$id : null
1628
1721
  ),
1629
1722
  selected: {
1630
- action: selectedAction ?? null,
1631
- command: selectedCommand ?? null,
1632
- schema_only: schemaOnly,
1633
- flags_only: flagsOnly,
1634
- availability_only: availabilityOnly,
1635
- runtime_only: runtimeOnly,
1636
- command_scoped: selectedCommand !== void 0
1723
+ action: selection.selectedAction ?? null,
1724
+ command: selection.selectedCommand ?? null,
1725
+ schema_only: selection.schemaOnly,
1726
+ flags_only: selection.flagsOnly,
1727
+ availability_only: selection.availabilityOnly,
1728
+ runtime_only: selection.runtimeOnly,
1729
+ command_scoped: selection.selectedCommand !== void 0
1637
1730
  },
1638
- commands: outputCommands
1731
+ commands: outputCommands,
1732
+ ...!selection.flagsOnly ? {
1733
+ actions: actionContext.actions,
1734
+ action_availability: actionContext.actionAvailability
1735
+ } : {}
1639
1736
  };
1640
- if (includeRuntimeContractSections) {
1641
- result.runtime_schema = {
1642
- statuses: statusRegistry.definitions.map((definition) => definition.id),
1643
- open_status: statusRegistry.open_status,
1644
- close_status: statusRegistry.close_status,
1645
- canceled_status: statusRegistry.canceled_status,
1646
- types: [...typeRegistry.types],
1647
- fields_by_command: Object.fromEntries([...runtimeFieldRegistry.command_to_fields.entries()].map(([command, definitions]) => [
1648
- command,
1649
- [
1650
- ...new Set(definitions.map((definition) => `--${definition.cli_flag}`))
1651
- ].sort((left, right) => left.localeCompare(right))
1652
- ]))
1653
- };
1654
- result.extension_contracts = {
1655
- capabilities: [...PM_EXTENSION_CAPABILITY_CONTRACTS],
1656
- services: [...PM_EXTENSION_SERVICE_NAME_CONTRACTS],
1657
- policy_modes: [...PM_EXTENSION_POLICY_MODE_CONTRACTS],
1658
- policy_surfaces: [...PM_EXTENSION_POLICY_SURFACE_CONTRACTS],
1659
- trust_modes: [...PM_EXTENSION_TRUST_MODE_CONTRACTS],
1660
- sandbox_profiles: [...PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS],
1661
- manifest_versions: [1, 2],
1662
- compatibility: {
1663
- current: "v2",
1664
- previous: ["v1"],
1665
- breaking_strategy: "versioned_breaking"
1666
- }
1667
- };
1668
- }
1669
- if (!flagsOnly) {
1670
- result.actions = actions;
1671
- result.action_availability = actionAvailability;
1737
+ }
1738
+ function attachRuntimeContractsResult(result, runtime) {
1739
+ result.runtime_schema = {
1740
+ statuses: runtime.statusRegistry.definitions.map((definition) => definition.id),
1741
+ open_status: runtime.statusRegistry.open_status,
1742
+ close_status: runtime.statusRegistry.close_status,
1743
+ canceled_status: runtime.statusRegistry.canceled_status,
1744
+ types: [...runtime.typeRegistry.types],
1745
+ fields_by_command: Object.fromEntries([...runtime.runtimeFieldRegistry.command_to_fields.entries()].map(([command, definitions]) => [
1746
+ command,
1747
+ [...new Set(definitions.map((definition) => `--${definition.cli_flag}`))].sort((left, right) => left.localeCompare(right))
1748
+ ]))
1749
+ };
1750
+ result.extension_contracts = {
1751
+ capabilities: [...PM_EXTENSION_CAPABILITY_CONTRACTS],
1752
+ services: [...PM_EXTENSION_SERVICE_NAME_CONTRACTS],
1753
+ policy_modes: [...PM_EXTENSION_POLICY_MODE_CONTRACTS],
1754
+ policy_surfaces: [...PM_EXTENSION_POLICY_SURFACE_CONTRACTS],
1755
+ trust_modes: [...PM_EXTENSION_TRUST_MODE_CONTRACTS],
1756
+ sandbox_profiles: [...PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS],
1757
+ manifest_versions: [1, 2],
1758
+ compatibility: {
1759
+ current: "v2",
1760
+ previous: ["v1"],
1761
+ breaking_strategy: "versioned_breaking"
1762
+ }
1763
+ };
1764
+ }
1765
+ function attachSchemaContractsResult(result, selection, schemaContext, extensionCommandContracts) {
1766
+ if (selection.flagsOnly || selection.availabilityOnly) {
1767
+ return;
1672
1768
  }
1673
- if (includeSchemaSurface && !omitUnfilteredSchema) {
1674
- result.schema = filteredSchema;
1675
- result.extension_commands = extensionCommandContracts;
1676
- } else if (includeSchemaSurface && omitUnfilteredSchema) {
1677
- result.schema_omitted_reason = "unfiltered_default_brief";
1769
+ if (!selection.omitUnfilteredSchema) {
1770
+ result.schema = schemaContext.filteredSchema;
1678
1771
  result.extension_commands = extensionCommandContracts;
1772
+ return;
1679
1773
  }
1680
- if (!schemaOnly && !availabilityOnly) {
1681
- if (!omitUnfilteredCommandFlags) {
1682
- result.command_flags = buildCommandFlagSurface(outputCommands, extensionFlagMap, runtimeFieldFlagMap);
1683
- } else {
1684
- result.command_flags_omitted_reason = "unfiltered_default_brief";
1685
- }
1686
- if (commandAliases.length > 0) {
1687
- result.command_aliases = commandAliases;
1688
- }
1774
+ result.schema_omitted_reason = "unfiltered_default_brief";
1775
+ result.extension_commands = extensionCommandContracts;
1776
+ }
1777
+ function attachFlagContractsResult(result, selection, runtime, outputCommands, commandAliases) {
1778
+ if (selection.schemaOnly || selection.availabilityOnly) {
1779
+ return;
1689
1780
  }
1690
- if (!schemaOnly && !flagsOnly && !availabilityOnly) {
1691
- if (!omitUnfilteredCommanderAliases) {
1692
- result.commander_aliases = buildCommanderAliasSurface();
1693
- } else {
1694
- result.commander_aliases_omitted_reason = "unfiltered_default_brief";
1695
- }
1781
+ if (!selection.omitUnfilteredCommandFlags) {
1782
+ result.command_flags = buildCommandFlagSurface(outputCommands, runtime.extensionFlagMap, runtime.runtimeFieldFlagMap);
1783
+ } else {
1784
+ result.command_flags_omitted_reason = "unfiltered_default_brief";
1785
+ }
1786
+ if (commandAliases.length > 0) {
1787
+ result.command_aliases = commandAliases;
1696
1788
  }
1697
- if (fullOutput && !schemaOnly && !flagsOnly && !availabilityOnly) {
1789
+ }
1790
+ function attachCommanderAliasContractsResult(result, selection) {
1791
+ if (selection.schemaOnly || selection.flagsOnly || selection.availabilityOnly) {
1792
+ return;
1793
+ }
1794
+ if (!selection.omitUnfilteredCommanderAliases) {
1795
+ result.commander_aliases = buildCommanderAliasSurface();
1796
+ return;
1797
+ }
1798
+ result.commander_aliases_omitted_reason = "unfiltered_default_brief";
1799
+ }
1800
+ async function runContracts(options, global) {
1801
+ const selection = resolveContractsSelection(options);
1802
+ assertSingleContractsProjection(selection);
1803
+ const pmRoot = resolvePmRoot(process.cwd(), global.path);
1804
+ const runtime = await resolveContractsRuntimeContext(global, pmRoot);
1805
+ const actionContext = resolveContractsActionContext(selection, runtime);
1806
+ const schemaContext = resolveContractsSchemaContext(selection, runtime, actionContext);
1807
+ const commands = resolveContractsCommands(selection, actionContext);
1808
+ const outputCommands = resolveOutputCommands(selection, commands);
1809
+ const commandAliases = buildCommandAliasSurface(commands);
1810
+ const extensionCommandContracts = resolveExtensionCommandContracts(selection, runtime, outputCommands);
1811
+ const result = createContractsResult(selection, schemaContext, actionContext, outputCommands);
1812
+ if (!(selection.flagsOnly && !selection.fullOutput)) {
1813
+ attachRuntimeContractsResult(result, runtime);
1814
+ }
1815
+ attachSchemaContractsResult(result, selection, schemaContext, extensionCommandContracts);
1816
+ attachFlagContractsResult(result, selection, runtime, outputCommands, commandAliases);
1817
+ attachCommanderAliasContractsResult(result, selection);
1818
+ if (selection.fullOutput && !selection.schemaOnly && !selection.flagsOnly && !selection.availabilityOnly) {
1698
1819
  result.mcp_tools = buildMcpToolContracts();
1699
1820
  }
1700
1821
  return result;
@@ -1729,6 +1850,6 @@ export {
1729
1850
  _testOnlyContractsCommand,
1730
1851
  runContracts
1731
1852
  };
1732
- //# sourceMappingURL=contracts-W4FZVVD6.js.map
1853
+ //# sourceMappingURL=contracts-FIZLMP7O.js.map
1733
1854
 
1734
- //# debugId=443758db-53e4-5330-933e-f1da0312c399
1855
+ //# debugId=21765ce8-2cab-5cbb-b2c1-fb35eb307032