@unbrained/pm-cli 2026.6.24 → 2026.7.1

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 (744) hide show
  1. package/AGENTS.md +2 -0
  2. package/CHANGELOG.md +113 -1
  3. package/CONTRIBUTING.md +30 -0
  4. package/README.md +16 -3
  5. package/dist/cli/bootstrap-args.js +89 -79
  6. package/dist/cli/bootstrap-args.js.map +1 -1
  7. package/dist/cli/commander-usage.js +3 -3
  8. package/dist/cli/commander-usage.js.map +1 -1
  9. package/dist/cli/commands/aggregate.js +8 -7
  10. package/dist/cli/commands/aggregate.js.map +1 -1
  11. package/dist/cli/commands/calendar.js +63 -62
  12. package/dist/cli/commands/calendar.js.map +1 -1
  13. package/dist/cli/commands/close.d.ts +2 -4
  14. package/dist/cli/commands/close.js +5 -17
  15. package/dist/cli/commands/close.js.map +1 -1
  16. package/dist/cli/commands/completion.js +158 -9
  17. package/dist/cli/commands/completion.js.map +1 -1
  18. package/dist/cli/commands/config.d.ts +1 -1
  19. package/dist/cli/commands/config.js +2 -2
  20. package/dist/cli/commands/config.js.map +1 -1
  21. package/dist/cli/commands/context.d.ts +31 -4
  22. package/dist/cli/commands/context.js +33 -10
  23. package/dist/cli/commands/context.js.map +1 -1
  24. package/dist/cli/commands/contracts.js +48 -8
  25. package/dist/cli/commands/contracts.js.map +1 -1
  26. package/dist/cli/commands/create.d.ts +1 -6
  27. package/dist/cli/commands/create.js +491 -587
  28. package/dist/cli/commands/create.js.map +1 -1
  29. package/dist/cli/commands/extension/bundled-catalog.js +59 -46
  30. package/dist/cli/commands/extension/bundled-catalog.js.map +1 -1
  31. package/dist/cli/commands/extension/describe.d.ts +15 -0
  32. package/dist/cli/commands/extension/describe.js +48 -2
  33. package/dist/cli/commands/extension/describe.js.map +1 -1
  34. package/dist/cli/commands/extension/doctor.js +129 -75
  35. package/dist/cli/commands/extension/doctor.js.map +1 -1
  36. package/dist/cli/commands/extension/install-sources.js +37 -7
  37. package/dist/cli/commands/extension/install-sources.js.map +1 -1
  38. package/dist/cli/commands/extension/managed-state.js +101 -57
  39. package/dist/cli/commands/extension/managed-state.js.map +1 -1
  40. package/dist/cli/commands/extension/scaffold.d.ts +38 -8
  41. package/dist/cli/commands/extension/scaffold.js +1956 -242
  42. package/dist/cli/commands/extension/scaffold.js.map +1 -1
  43. package/dist/cli/commands/extension.d.ts +28 -3
  44. package/dist/cli/commands/extension.js +1181 -880
  45. package/dist/cli/commands/extension.js.map +1 -1
  46. package/dist/cli/commands/index.d.ts +3 -1
  47. package/dist/cli/commands/index.js +5 -3
  48. package/dist/cli/commands/index.js.map +1 -1
  49. package/dist/cli/commands/item-filter-options.d.ts +63 -0
  50. package/dist/cli/commands/item-filter-options.js +10 -0
  51. package/dist/cli/commands/item-filter-options.js.map +1 -0
  52. package/dist/cli/commands/legacy-none-tokens.d.ts +14 -0
  53. package/dist/cli/commands/legacy-none-tokens.js +31 -2
  54. package/dist/cli/commands/legacy-none-tokens.js.map +1 -1
  55. package/dist/cli/commands/linked-artifacts.d.ts +7 -0
  56. package/dist/cli/commands/linked-artifacts.js +12 -2
  57. package/dist/cli/commands/linked-artifacts.js.map +1 -1
  58. package/dist/cli/commands/list-filter-shared.js +55 -48
  59. package/dist/cli/commands/list-filter-shared.js.map +1 -1
  60. package/dist/cli/commands/list.d.ts +16 -39
  61. package/dist/cli/commands/list.js +127 -118
  62. package/dist/cli/commands/list.js.map +1 -1
  63. package/dist/cli/commands/next.d.ts +98 -0
  64. package/dist/cli/commands/next.js +304 -0
  65. package/dist/cli/commands/next.js.map +1 -0
  66. package/dist/cli/commands/profile.d.ts +208 -0
  67. package/dist/cli/commands/profile.js +418 -0
  68. package/dist/cli/commands/profile.js.map +1 -0
  69. package/dist/cli/commands/repeatable-metadata-parsers.js +12 -13
  70. package/dist/cli/commands/repeatable-metadata-parsers.js.map +1 -1
  71. package/dist/cli/commands/schema.d.ts +7 -0
  72. package/dist/cli/commands/schema.js +9 -3
  73. package/dist/cli/commands/schema.js.map +1 -1
  74. package/dist/cli/commands/search.d.ts +2 -39
  75. package/dist/cli/commands/search.js +196 -172
  76. package/dist/cli/commands/search.js.map +1 -1
  77. package/dist/cli/commands/shared-unset-fields.d.ts +30 -0
  78. package/dist/cli/commands/shared-unset-fields.js +161 -0
  79. package/dist/cli/commands/shared-unset-fields.js.map +1 -0
  80. package/dist/cli/commands/stats.js +15 -3
  81. package/dist/cli/commands/stats.js.map +1 -1
  82. package/dist/cli/commands/test.js +115 -125
  83. package/dist/cli/commands/test.js.map +1 -1
  84. package/dist/cli/commands/update.d.ts +1 -6
  85. package/dist/cli/commands/update.js +37 -232
  86. package/dist/cli/commands/update.js.map +1 -1
  87. package/dist/cli/commands/validate.js +20 -5
  88. package/dist/cli/commands/validate.js.map +1 -1
  89. package/dist/cli/extension-command-options.js +48 -21
  90. package/dist/cli/extension-command-options.js.map +1 -1
  91. package/dist/cli/help-content.js +26 -2
  92. package/dist/cli/help-content.js.map +1 -1
  93. package/dist/cli/help-json-payload.js +3 -3
  94. package/dist/cli/help-json-payload.js.map +1 -1
  95. package/dist/cli/main.js +27 -12
  96. package/dist/cli/main.js.map +1 -1
  97. package/dist/cli/register-list-query.js +42 -3
  98. package/dist/cli/register-list-query.js.map +1 -1
  99. package/dist/cli/register-mutation.js +86 -2
  100. package/dist/cli/register-mutation.js.map +1 -1
  101. package/dist/cli/register-setup.js +67 -6
  102. package/dist/cli/register-setup.js.map +1 -1
  103. package/dist/cli/registration-helpers.d.ts +9 -1
  104. package/dist/cli/registration-helpers.js +149 -123
  105. package/dist/cli/registration-helpers.js.map +1 -1
  106. package/dist/cli-bundle/chunks/activity-AW6XVFH6.js +16 -0
  107. package/dist/cli-bundle/chunks/{activity-N7RVTLBQ.js → activity-DBLQVIP6.js} +9 -11
  108. package/dist/cli-bundle/chunks/{aggregate-63NWNIBR.js → aggregate-JTEF4BP7.js} +17 -18
  109. package/dist/cli-bundle/chunks/aggregate-JTEF4BP7.js.map +1 -0
  110. package/dist/cli-bundle/chunks/{aggregate-YHCYX2EV.js → aggregate-SDF7DUOD.js} +16 -17
  111. package/dist/cli-bundle/chunks/aggregate-SDF7DUOD.js.map +7 -0
  112. package/dist/cli-bundle/chunks/{append-VLQQDHMJ.js → append-LOVPGVPT.js} +8 -10
  113. package/dist/cli-bundle/chunks/{append-VLQQDHMJ.js.map → append-LOVPGVPT.js.map} +1 -1
  114. package/dist/cli-bundle/chunks/{append-PUKREFV5.js → append-QCFJSDFL.js} +10 -12
  115. package/dist/cli-bundle/chunks/{append-PUKREFV5.js.map → append-QCFJSDFL.js.map} +1 -1
  116. package/dist/cli-bundle/chunks/{chunk-ABYCA5VX.js → chunk-22WKIL3H.js} +9 -11
  117. package/dist/cli-bundle/chunks/{chunk-ABYCA5VX.js.map → chunk-22WKIL3H.js.map} +1 -1
  118. package/dist/cli-bundle/chunks/{chunk-A66VYUOV.js → chunk-2466X6E4.js} +9 -11
  119. package/dist/cli-bundle/chunks/{chunk-A66VYUOV.js.map → chunk-2466X6E4.js.map} +1 -1
  120. package/dist/cli-bundle/chunks/{chunk-F32L4HR6.js → chunk-27BXPBAY.js} +3 -3
  121. package/dist/cli-bundle/chunks/{schema-QO5I4FBL.js → chunk-2D4HATP2.js} +136 -66
  122. package/dist/cli-bundle/chunks/chunk-2D4HATP2.js.map +1 -0
  123. package/dist/cli-bundle/chunks/{chunk-J7I4C5ZB.js → chunk-3J6JRJ3I.js} +153 -125
  124. package/dist/cli-bundle/chunks/chunk-3J6JRJ3I.js.map +7 -0
  125. package/dist/cli-bundle/chunks/{chunk-OHDQNKJB.js → chunk-3K2M5OYU.js} +106 -34
  126. package/dist/cli-bundle/chunks/chunk-3K2M5OYU.js.map +7 -0
  127. package/dist/cli-bundle/chunks/{chunk-XVYKWZNL.js → chunk-3S2KT7NG.js} +127 -127
  128. package/dist/cli-bundle/chunks/chunk-3S2KT7NG.js.map +7 -0
  129. package/dist/cli-bundle/chunks/{chunk-5BBEWX6C.js → chunk-3VGN2UWE.js} +2 -2
  130. package/dist/cli-bundle/chunks/{chunk-N5B6WZC5.js → chunk-3XZCOZ5J.js} +115 -123
  131. package/dist/cli-bundle/chunks/chunk-3XZCOZ5J.js.map +1 -0
  132. package/dist/cli-bundle/chunks/chunk-4A3BJ675.js +799 -0
  133. package/dist/cli-bundle/chunks/chunk-4A3BJ675.js.map +1 -0
  134. package/dist/cli-bundle/chunks/chunk-4BU75MF4.js +87 -0
  135. package/dist/cli-bundle/chunks/chunk-4BU75MF4.js.map +7 -0
  136. package/dist/cli-bundle/chunks/{chunk-HZF5RLKX.js → chunk-4DSGXSBL.js} +5 -7
  137. package/dist/cli-bundle/chunks/{chunk-HZF5RLKX.js.map → chunk-4DSGXSBL.js.map} +1 -1
  138. package/dist/cli-bundle/chunks/{chunk-JV27C7OZ.js → chunk-4DUVCVLZ.js} +4 -6
  139. package/dist/cli-bundle/chunks/{chunk-JV27C7OZ.js.map → chunk-4DUVCVLZ.js.map} +1 -1
  140. package/dist/cli-bundle/chunks/{chunk-IAP5KYBQ.js → chunk-4XOIEKSD.js} +563 -506
  141. package/dist/cli-bundle/chunks/chunk-4XOIEKSD.js.map +1 -0
  142. package/dist/cli-bundle/chunks/{context-5LB7UGKE.js → chunk-55SNVXRQ.js} +79 -82
  143. package/dist/cli-bundle/chunks/chunk-55SNVXRQ.js.map +7 -0
  144. package/dist/cli-bundle/chunks/{chunk-BFFO3AIB.js → chunk-5CGRF3L5.js} +128 -128
  145. package/dist/cli-bundle/chunks/chunk-5CGRF3L5.js.map +1 -0
  146. package/dist/cli-bundle/chunks/{chunk-JKL6HRMV.js → chunk-5QFDBI4F.js} +1260 -1046
  147. package/dist/cli-bundle/chunks/chunk-5QFDBI4F.js.map +7 -0
  148. package/dist/cli-bundle/chunks/{chunk-LU36E6GU.js → chunk-64HNBBFQ.js} +8 -12
  149. package/dist/cli-bundle/chunks/{chunk-LU36E6GU.js.map → chunk-64HNBBFQ.js.map} +1 -1
  150. package/dist/cli-bundle/chunks/chunk-6AQZPVHQ.js +2444 -0
  151. package/dist/cli-bundle/chunks/chunk-6AQZPVHQ.js.map +1 -0
  152. package/dist/cli-bundle/chunks/chunk-7M2HAZEB.js +17 -0
  153. package/dist/cli-bundle/chunks/chunk-7M2HAZEB.js.map +7 -0
  154. package/dist/cli-bundle/chunks/{chunk-VSAABFGQ.js → chunk-7R4QEMZZ.js} +1490 -734
  155. package/dist/cli-bundle/chunks/chunk-7R4QEMZZ.js.map +1 -0
  156. package/dist/cli-bundle/chunks/{chunk-M6TUBOGW.js → chunk-A7FPBAQS.js} +19 -12
  157. package/dist/cli-bundle/chunks/chunk-A7FPBAQS.js.map +1 -0
  158. package/dist/cli-bundle/chunks/{chunk-GQYJEEFX.js → chunk-AVEE5EHK.js} +53 -54
  159. package/dist/cli-bundle/chunks/chunk-AVEE5EHK.js.map +1 -0
  160. package/dist/cli-bundle/chunks/{chunk-FMWW2JDU.js → chunk-AXIDKKAT.js} +2 -2
  161. package/dist/cli-bundle/chunks/{chunk-TIM4OD74.js → chunk-BDTISOSD.js} +2 -2
  162. package/dist/cli-bundle/chunks/{chunk-C4C3EJCJ.js → chunk-BHO33VBQ.js} +509 -363
  163. package/dist/cli-bundle/chunks/chunk-BHO33VBQ.js.map +7 -0
  164. package/dist/cli-bundle/chunks/{chunk-6W3Y65PL.js → chunk-BZCEN4JA.js} +198 -177
  165. package/dist/cli-bundle/chunks/chunk-BZCEN4JA.js.map +7 -0
  166. package/dist/cli-bundle/chunks/{chunk-RRP6D345.js → chunk-CF7RL6FR.js} +12 -16
  167. package/dist/cli-bundle/chunks/{chunk-RRP6D345.js.map → chunk-CF7RL6FR.js.map} +1 -1
  168. package/dist/cli-bundle/chunks/{chunk-HC2S36NB.js → chunk-CWFNTKQJ.js} +154 -126
  169. package/dist/cli-bundle/chunks/chunk-CWFNTKQJ.js.map +1 -0
  170. package/dist/cli-bundle/chunks/chunk-CZVISY5A.js +87 -0
  171. package/dist/cli-bundle/chunks/chunk-CZVISY5A.js.map +7 -0
  172. package/dist/cli-bundle/chunks/{chunk-CZIFFMZI.js → chunk-DDPTYJIM.js} +2 -2
  173. package/dist/cli-bundle/chunks/{chunk-AYPQUFCX.js → chunk-EJUDVUYZ.js} +3 -3
  174. package/dist/cli-bundle/chunks/{chunk-EOGBMLCE.js → chunk-EVMTBV6V.js} +3 -3
  175. package/dist/cli-bundle/chunks/{chunk-RAWA3Y7O.js → chunk-FFMQB7WR.js} +199 -178
  176. package/dist/cli-bundle/chunks/chunk-FFMQB7WR.js.map +1 -0
  177. package/dist/cli-bundle/chunks/{chunk-CG3KP6I5.js → chunk-G7I7DEZA.js} +4 -4
  178. package/dist/cli-bundle/chunks/{chunk-MEXZ5XUM.js → chunk-GJ326ZKX.js} +53 -54
  179. package/dist/cli-bundle/chunks/chunk-GJ326ZKX.js.map +7 -0
  180. package/dist/cli-bundle/chunks/chunk-HPPFYYOV.js +119 -0
  181. package/dist/cli-bundle/chunks/chunk-HPPFYYOV.js.map +7 -0
  182. package/dist/cli-bundle/chunks/{chunk-OF7V47P3.js → chunk-HXTQJXWT.js} +2172 -2146
  183. package/dist/cli-bundle/chunks/chunk-HXTQJXWT.js.map +1 -0
  184. package/dist/cli-bundle/chunks/{chunk-F4BNR2IN.js → chunk-HYTGA6GI.js} +3 -3
  185. package/dist/cli-bundle/chunks/{chunk-2WCYE3IF.js → chunk-HZZEHPRG.js} +2 -2
  186. package/dist/cli-bundle/chunks/chunk-IBMFIKVS.js +14 -0
  187. package/dist/cli-bundle/chunks/chunk-IBMFIKVS.js.map +1 -0
  188. package/dist/cli-bundle/chunks/{chunk-YV2OSAMS.js → chunk-IJYK2T43.js} +2 -2
  189. package/dist/cli-bundle/chunks/{chunk-4XDGYFHL.js → chunk-IPYBJWTE.js} +10 -14
  190. package/dist/cli-bundle/chunks/{chunk-4XDGYFHL.js.map → chunk-IPYBJWTE.js.map} +1 -1
  191. package/dist/cli-bundle/chunks/{chunk-6EBNFQOR.js → chunk-IZBR4NRW.js} +10 -14
  192. package/dist/cli-bundle/chunks/{chunk-6EBNFQOR.js.map → chunk-IZBR4NRW.js.map} +1 -1
  193. package/dist/cli-bundle/chunks/{chunk-VFJYVXHL.js → chunk-JLM7BHI7.js} +7 -9
  194. package/dist/cli-bundle/chunks/{chunk-VFJYVXHL.js.map → chunk-JLM7BHI7.js.map} +1 -1
  195. package/dist/cli-bundle/chunks/{chunk-6EL7SW5C.js → chunk-JMP4E6D7.js} +114 -122
  196. package/dist/cli-bundle/chunks/chunk-JMP4E6D7.js.map +7 -0
  197. package/dist/cli-bundle/chunks/{chunk-QOUOMPHO.js → chunk-JPECA746.js} +2 -2
  198. package/dist/cli-bundle/chunks/{chunk-KJZOSF7J.js → chunk-JSU5P7VS.js} +100 -35
  199. package/dist/cli-bundle/chunks/chunk-JSU5P7VS.js.map +1 -0
  200. package/dist/cli-bundle/chunks/{context-55VEOYI3.js → chunk-JWXRETDF.js} +79 -82
  201. package/dist/cli-bundle/chunks/chunk-JWXRETDF.js.map +1 -0
  202. package/dist/cli-bundle/chunks/{chunk-OQ2E64FH.js → chunk-KNPEF7QG.js} +4 -4
  203. package/dist/cli-bundle/chunks/{chunk-3BKH2CL3.js → chunk-L5OEFZQG.js} +3 -3
  204. package/dist/cli-bundle/chunks/{chunk-DTABLLVE.js → chunk-LB6TP6MC.js} +5 -7
  205. package/dist/cli-bundle/chunks/{chunk-DTABLLVE.js.map → chunk-LB6TP6MC.js.map} +2 -2
  206. package/dist/cli-bundle/chunks/{chunk-TSI32UEL.js → chunk-MAUKX7JC.js} +6 -8
  207. package/dist/cli-bundle/chunks/{chunk-TSI32UEL.js.map → chunk-MAUKX7JC.js.map} +1 -1
  208. package/dist/cli-bundle/chunks/{chunk-SMXSDY7J.js → chunk-MDPEOIGN.js} +2221 -2172
  209. package/dist/cli-bundle/chunks/chunk-MDPEOIGN.js.map +7 -0
  210. package/dist/cli-bundle/chunks/{chunk-5S4ZGDB2.js → chunk-N74UMG5H.js} +2 -2
  211. package/dist/cli-bundle/chunks/{chunk-IXAZI443.js → chunk-NFDPYAIP.js} +2 -2
  212. package/dist/cli-bundle/chunks/{chunk-SKC4UTRP.js → chunk-NKZAN7BD.js} +3 -3
  213. package/dist/cli-bundle/chunks/chunk-NOLPZMSV.js +116 -0
  214. package/dist/cli-bundle/chunks/chunk-NOLPZMSV.js.map +1 -0
  215. package/dist/cli-bundle/chunks/{chunk-L7UXKP2I.js → chunk-NU2UEROZ.js} +1257 -1029
  216. package/dist/cli-bundle/chunks/chunk-NU2UEROZ.js.map +1 -0
  217. package/dist/cli-bundle/chunks/{chunk-HBAEFWX3.js → chunk-NUHHPVVS.js} +65 -335
  218. package/dist/cli-bundle/chunks/chunk-NUHHPVVS.js.map +7 -0
  219. package/dist/cli-bundle/chunks/{chunk-JPJDP4VU.js → chunk-NWMZWYYB.js} +2 -2
  220. package/dist/cli-bundle/chunks/{chunk-MWMHZOZZ.js → chunk-OGXLACHC.js} +10 -14
  221. package/dist/cli-bundle/chunks/{chunk-MWMHZOZZ.js.map → chunk-OGXLACHC.js.map} +1 -1
  222. package/dist/cli-bundle/chunks/chunk-OKQ22KTH.js +379 -0
  223. package/dist/cli-bundle/chunks/chunk-OKQ22KTH.js.map +1 -0
  224. package/dist/cli-bundle/chunks/{chunk-KKX4Z2SE.js → chunk-OTUHB4HS.js} +4 -4
  225. package/dist/cli-bundle/chunks/{chunk-ZLWRPBOW.js → chunk-QCWF6IYD.js} +510 -364
  226. package/dist/cli-bundle/chunks/chunk-QCWF6IYD.js.map +1 -0
  227. package/dist/cli-bundle/chunks/{chunk-PRVTGX64.js → chunk-RGEMWD6Q.js} +11 -23
  228. package/dist/cli-bundle/chunks/chunk-RGEMWD6Q.js.map +7 -0
  229. package/dist/cli-bundle/chunks/chunk-RH5ZBYFD.js +809 -0
  230. package/dist/cli-bundle/chunks/chunk-RH5ZBYFD.js.map +7 -0
  231. package/dist/cli-bundle/chunks/{chunk-ALQKV6U7.js → chunk-RLDHZHQS.js} +12 -16
  232. package/dist/cli-bundle/chunks/{chunk-ALQKV6U7.js.map → chunk-RLDHZHQS.js.map} +1 -1
  233. package/dist/cli-bundle/chunks/{schema-C6QA367T.js → chunk-RMMQ74TG.js} +144 -67
  234. package/dist/cli-bundle/chunks/chunk-RMMQ74TG.js.map +7 -0
  235. package/dist/cli-bundle/chunks/{chunk-EYPINTFR.js → chunk-RVUALSJF.js} +1516 -753
  236. package/dist/cli-bundle/chunks/chunk-RVUALSJF.js.map +7 -0
  237. package/dist/cli-bundle/chunks/chunk-SDR5J34Q.js +2468 -0
  238. package/dist/cli-bundle/chunks/chunk-SDR5J34Q.js.map +7 -0
  239. package/dist/cli-bundle/chunks/{chunk-WB5BYQMF.js → chunk-SLMUGTK3.js} +4 -4
  240. package/dist/cli-bundle/chunks/{chunk-SUREE24M.js → chunk-TP5Q5ZD3.js} +12 -24
  241. package/dist/cli-bundle/chunks/chunk-TP5Q5ZD3.js.map +1 -0
  242. package/dist/cli-bundle/chunks/{chunk-UACWNBL2.js → chunk-UYUYDGIB.js} +7 -9
  243. package/dist/cli-bundle/chunks/{chunk-UACWNBL2.js.map → chunk-UYUYDGIB.js.map} +1 -1
  244. package/dist/cli-bundle/chunks/{chunk-V4UYNSEM.js → chunk-UZIWVBE6.js} +6 -8
  245. package/dist/cli-bundle/chunks/{chunk-V4UYNSEM.js.map → chunk-UZIWVBE6.js.map} +1 -1
  246. package/dist/cli-bundle/chunks/{chunk-EWRSXOIZ.js → chunk-V3NOKJF2.js} +11 -13
  247. package/dist/cli-bundle/chunks/{chunk-EWRSXOIZ.js.map → chunk-V3NOKJF2.js.map} +1 -1
  248. package/dist/cli-bundle/chunks/{chunk-XXKV4UWE.js → chunk-VARHOHYV.js} +571 -507
  249. package/dist/cli-bundle/chunks/chunk-VARHOHYV.js.map +7 -0
  250. package/dist/cli-bundle/chunks/{chunk-AEACLRVH.js → chunk-VICZWYGZ.js} +18 -11
  251. package/dist/cli-bundle/chunks/chunk-VICZWYGZ.js.map +7 -0
  252. package/dist/cli-bundle/chunks/chunk-VY3VQ22F.js +84 -0
  253. package/dist/cli-bundle/chunks/chunk-VY3VQ22F.js.map +1 -0
  254. package/dist/cli-bundle/chunks/chunk-VZDBVEZR.js +382 -0
  255. package/dist/cli-bundle/chunks/chunk-VZDBVEZR.js.map +7 -0
  256. package/dist/cli-bundle/chunks/{chunk-GDUMGZK3.js → chunk-W4ULYO7Z.js} +11 -13
  257. package/dist/cli-bundle/chunks/{chunk-GDUMGZK3.js.map → chunk-W4ULYO7Z.js.map} +1 -1
  258. package/dist/cli-bundle/chunks/{chunk-I6QMJ2XT.js → chunk-WYDHYJPO.js} +2 -2
  259. package/dist/cli-bundle/chunks/{chunk-ALKFCIIB.js → chunk-YITK2PJ6.js} +9 -11
  260. package/dist/cli-bundle/chunks/{chunk-ALKFCIIB.js.map → chunk-YITK2PJ6.js.map} +1 -1
  261. package/dist/cli-bundle/chunks/chunk-YJIEJRZB.js +84 -0
  262. package/dist/cli-bundle/chunks/chunk-YJIEJRZB.js.map +1 -0
  263. package/dist/cli-bundle/chunks/{chunk-LNEDHJNQ.js → chunk-ZETXE4SE.js} +66 -329
  264. package/dist/cli-bundle/chunks/chunk-ZETXE4SE.js.map +1 -0
  265. package/dist/cli-bundle/chunks/{chunk-KIEAK7YE.js → chunk-ZRP4VG5U.js} +2 -2
  266. package/dist/cli-bundle/chunks/{claim-FZZZCAY6.js → claim-EMQLYPRW.js} +10 -12
  267. package/dist/cli-bundle/chunks/{claim-FZZZCAY6.js.map → claim-EMQLYPRW.js.map} +1 -1
  268. package/dist/cli-bundle/chunks/{claim-XK5QBZE3.js → claim-T3GCKV7C.js} +8 -10
  269. package/dist/cli-bundle/chunks/{claim-XK5QBZE3.js.map → claim-T3GCKV7C.js.map} +1 -1
  270. package/dist/cli-bundle/chunks/close-E6ZZGCJY.js +14 -0
  271. package/dist/cli-bundle/chunks/{close-QHMVWM7M.js → close-TQYAAFJP.js} +7 -8
  272. package/dist/cli-bundle/chunks/{close-many-OIXJE2JZ.js → close-many-BG5QQIDQ.js} +16 -18
  273. package/dist/cli-bundle/chunks/{close-many-OIXJE2JZ.js.map → close-many-BG5QQIDQ.js.map} +1 -1
  274. package/dist/cli-bundle/chunks/{close-many-SUU5BS2C.js → close-many-LDRVEQY2.js} +18 -20
  275. package/dist/cli-bundle/chunks/{close-many-SUU5BS2C.js.map → close-many-LDRVEQY2.js.map} +1 -1
  276. package/dist/cli-bundle/chunks/{comments-5YM62D75.js → comments-QCKR2YY2.js} +11 -13
  277. package/dist/cli-bundle/chunks/{comments-5YM62D75.js.map → comments-QCKR2YY2.js.map} +1 -1
  278. package/dist/cli-bundle/chunks/{comments-RH3IBIRH.js → comments-YUXJRZPQ.js} +9 -11
  279. package/dist/cli-bundle/chunks/{comments-RH3IBIRH.js.map → comments-YUXJRZPQ.js.map} +1 -1
  280. package/dist/cli-bundle/chunks/{config-NCNNWF6R.js → config-DMSU64QO.js} +18 -387
  281. package/dist/cli-bundle/chunks/config-DMSU64QO.js.map +7 -0
  282. package/dist/cli-bundle/chunks/{config-SW3U7XP2.js → config-QH2DICD6.js} +18 -380
  283. package/dist/cli-bundle/chunks/config-QH2DICD6.js.map +1 -0
  284. package/dist/cli-bundle/chunks/context-B6275WPX.js +46 -0
  285. package/dist/cli-bundle/chunks/context-OCZ3FJ4Z.js +42 -0
  286. package/dist/cli-bundle/chunks/{contracts-SY6PDFIK.js → contracts-HN7ABKLP.js} +72 -15
  287. package/dist/cli-bundle/chunks/contracts-HN7ABKLP.js.map +7 -0
  288. package/dist/cli-bundle/chunks/{contracts-JXFGBOYT.js → contracts-W4FZVVD6.js} +72 -15
  289. package/dist/cli-bundle/chunks/contracts-W4FZVVD6.js.map +1 -0
  290. package/dist/cli-bundle/chunks/{copy-N3GE6FYS.js → copy-BTJOSKKT.js} +7 -11
  291. package/dist/cli-bundle/chunks/{copy-N3GE6FYS.js.map → copy-BTJOSKKT.js.map} +1 -1
  292. package/dist/cli-bundle/chunks/{copy-IEDBJOOX.js → copy-DEM4DATS.js} +9 -13
  293. package/dist/cli-bundle/chunks/{copy-IEDBJOOX.js.map → copy-DEM4DATS.js.map} +1 -1
  294. package/dist/cli-bundle/chunks/create-OH3BDGBB.js +28 -0
  295. package/dist/cli-bundle/chunks/{create-O4VONGPG.js → create-RLRJMRTM.js} +12 -14
  296. package/dist/cli-bundle/chunks/{delete-LPEIF7RU.js → delete-BHK7VB2Z.js} +5 -7
  297. package/dist/cli-bundle/chunks/{delete-LPEIF7RU.js.map → delete-BHK7VB2Z.js.map} +1 -1
  298. package/dist/cli-bundle/chunks/{delete-724EQ6OS.js → delete-LSVHAB4Y.js} +7 -9
  299. package/dist/cli-bundle/chunks/{delete-724EQ6OS.js.map → delete-LSVHAB4Y.js.map} +1 -1
  300. package/dist/cli-bundle/chunks/{deps-RSBU4SIU.js → deps-4UDFJRUA.js} +8 -11
  301. package/dist/cli-bundle/chunks/{deps-RSBU4SIU.js.map → deps-4UDFJRUA.js.map} +1 -1
  302. package/dist/cli-bundle/chunks/{deps-T3Y6Y7RT.js → deps-XHYXWEPT.js} +6 -9
  303. package/dist/cli-bundle/chunks/{deps-T3Y6Y7RT.js.map → deps-XHYXWEPT.js.map} +1 -1
  304. package/dist/cli-bundle/chunks/{docs-IFS7HZPP.js → docs-26S44RXU.js} +8 -9
  305. package/dist/cli-bundle/chunks/{docs-IFS7HZPP.js.map → docs-26S44RXU.js.map} +1 -1
  306. package/dist/cli-bundle/chunks/{docs-75ZLCO3G.js → docs-GYZNVS26.js} +10 -11
  307. package/dist/cli-bundle/chunks/{docs-75ZLCO3G.js.map → docs-GYZNVS26.js.map} +1 -1
  308. package/dist/cli-bundle/chunks/{eval-L2KD7W3M.js → eval-PGRVIJQU.js} +12 -14
  309. package/dist/cli-bundle/chunks/{eval-L2KD7W3M.js.map → eval-PGRVIJQU.js.map} +1 -1
  310. package/dist/cli-bundle/chunks/{eval-QGR7JCQO.js → eval-UYF3ZPVO.js} +10 -12
  311. package/dist/cli-bundle/chunks/{eval-QGR7JCQO.js.map → eval-UYF3ZPVO.js.map} +1 -1
  312. package/dist/cli-bundle/chunks/{extension-YQF4CPIR.js → extension-CPSLJQVE.js} +12 -7
  313. package/dist/cli-bundle/chunks/{extension-3JYWJ5K2.js → extension-CXJ6RELI.js} +12 -7
  314. package/dist/cli-bundle/chunks/{files-EPEJMJHQ.js → files-MBNICQFM.js} +9 -11
  315. package/dist/cli-bundle/chunks/{files-EPEJMJHQ.js.map → files-MBNICQFM.js.map} +1 -1
  316. package/dist/cli-bundle/chunks/{files-5BQWDRDT.js → files-NQHEXUZD.js} +11 -13
  317. package/dist/cli-bundle/chunks/{files-5BQWDRDT.js.map → files-NQHEXUZD.js.map} +1 -1
  318. package/dist/cli-bundle/chunks/{focus-RWGKD76E.js → focus-DWYIG7GU.js} +10 -14
  319. package/dist/cli-bundle/chunks/{focus-RWGKD76E.js.map → focus-DWYIG7GU.js.map} +1 -1
  320. package/dist/cli-bundle/chunks/{focus-DQVJAPOE.js → focus-XZW5423D.js} +8 -12
  321. package/dist/cli-bundle/chunks/{focus-DQVJAPOE.js.map → focus-XZW5423D.js.map} +1 -1
  322. package/dist/cli-bundle/chunks/{gc-BEJMQT64.js → gc-7GQYOS2G.js} +3 -3
  323. package/dist/cli-bundle/chunks/{gc-JEFQDJPA.js → gc-LPVMKJQJ.js} +3 -3
  324. package/dist/cli-bundle/chunks/{get-LQG6PEVG.js → get-A7MAOHCU.js} +10 -13
  325. package/dist/cli-bundle/chunks/{get-LQG6PEVG.js.map → get-A7MAOHCU.js.map} +1 -1
  326. package/dist/cli-bundle/chunks/{get-WVN75H42.js → get-DSDEKJ3L.js} +12 -15
  327. package/dist/cli-bundle/chunks/{get-WVN75H42.js.map → get-DSDEKJ3L.js.map} +1 -1
  328. package/dist/cli-bundle/chunks/{health-JJJOY7DJ.js → health-3IPFLKXB.js} +17 -17
  329. package/dist/cli-bundle/chunks/{health-P67NZ6TT.js → health-GZXGBZ36.js} +17 -17
  330. package/dist/cli-bundle/chunks/{history-RUKPKNY7.js → history-NERDJNUB.js} +8 -10
  331. package/dist/cli-bundle/chunks/history-WSZHY3PN.js +18 -0
  332. package/dist/cli-bundle/chunks/{history-compact-NQ7VPRVT.js → history-compact-2WRZ2WK4.js} +11 -14
  333. package/dist/cli-bundle/chunks/{history-compact-NQ7VPRVT.js.map → history-compact-2WRZ2WK4.js.map} +1 -1
  334. package/dist/cli-bundle/chunks/{history-compact-ZAOWR7GD.js → history-compact-HR7BB4LR.js} +13 -16
  335. package/dist/cli-bundle/chunks/{history-compact-ZAOWR7GD.js.map → history-compact-HR7BB4LR.js.map} +1 -1
  336. package/dist/cli-bundle/chunks/history-redact-MP6CH7U5.js +19 -0
  337. package/dist/cli-bundle/chunks/{history-redact-YY4XYVEP.js → history-redact-O3NBCNWC.js} +9 -11
  338. package/dist/cli-bundle/chunks/{history-repair-EHL4ODQY.js → history-repair-LCMOS45X.js} +11 -14
  339. package/dist/cli-bundle/chunks/{history-repair-EHL4ODQY.js.map → history-repair-LCMOS45X.js.map} +1 -1
  340. package/dist/cli-bundle/chunks/{history-repair-YSQH6SY6.js → history-repair-XA3LC4GA.js} +13 -16
  341. package/dist/cli-bundle/chunks/{history-repair-YSQH6SY6.js.map → history-repair-XA3LC4GA.js.map} +1 -1
  342. package/dist/cli-bundle/chunks/{init-HBFGYS66.js → init-64XDLQJB.js} +12 -11
  343. package/dist/cli-bundle/chunks/init-PAX32BJA.js +22 -0
  344. package/dist/cli-bundle/chunks/{learnings-KFQO7GEZ.js → learnings-JR6MA5TI.js} +9 -11
  345. package/dist/cli-bundle/chunks/{learnings-KFQO7GEZ.js.map → learnings-JR6MA5TI.js.map} +1 -1
  346. package/dist/cli-bundle/chunks/{learnings-J555ZFPD.js → learnings-LPKCSJX7.js} +11 -13
  347. package/dist/cli-bundle/chunks/{learnings-J555ZFPD.js.map → learnings-LPKCSJX7.js.map} +1 -1
  348. package/dist/cli-bundle/chunks/{list-C7R33MD5.js → list-DNBJVO3E.js} +10 -10
  349. package/dist/cli-bundle/chunks/{list-DSN6UNFB.js → list-G5Y65VF6.js} +10 -10
  350. package/dist/cli-bundle/chunks/next-BCERKDUR.js +277 -0
  351. package/dist/cli-bundle/chunks/next-BCERKDUR.js.map +7 -0
  352. package/dist/cli-bundle/chunks/next-FYTQF6HG.js +274 -0
  353. package/dist/cli-bundle/chunks/next-FYTQF6HG.js.map +1 -0
  354. package/dist/cli-bundle/chunks/{notes-V4VNIQL4.js → notes-2BMU3VVQ.js} +9 -11
  355. package/dist/cli-bundle/chunks/{notes-V4VNIQL4.js.map → notes-2BMU3VVQ.js.map} +1 -1
  356. package/dist/cli-bundle/chunks/{notes-VYJFN2A3.js → notes-6KTGO2OJ.js} +11 -13
  357. package/dist/cli-bundle/chunks/{notes-VYJFN2A3.js.map → notes-6KTGO2OJ.js.map} +1 -1
  358. package/dist/cli-bundle/chunks/{plan-RBHQ5PO7.js → plan-4WXEQCTN.js} +15 -18
  359. package/dist/cli-bundle/chunks/{plan-RBHQ5PO7.js.map → plan-4WXEQCTN.js.map} +1 -1
  360. package/dist/cli-bundle/chunks/{plan-DHRSVSHR.js → plan-RKZHQVXR.js} +17 -20
  361. package/dist/cli-bundle/chunks/{plan-DHRSVSHR.js.map → plan-RKZHQVXR.js.map} +1 -1
  362. package/dist/cli-bundle/chunks/profile-4OMM32CD.js +1235 -0
  363. package/dist/cli-bundle/chunks/profile-4OMM32CD.js.map +7 -0
  364. package/dist/cli-bundle/chunks/profile-QLER5ENE.js +1197 -0
  365. package/dist/cli-bundle/chunks/profile-QLER5ENE.js.map +1 -0
  366. package/dist/cli-bundle/chunks/{register-list-query-OM3E2KMY.js → register-list-query-7LV46VAU.js} +45 -21
  367. package/dist/cli-bundle/chunks/register-list-query-7LV46VAU.js.map +1 -0
  368. package/dist/cli-bundle/chunks/{register-list-query-CCMHGZTF.js → register-list-query-SNG5PGA4.js} +44 -20
  369. package/dist/cli-bundle/chunks/register-list-query-SNG5PGA4.js.map +7 -0
  370. package/dist/cli-bundle/chunks/{register-mutation-N3CDEGZU.js → register-mutation-ENNDUAZG.js} +106 -40
  371. package/dist/cli-bundle/chunks/register-mutation-ENNDUAZG.js.map +1 -0
  372. package/dist/cli-bundle/chunks/{register-mutation-UXTTWL6N.js → register-mutation-KK7PHYYU.js} +105 -39
  373. package/dist/cli-bundle/chunks/register-mutation-KK7PHYYU.js.map +7 -0
  374. package/dist/cli-bundle/chunks/{register-operations-UDIFMQKD.js → register-operations-C6OWLDSH.js} +32 -34
  375. package/dist/cli-bundle/chunks/{register-operations-UDIFMQKD.js.map → register-operations-C6OWLDSH.js.map} +1 -1
  376. package/dist/cli-bundle/chunks/{register-operations-R2FLOCRI.js → register-operations-HZ6XERQG.js} +30 -32
  377. package/dist/cli-bundle/chunks/{register-operations-R2FLOCRI.js.map → register-operations-HZ6XERQG.js.map} +1 -1
  378. package/dist/cli-bundle/chunks/{register-setup-G5LTSFYK.js → register-setup-P67EMBDJ.js} +68 -25
  379. package/dist/cli-bundle/chunks/register-setup-P67EMBDJ.js.map +1 -0
  380. package/dist/cli-bundle/chunks/{register-setup-TWHKICM2.js → register-setup-ZKJ53RS7.js} +67 -24
  381. package/dist/cli-bundle/chunks/register-setup-ZKJ53RS7.js.map +7 -0
  382. package/dist/cli-bundle/chunks/{restore-LL2WLEDG.js → restore-4MHZFJ2E.js} +9 -11
  383. package/dist/cli-bundle/chunks/restore-YALDGTQR.js +17 -0
  384. package/dist/cli-bundle/chunks/{scheduling-shortcuts-M4H2ZI64.js → scheduling-shortcuts-LB6DOLRL.js} +14 -16
  385. package/dist/cli-bundle/chunks/{scheduling-shortcuts-M4H2ZI64.js.map → scheduling-shortcuts-LB6DOLRL.js.map} +1 -1
  386. package/dist/cli-bundle/chunks/{scheduling-shortcuts-255GI3BU.js → scheduling-shortcuts-UTOYKLXQ.js} +12 -14
  387. package/dist/cli-bundle/chunks/{scheduling-shortcuts-255GI3BU.js.map → scheduling-shortcuts-UTOYKLXQ.js.map} +1 -1
  388. package/dist/cli-bundle/chunks/schema-73HR2OJW.js +75 -0
  389. package/dist/cli-bundle/chunks/schema-U6LJKSIR.js +71 -0
  390. package/dist/cli-bundle/chunks/{search-2EI6EAXH.js → search-AXPXKZER.js} +10 -12
  391. package/dist/cli-bundle/chunks/{search-QBFBLQRO.js → search-KILGT37L.js} +10 -12
  392. package/dist/cli-bundle/chunks/{stats-TKC6CAKB.js → stats-PSYVVTNZ.js} +21 -13
  393. package/dist/cli-bundle/chunks/stats-PSYVVTNZ.js.map +1 -0
  394. package/dist/cli-bundle/chunks/{stats-TCW2SZQG.js → stats-W5KNVJWQ.js} +20 -12
  395. package/dist/cli-bundle/chunks/stats-W5KNVJWQ.js.map +7 -0
  396. package/dist/cli-bundle/chunks/{telemetry-BT2VSWU2.js → telemetry-BZUF6H7G.js} +4 -4
  397. package/dist/cli-bundle/chunks/{telemetry-LQ6FRTUT.js → telemetry-GAHHQTOS.js} +4 -4
  398. package/dist/cli-bundle/chunks/test-ACD52Z3S.js +35 -0
  399. package/dist/cli-bundle/chunks/test-ACD52Z3S.js.map +7 -0
  400. package/dist/cli-bundle/chunks/{test-NV2DRPUS.js → test-PWDIZ255.js} +15 -16
  401. package/dist/cli-bundle/chunks/test-PWDIZ255.js.map +1 -0
  402. package/dist/cli-bundle/chunks/{test-all-DZ76VTPQ.js → test-all-L2MDDUCA.js} +20 -22
  403. package/dist/cli-bundle/chunks/{test-all-DZ76VTPQ.js.map → test-all-L2MDDUCA.js.map} +1 -1
  404. package/dist/cli-bundle/chunks/{test-all-REW67LXT.js → test-all-RBZ6DLU2.js} +18 -20
  405. package/dist/cli-bundle/chunks/{test-all-REW67LXT.js.map → test-all-RBZ6DLU2.js.map} +1 -1
  406. package/dist/cli-bundle/chunks/{test-runs-PX73DMMI.js → test-runs-PLRAZEFW.js} +5 -6
  407. package/dist/cli-bundle/chunks/test-runs-PLRAZEFW.js.map +7 -0
  408. package/dist/cli-bundle/chunks/{test-runs-FQ5WNQLP.js → test-runs-UXIXPDKU.js} +6 -7
  409. package/dist/cli-bundle/chunks/test-runs-UXIXPDKU.js.map +1 -0
  410. package/dist/cli-bundle/chunks/update-AMRSOIWP.js +24 -0
  411. package/dist/cli-bundle/chunks/update-AMRSOIWP.js.map +7 -0
  412. package/dist/cli-bundle/chunks/update-KFX2SIAC.js +28 -0
  413. package/dist/cli-bundle/chunks/update-KFX2SIAC.js.map +1 -0
  414. package/dist/cli-bundle/chunks/{update-many-Q5ZEI64S.js → update-many-RNSBX2TA.js} +35 -36
  415. package/dist/cli-bundle/chunks/{update-many-Q5ZEI64S.js.map → update-many-RNSBX2TA.js.map} +1 -1
  416. package/dist/cli-bundle/chunks/{update-many-2ILP6E4Y.js → update-many-Z5GJS5LC.js} +33 -34
  417. package/dist/cli-bundle/chunks/{update-many-2ILP6E4Y.js.map → update-many-Z5GJS5LC.js.map} +1 -1
  418. package/dist/cli-bundle/chunks/{upgrade-FOZKQTQF.js → upgrade-BRL6KCOJ.js} +13 -8
  419. package/dist/cli-bundle/chunks/{upgrade-FOZKQTQF.js.map → upgrade-BRL6KCOJ.js.map} +1 -1
  420. package/dist/cli-bundle/chunks/{upgrade-DHL74PQH.js → upgrade-HAK6JG2O.js} +11 -6
  421. package/dist/cli-bundle/chunks/{upgrade-DHL74PQH.js.map → upgrade-HAK6JG2O.js.map} +1 -1
  422. package/dist/cli-bundle/chunks/{validate-HYZNIB6W.js → validate-MTUVL5VC.js} +38 -28
  423. package/dist/cli-bundle/chunks/validate-MTUVL5VC.js.map +7 -0
  424. package/dist/cli-bundle/chunks/{validate-54SYJ7QW.js → validate-X5W76YJL.js} +39 -29
  425. package/dist/cli-bundle/chunks/validate-X5W76YJL.js.map +1 -0
  426. package/dist/cli-bundle/main.js +95 -724
  427. package/dist/cli-bundle/main.js.map +4 -4
  428. package/dist/core/config/positional-value.d.ts +2 -0
  429. package/dist/core/config/positional-value.js +2 -2
  430. package/dist/core/config/positional-value.js.map +1 -1
  431. package/dist/core/extensions/activation-summary-markdown.d.ts +71 -0
  432. package/dist/core/extensions/activation-summary-markdown.js +151 -0
  433. package/dist/core/extensions/activation-summary-markdown.js.map +1 -0
  434. package/dist/core/extensions/activation-summary.d.ts +2 -0
  435. package/dist/core/extensions/activation-summary.js +3 -2
  436. package/dist/core/extensions/activation-summary.js.map +1 -1
  437. package/dist/core/extensions/capability-usage.d.ts +1 -1
  438. package/dist/core/extensions/capability-usage.js +4 -3
  439. package/dist/core/extensions/capability-usage.js.map +1 -1
  440. package/dist/core/extensions/extension-policy.d.ts +18 -3
  441. package/dist/core/extensions/extension-policy.js +116 -106
  442. package/dist/core/extensions/extension-policy.js.map +1 -1
  443. package/dist/core/extensions/extension-registries.js +3 -2
  444. package/dist/core/extensions/extension-registries.js.map +1 -1
  445. package/dist/core/extensions/extension-types.d.ts +21 -1
  446. package/dist/core/extensions/extension-types.js +3 -2
  447. package/dist/core/extensions/extension-types.js.map +1 -1
  448. package/dist/core/extensions/loader.js +439 -232
  449. package/dist/core/extensions/loader.js.map +1 -1
  450. package/dist/core/fs/fs-utils.js +27 -2
  451. package/dist/core/fs/fs-utils.js.map +1 -1
  452. package/dist/core/item/actionability.d.ts +57 -0
  453. package/dist/core/item/actionability.js +178 -0
  454. package/dist/core/item/actionability.js.map +1 -0
  455. package/dist/core/item/item-format.js +523 -410
  456. package/dist/core/item/item-format.js.map +1 -1
  457. package/dist/core/item/type-registry.js +18 -45
  458. package/dist/core/item/type-registry.js.map +1 -1
  459. package/dist/core/profile/profile-describe.d.ts +64 -0
  460. package/dist/core/profile/profile-describe.js +83 -0
  461. package/dist/core/profile/profile-describe.js.map +1 -0
  462. package/dist/core/profile/profile-lint.d.ts +53 -0
  463. package/dist/core/profile/profile-lint.js +422 -0
  464. package/dist/core/profile/profile-lint.js.map +1 -0
  465. package/dist/core/profile/profile-plan.d.ts +145 -0
  466. package/dist/core/profile/profile-plan.js +0 -0
  467. package/dist/core/profile/profile-plan.js.map +1 -0
  468. package/dist/core/profile/profile-presets.d.ts +218 -0
  469. package/dist/core/profile/profile-presets.js +325 -0
  470. package/dist/core/profile/profile-presets.js.map +1 -0
  471. package/dist/core/schema/fields-file.js +25 -25
  472. package/dist/core/schema/fields-file.js.map +1 -1
  473. package/dist/core/schema/item-types-file.js +3 -3
  474. package/dist/core/schema/item-types-file.js.map +1 -1
  475. package/dist/core/schema/runtime-schema.js +4 -4
  476. package/dist/core/schema/runtime-schema.js.map +1 -1
  477. package/dist/core/schema/status-defs-file.js +3 -3
  478. package/dist/core/schema/status-defs-file.js.map +1 -1
  479. package/dist/core/shared/serialization.js +83 -62
  480. package/dist/core/shared/serialization.js.map +1 -1
  481. package/dist/core/store/item-store.d.ts +1 -0
  482. package/dist/core/store/item-store.js +16 -8
  483. package/dist/core/store/item-store.js.map +1 -1
  484. package/dist/core/store/paths.js +4 -32
  485. package/dist/core/store/paths.js.map +1 -1
  486. package/dist/core/store/settings.js +14 -14
  487. package/dist/core/store/settings.js.map +1 -1
  488. package/dist/core/telemetry/observability.js +50 -54
  489. package/dist/core/telemetry/observability.js.map +1 -1
  490. package/dist/core/telemetry/runtime.js +11 -2
  491. package/dist/core/telemetry/runtime.js.map +1 -1
  492. package/dist/core/test/background-runs.js +3 -2
  493. package/dist/core/test/background-runs.js.map +1 -1
  494. package/dist/core/validate/linked-artifact-reference.d.ts +24 -0
  495. package/dist/core/validate/linked-artifact-reference.js +41 -0
  496. package/dist/core/validate/linked-artifact-reference.js.map +1 -0
  497. package/dist/mcp/server.js +540 -420
  498. package/dist/mcp/server.js.map +1 -1
  499. package/dist/mcp/tool-definitions.js +33 -2
  500. package/dist/mcp/tool-definitions.js.map +1 -1
  501. package/dist/sdk/cli-contracts/commander-types.d.ts +1 -0
  502. package/dist/sdk/cli-contracts/commander-types.js +15 -2
  503. package/dist/sdk/cli-contracts/commander-types.js.map +1 -1
  504. package/dist/sdk/cli-contracts/enum-contracts.d.ts +3 -3
  505. package/dist/sdk/cli-contracts/enum-contracts.js +6 -2
  506. package/dist/sdk/cli-contracts/enum-contracts.js.map +1 -1
  507. package/dist/sdk/cli-contracts/flag-contracts.d.ts +149 -0
  508. package/dist/sdk/cli-contracts/flag-contracts.js +1514 -0
  509. package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -0
  510. package/dist/sdk/cli-contracts/string-lists.d.ts +14 -0
  511. package/dist/sdk/cli-contracts/string-lists.js +20 -0
  512. package/dist/sdk/cli-contracts/string-lists.js.map +1 -0
  513. package/dist/sdk/cli-contracts/tool-option-contracts.d.ts +1 -1
  514. package/dist/sdk/cli-contracts/tool-option-contracts.js +51 -109
  515. package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
  516. package/dist/sdk/cli-contracts/tool-parameter-tables.d.ts +17 -0
  517. package/dist/sdk/cli-contracts/tool-parameter-tables.js +54 -5
  518. package/dist/sdk/cli-contracts/tool-parameter-tables.js.map +1 -1
  519. package/dist/sdk/cli-contracts/tool-schema.d.ts +74 -0
  520. package/dist/sdk/cli-contracts/tool-schema.js +871 -0
  521. package/dist/sdk/cli-contracts/tool-schema.js.map +1 -0
  522. package/dist/sdk/cli-contracts.d.ts +13 -193
  523. package/dist/sdk/cli-contracts.js +5 -2277
  524. package/dist/sdk/cli-contracts.js.map +1 -1
  525. package/dist/sdk/compose.d.ts +11 -5
  526. package/dist/sdk/compose.js +240 -124
  527. package/dist/sdk/compose.js.map +1 -1
  528. package/dist/sdk/define.d.ts +14 -0
  529. package/dist/sdk/define.js +17 -2
  530. package/dist/sdk/define.js.map +1 -1
  531. package/dist/sdk/index.d.ts +14 -3
  532. package/dist/sdk/index.js +14 -3
  533. package/dist/sdk/index.js.map +1 -1
  534. package/dist/sdk/testing.d.ts +82 -2
  535. package/dist/sdk/testing.js +74 -3
  536. package/dist/sdk/testing.js.map +1 -1
  537. package/docs/AGENT_GUIDE.md +2 -0
  538. package/docs/CLAUDE_CODE_PLUGIN.md +2 -2
  539. package/docs/COMMANDS.md +37 -0
  540. package/docs/EXTENSIONS.md +12 -13
  541. package/docs/RELEASING.md +8 -4
  542. package/docs/SDK.md +184 -17
  543. package/docs/TESTING.md +12 -0
  544. package/docs/examples/policy-restricted-extension/README.md +6 -0
  545. package/docs/examples/policy-restricted-extension/index.ts +40 -0
  546. package/docs/examples/policy-restricted-extension/manifest.json +2 -2
  547. package/docs/examples/starter-extension/README.md +14 -2
  548. package/docs/examples/starter-extension/{index.js → index.ts} +51 -6
  549. package/docs/examples/starter-extension/manifest.json +2 -2
  550. package/package.json +20 -7
  551. package/packages/pm-beads/extensions/beads/index.ts +3 -3
  552. package/packages/pm-beads/extensions/beads/manifest.json +2 -2
  553. package/packages/pm-beads/extensions/beads/runtime-loader.ts +19 -7
  554. package/packages/pm-beads/extensions/beads/runtime.ts +155 -37
  555. package/packages/pm-calendar/extensions/calendar/index.ts +3 -3
  556. package/packages/pm-calendar/extensions/calendar/manifest.json +2 -2
  557. package/packages/pm-calendar/extensions/calendar/runtime.ts +2 -2
  558. package/packages/pm-command-kit/extensions/command-kit/index.ts +1 -1
  559. package/packages/pm-command-kit/extensions/command-kit/manifest.json +2 -2
  560. package/packages/pm-governance-audit/extensions/governance-audit/index.ts +2 -2
  561. package/packages/pm-governance-audit/extensions/governance-audit/manifest.json +2 -2
  562. package/packages/pm-governance-audit/extensions/governance-audit/runtime.ts +1 -1
  563. package/packages/pm-guide-shell/extensions/guide-shell/index.ts +2 -2
  564. package/packages/pm-guide-shell/extensions/guide-shell/manifest.json +2 -2
  565. package/packages/pm-guide-shell/extensions/guide-shell/runtime.ts +1 -1
  566. package/packages/pm-kanban/README.md +97 -0
  567. package/packages/pm-kanban/extensions/kanban/index.ts +191 -0
  568. package/packages/pm-kanban/extensions/kanban/manifest.json +19 -0
  569. package/packages/pm-kanban/package.json +57 -0
  570. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/index.ts +1 -1
  571. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/manifest.json +2 -2
  572. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/index.ts +2 -2
  573. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/manifest.json +2 -2
  574. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/runtime.ts +1 -1
  575. package/packages/pm-search-advanced/extensions/search-advanced/index.ts +2 -2
  576. package/packages/pm-search-advanced/extensions/search-advanced/manifest.json +2 -2
  577. package/packages/pm-search-advanced/extensions/search-advanced/runtime.ts +1 -1
  578. package/packages/pm-templates/extensions/templates/index.ts +2 -2
  579. package/packages/pm-templates/extensions/templates/manifest.json +2 -2
  580. package/packages/pm-templates/extensions/templates/runtime.ts +1 -1
  581. package/packages/pm-todos/extensions/todos/index.ts +3 -3
  582. package/packages/pm-todos/extensions/todos/manifest.json +2 -2
  583. package/packages/pm-todos/extensions/todos/runtime-loader.ts +19 -7
  584. package/packages/pm-todos/extensions/todos/runtime.ts +177 -43
  585. package/plugins/pm-claude/scripts/pm-mcp-server.mjs +2 -2
  586. package/plugins/pm-codex/scripts/pm-mcp-server.mjs +2 -2
  587. package/scripts/bundle-cli.mjs +1 -1
  588. package/dist/cli-bundle/chunks/activity-54TXGJ2T.js +0 -18
  589. package/dist/cli-bundle/chunks/aggregate-63NWNIBR.js.map +0 -1
  590. package/dist/cli-bundle/chunks/aggregate-YHCYX2EV.js.map +0 -7
  591. package/dist/cli-bundle/chunks/chunk-6EL7SW5C.js.map +0 -7
  592. package/dist/cli-bundle/chunks/chunk-6W3Y65PL.js.map +0 -7
  593. package/dist/cli-bundle/chunks/chunk-AEACLRVH.js.map +0 -7
  594. package/dist/cli-bundle/chunks/chunk-B74BP6IS.js +0 -78
  595. package/dist/cli-bundle/chunks/chunk-B74BP6IS.js.map +0 -7
  596. package/dist/cli-bundle/chunks/chunk-BFFO3AIB.js.map +0 -1
  597. package/dist/cli-bundle/chunks/chunk-C4C3EJCJ.js.map +0 -7
  598. package/dist/cli-bundle/chunks/chunk-EYPINTFR.js.map +0 -7
  599. package/dist/cli-bundle/chunks/chunk-FBLT6WGK.js +0 -75
  600. package/dist/cli-bundle/chunks/chunk-FBLT6WGK.js.map +0 -1
  601. package/dist/cli-bundle/chunks/chunk-GQYJEEFX.js.map +0 -1
  602. package/dist/cli-bundle/chunks/chunk-HBAEFWX3.js.map +0 -7
  603. package/dist/cli-bundle/chunks/chunk-HC2S36NB.js.map +0 -1
  604. package/dist/cli-bundle/chunks/chunk-IAP5KYBQ.js.map +0 -1
  605. package/dist/cli-bundle/chunks/chunk-INPHFO33.js +0 -764
  606. package/dist/cli-bundle/chunks/chunk-INPHFO33.js.map +0 -7
  607. package/dist/cli-bundle/chunks/chunk-IOT6WRL5.js +0 -86
  608. package/dist/cli-bundle/chunks/chunk-IOT6WRL5.js.map +0 -7
  609. package/dist/cli-bundle/chunks/chunk-ISEKN64V.js +0 -35
  610. package/dist/cli-bundle/chunks/chunk-ISEKN64V.js.map +0 -7
  611. package/dist/cli-bundle/chunks/chunk-J3NMWFIN.js +0 -115
  612. package/dist/cli-bundle/chunks/chunk-J3NMWFIN.js.map +0 -1
  613. package/dist/cli-bundle/chunks/chunk-J7I4C5ZB.js.map +0 -7
  614. package/dist/cli-bundle/chunks/chunk-JKL6HRMV.js.map +0 -7
  615. package/dist/cli-bundle/chunks/chunk-KJZOSF7J.js.map +0 -1
  616. package/dist/cli-bundle/chunks/chunk-L7UXKP2I.js.map +0 -1
  617. package/dist/cli-bundle/chunks/chunk-LNEDHJNQ.js.map +0 -1
  618. package/dist/cli-bundle/chunks/chunk-M6TUBOGW.js.map +0 -1
  619. package/dist/cli-bundle/chunks/chunk-MEXZ5XUM.js.map +0 -7
  620. package/dist/cli-bundle/chunks/chunk-N5B6WZC5.js.map +0 -1
  621. package/dist/cli-bundle/chunks/chunk-NJ73ALW2.js +0 -761
  622. package/dist/cli-bundle/chunks/chunk-NJ73ALW2.js.map +0 -1
  623. package/dist/cli-bundle/chunks/chunk-NVXGVEFD.js +0 -83
  624. package/dist/cli-bundle/chunks/chunk-NVXGVEFD.js.map +0 -1
  625. package/dist/cli-bundle/chunks/chunk-OF7V47P3.js.map +0 -1
  626. package/dist/cli-bundle/chunks/chunk-OHDQNKJB.js.map +0 -7
  627. package/dist/cli-bundle/chunks/chunk-PEL2NLQE.js +0 -118
  628. package/dist/cli-bundle/chunks/chunk-PEL2NLQE.js.map +0 -7
  629. package/dist/cli-bundle/chunks/chunk-PRVTGX64.js.map +0 -7
  630. package/dist/cli-bundle/chunks/chunk-RAWA3Y7O.js.map +0 -1
  631. package/dist/cli-bundle/chunks/chunk-SMXSDY7J.js.map +0 -7
  632. package/dist/cli-bundle/chunks/chunk-SUREE24M.js.map +0 -1
  633. package/dist/cli-bundle/chunks/chunk-TKPP4GOO.js +0 -654
  634. package/dist/cli-bundle/chunks/chunk-TKPP4GOO.js.map +0 -1
  635. package/dist/cli-bundle/chunks/chunk-VSAABFGQ.js.map +0 -1
  636. package/dist/cli-bundle/chunks/chunk-W2VMLL5S.js +0 -32
  637. package/dist/cli-bundle/chunks/chunk-W2VMLL5S.js.map +0 -1
  638. package/dist/cli-bundle/chunks/chunk-XVYKWZNL.js.map +0 -7
  639. package/dist/cli-bundle/chunks/chunk-XXKV4UWE.js.map +0 -7
  640. package/dist/cli-bundle/chunks/chunk-ZLWRPBOW.js.map +0 -1
  641. package/dist/cli-bundle/chunks/chunk-ZV7IQ23N.js +0 -657
  642. package/dist/cli-bundle/chunks/chunk-ZV7IQ23N.js.map +0 -7
  643. package/dist/cli-bundle/chunks/close-JEBZXONN.js +0 -15
  644. package/dist/cli-bundle/chunks/config-NCNNWF6R.js.map +0 -7
  645. package/dist/cli-bundle/chunks/config-SW3U7XP2.js.map +0 -1
  646. package/dist/cli-bundle/chunks/context-55VEOYI3.js.map +0 -1
  647. package/dist/cli-bundle/chunks/context-5LB7UGKE.js.map +0 -7
  648. package/dist/cli-bundle/chunks/contracts-JXFGBOYT.js.map +0 -1
  649. package/dist/cli-bundle/chunks/contracts-SY6PDFIK.js.map +0 -7
  650. package/dist/cli-bundle/chunks/create-CLSCHGJJ.js +0 -30
  651. package/dist/cli-bundle/chunks/history-ALTM2RRP.js +0 -20
  652. package/dist/cli-bundle/chunks/history-redact-5YGLWUDH.js +0 -21
  653. package/dist/cli-bundle/chunks/init-C4CRHW22.js +0 -21
  654. package/dist/cli-bundle/chunks/register-list-query-CCMHGZTF.js.map +0 -7
  655. package/dist/cli-bundle/chunks/register-list-query-OM3E2KMY.js.map +0 -1
  656. package/dist/cli-bundle/chunks/register-mutation-N3CDEGZU.js.map +0 -1
  657. package/dist/cli-bundle/chunks/register-mutation-UXTTWL6N.js.map +0 -7
  658. package/dist/cli-bundle/chunks/register-setup-G5LTSFYK.js.map +0 -1
  659. package/dist/cli-bundle/chunks/register-setup-TWHKICM2.js.map +0 -7
  660. package/dist/cli-bundle/chunks/restore-LQHXBAY5.js +0 -19
  661. package/dist/cli-bundle/chunks/schema-C6QA367T.js.map +0 -7
  662. package/dist/cli-bundle/chunks/schema-QO5I4FBL.js.map +0 -1
  663. package/dist/cli-bundle/chunks/stats-TCW2SZQG.js.map +0 -7
  664. package/dist/cli-bundle/chunks/stats-TKC6CAKB.js.map +0 -1
  665. package/dist/cli-bundle/chunks/test-WA6RZGM2.js +0 -36
  666. package/dist/cli-bundle/chunks/test-runs-FQ5WNQLP.js.map +0 -1
  667. package/dist/cli-bundle/chunks/test-runs-PX73DMMI.js.map +0 -7
  668. package/dist/cli-bundle/chunks/update-BSKMQOYH.js +0 -28
  669. package/dist/cli-bundle/chunks/update-FIGYNQ2I.js +0 -24
  670. package/dist/cli-bundle/chunks/validate-54SYJ7QW.js.map +0 -1
  671. package/dist/cli-bundle/chunks/validate-HYZNIB6W.js.map +0 -7
  672. package/docs/examples/policy-restricted-extension/index.js +0 -21
  673. package/packages/pm-beads/extensions/beads/index.js +0 -64
  674. package/packages/pm-beads/extensions/beads/runtime-loader.js +0 -86
  675. package/packages/pm-beads/extensions/beads/runtime.js +0 -482
  676. package/packages/pm-calendar/extensions/calendar/index.js +0 -150
  677. package/packages/pm-calendar/extensions/calendar/runtime.js +0 -126
  678. package/packages/pm-command-kit/extensions/command-kit/index.js +0 -181
  679. package/packages/pm-governance-audit/extensions/governance-audit/index.js +0 -177
  680. package/packages/pm-governance-audit/extensions/governance-audit/runtime.js +0 -153
  681. package/packages/pm-guide-shell/extensions/guide-shell/index.js +0 -98
  682. package/packages/pm-guide-shell/extensions/guide-shell/runtime.js +0 -294
  683. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/index.js +0 -18
  684. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/index.js +0 -124
  685. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/runtime.js +0 -110
  686. package/packages/pm-search-advanced/extensions/search-advanced/index.js +0 -258
  687. package/packages/pm-search-advanced/extensions/search-advanced/runtime.js +0 -361
  688. package/packages/pm-templates/extensions/templates/index.js +0 -132
  689. package/packages/pm-templates/extensions/templates/runtime.js +0 -35
  690. package/packages/pm-todos/extensions/todos/index.js +0 -81
  691. package/packages/pm-todos/extensions/todos/runtime-loader.js +0 -86
  692. package/packages/pm-todos/extensions/todos/runtime.js +0 -545
  693. /package/dist/cli-bundle/chunks/{activity-54TXGJ2T.js.map → activity-AW6XVFH6.js.map} +0 -0
  694. /package/dist/cli-bundle/chunks/{activity-N7RVTLBQ.js.map → activity-DBLQVIP6.js.map} +0 -0
  695. /package/dist/cli-bundle/chunks/{chunk-F32L4HR6.js.map → chunk-27BXPBAY.js.map} +0 -0
  696. /package/dist/cli-bundle/chunks/{chunk-5BBEWX6C.js.map → chunk-3VGN2UWE.js.map} +0 -0
  697. /package/dist/cli-bundle/chunks/{chunk-FMWW2JDU.js.map → chunk-AXIDKKAT.js.map} +0 -0
  698. /package/dist/cli-bundle/chunks/{chunk-TIM4OD74.js.map → chunk-BDTISOSD.js.map} +0 -0
  699. /package/dist/cli-bundle/chunks/{chunk-CZIFFMZI.js.map → chunk-DDPTYJIM.js.map} +0 -0
  700. /package/dist/cli-bundle/chunks/{chunk-AYPQUFCX.js.map → chunk-EJUDVUYZ.js.map} +0 -0
  701. /package/dist/cli-bundle/chunks/{chunk-EOGBMLCE.js.map → chunk-EVMTBV6V.js.map} +0 -0
  702. /package/dist/cli-bundle/chunks/{chunk-CG3KP6I5.js.map → chunk-G7I7DEZA.js.map} +0 -0
  703. /package/dist/cli-bundle/chunks/{chunk-F4BNR2IN.js.map → chunk-HYTGA6GI.js.map} +0 -0
  704. /package/dist/cli-bundle/chunks/{chunk-2WCYE3IF.js.map → chunk-HZZEHPRG.js.map} +0 -0
  705. /package/dist/cli-bundle/chunks/{chunk-YV2OSAMS.js.map → chunk-IJYK2T43.js.map} +0 -0
  706. /package/dist/cli-bundle/chunks/{chunk-QOUOMPHO.js.map → chunk-JPECA746.js.map} +0 -0
  707. /package/dist/cli-bundle/chunks/{chunk-OQ2E64FH.js.map → chunk-KNPEF7QG.js.map} +0 -0
  708. /package/dist/cli-bundle/chunks/{chunk-3BKH2CL3.js.map → chunk-L5OEFZQG.js.map} +0 -0
  709. /package/dist/cli-bundle/chunks/{chunk-5S4ZGDB2.js.map → chunk-N74UMG5H.js.map} +0 -0
  710. /package/dist/cli-bundle/chunks/{chunk-IXAZI443.js.map → chunk-NFDPYAIP.js.map} +0 -0
  711. /package/dist/cli-bundle/chunks/{chunk-SKC4UTRP.js.map → chunk-NKZAN7BD.js.map} +0 -0
  712. /package/dist/cli-bundle/chunks/{chunk-JPJDP4VU.js.map → chunk-NWMZWYYB.js.map} +0 -0
  713. /package/dist/cli-bundle/chunks/{chunk-KKX4Z2SE.js.map → chunk-OTUHB4HS.js.map} +0 -0
  714. /package/dist/cli-bundle/chunks/{chunk-WB5BYQMF.js.map → chunk-SLMUGTK3.js.map} +0 -0
  715. /package/dist/cli-bundle/chunks/{chunk-I6QMJ2XT.js.map → chunk-WYDHYJPO.js.map} +0 -0
  716. /package/dist/cli-bundle/chunks/{chunk-KIEAK7YE.js.map → chunk-ZRP4VG5U.js.map} +0 -0
  717. /package/dist/cli-bundle/chunks/{close-JEBZXONN.js.map → close-E6ZZGCJY.js.map} +0 -0
  718. /package/dist/cli-bundle/chunks/{close-QHMVWM7M.js.map → close-TQYAAFJP.js.map} +0 -0
  719. /package/dist/cli-bundle/chunks/{create-O4VONGPG.js.map → context-B6275WPX.js.map} +0 -0
  720. /package/dist/cli-bundle/chunks/{create-CLSCHGJJ.js.map → context-OCZ3FJ4Z.js.map} +0 -0
  721. /package/dist/cli-bundle/chunks/{extension-YQF4CPIR.js.map → create-OH3BDGBB.js.map} +0 -0
  722. /package/dist/cli-bundle/chunks/{extension-3JYWJ5K2.js.map → create-RLRJMRTM.js.map} +0 -0
  723. /package/dist/cli-bundle/chunks/{history-ALTM2RRP.js.map → extension-CPSLJQVE.js.map} +0 -0
  724. /package/dist/cli-bundle/chunks/{history-RUKPKNY7.js.map → extension-CXJ6RELI.js.map} +0 -0
  725. /package/dist/cli-bundle/chunks/{gc-BEJMQT64.js.map → gc-7GQYOS2G.js.map} +0 -0
  726. /package/dist/cli-bundle/chunks/{gc-JEFQDJPA.js.map → gc-LPVMKJQJ.js.map} +0 -0
  727. /package/dist/cli-bundle/chunks/{health-JJJOY7DJ.js.map → health-3IPFLKXB.js.map} +0 -0
  728. /package/dist/cli-bundle/chunks/{health-P67NZ6TT.js.map → health-GZXGBZ36.js.map} +0 -0
  729. /package/dist/cli-bundle/chunks/{history-redact-YY4XYVEP.js.map → history-NERDJNUB.js.map} +0 -0
  730. /package/dist/cli-bundle/chunks/{history-redact-5YGLWUDH.js.map → history-WSZHY3PN.js.map} +0 -0
  731. /package/dist/cli-bundle/chunks/{init-C4CRHW22.js.map → history-redact-MP6CH7U5.js.map} +0 -0
  732. /package/dist/cli-bundle/chunks/{init-HBFGYS66.js.map → history-redact-O3NBCNWC.js.map} +0 -0
  733. /package/dist/cli-bundle/chunks/{list-C7R33MD5.js.map → init-64XDLQJB.js.map} +0 -0
  734. /package/dist/cli-bundle/chunks/{list-DSN6UNFB.js.map → init-PAX32BJA.js.map} +0 -0
  735. /package/dist/cli-bundle/chunks/{restore-LL2WLEDG.js.map → list-DNBJVO3E.js.map} +0 -0
  736. /package/dist/cli-bundle/chunks/{restore-LQHXBAY5.js.map → list-G5Y65VF6.js.map} +0 -0
  737. /package/dist/cli-bundle/chunks/{search-2EI6EAXH.js.map → restore-4MHZFJ2E.js.map} +0 -0
  738. /package/dist/cli-bundle/chunks/{search-QBFBLQRO.js.map → restore-YALDGTQR.js.map} +0 -0
  739. /package/dist/cli-bundle/chunks/{test-NV2DRPUS.js.map → schema-73HR2OJW.js.map} +0 -0
  740. /package/dist/cli-bundle/chunks/{test-WA6RZGM2.js.map → schema-U6LJKSIR.js.map} +0 -0
  741. /package/dist/cli-bundle/chunks/{update-BSKMQOYH.js.map → search-AXPXKZER.js.map} +0 -0
  742. /package/dist/cli-bundle/chunks/{update-FIGYNQ2I.js.map → search-KILGT37L.js.map} +0 -0
  743. /package/dist/cli-bundle/chunks/{telemetry-BT2VSWU2.js.map → telemetry-BZUF6H7G.js.map} +0 -0
  744. /package/dist/cli-bundle/chunks/{telemetry-LQ6FRTUT.js.map → telemetry-GAHHQTOS.js.map} +0 -0
