@unbrained/pm-cli 2026.7.2 → 2026.7.3

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 (476) hide show
  1. package/.claude-plugin/marketplace.json +3 -3
  2. package/CHANGELOG.md +19 -0
  3. package/CONTRIBUTING.md +2 -2
  4. package/README.md +1 -1
  5. package/dist/cli/commander-usage.js +54 -41
  6. package/dist/cli/commander-usage.js.map +1 -1
  7. package/dist/cli/commands/activity.js +79 -57
  8. package/dist/cli/commands/activity.js.map +1 -1
  9. package/dist/cli/commands/close-many.js +106 -65
  10. package/dist/cli/commands/close-many.js.map +1 -1
  11. package/dist/cli/commands/create.js +32 -17
  12. package/dist/cli/commands/create.js.map +1 -1
  13. package/dist/cli/commands/extension/doctor.js +56 -67
  14. package/dist/cli/commands/extension/doctor.js.map +1 -1
  15. package/dist/cli/commands/extension/shared.js +21 -15
  16. package/dist/cli/commands/extension/shared.js.map +1 -1
  17. package/dist/cli/commands/health.js +101 -112
  18. package/dist/cli/commands/health.js.map +1 -1
  19. package/dist/cli/commands/init-agent-guidance.js +32 -19
  20. package/dist/cli/commands/init-agent-guidance.js.map +1 -1
  21. package/dist/cli/commands/next.js +13 -10
  22. package/dist/cli/commands/next.js.map +1 -1
  23. package/dist/cli/commands/profile.js +23 -15
  24. package/dist/cli/commands/profile.js.map +1 -1
  25. package/dist/cli/commands/validate.d.ts +2 -0
  26. package/dist/cli/commands/validate.js +14 -2
  27. package/dist/cli/commands/validate.js.map +1 -1
  28. package/dist/cli/error-guidance.js +9 -6
  29. package/dist/cli/error-guidance.js.map +1 -1
  30. package/dist/cli/extension-command-help.js +27 -19
  31. package/dist/cli/extension-command-help.js.map +1 -1
  32. package/dist/cli/help-json-payload.js +57 -49
  33. package/dist/cli/help-json-payload.js.map +1 -1
  34. package/dist/cli/main.js +48 -32
  35. package/dist/cli/main.js.map +1 -1
  36. package/dist/cli/register-list-query.js +213 -213
  37. package/dist/cli/register-list-query.js.map +1 -1
  38. package/dist/cli/register-mutation.js +368 -368
  39. package/dist/cli/register-mutation.js.map +1 -1
  40. package/dist/cli/register-operations.js +303 -299
  41. package/dist/cli/register-operations.js.map +1 -1
  42. package/dist/cli/registration-helpers.d.ts +4 -0
  43. package/dist/cli/registration-helpers.js +45 -56
  44. package/dist/cli/registration-helpers.js.map +1 -1
  45. package/dist/cli-bundle/chunks/{activity-CUC4JY3U.js → activity-5YWLSPGE.js} +9 -9
  46. package/dist/cli-bundle/chunks/activity-BIML7K2D.js +16 -0
  47. package/dist/cli-bundle/chunks/{aggregate-SW5PNGCS.js → aggregate-2V2M3JZU.js} +8 -8
  48. package/dist/cli-bundle/chunks/{aggregate-DKUTRY6R.js → aggregate-EK7DXML7.js} +8 -8
  49. package/dist/cli-bundle/chunks/{append-UBM632FK.js → append-EZESUVJT.js} +8 -8
  50. package/dist/cli-bundle/chunks/{append-H32VOR2Y.js → append-JFG4WQMG.js} +8 -8
  51. package/dist/cli-bundle/chunks/{chunk-XTHQWXVC.js → chunk-32IUNTG4.js} +5 -5
  52. package/dist/cli-bundle/chunks/{chunk-IEEJQCZ4.js → chunk-3W2HJKJX.js} +3 -3
  53. package/dist/cli-bundle/chunks/{chunk-MNBPX5JS.js → chunk-4EXFFP7T.js} +42 -27
  54. package/dist/cli-bundle/chunks/{chunk-MNBPX5JS.js.map → chunk-4EXFFP7T.js.map} +2 -2
  55. package/dist/cli-bundle/chunks/{chunk-JMK5GCK2.js → chunk-4PFVUUYV.js} +2 -2
  56. package/dist/cli-bundle/chunks/{chunk-NRZS637N.js → chunk-4WB6S4YX.js} +56 -21
  57. package/dist/cli-bundle/chunks/chunk-4WB6S4YX.js.map +1 -0
  58. package/dist/cli-bundle/chunks/{chunk-5GVTFFTC.js → chunk-572FKBRL.js} +61 -102
  59. package/dist/cli-bundle/chunks/chunk-572FKBRL.js.map +1 -0
  60. package/dist/cli-bundle/chunks/{chunk-MRD4T5LF.js → chunk-5E7N4T2Z.js} +2 -2
  61. package/dist/cli-bundle/chunks/{chunk-S62UANU7.js → chunk-5IZUBZBR.js} +3 -3
  62. package/dist/cli-bundle/chunks/{chunk-BTX5MIQF.js → chunk-5JIWFWOZ.js} +2 -2
  63. package/dist/cli-bundle/chunks/{chunk-SYVUU7EK.js → chunk-67LARBDL.js} +9 -9
  64. package/dist/cli-bundle/chunks/{chunk-KIYCOJ63.js → chunk-6CDCWKSX.js} +4 -4
  65. package/dist/cli-bundle/chunks/{chunk-JXAUVO6X.js → chunk-6KRFL33E.js} +55 -20
  66. package/dist/cli-bundle/chunks/chunk-6KRFL33E.js.map +7 -0
  67. package/dist/cli-bundle/chunks/{chunk-3LCUASYG.js → chunk-6NYJGMTY.js} +2 -2
  68. package/dist/cli-bundle/chunks/{chunk-2ASNV4DH.js → chunk-7CLLC75T.js} +4 -4
  69. package/dist/cli-bundle/chunks/{chunk-FFOQHGNH.js → chunk-7LYO6S5A.js} +8 -8
  70. package/dist/cli-bundle/chunks/{chunk-55XRYWEG.js → chunk-A3OQ7TFW.js} +8 -8
  71. package/dist/cli-bundle/chunks/{chunk-Q6K2OACU.js → chunk-AIKU3IIL.js} +7 -7
  72. package/dist/cli-bundle/chunks/{chunk-AIAIXG7I.js → chunk-AJHYQCBJ.js} +39 -5
  73. package/dist/cli-bundle/chunks/chunk-AJHYQCBJ.js.map +7 -0
  74. package/dist/cli-bundle/chunks/{chunk-TTHCEV5Q.js → chunk-BE2SR6QL.js} +4 -4
  75. package/dist/cli-bundle/chunks/{chunk-GFMSLORL.js → chunk-BI4R7HI2.js} +75 -53
  76. package/dist/cli-bundle/chunks/chunk-BI4R7HI2.js.map +7 -0
  77. package/dist/cli-bundle/chunks/{chunk-K2VYLVX4.js → chunk-CXR3CMBQ.js} +33 -6
  78. package/dist/cli-bundle/chunks/chunk-CXR3CMBQ.js.map +1 -0
  79. package/dist/cli-bundle/chunks/{chunk-7W4H4K26.js → chunk-ECU6MMTQ.js} +10 -10
  80. package/dist/cli-bundle/chunks/{chunk-YLZZ6T54.js → chunk-EJ2OCBHF.js} +23 -8
  81. package/dist/cli-bundle/chunks/chunk-EJ2OCBHF.js.map +1 -0
  82. package/dist/cli-bundle/chunks/{chunk-5PGBHRY3.js → chunk-EQURFOMH.js} +2 -2
  83. package/dist/cli-bundle/chunks/{chunk-H4GRLYJS.js → chunk-ER4ME5U2.js} +3 -3
  84. package/dist/cli-bundle/chunks/{chunk-QH3FSKRJ.js → chunk-ERG65A2L.js} +2 -2
  85. package/dist/cli-bundle/chunks/{chunk-UWKEJMZU.js → chunk-F6WNBITZ.js} +7 -7
  86. package/dist/cli-bundle/chunks/{chunk-U2BEEM2X.js → chunk-FH2H3CBD.js} +3 -3
  87. package/dist/cli-bundle/chunks/{chunk-EUKTMRN3.js → chunk-FUFFPIYA.js} +2 -2
  88. package/dist/cli-bundle/chunks/{chunk-7MYWF4ZX.js → chunk-FZJM2TXF.js} +7 -7
  89. package/dist/cli-bundle/chunks/{chunk-CYBDUHNO.js → chunk-GUYNUXQT.js} +3 -3
  90. package/dist/cli-bundle/chunks/{chunk-ZNT7KEWE.js → chunk-GVJE5T7Q.js} +2 -2
  91. package/dist/cli-bundle/chunks/{chunk-SYNKD3ZG.js → chunk-HB4FAT3O.js} +42 -60
  92. package/dist/cli-bundle/chunks/chunk-HB4FAT3O.js.map +7 -0
  93. package/dist/cli-bundle/chunks/{chunk-XEWQKDYZ.js → chunk-HQAF23Q2.js} +8 -8
  94. package/dist/cli-bundle/chunks/{chunk-KLXF7NCC.js → chunk-JBZ2NTKX.js} +2 -2
  95. package/dist/cli-bundle/chunks/{chunk-SPM2XLWI.js → chunk-JPATY4SE.js} +22 -7
  96. package/dist/cli-bundle/chunks/chunk-JPATY4SE.js.map +7 -0
  97. package/dist/cli-bundle/chunks/{chunk-4NUOWFBT.js → chunk-K5DT2YKM.js} +7 -7
  98. package/dist/cli-bundle/chunks/{chunk-KCO2EAN5.js → chunk-KEZOIPCR.js} +3 -3
  99. package/dist/cli-bundle/chunks/{chunk-7NSPKJUS.js → chunk-KHVGM5CS.js} +113 -83
  100. package/dist/cli-bundle/chunks/chunk-KHVGM5CS.js.map +7 -0
  101. package/dist/cli-bundle/chunks/{chunk-66Z3X7ZG.js → chunk-KS6ATO47.js} +33 -20
  102. package/dist/cli-bundle/chunks/{chunk-66Z3X7ZG.js.map → chunk-KS6ATO47.js.map} +2 -2
  103. package/dist/cli-bundle/chunks/{chunk-I66WE2HE.js → chunk-L4SLHV6G.js} +112 -82
  104. package/dist/cli-bundle/chunks/chunk-L4SLHV6G.js.map +1 -0
  105. package/dist/cli-bundle/chunks/{chunk-2227673O.js → chunk-LBE5QFMZ.js} +7 -7
  106. package/dist/cli-bundle/chunks/{chunk-YPKFV2JR.js → chunk-LCWQP6NM.js} +76 -54
  107. package/dist/cli-bundle/chunks/chunk-LCWQP6NM.js.map +1 -0
  108. package/dist/cli-bundle/chunks/{chunk-UGLU6Q2I.js → chunk-LOWVNZBZ.js} +4 -4
  109. package/dist/cli-bundle/chunks/{chunk-Y4NRKBFW.js → chunk-MDHWWBNZ.js} +3 -3
  110. package/dist/cli-bundle/chunks/{chunk-LRKMWUUV.js → chunk-MEZZZBYX.js} +2 -2
  111. package/dist/cli-bundle/chunks/{chunk-6YCYF2AI.js → chunk-MHRS5FUX.js} +34 -21
  112. package/dist/cli-bundle/chunks/{chunk-6YCYF2AI.js.map → chunk-MHRS5FUX.js.map} +1 -1
  113. package/dist/cli-bundle/chunks/{chunk-Q6NXOHS6.js → chunk-NOIEVOK5.js} +7 -7
  114. package/dist/cli-bundle/chunks/{chunk-GRRG3MCT.js → chunk-NZ7QIUP5.js} +4 -4
  115. package/dist/cli-bundle/chunks/{chunk-TPOFWBMY.js → chunk-OGLGI22K.js} +26 -20
  116. package/dist/cli-bundle/chunks/chunk-OGLGI22K.js.map +1 -0
  117. package/dist/cli-bundle/chunks/{chunk-ZNHEYCDD.js → chunk-P5L7Z2O6.js} +2 -2
  118. package/dist/cli-bundle/chunks/{chunk-6ZMBJRDJ.js → chunk-PULUSQAV.js} +9 -9
  119. package/dist/cli-bundle/chunks/{chunk-EMPGXBUF.js → chunk-QCDTQCMW.js} +2 -2
  120. package/dist/cli-bundle/chunks/{chunk-OTUJZKGI.js → chunk-QNNQAAZ5.js} +24 -18
  121. package/dist/cli-bundle/chunks/{chunk-OTUJZKGI.js.map → chunk-QNNQAAZ5.js.map} +1 -1
  122. package/dist/cli-bundle/chunks/{chunk-XWGEMNBR.js → chunk-RAHINBVP.js} +60 -101
  123. package/dist/cli-bundle/chunks/chunk-RAHINBVP.js.map +7 -0
  124. package/dist/cli-bundle/chunks/{chunk-AJEBCRIY.js → chunk-RJH5VQHW.js} +43 -61
  125. package/dist/cli-bundle/chunks/chunk-RJH5VQHW.js.map +1 -0
  126. package/dist/cli-bundle/chunks/{chunk-HQTPRV4D.js → chunk-SU2E4AWU.js} +6 -6
  127. package/dist/cli-bundle/chunks/{chunk-3Q2HBMTI.js → chunk-SU3TB4NS.js} +2 -2
  128. package/dist/cli-bundle/chunks/{chunk-XCHUVHKU.js → chunk-SYE6WMV6.js} +8 -8
  129. package/dist/cli-bundle/chunks/{chunk-2KWL5NPW.js → chunk-T3P7PMZP.js} +2 -2
  130. package/dist/cli-bundle/chunks/{chunk-N2JSWVWG.js → chunk-T4XBKJ3F.js} +4 -4
  131. package/dist/cli-bundle/chunks/{chunk-BVZZN2LH.js → chunk-T6AXEBOP.js} +23 -17
  132. package/dist/cli-bundle/chunks/{chunk-BVZZN2LH.js.map → chunk-T6AXEBOP.js.map} +2 -2
  133. package/dist/cli-bundle/chunks/{chunk-N3QCJS4M.js → chunk-TQ6AX5SQ.js} +58 -69
  134. package/dist/cli-bundle/chunks/{chunk-N3QCJS4M.js.map → chunk-TQ6AX5SQ.js.map} +2 -2
  135. package/dist/cli-bundle/chunks/{chunk-RM37OPYK.js → chunk-U3S2B7TA.js} +43 -28
  136. package/dist/cli-bundle/chunks/{chunk-RM37OPYK.js.map → chunk-U3S2B7TA.js.map} +1 -1
  137. package/dist/cli-bundle/chunks/{chunk-UTSH5GWX.js → chunk-U5TR4N7J.js} +7 -7
  138. package/dist/cli-bundle/chunks/{chunk-UT73HUPC.js → chunk-UMNQZS4H.js} +3 -3
  139. package/dist/cli-bundle/chunks/{chunk-CZPVDLD2.js → chunk-WJA3PXW7.js} +7 -7
  140. package/dist/cli-bundle/chunks/{chunk-WJAMWAHZ.js → chunk-WRYERRZX.js} +5 -5
  141. package/dist/cli-bundle/chunks/{chunk-6ITZLD4T.js → chunk-WYOIIFSE.js} +10 -10
  142. package/dist/cli-bundle/chunks/{chunk-7TH5NMVB.js → chunk-XRYSCRZR.js} +25 -19
  143. package/dist/cli-bundle/chunks/chunk-XRYSCRZR.js.map +7 -0
  144. package/dist/cli-bundle/chunks/{chunk-3AZUFQK6.js → chunk-YF746GTH.js} +59 -70
  145. package/dist/cli-bundle/chunks/{chunk-3AZUFQK6.js.map → chunk-YF746GTH.js.map} +1 -1
  146. package/dist/cli-bundle/chunks/{chunk-IG5JYZGU.js → chunk-YPWUSH72.js} +7 -7
  147. package/dist/cli-bundle/chunks/{chunk-KN3URLKS.js → chunk-YSDFIY7N.js} +3 -3
  148. package/dist/cli-bundle/chunks/{chunk-2CHRYUXL.js → chunk-YSGTMDWC.js} +2 -2
  149. package/dist/cli-bundle/chunks/{chunk-36UGKF4O.js → chunk-YVKZ3ANP.js} +2 -2
  150. package/dist/cli-bundle/chunks/{chunk-A6VOGKBA.js → chunk-Z5F6XZXE.js} +6 -6
  151. package/dist/cli-bundle/chunks/{chunk-LTRAF2D7.js → chunk-Z7RPDF2Y.js} +3 -3
  152. package/dist/cli-bundle/chunks/{chunk-W47SML5B.js → chunk-ZFTKYWIF.js} +7 -7
  153. package/dist/cli-bundle/chunks/{claim-SENTPZBN.js → claim-2BGBGSVI.js} +8 -8
  154. package/dist/cli-bundle/chunks/{claim-Z7MEQCBT.js → claim-5GU7OE67.js} +8 -8
  155. package/dist/cli-bundle/chunks/close-6YODBUIV.js +14 -0
  156. package/dist/cli-bundle/chunks/{close-424MX4CU.js → close-AFVKPR57.js} +7 -7
  157. package/dist/cli-bundle/chunks/{close-many-SWY34BII.js → close-many-7KLOSYLP.js} +119 -76
  158. package/dist/cli-bundle/chunks/close-many-7KLOSYLP.js.map +7 -0
  159. package/dist/cli-bundle/chunks/{close-many-2IV4J2TR.js → close-many-JKUJMHLG.js} +120 -77
  160. package/dist/cli-bundle/chunks/close-many-JKUJMHLG.js.map +1 -0
  161. package/dist/cli-bundle/chunks/{comments-4FGNTSNV.js → comments-DNWHEBOS.js} +9 -9
  162. package/dist/cli-bundle/chunks/{comments-7YS5MY5X.js → comments-RW23R3VE.js} +9 -9
  163. package/dist/cli-bundle/chunks/{config-G74GISC4.js → config-AUM5WBYA.js} +7 -7
  164. package/dist/cli-bundle/chunks/{config-BZJKK7FZ.js → config-OZWSA2NP.js} +7 -7
  165. package/dist/cli-bundle/chunks/{context-ZQY54JNS.js → context-OYXRGY7S.js} +12 -12
  166. package/dist/cli-bundle/chunks/{context-LHVKJSPJ.js → context-PKCEHQY3.js} +12 -12
  167. package/dist/cli-bundle/chunks/{contracts-CP2EZJC7.js → contracts-L6ODXNUM.js} +3 -3
  168. package/dist/cli-bundle/chunks/{contracts-FIZLMP7O.js → contracts-X74F2GSM.js} +3 -3
  169. package/dist/cli-bundle/chunks/{copy-GYNQQPW2.js → copy-6XOR3HKN.js} +5 -5
  170. package/dist/cli-bundle/chunks/{copy-TLW7JTQT.js → copy-I4NCLBR4.js} +5 -5
  171. package/dist/cli-bundle/chunks/{create-VSKYSOCD.js → create-PM45M6PE.js} +12 -12
  172. package/dist/cli-bundle/chunks/create-Z7YCH3BE.js +28 -0
  173. package/dist/cli-bundle/chunks/{delete-ANTOTI2I.js → delete-7YXHYG67.js} +5 -5
  174. package/dist/cli-bundle/chunks/{delete-4W5JYCEG.js → delete-LPISP43T.js} +5 -5
  175. package/dist/cli-bundle/chunks/{deps-HPPE6MJN.js → deps-N2T26FME.js} +5 -5
  176. package/dist/cli-bundle/chunks/{deps-ZQZN54EZ.js → deps-WATKQDE3.js} +5 -5
  177. package/dist/cli-bundle/chunks/{docs-RPOVFMP3.js → docs-6LQ3GLM7.js} +7 -7
  178. package/dist/cli-bundle/chunks/{docs-XJNYBJGE.js → docs-Z3X6JZLT.js} +7 -7
  179. package/dist/cli-bundle/chunks/{eval-RFBI5FGS.js → eval-6DCLG52D.js} +10 -10
  180. package/dist/cli-bundle/chunks/{eval-DM6JBZTS.js → eval-Y3ZCUTHK.js} +10 -10
  181. package/dist/cli-bundle/chunks/{extension-B3YY4WY5.js → extension-BNINIMT7.js} +11 -11
  182. package/dist/cli-bundle/chunks/{extension-TTSEFQTS.js → extension-QWE4YYK5.js} +11 -11
  183. package/dist/cli-bundle/chunks/{files-5D65CHGE.js → files-6SGKHS6O.js} +7 -7
  184. package/dist/cli-bundle/chunks/{files-GPIG77EN.js → files-FUYPSOFJ.js} +7 -7
  185. package/dist/cli-bundle/chunks/{focus-ZHN7WIGX.js → focus-2Q3K76G2.js} +6 -6
  186. package/dist/cli-bundle/chunks/{focus-C3PEJV2C.js → focus-ATLBWXXD.js} +6 -6
  187. package/dist/cli-bundle/chunks/{gc-D4JQ6OWN.js → gc-RUYEMNRF.js} +3 -3
  188. package/dist/cli-bundle/chunks/{gc-VZIXDL32.js → gc-TDWSDR66.js} +3 -3
  189. package/dist/cli-bundle/chunks/{get-IOVAN6RU.js → get-2WGLX74N.js} +10 -10
  190. package/dist/cli-bundle/chunks/{get-GIBRUUOP.js → get-LY6M2JIM.js} +10 -10
  191. package/dist/cli-bundle/chunks/{health-L2U3AFKV.js → health-4RKHYS3T.js} +115 -123
  192. package/dist/cli-bundle/chunks/health-4RKHYS3T.js.map +1 -0
  193. package/dist/cli-bundle/chunks/{health-MM7AWXYF.js → health-TMFVNYRA.js} +114 -122
  194. package/dist/cli-bundle/chunks/health-TMFVNYRA.js.map +7 -0
  195. package/dist/cli-bundle/chunks/history-CGNQJXFE.js +18 -0
  196. package/dist/cli-bundle/chunks/{history-IL7XCEX2.js → history-SGRRS72R.js} +8 -8
  197. package/dist/cli-bundle/chunks/{history-compact-MV25P7DM.js → history-compact-LOED43R3.js} +10 -10
  198. package/dist/cli-bundle/chunks/{history-compact-HALOTOU7.js → history-compact-V5DNAQHH.js} +10 -10
  199. package/dist/cli-bundle/chunks/{history-redact-VYCWQFK7.js → history-redact-IRL7WJ3E.js} +9 -9
  200. package/dist/cli-bundle/chunks/history-redact-N3JK7VBW.js +19 -0
  201. package/dist/cli-bundle/chunks/{history-repair-44MODPQF.js → history-repair-4WVBVHFR.js} +10 -10
  202. package/dist/cli-bundle/chunks/{history-repair-CPNAOCNF.js → history-repair-PGYQJMGD.js} +10 -10
  203. package/dist/cli-bundle/chunks/{init-F27NHENZ.js → init-4GESW7RM.js} +12 -12
  204. package/dist/cli-bundle/chunks/init-XIDPABA4.js +22 -0
  205. package/dist/cli-bundle/chunks/{learnings-HJVDQIGY.js → learnings-4BHWFFUV.js} +9 -9
  206. package/dist/cli-bundle/chunks/{learnings-XSFSUUWK.js → learnings-4FJY7WIW.js} +9 -9
  207. package/dist/cli-bundle/chunks/{list-HPMEKCAA.js → list-472TIOVK.js} +8 -8
  208. package/dist/cli-bundle/chunks/{list-VMPWTURB.js → list-D7BF5CL2.js} +8 -8
  209. package/dist/cli-bundle/chunks/{next-QM6YJIIS.js → next-D5STGWI2.js} +26 -23
  210. package/dist/cli-bundle/chunks/next-D5STGWI2.js.map +1 -0
  211. package/dist/cli-bundle/chunks/{next-ETXF2ZCN.js → next-SFQZVX2B.js} +25 -22
  212. package/dist/cli-bundle/chunks/{next-ETXF2ZCN.js.map → next-SFQZVX2B.js.map} +2 -2
  213. package/dist/cli-bundle/chunks/{notes-GDZIKGR6.js → notes-6KNOSLIT.js} +9 -9
  214. package/dist/cli-bundle/chunks/{notes-WDDBPC4D.js → notes-W4UEICGF.js} +9 -9
  215. package/dist/cli-bundle/chunks/{plan-BGDR73Z6.js → plan-JO6V7BXO.js} +12 -12
  216. package/dist/cli-bundle/chunks/{plan-C5IMM335.js → plan-MJQW5XK3.js} +12 -12
  217. package/dist/cli-bundle/chunks/{profile-HUCENIEQ.js → profile-3TOTMUR4.js} +26 -18
  218. package/dist/cli-bundle/chunks/profile-3TOTMUR4.js.map +7 -0
  219. package/dist/cli-bundle/chunks/{profile-CCOKZ2IQ.js → profile-WIQY2KCV.js} +27 -19
  220. package/dist/cli-bundle/chunks/profile-WIQY2KCV.js.map +1 -0
  221. package/dist/cli-bundle/chunks/{register-list-query-XN4ZRHSV.js → register-list-query-ELBHCCFI.js} +179 -170
  222. package/dist/cli-bundle/chunks/register-list-query-ELBHCCFI.js.map +7 -0
  223. package/dist/cli-bundle/chunks/{register-list-query-ROSNIL52.js → register-list-query-GAPQ6DM3.js} +180 -171
  224. package/dist/cli-bundle/chunks/register-list-query-GAPQ6DM3.js.map +1 -0
  225. package/dist/cli-bundle/chunks/{register-mutation-KRLAHEL2.js → register-mutation-ROFE2YPC.js} +367 -361
  226. package/dist/cli-bundle/chunks/register-mutation-ROFE2YPC.js.map +7 -0
  227. package/dist/cli-bundle/chunks/{register-mutation-CFSB2MS3.js → register-mutation-SJWMVIJ2.js} +368 -362
  228. package/dist/cli-bundle/chunks/register-mutation-SJWMVIJ2.js.map +1 -0
  229. package/dist/cli-bundle/chunks/{register-operations-4PASGJDB.js → register-operations-IADFVH53.js} +309 -304
  230. package/dist/cli-bundle/chunks/register-operations-IADFVH53.js.map +7 -0
  231. package/dist/cli-bundle/chunks/{register-operations-MBN4KGUM.js → register-operations-MEKU3AKC.js} +310 -305
  232. package/dist/cli-bundle/chunks/register-operations-MEKU3AKC.js.map +1 -0
  233. package/dist/cli-bundle/chunks/{register-setup-ZCGKHDKL.js → register-setup-3QJY43CY.js} +15 -15
  234. package/dist/cli-bundle/chunks/{register-setup-VIAWYFP5.js → register-setup-AJWUSSQX.js} +15 -15
  235. package/dist/cli-bundle/chunks/{restore-4CBWUMCX.js → restore-44IHMMZZ.js} +9 -9
  236. package/dist/cli-bundle/chunks/restore-EXHU34EU.js +17 -0
  237. package/dist/cli-bundle/chunks/{scheduling-shortcuts-6VFKNKCM.js → scheduling-shortcuts-OLHNLAZY.js} +12 -12
  238. package/dist/cli-bundle/chunks/{scheduling-shortcuts-ERHCVTEM.js → scheduling-shortcuts-TSBK4AY5.js} +12 -12
  239. package/dist/cli-bundle/chunks/{schema-TDGK6N3I.js → schema-IB2NZZWD.js} +7 -7
  240. package/dist/cli-bundle/chunks/{schema-UE5KKAUX.js → schema-VBCELP5G.js} +7 -7
  241. package/dist/cli-bundle/chunks/{search-K4CFLQ5S.js → search-7UBETML4.js} +10 -10
  242. package/dist/cli-bundle/chunks/{search-FP7MEU4S.js → search-R227JOL6.js} +10 -10
  243. package/dist/cli-bundle/chunks/{stats-XT6QRKQY.js → stats-FAG7COEH.js} +6 -6
  244. package/dist/cli-bundle/chunks/{stats-NJJCALEZ.js → stats-MCK7PLYS.js} +6 -6
  245. package/dist/cli-bundle/chunks/{telemetry-5SQ5UDXC.js → telemetry-DRPDZMAO.js} +4 -4
  246. package/dist/cli-bundle/chunks/{telemetry-HVXFZA2U.js → telemetry-GVVUQSJQ.js} +4 -4
  247. package/dist/cli-bundle/chunks/{test-YCDAUBWF.js → test-QY44WAMR.js} +15 -15
  248. package/dist/cli-bundle/chunks/{test-UFSJ5YIO.js → test-SY76DZTO.js} +15 -15
  249. package/dist/cli-bundle/chunks/{test-all-PM7UYN42.js → test-all-QD6QAEG7.js} +17 -17
  250. package/dist/cli-bundle/chunks/{test-all-2BWKY3GQ.js → test-all-USPJHXFR.js} +17 -17
  251. package/dist/cli-bundle/chunks/{test-runs-FK5E75AA.js → test-runs-MG5VIGSK.js} +4 -4
  252. package/dist/cli-bundle/chunks/{test-runs-H4TGWGRN.js → test-runs-QIR5MJPL.js} +4 -4
  253. package/dist/cli-bundle/chunks/update-A7EICML6.js +24 -0
  254. package/dist/cli-bundle/chunks/{update-Y5WQVT5O.js → update-IKJZWLQC.js} +15 -15
  255. package/dist/cli-bundle/chunks/{update-many-JTKKSA7Y.js → update-many-BEMTDA2X.js} +28 -28
  256. package/dist/cli-bundle/chunks/{update-many-6YAYYRLE.js → update-many-RATAARHU.js} +28 -28
  257. package/dist/cli-bundle/chunks/{upgrade-JUDU7YL4.js → upgrade-NWMR3VQL.js} +11 -11
  258. package/dist/cli-bundle/chunks/{upgrade-DTAHZ236.js → upgrade-VU46BLJZ.js} +11 -11
  259. package/dist/cli-bundle/chunks/{validate-W7H5TEDC.js → validate-GAJ6FUSI.js} +32 -22
  260. package/dist/cli-bundle/chunks/validate-GAJ6FUSI.js.map +1 -0
  261. package/dist/cli-bundle/chunks/{validate-732RWS5W.js → validate-NRY6MFXN.js} +31 -21
  262. package/dist/cli-bundle/chunks/validate-NRY6MFXN.js.map +7 -0
  263. package/dist/cli-bundle/main.js +180 -122
  264. package/dist/cli-bundle/main.js.map +3 -3
  265. package/dist/core/item/type-registry.js +29 -19
  266. package/dist/core/item/type-registry.js.map +1 -1
  267. package/dist/core/schema/runtime-schema.js +65 -54
  268. package/dist/core/schema/runtime-schema.js.map +1 -1
  269. package/dist/core/schema/status-defs-file.js +26 -3
  270. package/dist/core/schema/status-defs-file.js.map +1 -1
  271. package/dist/core/search/corpus.js +25 -19
  272. package/dist/core/search/corpus.js.map +1 -1
  273. package/dist/core/shared/memo.d.ts +12 -0
  274. package/dist/core/shared/memo.js +25 -0
  275. package/dist/core/shared/memo.js.map +1 -0
  276. package/dist/core/shared/serialization.js +24 -14
  277. package/dist/core/shared/serialization.js.map +1 -1
  278. package/dist/core/shared/time.js +26 -4
  279. package/dist/core/shared/time.js.map +1 -1
  280. package/dist/core/store/front-matter-cache.d.ts +5 -0
  281. package/dist/core/store/front-matter-cache.js +79 -20
  282. package/dist/core/store/front-matter-cache.js.map +1 -1
  283. package/dist/sdk/cli-contracts/flag-contracts.js +71 -99
  284. package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -1
  285. package/dist/sdk/compose.js +51 -42
  286. package/dist/sdk/compose.js.map +1 -1
  287. package/docs/AGENT_GUIDE.md +2 -2
  288. package/docs/ARCHITECTURE.md +2 -2
  289. package/docs/COMMANDS.md +8 -4
  290. package/docs/CONFIGURATION.md +1 -1
  291. package/docs/EXTENSIONS.md +12 -12
  292. package/docs/ONBOARDING.md +4 -2
  293. package/docs/README.md +2 -0
  294. package/docs/examples/starter-extension/README.md +11 -10
  295. package/marketplace.json +3 -3
  296. package/package.json +1 -1
  297. package/plugins/pm-claude/.claude-plugin/plugin.json +2 -2
  298. package/plugins/pm-claude/README.md +6 -3
  299. package/plugins/pm-claude/commands/pm-init.md +1 -1
  300. package/dist/cli-bundle/chunks/activity-WEIEMM73.js +0 -16
  301. package/dist/cli-bundle/chunks/chunk-5GVTFFTC.js.map +0 -1
  302. package/dist/cli-bundle/chunks/chunk-7NSPKJUS.js.map +0 -7
  303. package/dist/cli-bundle/chunks/chunk-7TH5NMVB.js.map +0 -7
  304. package/dist/cli-bundle/chunks/chunk-AIAIXG7I.js.map +0 -7
  305. package/dist/cli-bundle/chunks/chunk-AJEBCRIY.js.map +0 -1
  306. package/dist/cli-bundle/chunks/chunk-GFMSLORL.js.map +0 -7
  307. package/dist/cli-bundle/chunks/chunk-I66WE2HE.js.map +0 -1
  308. package/dist/cli-bundle/chunks/chunk-JXAUVO6X.js.map +0 -7
  309. package/dist/cli-bundle/chunks/chunk-K2VYLVX4.js.map +0 -1
  310. package/dist/cli-bundle/chunks/chunk-NRZS637N.js.map +0 -1
  311. package/dist/cli-bundle/chunks/chunk-SPM2XLWI.js.map +0 -7
  312. package/dist/cli-bundle/chunks/chunk-SYNKD3ZG.js.map +0 -7
  313. package/dist/cli-bundle/chunks/chunk-TPOFWBMY.js.map +0 -1
  314. package/dist/cli-bundle/chunks/chunk-XWGEMNBR.js.map +0 -7
  315. package/dist/cli-bundle/chunks/chunk-YLZZ6T54.js.map +0 -1
  316. package/dist/cli-bundle/chunks/chunk-YPKFV2JR.js.map +0 -1
  317. package/dist/cli-bundle/chunks/close-YCWQQPDS.js +0 -14
  318. package/dist/cli-bundle/chunks/close-many-2IV4J2TR.js.map +0 -1
  319. package/dist/cli-bundle/chunks/close-many-SWY34BII.js.map +0 -7
  320. package/dist/cli-bundle/chunks/create-XTMAPS7I.js +0 -28
  321. package/dist/cli-bundle/chunks/health-L2U3AFKV.js.map +0 -1
  322. package/dist/cli-bundle/chunks/health-MM7AWXYF.js.map +0 -7
  323. package/dist/cli-bundle/chunks/history-DD7L7BNL.js +0 -18
  324. package/dist/cli-bundle/chunks/history-redact-IX4YEWMY.js +0 -19
  325. package/dist/cli-bundle/chunks/init-HHVQQP6C.js +0 -22
  326. package/dist/cli-bundle/chunks/next-QM6YJIIS.js.map +0 -1
  327. package/dist/cli-bundle/chunks/profile-CCOKZ2IQ.js.map +0 -1
  328. package/dist/cli-bundle/chunks/profile-HUCENIEQ.js.map +0 -7
  329. package/dist/cli-bundle/chunks/register-list-query-ROSNIL52.js.map +0 -1
  330. package/dist/cli-bundle/chunks/register-list-query-XN4ZRHSV.js.map +0 -7
  331. package/dist/cli-bundle/chunks/register-mutation-CFSB2MS3.js.map +0 -1
  332. package/dist/cli-bundle/chunks/register-mutation-KRLAHEL2.js.map +0 -7
  333. package/dist/cli-bundle/chunks/register-operations-4PASGJDB.js.map +0 -7
  334. package/dist/cli-bundle/chunks/register-operations-MBN4KGUM.js.map +0 -1
  335. package/dist/cli-bundle/chunks/restore-5UEAGG3W.js +0 -17
  336. package/dist/cli-bundle/chunks/update-MTCFES6X.js +0 -24
  337. package/dist/cli-bundle/chunks/validate-732RWS5W.js.map +0 -7
  338. package/dist/cli-bundle/chunks/validate-W7H5TEDC.js.map +0 -1
  339. /package/dist/cli-bundle/chunks/{activity-CUC4JY3U.js.map → activity-5YWLSPGE.js.map} +0 -0
  340. /package/dist/cli-bundle/chunks/{activity-WEIEMM73.js.map → activity-BIML7K2D.js.map} +0 -0
  341. /package/dist/cli-bundle/chunks/{aggregate-SW5PNGCS.js.map → aggregate-2V2M3JZU.js.map} +0 -0
  342. /package/dist/cli-bundle/chunks/{aggregate-DKUTRY6R.js.map → aggregate-EK7DXML7.js.map} +0 -0
  343. /package/dist/cli-bundle/chunks/{append-UBM632FK.js.map → append-EZESUVJT.js.map} +0 -0
  344. /package/dist/cli-bundle/chunks/{append-H32VOR2Y.js.map → append-JFG4WQMG.js.map} +0 -0
  345. /package/dist/cli-bundle/chunks/{chunk-XTHQWXVC.js.map → chunk-32IUNTG4.js.map} +0 -0
  346. /package/dist/cli-bundle/chunks/{chunk-IEEJQCZ4.js.map → chunk-3W2HJKJX.js.map} +0 -0
  347. /package/dist/cli-bundle/chunks/{chunk-JMK5GCK2.js.map → chunk-4PFVUUYV.js.map} +0 -0
  348. /package/dist/cli-bundle/chunks/{chunk-MRD4T5LF.js.map → chunk-5E7N4T2Z.js.map} +0 -0
  349. /package/dist/cli-bundle/chunks/{chunk-S62UANU7.js.map → chunk-5IZUBZBR.js.map} +0 -0
  350. /package/dist/cli-bundle/chunks/{chunk-BTX5MIQF.js.map → chunk-5JIWFWOZ.js.map} +0 -0
  351. /package/dist/cli-bundle/chunks/{chunk-SYVUU7EK.js.map → chunk-67LARBDL.js.map} +0 -0
  352. /package/dist/cli-bundle/chunks/{chunk-KIYCOJ63.js.map → chunk-6CDCWKSX.js.map} +0 -0
  353. /package/dist/cli-bundle/chunks/{chunk-3LCUASYG.js.map → chunk-6NYJGMTY.js.map} +0 -0
  354. /package/dist/cli-bundle/chunks/{chunk-2ASNV4DH.js.map → chunk-7CLLC75T.js.map} +0 -0
  355. /package/dist/cli-bundle/chunks/{chunk-FFOQHGNH.js.map → chunk-7LYO6S5A.js.map} +0 -0
  356. /package/dist/cli-bundle/chunks/{chunk-55XRYWEG.js.map → chunk-A3OQ7TFW.js.map} +0 -0
  357. /package/dist/cli-bundle/chunks/{chunk-Q6K2OACU.js.map → chunk-AIKU3IIL.js.map} +0 -0
  358. /package/dist/cli-bundle/chunks/{chunk-TTHCEV5Q.js.map → chunk-BE2SR6QL.js.map} +0 -0
  359. /package/dist/cli-bundle/chunks/{chunk-7W4H4K26.js.map → chunk-ECU6MMTQ.js.map} +0 -0
  360. /package/dist/cli-bundle/chunks/{chunk-5PGBHRY3.js.map → chunk-EQURFOMH.js.map} +0 -0
  361. /package/dist/cli-bundle/chunks/{chunk-H4GRLYJS.js.map → chunk-ER4ME5U2.js.map} +0 -0
  362. /package/dist/cli-bundle/chunks/{chunk-QH3FSKRJ.js.map → chunk-ERG65A2L.js.map} +0 -0
  363. /package/dist/cli-bundle/chunks/{chunk-UWKEJMZU.js.map → chunk-F6WNBITZ.js.map} +0 -0
  364. /package/dist/cli-bundle/chunks/{chunk-U2BEEM2X.js.map → chunk-FH2H3CBD.js.map} +0 -0
  365. /package/dist/cli-bundle/chunks/{chunk-EUKTMRN3.js.map → chunk-FUFFPIYA.js.map} +0 -0
  366. /package/dist/cli-bundle/chunks/{chunk-7MYWF4ZX.js.map → chunk-FZJM2TXF.js.map} +0 -0
  367. /package/dist/cli-bundle/chunks/{chunk-CYBDUHNO.js.map → chunk-GUYNUXQT.js.map} +0 -0
  368. /package/dist/cli-bundle/chunks/{chunk-ZNT7KEWE.js.map → chunk-GVJE5T7Q.js.map} +0 -0
  369. /package/dist/cli-bundle/chunks/{chunk-XEWQKDYZ.js.map → chunk-HQAF23Q2.js.map} +0 -0
  370. /package/dist/cli-bundle/chunks/{chunk-KLXF7NCC.js.map → chunk-JBZ2NTKX.js.map} +0 -0
  371. /package/dist/cli-bundle/chunks/{chunk-4NUOWFBT.js.map → chunk-K5DT2YKM.js.map} +0 -0
  372. /package/dist/cli-bundle/chunks/{chunk-KCO2EAN5.js.map → chunk-KEZOIPCR.js.map} +0 -0
  373. /package/dist/cli-bundle/chunks/{chunk-2227673O.js.map → chunk-LBE5QFMZ.js.map} +0 -0
  374. /package/dist/cli-bundle/chunks/{chunk-UGLU6Q2I.js.map → chunk-LOWVNZBZ.js.map} +0 -0
  375. /package/dist/cli-bundle/chunks/{chunk-Y4NRKBFW.js.map → chunk-MDHWWBNZ.js.map} +0 -0
  376. /package/dist/cli-bundle/chunks/{chunk-LRKMWUUV.js.map → chunk-MEZZZBYX.js.map} +0 -0
  377. /package/dist/cli-bundle/chunks/{chunk-Q6NXOHS6.js.map → chunk-NOIEVOK5.js.map} +0 -0
  378. /package/dist/cli-bundle/chunks/{chunk-GRRG3MCT.js.map → chunk-NZ7QIUP5.js.map} +0 -0
  379. /package/dist/cli-bundle/chunks/{chunk-ZNHEYCDD.js.map → chunk-P5L7Z2O6.js.map} +0 -0
  380. /package/dist/cli-bundle/chunks/{chunk-6ZMBJRDJ.js.map → chunk-PULUSQAV.js.map} +0 -0
  381. /package/dist/cli-bundle/chunks/{chunk-EMPGXBUF.js.map → chunk-QCDTQCMW.js.map} +0 -0
  382. /package/dist/cli-bundle/chunks/{chunk-HQTPRV4D.js.map → chunk-SU2E4AWU.js.map} +0 -0
  383. /package/dist/cli-bundle/chunks/{chunk-3Q2HBMTI.js.map → chunk-SU3TB4NS.js.map} +0 -0
  384. /package/dist/cli-bundle/chunks/{chunk-XCHUVHKU.js.map → chunk-SYE6WMV6.js.map} +0 -0
  385. /package/dist/cli-bundle/chunks/{chunk-2KWL5NPW.js.map → chunk-T3P7PMZP.js.map} +0 -0
  386. /package/dist/cli-bundle/chunks/{chunk-N2JSWVWG.js.map → chunk-T4XBKJ3F.js.map} +0 -0
  387. /package/dist/cli-bundle/chunks/{chunk-UTSH5GWX.js.map → chunk-U5TR4N7J.js.map} +0 -0
  388. /package/dist/cli-bundle/chunks/{chunk-UT73HUPC.js.map → chunk-UMNQZS4H.js.map} +0 -0
  389. /package/dist/cli-bundle/chunks/{chunk-CZPVDLD2.js.map → chunk-WJA3PXW7.js.map} +0 -0
  390. /package/dist/cli-bundle/chunks/{chunk-WJAMWAHZ.js.map → chunk-WRYERRZX.js.map} +0 -0
  391. /package/dist/cli-bundle/chunks/{chunk-6ITZLD4T.js.map → chunk-WYOIIFSE.js.map} +0 -0
  392. /package/dist/cli-bundle/chunks/{chunk-IG5JYZGU.js.map → chunk-YPWUSH72.js.map} +0 -0
  393. /package/dist/cli-bundle/chunks/{chunk-KN3URLKS.js.map → chunk-YSDFIY7N.js.map} +0 -0
  394. /package/dist/cli-bundle/chunks/{chunk-2CHRYUXL.js.map → chunk-YSGTMDWC.js.map} +0 -0
  395. /package/dist/cli-bundle/chunks/{chunk-36UGKF4O.js.map → chunk-YVKZ3ANP.js.map} +0 -0
  396. /package/dist/cli-bundle/chunks/{chunk-A6VOGKBA.js.map → chunk-Z5F6XZXE.js.map} +0 -0
  397. /package/dist/cli-bundle/chunks/{chunk-LTRAF2D7.js.map → chunk-Z7RPDF2Y.js.map} +0 -0
  398. /package/dist/cli-bundle/chunks/{chunk-W47SML5B.js.map → chunk-ZFTKYWIF.js.map} +0 -0
  399. /package/dist/cli-bundle/chunks/{claim-SENTPZBN.js.map → claim-2BGBGSVI.js.map} +0 -0
  400. /package/dist/cli-bundle/chunks/{claim-Z7MEQCBT.js.map → claim-5GU7OE67.js.map} +0 -0
  401. /package/dist/cli-bundle/chunks/{close-YCWQQPDS.js.map → close-6YODBUIV.js.map} +0 -0
  402. /package/dist/cli-bundle/chunks/{close-424MX4CU.js.map → close-AFVKPR57.js.map} +0 -0
  403. /package/dist/cli-bundle/chunks/{comments-4FGNTSNV.js.map → comments-DNWHEBOS.js.map} +0 -0
  404. /package/dist/cli-bundle/chunks/{comments-7YS5MY5X.js.map → comments-RW23R3VE.js.map} +0 -0
  405. /package/dist/cli-bundle/chunks/{config-G74GISC4.js.map → config-AUM5WBYA.js.map} +0 -0
  406. /package/dist/cli-bundle/chunks/{config-BZJKK7FZ.js.map → config-OZWSA2NP.js.map} +0 -0
  407. /package/dist/cli-bundle/chunks/{context-ZQY54JNS.js.map → context-OYXRGY7S.js.map} +0 -0
  408. /package/dist/cli-bundle/chunks/{context-LHVKJSPJ.js.map → context-PKCEHQY3.js.map} +0 -0
  409. /package/dist/cli-bundle/chunks/{contracts-CP2EZJC7.js.map → contracts-L6ODXNUM.js.map} +0 -0
  410. /package/dist/cli-bundle/chunks/{contracts-FIZLMP7O.js.map → contracts-X74F2GSM.js.map} +0 -0
  411. /package/dist/cli-bundle/chunks/{copy-GYNQQPW2.js.map → copy-6XOR3HKN.js.map} +0 -0
  412. /package/dist/cli-bundle/chunks/{copy-TLW7JTQT.js.map → copy-I4NCLBR4.js.map} +0 -0
  413. /package/dist/cli-bundle/chunks/{create-VSKYSOCD.js.map → create-PM45M6PE.js.map} +0 -0
  414. /package/dist/cli-bundle/chunks/{create-XTMAPS7I.js.map → create-Z7YCH3BE.js.map} +0 -0
  415. /package/dist/cli-bundle/chunks/{delete-ANTOTI2I.js.map → delete-7YXHYG67.js.map} +0 -0
  416. /package/dist/cli-bundle/chunks/{delete-4W5JYCEG.js.map → delete-LPISP43T.js.map} +0 -0
  417. /package/dist/cli-bundle/chunks/{deps-HPPE6MJN.js.map → deps-N2T26FME.js.map} +0 -0
  418. /package/dist/cli-bundle/chunks/{deps-ZQZN54EZ.js.map → deps-WATKQDE3.js.map} +0 -0
  419. /package/dist/cli-bundle/chunks/{docs-RPOVFMP3.js.map → docs-6LQ3GLM7.js.map} +0 -0
  420. /package/dist/cli-bundle/chunks/{docs-XJNYBJGE.js.map → docs-Z3X6JZLT.js.map} +0 -0
  421. /package/dist/cli-bundle/chunks/{eval-RFBI5FGS.js.map → eval-6DCLG52D.js.map} +0 -0
  422. /package/dist/cli-bundle/chunks/{eval-DM6JBZTS.js.map → eval-Y3ZCUTHK.js.map} +0 -0
  423. /package/dist/cli-bundle/chunks/{extension-B3YY4WY5.js.map → extension-BNINIMT7.js.map} +0 -0
  424. /package/dist/cli-bundle/chunks/{extension-TTSEFQTS.js.map → extension-QWE4YYK5.js.map} +0 -0
  425. /package/dist/cli-bundle/chunks/{files-5D65CHGE.js.map → files-6SGKHS6O.js.map} +0 -0
  426. /package/dist/cli-bundle/chunks/{files-GPIG77EN.js.map → files-FUYPSOFJ.js.map} +0 -0
  427. /package/dist/cli-bundle/chunks/{focus-ZHN7WIGX.js.map → focus-2Q3K76G2.js.map} +0 -0
  428. /package/dist/cli-bundle/chunks/{focus-C3PEJV2C.js.map → focus-ATLBWXXD.js.map} +0 -0
  429. /package/dist/cli-bundle/chunks/{gc-D4JQ6OWN.js.map → gc-RUYEMNRF.js.map} +0 -0
  430. /package/dist/cli-bundle/chunks/{gc-VZIXDL32.js.map → gc-TDWSDR66.js.map} +0 -0
  431. /package/dist/cli-bundle/chunks/{get-IOVAN6RU.js.map → get-2WGLX74N.js.map} +0 -0
  432. /package/dist/cli-bundle/chunks/{get-GIBRUUOP.js.map → get-LY6M2JIM.js.map} +0 -0
  433. /package/dist/cli-bundle/chunks/{history-DD7L7BNL.js.map → history-CGNQJXFE.js.map} +0 -0
  434. /package/dist/cli-bundle/chunks/{history-IL7XCEX2.js.map → history-SGRRS72R.js.map} +0 -0
  435. /package/dist/cli-bundle/chunks/{history-compact-MV25P7DM.js.map → history-compact-LOED43R3.js.map} +0 -0
  436. /package/dist/cli-bundle/chunks/{history-compact-HALOTOU7.js.map → history-compact-V5DNAQHH.js.map} +0 -0
  437. /package/dist/cli-bundle/chunks/{history-redact-VYCWQFK7.js.map → history-redact-IRL7WJ3E.js.map} +0 -0
  438. /package/dist/cli-bundle/chunks/{history-redact-IX4YEWMY.js.map → history-redact-N3JK7VBW.js.map} +0 -0
  439. /package/dist/cli-bundle/chunks/{history-repair-44MODPQF.js.map → history-repair-4WVBVHFR.js.map} +0 -0
  440. /package/dist/cli-bundle/chunks/{history-repair-CPNAOCNF.js.map → history-repair-PGYQJMGD.js.map} +0 -0
  441. /package/dist/cli-bundle/chunks/{init-F27NHENZ.js.map → init-4GESW7RM.js.map} +0 -0
  442. /package/dist/cli-bundle/chunks/{init-HHVQQP6C.js.map → init-XIDPABA4.js.map} +0 -0
  443. /package/dist/cli-bundle/chunks/{learnings-HJVDQIGY.js.map → learnings-4BHWFFUV.js.map} +0 -0
  444. /package/dist/cli-bundle/chunks/{learnings-XSFSUUWK.js.map → learnings-4FJY7WIW.js.map} +0 -0
  445. /package/dist/cli-bundle/chunks/{list-HPMEKCAA.js.map → list-472TIOVK.js.map} +0 -0
  446. /package/dist/cli-bundle/chunks/{list-VMPWTURB.js.map → list-D7BF5CL2.js.map} +0 -0
  447. /package/dist/cli-bundle/chunks/{notes-GDZIKGR6.js.map → notes-6KNOSLIT.js.map} +0 -0
  448. /package/dist/cli-bundle/chunks/{notes-WDDBPC4D.js.map → notes-W4UEICGF.js.map} +0 -0
  449. /package/dist/cli-bundle/chunks/{plan-BGDR73Z6.js.map → plan-JO6V7BXO.js.map} +0 -0
  450. /package/dist/cli-bundle/chunks/{plan-C5IMM335.js.map → plan-MJQW5XK3.js.map} +0 -0
  451. /package/dist/cli-bundle/chunks/{register-setup-ZCGKHDKL.js.map → register-setup-3QJY43CY.js.map} +0 -0
  452. /package/dist/cli-bundle/chunks/{register-setup-VIAWYFP5.js.map → register-setup-AJWUSSQX.js.map} +0 -0
  453. /package/dist/cli-bundle/chunks/{restore-4CBWUMCX.js.map → restore-44IHMMZZ.js.map} +0 -0
  454. /package/dist/cli-bundle/chunks/{restore-5UEAGG3W.js.map → restore-EXHU34EU.js.map} +0 -0
  455. /package/dist/cli-bundle/chunks/{scheduling-shortcuts-6VFKNKCM.js.map → scheduling-shortcuts-OLHNLAZY.js.map} +0 -0
  456. /package/dist/cli-bundle/chunks/{scheduling-shortcuts-ERHCVTEM.js.map → scheduling-shortcuts-TSBK4AY5.js.map} +0 -0
  457. /package/dist/cli-bundle/chunks/{schema-TDGK6N3I.js.map → schema-IB2NZZWD.js.map} +0 -0
  458. /package/dist/cli-bundle/chunks/{schema-UE5KKAUX.js.map → schema-VBCELP5G.js.map} +0 -0
  459. /package/dist/cli-bundle/chunks/{search-K4CFLQ5S.js.map → search-7UBETML4.js.map} +0 -0
  460. /package/dist/cli-bundle/chunks/{search-FP7MEU4S.js.map → search-R227JOL6.js.map} +0 -0
  461. /package/dist/cli-bundle/chunks/{stats-XT6QRKQY.js.map → stats-FAG7COEH.js.map} +0 -0
  462. /package/dist/cli-bundle/chunks/{stats-NJJCALEZ.js.map → stats-MCK7PLYS.js.map} +0 -0
  463. /package/dist/cli-bundle/chunks/{telemetry-5SQ5UDXC.js.map → telemetry-DRPDZMAO.js.map} +0 -0
  464. /package/dist/cli-bundle/chunks/{telemetry-HVXFZA2U.js.map → telemetry-GVVUQSJQ.js.map} +0 -0
  465. /package/dist/cli-bundle/chunks/{test-YCDAUBWF.js.map → test-QY44WAMR.js.map} +0 -0
  466. /package/dist/cli-bundle/chunks/{test-UFSJ5YIO.js.map → test-SY76DZTO.js.map} +0 -0
  467. /package/dist/cli-bundle/chunks/{test-all-PM7UYN42.js.map → test-all-QD6QAEG7.js.map} +0 -0
  468. /package/dist/cli-bundle/chunks/{test-all-2BWKY3GQ.js.map → test-all-USPJHXFR.js.map} +0 -0
  469. /package/dist/cli-bundle/chunks/{test-runs-FK5E75AA.js.map → test-runs-MG5VIGSK.js.map} +0 -0
  470. /package/dist/cli-bundle/chunks/{test-runs-H4TGWGRN.js.map → test-runs-QIR5MJPL.js.map} +0 -0
  471. /package/dist/cli-bundle/chunks/{update-MTCFES6X.js.map → update-A7EICML6.js.map} +0 -0
  472. /package/dist/cli-bundle/chunks/{update-Y5WQVT5O.js.map → update-IKJZWLQC.js.map} +0 -0
  473. /package/dist/cli-bundle/chunks/{update-many-JTKKSA7Y.js.map → update-many-BEMTDA2X.js.map} +0 -0
  474. /package/dist/cli-bundle/chunks/{update-many-6YAYYRLE.js.map → update-many-RATAARHU.js.map} +0 -0
  475. /package/dist/cli-bundle/chunks/{upgrade-JUDU7YL4.js.map → upgrade-NWMR3VQL.js.map} +0 -0
  476. /package/dist/cli-bundle/chunks/{upgrade-DTAHZ236.js.map → upgrade-VU46BLJZ.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  EXIT_CODE,
3
3
  PmCliError
4
- } from "./chunk-7NSPKJUS.js";
4
+ } from "./chunk-KHVGM5CS.js";
5
5
 
