@unbrained/pm-cli 2026.6.22 → 2026.6.24

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 (425) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/dist/cli/commands/completion.js +5 -4
  3. package/dist/cli/commands/completion.js.map +1 -1
  4. package/dist/cli/commands/contracts.js +4 -3
  5. package/dist/cli/commands/contracts.js.map +1 -1
  6. package/dist/cli/commands/extension/describe.d.ts +70 -0
  7. package/dist/cli/commands/extension/describe.js +76 -0
  8. package/dist/cli/commands/extension/describe.js.map +1 -0
  9. package/dist/cli/commands/extension/scaffold.js +183 -47
  10. package/dist/cli/commands/extension/scaffold.js.map +1 -1
  11. package/dist/cli/commands/extension.d.ts +2 -1
  12. package/dist/cli/commands/extension.js +36 -4
  13. package/dist/cli/commands/extension.js.map +1 -1
  14. package/dist/cli/help-content.js +6 -2
  15. package/dist/cli/help-content.js.map +1 -1
  16. package/dist/cli/register-setup.js +10 -2
  17. package/dist/cli/register-setup.js.map +1 -1
  18. package/dist/cli-bundle/chunks/activity-54TXGJ2T.js +18 -0
  19. package/dist/cli-bundle/chunks/{activity-DXS2XMQU.js → activity-N7RVTLBQ.js} +11 -11
  20. package/dist/cli-bundle/chunks/{aggregate-IHM4KMQ3.js → aggregate-63NWNIBR.js} +10 -10
  21. package/dist/cli-bundle/chunks/{aggregate-NMYDVQF7.js → aggregate-YHCYX2EV.js} +10 -10
  22. package/dist/cli-bundle/chunks/{append-3HY5G7ET.js → append-PUKREFV5.js} +8 -8
  23. package/dist/cli-bundle/chunks/{append-K54MDQYC.js → append-VLQQDHMJ.js} +8 -8
  24. package/dist/cli-bundle/chunks/{chunk-DU64SZUQ.js → chunk-2WCYE3IF.js} +2 -2
  25. package/dist/cli-bundle/chunks/{chunk-NKZOJPXK.js → chunk-3BKH2CL3.js} +3 -3
  26. package/dist/cli-bundle/chunks/{chunk-7MALIV5H.js → chunk-4XDGYFHL.js} +9 -9
  27. package/dist/cli-bundle/chunks/{chunk-VB54F347.js → chunk-5BBEWX6C.js} +2 -2
  28. package/dist/cli-bundle/chunks/{chunk-DHBPJ7VG.js → chunk-5S4ZGDB2.js} +2 -2
  29. package/dist/cli-bundle/chunks/{chunk-UKK2VTTH.js → chunk-6EBNFQOR.js} +9 -9
  30. package/dist/cli-bundle/chunks/{chunk-5SESR24H.js → chunk-6EL7SW5C.js} +8 -8
  31. package/dist/cli-bundle/chunks/{chunk-JLSC5NPC.js → chunk-6W3Y65PL.js} +10 -10
  32. package/dist/cli-bundle/chunks/{chunk-HYQV75IB.js → chunk-A66VYUOV.js} +7 -7
  33. package/dist/cli-bundle/chunks/{chunk-I367IDZP.js → chunk-ABYCA5VX.js} +7 -7
  34. package/dist/cli-bundle/chunks/{chunk-47HTJ6BU.js → chunk-AEACLRVH.js} +5 -5
  35. package/dist/cli-bundle/chunks/{chunk-MD7XKVWI.js → chunk-ALKFCIIB.js} +7 -7
  36. package/dist/cli-bundle/chunks/{chunk-B2KR24R4.js → chunk-ALQKV6U7.js} +9 -9
  37. package/dist/cli-bundle/chunks/{chunk-NIWY4V4Z.js → chunk-AYPQUFCX.js} +3 -3
  38. package/dist/cli-bundle/chunks/{chunk-AJXYOYJV.js → chunk-B74BP6IS.js} +2 -2
  39. package/dist/cli-bundle/chunks/{chunk-THKDPOS5.js → chunk-BFFO3AIB.js} +8 -8
  40. package/dist/cli-bundle/chunks/{chunk-CR7KFPAQ.js → chunk-C4C3EJCJ.js} +3 -3
  41. package/dist/cli-bundle/chunks/{chunk-J2TSPY5L.js → chunk-CG3KP6I5.js} +4 -4
  42. package/dist/cli-bundle/chunks/{chunk-CWPBGUC7.js → chunk-CZIFFMZI.js} +2 -2
  43. package/dist/cli-bundle/chunks/{chunk-75VEYQJS.js → chunk-DTABLLVE.js} +3 -3
  44. package/dist/cli-bundle/chunks/{chunk-TIKJAXQW.js → chunk-EOGBMLCE.js} +3 -3
  45. package/dist/cli-bundle/chunks/{chunk-YATDFWYK.js → chunk-EWRSXOIZ.js} +7 -7
  46. package/dist/cli-bundle/chunks/{chunk-RZZMSY4P.js → chunk-EYPINTFR.js} +151 -98
  47. package/dist/cli-bundle/chunks/chunk-EYPINTFR.js.map +7 -0
  48. package/dist/cli-bundle/chunks/{chunk-RPRFBXND.js → chunk-F32L4HR6.js} +3 -3
  49. package/dist/cli-bundle/chunks/{chunk-NVUATMTC.js → chunk-F4BNR2IN.js} +3 -3
  50. package/dist/cli-bundle/chunks/{chunk-Y4BZEND6.js → chunk-FBLT6WGK.js} +2 -2
  51. package/dist/cli-bundle/chunks/{chunk-PCH2JTEO.js → chunk-FMWW2JDU.js} +2 -2
  52. package/dist/cli-bundle/chunks/{chunk-WQDX7DVG.js → chunk-GDUMGZK3.js} +7 -7
  53. package/dist/cli-bundle/chunks/{chunk-KBTREGVO.js → chunk-GQYJEEFX.js} +8 -5
  54. package/dist/cli-bundle/chunks/{chunk-KBTREGVO.js.map → chunk-GQYJEEFX.js.map} +1 -1
  55. package/dist/cli-bundle/chunks/{chunk-FK6MV5F5.js → chunk-HBAEFWX3.js} +12 -12
  56. package/dist/cli-bundle/chunks/{chunk-6UPTNMVW.js → chunk-HC2S36NB.js} +5 -5
  57. package/dist/cli-bundle/chunks/{chunk-XKNF3VRJ.js → chunk-HZF5RLKX.js} +5 -5
  58. package/dist/cli-bundle/chunks/{chunk-4JXWVHMN.js → chunk-I6QMJ2XT.js} +2 -2
  59. package/dist/cli-bundle/chunks/{chunk-44O4JIN6.js → chunk-IAP5KYBQ.js} +13 -13
  60. package/dist/cli-bundle/chunks/{chunk-4YJA4LGU.js → chunk-INPHFO33.js} +160 -42
  61. package/dist/cli-bundle/chunks/chunk-INPHFO33.js.map +7 -0
  62. package/dist/cli-bundle/chunks/{chunk-A7E4ZXG2.js → chunk-IOT6WRL5.js} +2 -2
  63. package/dist/cli-bundle/chunks/{chunk-KRJJPDUO.js → chunk-IXAZI443.js} +2 -2
  64. package/dist/cli-bundle/chunks/{chunk-DMT4ODVN.js → chunk-J3NMWFIN.js} +2 -2
  65. package/dist/cli-bundle/chunks/{chunk-7PBGTIN3.js → chunk-J7I4C5ZB.js} +5 -5
  66. package/dist/cli-bundle/chunks/{chunk-7GCCDXXN.js → chunk-JKL6HRMV.js} +123 -8
  67. package/dist/cli-bundle/chunks/chunk-JKL6HRMV.js.map +7 -0
  68. package/dist/cli-bundle/chunks/{chunk-CLLVBO3I.js → chunk-JPJDP4VU.js} +2 -2
  69. package/dist/cli-bundle/chunks/{chunk-PJS2J7Z4.js → chunk-JV27C7OZ.js} +3 -3
  70. package/dist/cli-bundle/chunks/{chunk-K25UDYJ4.js → chunk-KIEAK7YE.js} +2 -2
  71. package/dist/cli-bundle/chunks/{chunk-GGAXE22C.js → chunk-KJZOSF7J.js} +6 -6
  72. package/dist/cli-bundle/chunks/{chunk-GXBSFKSX.js → chunk-KKX4Z2SE.js} +4 -4
  73. package/dist/cli-bundle/chunks/{chunk-D35LTIFR.js → chunk-L7UXKP2I.js} +110 -9
  74. package/dist/cli-bundle/chunks/chunk-L7UXKP2I.js.map +1 -0
  75. package/dist/cli-bundle/chunks/{chunk-C5SWTISA.js → chunk-LNEDHJNQ.js} +12 -12
  76. package/dist/cli-bundle/chunks/{chunk-YRLLL5TY.js → chunk-LU36E6GU.js} +8 -8
  77. package/dist/cli-bundle/chunks/{chunk-I6XE47J2.js → chunk-M6TUBOGW.js} +5 -5
  78. package/dist/cli-bundle/chunks/{chunk-DBQUQ3AS.js → chunk-MEXZ5XUM.js} +7 -4
  79. package/dist/cli-bundle/chunks/{chunk-DBQUQ3AS.js.map → chunk-MEXZ5XUM.js.map} +2 -2
  80. package/dist/cli-bundle/chunks/{chunk-YJICYNAV.js → chunk-MWMHZOZZ.js} +8 -8
  81. package/dist/cli-bundle/chunks/{chunk-SFKQAVZA.js → chunk-N5B6WZC5.js} +8 -8
  82. package/dist/cli-bundle/chunks/{chunk-3GL6LTUL.js → chunk-NJ73ALW2.js} +161 -43
  83. package/dist/cli-bundle/chunks/chunk-NJ73ALW2.js.map +1 -0
  84. package/dist/cli-bundle/chunks/{chunk-WBSYW3NT.js → chunk-NVXGVEFD.js} +2 -2
  85. package/dist/cli-bundle/chunks/{chunk-7MPTFYT3.js → chunk-OF7V47P3.js} +15 -4
  86. package/dist/cli-bundle/chunks/chunk-OF7V47P3.js.map +1 -0
  87. package/dist/cli-bundle/chunks/{chunk-GNDHOR64.js → chunk-OHDQNKJB.js} +6 -6
  88. package/dist/cli-bundle/chunks/{chunk-2LEYMXI6.js → chunk-OQ2E64FH.js} +4 -4
  89. package/dist/cli-bundle/chunks/{chunk-25XZN3JD.js → chunk-PEL2NLQE.js} +2 -2
  90. package/dist/cli-bundle/chunks/{chunk-H6FNDCDI.js → chunk-PRVTGX64.js} +5 -5
  91. package/dist/cli-bundle/chunks/{chunk-TZQKEBKF.js → chunk-QOUOMPHO.js} +2 -2
  92. package/dist/cli-bundle/chunks/{chunk-77VKGH4L.js → chunk-RAWA3Y7O.js} +10 -10
  93. package/dist/cli-bundle/chunks/{chunk-Y335KFHD.js → chunk-RRP6D345.js} +9 -9
  94. package/dist/cli-bundle/chunks/{chunk-4SDKF5BG.js → chunk-SKC4UTRP.js} +3 -3
  95. package/dist/cli-bundle/chunks/{chunk-TRUFOER3.js → chunk-SMXSDY7J.js} +15 -4
  96. package/dist/cli-bundle/chunks/chunk-SMXSDY7J.js.map +7 -0
  97. package/dist/cli-bundle/chunks/{chunk-JY25IOEZ.js → chunk-SUREE24M.js} +5 -5
  98. package/dist/cli-bundle/chunks/{chunk-A25LOPRG.js → chunk-TIM4OD74.js} +2 -2
  99. package/dist/cli-bundle/chunks/{chunk-KK4TQ3ZP.js → chunk-TKPP4GOO.js} +2 -2
  100. package/dist/cli-bundle/chunks/{chunk-6FQHNHQQ.js → chunk-TSI32UEL.js} +3 -3
  101. package/dist/cli-bundle/chunks/{chunk-TJABI6PR.js → chunk-UACWNBL2.js} +5 -5
  102. package/dist/cli-bundle/chunks/{chunk-EVPVCE4R.js → chunk-V4UYNSEM.js} +3 -3
  103. package/dist/cli-bundle/chunks/{chunk-QQWEROGS.js → chunk-VFJYVXHL.js} +7 -7
  104. package/dist/cli-bundle/chunks/{chunk-KL5ELX2X.js → chunk-VSAABFGQ.js} +144 -98
  105. package/dist/cli-bundle/chunks/chunk-VSAABFGQ.js.map +1 -0
  106. package/dist/cli-bundle/chunks/{chunk-YQSWTVZF.js → chunk-WB5BYQMF.js} +4 -4
  107. package/dist/cli-bundle/chunks/{chunk-MNGAQB2E.js → chunk-XVYKWZNL.js} +8 -8
  108. package/dist/cli-bundle/chunks/{chunk-V4SM4UAL.js → chunk-XXKV4UWE.js} +13 -13
  109. package/dist/cli-bundle/chunks/{chunk-GU7YHKYP.js → chunk-YV2OSAMS.js} +2 -2
  110. package/dist/cli-bundle/chunks/{chunk-P7ZU73BO.js → chunk-ZLWRPBOW.js} +3 -3
  111. package/dist/cli-bundle/chunks/{chunk-3VLPDG3J.js → chunk-ZV7IQ23N.js} +2 -2
  112. package/dist/cli-bundle/chunks/{claim-MPXNVBZQ.js → claim-FZZZCAY6.js} +10 -10
  113. package/dist/cli-bundle/chunks/{claim-SKHJDLW6.js → claim-XK5QBZE3.js} +10 -10
  114. package/dist/cli-bundle/chunks/close-JEBZXONN.js +15 -0
  115. package/dist/cli-bundle/chunks/{close-4RKSL5L6.js → close-QHMVWM7M.js} +8 -8
  116. package/dist/cli-bundle/chunks/{close-many-SXODYBDP.js → close-many-OIXJE2JZ.js} +15 -15
  117. package/dist/cli-bundle/chunks/{close-many-AWTPXLHJ.js → close-many-SUU5BS2C.js} +15 -15
  118. package/dist/cli-bundle/chunks/{comments-YYW5P7AG.js → comments-5YM62D75.js} +10 -10
  119. package/dist/cli-bundle/chunks/{comments-OOH64LWW.js → comments-RH3IBIRH.js} +10 -10
  120. package/dist/cli-bundle/chunks/{config-3445MCQQ.js → config-NCNNWF6R.js} +8 -8
  121. package/dist/cli-bundle/chunks/{config-LCDMKRB2.js → config-SW3U7XP2.js} +8 -8
  122. package/dist/cli-bundle/chunks/{context-PJCURODY.js → context-55VEOYI3.js} +13 -13
  123. package/dist/cli-bundle/chunks/{context-DZMIBIVP.js → context-5LB7UGKE.js} +13 -13
  124. package/dist/cli-bundle/chunks/{contracts-MP2P3HL5.js → contracts-JXFGBOYT.js} +8 -6
  125. package/dist/cli-bundle/chunks/contracts-JXFGBOYT.js.map +1 -0
  126. package/dist/cli-bundle/chunks/{contracts-7YDFEJB3.js → contracts-SY6PDFIK.js} +7 -5
  127. package/dist/cli-bundle/chunks/contracts-SY6PDFIK.js.map +7 -0
  128. package/dist/cli-bundle/chunks/{copy-63IQQRRS.js → copy-IEDBJOOX.js} +7 -7
  129. package/dist/cli-bundle/chunks/{copy-TASIH2AZ.js → copy-N3GE6FYS.js} +7 -7
  130. package/dist/cli-bundle/chunks/create-CLSCHGJJ.js +30 -0
  131. package/dist/cli-bundle/chunks/{create-TGSB5GV4.js → create-O4VONGPG.js} +14 -14
  132. package/dist/cli-bundle/chunks/{delete-ARILQQLB.js → delete-724EQ6OS.js} +7 -7
  133. package/dist/cli-bundle/chunks/{delete-ZQKBZYNK.js → delete-LPEIF7RU.js} +7 -7
  134. package/dist/cli-bundle/chunks/{deps-MSHQR2GY.js → deps-RSBU4SIU.js} +7 -7
  135. package/dist/cli-bundle/chunks/{deps-NJFJIMQ5.js → deps-T3Y6Y7RT.js} +7 -7
  136. package/dist/cli-bundle/chunks/{docs-XK2UVUXX.js → docs-75ZLCO3G.js} +9 -9
  137. package/dist/cli-bundle/chunks/{docs-SS4UKYYA.js → docs-IFS7HZPP.js} +9 -9
  138. package/dist/cli-bundle/chunks/{eval-JOTG2YHU.js → eval-L2KD7W3M.js} +12 -12
  139. package/dist/cli-bundle/chunks/{eval-FVZGX5IZ.js → eval-QGR7JCQO.js} +12 -12
  140. package/dist/cli-bundle/chunks/{extension-OQPS27B4.js → extension-3JYWJ5K2.js} +6 -6
  141. package/dist/cli-bundle/chunks/{extension-NLMS47I4.js → extension-YQF4CPIR.js} +6 -6
  142. package/dist/cli-bundle/chunks/{files-Y2P6LN5A.js → files-5BQWDRDT.js} +9 -9
  143. package/dist/cli-bundle/chunks/{files-3EVJQZ2N.js → files-EPEJMJHQ.js} +9 -9
  144. package/dist/cli-bundle/chunks/{focus-D5ZUPTII.js → focus-DQVJAPOE.js} +8 -8
  145. package/dist/cli-bundle/chunks/{focus-ZPIFTY4R.js → focus-RWGKD76E.js} +8 -8
  146. package/dist/cli-bundle/chunks/{gc-LXXDY456.js → gc-BEJMQT64.js} +3 -3
  147. package/dist/cli-bundle/chunks/{gc-RNOEQHSX.js → gc-JEFQDJPA.js} +3 -3
  148. package/dist/cli-bundle/chunks/{get-W23G7MJX.js → get-LQG6PEVG.js} +11 -11
  149. package/dist/cli-bundle/chunks/{get-Q3SZGQHD.js → get-WVN75H42.js} +11 -11
  150. package/dist/cli-bundle/chunks/{health-UDDGJLPP.js → health-JJJOY7DJ.js} +14 -14
  151. package/dist/cli-bundle/chunks/{health-5LHSX365.js → health-P67NZ6TT.js} +14 -14
  152. package/dist/cli-bundle/chunks/history-ALTM2RRP.js +20 -0
  153. package/dist/cli-bundle/chunks/{history-6CZVFIUJ.js → history-RUKPKNY7.js} +10 -10
  154. package/dist/cli-bundle/chunks/{history-compact-VWUSQH6Z.js → history-compact-NQ7VPRVT.js} +12 -12
  155. package/dist/cli-bundle/chunks/{history-compact-M35PDQ4G.js → history-compact-ZAOWR7GD.js} +12 -12
  156. package/dist/cli-bundle/chunks/history-redact-5YGLWUDH.js +21 -0
  157. package/dist/cli-bundle/chunks/{history-redact-AJGARHT3.js → history-redact-YY4XYVEP.js} +11 -11
  158. package/dist/cli-bundle/chunks/{history-repair-YUAHIPIN.js → history-repair-EHL4ODQY.js} +12 -12
  159. package/dist/cli-bundle/chunks/{history-repair-5RDMF7K4.js → history-repair-YSQH6SY6.js} +12 -12
  160. package/dist/cli-bundle/chunks/init-C4CRHW22.js +21 -0
  161. package/dist/cli-bundle/chunks/{init-HASX3YNJ.js → init-HBFGYS66.js} +11 -11
  162. package/dist/cli-bundle/chunks/{learnings-JNGUIJDK.js → learnings-J555ZFPD.js} +10 -10
  163. package/dist/cli-bundle/chunks/{learnings-M4KA6MQE.js → learnings-KFQO7GEZ.js} +10 -10
  164. package/dist/cli-bundle/chunks/{list-6FMKTIH3.js → list-C7R33MD5.js} +10 -10
  165. package/dist/cli-bundle/chunks/{list-5UU2W24O.js → list-DSN6UNFB.js} +10 -10
  166. package/dist/cli-bundle/chunks/{notes-PYCPLA5Y.js → notes-V4VNIQL4.js} +10 -10
  167. package/dist/cli-bundle/chunks/{notes-MODH5CBT.js → notes-VYJFN2A3.js} +10 -10
  168. package/dist/cli-bundle/chunks/{plan-DXRIRYRU.js → plan-DHRSVSHR.js} +14 -14
  169. package/dist/cli-bundle/chunks/{plan-EHQALWSC.js → plan-RBHQ5PO7.js} +14 -14
  170. package/dist/cli-bundle/chunks/{register-list-query-QAASVP2J.js → register-list-query-CCMHGZTF.js} +19 -19
  171. package/dist/cli-bundle/chunks/{register-list-query-WE54YJMH.js → register-list-query-OM3E2KMY.js} +19 -19
  172. package/dist/cli-bundle/chunks/{register-mutation-B6DZJTY2.js → register-mutation-N3CDEGZU.js} +33 -33
  173. package/dist/cli-bundle/chunks/{register-mutation-CPV4C2KR.js → register-mutation-UXTTWL6N.js} +33 -33
  174. package/dist/cli-bundle/chunks/{register-operations-RC4C3423.js → register-operations-R2FLOCRI.js} +32 -32
  175. package/dist/cli-bundle/chunks/{register-operations-AT3BVVX2.js → register-operations-UDIFMQKD.js} +32 -32
  176. package/dist/cli-bundle/chunks/{register-setup-JSMJEFCJ.js → register-setup-G5LTSFYK.js} +24 -20
  177. package/dist/cli-bundle/chunks/register-setup-G5LTSFYK.js.map +1 -0
  178. package/dist/cli-bundle/chunks/{register-setup-HXEHMDHE.js → register-setup-TWHKICM2.js} +23 -19
  179. package/dist/cli-bundle/chunks/register-setup-TWHKICM2.js.map +7 -0
  180. package/dist/cli-bundle/chunks/{restore-FNBV4GWE.js → restore-LL2WLEDG.js} +11 -11
  181. package/dist/cli-bundle/chunks/restore-LQHXBAY5.js +19 -0
  182. package/dist/cli-bundle/chunks/{scheduling-shortcuts-ECL6GBMZ.js → scheduling-shortcuts-255GI3BU.js} +14 -14
  183. package/dist/cli-bundle/chunks/{scheduling-shortcuts-JRIUREEU.js → scheduling-shortcuts-M4H2ZI64.js} +14 -14
  184. package/dist/cli-bundle/chunks/{schema-74YENAJL.js → schema-C6QA367T.js} +9 -9
  185. package/dist/cli-bundle/chunks/{schema-TCW3I7QR.js → schema-QO5I4FBL.js} +9 -9
  186. package/dist/cli-bundle/chunks/{search-7USZ6XZA.js → search-2EI6EAXH.js} +12 -12
  187. package/dist/cli-bundle/chunks/{search-GNAUE65M.js → search-QBFBLQRO.js} +12 -12
  188. package/dist/cli-bundle/chunks/{stats-CVHASAEU.js → stats-TCW2SZQG.js} +8 -8
  189. package/dist/cli-bundle/chunks/{stats-DQMKJMFT.js → stats-TKC6CAKB.js} +8 -8
  190. package/dist/cli-bundle/chunks/{telemetry-PQTL5YS2.js → telemetry-BT2VSWU2.js} +4 -4
  191. package/dist/cli-bundle/chunks/{telemetry-7P5EUWCS.js → telemetry-LQ6FRTUT.js} +4 -4
  192. package/dist/cli-bundle/chunks/{test-FDQZQNZ4.js → test-NV2DRPUS.js} +16 -16
  193. package/dist/cli-bundle/chunks/test-WA6RZGM2.js +36 -0
  194. package/dist/cli-bundle/chunks/{test-all-PIPPS4S5.js → test-all-DZ76VTPQ.js} +16 -16
  195. package/dist/cli-bundle/chunks/{test-all-WQIAZVA6.js → test-all-REW67LXT.js} +16 -16
  196. package/dist/cli-bundle/chunks/{test-runs-JS6DNCCI.js → test-runs-FQ5WNQLP.js} +5 -5
  197. package/dist/cli-bundle/chunks/{test-runs-NZD2QGL5.js → test-runs-PX73DMMI.js} +5 -5
  198. package/dist/cli-bundle/chunks/update-BSKMQOYH.js +28 -0
  199. package/dist/cli-bundle/chunks/update-FIGYNQ2I.js +24 -0
  200. package/dist/cli-bundle/chunks/{update-many-B3TH5TDS.js → update-many-2ILP6E4Y.js} +23 -23
  201. package/dist/cli-bundle/chunks/{update-many-6NTZ5J5D.js → update-many-Q5ZEI64S.js} +23 -23
  202. package/dist/cli-bundle/chunks/{upgrade-76IKZ6EZ.js → upgrade-DHL74PQH.js} +6 -6
  203. package/dist/cli-bundle/chunks/{upgrade-4C7VE7MS.js → upgrade-FOZKQTQF.js} +6 -6
  204. package/dist/cli-bundle/chunks/{validate-BPM6Z3OT.js → validate-54SYJ7QW.js} +21 -21
  205. package/dist/cli-bundle/chunks/{validate-AQU7OCL3.js → validate-HYZNIB6W.js} +21 -21
  206. package/dist/cli-bundle/main.js +22 -18
  207. package/dist/cli-bundle/main.js.map +2 -2
  208. package/dist/core/extensions/activation-summary.d.ts +109 -0
  209. package/dist/core/extensions/activation-summary.js +60 -0
  210. package/dist/core/extensions/activation-summary.js.map +1 -0
  211. package/dist/core/extensions/capability-usage.d.ts +10 -0
  212. package/dist/core/extensions/capability-usage.js +12 -3
  213. package/dist/core/extensions/capability-usage.js.map +1 -1
  214. package/dist/core/extensions/loader.d.ts +1 -2
  215. package/dist/core/extensions/loader.js +40 -103
  216. package/dist/core/extensions/loader.js.map +1 -1
  217. package/dist/core/extensions/version-compat.d.ts +107 -0
  218. package/dist/core/extensions/version-compat.js +130 -0
  219. package/dist/core/extensions/version-compat.js.map +1 -0
  220. package/dist/core/telemetry/runtime.js +5 -2
  221. package/dist/core/telemetry/runtime.js.map +1 -1
  222. package/dist/sdk/cli-contracts/enum-contracts.d.ts +1 -1
  223. package/dist/sdk/cli-contracts/enum-contracts.js +4 -2
  224. package/dist/sdk/cli-contracts/enum-contracts.js.map +1 -1
  225. package/dist/sdk/cli-contracts.d.ts +1 -0
  226. package/dist/sdk/cli-contracts.js +10 -2
  227. package/dist/sdk/cli-contracts.js.map +1 -1
  228. package/dist/sdk/compose.d.ts +636 -0
  229. package/dist/sdk/compose.js +841 -0
  230. package/dist/sdk/compose.js.map +1 -0
  231. package/dist/sdk/define.d.ts +195 -0
  232. package/dist/sdk/define.js +204 -0
  233. package/dist/sdk/define.js.map +1 -0
  234. package/dist/sdk/index.d.ts +4 -27
  235. package/dist/sdk/index.js +5 -12
  236. package/dist/sdk/index.js.map +1 -1
  237. package/dist/sdk/testing.d.ts +221 -2
  238. package/dist/sdk/testing.js +276 -2
  239. package/dist/sdk/testing.js.map +1 -1
  240. package/docs/COMMANDS.md +1 -0
  241. package/docs/EXTENSIONS.md +18 -14
  242. package/docs/SDK.md +445 -16
  243. package/package.json +1 -1
  244. package/dist/cli-bundle/chunks/activity-NEOI45NX.js +0 -18
  245. package/dist/cli-bundle/chunks/chunk-3GL6LTUL.js.map +0 -1
  246. package/dist/cli-bundle/chunks/chunk-4YJA4LGU.js.map +0 -7
  247. package/dist/cli-bundle/chunks/chunk-7GCCDXXN.js.map +0 -7
  248. package/dist/cli-bundle/chunks/chunk-7MPTFYT3.js.map +0 -1
  249. package/dist/cli-bundle/chunks/chunk-D35LTIFR.js.map +0 -1
  250. package/dist/cli-bundle/chunks/chunk-KL5ELX2X.js.map +0 -1
  251. package/dist/cli-bundle/chunks/chunk-RZZMSY4P.js.map +0 -7
  252. package/dist/cli-bundle/chunks/chunk-TRUFOER3.js.map +0 -7
  253. package/dist/cli-bundle/chunks/close-Z6AI736U.js +0 -15
  254. package/dist/cli-bundle/chunks/contracts-7YDFEJB3.js.map +0 -7
  255. package/dist/cli-bundle/chunks/contracts-MP2P3HL5.js.map +0 -1
  256. package/dist/cli-bundle/chunks/create-3BV2VA3Q.js +0 -30
  257. package/dist/cli-bundle/chunks/history-YRQUD4YM.js +0 -20
  258. package/dist/cli-bundle/chunks/history-redact-27OEOZRZ.js +0 -21
  259. package/dist/cli-bundle/chunks/init-DWAKYRXI.js +0 -21
  260. package/dist/cli-bundle/chunks/register-setup-HXEHMDHE.js.map +0 -7
  261. package/dist/cli-bundle/chunks/register-setup-JSMJEFCJ.js.map +0 -1
  262. package/dist/cli-bundle/chunks/restore-XY4YE2OV.js +0 -19
  263. package/dist/cli-bundle/chunks/test-COWPCGBE.js +0 -36
  264. package/dist/cli-bundle/chunks/update-7IYQHX4Q.js +0 -24
  265. package/dist/cli-bundle/chunks/update-IJKDRBIX.js +0 -28
  266. /package/dist/cli-bundle/chunks/{activity-NEOI45NX.js.map → activity-54TXGJ2T.js.map} +0 -0
  267. /package/dist/cli-bundle/chunks/{activity-DXS2XMQU.js.map → activity-N7RVTLBQ.js.map} +0 -0
  268. /package/dist/cli-bundle/chunks/{aggregate-IHM4KMQ3.js.map → aggregate-63NWNIBR.js.map} +0 -0
  269. /package/dist/cli-bundle/chunks/{aggregate-NMYDVQF7.js.map → aggregate-YHCYX2EV.js.map} +0 -0
  270. /package/dist/cli-bundle/chunks/{append-3HY5G7ET.js.map → append-PUKREFV5.js.map} +0 -0
  271. /package/dist/cli-bundle/chunks/{append-K54MDQYC.js.map → append-VLQQDHMJ.js.map} +0 -0
  272. /package/dist/cli-bundle/chunks/{chunk-DU64SZUQ.js.map → chunk-2WCYE3IF.js.map} +0 -0
  273. /package/dist/cli-bundle/chunks/{chunk-NKZOJPXK.js.map → chunk-3BKH2CL3.js.map} +0 -0
  274. /package/dist/cli-bundle/chunks/{chunk-7MALIV5H.js.map → chunk-4XDGYFHL.js.map} +0 -0
  275. /package/dist/cli-bundle/chunks/{chunk-VB54F347.js.map → chunk-5BBEWX6C.js.map} +0 -0
  276. /package/dist/cli-bundle/chunks/{chunk-DHBPJ7VG.js.map → chunk-5S4ZGDB2.js.map} +0 -0
  277. /package/dist/cli-bundle/chunks/{chunk-UKK2VTTH.js.map → chunk-6EBNFQOR.js.map} +0 -0
  278. /package/dist/cli-bundle/chunks/{chunk-5SESR24H.js.map → chunk-6EL7SW5C.js.map} +0 -0
  279. /package/dist/cli-bundle/chunks/{chunk-JLSC5NPC.js.map → chunk-6W3Y65PL.js.map} +0 -0
  280. /package/dist/cli-bundle/chunks/{chunk-HYQV75IB.js.map → chunk-A66VYUOV.js.map} +0 -0
  281. /package/dist/cli-bundle/chunks/{chunk-I367IDZP.js.map → chunk-ABYCA5VX.js.map} +0 -0
  282. /package/dist/cli-bundle/chunks/{chunk-47HTJ6BU.js.map → chunk-AEACLRVH.js.map} +0 -0
  283. /package/dist/cli-bundle/chunks/{chunk-MD7XKVWI.js.map → chunk-ALKFCIIB.js.map} +0 -0
  284. /package/dist/cli-bundle/chunks/{chunk-B2KR24R4.js.map → chunk-ALQKV6U7.js.map} +0 -0
  285. /package/dist/cli-bundle/chunks/{chunk-NIWY4V4Z.js.map → chunk-AYPQUFCX.js.map} +0 -0
  286. /package/dist/cli-bundle/chunks/{chunk-AJXYOYJV.js.map → chunk-B74BP6IS.js.map} +0 -0
  287. /package/dist/cli-bundle/chunks/{chunk-THKDPOS5.js.map → chunk-BFFO3AIB.js.map} +0 -0
  288. /package/dist/cli-bundle/chunks/{chunk-CR7KFPAQ.js.map → chunk-C4C3EJCJ.js.map} +0 -0
  289. /package/dist/cli-bundle/chunks/{chunk-J2TSPY5L.js.map → chunk-CG3KP6I5.js.map} +0 -0
  290. /package/dist/cli-bundle/chunks/{chunk-CWPBGUC7.js.map → chunk-CZIFFMZI.js.map} +0 -0
  291. /package/dist/cli-bundle/chunks/{chunk-75VEYQJS.js.map → chunk-DTABLLVE.js.map} +0 -0
  292. /package/dist/cli-bundle/chunks/{chunk-TIKJAXQW.js.map → chunk-EOGBMLCE.js.map} +0 -0
  293. /package/dist/cli-bundle/chunks/{chunk-YATDFWYK.js.map → chunk-EWRSXOIZ.js.map} +0 -0
  294. /package/dist/cli-bundle/chunks/{chunk-RPRFBXND.js.map → chunk-F32L4HR6.js.map} +0 -0
  295. /package/dist/cli-bundle/chunks/{chunk-NVUATMTC.js.map → chunk-F4BNR2IN.js.map} +0 -0
  296. /package/dist/cli-bundle/chunks/{chunk-Y4BZEND6.js.map → chunk-FBLT6WGK.js.map} +0 -0
  297. /package/dist/cli-bundle/chunks/{chunk-PCH2JTEO.js.map → chunk-FMWW2JDU.js.map} +0 -0
  298. /package/dist/cli-bundle/chunks/{chunk-WQDX7DVG.js.map → chunk-GDUMGZK3.js.map} +0 -0
  299. /package/dist/cli-bundle/chunks/{chunk-FK6MV5F5.js.map → chunk-HBAEFWX3.js.map} +0 -0
  300. /package/dist/cli-bundle/chunks/{chunk-6UPTNMVW.js.map → chunk-HC2S36NB.js.map} +0 -0
  301. /package/dist/cli-bundle/chunks/{chunk-XKNF3VRJ.js.map → chunk-HZF5RLKX.js.map} +0 -0
  302. /package/dist/cli-bundle/chunks/{chunk-4JXWVHMN.js.map → chunk-I6QMJ2XT.js.map} +0 -0
  303. /package/dist/cli-bundle/chunks/{chunk-44O4JIN6.js.map → chunk-IAP5KYBQ.js.map} +0 -0
  304. /package/dist/cli-bundle/chunks/{chunk-A7E4ZXG2.js.map → chunk-IOT6WRL5.js.map} +0 -0
  305. /package/dist/cli-bundle/chunks/{chunk-KRJJPDUO.js.map → chunk-IXAZI443.js.map} +0 -0
  306. /package/dist/cli-bundle/chunks/{chunk-DMT4ODVN.js.map → chunk-J3NMWFIN.js.map} +0 -0
  307. /package/dist/cli-bundle/chunks/{chunk-7PBGTIN3.js.map → chunk-J7I4C5ZB.js.map} +0 -0
  308. /package/dist/cli-bundle/chunks/{chunk-CLLVBO3I.js.map → chunk-JPJDP4VU.js.map} +0 -0
  309. /package/dist/cli-bundle/chunks/{chunk-PJS2J7Z4.js.map → chunk-JV27C7OZ.js.map} +0 -0
  310. /package/dist/cli-bundle/chunks/{chunk-K25UDYJ4.js.map → chunk-KIEAK7YE.js.map} +0 -0
  311. /package/dist/cli-bundle/chunks/{chunk-GGAXE22C.js.map → chunk-KJZOSF7J.js.map} +0 -0
  312. /package/dist/cli-bundle/chunks/{chunk-GXBSFKSX.js.map → chunk-KKX4Z2SE.js.map} +0 -0
  313. /package/dist/cli-bundle/chunks/{chunk-C5SWTISA.js.map → chunk-LNEDHJNQ.js.map} +0 -0
  314. /package/dist/cli-bundle/chunks/{chunk-YRLLL5TY.js.map → chunk-LU36E6GU.js.map} +0 -0
  315. /package/dist/cli-bundle/chunks/{chunk-I6XE47J2.js.map → chunk-M6TUBOGW.js.map} +0 -0
  316. /package/dist/cli-bundle/chunks/{chunk-YJICYNAV.js.map → chunk-MWMHZOZZ.js.map} +0 -0
  317. /package/dist/cli-bundle/chunks/{chunk-SFKQAVZA.js.map → chunk-N5B6WZC5.js.map} +0 -0
  318. /package/dist/cli-bundle/chunks/{chunk-WBSYW3NT.js.map → chunk-NVXGVEFD.js.map} +0 -0
  319. /package/dist/cli-bundle/chunks/{chunk-GNDHOR64.js.map → chunk-OHDQNKJB.js.map} +0 -0
  320. /package/dist/cli-bundle/chunks/{chunk-2LEYMXI6.js.map → chunk-OQ2E64FH.js.map} +0 -0
  321. /package/dist/cli-bundle/chunks/{chunk-25XZN3JD.js.map → chunk-PEL2NLQE.js.map} +0 -0
  322. /package/dist/cli-bundle/chunks/{chunk-H6FNDCDI.js.map → chunk-PRVTGX64.js.map} +0 -0
  323. /package/dist/cli-bundle/chunks/{chunk-TZQKEBKF.js.map → chunk-QOUOMPHO.js.map} +0 -0
  324. /package/dist/cli-bundle/chunks/{chunk-77VKGH4L.js.map → chunk-RAWA3Y7O.js.map} +0 -0
  325. /package/dist/cli-bundle/chunks/{chunk-Y335KFHD.js.map → chunk-RRP6D345.js.map} +0 -0
  326. /package/dist/cli-bundle/chunks/{chunk-4SDKF5BG.js.map → chunk-SKC4UTRP.js.map} +0 -0
  327. /package/dist/cli-bundle/chunks/{chunk-JY25IOEZ.js.map → chunk-SUREE24M.js.map} +0 -0
  328. /package/dist/cli-bundle/chunks/{chunk-A25LOPRG.js.map → chunk-TIM4OD74.js.map} +0 -0
  329. /package/dist/cli-bundle/chunks/{chunk-KK4TQ3ZP.js.map → chunk-TKPP4GOO.js.map} +0 -0
  330. /package/dist/cli-bundle/chunks/{chunk-6FQHNHQQ.js.map → chunk-TSI32UEL.js.map} +0 -0
  331. /package/dist/cli-bundle/chunks/{chunk-TJABI6PR.js.map → chunk-UACWNBL2.js.map} +0 -0
  332. /package/dist/cli-bundle/chunks/{chunk-EVPVCE4R.js.map → chunk-V4UYNSEM.js.map} +0 -0
  333. /package/dist/cli-bundle/chunks/{chunk-QQWEROGS.js.map → chunk-VFJYVXHL.js.map} +0 -0
  334. /package/dist/cli-bundle/chunks/{chunk-YQSWTVZF.js.map → chunk-WB5BYQMF.js.map} +0 -0
  335. /package/dist/cli-bundle/chunks/{chunk-MNGAQB2E.js.map → chunk-XVYKWZNL.js.map} +0 -0
  336. /package/dist/cli-bundle/chunks/{chunk-V4SM4UAL.js.map → chunk-XXKV4UWE.js.map} +0 -0
  337. /package/dist/cli-bundle/chunks/{chunk-GU7YHKYP.js.map → chunk-YV2OSAMS.js.map} +0 -0
  338. /package/dist/cli-bundle/chunks/{chunk-P7ZU73BO.js.map → chunk-ZLWRPBOW.js.map} +0 -0
  339. /package/dist/cli-bundle/chunks/{chunk-3VLPDG3J.js.map → chunk-ZV7IQ23N.js.map} +0 -0
  340. /package/dist/cli-bundle/chunks/{claim-MPXNVBZQ.js.map → claim-FZZZCAY6.js.map} +0 -0
  341. /package/dist/cli-bundle/chunks/{claim-SKHJDLW6.js.map → claim-XK5QBZE3.js.map} +0 -0
  342. /package/dist/cli-bundle/chunks/{close-Z6AI736U.js.map → close-JEBZXONN.js.map} +0 -0
  343. /package/dist/cli-bundle/chunks/{close-4RKSL5L6.js.map → close-QHMVWM7M.js.map} +0 -0
  344. /package/dist/cli-bundle/chunks/{close-many-SXODYBDP.js.map → close-many-OIXJE2JZ.js.map} +0 -0
  345. /package/dist/cli-bundle/chunks/{close-many-AWTPXLHJ.js.map → close-many-SUU5BS2C.js.map} +0 -0
  346. /package/dist/cli-bundle/chunks/{comments-YYW5P7AG.js.map → comments-5YM62D75.js.map} +0 -0
  347. /package/dist/cli-bundle/chunks/{comments-OOH64LWW.js.map → comments-RH3IBIRH.js.map} +0 -0
  348. /package/dist/cli-bundle/chunks/{config-3445MCQQ.js.map → config-NCNNWF6R.js.map} +0 -0
  349. /package/dist/cli-bundle/chunks/{config-LCDMKRB2.js.map → config-SW3U7XP2.js.map} +0 -0
  350. /package/dist/cli-bundle/chunks/{context-PJCURODY.js.map → context-55VEOYI3.js.map} +0 -0
  351. /package/dist/cli-bundle/chunks/{context-DZMIBIVP.js.map → context-5LB7UGKE.js.map} +0 -0
  352. /package/dist/cli-bundle/chunks/{copy-63IQQRRS.js.map → copy-IEDBJOOX.js.map} +0 -0
  353. /package/dist/cli-bundle/chunks/{copy-TASIH2AZ.js.map → copy-N3GE6FYS.js.map} +0 -0
  354. /package/dist/cli-bundle/chunks/{create-3BV2VA3Q.js.map → create-CLSCHGJJ.js.map} +0 -0
  355. /package/dist/cli-bundle/chunks/{create-TGSB5GV4.js.map → create-O4VONGPG.js.map} +0 -0
  356. /package/dist/cli-bundle/chunks/{delete-ARILQQLB.js.map → delete-724EQ6OS.js.map} +0 -0
  357. /package/dist/cli-bundle/chunks/{delete-ZQKBZYNK.js.map → delete-LPEIF7RU.js.map} +0 -0
  358. /package/dist/cli-bundle/chunks/{deps-MSHQR2GY.js.map → deps-RSBU4SIU.js.map} +0 -0
  359. /package/dist/cli-bundle/chunks/{deps-NJFJIMQ5.js.map → deps-T3Y6Y7RT.js.map} +0 -0
  360. /package/dist/cli-bundle/chunks/{docs-XK2UVUXX.js.map → docs-75ZLCO3G.js.map} +0 -0
  361. /package/dist/cli-bundle/chunks/{docs-SS4UKYYA.js.map → docs-IFS7HZPP.js.map} +0 -0
  362. /package/dist/cli-bundle/chunks/{eval-JOTG2YHU.js.map → eval-L2KD7W3M.js.map} +0 -0
  363. /package/dist/cli-bundle/chunks/{eval-FVZGX5IZ.js.map → eval-QGR7JCQO.js.map} +0 -0
  364. /package/dist/cli-bundle/chunks/{extension-OQPS27B4.js.map → extension-3JYWJ5K2.js.map} +0 -0
  365. /package/dist/cli-bundle/chunks/{extension-NLMS47I4.js.map → extension-YQF4CPIR.js.map} +0 -0
  366. /package/dist/cli-bundle/chunks/{files-Y2P6LN5A.js.map → files-5BQWDRDT.js.map} +0 -0
  367. /package/dist/cli-bundle/chunks/{files-3EVJQZ2N.js.map → files-EPEJMJHQ.js.map} +0 -0
  368. /package/dist/cli-bundle/chunks/{focus-D5ZUPTII.js.map → focus-DQVJAPOE.js.map} +0 -0
  369. /package/dist/cli-bundle/chunks/{focus-ZPIFTY4R.js.map → focus-RWGKD76E.js.map} +0 -0
  370. /package/dist/cli-bundle/chunks/{gc-LXXDY456.js.map → gc-BEJMQT64.js.map} +0 -0
  371. /package/dist/cli-bundle/chunks/{gc-RNOEQHSX.js.map → gc-JEFQDJPA.js.map} +0 -0
  372. /package/dist/cli-bundle/chunks/{get-W23G7MJX.js.map → get-LQG6PEVG.js.map} +0 -0
  373. /package/dist/cli-bundle/chunks/{get-Q3SZGQHD.js.map → get-WVN75H42.js.map} +0 -0
  374. /package/dist/cli-bundle/chunks/{health-UDDGJLPP.js.map → health-JJJOY7DJ.js.map} +0 -0
  375. /package/dist/cli-bundle/chunks/{health-5LHSX365.js.map → health-P67NZ6TT.js.map} +0 -0
  376. /package/dist/cli-bundle/chunks/{history-YRQUD4YM.js.map → history-ALTM2RRP.js.map} +0 -0
  377. /package/dist/cli-bundle/chunks/{history-6CZVFIUJ.js.map → history-RUKPKNY7.js.map} +0 -0
  378. /package/dist/cli-bundle/chunks/{history-compact-VWUSQH6Z.js.map → history-compact-NQ7VPRVT.js.map} +0 -0
  379. /package/dist/cli-bundle/chunks/{history-compact-M35PDQ4G.js.map → history-compact-ZAOWR7GD.js.map} +0 -0
  380. /package/dist/cli-bundle/chunks/{history-redact-27OEOZRZ.js.map → history-redact-5YGLWUDH.js.map} +0 -0
  381. /package/dist/cli-bundle/chunks/{history-redact-AJGARHT3.js.map → history-redact-YY4XYVEP.js.map} +0 -0
  382. /package/dist/cli-bundle/chunks/{history-repair-YUAHIPIN.js.map → history-repair-EHL4ODQY.js.map} +0 -0
  383. /package/dist/cli-bundle/chunks/{history-repair-5RDMF7K4.js.map → history-repair-YSQH6SY6.js.map} +0 -0
  384. /package/dist/cli-bundle/chunks/{init-DWAKYRXI.js.map → init-C4CRHW22.js.map} +0 -0
  385. /package/dist/cli-bundle/chunks/{init-HASX3YNJ.js.map → init-HBFGYS66.js.map} +0 -0
  386. /package/dist/cli-bundle/chunks/{learnings-JNGUIJDK.js.map → learnings-J555ZFPD.js.map} +0 -0
  387. /package/dist/cli-bundle/chunks/{learnings-M4KA6MQE.js.map → learnings-KFQO7GEZ.js.map} +0 -0
  388. /package/dist/cli-bundle/chunks/{list-6FMKTIH3.js.map → list-C7R33MD5.js.map} +0 -0
  389. /package/dist/cli-bundle/chunks/{list-5UU2W24O.js.map → list-DSN6UNFB.js.map} +0 -0
  390. /package/dist/cli-bundle/chunks/{notes-PYCPLA5Y.js.map → notes-V4VNIQL4.js.map} +0 -0
  391. /package/dist/cli-bundle/chunks/{notes-MODH5CBT.js.map → notes-VYJFN2A3.js.map} +0 -0
  392. /package/dist/cli-bundle/chunks/{plan-DXRIRYRU.js.map → plan-DHRSVSHR.js.map} +0 -0
  393. /package/dist/cli-bundle/chunks/{plan-EHQALWSC.js.map → plan-RBHQ5PO7.js.map} +0 -0
  394. /package/dist/cli-bundle/chunks/{register-list-query-QAASVP2J.js.map → register-list-query-CCMHGZTF.js.map} +0 -0
  395. /package/dist/cli-bundle/chunks/{register-list-query-WE54YJMH.js.map → register-list-query-OM3E2KMY.js.map} +0 -0
  396. /package/dist/cli-bundle/chunks/{register-mutation-B6DZJTY2.js.map → register-mutation-N3CDEGZU.js.map} +0 -0
  397. /package/dist/cli-bundle/chunks/{register-mutation-CPV4C2KR.js.map → register-mutation-UXTTWL6N.js.map} +0 -0
  398. /package/dist/cli-bundle/chunks/{register-operations-RC4C3423.js.map → register-operations-R2FLOCRI.js.map} +0 -0
  399. /package/dist/cli-bundle/chunks/{register-operations-AT3BVVX2.js.map → register-operations-UDIFMQKD.js.map} +0 -0
  400. /package/dist/cli-bundle/chunks/{restore-FNBV4GWE.js.map → restore-LL2WLEDG.js.map} +0 -0
  401. /package/dist/cli-bundle/chunks/{restore-XY4YE2OV.js.map → restore-LQHXBAY5.js.map} +0 -0
  402. /package/dist/cli-bundle/chunks/{scheduling-shortcuts-ECL6GBMZ.js.map → scheduling-shortcuts-255GI3BU.js.map} +0 -0
  403. /package/dist/cli-bundle/chunks/{scheduling-shortcuts-JRIUREEU.js.map → scheduling-shortcuts-M4H2ZI64.js.map} +0 -0
  404. /package/dist/cli-bundle/chunks/{schema-74YENAJL.js.map → schema-C6QA367T.js.map} +0 -0
  405. /package/dist/cli-bundle/chunks/{schema-TCW3I7QR.js.map → schema-QO5I4FBL.js.map} +0 -0
  406. /package/dist/cli-bundle/chunks/{search-7USZ6XZA.js.map → search-2EI6EAXH.js.map} +0 -0
  407. /package/dist/cli-bundle/chunks/{search-GNAUE65M.js.map → search-QBFBLQRO.js.map} +0 -0
  408. /package/dist/cli-bundle/chunks/{stats-CVHASAEU.js.map → stats-TCW2SZQG.js.map} +0 -0
  409. /package/dist/cli-bundle/chunks/{stats-DQMKJMFT.js.map → stats-TKC6CAKB.js.map} +0 -0
  410. /package/dist/cli-bundle/chunks/{telemetry-PQTL5YS2.js.map → telemetry-BT2VSWU2.js.map} +0 -0
  411. /package/dist/cli-bundle/chunks/{telemetry-7P5EUWCS.js.map → telemetry-LQ6FRTUT.js.map} +0 -0
  412. /package/dist/cli-bundle/chunks/{test-FDQZQNZ4.js.map → test-NV2DRPUS.js.map} +0 -0
  413. /package/dist/cli-bundle/chunks/{test-COWPCGBE.js.map → test-WA6RZGM2.js.map} +0 -0
  414. /package/dist/cli-bundle/chunks/{test-all-PIPPS4S5.js.map → test-all-DZ76VTPQ.js.map} +0 -0
  415. /package/dist/cli-bundle/chunks/{test-all-WQIAZVA6.js.map → test-all-REW67LXT.js.map} +0 -0
  416. /package/dist/cli-bundle/chunks/{test-runs-JS6DNCCI.js.map → test-runs-FQ5WNQLP.js.map} +0 -0
  417. /package/dist/cli-bundle/chunks/{test-runs-NZD2QGL5.js.map → test-runs-PX73DMMI.js.map} +0 -0
  418. /package/dist/cli-bundle/chunks/{update-IJKDRBIX.js.map → update-BSKMQOYH.js.map} +0 -0
  419. /package/dist/cli-bundle/chunks/{update-7IYQHX4Q.js.map → update-FIGYNQ2I.js.map} +0 -0
  420. /package/dist/cli-bundle/chunks/{update-many-B3TH5TDS.js.map → update-many-2ILP6E4Y.js.map} +0 -0
  421. /package/dist/cli-bundle/chunks/{update-many-6NTZ5J5D.js.map → update-many-Q5ZEI64S.js.map} +0 -0
  422. /package/dist/cli-bundle/chunks/{upgrade-76IKZ6EZ.js.map → upgrade-DHL74PQH.js.map} +0 -0
  423. /package/dist/cli-bundle/chunks/{upgrade-4C7VE7MS.js.map → upgrade-FOZKQTQF.js.map} +0 -0
  424. /package/dist/cli-bundle/chunks/{validate-BPM6Z3OT.js.map → validate-54SYJ7QW.js.map} +0 -0
  425. /package/dist/cli-bundle/chunks/{validate-AQU7OCL3.js.map → validate-HYZNIB6W.js.map} +0 -0