@@ -0,0 +1,1514 @@
1
+ /**
2
+ * @module sdk/cli-contracts/flag-contracts
3
+ *
4
+ * Per-command CLI flag contracts — the canonical `--flag` vocabulary every pm
5
+ * command accepts. The argv bootstrap normalizer, Commander registration, shell
6
+ * completion, and the `pm contracts` command all read these contracts so the
7
+ * flag surface stays single-sourced across the CLI, SDK, and MCP boundaries.
8
+ */
9
+
10
+ !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]="ad4e11af-1bc5-5eda-8cc6-cd6e83a80749")}catch(e){}}();
11
+ import { normalizeUniqueStringList } from "./string-lists.js";
12
+ function normalizeFlagAliasKey(flag) {
13
+ if (!flag.startsWith("--")) {
14
+ return flag;
15
+ }
16
+ return `--${flag.slice(2).replaceAll("_", "-")}`;
17
+ }
18
+ /**
19
+ * Returns the flag contracts with their `aliases` populated by folding every
20
+ * dash/underscore spelling of a flag into its canonical `--kebab-case` entry, so
21
+ * a single contract row advertises all accepted spellings.
22
+ */
23
+ export function withFlagAliasMetadata(flagContracts) {
24
+ const aliasesByCanonical = new Map();
25
+ for (const contract of flagContracts) {
26
+ const canonical = normalizeFlagAliasKey(contract.flag);
27
+ const bucket = aliasesByCanonical.get(canonical) ?? new Set();
28
+ if (contract.flag !== canonical) {
29
+ bucket.add(contract.flag);
30
+ }
31
+ for (const alias of contract.aliases ?? []) {
32
+ if (alias !== canonical) {
33
+ bucket.add(alias);
34
+ }
35
+ }
36
+ aliasesByCanonical.set(canonical, bucket);
37
+ }
38
+ return flagContracts.map((contract) => {
39
+ const canonical = normalizeFlagAliasKey(contract.flag);
40
+ if (contract.flag !== canonical) {
41
+ return contract;
42
+ }
43
+ const aliases = normalizeUniqueStringList([
44
+ ...(contract.aliases ?? []),
45
+ ...aliasesByCanonical.get(canonical),
46
+ ]).filter((alias) => alias !== canonical);
47
+ if (aliases.length === 0) {
48
+ return contract;
49
+ }
50
+ return {
51
+ ...contract,
52
+ aliases,
53
+ };
54
+ });
55
+ }
56
+ /**
57
+ * Collapses alias-only duplicate rows into their canonical flag: runs
58
+ * {@link withFlagAliasMetadata}, then drops contracts that merely restate an
59
+ * alias already attached to a canonical flag, yielding a deduplicated list.
60
+ */
61
+ export function compactFlagAliasContracts(flagContracts) {
62
+ const withAliases = withFlagAliasMetadata(flagContracts);
63
+ const canonicalFlags = new Set(withAliases.map((contract) => contract.flag));
64
+ return withAliases.filter((contract) => {
65
+ const canonical = normalizeFlagAliasKey(contract.flag);
66
+ return contract.flag === canonical || !canonicalFlags.has(canonical);
67
+ });
68
+ }
69
+ export const SUBCOMMAND_GLOBAL_FLAG_CONTRACTS = [
70
+ { flag: "--json" },
71
+ { flag: "--quiet" },
72
+ { flag: "--no-changed-fields" },
73
+ { flag: "--id-only" },
74
+ { flag: "--pm-path", aliases: ["--path"] },
75
+ { flag: "--no-extensions" },
76
+ { flag: "--no-pager" },
77
+ { flag: "--profile" },
78
+ { flag: "--help" },
79
+ ];
80
+ export const GLOBAL_FLAG_CONTRACTS = [
81
+ ...SUBCOMMAND_GLOBAL_FLAG_CONTRACTS,
82
+ { flag: "--version" },
83
+ ];
84
+ export const LIST_FILTER_FLAG_CONTRACTS = [
85
+ { flag: "--status", list: true },
86
+ { flag: "--type" },
87
+ { flag: "--tag", aliases: ["--tags"] },
88
+ { flag: "--priority" },
89
+ { flag: "--deadline-before" },
90
+ { flag: "--deadline-after" },
91
+ { flag: "--updated-after" },
92
+ { flag: "--updated-before" },
93
+ { flag: "--created-after" },
94
+ { flag: "--created-before" },
95
+ { flag: "--ids", list: true },
96
+ { flag: "--assignee" },
97
+ { flag: "--assignee-filter" },
98
+ { flag: "--assignee_filter" },
99
+ { flag: "--parent" },
100
+ { flag: "--sprint" },
101
+ { flag: "--release" },
102
+ { flag: "--filter-ac-missing" },
103
+ { flag: "--filter-estimates-missing", aliases: ["--filter-estimate-missing"] },
104
+ { flag: "--filter-resolution-missing" },
105
+ { flag: "--filter-metadata-missing" },
106
+ { flag: "--filter-reviewer-missing" },
107
+ { flag: "--filter-risk-missing" },
108
+ { flag: "--filter-confidence-missing" },
109
+ { flag: "--filter-sprint-missing" },
110
+ { flag: "--filter-release-missing" },
111
+ { flag: "--has-notes" },
112
+ { flag: "--no-notes" },
113
+ { flag: "--has-learnings" },
114
+ { flag: "--no-learnings" },
115
+ { flag: "--has-files" },
116
+ { flag: "--no-files" },
117
+ { flag: "--has-docs" },
118
+ { flag: "--no-docs" },
119
+ { flag: "--has-tests" },
120
+ { flag: "--no-tests" },
121
+ { flag: "--has-comments" },
122
+ { flag: "--no-comments" },
123
+ { flag: "--has-deps" },
124
+ { flag: "--no-deps" },
125
+ { flag: "--has-body" },
126
+ { flag: "--empty-body" },
127
+ { flag: "--has-linked-command" },
128
+ { flag: "--no-linked-command" },
129
+ { flag: "--limit" },
130
+ { flag: "--offset" },
131
+ { flag: "--no-truncate", aliases: ["--all"] },
132
+ { flag: "--compact" },
133
+ { flag: "--brief" },
134
+ { flag: "--full" },
135
+ { flag: "--fields", list: true },
136
+ { flag: "--sort" },
137
+ { flag: "--order" },
138
+ { flag: "--tree" },
139
+ { flag: "--tree-depth" },
140
+ { flag: "--tree_depth" },
141
+ { flag: "--include-body" },
142
+ { flag: "--format" },
143
+ { flag: "--stream" },
144
+ ];
145
+ export const AGGREGATE_FLAG_CONTRACTS = [
146
+ { flag: "--group-by", list: true },
147
+ { flag: "--count" },
148
+ { flag: "--completion" },
149
+ { flag: "--sum" },
150
+ { flag: "--avg" },
151
+ { flag: "--include-unparented" },
152
+ { flag: "--include_unparented" },
153
+ { flag: "--status" },
154
+ { flag: "--type" },
155
+ { flag: "--tag" },
156
+ { flag: "--priority" },
157
+ { flag: "--deadline-before" },
158
+ { flag: "--deadline-after" },
159
+ { flag: "--assignee" },
160
+ { flag: "--assignee-filter" },
161
+ { flag: "--assignee_filter" },
162
+ { flag: "--parent" },
163
+ { flag: "--sprint" },
164
+ { flag: "--release" },
165
+ ];
166
+ export const DEDUPE_AUDIT_FLAG_CONTRACTS = [
167
+ { flag: "--mode" },
168
+ { flag: "--limit" },
169
+ { flag: "--threshold" },
170
+ { flag: "--status" },
171
+ { flag: "--type" },
172
+ { flag: "--tag" },
173
+ { flag: "--priority" },
174
+ { flag: "--deadline-before" },
175
+ { flag: "--deadline-after" },
176
+ { flag: "--assignee" },
177
+ { flag: "--assignee-filter" },
178
+ { flag: "--assignee_filter" },
179
+ { flag: "--parent" },
180
+ { flag: "--sprint" },
181
+ { flag: "--release" },
182
+ ];
183
+ export const DEDUPE_MERGE_FLAG_CONTRACTS = [
184
+ { flag: "--keep" },
185
+ { flag: "--close", list: true },
186
+ { flag: "--apply" },
187
+ { flag: "--dry-run" },
188
+ { flag: "--skip-children" },
189
+ { flag: "--author" },
190
+ { flag: "--message" },
191
+ ];
192
+ export const COMMENTS_AUDIT_FLAG_CONTRACTS = [
193
+ { flag: "--status" },
194
+ { flag: "--type" },
195
+ { flag: "--assignee" },
196
+ { flag: "--assignee-filter" },
197
+ { flag: "--assignee_filter" },
198
+ { flag: "--parent" },
199
+ { flag: "--tag" },
200
+ { flag: "--sprint" },
201
+ { flag: "--release" },
202
+ { flag: "--priority" },
203
+ { flag: "--limit-items" },
204
+ { flag: "--limit" },
205
+ { flag: "--full-history" },
206
+ { flag: "--latest" },
207
+ ];
208
+ export const COMMENTS_FLAG_CONTRACTS = [
209
+ { flag: "--add", aliases: ["--comment"] },
210
+ { flag: "--stdin" },
211
+ { flag: "--file" },
212
+ { flag: "--edit" },
213
+ { flag: "--delete" },
214
+ { flag: "--limit" },
215
+ { flag: "--author" },
216
+ { flag: "--message" },
217
+ { flag: "--allow-audit-comment" },
218
+ { flag: "--force" },
219
+ ];
220
+ export const NOTES_FLAG_CONTRACTS = [
221
+ { flag: "--add", aliases: ["--note"] },
222
+ { flag: "--limit" },
223
+ { flag: "--author" },
224
+ { flag: "--message" },
225
+ { flag: "--allow-audit-note" },
226
+ { flag: "--allow-audit-comment" },
227
+ { flag: "--force" },
228
+ ];
229
+ export const LEARNINGS_FLAG_CONTRACTS = [
230
+ { flag: "--add", aliases: ["--learning"] },
231
+ { flag: "--limit" },
232
+ { flag: "--author" },
233
+ { flag: "--message" },
234
+ { flag: "--allow-audit-learning" },
235
+ { flag: "--allow-audit-comment" },
236
+ { flag: "--force" },
237
+ ];
238
+ export const FILES_FLAG_CONTRACTS = [
239
+ { flag: "--add" },
240
+ { flag: "--add-glob" },
241
+ { flag: "--remove" },
242
+ { flag: "--migrate" },
243
+ // GH-170 (pm-pfnx): single-value note applied to every --add/--add-glob link
244
+ // in the invocation (embedded note= wins; usage error without an add).
245
+ { flag: "--note" },
246
+ { flag: "--list" },
247
+ { flag: "--append-stable" },
248
+ { flag: "--validate-paths" },
249
+ { flag: "--audit" },
250
+ { flag: "--author" },
251
+ { flag: "--message" },
252
+ { flag: "--force" },
253
+ ];
254
+ export const DOCS_FLAG_CONTRACTS = [
255
+ { flag: "--add" },
256
+ { flag: "--add-glob" },
257
+ { flag: "--remove" },
258
+ { flag: "--migrate" },
259
+ // GH-170 (pm-pfnx): see FILES_FLAG_CONTRACTS --note.
260
+ { flag: "--note" },
261
+ { flag: "--list" },
262
+ { flag: "--validate-paths" },
263
+ { flag: "--audit" },
264
+ { flag: "--author" },
265
+ { flag: "--message" },
266
+ { flag: "--force" },
267
+ ];
268
+ export const HISTORY_FLAG_CONTRACTS = [
269
+ { flag: "--limit" },
270
+ { flag: "--compact" },
271
+ { flag: "--full" },
272
+ { flag: "--diff" },
273
+ { flag: "--field" },
274
+ { flag: "--verify" },
275
+ { flag: "--format" },
276
+ ];
277
+ export const HISTORY_REDACT_FLAG_CONTRACTS = [
278
+ { flag: "--literal" },
279
+ { flag: "--regex" },
280
+ { flag: "--replacement" },
281
+ { flag: "--dry-run" },
282
+ { flag: "--author" },
283
+ { flag: "--message" },
284
+ { flag: "--force" },
285
+ ];
286
+ export const HISTORY_REPAIR_FLAG_CONTRACTS = [
287
+ { flag: "--all" },
288
+ { flag: "--dry-run" },
289
+ { flag: "--author" },
290
+ { flag: "--message" },
291
+ { flag: "--force" },
292
+ ];
293
+ export const HISTORY_COMPACT_FLAG_CONTRACTS = [
294
+ { flag: "--before" },
295
+ { flag: "--ids", list: true },
296
+ { flag: "--all-over", value_type: "number" },
297
+ { flag: "--closed" },
298
+ { flag: "--all-streams" },
299
+ { flag: "--min-entries", value_type: "number" },
300
+ { flag: "--dry-run" },
301
+ { flag: "--author" },
302
+ { flag: "--message" },
303
+ { flag: "--force" },
304
+ ];
305
+ export const SCHEMA_FLAG_CONTRACTS = [
306
+ { flag: "--description" },
307
+ { flag: "--default-status", aliases: ["--default_status"] },
308
+ { flag: "--folder" },
309
+ { flag: "--alias" },
310
+ // --role is a repeatable Commander collect flag (NOT a comma-list contract),
311
+ // mirroring --alias; list:false keeps the bootstrap coalescer from corrupting
312
+ // values.
313
+ { flag: "--role" },
314
+ { flag: "--order" },
315
+ // add-field flags (custom runtime fields). --commands/--required-types are
316
+ // repeatable Commander collect flags (comma-splitting handled in the action),
317
+ // so they stay off the comma-list contract for the same reason as --alias.
318
+ { flag: "--type" },
319
+ { flag: "--commands" },
320
+ { flag: "--cli-flag" },
321
+ { flag: "--required" },
322
+ { flag: "--required-on-create" },
323
+ { flag: "--no-allow-unset" },
324
+ { flag: "--required-types" },
325
+ // add-type --infer flags (title-prefix type inference).
326
+ { flag: "--infer" },
327
+ { flag: "--min-count" },
328
+ { flag: "--apply" },
329
+ { flag: "--author" },
330
+ { flag: "--force" },
331
+ ];
332
+ /**
333
+ * Flags accepted by the `pm profile` command (list/show/apply subcommands).
334
+ */
335
+ export const PROFILE_FLAG_CONTRACTS = [
336
+ { flag: "--dry-run" },
337
+ { flag: "--author" },
338
+ { flag: "--force" },
339
+ ];
340
+ export const PLAN_FLAG_CONTRACTS = [
341
+ { flag: "--title" },
342
+ { flag: "--description" },
343
+ { flag: "--scope" },
344
+ { flag: "--parent" },
345
+ { flag: "--related" },
346
+ { flag: "--blocks" },
347
+ { flag: "--blocked-by", aliases: ["--blocked_by"] },
348
+ { flag: "--harness" },
349
+ { flag: "--mode" },
350
+ { flag: "--resume-context", aliases: ["--resume_context"] },
351
+ { flag: "--tags", aliases: ["--tag"], list: true },
352
+ { flag: "--priority" },
353
+ { flag: "--body" },
354
+ { flag: "--claim" },
355
+ { flag: "--from-search", aliases: ["--from_search"] },
356
+ { flag: "--template" },
357
+ { flag: "--step-title", aliases: ["--step_title"] },
358
+ // pm-6mit: --step is a Commander collect repeatable (ordered step titles on
359
+ // create; single-value stepTitle alias elsewhere). It must NOT be list:true —
360
+ // the bootstrap coalescer comma-joins list flags and would corrupt titles
361
+ // containing commas.
362
+ { flag: "--step" },
363
+ { flag: "--step-body", aliases: ["--step_body"] },
364
+ { flag: "--step-owner", aliases: ["--step_owner"] },
365
+ { flag: "--step-status", aliases: ["--step_status"] },
366
+ { flag: "--step-evidence", aliases: ["--step_evidence"] },
367
+ { flag: "--step-blocked-reason", aliases: ["--step_blocked_reason"] },
368
+ { flag: "--step-replacement", aliases: ["--step_replacement"] },
369
+ { flag: "--depends-on", aliases: ["--depends_on"] },
370
+ { flag: "--link" },
371
+ { flag: "--link-kind", aliases: ["--link_kind"] },
372
+ { flag: "--link-note", aliases: ["--link_note"] },
373
+ { flag: "--promote-to-item-dep", aliases: ["--promote_to_item_dep"] },
374
+ { flag: "--allow-multiple-active", aliases: ["--allow_multiple_active"] },
375
+ { flag: "--file" },
376
+ { flag: "--test" },
377
+ { flag: "--doc" },
378
+ { flag: "--decision-text", aliases: ["--decision_text", "--decision"] },
379
+ { flag: "--decision-rationale", aliases: ["--decision_rationale"] },
380
+ { flag: "--decision-evidence", aliases: ["--decision_evidence"] },
381
+ { flag: "--discovery-text", aliases: ["--discovery_text", "--discovery"] },
382
+ { flag: "--validation-text", aliases: ["--validation_text", "--validation"] },
383
+ { flag: "--validation-command", aliases: ["--validation_command"] },
384
+ { flag: "--validation-expected", aliases: ["--validation_expected"] },
385
+ { flag: "--depth" },
386
+ { flag: "--fields", list: true },
387
+ { flag: "--steps" },
388
+ { flag: "--materialize-type", aliases: ["--materialize_type"] },
389
+ { flag: "--materialize-parent", aliases: ["--materialize_parent"] },
390
+ { flag: "--materialize-tags", aliases: ["--materialize_tags"] },
391
+ { flag: "--author" },
392
+ { flag: "--message" },
393
+ { flag: "--force" },
394
+ ];
395
+ export const INIT_FLAG_CONTRACTS = [
396
+ { flag: "--preset" },
397
+ { flag: "--type-preset" },
398
+ { flag: "--defaults", short: "-y", aliases: ["--yes"] },
399
+ { flag: "--author" },
400
+ { flag: "--agent-guidance" },
401
+ { flag: "--with-packages" },
402
+ { flag: "--force" },
403
+ { flag: "--verbose" },
404
+ ];
405
+ export const CONFIG_FLAG_CONTRACTS = [
406
+ { flag: "--criterion" },
407
+ { flag: "--clear-criteria" },
408
+ { flag: "--format" },
409
+ { flag: "--policy" },
410
+ { flag: "--default-depth" },
411
+ { flag: "--activity-limit" },
412
+ { flag: "--stale-threshold-days" },
413
+ { flag: "--section-hierarchy" },
414
+ { flag: "--section-activity" },
415
+ { flag: "--section-progress" },
416
+ { flag: "--section-blockers" },
417
+ { flag: "--section-files" },
418
+ { flag: "--section-workload" },
419
+ { flag: "--section-staleness" },
420
+ { flag: "--section-tests" },
421
+ ];
422
+ export const EXTENSION_FLAG_CONTRACTS = [
423
+ { flag: "--init" },
424
+ { flag: "--scaffold" },
425
+ { flag: "--capability" },
426
+ { flag: "--install" },
427
+ { flag: "--uninstall" },
428
+ { flag: "--explore" },
429
+ { flag: "--list" },
430
+ { flag: "--manage" },
431
+ { flag: "--describe" },
432
+ { flag: "--markdown" },
433
+ { flag: "--output" },
434
+ { flag: "--reload" },
435
+ { flag: "--watch" },
436
+ { flag: "--doctor" },
437
+ { flag: "--catalog" },
438
+ { flag: "--adopt" },
439
+ { flag: "--adopt-all" },
440
+ { flag: "--activate" },
441
+ { flag: "--deactivate" },
442
+ { flag: "--project" },
443
+ { flag: "--local" },
444
+ { flag: "--global" },
445
+ { flag: "--gh" },
446
+ { flag: "--github" },
447
+ { flag: "--ref" },
448
+ { flag: "--detail" },
449
+ { flag: "--trace" },
450
+ { flag: "--runtime-probe" },
451
+ { flag: "--fix-managed-state" },
452
+ { flag: "--strict-exit" },
453
+ { flag: "--fail-on-warn" },
454
+ ];
455
+ export const EXTENSION_SCOPE_FLAG_CONTRACTS = [
456
+ { flag: "--project" },
457
+ { flag: "--local" },
458
+ { flag: "--global" },
459
+ ];
460
+ export const EXTENSION_INIT_FLAG_CONTRACTS = [
461
+ ...EXTENSION_SCOPE_FLAG_CONTRACTS,
462
+ { flag: "--capability" },
463
+ ];
464
+ // `pm package` / `pm packages` additionally accept `--declarative` to scaffold the
465
+ // `composeExtension` blueprint starter. It is a runtime SDK *value* import that only
466
+ // package-mode authoring links, so `pm extension` omits it — the lone flag where the
467
+ // package surface diverges from the extension surface.
468
+ export const PACKAGE_FLAG_CONTRACTS = [...EXTENSION_FLAG_CONTRACTS, { flag: "--declarative" }];
469
+ export const PACKAGE_INIT_FLAG_CONTRACTS = [...EXTENSION_INIT_FLAG_CONTRACTS, { flag: "--declarative" }];
470
+ export const EXTENSION_INSTALL_FLAG_CONTRACTS = [
471
+ { flag: "--project" },
472
+ { flag: "--local" },
473
+ { flag: "--global" },
474
+ { flag: "--gh" },
475
+ { flag: "--github" },
476
+ { flag: "--ref" },
477
+ ];
478
+ export const EXTENSION_UNINSTALL_FLAG_CONTRACTS = EXTENSION_SCOPE_FLAG_CONTRACTS;
479
+ export const EXTENSION_EXPLORE_FLAG_CONTRACTS = EXTENSION_SCOPE_FLAG_CONTRACTS;
480
+ export const EXTENSION_DESCRIBE_FLAG_CONTRACTS = [
481
+ ...EXTENSION_SCOPE_FLAG_CONTRACTS,
482
+ { flag: "--markdown" },
483
+ { flag: "--output" },
484
+ ];
485
+ export const EXTENSION_ADOPT_ALL_FLAG_CONTRACTS = EXTENSION_SCOPE_FLAG_CONTRACTS;
486
+ export const EXTENSION_ACTIVATE_FLAG_CONTRACTS = EXTENSION_SCOPE_FLAG_CONTRACTS;
487
+ export const EXTENSION_DEACTIVATE_FLAG_CONTRACTS = EXTENSION_SCOPE_FLAG_CONTRACTS;
488
+ export const EXTENSION_MANAGE_FLAG_CONTRACTS = [
489
+ ...EXTENSION_SCOPE_FLAG_CONTRACTS,
490
+ { flag: "--runtime-probe" },
491
+ { flag: "--fix-managed-state" },
492
+ ];
493
+ export const EXTENSION_RELOAD_FLAG_CONTRACTS = [
494
+ ...EXTENSION_SCOPE_FLAG_CONTRACTS,
495
+ { flag: "--watch" },
496
+ ];
497
+ export const EXTENSION_DOCTOR_FLAG_CONTRACTS = [
498
+ ...EXTENSION_SCOPE_FLAG_CONTRACTS,
499
+ { flag: "--detail" },
500
+ { flag: "--trace" },
501
+ { flag: "--fix-managed-state" },
502
+ { flag: "--strict-exit" },
503
+ { flag: "--fail-on-warn" },
504
+ ];
505
+ export const EXTENSION_CATALOG_FLAG_CONTRACTS = [
506
+ ...EXTENSION_SCOPE_FLAG_CONTRACTS,
507
+ { flag: "--fields", list: true },
508
+ ];
509
+ export const EXTENSION_ADOPT_FLAG_CONTRACTS = [
510
+ ...EXTENSION_SCOPE_FLAG_CONTRACTS,
511
+ { flag: "--gh" },
512
+ { flag: "--github" },
513
+ { flag: "--ref" },
514
+ ];
515
+ export const INSTALL_FLAG_CONTRACTS = [
516
+ { flag: "--project" },
517
+ { flag: "--local" },
518
+ { flag: "--global" },
519
+ { flag: "--gh" },
520
+ { flag: "--github" },
521
+ { flag: "--ref" },
522
+ ];
523
+ export const UPGRADE_FLAG_CONTRACTS = [
524
+ { flag: "--dry-run" },
525
+ { flag: "--cli-only" },
526
+ { flag: "--packages-only" },
527
+ { flag: "--project" },
528
+ { flag: "--local" },
529
+ { flag: "--global" },
530
+ { flag: "--repair" },
531
+ { flag: "--tag" },
532
+ { flag: "--package-name" },
533
+ ];
534
+ export const REINDEX_FLAG_CONTRACTS = [
535
+ { flag: "--mode" },
536
+ { flag: "--progress" },
537
+ ];
538
+ export const CLOSE_FLAG_CONTRACTS = [
539
+ { flag: "--reason" },
540
+ { flag: "--close-reason" },
541
+ { flag: "--duplicate-of" },
542
+ { flag: "--author" },
543
+ { flag: "--message" },
544
+ { flag: "--validate-close" },
545
+ // pm-fl0c #11 (2026-05-28) + Codex P2 follow-up: inline closure-validation
546
+ // fields. Surface them through the contract so `pm contracts --command
547
+ // close`, the JSON help payload, and bootstrap flag normalization /
548
+ // suggestions all stay consistent with the commander registration.
549
+ { flag: "--resolution" },
550
+ { flag: "--expected-result", aliases: ["--expected_result", "--expected"] },
551
+ { flag: "--actual-result", aliases: ["--actual_result", "--actual"] },
552
+ { flag: "--force" },
553
+ ];
554
+ // close-many shares update-many's `--filter-*` scoping family and close's
555
+ // inline closure-validation fields. The shared close reason is required for the
556
+ // audited bulk close (each matched item routes through runClose semantics).
557
+ export const CLOSE_MANY_FLAG_CONTRACTS = [
558
+ { flag: "--filter-status", list: true },
559
+ { flag: "--filter-type" },
560
+ { flag: "--filter-tag" },
561
+ { flag: "--filter-priority" },
562
+ { flag: "--filter-deadline-before" },
563
+ { flag: "--filter-deadline-after" },
564
+ { flag: "--filter-updated-after" },
565
+ { flag: "--filter-updated-before" },
566
+ { flag: "--filter-created-after" },
567
+ { flag: "--filter-created-before" },
568
+ { flag: "--filter-assignee" },
569
+ { flag: "--filter-assignee-filter" },
570
+ { flag: "--filter-assignee_filter" },
571
+ { flag: "--filter-parent" },
572
+ { flag: "--filter-sprint" },
573
+ { flag: "--filter-release" },
574
+ { flag: "--filter-reviewer-missing" },
575
+ { flag: "--filter-risk-missing" },
576
+ { flag: "--filter-confidence-missing" },
577
+ { flag: "--filter-sprint-missing" },
578
+ { flag: "--filter-release-missing" },
579
+ { flag: "--filter-has-notes" },
580
+ { flag: "--filter-no-notes" },
581
+ { flag: "--filter-has-learnings" },
582
+ { flag: "--filter-no-learnings" },
583
+ { flag: "--filter-has-files" },
584
+ { flag: "--filter-no-files" },
585
+ { flag: "--filter-has-docs" },
586
+ { flag: "--filter-no-docs" },
587
+ { flag: "--filter-has-tests" },
588
+ { flag: "--filter-no-tests" },
589
+ { flag: "--filter-has-comments" },
590
+ { flag: "--filter-no-comments" },
591
+ { flag: "--filter-has-deps" },
592
+ { flag: "--filter-no-deps" },
593
+ { flag: "--filter-has-body" },
594
+ { flag: "--filter-empty-body" },
595
+ { flag: "--filter-has-linked-command" },
596
+ { flag: "--filter-no-linked-command" },
597
+ { flag: "--ids", list: true },
598
+ { flag: "--limit" },
599
+ { flag: "--offset" },
600
+ { flag: "--reason" },
601
+ { flag: "--resolution" },
602
+ { flag: "--expected-result", aliases: ["--expected_result", "--expected"] },
603
+ { flag: "--actual-result", aliases: ["--actual_result", "--actual"] },
604
+ { flag: "--validate-close" },
605
+ { flag: "--author" },
606
+ { flag: "--message" },
607
+ { flag: "--force" },
608
+ { flag: "--dry-run" },
609
+ { flag: "--rollback" },
610
+ { flag: "--no-checkpoint" },
611
+ ];
612
+ export const APPEND_FLAG_CONTRACTS = [
613
+ { flag: "--body", short: "-b" },
614
+ { flag: "--author" },
615
+ { flag: "--message" },
616
+ { flag: "--force" },
617
+ ];
618
+ export const CLAIM_FLAG_CONTRACTS = [
619
+ { flag: "--author" },
620
+ { flag: "--message" },
621
+ { flag: "--force" },
622
+ ];
623
+ export const RESTORE_FLAG_CONTRACTS = [
624
+ { flag: "--author" },
625
+ { flag: "--message" },
626
+ { flag: "--force" },
627
+ ];
628
+ export const DELETE_FLAG_CONTRACTS = [
629
+ { flag: "--dry-run" },
630
+ { flag: "--author" },
631
+ { flag: "--message" },
632
+ { flag: "--force" },
633
+ ];
634
+ export const RELEASE_FLAG_CONTRACTS = [
635
+ { flag: "--author" },
636
+ { flag: "--message" },
637
+ { flag: "--allow-audit-release" },
638
+ { flag: "--force" },
639
+ ];
640
+ export const START_TASK_FLAG_CONTRACTS = [
641
+ { flag: "--author" },
642
+ { flag: "--message" },
643
+ { flag: "--force" },
644
+ ];
645
+ export const PAUSE_TASK_FLAG_CONTRACTS = [
646
+ { flag: "--author" },
647
+ { flag: "--message" },
648
+ { flag: "--force" },
649
+ ];
650
+ export const CLOSE_TASK_FLAG_CONTRACTS = [
651
+ { flag: "--author" },
652
+ { flag: "--message" },
653
+ { flag: "--validate-close" },
654
+ { flag: "--force" },
655
+ ];
656
+ /** Shared create-passthrough flags for every scheduling shortcut (GH-217). */
657
+ const SCHEDULING_SHORTCUT_COMMON_FLAG_CONTRACTS = [
658
+ { flag: "--parent" },
659
+ { flag: "--allow-missing-parent" },
660
+ { flag: "--tags" },
661
+ { flag: "--priority" },
662
+ { flag: "--body" },
663
+ { flag: "--description" },
664
+ { flag: "--author" },
665
+ { flag: "--message" },
666
+ ];
667
+ export const MEET_FLAG_CONTRACTS = [
668
+ { flag: "--start" },
669
+ { flag: "--duration" },
670
+ { flag: "--end" },
671
+ { flag: "--location" },
672
+ { flag: "--timezone" },
673
+ { flag: "--all-day" },
674
+ ...SCHEDULING_SHORTCUT_COMMON_FLAG_CONTRACTS,
675
+ ];
676
+ export const EVENT_FLAG_CONTRACTS = MEET_FLAG_CONTRACTS;
677
+ export const REMIND_FLAG_CONTRACTS = [
678
+ { flag: "--at" },
679
+ { flag: "--text" },
680
+ ...SCHEDULING_SHORTCUT_COMMON_FLAG_CONTRACTS,
681
+ ];
682
+ export const TEST_FLAG_CONTRACTS = [
683
+ { flag: "--add" },
684
+ { flag: "--add-json" },
685
+ { flag: "--remove" },
686
+ { flag: "--run" },
687
+ { flag: "--match" },
688
+ { flag: "--only-index" },
689
+ { flag: "--only-last" },
690
+ { flag: "--background" },
691
+ { flag: "--timeout" },
692
+ { flag: "--progress" },
693
+ { flag: "--env-set" },
694
+ { flag: "--env-clear" },
695
+ { flag: "--shared-host-safe" },
696
+ { flag: "--pm-context" },
697
+ { flag: "--override-linked-pm-context" },
698
+ { flag: "--fail-on-context-mismatch" },
699
+ { flag: "--fail-on-skipped" },
700
+ { flag: "--fail-on-empty-test-run" },
701
+ { flag: "--require-assertions-for-pm" },
702
+ { flag: "--check-context" },
703
+ { flag: "--auto-pm-context" },
704
+ { flag: "--author" },
705
+ { flag: "--message" },
706
+ { flag: "--force" },
707
+ ];
708
+ export const TEST_ALL_FLAG_CONTRACTS = [
709
+ { flag: "--status" },
710
+ { flag: "--limit" },
711
+ { flag: "--offset" },
712
+ { flag: "--background" },
713
+ { flag: "--timeout" },
714
+ { flag: "--progress" },
715
+ { flag: "--env-set" },
716
+ { flag: "--env-clear" },
717
+ { flag: "--shared-host-safe" },
718
+ { flag: "--pm-context" },
719
+ { flag: "--override-linked-pm-context" },
720
+ { flag: "--fail-on-context-mismatch" },
721
+ { flag: "--fail-on-skipped" },
722
+ { flag: "--fail-on-empty-test-run" },
723
+ { flag: "--require-assertions-for-pm" },
724
+ { flag: "--check-context" },
725
+ { flag: "--auto-pm-context" },
726
+ ];
727
+ export const TELEMETRY_FLAG_CONTRACTS = [
728
+ { flag: "--limit" },
729
+ ];
730
+ export const TEST_RUNS_FLAG_CONTRACTS = [
731
+ { flag: "--status" },
732
+ { flag: "--limit" },
733
+ { flag: "--stream" },
734
+ { flag: "--tail" },
735
+ { flag: "--force" },
736
+ { flag: "--author" },
737
+ ];
738
+ export const GC_FLAG_CONTRACTS = [
739
+ { flag: "--dry-run" },
740
+ { flag: "--scope" },
741
+ ];
742
+ export const STATS_FLAG_CONTRACTS = [
743
+ { flag: "--storage" },
744
+ { flag: "--metadata-coverage" },
745
+ { flag: "--field-utilization" },
746
+ { flag: "--by-assignee" },
747
+ { flag: "--by-tag" },
748
+ { flag: "--by-priority" },
749
+ { flag: "--tag-prefix" },
750
+ ];
751
+ export const HEALTH_FLAG_CONTRACTS = [
752
+ { flag: "--strict-directories" },
753
+ { flag: "--strict-exit" },
754
+ { flag: "--fail-on-warn" },
755
+ { flag: "--check-only" },
756
+ { flag: "--check-telemetry" },
757
+ { flag: "--no-refresh" },
758
+ { flag: "--refresh-vectors" },
759
+ { flag: "--verbose-stale-items" },
760
+ { flag: "--brief" },
761
+ { flag: "--summary" },
762
+ { flag: "--skip-vectors" },
763
+ { flag: "--skip-integrity" },
764
+ { flag: "--skip-drift" },
765
+ { flag: "--full" },
766
+ ];
767
+ export const VALIDATE_FLAG_CONTRACTS = [
768
+ { flag: "--check-metadata" },
769
+ { flag: "--metadata-profile" },
770
+ { flag: "--check-resolution" },
771
+ { flag: "--check-lifecycle" },
772
+ { flag: "--check-stale-blockers" },
773
+ { flag: "--dependency-cycle-severity" },
774
+ { flag: "--parent-cycle-severity" },
775
+ { flag: "--check-files" },
776
+ { flag: "--scan-mode" },
777
+ { flag: "--include-pm-internals" },
778
+ { flag: "--verbose-file-lists" },
779
+ { flag: "--verbose-diagnostics" },
780
+ { flag: "--all-affected-ids" },
781
+ { flag: "--strict-exit" },
782
+ { flag: "--fail-on-warn" },
783
+ { flag: "--fix-hints" },
784
+ { flag: "--auto-fix" },
785
+ { flag: "--dry-run" },
786
+ // NOT list:true — repeatable via Commander's collector; the bootstrap
787
+ // coalescer must not comma-join occurrences (values may also be
788
+ // comma-separated lists which the resolver splits itself).
789
+ { flag: "--fix-scope" },
790
+ { flag: "--prune-missing" },
791
+ { flag: "--check-history-drift" },
792
+ { flag: "--check-command-references" },
793
+ ];
794
+ export const CREATE_FLAG_CONTRACTS = [
795
+ { short: "-t", flag: "--title" },
796
+ { short: "-d", flag: "--description" },
797
+ { flag: "--type" },
798
+ { flag: "--template" },
799
+ { flag: "--create-mode" },
800
+ { flag: "--create_mode" },
801
+ { flag: "--schedule-preset" },
802
+ { flag: "--schedule_preset" },
803
+ { short: "-s", flag: "--status" },
804
+ { short: "-p", flag: "--priority" },
805
+ { flag: "--tags", aliases: ["--tag"], list: true },
806
+ // NOT list:true — these use Commander's repeatable collector. Marking them
807
+ // list:true would make the bootstrap coalescer comma-join repeated
808
+ // occurrences (`--add-tags '["a","b"]' --add-tags c` -> `["a","b"],c`),
809
+ // corrupting the JSON-array value form before parseTags sees it.
810
+ { flag: "--add-tags", aliases: ["--add_tags"] },
811
+ { short: "-b", flag: "--body" },
812
+ { flag: "--body-file" },
813
+ { flag: "--deadline" },
814
+ { flag: "--estimate" },
815
+ { flag: "--estimated-minutes" },
816
+ { flag: "--estimated_minutes" },
817
+ { flag: "--acceptance-criteria" },
818
+ { flag: "--acceptance_criteria" },
819
+ { flag: "--ac" },
820
+ { flag: "--author" },
821
+ { flag: "--message" },
822
+ { flag: "--assignee" },
823
+ { flag: "--parent" },
824
+ { flag: "--allow-missing-parent" },
825
+ { flag: "--reviewer" },
826
+ { flag: "--risk" },
827
+ { flag: "--confidence" },
828
+ { flag: "--sprint" },
829
+ { flag: "--release" },
830
+ { flag: "--blocked-by" },
831
+ { flag: "--blocked-reason" },
832
+ { flag: "--unblock-note" },
833
+ { flag: "--reporter" },
834
+ { flag: "--severity" },
835
+ { flag: "--environment" },
836
+ { flag: "--repro-steps" },
837
+ { flag: "--resolution" },
838
+ { flag: "--expected-result" },
839
+ { flag: "--actual-result" },
840
+ { flag: "--affected-version" },
841
+ { flag: "--fixed-version" },
842
+ { flag: "--component" },
843
+ { flag: "--regression" },
844
+ { flag: "--customer-impact" },
845
+ { flag: "--customer_impact" },
846
+ { flag: "--definition-of-ready" },
847
+ { flag: "--definition_of_ready" },
848
+ { flag: "--order" },
849
+ { flag: "--rank" },
850
+ { flag: "--goal" },
851
+ { flag: "--objective" },
852
+ { flag: "--value" },
853
+ { flag: "--impact" },
854
+ { flag: "--outcome" },
855
+ { flag: "--why-now" },
856
+ { flag: "--why_now" },
857
+ { flag: "--blocked_by" },
858
+ { flag: "--blocked_reason" },
859
+ { flag: "--unblock_note" },
860
+ { flag: "--repro_steps" },
861
+ { flag: "--expected_result" },
862
+ { flag: "--actual_result" },
863
+ { flag: "--expected" },
864
+ { flag: "--actual" },
865
+ { flag: "--affected_version" },
866
+ { flag: "--fixed_version" },
867
+ { flag: "--dep" },
868
+ { flag: "--type-option" },
869
+ { flag: "--type_option" },
870
+ { flag: "--field" },
871
+ { flag: "--reminder" },
872
+ { flag: "--event" },
873
+ { flag: "--comment" },
874
+ { flag: "--note" },
875
+ { flag: "--learning" },
876
+ { flag: "--file" },
877
+ { flag: "--test" },
878
+ { flag: "--doc" },
879
+ { flag: "--unset" },
880
+ { flag: "--clear-deps" },
881
+ { flag: "--clear-comments" },
882
+ { flag: "--clear-notes" },
883
+ { flag: "--clear-learnings" },
884
+ { flag: "--clear-files" },
885
+ { flag: "--clear-tests" },
886
+ { flag: "--clear-docs" },
887
+ { flag: "--clear-reminders" },
888
+ { flag: "--clear-events" },
889
+ { flag: "--clear-type-options" },
890
+ ];
891
+ export const COPY_FLAG_CONTRACTS = [
892
+ { flag: "--title" },
893
+ { flag: "--author" },
894
+ { flag: "--message" },
895
+ ];
896
+ export const FOCUS_FLAG_CONTRACTS = [
897
+ { flag: "--clear" },
898
+ ];
899
+ export const UPDATE_FLAG_CONTRACTS = [
900
+ { short: "-t", flag: "--title" },
901
+ { short: "-d", flag: "--description" },
902
+ { short: "-b", flag: "--body" },
903
+ { flag: "--body-file" },
904
+ { short: "-s", flag: "--status" },
905
+ { flag: "--close-reason" },
906
+ { flag: "--close_reason" },
907
+ { short: "-p", flag: "--priority" },
908
+ { flag: "--type" },
909
+ { flag: "--tags", aliases: ["--tag"], list: true },
910
+ // NOT list:true — Commander's repeatable collector accumulates these, so
911
+ // bootstrap coalescing must not comma-join repeated occurrences (it would
912
+ // corrupt JSON-array values like `--add-tags '["a","b"]' --add-tags c`).
913
+ { flag: "--add-tags", aliases: ["--add_tags"] },
914
+ { flag: "--remove-tags", aliases: ["--remove_tags"] },
915
+ { flag: "--deadline" },
916
+ { flag: "--estimate" },
917
+ { flag: "--estimated-minutes" },
918
+ { flag: "--estimated_minutes" },
919
+ { flag: "--acceptance-criteria" },
920
+ { flag: "--acceptance_criteria" },
921
+ { flag: "--ac" },
922
+ { flag: "--assignee" },
923
+ { flag: "--parent" },
924
+ { flag: "--reviewer" },
925
+ { flag: "--risk" },
926
+ { flag: "--confidence" },
927
+ { flag: "--sprint" },
928
+ { flag: "--release" },
929
+ { flag: "--blocked-by" },
930
+ { flag: "--blocked-reason" },
931
+ { flag: "--unblock-note" },
932
+ { flag: "--reporter" },
933
+ { flag: "--severity" },
934
+ { flag: "--environment" },
935
+ { flag: "--repro-steps" },
936
+ { flag: "--resolution" },
937
+ { flag: "--expected-result" },
938
+ { flag: "--actual-result" },
939
+ { flag: "--affected-version" },
940
+ { flag: "--fixed-version" },
941
+ { flag: "--fixed_version" },
942
+ { flag: "--component" },
943
+ { flag: "--regression" },
944
+ { flag: "--customer-impact" },
945
+ { flag: "--customer_impact" },
946
+ { flag: "--definition-of-ready" },
947
+ { flag: "--definition_of_ready" },
948
+ { flag: "--order" },
949
+ { flag: "--rank" },
950
+ { flag: "--goal" },
951
+ { flag: "--objective" },
952
+ { flag: "--value" },
953
+ { flag: "--impact" },
954
+ { flag: "--outcome" },
955
+ { flag: "--why-now" },
956
+ { flag: "--why_now" },
957
+ { flag: "--author" },
958
+ { flag: "--message" },
959
+ { flag: "--blocked_by" },
960
+ { flag: "--blocked_reason" },
961
+ { flag: "--unblock_note" },
962
+ { flag: "--repro_steps" },
963
+ { flag: "--expected_result" },
964
+ { flag: "--actual_result" },
965
+ { flag: "--expected" },
966
+ { flag: "--actual" },
967
+ { flag: "--affected_version" },
968
+ { flag: "--dep" },
969
+ { flag: "--dep-remove" },
970
+ { flag: "--dep_remove" },
971
+ { flag: "--replace-deps" },
972
+ { flag: "--replace-tests" },
973
+ { flag: "--comment" },
974
+ { flag: "--note" },
975
+ { flag: "--learning" },
976
+ { flag: "--file" },
977
+ { flag: "--test" },
978
+ { flag: "--doc" },
979
+ { flag: "--reminder" },
980
+ { flag: "--event" },
981
+ { flag: "--type-option" },
982
+ { flag: "--type_option" },
983
+ { flag: "--field" },
984
+ { flag: "--unset" },
985
+ { flag: "--clear-deps" },
986
+ { flag: "--clear-comments" },
987
+ { flag: "--clear-notes" },
988
+ { flag: "--clear-learnings" },
989
+ { flag: "--clear-files" },
990
+ { flag: "--clear-tests" },
991
+ { flag: "--clear-docs" },
992
+ { flag: "--clear-reminders" },
993
+ { flag: "--clear-events" },
994
+ { flag: "--clear-type-options" },
995
+ { flag: "--allow-audit-update" },
996
+ { flag: "--allow_audit_update" },
997
+ { flag: "--allow-audit-dep-update" },
998
+ { flag: "--allow_audit_dep_update" },
999
+ { flag: "--force" },
1000
+ ];
1001
+ export const UPDATE_MANY_FLAG_CONTRACTS = [
1002
+ { flag: "--filter-status" },
1003
+ { flag: "--filter-type" },
1004
+ { flag: "--filter-tag" },
1005
+ { flag: "--filter-priority" },
1006
+ { flag: "--filter-deadline-before" },
1007
+ { flag: "--filter-deadline-after" },
1008
+ { flag: "--filter-updated-after" },
1009
+ { flag: "--filter-updated-before" },
1010
+ { flag: "--filter-created-after" },
1011
+ { flag: "--filter-created-before" },
1012
+ { flag: "--filter-assignee" },
1013
+ { flag: "--filter-assignee-filter" },
1014
+ { flag: "--filter-assignee_filter" },
1015
+ { flag: "--filter-parent" },
1016
+ { flag: "--filter-sprint" },
1017
+ { flag: "--filter-release" },
1018
+ { flag: "--filter-ac-missing" },
1019
+ { flag: "--filter-estimates-missing", aliases: ["--filter-estimate-missing"] },
1020
+ { flag: "--filter-resolution-missing" },
1021
+ { flag: "--filter-metadata-missing" },
1022
+ { flag: "--filter-reviewer-missing" },
1023
+ { flag: "--filter-risk-missing" },
1024
+ { flag: "--filter-confidence-missing" },
1025
+ { flag: "--filter-sprint-missing" },
1026
+ { flag: "--filter-release-missing" },
1027
+ { flag: "--filter-has-notes" },
1028
+ { flag: "--filter-no-notes" },
1029
+ { flag: "--filter-has-learnings" },
1030
+ { flag: "--filter-no-learnings" },
1031
+ { flag: "--filter-has-files" },
1032
+ { flag: "--filter-no-files" },
1033
+ { flag: "--filter-has-docs" },
1034
+ { flag: "--filter-no-docs" },
1035
+ { flag: "--filter-has-tests" },
1036
+ { flag: "--filter-no-tests" },
1037
+ { flag: "--filter-has-comments" },
1038
+ { flag: "--filter-no-comments" },
1039
+ { flag: "--filter-has-deps" },
1040
+ { flag: "--filter-no-deps" },
1041
+ { flag: "--filter-has-body" },
1042
+ { flag: "--filter-empty-body" },
1043
+ { flag: "--filter-has-linked-command" },
1044
+ { flag: "--filter-no-linked-command" },
1045
+ { flag: "--ids", list: true },
1046
+ { flag: "--limit" },
1047
+ { flag: "--offset" },
1048
+ { flag: "--dry-run" },
1049
+ { flag: "--rollback" },
1050
+ { flag: "--no-checkpoint" },
1051
+ { short: "-t", flag: "--title" },
1052
+ { short: "-d", flag: "--description" },
1053
+ { short: "-b", flag: "--body" },
1054
+ { short: "-p", flag: "--priority" },
1055
+ { flag: "--type" },
1056
+ { flag: "--tags", aliases: ["--tag"], list: true },
1057
+ // NOT list:true — Commander's repeatable collector accumulates these, so
1058
+ // bootstrap coalescing must not comma-join repeated occurrences (it would
1059
+ // corrupt JSON-array values like `--add-tags '["a","b"]' --add-tags c`).
1060
+ { flag: "--add-tags", aliases: ["--add_tags"] },
1061
+ { flag: "--remove-tags", aliases: ["--remove_tags"] },
1062
+ { flag: "--deadline" },
1063
+ { flag: "--estimate" },
1064
+ { flag: "--estimated-minutes" },
1065
+ { flag: "--estimated_minutes" },
1066
+ { flag: "--acceptance-criteria" },
1067
+ { flag: "--acceptance_criteria" },
1068
+ { flag: "--ac" },
1069
+ { flag: "--definition-of-ready" },
1070
+ { flag: "--definition_of_ready" },
1071
+ { flag: "--order" },
1072
+ { flag: "--rank" },
1073
+ { flag: "--goal" },
1074
+ { flag: "--objective" },
1075
+ { flag: "--value" },
1076
+ { flag: "--impact" },
1077
+ { flag: "--outcome" },
1078
+ { flag: "--why-now" },
1079
+ { flag: "--why_now" },
1080
+ { flag: "--reviewer" },
1081
+ { flag: "--risk" },
1082
+ { flag: "--confidence" },
1083
+ { flag: "--sprint" },
1084
+ { flag: "--release" },
1085
+ { flag: "--reporter" },
1086
+ { flag: "--severity" },
1087
+ { flag: "--environment" },
1088
+ { flag: "--repro-steps" },
1089
+ { flag: "--repro_steps" },
1090
+ { flag: "--resolution" },
1091
+ { flag: "--expected-result" },
1092
+ { flag: "--expected_result" },
1093
+ { flag: "--expected" },
1094
+ { flag: "--actual-result" },
1095
+ { flag: "--actual_result" },
1096
+ { flag: "--actual" },
1097
+ { flag: "--affected-version" },
1098
+ { flag: "--affected_version" },
1099
+ { flag: "--fixed-version" },
1100
+ { flag: "--fixed_version" },
1101
+ { flag: "--component" },
1102
+ { flag: "--regression" },
1103
+ { flag: "--customer-impact" },
1104
+ { flag: "--customer_impact" },
1105
+ { flag: "--dep" },
1106
+ { flag: "--dep-remove" },
1107
+ { flag: "--dep_remove" },
1108
+ { flag: "--replace-deps" },
1109
+ { flag: "--replace-tests" },
1110
+ { flag: "--comment" },
1111
+ { flag: "--note" },
1112
+ { flag: "--learning" },
1113
+ { flag: "--file" },
1114
+ { flag: "--test" },
1115
+ { flag: "--doc" },
1116
+ { flag: "--reminder" },
1117
+ { flag: "--event" },
1118
+ { flag: "--type-option" },
1119
+ { flag: "--type_option" },
1120
+ { flag: "--unset" },
1121
+ { flag: "--clear-deps" },
1122
+ { flag: "--clear-comments" },
1123
+ { flag: "--clear-notes" },
1124
+ { flag: "--clear-learnings" },
1125
+ { flag: "--clear-files" },
1126
+ { flag: "--clear-tests" },
1127
+ { flag: "--clear-docs" },
1128
+ { flag: "--clear-reminders" },
1129
+ { flag: "--clear-events" },
1130
+ { flag: "--clear-type-options" },
1131
+ { flag: "--allow-audit-update" },
1132
+ { flag: "--allow_audit_update" },
1133
+ { flag: "--allow-audit-dep-update" },
1134
+ { flag: "--allow_audit_dep_update" },
1135
+ { flag: "--author" },
1136
+ { flag: "--message" },
1137
+ { flag: "--force" },
1138
+ ];
1139
+ export const NORMALIZE_FLAG_CONTRACTS = [
1140
+ { flag: "--filter-status" },
1141
+ { flag: "--filter-type" },
1142
+ { flag: "--filter-tag" },
1143
+ { flag: "--filter-priority" },
1144
+ { flag: "--filter-deadline-before" },
1145
+ { flag: "--filter-deadline-after" },
1146
+ { flag: "--filter-assignee" },
1147
+ { flag: "--filter-assignee-filter" },
1148
+ { flag: "--filter-assignee_filter" },
1149
+ { flag: "--filter-parent" },
1150
+ { flag: "--filter-sprint" },
1151
+ { flag: "--filter-release" },
1152
+ { flag: "--limit" },
1153
+ { flag: "--offset" },
1154
+ { flag: "--dry-run" },
1155
+ { flag: "--apply" },
1156
+ { flag: "--author" },
1157
+ { flag: "--message" },
1158
+ { flag: "--allow-audit-update" },
1159
+ { flag: "--allow_audit_update" },
1160
+ { flag: "--force" },
1161
+ ];
1162
+ export const CALENDAR_FLAG_CONTRACTS = [
1163
+ { flag: "--view" },
1164
+ { flag: "--date" },
1165
+ { flag: "--from" },
1166
+ { flag: "--to" },
1167
+ { flag: "--past" },
1168
+ { flag: "--full-period" },
1169
+ { flag: "--full_period" },
1170
+ { flag: "--type" },
1171
+ { flag: "--tag" },
1172
+ { flag: "--priority" },
1173
+ { flag: "--status" },
1174
+ { flag: "--assignee" },
1175
+ { flag: "--assignee-filter" },
1176
+ { flag: "--assignee_filter" },
1177
+ { flag: "--sprint" },
1178
+ { flag: "--release" },
1179
+ { flag: "--include" },
1180
+ { flag: "--recurrence-lookahead-days" },
1181
+ { flag: "--recurrence-lookback-days" },
1182
+ { flag: "--occurrence-limit" },
1183
+ { flag: "--limit" },
1184
+ { flag: "--format" },
1185
+ ];
1186
+ export const ACTIVITY_FLAG_CONTRACTS = [
1187
+ { flag: "--id" },
1188
+ { flag: "--op" },
1189
+ { flag: "--author" },
1190
+ { flag: "--from" },
1191
+ { flag: "--to" },
1192
+ { flag: "--limit" },
1193
+ { flag: "--compact" },
1194
+ { flag: "--full" },
1195
+ { flag: "--stream" },
1196
+ ];
1197
+ export const CONTEXT_FLAG_CONTRACTS = [
1198
+ { flag: "--date" },
1199
+ { flag: "--from" },
1200
+ { flag: "--to" },
1201
+ { flag: "--past" },
1202
+ { flag: "--type" },
1203
+ { flag: "--tag" },
1204
+ { flag: "--priority" },
1205
+ { flag: "--assignee" },
1206
+ { flag: "--assignee-filter" },
1207
+ { flag: "--assignee_filter" },
1208
+ { flag: "--sprint" },
1209
+ { flag: "--release" },
1210
+ { flag: "--parent" },
1211
+ { flag: "--limit" },
1212
+ { flag: "--format" },
1213
+ { flag: "--depth" },
1214
+ { flag: "--fields", list: true },
1215
+ { flag: "--section" },
1216
+ { flag: "--activity-limit" },
1217
+ { flag: "--stale-threshold" },
1218
+ ];
1219
+ export const GET_FLAG_CONTRACTS = [
1220
+ { flag: "--depth" },
1221
+ { flag: "--full" },
1222
+ { flag: "--fields", list: true },
1223
+ { flag: "--tree" },
1224
+ { flag: "--tree-depth" },
1225
+ { flag: "--tree_depth" },
1226
+ { flag: "--format" },
1227
+ ];
1228
+ export const GUIDE_FLAG_CONTRACTS = [
1229
+ { flag: "--list" },
1230
+ { flag: "--format" },
1231
+ { flag: "--depth" },
1232
+ ];
1233
+ export const DEPS_FLAG_CONTRACTS = [
1234
+ { flag: "--format" },
1235
+ { flag: "--max-depth" },
1236
+ { flag: "--collapse" },
1237
+ { flag: "--summary" },
1238
+ ];
1239
+ export const EVAL_FLAG_CONTRACTS = [
1240
+ { flag: "--mode" },
1241
+ { flag: "--k" },
1242
+ { flag: "--fail-under" },
1243
+ { flag: "--queries" },
1244
+ { flag: "--format" },
1245
+ ];
1246
+ export const NEXT_FLAG_CONTRACTS = [
1247
+ { flag: "--type" },
1248
+ { flag: "--tag" },
1249
+ { flag: "--priority" },
1250
+ { flag: "--assignee" },
1251
+ { flag: "--assignee-filter" },
1252
+ { flag: "--assignee_filter" },
1253
+ { flag: "--sprint" },
1254
+ { flag: "--release" },
1255
+ { flag: "--parent" },
1256
+ { flag: "--limit" },
1257
+ { flag: "--blocked-limit" },
1258
+ { flag: "--blocked_limit" },
1259
+ { flag: "--ready-only" },
1260
+ { flag: "--ready_only" },
1261
+ { flag: "--format" },
1262
+ ];
1263
+ export const SEARCH_FLAG_CONTRACTS = [
1264
+ { flag: "--mode" },
1265
+ { flag: "--semantic" },
1266
+ { flag: "--hybrid" },
1267
+ { flag: "--match-mode" },
1268
+ { flag: "--min-score" },
1269
+ { flag: "--count" },
1270
+ { flag: "--semantic-weight" },
1271
+ { flag: "--include-linked" },
1272
+ { flag: "--title-exact" },
1273
+ { flag: "--phrase-exact" },
1274
+ { flag: "--highlight" },
1275
+ { flag: "--compact" },
1276
+ { flag: "--full" },
1277
+ { flag: "--fields", list: true },
1278
+ { flag: "--format" },
1279
+ { flag: "--limit" },
1280
+ { flag: "--status", list: true },
1281
+ { flag: "--type" },
1282
+ { flag: "--tag", aliases: ["--tags"] },
1283
+ { flag: "--priority" },
1284
+ { flag: "--deadline-before" },
1285
+ { flag: "--deadline-after" },
1286
+ { flag: "--updated-after" },
1287
+ { flag: "--updated-before" },
1288
+ { flag: "--created-after" },
1289
+ { flag: "--created-before" },
1290
+ { flag: "--assignee" },
1291
+ { flag: "--sprint" },
1292
+ { flag: "--release" },
1293
+ { flag: "--parent" },
1294
+ { flag: "--filter-reviewer-missing" },
1295
+ { flag: "--filter-risk-missing" },
1296
+ { flag: "--filter-confidence-missing" },
1297
+ { flag: "--filter-sprint-missing" },
1298
+ { flag: "--filter-release-missing" },
1299
+ { flag: "--has-notes" },
1300
+ { flag: "--no-notes" },
1301
+ { flag: "--has-learnings" },
1302
+ { flag: "--no-learnings" },
1303
+ { flag: "--has-files" },
1304
+ { flag: "--no-files" },
1305
+ { flag: "--has-docs" },
1306
+ { flag: "--no-docs" },
1307
+ { flag: "--has-tests" },
1308
+ { flag: "--no-tests" },
1309
+ { flag: "--has-comments" },
1310
+ { flag: "--no-comments" },
1311
+ { flag: "--has-deps" },
1312
+ { flag: "--no-deps" },
1313
+ { flag: "--has-body" },
1314
+ { flag: "--empty-body" },
1315
+ { flag: "--has-linked-command" },
1316
+ { flag: "--no-linked-command" },
1317
+ ];
1318
+ export const CONTRACTS_FLAG_CONTRACTS = [
1319
+ { flag: "--action" },
1320
+ { flag: "--command" },
1321
+ { flag: "--schema-only" },
1322
+ { flag: "--flags-only" },
1323
+ { flag: "--availability-only" },
1324
+ { flag: "--runtime-only" },
1325
+ { flag: "--active-only" },
1326
+ { flag: "--full" },
1327
+ ];
1328
+ export const COMPLETION_FLAG_CONTRACTS = [
1329
+ { flag: "--eager-tags" },
1330
+ ];
1331
+ /**
1332
+ * Deduplicates flag contracts by their `flag`/`short`/`aliases` identity,
1333
+ * preserving first-seen order. Used when merging the shared subcommand-global
1334
+ * flags into a command's own contracts so a flag declared by both surfaces is
1335
+ * registered only once.
1336
+ */
1337
+ export function toUniqueFlagContracts(contracts) {
1338
+ const seen = new Set();
1339
+ const unique = [];
1340
+ for (const contract of contracts) {
1341
+ const aliasKey = (contract.aliases ?? []).join(",");
1342
+ const key = `${contract.flag}|${contract.short ?? ""}|${aliasKey}`;
1343
+ if (seen.has(key)) {
1344
+ continue;
1345
+ }
1346
+ seen.add(key);
1347
+ unique.push(contract);
1348
+ }
1349
+ return unique;
1350
+ }
1351
+ function withSubcommandGlobalFlags(contracts) {
1352
+ return withFlagAliasMetadata(toUniqueFlagContracts([...SUBCOMMAND_GLOBAL_FLAG_CONTRACTS, ...contracts]));
1353
+ }
1354
+ const LIST_COMMAND_FLAG_ALIASES = [
1355
+ "list",
1356
+ "list-all",
1357
+ "list-draft",
1358
+ "list-open",
1359
+ "list-in-progress",
1360
+ "list-blocked",
1361
+ "list-closed",
1362
+ "list-canceled",
1363
+ ];
1364
+ // Single-token command (plus the `list`/`cal`/`ctx`/`templates` aliases) → its
1365
+ // dedicated flag-contract table. Lookups fall back to the subcommand-global set,
1366
+ // so tokens absent here (`reindex`, `help`, or any unknown command) degrade to
1367
+ // globals exactly as the prior `switch` `default` arm did. A `Map` (rather than a
1368
+ // plain object) keeps an untrusted command token from ever resolving an inherited
1369
+ // member such as `constructor` or `toString`.
1370
+ const SUBCOMMAND_FLAG_CONTRACTS_BY_COMMAND = new Map([
1371
+ ...LIST_COMMAND_FLAG_ALIASES.map((command) => [command, LIST_FILTER_FLAG_CONTRACTS]),
1372
+ ["templates", CREATE_FLAG_CONTRACTS],
1373
+ ["cal", CALENDAR_FLAG_CONTRACTS],
1374
+ ["ctx", CONTEXT_FLAG_CONTRACTS],
1375
+ ["test-runs-worker", TEST_RUNS_FLAG_CONTRACTS],
1376
+ ["init", INIT_FLAG_CONTRACTS],
1377
+ ["config", CONFIG_FLAG_CONTRACTS],
1378
+ ["extension", EXTENSION_FLAG_CONTRACTS],
1379
+ // `--declarative` is package-only (see PACKAGE_FLAG_CONTRACTS).
1380
+ ["package", PACKAGE_FLAG_CONTRACTS],
1381
+ ["packages", PACKAGE_FLAG_CONTRACTS],
1382
+ ["install", INSTALL_FLAG_CONTRACTS],
1383
+ ["upgrade", UPGRADE_FLAG_CONTRACTS],
1384
+ ["create", CREATE_FLAG_CONTRACTS],
1385
+ ["copy", COPY_FLAG_CONTRACTS],
1386
+ ["focus", FOCUS_FLAG_CONTRACTS],
1387
+ ["aggregate", AGGREGATE_FLAG_CONTRACTS],
1388
+ ["dedupe-audit", DEDUPE_AUDIT_FLAG_CONTRACTS],
1389
+ ["dedupe-merge", DEDUPE_MERGE_FLAG_CONTRACTS],
1390
+ ["normalize", NORMALIZE_FLAG_CONTRACTS],
1391
+ ["calendar", CALENDAR_FLAG_CONTRACTS],
1392
+ ["context", CONTEXT_FLAG_CONTRACTS],
1393
+ ["get", GET_FLAG_CONTRACTS],
1394
+ ["guide", GUIDE_FLAG_CONTRACTS],
1395
+ ["search", SEARCH_FLAG_CONTRACTS],
1396
+ ["next", NEXT_FLAG_CONTRACTS],
1397
+ ["eval", EVAL_FLAG_CONTRACTS],
1398
+ ["history", HISTORY_FLAG_CONTRACTS],
1399
+ ["history-redact", HISTORY_REDACT_FLAG_CONTRACTS],
1400
+ ["history-repair", HISTORY_REPAIR_FLAG_CONTRACTS],
1401
+ ["history-compact", HISTORY_COMPACT_FLAG_CONTRACTS],
1402
+ ["schema", SCHEMA_FLAG_CONTRACTS],
1403
+ ["profile", PROFILE_FLAG_CONTRACTS],
1404
+ ["plan", PLAN_FLAG_CONTRACTS],
1405
+ ["activity", ACTIVITY_FLAG_CONTRACTS],
1406
+ ["restore", RESTORE_FLAG_CONTRACTS],
1407
+ ["update", UPDATE_FLAG_CONTRACTS],
1408
+ ["update-many", UPDATE_MANY_FLAG_CONTRACTS],
1409
+ ["close", CLOSE_FLAG_CONTRACTS],
1410
+ ["close-many", CLOSE_MANY_FLAG_CONTRACTS],
1411
+ ["delete", DELETE_FLAG_CONTRACTS],
1412
+ ["append", APPEND_FLAG_CONTRACTS],
1413
+ ["comments", COMMENTS_FLAG_CONTRACTS],
1414
+ ["comments-audit", COMMENTS_AUDIT_FLAG_CONTRACTS],
1415
+ ["notes", NOTES_FLAG_CONTRACTS],
1416
+ ["learnings", LEARNINGS_FLAG_CONTRACTS],
1417
+ ["files", FILES_FLAG_CONTRACTS],
1418
+ ["docs", DOCS_FLAG_CONTRACTS],
1419
+ ["deps", DEPS_FLAG_CONTRACTS],
1420
+ ["test", TEST_FLAG_CONTRACTS],
1421
+ ["test-all", TEST_ALL_FLAG_CONTRACTS],
1422
+ ["telemetry", TELEMETRY_FLAG_CONTRACTS],
1423
+ ["health", HEALTH_FLAG_CONTRACTS],
1424
+ ["validate", VALIDATE_FLAG_CONTRACTS],
1425
+ ["gc", GC_FLAG_CONTRACTS],
1426
+ ["stats", STATS_FLAG_CONTRACTS],
1427
+ ["contracts", CONTRACTS_FLAG_CONTRACTS],
1428
+ ["completion", COMPLETION_FLAG_CONTRACTS],
1429
+ ["claim", CLAIM_FLAG_CONTRACTS],
1430
+ ["release", RELEASE_FLAG_CONTRACTS],
1431
+ ["start-task", START_TASK_FLAG_CONTRACTS],
1432
+ ["pause-task", PAUSE_TASK_FLAG_CONTRACTS],
1433
+ ["close-task", CLOSE_TASK_FLAG_CONTRACTS],
1434
+ ["meet", MEET_FLAG_CONTRACTS],
1435
+ ["event", EVENT_FLAG_CONTRACTS],
1436
+ ["remind", REMIND_FLAG_CONTRACTS],
1437
+ ]);
1438
+ // `extension`/`package`/`packages <subcommand>` lifecycle flag tables. `init` is
1439
+ // resolved separately because its `--declarative` flag is package-only; every
1440
+ // other lifecycle subcommand shares one table across the extension and package
1441
+ // command roots.
1442
+ const EXTENSION_LIFECYCLE_FLAG_CONTRACTS_BY_SUBCOMMAND = new Map([
1443
+ ["install", EXTENSION_INSTALL_FLAG_CONTRACTS],
1444
+ ["uninstall", EXTENSION_UNINSTALL_FLAG_CONTRACTS],
1445
+ ["explore", EXTENSION_EXPLORE_FLAG_CONTRACTS],
1446
+ ["manage", EXTENSION_MANAGE_FLAG_CONTRACTS],
1447
+ ["describe", EXTENSION_DESCRIBE_FLAG_CONTRACTS],
1448
+ ["reload", EXTENSION_RELOAD_FLAG_CONTRACTS],
1449
+ ["doctor", EXTENSION_DOCTOR_FLAG_CONTRACTS],
1450
+ ["catalog", EXTENSION_CATALOG_FLAG_CONTRACTS],
1451
+ ["adopt", EXTENSION_ADOPT_FLAG_CONTRACTS],
1452
+ ["adopt-all", EXTENSION_ADOPT_ALL_FLAG_CONTRACTS],
1453
+ ["activate", EXTENSION_ACTIVATE_FLAG_CONTRACTS],
1454
+ ["deactivate", EXTENSION_DEACTIVATE_FLAG_CONTRACTS],
1455
+ ]);
1456
+ function normalizeCommandNameForContracts(commandName) {
1457
+ if (typeof commandName !== "string") {
1458
+ return "";
1459
+ }
1460
+ return commandName.trim().toLowerCase();
1461
+ }
1462
+ /**
1463
+ * Resolves the flag contracts an `extension`/`package <subcommand>` lifecycle
1464
+ * invocation accepts. `init` carries the package-only `--declarative` flag, so
1465
+ * `package`/`packages init` resolve to the package init table while `extension
1466
+ * init` resolves to the extension init table; every other lifecycle subcommand
1467
+ * shares one table, and an unknown subcommand falls back to globals-only.
1468
+ */
1469
+ function resolveExtensionLifecycleFlagContracts(rootCommand, lifecycleSubcommand) {
1470
+ if (lifecycleSubcommand === "init") {
1471
+ // `--declarative` is package-only, so `package init` / `packages init` carry it.
1472
+ return rootCommand === "extension" ? EXTENSION_INIT_FLAG_CONTRACTS : PACKAGE_INIT_FLAG_CONTRACTS;
1473
+ }
1474
+ return EXTENSION_LIFECYCLE_FLAG_CONTRACTS_BY_SUBCOMMAND.get(lifecycleSubcommand) ?? [];
1475
+ }
1476
+ /**
1477
+ * Resolves the flag contracts a given command (or list/extension subcommand)
1478
+ * accepts, merged with the shared subcommand-global flags. Returns the global
1479
+ * set for unknown or surface-less commands so completion and validation degrade
1480
+ * gracefully.
1481
+ */
1482
+ export function resolveSubcommandFlagContractsForCommand(commandName) {
1483
+ const normalized = normalizeCommandNameForContracts(commandName);
1484
+ if (normalized.length === 0) {
1485
+ return withSubcommandGlobalFlags([]);
1486
+ }
1487
+ const [rootCommand, lifecycleSubcommand, ...extraParts] = normalized.split(/\s+/);
1488
+ if ((rootCommand === "extension" || rootCommand === "package" || rootCommand === "packages") &&
1489
+ lifecycleSubcommand !== undefined &&
1490
+ extraParts.length === 0) {
1491
+ return withSubcommandGlobalFlags(resolveExtensionLifecycleFlagContracts(rootCommand, lifecycleSubcommand));
1492
+ }
1493
+ return withSubcommandGlobalFlags(SUBCOMMAND_FLAG_CONTRACTS_BY_COMMAND.get(normalized) ?? []);
1494
+ }
1495
+ /**
1496
+ * Renders a space-separated, de-duplicated list of every flag spelling (short,
1497
+ * canonical, and aliases) for shell-completion candidate generation, optionally
1498
+ * appending the shared subcommand-global flags.
1499
+ */
1500
+ export function toCompletionFlagString(flagContracts, includeGlobal = true) {
1501
+ const aliasAwareContracts = withFlagAliasMetadata(flagContracts);
1502
+ const scoped = aliasAwareContracts
1503
+ .flatMap((entry) => [entry.short, entry.flag, ...(entry.aliases ?? [])])
1504
+ .filter((value) => Boolean(value));
1505
+ const all = includeGlobal
1506
+ ? [
1507
+ ...scoped,
1508
+ ...SUBCOMMAND_GLOBAL_FLAG_CONTRACTS.flatMap((entry) => [entry.short, entry.flag, ...(entry.aliases ?? [])]).filter((value) => Boolean(value)),
1509
+ ]
1510
+ : scoped;
1511
+ return normalizeUniqueStringList(all).join(" ");
1512
+ }
1513
+ //# sourceMappingURL=flag-contracts.js.map
1514
+ //# debugId=ad4e11af-1bc5-5eda-8cc6-cd6e83a80749