6
6
  // dist/core/item/parent-reference-policy.js
7
7
  !(function() {
@@ -87,4 +87,4 @@ export {
87
87
  normalizeSprintReleaseFormatPolicy,
88
88
  validateSprintOrReleaseValue
89
89
  };
90
- //# sourceMappingURL=chunk-EUKTMRN3.js.map
90
+ //# sourceMappingURL=chunk-FUFFPIYA.js.map
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-T5RRNDA7.js";
6
6
  import {
7
7
  readHistoryEntries
8
- } from "./chunk-HQTPRV4D.js";
8
+ } from "./chunk-SU2E4AWU.js";
9
9
  import {
10
10
  EMPTY_REPLAY_DOCUMENT,
11
11
  normalizeReplayPatchOps,
@@ -13,7 +13,7 @@ import {
13
13
  replayToCanonicalItemDocument,
14
14
  replayToItemDocument,
15
15
  toReplayDocument
16
- } from "./chunk-2ASNV4DH.js";
16
+ } from "./chunk-7CLLC75T.js";
17
17
  import {
18
18
  acquireLock,
19
19
  appendHistoryEntry,
@@ -23,14 +23,14 @@ import {
23
23
  normalizeItemId,
24
24
  normalizeRawItemId,
25
25
  readLocatedItem
26
- } from "./chunk-NRZS637N.js";
26
+ } from "./chunk-4WB6S4YX.js";
27
27
  import {
28
28
  canonicalDocument,
29
29
  serializeItemDocument
30
- } from "./chunk-KN3URLKS.js";
30
+ } from "./chunk-YSDFIY7N.js";
31
31
  import {
32
32
  nowIso
33
- } from "./chunk-K2VYLVX4.js";
33
+ } from "./chunk-CXR3CMBQ.js";
34
34
  import {
35
35
  EXIT_CODE,
36
36
  PmCliError,
@@ -47,7 +47,7 @@ import {
47
47
  resolvePmRoot,
48
48
  runActiveOnWriteHooks,
49
49
  writeFileAtomic
50
- } from "./chunk-I66WE2HE.js";
50
+ } from "./chunk-L4SLHV6G.js";
51
51
 