@@ -0,0 +1,107 @@
1
+ /**
2
+ * @module core/extensions/version-compat
3
+ *
4
+ * Single source of truth for extension-manifest version-bound compatibility.
5
+ *
6
+ * An extension manifest may declare an inclusive `pm_min_version` lower bound and
7
+ * an inclusive `pm_max_version` upper bound. At load time the
8
+ * {@link ../extensions/loader.js | loader} compares them against the running pm
9
+ * CLI version and skips (or warns about) an extension that falls outside the
10
+ * supported window. The comparison and the per-bound status semantics live here
11
+ * so the runtime loader and the author-time SDK helper
12
+ * (`checkExtensionManifestCompatibility`) share one implementation and can never
13
+ * drift — the same "agrees with the loader by construction" guarantee the
14
+ * declarative authoring helpers (`describeExtensionBlueprint`,
15
+ * `deriveExtensionCapabilities`) already provide.
16
+ *
17
+ * The functions here are pure: they take an already-resolved current version
18
+ * (the loader resolves it from `package.json`; the SDK caller supplies a target
19
+ * version) and return structured outcomes. Warning-string formatting and
20
+ * version resolution stay with the loader; finding/message presentation stays
21
+ * with the SDK.
22
+ */
23
+ import type { PmMaxVersionExceededMode } from "./extension-types.js";
24
+ /** The two inclusive manifest version bounds pm evaluates at load time. */
25
+ export type PmVersionBoundKind = "pm_min_version" | "pm_max_version";
26
+ /**
27
+ * The outcome of evaluating a single manifest version bound against a pm version.
28
+ *
29
+ * - `absent`: the bound is not declared — nothing to enforce.
30
+ * - `ok`: the bound is declared and satisfied by the current version.
31
+ * - `invalid`: the declared bound is malformed (unparseable, or a range prefix on
32
+ * `pm_max_version`); the loader treats the extension as incompatible and skips it.
33
+ * - `unchecked`: the bound is well-formed but cannot be compared against the
34
+ * current version (the current version is unknown or not comparable); the
35
+ * extension still loads, with an advisory warning.
36
+ * - `unmet`: the current version is older than the inclusive `pm_min_version`
37
+ * lower bound; the loader skips the extension (only emitted for `pm_min_version`).
38
+ * - `exceeded`: the current version is newer than the inclusive `pm_max_version`
39
+ * upper bound and the exceeded mode is `block`; the loader skips the extension
40
+ * (only emitted for `pm_max_version`).
41
+ * - `exceeded_warn`: the current version is newer than `pm_max_version` but the
42
+ * exceeded mode is `warn`, so the extension loads with an advisory warning
43
+ * (only emitted for `pm_max_version`).
44
+ */
45
+ export type PmVersionBoundStatus = "absent" | "ok" | "invalid" | "unchecked" | "unmet" | "exceeded" | "exceeded_warn";
46
+ /**
47
+ * The structured result of evaluating one manifest version bound, consumed by the
48
+ * loader (to format its `extension_pm_*_version_*` warning strings) and the SDK
49
+ * (to build author-time compatibility findings).
50
+ */
51
+ export interface PmVersionBoundEvaluation {
52
+ /** Which bound this evaluation describes. */
53
+ kind: PmVersionBoundKind;
54
+ /** The classified outcome of comparing the bound against the current version. */
55
+ status: PmVersionBoundStatus;
56
+ /** Whether the bound permits the extension to load (`false` only for `invalid`/`unmet`/`exceeded`). */
57
+ allowed: boolean;
58
+ /** The declared bound value, verbatim; the empty string when the bound is absent. */
59
+ required: string;
60
+ /** The current version compared against, or `null` when it could not be resolved. */
61
+ current: string | null;
62
+ }
63
+ /**
64
+ * Parse a comparable release string into numeric segments, or `null` when it is
65
+ * not an interpretable dotted-numeric version.
66
+ *
67
+ * Leniently strips a leading inclusive-minimum `>=` and an optional `v` prefix
68
+ * (so `engines.pm`-style `">=2026.5.31"` and `"v1.2.3"` both parse), then drops
69
+ * any build/pre-release suffix and keeps the leading dotted-numeric release.
70
+ */
71
+ export declare function parseComparableVersion(value: string): number[] | null;
72
+ /**
73
+ * Compare two comparable version strings segment by segment.
74
+ *
75
+ * Returns `1` when `currentVersion` is greater, `-1` when it is smaller, `0` when
76
+ * equal, and `null` when either side is not an interpretable version (so callers
77
+ * can classify the comparison as `unchecked`). Missing trailing segments are
78
+ * treated as `0`, so `1.2` and `1.2.0` compare equal.
79
+ */
80
+ export declare function compareComparableVersions(currentVersion: string, otherVersion: string): number | null;
81
+ /**
82
+ * Evaluate a manifest `pm_min_version` inclusive lower bound against the current
83
+ * pm version.
84
+ *
85
+ * An omitted bound is `absent`; a blank, non-string, or unparseable bound is
86
+ * `invalid`; an unknown or incomparable current version is `unchecked`; a current
87
+ * version below the bound is `unmet`; otherwise the bound is satisfied (`ok`).
88
+ * `currentVersion` is `null` when the loader could not resolve the running CLI
89
+ * version.
90
+ */
91
+ export declare function evaluatePmMinVersionBound(required: unknown, currentVersion: string | null): PmVersionBoundEvaluation;
92
+ /**
93
+ * Evaluate a manifest `pm_max_version` inclusive upper bound against the current
94
+ * pm version.
95
+ *
96
+ * An omitted bound is `absent`. A blank or non-string bound is `invalid`. The
97
+ * upper bound must be an exact version: a range prefix (`<`/`>`/`=`/`~`/`^`) is
98
+ * rejected as `invalid`, because
99
+ * {@link parseComparableVersion} leniently strips a leading `>=` for
100
+ * `engines.pm` min-version compatibility and would otherwise turn a range-like
101
+ * `">=2026.6.1"` into an inclusive max and wrongly block newer CLIs. An
102
+ * unparseable bound is `invalid`; an unknown or incomparable current version is
103
+ * `unchecked`; a current version above the bound is `exceeded` (or
104
+ * `exceeded_warn` when `exceededMode` is `warn`, so the extension still loads
105
+ * during a controlled upgrade window); otherwise the bound is satisfied (`ok`).
106
+ */
107
+ export declare function evaluatePmMaxVersionBound(required: unknown, currentVersion: string | null, exceededMode: PmMaxVersionExceededMode): PmVersionBoundEvaluation;
@@ -0,0 +1,130 @@
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]="9675b93b-da90-574d-a6cf-ea7448b40600")}catch(e){}}();
3
+ function formatVersionBoundValue(value) {
4
+ return typeof value === "string" ? value : String(value);
5
+ }
6
+ /**
7
+ * Parse a comparable release string into numeric segments, or `null` when it is
8
+ * not an interpretable dotted-numeric version.
9
+ *
10
+ * Leniently strips a leading inclusive-minimum `>=` and an optional `v` prefix
11
+ * (so `engines.pm`-style `">=2026.5.31"` and `"v1.2.3"` both parse), then drops
12
+ * any build/pre-release suffix and keeps the leading dotted-numeric release.
13
+ */
14
+ export function parseComparableVersion(value) {
15
+ const normalized = value.trim().replace(/^>=\s*/, "").replace(/^v/i, "");
16
+ const release = normalized.split(/[+-]/, 1)[0];
17
+ if (!/^\d+(?:[.-]\d+)*$/.test(release)) {
18
+ return null;
19
+ }
20
+ return release.split(/[.-]/).map((part) => Number(part));
21
+ }
22
+ /**
23
+ * Compare two comparable version strings segment by segment.
24
+ *
25
+ * Returns `1` when `currentVersion` is greater, `-1` when it is smaller, `0` when
26
+ * equal, and `null` when either side is not an interpretable version (so callers
27
+ * can classify the comparison as `unchecked`). Missing trailing segments are
28
+ * treated as `0`, so `1.2` and `1.2.0` compare equal.
29
+ */
30
+ export function compareComparableVersions(currentVersion, otherVersion) {
31
+ const currentParts = parseComparableVersion(currentVersion);
32
+ const otherParts = parseComparableVersion(otherVersion);
33
+ if (!currentParts || !otherParts) {
34
+ return null;
35
+ }
36
+ const width = Math.max(currentParts.length, otherParts.length);
37
+ for (let index = 0; index < width; index += 1) {
38
+ const current = currentParts[index] ?? 0;
39
+ const other = otherParts[index] ?? 0;
40
+ if (current > other) {
41
+ return 1;
42
+ }
43
+ if (current < other) {
44
+ return -1;
45
+ }
46
+ }
47
+ return 0;
48
+ }
49
+ /**
50
+ * Evaluate a manifest `pm_min_version` inclusive lower bound against the current
51
+ * pm version.
52
+ *
53
+ * An omitted bound is `absent`; a blank, non-string, or unparseable bound is
54
+ * `invalid`; an unknown or incomparable current version is `unchecked`; a current
55
+ * version below the bound is `unmet`; otherwise the bound is satisfied (`ok`).
56
+ * `currentVersion` is `null` when the loader could not resolve the running CLI
57
+ * version.
58
+ */
59
+ export function evaluatePmMinVersionBound(required, currentVersion) {
60
+ if (required === undefined || required === null) {
61
+ return { kind: "pm_min_version", status: "absent", allowed: true, required: "", current: currentVersion };
62
+ }
63
+ const declared = formatVersionBoundValue(required);
64
+ if (typeof required !== "string" || declared.trim().length === 0) {
65
+ return { kind: "pm_min_version", status: "invalid", allowed: false, required: declared, current: currentVersion };
66
+ }
67
+ if (!parseComparableVersion(declared)) {
68
+ return { kind: "pm_min_version", status: "invalid", allowed: false, required: declared, current: currentVersion };
69
+ }
70
+ if (currentVersion === null) {
71
+ return { kind: "pm_min_version", status: "unchecked", allowed: true, required: declared, current: null };
72
+ }
73
+ const comparison = compareComparableVersions(currentVersion, declared);
74
+ if (comparison === null) {
75
+ return { kind: "pm_min_version", status: "unchecked", allowed: true, required: declared, current: currentVersion };
76
+ }
77
+ if (comparison < 0) {
78
+ return { kind: "pm_min_version", status: "unmet", allowed: false, required: declared, current: currentVersion };
79
+ }
80
+ return { kind: "pm_min_version", status: "ok", allowed: true, required: declared, current: currentVersion };
81
+ }
82
+ /**
83
+ * Evaluate a manifest `pm_max_version` inclusive upper bound against the current
84
+ * pm version.
85
+ *
86
+ * An omitted bound is `absent`. A blank or non-string bound is `invalid`. The
87
+ * upper bound must be an exact version: a range prefix (`<`/`>`/`=`/`~`/`^`) is
88
+ * rejected as `invalid`, because
89
+ * {@link parseComparableVersion} leniently strips a leading `>=` for
90
+ * `engines.pm` min-version compatibility and would otherwise turn a range-like
91
+ * `">=2026.6.1"` into an inclusive max and wrongly block newer CLIs. An
92
+ * unparseable bound is `invalid`; an unknown or incomparable current version is
93
+ * `unchecked`; a current version above the bound is `exceeded` (or
94
+ * `exceeded_warn` when `exceededMode` is `warn`, so the extension still loads
95
+ * during a controlled upgrade window); otherwise the bound is satisfied (`ok`).
96
+ */
97
+ export function evaluatePmMaxVersionBound(required, currentVersion, exceededMode) {
98
+ if (required === undefined || required === null) {
99
+ return { kind: "pm_max_version", status: "absent", allowed: true, required: "", current: currentVersion };
100
+ }
101
+ const declared = formatVersionBoundValue(required);
102
+ if (typeof required !== "string" || declared.trim().length === 0) {
103
+ return { kind: "pm_max_version", status: "invalid", allowed: false, required: declared, current: currentVersion };
104
+ }
105
+ if (/^[<>=~^]/.test(declared.trim()) || !parseComparableVersion(declared)) {
106
+ return { kind: "pm_max_version", status: "invalid", allowed: false, required: declared, current: currentVersion };
107
+ }
108
+ if (currentVersion === null) {
109
+ return { kind: "pm_max_version", status: "unchecked", allowed: true, required: declared, current: null };
110
+ }
111
+ const comparison = compareComparableVersions(currentVersion, declared);
112
+ if (comparison === null) {
113
+ return { kind: "pm_max_version", status: "unchecked", allowed: true, required: declared, current: currentVersion };
114
+ }
115
+ if (comparison > 0) {
116
+ if (exceededMode === "warn") {
117
+ return {
118
+ kind: "pm_max_version",
119
+ status: "exceeded_warn",
120
+ allowed: true,
121
+ required: declared,
122
+ current: currentVersion,
123
+ };
124
+ }
125
+ return { kind: "pm_max_version", status: "exceeded", allowed: false, required: declared, current: currentVersion };
126
+ }
127
+ return { kind: "pm_max_version", status: "ok", allowed: true, required: declared, current: currentVersion };
128
+ }
129
+ //# sourceMappingURL=version-compat.js.map
130
+ //# debugId=9675b93b-da90-574d-a6cf-ea7448b40600
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-compat.js","sources":["core/extensions/version-compat.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module core/extensions/version-compat\n *\n * Single source of truth for extension-manifest version-bound compatibility.\n *\n * An extension manifest may declare an inclusive `pm_min_version` lower bound and\n * an inclusive `pm_max_version` upper bound. At load time the\n * {@link ../extensions/loader.js | loader} compares them against the running pm\n * CLI version and skips (or warns about) an extension that falls outside the\n * supported window. The comparison and the per-bound status semantics live here\n * so the runtime loader and the author-time SDK helper\n * (`checkExtensionManifestCompatibility`) share one implementation and can never\n * drift — the same \"agrees with the loader by construction\" guarantee the\n * declarative authoring helpers (`describeExtensionBlueprint`,\n * `deriveExtensionCapabilities`) already provide.\n *\n * The functions here are pure: they take an already-resolved current version\n * (the loader resolves it from `package.json`; the SDK caller supplies a target\n * version) and return structured outcomes. Warning-string formatting and\n * version resolution stay with the loader; finding/message presentation stays\n * with the SDK.\n */\nimport type { PmMaxVersionExceededMode } from \"./extension-types.js\";\n\n/** The two inclusive manifest version bounds pm evaluates at load time. */\nexport type PmVersionBoundKind = \"pm_min_version\" | \"pm_max_version\";\n\n/**\n * The outcome of evaluating a single manifest version bound against a pm version.\n *\n * - `absent`: the bound is not declared — nothing to enforce.\n * - `ok`: the bound is declared and satisfied by the current version.\n * - `invalid`: the declared bound is malformed (unparseable, or a range prefix on\n * `pm_max_version`); the loader treats the extension as incompatible and skips it.\n * - `unchecked`: the bound is well-formed but cannot be compared against the\n * current version (the current version is unknown or not comparable); the\n * extension still loads, with an advisory warning.\n * - `unmet`: the current version is older than the inclusive `pm_min_version`\n * lower bound; the loader skips the extension (only emitted for `pm_min_version`).\n * - `exceeded`: the current version is newer than the inclusive `pm_max_version`\n * upper bound and the exceeded mode is `block`; the loader skips the extension\n * (only emitted for `pm_max_version`).\n * - `exceeded_warn`: the current version is newer than `pm_max_version` but the\n * exceeded mode is `warn`, so the extension loads with an advisory warning\n * (only emitted for `pm_max_version`).\n */\nexport type PmVersionBoundStatus =\n | \"absent\"\n | \"ok\"\n | \"invalid\"\n | \"unchecked\"\n | \"unmet\"\n | \"exceeded\"\n | \"exceeded_warn\";\n\n/**\n * The structured result of evaluating one manifest version bound, consumed by the\n * loader (to format its `extension_pm_*_version_*` warning strings) and the SDK\n * (to build author-time compatibility findings).\n */\nexport interface PmVersionBoundEvaluation {\n /** Which bound this evaluation describes. */\n kind: PmVersionBoundKind;\n /** The classified outcome of comparing the bound against the current version. */\n status: PmVersionBoundStatus;\n /** Whether the bound permits the extension to load (`false` only for `invalid`/`unmet`/`exceeded`). */\n allowed: boolean;\n /** The declared bound value, verbatim; the empty string when the bound is absent. */\n required: string;\n /** The current version compared against, or `null` when it could not be resolved. */\n current: string | null;\n}\n\nfunction formatVersionBoundValue(value: unknown): string {\n return typeof value === \"string\" ? value : String(value);\n}\n\n/**\n * Parse a comparable release string into numeric segments, or `null` when it is\n * not an interpretable dotted-numeric version.\n *\n * Leniently strips a leading inclusive-minimum `>=` and an optional `v` prefix\n * (so `engines.pm`-style `\">=2026.5.31\"` and `\"v1.2.3\"` both parse), then drops\n * any build/pre-release suffix and keeps the leading dotted-numeric release.\n */\nexport function parseComparableVersion(value: string): number[] | null {\n const normalized = value.trim().replace(/^>=\\s*/, \"\").replace(/^v/i, \"\");\n const release = normalized.split(/[+-]/, 1)[0];\n if (!/^\\d+(?:[.-]\\d+)*$/.test(release)) {\n return null;\n }\n return release.split(/[.-]/).map((part) => Number(part));\n}\n\n/**\n * Compare two comparable version strings segment by segment.\n *\n * Returns `1` when `currentVersion` is greater, `-1` when it is smaller, `0` when\n * equal, and `null` when either side is not an interpretable version (so callers\n * can classify the comparison as `unchecked`). Missing trailing segments are\n * treated as `0`, so `1.2` and `1.2.0` compare equal.\n */\nexport function compareComparableVersions(currentVersion: string, otherVersion: string): number | null {\n const currentParts = parseComparableVersion(currentVersion);\n const otherParts = parseComparableVersion(otherVersion);\n if (!currentParts || !otherParts) {\n return null;\n }\n const width = Math.max(currentParts.length, otherParts.length);\n for (let index = 0; index < width; index += 1) {\n const current = currentParts[index] ?? 0;\n const other = otherParts[index] ?? 0;\n if (current > other) {\n return 1;\n }\n if (current < other) {\n return -1;\n }\n }\n return 0;\n}\n\n/**\n * Evaluate a manifest `pm_min_version` inclusive lower bound against the current\n * pm version.\n *\n * An omitted bound is `absent`; a blank, non-string, or unparseable bound is\n * `invalid`; an unknown or incomparable current version is `unchecked`; a current\n * version below the bound is `unmet`; otherwise the bound is satisfied (`ok`).\n * `currentVersion` is `null` when the loader could not resolve the running CLI\n * version.\n */\nexport function evaluatePmMinVersionBound(\n required: unknown,\n currentVersion: string | null,\n): PmVersionBoundEvaluation {\n if (required === undefined || required === null) {\n return { kind: \"pm_min_version\", status: \"absent\", allowed: true, required: \"\", current: currentVersion };\n }\n const declared = formatVersionBoundValue(required);\n if (typeof required !== \"string\" || declared.trim().length === 0) {\n return { kind: \"pm_min_version\", status: \"invalid\", allowed: false, required: declared, current: currentVersion };\n }\n if (!parseComparableVersion(declared)) {\n return { kind: \"pm_min_version\", status: \"invalid\", allowed: false, required: declared, current: currentVersion };\n }\n if (currentVersion === null) {\n return { kind: \"pm_min_version\", status: \"unchecked\", allowed: true, required: declared, current: null };\n }\n const comparison = compareComparableVersions(currentVersion, declared);\n if (comparison === null) {\n return { kind: \"pm_min_version\", status: \"unchecked\", allowed: true, required: declared, current: currentVersion };\n }\n if (comparison < 0) {\n return { kind: \"pm_min_version\", status: \"unmet\", allowed: false, required: declared, current: currentVersion };\n }\n return { kind: \"pm_min_version\", status: \"ok\", allowed: true, required: declared, current: currentVersion };\n}\n\n/**\n * Evaluate a manifest `pm_max_version` inclusive upper bound against the current\n * pm version.\n *\n * An omitted bound is `absent`. A blank or non-string bound is `invalid`. The\n * upper bound must be an exact version: a range prefix (`<`/`>`/`=`/`~`/`^`) is\n * rejected as `invalid`, because\n * {@link parseComparableVersion} leniently strips a leading `>=` for\n * `engines.pm` min-version compatibility and would otherwise turn a range-like\n * `\">=2026.6.1\"` into an inclusive max and wrongly block newer CLIs. An\n * unparseable bound is `invalid`; an unknown or incomparable current version is\n * `unchecked`; a current version above the bound is `exceeded` (or\n * `exceeded_warn` when `exceededMode` is `warn`, so the extension still loads\n * during a controlled upgrade window); otherwise the bound is satisfied (`ok`).\n */\nexport function evaluatePmMaxVersionBound(\n required: unknown,\n currentVersion: string | null,\n exceededMode: PmMaxVersionExceededMode,\n): PmVersionBoundEvaluation {\n if (required === undefined || required === null) {\n return { kind: \"pm_max_version\", status: \"absent\", allowed: true, required: \"\", current: currentVersion };\n }\n const declared = formatVersionBoundValue(required);\n if (typeof required !== \"string\" || declared.trim().length === 0) {\n return { kind: \"pm_max_version\", status: \"invalid\", allowed: false, required: declared, current: currentVersion };\n }\n if (/^[<>=~^]/.test(declared.trim()) || !parseComparableVersion(declared)) {\n return { kind: \"pm_max_version\", status: \"invalid\", allowed: false, required: declared, current: currentVersion };\n }\n if (currentVersion === null) {\n return { kind: \"pm_max_version\", status: \"unchecked\", allowed: true, required: declared, current: null };\n }\n const comparison = compareComparableVersions(currentVersion, declared);\n if (comparison === null) {\n return { kind: \"pm_max_version\", status: \"unchecked\", allowed: true, required: declared, current: currentVersion };\n }\n if (comparison > 0) {\n if (exceededMode === \"warn\") {\n return {\n kind: \"pm_max_version\",\n status: \"exceeded_warn\",\n allowed: true,\n required: declared,\n current: currentVersion,\n };\n }\n return { kind: \"pm_max_version\", status: \"exceeded\", allowed: false, required: declared, current: currentVersion };\n }\n return { kind: \"pm_max_version\", status: \"ok\", allowed: true, required: declared, current: currentVersion };\n}\n"],"names":[],"mappings":"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","debugId":"9675b93b-da90-574d-a6cf-ea7448b40600"}
@@ -4,7 +4,7 @@
4
4
  * Captures consent-aware telemetry and observability events for Runtime.