52
52
  // dist/cli/commands/restore.js
53
53
  import jsonPatch from "fast-json-patch";
@@ -419,6 +419,6 @@ export {
419
419
  runRestore,
420
420
  _testOnlyRestoreCommand
421
421
  };
422
- //# sourceMappingURL=chunk-7MYWF4ZX.js.map
422
+ //# sourceMappingURL=chunk-FZJM2TXF.js.map
423
423
 
424
424
  //# debugId=6054c314-49cd-5a77-987e-b68fdbbbf981
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  nowIso
3
- } from "./chunk-AIAIXG7I.js";
3
+ } from "./chunk-AJHYQCBJ.js";
4
4
  import {
5
5
  EXIT_CODE,
6
6
  PmCliError,
7
7
  pathExists,
8
8
  toErrorMessage,
9
9
  writeFileAtomic
10
- } from "./chunk-7NSPKJUS.js";
10
+ } from "./chunk-KHVGM5CS.js";
11
11
 
12
12
  // dist/core/checkpoint/mutation-checkpoint.js
13
13
  import { mkdir, readFile } from "node:fs/promises";
@@ -128,4 +128,4 @@ export {
128
128
  loadMutationCheckpoint,
129
129
  restoreCheckpointItems
130
130
  };
131
- //# sourceMappingURL=chunk-CYBDUHNO.js.map
131
+ //# sourceMappingURL=chunk-GUYNUXQT.js.map
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  BUILTIN_ITEM_TYPE_VALUES,
5
5
  toDefaultFolder
6
- } from "./chunk-I66WE2HE.js";
6
+ } from "./chunk-L4SLHV6G.js";
7
7
 
8
8
  // dist/core/schema/item-types-file.js
9
9
  var BUILTIN_NAME_LOOKUP = new Map(BUILTIN_ITEM_TYPE_VALUES.map((name) => [name.toLowerCase(), name]));
@@ -255,6 +255,6 @@ export {
255
255
  buildInvalidTypeHint,
256
256
  buildInvalidTypeError
257
257
  };
258
- //# sourceMappingURL=chunk-ZNT7KEWE.js.map
258
+ //# sourceMappingURL=chunk-GVJE5T7Q.js.map
259
259
 
260
260
  //# debugId=1b7c28c0-5af8-526d-a895-fe83ffb2841e
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  printError,
3
3
  writeStdout
4
- } from "./chunk-5PGBHRY3.js";
4
+ } from "./chunk-EQURFOMH.js";
5
5
  import {
6
6
  refreshSearchArtifactsForMutation,
7
7
  shouldRunSearchRefreshInForeground
8
- } from "./chunk-7TH5NMVB.js";
8
+ } from "./chunk-XRYSCRZR.js";
9
9
  import {
10
10
  ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS,
11
11
  CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS,
@@ -19,7 +19,7 @@ import {
19
19
  readFirstStringFromCommanderOptions,
20
20
  readFirstValueFromCommanderOptions,
21
21
  readStringArrayFromCommanderOptions
22
- } from "./chunk-XWGEMNBR.js";
22
+ } from "./chunk-RAHINBVP.js";
23
23
  import {
24
24
  EXIT_CODE,
25
25
  PmCliError,
@@ -28,13 +28,13 @@ import {
28
28
  readSettings,
29
29
  resolvePmRoot,
30
30
  setActiveCommandResult
31
- } from "./chunk-7NSPKJUS.js";
31
+ } from "./chunk-KHVGM5CS.js";
32
32
 