5
5
  */
6
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]="c9bc7128-34dd-52d4-beeb-f22d46b1053d")}catch(e){}}();
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]="dbba82ab-8052-5828-babf-094b3f066810")}catch(e){}}();
8
8
  import crypto from "node:crypto";
9
9
  import { spawn } from "node:child_process";
10
10
  import { mkdirSync, rmSync, statSync } from "node:fs";
@@ -1538,6 +1538,9 @@ function scheduleTelemetryFlush(globalPmRoot, endpoint, retentionDays) {
1538
1538
  const child = spawn(process.execPath, [telemetryFlushRunnerPath()], {
1539
1539
  detached: true,
1540
1540
  stdio: "ignore",
1541
+ // Detached workers inherit cwd by default. On Windows that can keep a
1542
+ // disposable project directory locked after the foreground command exits.
1543
+ cwd: os.tmpdir(),
1541
1544
  env: {
1542
1545
  ...process.env,
1543
1546
  PM_GLOBAL_PATH: globalPmRoot,
@@ -1789,4 +1792,4 @@ export async function emitTelemetryErrorEvent(context) {
1789
1792
  }
1790
1793
  }
1791
1794
  //# sourceMappingURL=runtime.js.map
1792
- //# debugId=c9bc7128-34dd-52d4-beeb-f22d46b1053d
1795
+ //# debugId=dbba82ab-8052-5828-babf-094b3f066810