33
33
  // dist/cli/registration-helpers.js
34
34
  !(function() {
35
35
  try {
36
36
  var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
37
- n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "002ca6d8-67bc-59d2-88d2-006f43de8e55");
37
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "5b561d4c-ab75-5ec8-97de-5f2d32370a4d");
38
38
  } catch (e2) {
39
39
  }
40
40
  })();
@@ -134,6 +134,9 @@ function optionTrue(options, key) {
134
134
  function optionFalse(options, key) {
135
135
  return options[key] === false ? true : void 0;
136
136
  }
137
+ function readOptionString(options, key) {
138
+ return typeof options[key] === "string" ? options[key] : void 0;
139
+ }
137
140
  function anyOptionTrue(options, keys) {
138
141
  return keys.some((key) => options[key] === true) ? true : void 0;
139
142
  }
@@ -438,6 +441,33 @@ function readListOptionString(options, target) {
438
441
  }
439
442
  return void 0;
440
443
  }
444
+ function readSelectionFilterOptionFields(options) {
445
+ return {
446
+ filterReviewerMissing: optionTrue(options, "filterReviewerMissing"),
447
+ filterRiskMissing: optionTrue(options, "filterRiskMissing"),
448
+ filterConfidenceMissing: optionTrue(options, "filterConfidenceMissing"),
449
+ filterSprintMissing: optionTrue(options, "filterSprintMissing"),
450
+ filterReleaseMissing: optionTrue(options, "filterReleaseMissing"),
451
+ hasNotes: optionTrue(options, "hasNotes"),
452
+ hasLearnings: optionTrue(options, "hasLearnings"),
453
+ hasFiles: optionTrue(options, "hasFiles"),
454
+ hasDocs: optionTrue(options, "hasDocs"),
455
+ hasTests: optionTrue(options, "hasTests"),
456
+ hasComments: optionTrue(options, "hasComments"),
457
+ hasDeps: optionTrue(options, "hasDeps"),
458
+ hasBody: optionTrue(options, "hasBody"),
459
+ hasLinkedCommand: optionTrue(options, "hasLinkedCommand"),
460
+ noNotes: optionFalse(options, "notes"),
461
+ noLearnings: optionFalse(options, "learnings"),
462
+ noFiles: optionFalse(options, "files"),
463
+ noDocs: optionFalse(options, "docs"),
464
+ noTests: optionFalse(options, "tests"),
465
+ noComments: optionFalse(options, "comments"),
466
+ noDeps: optionFalse(options, "deps"),
467
+ emptyBody: optionTrue(options, "emptyBody"),
468
+ noLinkedCommand: optionFalse(options, "linkedCommand")
469
+ };
470
+ }
441
471
  function normalizeListOptions(options) {
442
472
  const normalized = {
443
473
  status: readListOptionString(options, "status"),
@@ -473,33 +503,8 @@ function normalizeListOptions(options) {
473
503
  filterEstimatesMissing: anyOptionTrue(options, ["filterEstimatesMissing", "filterEstimateMissing"]),
474
504
  filterResolutionMissing: optionTrue(options, "filterResolutionMissing"),
475
505
  filterMetadataMissing: optionTrue(options, "filterMetadataMissing"),
476
- // Governance-missing selection filters (GH-236).
477
- filterReviewerMissing: optionTrue(options, "filterReviewerMissing"),
478
- filterRiskMissing: optionTrue(options, "filterRiskMissing"),
479
- filterConfidenceMissing: optionTrue(options, "filterConfidenceMissing"),
480
- filterSprintMissing: optionTrue(options, "filterSprintMissing"),
481
- filterReleaseMissing: optionTrue(options, "filterReleaseMissing"),
482
- // Content-field presence/absence selection filters (GH-242). Presence flags
483
- // are plain booleans; absence uses commander negation (`--no-notes` stores
484
- // notes=false) except --empty-body which is its own dest.
485
- hasNotes: optionTrue(options, "hasNotes"),
486
- hasLearnings: optionTrue(options, "hasLearnings"),
487
- hasFiles: optionTrue(options, "hasFiles"),
488
- hasDocs: optionTrue(options, "hasDocs"),
489
- hasTests: optionTrue(options, "hasTests"),
490
- hasComments: optionTrue(options, "hasComments"),
491
- hasDeps: optionTrue(options, "hasDeps"),
492
- hasBody: optionTrue(options, "hasBody"),
493
- hasLinkedCommand: optionTrue(options, "hasLinkedCommand"),
494
- noNotes: optionFalse(options, "notes"),
495
- noLearnings: optionFalse(options, "learnings"),
496
- noFiles: optionFalse(options, "files"),
497
- noDocs: optionFalse(options, "docs"),
498
- noTests: optionFalse(options, "tests"),
499
- noComments: optionFalse(options, "comments"),
500
- noDeps: optionFalse(options, "deps"),
501
- emptyBody: optionTrue(options, "emptyBody"),
502
- noLinkedCommand: optionFalse(options, "linkedCommand")
506
+ // Governance-missing (GH-236) + content presence/absence (GH-242) filters.
507
+ ...readSelectionFilterOptionFields(options)
503
508
  };
504
509
  copyUnknownOptions(normalized, options);
505
510
  return normalized;
@@ -631,33 +636,9 @@ function normalizeSearchOptions(options) {
631
636
  fields,
632
637
  compact: compactRequested || defaultCompact ? true : void 0,
633
638
  full: optionTrue(options, "full"),
634
- // Governance-missing selection filters (GH-236).
635
- filterReviewerMissing: optionTrue(options, "filterReviewerMissing"),
636
- filterRiskMissing: optionTrue(options, "filterRiskMissing"),
637
- filterConfidenceMissing: optionTrue(options, "filterConfidenceMissing"),
638
- filterSprintMissing: optionTrue(options, "filterSprintMissing"),
639
- filterReleaseMissing: optionTrue(options, "filterReleaseMissing"),
640
- // Content-field presence/absence selection filters (GH-242). Mirror
641
- // normalizeListOptions: presence flags are booleans; absence uses commander
642
- // negation (notes=false) except --empty-body which is its own dest.
643
- hasNotes: optionTrue(options, "hasNotes"),
644
- hasLearnings: optionTrue(options, "hasLearnings"),
645
- hasFiles: optionTrue(options, "hasFiles"),
646
- hasDocs: optionTrue(options, "hasDocs"),
647
- hasTests: optionTrue(options, "hasTests"),
648
- hasComments: optionTrue(options, "hasComments"),
649
- hasDeps: optionTrue(options, "hasDeps"),
650
- hasBody: optionTrue(options, "hasBody"),
651
- hasLinkedCommand: optionTrue(options, "hasLinkedCommand"),
652
- noNotes: optionFalse(options, "notes"),
653
- noLearnings: optionFalse(options, "learnings"),
654
- noFiles: optionFalse(options, "files"),
655
- noDocs: optionFalse(options, "docs"),
656
- noTests: optionFalse(options, "tests"),
657
- noComments: optionFalse(options, "comments"),
658
- noDeps: optionFalse(options, "deps"),
659
- emptyBody: optionTrue(options, "emptyBody"),
660
- noLinkedCommand: optionFalse(options, "linkedCommand")
639
+ // Governance-missing (GH-236) + content presence/absence (GH-242) filters,
640
+ // mirroring normalizeListOptions via the shared field slice.
641
+ ...readSelectionFilterOptionFields(options)
661
642
  };
662
643
  copyUnknownOptions(normalized, options);
663
644
  return normalized;
@@ -813,6 +794,7 @@ export {
813
794
  getCommandPath,
814
795
  applyDefaultOutputFormat,
815
796
  collect,
797
+ readOptionString,
816
798
  buildBackgroundTestCommandArgs,
817
799
  buildBackgroundTestAllCommandArgs,
818
800
  formatHookWarnings,
@@ -831,4 +813,4 @@ export {
831
813
  normalizeNextOptions,
832
814
  invalidateSearchCachesForMutation
833
815
  };
834
- //# sourceMappingURL=chunk-SYNKD3ZG.js.map
816
+ //# sourceMappingURL=chunk-HB4FAT3O.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../../cli/registration-helpers.ts"],
4
+ "sourcesContent": ["/**\n * @module cli/registration-helpers\n *\n * Provides CLI runtime support for Registration Helpers.\n */\nimport type { Command } from \"commander\";\nimport { pathExists } from \"../core/fs/fs-utils.js\";\nimport { normalizeStatusInput } from \"../core/item/status.js\";\nimport { refreshSearchArtifactsForMutation } from \"../core/search/cache.js\";\nimport { shouldRunSearchRefreshInForeground } from \"../core/search/background-refresh.js\";\nimport { EXIT_CODE } from \"../core/shared/constants.js\";\nimport { PmCliError } from \"../core/shared/errors.js\";\nimport { printError, printResult, writeStdout } from \"../core/output/output.js\";\nimport { getSettingsPath, resolvePmRoot } from \"../core/store/paths.js\";\nimport { readSettings } from \"../core/store/settings.js\";\nimport {\n setActiveCommandResult,\n} from \"../core/extensions/index.js\";\nimport type { GlobalOptions } from \"../core/shared/command-types.js\";\nimport type { ItemStatus } from \"../types/index.js\";\nimport {\n ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS,\n CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n CREATE_COMMANDER_STRING_OPTION_CONTRACTS,\n LIST_COMMANDER_STRING_OPTION_CONTRACTS,\n NEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n SEARCH_COMMANDER_STRING_OPTION_CONTRACTS,\n UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n UPDATE_COMMANDER_STRING_OPTION_CONTRACTS,\n readFirstValueFromCommanderOptions,\n readFirstStringFromCommanderOptions,\n readStringArrayFromCommanderOptions,\n} from \"../sdk/cli-contracts.js\";\nimport type { CommanderOptionAliasContract } from \"../sdk/cli-contracts.js\";\nimport type {\n ContextOptions,\n CreateCommandOptions,\n AggregateOptions,\n ListOptions,\n NextOptions,\n} from \"./commands/index.js\";\nimport type { runList, runActivity } from \"./commands/index.js\";\n\nexport {\n printError,\n printResult,\n writeStdout,\n};\n\nconst RESOLVED_GLOBAL_OPTIONS = Symbol(\"pm.resolvedGlobalOptions\");\n\ntype CommandWithResolvedGlobals = Command & {\n [RESOLVED_GLOBAL_OPTIONS]?: GlobalOptions;\n};\n\ninterface CommandOptionsReader {\n optsWithGlobals?: () => Record<string, unknown>;\n opts?: () => Record<string, unknown>;\n}\n\nfunction commandOptionsReader(command: unknown): CommandOptionsReader {\n return typeof command === \"object\" && command !== null ? command as CommandOptionsReader : {};\n}\n\n// Resolves the alias contract for a normalize target, falling back to a\n// single-key contract if the target is somehow absent from the contract table.\nfunction resolveCommanderContract(\n contracts: CommanderOptionAliasContract[],\n target: string,\n): CommanderOptionAliasContract {\n const contract = contracts.find((entry) => entry.target === target);\n /* c8 ignore start -- every normalize target is present in its contract table (verified by contract drift tests); the fallback is a defensive guard against future drift */\n return contract ?? { target, keys: [target] };\n /* c8 ignore stop */\n}\n\n/**\n * Implements set resolved global options for the public runtime surface of this module.\n */\nexport function setResolvedGlobalOptions(command: Command, globalOptions: GlobalOptions): void {\n (command as CommandWithResolvedGlobals)[RESOLVED_GLOBAL_OPTIONS] = { ...globalOptions };\n}\n\n/**\n * Implements clear resolved global options for the public runtime surface of this module.\n */\nexport function clearResolvedGlobalOptions(command: Command): void {\n delete (command as CommandWithResolvedGlobals)[RESOLVED_GLOBAL_OPTIONS];\n}\n\n/**\n * Implements get global options for the public runtime surface of this module.\n */\nexport function getGlobalOptions(command: Command): GlobalOptions {\n const resolved = (command as CommandWithResolvedGlobals)[RESOLVED_GLOBAL_OPTIONS];\n if (resolved) {\n return { ...resolved };\n }\n const reader = commandOptionsReader(command);\n const opts = typeof reader.optsWithGlobals === \"function\"\n ? reader.optsWithGlobals()\n : typeof reader.opts === \"function\"\n ? reader.opts()\n : {};\n return {\n json: opts.json === true ? true : undefined,\n quiet: Boolean(opts.quiet),\n noChangedFields: opts.changedFields === false,\n idOnly: opts.idOnly === true,\n path: typeof opts.pmPath === \"string\"\n ? opts.pmPath\n : typeof opts.path === \"string\"\n ? opts.path\n : undefined,\n noExtensions: opts.extensions === false,\n noPager: Boolean(opts.noPager),\n profile: Boolean(opts.profile),\n };\n}\n\n/**\n * Implements get command path for the public runtime surface of this module.\n */\nexport function getCommandPath(command: Command): string {\n const parts: string[] = [];\n let current: Command | null = command;\n while (current?.parent) {\n parts.unshift(current.name());\n current = current.parent;\n }\n return parts.join(\" \");\n}\n\n/**\n * Implements apply default output format for the public runtime surface of this module.\n */\nexport async function applyDefaultOutputFormat(globalOptions: GlobalOptions): Promise<GlobalOptions> {\n if (globalOptions.json === true) {\n return globalOptions;\n }\n const pmRoot = resolvePmRoot(process.cwd(), globalOptions.path);\n if (!(await pathExists(getSettingsPath(pmRoot)))) {\n return globalOptions;\n }\n const settings = await readSettings(pmRoot);\n return {\n ...globalOptions,\n defaultOutputFormat: settings.output.default_format,\n };\n}\n\n/**\n * Implements collect for the public runtime surface of this module.\n */\nexport function collect(value: string, previous: string[] | undefined): string[] {\n const next = previous ?? [];\n next.push(value);\n return next;\n}\n\nfunction pushOptionalValueFlag(args: string[], flag: string, value: unknown): void {\n if (typeof value !== \"string\") {\n return;\n }\n const trimmed = value.trim();\n if (trimmed.length === 0) {\n return;\n }\n args.push(flag, trimmed);\n}\n\nfunction pushOptionalBooleanFlag(args: string[], flag: string, value: unknown): void {\n if (value === true) {\n args.push(flag);\n }\n}\n\nfunction pushRepeatableValueFlag(args: string[], flag: string, values: unknown): void {\n if (!Array.isArray(values)) {\n return;\n }\n for (const value of values) {\n if (typeof value !== \"string\") {\n continue;\n }\n const trimmed = value.trim();\n if (trimmed.length === 0) {\n continue;\n }\n args.push(flag, trimmed);\n }\n}\n\nfunction optionTrue(options: Record<string, unknown>, key: string): true | undefined {\n return options[key] === true ? true : undefined;\n}\n\nfunction optionFalse(options: Record<string, unknown>, key: string): true | undefined {\n return options[key] === false ? true : undefined;\n}\n\n/**\n * Reads an option value when Commander supplied it as a string.\n */\nexport function readOptionString(options: Record<string, unknown>, key: string): string | undefined {\n return typeof options[key] === \"string\" ? options[key] : undefined;\n}\n\nfunction anyOptionTrue(options: Record<string, unknown>, keys: readonly string[]): true | undefined {\n return keys.some((key) => options[key] === true) ? true : undefined;\n}\n\nfunction copyUnknownOptions(target: Record<string, unknown>, source: Record<string, unknown>): void {\n for (const [key, value] of Object.entries(source)) {\n if (key === \"__proto__\" || key === \"constructor\" || key === \"prototype\") {\n continue;\n }\n if (Object.hasOwn(target, key)) {\n continue;\n }\n target[key] = value;\n }\n}\n\n/**\n * Implements build background test command args for the public runtime surface of this module.\n */\nexport function buildBackgroundTestCommandArgs(id: string, options: Record<string, unknown>): string[] {\n const args: string[] = [\"test\", id, \"--run\", \"--json\", \"--progress\"];\n pushRepeatableValueFlag(args, \"--add\", options.add);\n pushRepeatableValueFlag(args, \"--add-json\", options.addJson);\n pushRepeatableValueFlag(args, \"--remove\", options.remove);\n pushOptionalValueFlag(args, \"--match\", options.match);\n pushOptionalValueFlag(args, \"--only-index\", options.onlyIndex);\n pushOptionalBooleanFlag(args, \"--only-last\", options.onlyLast);\n pushOptionalValueFlag(args, \"--timeout\", options.timeout);\n pushRepeatableValueFlag(args, \"--env-set\", options.envSet);\n pushRepeatableValueFlag(args, \"--env-clear\", options.envClear);\n pushOptionalBooleanFlag(args, \"--shared-host-safe\", options.sharedHostSafe);\n pushOptionalValueFlag(args, \"--pm-context\", options.pmContext);\n pushOptionalBooleanFlag(args, \"--override-linked-pm-context\", options.overrideLinkedPmContext);\n pushOptionalBooleanFlag(args, \"--fail-on-context-mismatch\", options.failOnContextMismatch);\n pushOptionalBooleanFlag(args, \"--fail-on-skipped\", options.failOnSkipped);\n pushOptionalBooleanFlag(args, \"--fail-on-empty-test-run\", options.failOnEmptyTestRun);\n pushOptionalBooleanFlag(args, \"--require-assertions-for-pm\", options.requireAssertionsForPm);\n pushOptionalBooleanFlag(args, \"--check-context\", options.checkContext);\n pushOptionalBooleanFlag(args, \"--auto-pm-context\", options.autoPmContext);\n pushOptionalValueFlag(args, \"--author\", options.author);\n pushOptionalValueFlag(args, \"--message\", options.message);\n pushOptionalBooleanFlag(args, \"--force\", options.force);\n return args;\n}\n\n/**\n * Implements build background test all command args for the public runtime surface of this module.\n */\nexport function buildBackgroundTestAllCommandArgs(options: Record<string, unknown>): string[] {\n const args: string[] = [\"test-all\", \"--json\", \"--progress\"];\n pushOptionalValueFlag(args, \"--status\", options.status);\n pushOptionalValueFlag(args, \"--limit\", options.limit);\n pushOptionalValueFlag(args, \"--offset\", options.offset);\n pushOptionalValueFlag(args, \"--timeout\", options.timeout);\n pushRepeatableValueFlag(args, \"--env-set\", options.envSet);\n pushRepeatableValueFlag(args, \"--env-clear\", options.envClear);\n pushOptionalBooleanFlag(args, \"--shared-host-safe\", options.sharedHostSafe);\n pushOptionalValueFlag(args, \"--pm-context\", options.pmContext);\n pushOptionalBooleanFlag(args, \"--override-linked-pm-context\", options.overrideLinkedPmContext);\n pushOptionalBooleanFlag(args, \"--fail-on-context-mismatch\", options.failOnContextMismatch);\n pushOptionalBooleanFlag(args, \"--fail-on-skipped\", options.failOnSkipped);\n pushOptionalBooleanFlag(args, \"--fail-on-empty-test-run\", options.failOnEmptyTestRun);\n pushOptionalBooleanFlag(args, \"--require-assertions-for-pm\", options.requireAssertionsForPm);\n pushOptionalBooleanFlag(args, \"--check-context\", options.checkContext);\n pushOptionalBooleanFlag(args, \"--auto-pm-context\", options.autoPmContext);\n return args;\n}\n\n/**\n * Implements format hook warnings for the public runtime surface of this module.\n */\nexport function formatHookWarnings(warnings: string[]): string {\n return warnings.join(\",\");\n}\n\n/**\n * Implements normalize create options for the public runtime surface of this module.\n */\nexport function normalizeCreateOptions(\n commandOptions: Record<string, unknown>,\n options: { requireType?: boolean } = {},\n): CreateCommandOptions {\n const readCreateString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n commandOptions,\n resolveCommanderContract(CREATE_COMMANDER_STRING_OPTION_CONTRACTS, target),\n );\n const readCreateList = (target: string): string[] | undefined =>\n readStringArrayFromCommanderOptions(\n commandOptions,\n resolveCommanderContract(CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, target),\n );\n\n const type = readCreateString(\"type\");\n if (options.requireType !== false && type === undefined) {\n throw new PmCliError(\n \"Missing required option --type <value>. Why required: create resolves runtime schema fields/workflow from item type. Retry: add --type <built-in or configured custom type> (example: --type Task).\",\n EXIT_CODE.USAGE,\n );\n }\n\n const normalized: Record<string, unknown> = {\n title: readCreateString(\"title\"),\n description: readCreateString(\"description\"),\n type,\n template: readCreateString(\"template\"),\n createMode: readCreateString(\"createMode\"),\n schedulePreset: readCreateString(\"schedulePreset\"),\n status: readCreateString(\"status\"),\n priority: readCreateString(\"priority\"),\n tags: readCreateString(\"tags\"),\n addTags: readCreateList(\"addTags\"),\n body: readCreateString(\"body\"),\n deadline: readCreateString(\"deadline\"),\n estimatedMinutes: readCreateString(\"estimatedMinutes\"),\n acceptanceCriteria: readCreateString(\"acceptanceCriteria\"),\n definitionOfReady: readCreateString(\"definitionOfReady\"),\n order: readCreateString(\"order\"),\n rank: readCreateString(\"rank\"),\n goal: readCreateString(\"goal\"),\n objective: readCreateString(\"objective\"),\n value: readCreateString(\"value\"),\n impact: readCreateString(\"impact\"),\n outcome: readCreateString(\"outcome\"),\n whyNow: readCreateString(\"whyNow\"),\n author: readCreateString(\"author\"),\n message: readCreateString(\"message\"),\n assignee: readCreateString(\"assignee\"),\n parent: readCreateString(\"parent\"),\n allowMissingParent: optionTrue(commandOptions, \"allowMissingParent\") === true,\n reviewer: readCreateString(\"reviewer\"),\n risk: readCreateString(\"risk\"),\n confidence: readCreateString(\"confidence\"),\n sprint: readCreateString(\"sprint\"),\n release: readCreateString(\"release\"),\n blockedBy: readCreateString(\"blockedBy\"),\n blockedReason: readCreateString(\"blockedReason\"),\n unblockNote: readCreateString(\"unblockNote\"),\n reporter: readCreateString(\"reporter\"),\n severity: readCreateString(\"severity\"),\n environment: readCreateString(\"environment\"),\n reproSteps: readCreateString(\"reproSteps\"),\n resolution: readCreateString(\"resolution\"),\n expectedResult: readCreateString(\"expectedResult\"),\n actualResult: readCreateString(\"actualResult\"),\n affectedVersion: readCreateString(\"affectedVersion\"),\n fixedVersion: readCreateString(\"fixedVersion\"),\n component: readCreateString(\"component\"),\n regression: readCreateString(\"regression\"),\n customerImpact: readCreateString(\"customerImpact\"),\n dep: readCreateList(\"dep\"),\n comment: readCreateList(\"comment\"),\n note: readCreateList(\"note\"),\n learning: readCreateList(\"learning\"),\n file: readCreateList(\"file\"),\n test: readCreateList(\"test\"),\n doc: readCreateList(\"doc\"),\n reminder: readCreateList(\"reminder\"),\n event: readCreateList(\"event\"),\n typeOption: readCreateList(\"typeOption\"),\n field: readCreateList(\"field\"),\n unset: readCreateList(\"unset\"),\n clearDeps: optionTrue(commandOptions, \"clearDeps\"),\n clearComments: optionTrue(commandOptions, \"clearComments\"),\n clearNotes: optionTrue(commandOptions, \"clearNotes\"),\n clearLearnings: optionTrue(commandOptions, \"clearLearnings\"),\n clearFiles: optionTrue(commandOptions, \"clearFiles\"),\n clearTests: optionTrue(commandOptions, \"clearTests\"),\n clearDocs: optionTrue(commandOptions, \"clearDocs\"),\n clearReminders: optionTrue(commandOptions, \"clearReminders\"),\n clearEvents: optionTrue(commandOptions, \"clearEvents\"),\n clearTypeOptions: optionTrue(commandOptions, \"clearTypeOptions\"),\n }\n copyUnknownOptions(normalized, commandOptions);\n return normalized as CreateCommandOptions;\n}\n\n/**\n * Implements normalize update options for the public runtime surface of this module.\n */\nexport function normalizeUpdateOptions(commandOptions: Record<string, unknown>): Record<string, unknown> {\n const readUpdateString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n commandOptions,\n resolveCommanderContract(UPDATE_COMMANDER_STRING_OPTION_CONTRACTS, target),\n );\n const readUpdateList = (target: string): string[] | undefined =>\n readStringArrayFromCommanderOptions(\n commandOptions,\n resolveCommanderContract(UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, target),\n );\n\n const normalized: Record<string, unknown> = {\n title: readUpdateString(\"title\"),\n description: readUpdateString(\"description\"),\n body: readUpdateString(\"body\"),\n status: readUpdateString(\"status\"),\n closeReason: readUpdateString(\"closeReason\"),\n priority: readUpdateString(\"priority\"),\n type: readUpdateString(\"type\"),\n tags: readUpdateString(\"tags\"),\n addTags: readUpdateList(\"addTags\"),\n removeTags: readUpdateList(\"removeTags\"),\n deadline: readUpdateString(\"deadline\"),\n estimatedMinutes: readUpdateString(\"estimatedMinutes\"),\n acceptanceCriteria: readUpdateString(\"acceptanceCriteria\"),\n definitionOfReady: readUpdateString(\"definitionOfReady\"),\n order: readUpdateString(\"order\"),\n rank: readUpdateString(\"rank\"),\n goal: readUpdateString(\"goal\"),\n objective: readUpdateString(\"objective\"),\n value: readUpdateString(\"value\"),\n impact: readUpdateString(\"impact\"),\n outcome: readUpdateString(\"outcome\"),\n whyNow: readUpdateString(\"whyNow\"),\n author: readUpdateString(\"author\"),\n message: readUpdateString(\"message\"),\n force: Boolean(commandOptions.force),\n allowAuditUpdate: anyOptionTrue(commandOptions, [\"allowAuditUpdate\", \"allow_audit_update\"]),\n allowAuditDepUpdate: anyOptionTrue(commandOptions, [\"allowAuditDepUpdate\", \"allow_audit_dep_update\"]),\n assignee: readUpdateString(\"assignee\"),\n parent: readUpdateString(\"parent\"),\n reviewer: readUpdateString(\"reviewer\"),\n risk: readUpdateString(\"risk\"),\n confidence: readUpdateString(\"confidence\"),\n sprint: readUpdateString(\"sprint\"),\n release: readUpdateString(\"release\"),\n blockedBy: readUpdateString(\"blockedBy\"),\n blockedReason: readUpdateString(\"blockedReason\"),\n unblockNote: readUpdateString(\"unblockNote\"),\n reporter: readUpdateString(\"reporter\"),\n severity: readUpdateString(\"severity\"),\n environment: readUpdateString(\"environment\"),\n reproSteps: readUpdateString(\"reproSteps\"),\n resolution: readUpdateString(\"resolution\"),\n expectedResult: readUpdateString(\"expectedResult\"),\n actualResult: readUpdateString(\"actualResult\"),\n affectedVersion: readUpdateString(\"affectedVersion\"),\n fixedVersion: readUpdateString(\"fixedVersion\"),\n component: readUpdateString(\"component\"),\n regression: readUpdateString(\"regression\"),\n customerImpact: readUpdateString(\"customerImpact\"),\n dep: readUpdateList(\"dep\"),\n depRemove: readUpdateList(\"depRemove\"),\n replaceDeps: optionTrue(commandOptions, \"replaceDeps\"),\n replaceTests: optionTrue(commandOptions, \"replaceTests\"),\n comment: readUpdateList(\"comment\"),\n note: readUpdateList(\"note\"),\n learning: readUpdateList(\"learning\"),\n file: readUpdateList(\"file\"),\n test: readUpdateList(\"test\"),\n doc: readUpdateList(\"doc\"),\n reminder: readUpdateList(\"reminder\"),\n event: readUpdateList(\"event\"),\n typeOption: readUpdateList(\"typeOption\"),\n field: readUpdateList(\"field\"),\n unset: readUpdateList(\"unset\"),\n clearDeps: optionTrue(commandOptions, \"clearDeps\"),\n clearComments: optionTrue(commandOptions, \"clearComments\"),\n clearNotes: optionTrue(commandOptions, \"clearNotes\"),\n clearLearnings: optionTrue(commandOptions, \"clearLearnings\"),\n clearFiles: optionTrue(commandOptions, \"clearFiles\"),\n clearTests: optionTrue(commandOptions, \"clearTests\"),\n clearDocs: optionTrue(commandOptions, \"clearDocs\"),\n clearReminders: optionTrue(commandOptions, \"clearReminders\"),\n clearEvents: optionTrue(commandOptions, \"clearEvents\"),\n clearTypeOptions: optionTrue(commandOptions, \"clearTypeOptions\"),\n }\n copyUnknownOptions(normalized, commandOptions);\n return normalized;\n}\n\nconst UPDATE_MANY_CONTROL_OPTION_KEYS = new Set<string>([\n \"filterStatus\",\n \"filterType\",\n \"filterTag\",\n \"filterPriority\",\n \"filterDeadlineBefore\",\n \"filterDeadlineAfter\",\n \"filterUpdatedAfter\",\n \"filterUpdatedBefore\",\n \"filterCreatedAfter\",\n \"filterCreatedBefore\",\n \"filterAssignee\",\n \"filterAssigneeFilter\",\n \"filterAssignee_filter\",\n \"filterParent\",\n \"filterSprint\",\n \"filterRelease\",\n \"filterAcMissing\",\n \"filterEstimatesMissing\",\n \"filterEstimateMissing\",\n \"filterResolutionMissing\",\n \"filterMetadataMissing\",\n \"filterReviewerMissing\",\n \"filterRiskMissing\",\n \"filterConfidenceMissing\",\n \"filterSprintMissing\",\n \"filterReleaseMissing\",\n \"filterHasNotes\",\n \"filterNoNotes\",\n \"filterHasLearnings\",\n \"filterNoLearnings\",\n \"filterHasFiles\",\n \"filterNoFiles\",\n \"filterHasDocs\",\n \"filterNoDocs\",\n \"filterHasTests\",\n \"filterNoTests\",\n \"filterHasComments\",\n \"filterNoComments\",\n \"filterHasDeps\",\n \"filterNoDeps\",\n \"filterHasBody\",\n \"filterEmptyBody\",\n \"filterHasLinkedCommand\",\n \"filterNoLinkedCommand\",\n \"ids\",\n \"limit\",\n \"offset\",\n \"dryRun\",\n \"rollback\",\n \"checkpoint\",\n]);\n\n/**\n * Implements extract update many mutation option source for the public runtime surface of this module.\n */\nexport function extractUpdateManyMutationOptionSource(commandOptions: Record<string, unknown>): Record<string, unknown> {\n const mutationOptions: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(commandOptions)) {\n if (UPDATE_MANY_CONTROL_OPTION_KEYS.has(key)) {\n continue;\n }\n mutationOptions[key] = value;\n }\n return mutationOptions;\n}\n\nfunction readListOptionString(options: Record<string, unknown>, target: string): string | undefined {\n const contract = resolveCommanderContract(LIST_COMMANDER_STRING_OPTION_CONTRACTS, target);\n const stringValue = readFirstStringFromCommanderOptions(options, contract);\n if (stringValue !== undefined) {\n return stringValue;\n }\n for (const key of contract.keys) {\n const value = options[key];\n /* c8 ignore start -- unreachable: readFirstStringFromCommanderOptions already returns above for any string value under contract.keys, so a string here cannot occur */\n if (target === \"ids\" && typeof value === \"string\") {\n return value;\n }\n /* c8 ignore stop */\n if (typeof value === \"number\" && Number.isFinite(value)) {\n return String(value);\n }\n }\n return undefined;\n}\n\n// Shared governance-missing (GH-236) + content-field presence/absence (GH-242)\n// selection-filter fields. Presence flags are plain booleans; absence uses\n// commander negation (`--no-notes` stores notes=false) except --empty-body\n// which is its own dest. Spread into normalizeListOptions and\n// normalizeSearchOptions at the same position so key order is preserved.\nfunction readSelectionFilterOptionFields(options: Record<string, unknown>): Record<string, true | undefined> {\n return {\n filterReviewerMissing: optionTrue(options, \"filterReviewerMissing\"),\n filterRiskMissing: optionTrue(options, \"filterRiskMissing\"),\n filterConfidenceMissing: optionTrue(options, \"filterConfidenceMissing\"),\n filterSprintMissing: optionTrue(options, \"filterSprintMissing\"),\n filterReleaseMissing: optionTrue(options, \"filterReleaseMissing\"),\n hasNotes: optionTrue(options, \"hasNotes\"),\n hasLearnings: optionTrue(options, \"hasLearnings\"),\n hasFiles: optionTrue(options, \"hasFiles\"),\n hasDocs: optionTrue(options, \"hasDocs\"),\n hasTests: optionTrue(options, \"hasTests\"),\n hasComments: optionTrue(options, \"hasComments\"),\n hasDeps: optionTrue(options, \"hasDeps\"),\n hasBody: optionTrue(options, \"hasBody\"),\n hasLinkedCommand: optionTrue(options, \"hasLinkedCommand\"),\n noNotes: optionFalse(options, \"notes\"),\n noLearnings: optionFalse(options, \"learnings\"),\n noFiles: optionFalse(options, \"files\"),\n noDocs: optionFalse(options, \"docs\"),\n noTests: optionFalse(options, \"tests\"),\n noComments: optionFalse(options, \"comments\"),\n noDeps: optionFalse(options, \"deps\"),\n emptyBody: optionTrue(options, \"emptyBody\"),\n noLinkedCommand: optionFalse(options, \"linkedCommand\"),\n };\n}\n\n/**\n * Implements normalize list options for the public runtime surface of this module.\n */\nexport function normalizeListOptions(options: Record<string, unknown>): ListOptions {\n const normalized: Record<string, unknown> = {\n status: readListOptionString(options, \"status\"),\n type: readListOptionString(options, \"type\"),\n tag: readListOptionString(options, \"tag\"),\n priority: readListOptionString(options, \"priority\"),\n deadlineBefore: readListOptionString(options, \"deadlineBefore\"),\n deadlineAfter: readListOptionString(options, \"deadlineAfter\"),\n updatedAfter: readListOptionString(options, \"updatedAfter\"),\n updatedBefore: readListOptionString(options, \"updatedBefore\"),\n createdAfter: readListOptionString(options, \"createdAfter\"),\n createdBefore: readListOptionString(options, \"createdBefore\"),\n ids: readListOptionString(options, \"ids\"),\n assignee: readListOptionString(options, \"assignee\"),\n assigneeFilter: readListOptionString(options, \"assigneeFilter\"),\n parent: readListOptionString(options, \"parent\"),\n sprint: readListOptionString(options, \"sprint\"),\n release: readListOptionString(options, \"release\"),\n limit: readListOptionString(options, \"limit\"),\n offset: readListOptionString(options, \"offset\"),\n // Commander stores --no-truncate as truncate=false; --all is the positive alias.\n noTruncate: optionFalse(options, \"truncate\") ?? optionTrue(options, \"all\"),\n includeBody: optionTrue(options, \"includeBody\"),\n compact: optionTrue(options, \"compact\"),\n brief: optionTrue(options, \"brief\"),\n full: optionTrue(options, \"full\"),\n fields: readListOptionString(options, \"fields\"),\n sort: readListOptionString(options, \"sort\"),\n order: readListOptionString(options, \"order\"),\n tree: optionTrue(options, \"tree\"),\n treeDepth: readListOptionString(options, \"treeDepth\"),\n filterAcMissing: optionTrue(options, \"filterAcMissing\"),\n filterEstimatesMissing: anyOptionTrue(options, [\"filterEstimatesMissing\", \"filterEstimateMissing\"]),\n filterResolutionMissing: optionTrue(options, \"filterResolutionMissing\"),\n filterMetadataMissing: optionTrue(options, \"filterMetadataMissing\"),\n // Governance-missing (GH-236) + content presence/absence (GH-242) filters.\n ...readSelectionFilterOptionFields(options),\n }\n copyUnknownOptions(normalized, options);\n return normalized as ListOptions;\n}\n\n/**\n * Implements normalize aggregate options for the public runtime surface of this module.\n */\nexport function normalizeAggregateOptions(options: Record<string, unknown>): AggregateOptions {\n return {\n groupBy: typeof options.groupBy === \"string\" ? options.groupBy : undefined,\n count: options.count === true ? true : undefined,\n completion: options.completion === true ? true : undefined,\n sum: typeof options.sum === \"string\" ? options.sum : undefined,\n avg: typeof options.avg === \"string\" ? options.avg : undefined,\n includeUnparented: options.includeUnparented === true || options.include_unparented === true,\n status: typeof options.status === \"string\" ? options.status : undefined,\n type: readListOptionString(options, \"type\"),\n tag: readListOptionString(options, \"tag\"),\n priority: readListOptionString(options, \"priority\"),\n deadlineBefore: readListOptionString(options, \"deadlineBefore\"),\n deadlineAfter: readListOptionString(options, \"deadlineAfter\"),\n assignee: readListOptionString(options, \"assignee\"),\n assigneeFilter: readListOptionString(options, \"assigneeFilter\"),\n parent: readListOptionString(options, \"parent\"),\n sprint: readListOptionString(options, \"sprint\"),\n release: readListOptionString(options, \"release\"),\n };\n}\n\ntype ListCommandResult = Awaited<ReturnType<typeof runList>>;\n\n/**\n * Implements print list json stream for the public runtime surface of this module.\n */\nexport function printListJsonStream(commandName: string, result: ListCommandResult, globalOptions: GlobalOptions): void {\n setActiveCommandResult(result);\n if (globalOptions.quiet) {\n return;\n }\n const warnings = Array.isArray(result.warnings) ? result.warnings : [];\n const metaPayload: Record<string, unknown> = {\n type: \"meta\",\n command: commandName,\n count: result.count,\n now: result.now,\n filters: result.filters,\n };\n if (warnings.length > 0) {\n metaPayload.warnings = warnings;\n }\n if (!writeStdout(`${JSON.stringify(metaPayload)}\\n`)) {\n return;\n }\n for (const item of result.items) {\n if (!writeStdout(`${JSON.stringify({ type: \"item\", command: commandName, item })}\\n`)) {\n return;\n }\n }\n writeStdout(`${JSON.stringify({ type: \"end\", command: commandName, count: result.count })}\\n`);\n}\n\ntype ActivityCommandResult = Awaited<ReturnType<typeof runActivity>>;\n\n/**\n * Implements print activity json stream for the public runtime surface of this module.\n */\nexport function printActivityJsonStream(\n result: ActivityCommandResult,\n options: {\n id?: string;\n op?: string;\n author?: string;\n from?: string;\n to?: string;\n limit?: string;\n },\n globalOptions: GlobalOptions,\n): void {\n setActiveCommandResult(result);\n if (globalOptions.quiet) {\n return;\n }\n const metaPayload = {\n type: \"meta\",\n command: \"activity\",\n count: result.count,\n filters: {\n id: options.id ?? null,\n op: options.op ?? null,\n author: options.author ?? null,\n from: options.from ?? null,\n to: options.to ?? null,\n limit: options.limit ?? null,\n },\n };\n if (!writeStdout(`${JSON.stringify(metaPayload)}\\n`)) {\n return;\n }\n const entries = result.compact && result.compact_activity ? result.compact_activity : result.activity;\n for (const entry of entries) {\n if (!writeStdout(`${JSON.stringify({ type: \"entry\", command: \"activity\", entry })}\\n`)) {\n return;\n }\n }\n writeStdout(`${JSON.stringify({ type: \"end\", command: \"activity\", count: result.count })}\\n`);\n}\n\n/**\n * Implements normalize search options for the public runtime surface of this module.\n */\nexport function normalizeSearchOptions(options: Record<string, unknown>): Record<string, unknown> {\n const readSearchString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n options,\n resolveCommanderContract(SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, target),\n );\n const readSearchStringOrNumber = (target: string): string | number | undefined => {\n const candidate = readFirstValueFromCommanderOptions(\n options,\n resolveCommanderContract(SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, target),\n );\n if (typeof candidate === \"string\") {\n return candidate;\n }\n if (typeof candidate === \"number\" && Number.isFinite(candidate)) {\n return candidate;\n }\n return undefined;\n };\n const fields = readSearchString(\"fields\");\n const compactRequested = options.compact === true;\n const fullRequested = options.full === true;\n const defaultCompact = !compactRequested && !fullRequested && fields === undefined;\n const mode = options.semantic === true ? \"semantic\"\n : options.hybrid === true ? \"hybrid\"\n : readSearchString(\"mode\");\n const normalized: Record<string, unknown> = {\n mode,\n matchMode: readSearchString(\"matchMode\"),\n minScore: readSearchStringOrNumber(\"minScore\"),\n count: optionTrue(options, \"count\"),\n semanticWeight: readSearchStringOrNumber(\"semanticWeight\"),\n includeLinked: optionTrue(options, \"includeLinked\"),\n titleExact: optionTrue(options, \"titleExact\"),\n phraseExact: optionTrue(options, \"phraseExact\"),\n highlight: optionTrue(options, \"highlight\"),\n status: readSearchString(\"status\"),\n type: readSearchString(\"type\"),\n tag: readSearchString(\"tag\"),\n priority: readSearchString(\"priority\"),\n deadlineBefore: readSearchString(\"deadlineBefore\"),\n deadlineAfter: readSearchString(\"deadlineAfter\"),\n updatedAfter: readSearchString(\"updatedAfter\"),\n updatedBefore: readSearchString(\"updatedBefore\"),\n createdAfter: readSearchString(\"createdAfter\"),\n createdBefore: readSearchString(\"createdBefore\"),\n assignee: readSearchString(\"assignee\"),\n sprint: readSearchString(\"sprint\"),\n release: readSearchString(\"release\"),\n parent: readSearchString(\"parent\"),\n limit: readSearchString(\"limit\"),\n fields,\n compact: compactRequested || defaultCompact ? true : undefined,\n full: optionTrue(options, \"full\"),\n // Governance-missing (GH-236) + content presence/absence (GH-242) filters,\n // mirroring normalizeListOptions via the shared field slice.\n ...readSelectionFilterOptionFields(options),\n }\n copyUnknownOptions(normalized, options);\n return normalized;\n}\n\n/**\n * Implements normalize search keywords input for the public runtime surface of this module.\n */\nexport function normalizeSearchKeywordsInput(keywords: string[]): string {\n const query = keywords\n .map((entry) => entry.trim())\n .filter((entry) => entry.length > 0)\n .join(\" \");\n if (query.length === 0) {\n throw new PmCliError(\"Search query must not be empty\", EXIT_CODE.USAGE);\n }\n return query;\n}\n\n\n/**\n * Implements normalize activity options for the public runtime surface of this module.\n */\nexport function normalizeActivityOptions(options: Record<string, unknown>): {\n id?: string;\n op?: string;\n author?: string;\n from?: string;\n to?: string;\n limit?: string;\n compact?: boolean;\n} {\n const readActivityString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n options,\n resolveCommanderContract(ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, target),\n );\n return {\n id: readActivityString(\"id\"),\n op: readActivityString(\"op\"),\n author: readActivityString(\"author\"),\n from: readActivityString(\"from\"),\n to: readActivityString(\"to\"),\n limit: readActivityString(\"limit\"),\n compact: options.full === true ? false : options.compact === false ? false : true,\n };\n}\n\nconst ACTIVITY_STREAM_ENABLED_VALUES = new Set([\"\", \"rows\", \"ndjson\", \"jsonl\", \"true\", \"1\", \"yes\", \"on\"]);\nconst ACTIVITY_STREAM_DISABLED_VALUES = new Set([\"false\", \"off\", \"none\", \"0\"]);\n\n/**\n * Implements resolve activity stream mode for the public runtime surface of this module.\n */\nexport function resolveActivityStreamMode(raw: unknown): boolean {\n if (raw === true) {\n return true;\n }\n if (raw === false || raw === undefined || raw === null) {\n return false;\n }\n if (typeof raw === \"string\") {\n const normalized = raw.trim().toLowerCase();\n if (ACTIVITY_STREAM_ENABLED_VALUES.has(normalized)) {\n return true;\n }\n if (ACTIVITY_STREAM_DISABLED_VALUES.has(normalized)) {\n return false;\n }\n }\n throw new PmCliError(\"Activity --stream accepts rows|ndjson|jsonl (or no value)\", EXIT_CODE.USAGE);\n}\n\n/**\n * Implements normalize context options for the public runtime surface of this module.\n */\nexport function normalizeContextOptions(options: Record<string, unknown>): ContextOptions {\n const readContextString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n options,\n resolveCommanderContract(CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS, target),\n );\n const sectionRaw = options.section;\n const section: string[] | undefined = Array.isArray(sectionRaw)\n ? (sectionRaw as string[]).filter((v) => typeof v === \"string\" && v.trim().length > 0)\n : typeof sectionRaw === \"string\" && sectionRaw.trim().length > 0\n ? [sectionRaw]\n : undefined;\n const normalized: Record<string, unknown> = {\n date: readContextString(\"date\"),\n from: readContextString(\"from\"),\n to: readContextString(\"to\"),\n past: options.past === true ? true : undefined,\n type: readContextString(\"type\"),\n tag: readContextString(\"tag\"),\n priority: readContextString(\"priority\"),\n assignee: readContextString(\"assignee\"),\n assigneeFilter: readContextString(\"assigneeFilter\"),\n sprint: readContextString(\"sprint\"),\n release: readContextString(\"release\"),\n parent: readContextString(\"parent\"),\n limit: readContextString(\"limit\"),\n format: readContextString(\"format\"),\n depth: readContextString(\"depth\"),\n fields: readContextString(\"fields\"),\n section: section && section.length > 0 ? section : undefined,\n activityLimit: readContextString(\"activityLimit\"),\n staleThreshold: readContextString(\"staleThreshold\"),\n };\n for (const [key, value] of Object.entries(options)) {\n if (Object.hasOwn(normalized, key)) {\n continue;\n }\n normalized[key] = value;\n }\n return normalized as ContextOptions;\n}\n\n/**\n * Normalizes raw commander options for `pm next` into a typed {@link NextOptions}\n * payload, resolving snake_case flag aliases (e.g. `--assignee_filter`,\n * `--blocked_limit`, `--ready_only`) to their canonical camelCase keys and folding\n * the boolean `--ready-only` switch. Unknown keys are passed through untouched so\n * downstream filtering still sees them.\n */\nexport function normalizeNextOptions(options: Record<string, unknown>): NextOptions {\n const readNextString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n options,\n resolveCommanderContract(NEXT_COMMANDER_STRING_OPTION_CONTRACTS, target),\n );\n const normalized: Record<string, unknown> = {\n type: readNextString(\"type\"),\n tag: readNextString(\"tag\"),\n priority: readNextString(\"priority\"),\n assignee: readNextString(\"assignee\"),\n assigneeFilter: readNextString(\"assigneeFilter\"),\n sprint: readNextString(\"sprint\"),\n release: readNextString(\"release\"),\n parent: readNextString(\"parent\"),\n limit: readNextString(\"limit\"),\n blockedLimit: readNextString(\"blockedLimit\"),\n readyOnly: options.readyOnly === true || options.ready_only === true ? true : undefined,\n format: readNextString(\"format\"),\n };\n for (const [key, value] of Object.entries(options)) {\n if (Object.hasOwn(normalized, key)) {\n continue;\n }\n normalized[key] = value;\n }\n return normalized as NextOptions;\n}\n\nfunction collectMutationItemIds(result: unknown): string[] {\n if (!result || typeof result !== \"object\") {\n return [];\n }\n const record = result as Record<string, unknown>;\n const ids = new Set<string>();\n const pushId = (value: unknown): void => {\n if (typeof value !== \"string\") {\n return;\n }\n const normalized = value.trim();\n if (normalized.length === 0) {\n return;\n }\n ids.add(normalized);\n };\n\n pushId(record.id);\n\n const item = record.item;\n if (item && typeof item === \"object\") {\n pushId((item as { id?: unknown }).id);\n }\n\n const explicitIds = record.ids;\n if (Array.isArray(explicitIds)) {\n for (const candidate of explicitIds) {\n pushId(candidate);\n }\n }\n\n const items = record.items;\n if (Array.isArray(items)) {\n for (const candidate of items) {\n if (!candidate || typeof candidate !== \"object\") {\n continue;\n }\n pushId((candidate as { id?: unknown }).id);\n }\n }\n\n return [...ids].sort((left, right) => left.localeCompare(right));\n}\n\n/**\n * Implements invalidate search caches for mutation for the public runtime surface of this module.\n */\nexport async function invalidateSearchCachesForMutation(globalOptions: GlobalOptions, result?: unknown): Promise<void> {\n const pmRoot = resolvePmRoot(process.cwd(), globalOptions.path);\n const refreshResult = await refreshSearchArtifactsForMutation(pmRoot, collectMutationItemIds(result), {\n background: !shouldRunSearchRefreshInForeground(),\n });\n if (globalOptions.profile && refreshResult.warnings.length > 0) {\n printError(`profile:search_refresh_warnings=${formatHookWarnings(refreshResult.warnings)}`);\n }\n}\n\nexport const _testOnly = {\n collectMutationItemIds,\n};\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,29 +1,29 @@
1
1
  import {
2
2
  runActivity
3
- } from "./chunk-GFMSLORL.js";
3
+ } from "./chunk-BI4R7HI2.js";
4
4
  import {
5
5
  collectRuntimeFilterValues,
6
6
  matchesRuntimeFilters,
7
7
  runList
8
- } from "./chunk-W47SML5B.js";
8
+ } from "./chunk-ZFTKYWIF.js";
9
9
  import {
10
10
  parseIntegerLimit,
11
11
  parsePriority,
12
12
  parseType
13
- } from "./chunk-JMK5GCK2.js";
13
+ } from "./chunk-4PFVUUYV.js";
14
14
  import {
15
15
  listAllFrontMatterLight
16
- } from "./chunk-JXAUVO6X.js";
16
+ } from "./chunk-6KRFL33E.js";
17
17
  import {
18
18
  isTerminalStatus,
19
19
  normalizeStatusForRegistry,
20
20
  normalizeStatusInput
21
- } from "./chunk-IEEJQCZ4.js";
21
+ } from "./chunk-3W2HJKJX.js";
22
22
  import {
23
23
  compareTimestampStrings,
24
24
  nowIso,
25
25
  resolveIsoOrRelative
26
- } from "./chunk-AIAIXG7I.js";
26
+ } from "./chunk-AJHYQCBJ.js";
27
27
  import {
28
28
  CONTEXT_DEPTH_VALUES,
29
29
  CONTEXT_SECTION_VALUES,
@@ -40,7 +40,7 @@ import {
40
40
  resolveRuntimeFieldRegistry,
41
41
  resolveRuntimeStatusRegistry,
42
42
  weekdayOrderIndex
43
- } from "./chunk-7NSPKJUS.js";
43
+ } from "./chunk-KHVGM5CS.js";
44
44
 
45
45
  // dist/cli/commands/calendar.js
46
46
  import { encode as encodeToon } from "@toon-format/toon";
@@ -1881,4 +1881,4 @@ export {
1881
1881
  renderContextMarkdown,
1882
1882
  runContext
1883
1883
  };
1884
- //# sourceMappingURL=chunk-XEWQKDYZ.js.map
1884
+ //# sourceMappingURL=chunk-HQAF23Q2.js.map
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  EXIT_CODE,
5
5
  PmCliError
6
- } from "./chunk-I66WE2HE.js";
6
+ } from "./chunk-L4SLHV6G.js";
7
7
 
8
8
  // dist/core/item/parse.js
9
9
  var STDIN_TOKEN = "-";
@@ -351,6 +351,6 @@ export {
351
351
  createStdinTokenResolver,
352
352
  parseOptionalNumber
353
353
  };
354
- //# sourceMappingURL=chunk-KLXF7NCC.js.map
354
+ //# sourceMappingURL=chunk-JBZ2NTKX.js.map
355
355
 
356
356
  //# debugId=41b3db5d-9c78-5ab6-9868-2b31d0e5eac2
@@ -8,14 +8,15 @@ import {
8
8
  removeItemType,
9
9
  serializeItemTypesFile,
10
10
  upsertItemType
11
- } from "./chunk-3LCUASYG.js";
11
+ } from "./chunk-6NYJGMTY.js";
12
12
  import {
13
13
  acquireLock,
14
14
  listAllFrontMatterLight
15
- } from "./chunk-JXAUVO6X.js";
15
+ } from "./chunk-6KRFL33E.js";
16
16
  import {
17
+ evictOldestMemoEntries,
17
18
  nowIso
18
- } from "./chunk-AIAIXG7I.js";
19
+ } from "./chunk-AJHYQCBJ.js";
19
20
  import {
20
21
  DEFAULT_RUNTIME_SCHEMA_FILE_PATHS,
21
22
  DEFAULT_RUNTIME_STATUS_DEFINITIONS,
@@ -39,7 +40,7 @@ import {
39
40
  runActiveOnWriteHooks,
40
41
  toDefaultFolder,
41
42
  writeFileAtomic
42
- } from "./chunk-7NSPKJUS.js";
43
+ } from "./chunk-KHVGM5CS.js";
43
44
 
44
45
  // dist/cli/commands/schema.js
45
46
  import path from "node:path";
@@ -49,14 +50,28 @@ import { mkdir } from "node:fs/promises";
49
50
  !(function() {
50
51
  try {
51
52
  var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
52
- n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "672a473b-429a-5039-b5ca-0937c660e6dd");
53
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4ca30149-d989-52dc-8614-81b993d3c9a5");
53
54
  } catch (e2) {
54
55
  }
55
56
  })();
56
57
  var RUNTIME_STATUS_ROLE_SET = new Set(RUNTIME_STATUS_ROLE_VALUES);
58
+ var STATUS_TOKEN_MEMO_MAX_ENTRIES = 2e3;
59
+ var statusTokenMemo = /* @__PURE__ */ new Map();
57
60
  var BUILTIN_STATUS_IDS = new Set(DEFAULT_RUNTIME_STATUS_DEFINITIONS.map((definition) => normalizeStatusToken(definition.id)).filter((id) => id.length > 0));
58
61
  function normalizeStatusToken(value) {
59
- return typeof value === "string" ? value.trim().toLowerCase().replaceAll(/[\s-]+/g, "_") : "";
62
+ if (typeof value !== "string") {
63
+ return "";
64
+ }
65
+ const memoized = statusTokenMemo.get(value);
66
+ if (memoized !== void 0) {
67
+ return memoized;
68
+ }
69
+ const normalized = value.trim().toLowerCase().replaceAll(/[\s-]+/g, "_");
70
+ if (statusTokenMemo.size >= STATUS_TOKEN_MEMO_MAX_ENTRIES) {
71
+ evictOldestMemoEntries(statusTokenMemo);
72
+ }
73
+ statusTokenMemo.set(value, normalized);
74
+ return normalized;
60
75
  }
61
76
  function dedupeTokens(values) {
62
77
  const seen = /* @__PURE__ */ new Set();
@@ -1743,4 +1758,4 @@ export {
1743
1758
  formatSchemaInferTypesHuman,
1744
1759
  _testOnlySchemaCommand
1745
1760
  };
1746
- //# sourceMappingURL=chunk-SPM2XLWI.js.map
1761
+ //# sourceMappingURL=chunk-JPATY4SE.js.map