@unbrained/pm-cli 2026.6.9 → 2026.6.11

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 (529) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +59 -0
  3. package/README.md +1 -1
  4. package/dist/cli/bootstrap-args.d.ts +11 -0
  5. package/dist/cli/bootstrap-args.js +90 -4
  6. package/dist/cli/bootstrap-args.js.map +1 -1
  7. package/dist/cli/commands/aggregate.d.ts +7 -0
  8. package/dist/cli/commands/aggregate.js +53 -12
  9. package/dist/cli/commands/aggregate.js.map +1 -1
  10. package/dist/cli/commands/close.d.ts +1 -0
  11. package/dist/cli/commands/close.js +106 -3
  12. package/dist/cli/commands/close.js.map +1 -1
  13. package/dist/cli/commands/completion.js +20 -7
  14. package/dist/cli/commands/completion.js.map +1 -1
  15. package/dist/cli/commands/context.d.ts +9 -0
  16. package/dist/cli/commands/context.js +149 -20
  17. package/dist/cli/commands/context.js.map +1 -1
  18. package/dist/cli/commands/contracts.d.ts +2 -0
  19. package/dist/cli/commands/contracts.js +9 -2
  20. package/dist/cli/commands/contracts.js.map +1 -1
  21. package/dist/cli/commands/create.d.ts +1 -0
  22. package/dist/cli/commands/create.js +5 -3
  23. package/dist/cli/commands/create.js.map +1 -1
  24. package/dist/cli/commands/extension.js +4 -2
  25. package/dist/cli/commands/extension.js.map +1 -1
  26. package/dist/cli/commands/health.js +44 -6
  27. package/dist/cli/commands/health.js.map +1 -1
  28. package/dist/cli/commands/history.js +6 -5
  29. package/dist/cli/commands/history.js.map +1 -1
  30. package/dist/cli/commands/linked-test-parsers.d.ts +1 -0
  31. package/dist/cli/commands/linked-test-parsers.js +289 -2
  32. package/dist/cli/commands/linked-test-parsers.js.map +1 -1
  33. package/dist/cli/commands/reindex.d.ts +1 -0
  34. package/dist/cli/commands/reindex.js +33 -4
  35. package/dist/cli/commands/reindex.js.map +1 -1
  36. package/dist/cli/commands/test.d.ts +6 -0
  37. package/dist/cli/commands/test.js +46 -5
  38. package/dist/cli/commands/test.js.map +1 -1
  39. package/dist/cli/error-guidance.d.ts +8 -0
  40. package/dist/cli/error-guidance.js +102 -2
  41. package/dist/cli/error-guidance.js.map +1 -1
  42. package/dist/cli/extension-command-help.d.ts +1 -0
  43. package/dist/cli/extension-command-help.js +42 -2
  44. package/dist/cli/extension-command-help.js.map +1 -1
  45. package/dist/cli/extension-command-options.d.ts +2 -0
  46. package/dist/cli/extension-command-options.js +51 -2
  47. package/dist/cli/extension-command-options.js.map +1 -1
  48. package/dist/cli/main.js +26 -26
  49. package/dist/cli/main.js.map +1 -1
  50. package/dist/cli/register-list-query.js +3 -2
  51. package/dist/cli/register-list-query.js.map +1 -1
  52. package/dist/cli/register-mutation.js +4 -2
  53. package/dist/cli/register-mutation.js.map +1 -1
  54. package/dist/cli/register-operations.js +15 -6
  55. package/dist/cli/register-operations.js.map +1 -1
  56. package/dist/cli/registration-helpers.js +9 -2
  57. package/dist/cli/registration-helpers.js.map +1 -1
  58. package/dist/cli-bundle/chunks/{activity-RUJATACW.js → activity-XADJOG6G.js} +11 -11
  59. package/dist/cli-bundle/chunks/activity-XZIUPGZH.js +16 -0
  60. package/dist/cli-bundle/chunks/{aggregate-TT7OCHHT.js → aggregate-6OTS3AOO.js} +65 -24
  61. package/dist/cli-bundle/chunks/aggregate-6OTS3AOO.js.map +1 -0
  62. package/dist/cli-bundle/chunks/{aggregate-IQ27NFBI.js → aggregate-OD36DJU5.js} +64 -23
  63. package/dist/cli-bundle/chunks/aggregate-OD36DJU5.js.map +7 -0
  64. package/dist/cli-bundle/chunks/{append-E7AJ5RTR.js → append-JYWO4P7W.js} +8 -8
  65. package/dist/cli-bundle/chunks/{append-CWQZBUWV.js → append-KG55G7S3.js} +8 -8
  66. package/dist/cli-bundle/chunks/{chunk-LF2VNLEZ.js → chunk-3KLPFWZ4.js} +8 -8
  67. package/dist/cli-bundle/chunks/{chunk-LF2VNLEZ.js.map → chunk-3KLPFWZ4.js.map} +2 -2
  68. package/dist/cli-bundle/chunks/{chunk-ENCVPOID.js → chunk-3SLOMKCJ.js} +12 -12
  69. package/dist/cli-bundle/chunks/chunk-4HFU4UO2.js +518 -0
  70. package/dist/cli-bundle/chunks/chunk-4HFU4UO2.js.map +1 -0
  71. package/dist/cli-bundle/chunks/{chunk-F2REA7VW.js → chunk-4JCSYR6F.js} +3 -3
  72. package/dist/cli-bundle/chunks/{chunk-CAXUGAAF.js → chunk-4YFAGDRH.js} +8 -8
  73. package/dist/cli-bundle/chunks/{chunk-U3Z4OCZC.js → chunk-5SCT2JCT.js} +2 -2
  74. package/dist/cli-bundle/chunks/{chunk-NHRZSYAA.js → chunk-73ZPG2I3.js} +3 -3
  75. package/dist/cli-bundle/chunks/{chunk-D5D7VKIC.js → chunk-7IYFN5R7.js} +6 -5
  76. package/dist/cli-bundle/chunks/chunk-7IYFN5R7.js.map +1 -0
  77. package/dist/cli-bundle/chunks/{chunk-A5342JVL.js → chunk-7RIT3OCD.js} +12 -12
  78. package/dist/cli-bundle/chunks/{chunk-LU54Z4QI.js → chunk-7UGSRQCL.js} +76 -74
  79. package/dist/cli-bundle/chunks/{chunk-LU54Z4QI.js.map → chunk-7UGSRQCL.js.map} +3 -3
  80. package/dist/cli-bundle/chunks/{chunk-5JF76OJF.js → chunk-A6LXQFO7.js} +290 -25
  81. package/dist/cli-bundle/chunks/chunk-A6LXQFO7.js.map +1 -0
  82. package/dist/cli-bundle/chunks/{chunk-7CR4GAYN.js → chunk-ATEES5SX.js} +2 -2
  83. package/dist/cli-bundle/chunks/{chunk-FHUI7AXS.js → chunk-AVGHVVF7.js} +3 -3
  84. package/dist/cli-bundle/chunks/{chunk-T7B5VAKD.js → chunk-B65UUCGQ.js} +13 -6
  85. package/dist/cli-bundle/chunks/chunk-B65UUCGQ.js.map +7 -0
  86. package/dist/cli-bundle/chunks/{chunk-42IULX44.js → chunk-CCX4RSYZ.js} +2 -2
  87. package/dist/cli-bundle/chunks/{chunk-EFRHTZO4.js → chunk-CW6E4NAT.js} +8 -8
  88. package/dist/cli-bundle/chunks/{chunk-JN3BT7UY.js → chunk-DY6C42S6.js} +9 -9
  89. package/dist/cli-bundle/chunks/{chunk-PUSOAQCR.js → chunk-E5DUIJA4.js} +5 -5
  90. package/dist/cli-bundle/chunks/{chunk-E7LOIIFP.js → chunk-ESANVZF4.js} +3 -3
  91. package/dist/cli-bundle/chunks/{chunk-WQZCEEQN.js → chunk-EWFY7SLA.js} +157 -12
  92. package/dist/cli-bundle/chunks/chunk-EWFY7SLA.js.map +1 -0
  93. package/dist/cli-bundle/chunks/{chunk-YI6W2DBN.js → chunk-F75JSIOZ.js} +6 -6
  94. package/dist/cli-bundle/chunks/{chunk-6IGTNFE3.js → chunk-FDH2X65L.js} +2 -2
  95. package/dist/cli-bundle/chunks/{chunk-GPOSGWCN.js → chunk-FXRU333M.js} +68 -7
  96. package/dist/cli-bundle/chunks/chunk-FXRU333M.js.map +1 -0
  97. package/dist/cli-bundle/chunks/{chunk-C72IQIBT.js → chunk-FY4SPXSC.js} +302 -30
  98. package/dist/cli-bundle/chunks/chunk-FY4SPXSC.js.map +7 -0
  99. package/dist/cli-bundle/chunks/{chunk-TLD3UYGY.js → chunk-GKIZW7SM.js} +5 -4
  100. package/dist/cli-bundle/chunks/chunk-GKIZW7SM.js.map +7 -0
  101. package/dist/cli-bundle/chunks/{chunk-YSANBZAE.js → chunk-GWZSYR6X.js} +12 -5
  102. package/dist/cli-bundle/chunks/chunk-GWZSYR6X.js.map +7 -0
  103. package/dist/cli-bundle/chunks/{chunk-FJNJEWU4.js → chunk-HGLC63AU.js} +14 -12
  104. package/dist/cli-bundle/chunks/chunk-HGLC63AU.js.map +1 -0
  105. package/dist/cli-bundle/chunks/{chunk-RLVI7KDW.js → chunk-HHHJ2GI3.js} +163 -11
  106. package/dist/cli-bundle/chunks/chunk-HHHJ2GI3.js.map +7 -0
  107. package/dist/cli-bundle/chunks/{chunk-AVGOVJGV.js → chunk-HI7STVF2.js} +9 -9
  108. package/dist/cli-bundle/chunks/{chunk-AVGOVJGV.js.map → chunk-HI7STVF2.js.map} +1 -1
  109. package/dist/cli-bundle/chunks/{chunk-ANKG2JKL.js → chunk-I2IJY2NL.js} +12 -5
  110. package/dist/cli-bundle/chunks/chunk-I2IJY2NL.js.map +1 -0
  111. package/dist/cli-bundle/chunks/{chunk-ZPXDD6RQ.js → chunk-I53JBTJW.js} +6 -6
  112. package/dist/cli-bundle/chunks/{chunk-23WNCJBA.js → chunk-I7NYDZDV.js} +2 -2
  113. package/dist/cli-bundle/chunks/{chunk-EQ6N6IDR.js → chunk-IGVJRZ6H.js} +13 -11
  114. package/dist/cli-bundle/chunks/chunk-IGVJRZ6H.js.map +7 -0
  115. package/dist/cli-bundle/chunks/{chunk-JVMAOD54.js → chunk-IH4MBKK7.js} +14 -7
  116. package/dist/cli-bundle/chunks/chunk-IH4MBKK7.js.map +1 -0
  117. package/dist/cli-bundle/chunks/{chunk-BIRVSIM2.js → chunk-IKOH24GZ.js} +14 -14
  118. package/dist/cli-bundle/chunks/chunk-IKOH24GZ.js.map +7 -0
  119. package/dist/cli-bundle/chunks/{chunk-SAUXUI6U.js → chunk-IUKD4W6Z.js} +2 -2
  120. package/dist/cli-bundle/chunks/{chunk-3RHE76G6.js → chunk-J3GD64J2.js} +15 -15
  121. package/dist/cli-bundle/chunks/chunk-J3GD64J2.js.map +1 -0
  122. package/dist/cli-bundle/chunks/{chunk-OT6XAMO5.js → chunk-KWAXVAXX.js} +7 -5
  123. package/dist/cli-bundle/chunks/{chunk-OT6XAMO5.js.map → chunk-KWAXVAXX.js.map} +2 -2
  124. package/dist/cli-bundle/chunks/{chunk-SD6H3RLA.js → chunk-LCSCXBGT.js} +15 -5
  125. package/dist/cli-bundle/chunks/{chunk-SD6H3RLA.js.map → chunk-LCSCXBGT.js.map} +2 -2
  126. package/dist/cli-bundle/chunks/{chunk-RKCJ2JMA.js → chunk-OASDW5UI.js} +7 -7
  127. package/dist/cli-bundle/chunks/{chunk-JEGFLKSI.js → chunk-OLKBSY4N.js} +2 -2
  128. package/dist/cli-bundle/chunks/{chunk-4LRVXVJK.js → chunk-P2PSODAQ.js} +70 -9
  129. package/dist/cli-bundle/chunks/chunk-P2PSODAQ.js.map +7 -0
  130. package/dist/cli-bundle/chunks/{chunk-XEOO6K5J.js → chunk-P5BJOMBB.js} +9 -9
  131. package/dist/cli-bundle/chunks/{chunk-P2NVFE4L.js → chunk-P5U5EOMA.js} +3 -3
  132. package/dist/cli-bundle/chunks/{chunk-AM2AXVFS.js → chunk-PSD7F7DX.js} +5 -5
  133. package/dist/cli-bundle/chunks/{chunk-VDVVOLR6.js → chunk-QJMGRZO2.js} +3 -3
  134. package/dist/cli-bundle/chunks/{chunk-7YTWXGE3.js → chunk-QKW5D45B.js} +112 -7
  135. package/dist/cli-bundle/chunks/chunk-QKW5D45B.js.map +1 -0
  136. package/dist/cli-bundle/chunks/{chunk-T7NWFVOA.js → chunk-QNJSITCX.js} +7 -7
  137. package/dist/cli-bundle/chunks/{chunk-MNXJ6YDO.js → chunk-RXAP6JL5.js} +9 -9
  138. package/dist/cli-bundle/chunks/{chunk-5MMLINZB.js → chunk-S26FESD4.js} +3 -3
  139. package/dist/cli-bundle/chunks/{chunk-I26E6XA7.js → chunk-S2ZLDYGS.js} +8 -6
  140. package/dist/cli-bundle/chunks/chunk-S2ZLDYGS.js.map +1 -0
  141. package/dist/cli-bundle/chunks/chunk-SXKNJPQ7.js +528 -0
  142. package/dist/cli-bundle/chunks/chunk-SXKNJPQ7.js.map +7 -0
  143. package/dist/cli-bundle/chunks/{chunk-OPYA2HIU.js → chunk-TK5VZFHY.js} +7 -7
  144. package/dist/cli-bundle/chunks/{chunk-4TJWRPIH.js → chunk-TNAP7EJX.js} +2 -2
  145. package/dist/cli-bundle/chunks/{chunk-I4FGL3K2.js → chunk-UOO6BYIA.js} +16 -6
  146. package/dist/cli-bundle/chunks/chunk-UOO6BYIA.js.map +1 -0
  147. package/dist/cli-bundle/chunks/{chunk-5ATRWEZO.js → chunk-UUWGCWBU.js} +3 -3
  148. package/dist/cli-bundle/chunks/{chunk-YX5LAKFJ.js → chunk-VAOUX6TK.js} +2 -2
  149. package/dist/cli-bundle/chunks/{chunk-RMTI5R76.js → chunk-VFUZV5EB.js} +111 -6
  150. package/dist/cli-bundle/chunks/chunk-VFUZV5EB.js.map +7 -0
  151. package/dist/cli-bundle/chunks/{chunk-WCWIDJII.js → chunk-VPEAS7PS.js} +2 -2
  152. package/dist/cli-bundle/chunks/{chunk-RE2JQJZJ.js → chunk-VSRZRLG3.js} +3 -3
  153. package/dist/cli-bundle/chunks/{chunk-PW7C262O.js → chunk-WUNFKP7M.js} +2 -2
  154. package/dist/cli-bundle/chunks/{chunk-BACSNVWE.js → chunk-XJDGS74Y.js} +71 -69
  155. package/dist/cli-bundle/chunks/{chunk-BACSNVWE.js.map → chunk-XJDGS74Y.js.map} +1 -1
  156. package/dist/cli-bundle/chunks/{chunk-H37YPWLM.js → chunk-XMBI6TNW.js} +13 -7
  157. package/dist/cli-bundle/chunks/chunk-XMBI6TNW.js.map +7 -0
  158. package/dist/cli-bundle/chunks/{chunk-NUGAWYEN.js → chunk-XTKJSVWH.js} +2 -2
  159. package/dist/cli-bundle/chunks/{chunk-KDX6VC3P.js → chunk-XUC4C4PT.js} +3 -3
  160. package/dist/cli-bundle/chunks/{chunk-44JP4PYY.js → chunk-Y3YKK7CY.js} +2 -2
  161. package/dist/cli-bundle/chunks/{chunk-KTVXLI54.js → chunk-YW6Q3RYZ.js} +7 -7
  162. package/dist/cli-bundle/chunks/{chunk-I3UILOUU.js → chunk-ZLMIWZUG.js} +2 -2
  163. package/dist/cli-bundle/chunks/{chunk-FKH7K6YP.js → chunk-ZMW77VWV.js} +9 -9
  164. package/dist/cli-bundle/chunks/{chunk-NJRZIJ4N.js → chunk-ZYNJNPYD.js} +14 -8
  165. package/dist/cli-bundle/chunks/chunk-ZYNJNPYD.js.map +1 -0
  166. package/dist/cli-bundle/chunks/{claim-UXFGCF3P.js → claim-2RDYMCTP.js} +10 -10
  167. package/dist/cli-bundle/chunks/{claim-RV6WYUF7.js → claim-MJ7DZFC3.js} +10 -10
  168. package/dist/cli-bundle/chunks/close-4FMAPEMY.js +13 -0
  169. package/dist/cli-bundle/chunks/{close-O4JK2JKD.js → close-XLEKIQSW.js} +8 -8
  170. package/dist/cli-bundle/chunks/{close-many-EQO4TPIE.js → close-many-AOD4HSAZ.js} +15 -15
  171. package/dist/cli-bundle/chunks/{close-many-SRDBV3SI.js → close-many-XKAQY5CQ.js} +15 -15
  172. package/dist/cli-bundle/chunks/{comments-TTZUIB2O.js → comments-B4RWWDJT.js} +10 -10
  173. package/dist/cli-bundle/chunks/{comments-OMB7YE27.js → comments-RN5TG4ZN.js} +10 -10
  174. package/dist/cli-bundle/chunks/{config-5VPR42A6.js → config-3JXJ3XZ7.js} +8 -8
  175. package/dist/cli-bundle/chunks/{config-NNLXVGVC.js → config-FZ4UDC4B.js} +8 -8
  176. package/dist/cli-bundle/chunks/{context-4QK6GRXO.js → context-L36PIN35.js} +146 -33
  177. package/dist/cli-bundle/chunks/{context-4QK6GRXO.js.map → context-L36PIN35.js.map} +2 -2
  178. package/dist/cli-bundle/chunks/{context-4N7GYTVQ.js → context-QBPO3BFM.js} +147 -34
  179. package/dist/cli-bundle/chunks/context-QBPO3BFM.js.map +1 -0
  180. package/dist/cli-bundle/chunks/{contracts-DXCWXOSP.js → contracts-3NKWYKKU.js} +309 -6
  181. package/dist/cli-bundle/chunks/contracts-3NKWYKKU.js.map +1 -0
  182. package/dist/cli-bundle/chunks/{contracts-AOBNEBVT.js → contracts-MIXBWJIB.js} +315 -5
  183. package/dist/cli-bundle/chunks/contracts-MIXBWJIB.js.map +7 -0
  184. package/dist/cli-bundle/chunks/{copy-5NM3SVJA.js → copy-ALU5WMHA.js} +7 -7
  185. package/dist/cli-bundle/chunks/{copy-XSYEQTLA.js → copy-FWIVTLBO.js} +7 -7
  186. package/dist/cli-bundle/chunks/{create-FCCAATQV.js → create-IFA26O2I.js} +13 -13
  187. package/dist/cli-bundle/chunks/create-JVXYHYH4.js +27 -0
  188. package/dist/cli-bundle/chunks/{delete-5JFP6OG7.js → delete-IYTIYAJS.js} +7 -7
  189. package/dist/cli-bundle/chunks/{delete-PQXJQXQ7.js → delete-Y2SGJBGY.js} +7 -7
  190. package/dist/cli-bundle/chunks/{deps-S5322EOQ.js → deps-6TSPOSGU.js} +7 -7
  191. package/dist/cli-bundle/chunks/{deps-XXKBOQUA.js → deps-CZ4PTVXU.js} +7 -7
  192. package/dist/cli-bundle/chunks/{docs-C7CCVWAJ.js → docs-5WMBVQT2.js} +9 -9
  193. package/dist/cli-bundle/chunks/{docs-DZRPAW5S.js → docs-MB53UJAJ.js} +9 -9
  194. package/dist/cli-bundle/chunks/{extension-CSHP6FZX.js → extension-Q34OEWO5.js} +5 -5
  195. package/dist/cli-bundle/chunks/{extension-XNNVUVAY.js → extension-WH2FOIOZ.js} +5 -5
  196. package/dist/cli-bundle/chunks/{files-UPCNKEIZ.js → files-DLB5LJEP.js} +9 -9
  197. package/dist/cli-bundle/chunks/{files-OBWYYPKM.js → files-GVMNVLCB.js} +9 -9
  198. package/dist/cli-bundle/chunks/{gc-FA2ONELT.js → gc-2WEPW6D6.js} +3 -3
  199. package/dist/cli-bundle/chunks/{gc-KXK6KBRN.js → gc-4Z3IKHAZ.js} +3 -3
  200. package/dist/cli-bundle/chunks/{get-PNTSONGB.js → get-PCHS7RA6.js} +11 -11
  201. package/dist/cli-bundle/chunks/{get-FLHYTOBA.js → get-QARTE6BL.js} +11 -11
  202. package/dist/cli-bundle/chunks/{health-CS5RNTJX.js → health-4ZYB3IYQ.js} +47 -19
  203. package/dist/cli-bundle/chunks/health-4ZYB3IYQ.js.map +1 -0
  204. package/dist/cli-bundle/chunks/{health-KCRVYIYY.js → health-YO5LRWN4.js} +46 -18
  205. package/dist/cli-bundle/chunks/health-YO5LRWN4.js.map +7 -0
  206. package/dist/cli-bundle/chunks/{history-COQTPBEU.js → history-7WUAEWHW.js} +10 -10
  207. package/dist/cli-bundle/chunks/history-L2FQFRTU.js +20 -0
  208. package/dist/cli-bundle/chunks/{history-compact-PVS2A3FS.js → history-compact-3EJ3L2O7.js} +11 -11
  209. package/dist/cli-bundle/chunks/{history-compact-66PSRYL3.js → history-compact-LW27IPFK.js} +11 -11
  210. package/dist/cli-bundle/chunks/{history-redact-DCXAWGTF.js → history-redact-G72A4EJ4.js} +11 -11
  211. package/dist/cli-bundle/chunks/history-redact-QWQCX5DZ.js +19 -0
  212. package/dist/cli-bundle/chunks/{history-repair-SEQDFTGW.js → history-repair-KVPFJKOS.js} +11 -11
  213. package/dist/cli-bundle/chunks/{history-repair-TA3NRIFO.js → history-repair-RUGKD3YR.js} +11 -11
  214. package/dist/cli-bundle/chunks/init-4BKRHGWW.js +17 -0
  215. package/dist/cli-bundle/chunks/{init-IQJE3EKJ.js → init-S5WEGUJY.js} +9 -9
  216. package/dist/cli-bundle/chunks/{learnings-XC6EMW5E.js → learnings-HQXSSKZ5.js} +10 -10
  217. package/dist/cli-bundle/chunks/{learnings-RJPGH2ME.js → learnings-XK3P4ZDR.js} +10 -10
  218. package/dist/cli-bundle/chunks/{list-NJV6WBT4.js → list-6CL3XFT6.js} +10 -10
  219. package/dist/cli-bundle/chunks/list-BYNN4ZEO.js +19 -0
  220. package/dist/cli-bundle/chunks/{notes-2KWHADK3.js → notes-5T6P7C5V.js} +10 -10
  221. package/dist/cli-bundle/chunks/{notes-FNCDMZW2.js → notes-U5FZCSBT.js} +10 -10
  222. package/dist/cli-bundle/chunks/{plan-CYK2P5PD.js → plan-FQLMJRLZ.js} +13 -13
  223. package/dist/cli-bundle/chunks/{plan-MQO5JTSV.js → plan-VNUG3WZZ.js} +13 -13
  224. package/dist/cli-bundle/chunks/{register-list-query-6RA24SIZ.js → register-list-query-NPE3ECJQ.js} +21 -21
  225. package/dist/cli-bundle/chunks/register-list-query-NPE3ECJQ.js.map +1 -0
  226. package/dist/cli-bundle/chunks/{register-list-query-IO3RR5K6.js → register-list-query-VHDXWEPP.js} +20 -20
  227. package/dist/cli-bundle/chunks/register-list-query-VHDXWEPP.js.map +7 -0
  228. package/dist/cli-bundle/chunks/{register-mutation-VV2SC2KL.js → register-mutation-DG53FCBV.js} +36 -35
  229. package/dist/cli-bundle/chunks/register-mutation-DG53FCBV.js.map +1 -0
  230. package/dist/cli-bundle/chunks/{register-mutation-KVFUXCAZ.js → register-mutation-EAYNLGOS.js} +35 -34
  231. package/dist/cli-bundle/chunks/register-mutation-EAYNLGOS.js.map +7 -0
  232. package/dist/cli-bundle/chunks/{register-operations-DFNVRSJ5.js → register-operations-AM6KTWB6.js} +42 -37
  233. package/dist/cli-bundle/chunks/register-operations-AM6KTWB6.js.map +1 -0
  234. package/dist/cli-bundle/chunks/{register-operations-TAUUTRJ4.js → register-operations-FWFE64JG.js} +41 -36
  235. package/dist/cli-bundle/chunks/register-operations-FWFE64JG.js.map +7 -0
  236. package/dist/cli-bundle/chunks/{register-setup-X2R5CFDV.js → register-setup-G4QYI3RX.js} +15 -15
  237. package/dist/cli-bundle/chunks/{register-setup-GAQZZRUA.js → register-setup-IKX5524L.js} +15 -15
  238. package/dist/cli-bundle/chunks/restore-CHIOQAQL.js +17 -0
  239. package/dist/cli-bundle/chunks/{restore-E3GZKRRK.js → restore-M6AFHMV4.js} +11 -11
  240. package/dist/cli-bundle/chunks/{schema-3CPFLDAY.js → schema-76HDZJCC.js} +8 -8
  241. package/dist/cli-bundle/chunks/{schema-7EHBPNXM.js → schema-AINZ2IMM.js} +8 -8
  242. package/dist/cli-bundle/chunks/{search-OBZVYJJ2.js → search-JMLFQEPJ.js} +10 -10
  243. package/dist/cli-bundle/chunks/{search-2T3NCCUR.js → search-NL3TSCYB.js} +10 -10
  244. package/dist/cli-bundle/chunks/{stats-6LVK4JER.js → stats-BKXCBIGT.js} +7 -7
  245. package/dist/cli-bundle/chunks/{stats-ULGQACF7.js → stats-UBD56TGK.js} +7 -7
  246. package/dist/cli-bundle/chunks/{telemetry-HHKRTMZA.js → telemetry-N454RHG5.js} +4 -4
  247. package/dist/cli-bundle/chunks/{telemetry-6G27FLCP.js → telemetry-ZJXK3H7X.js} +4 -4
  248. package/dist/cli-bundle/chunks/{test-2PP4YBV6.js → test-BQAKIXAT.js} +14 -14
  249. package/dist/cli-bundle/chunks/test-O74JFUH5.js +32 -0
  250. package/dist/cli-bundle/chunks/{test-all-6Z272JRI.js → test-all-7LV3I6S5.js} +14 -14
  251. package/dist/cli-bundle/chunks/{test-all-NETGVNM6.js → test-all-TDYCCBA4.js} +14 -14
  252. package/dist/cli-bundle/chunks/{test-runs-M24WA6TI.js → test-runs-E64M6XS3.js} +5 -5
  253. package/dist/cli-bundle/chunks/{test-runs-CRPQVMMG.js → test-runs-LXZLULCI.js} +5 -5
  254. package/dist/cli-bundle/chunks/update-2EVXOC7V.js +21 -0
  255. package/dist/cli-bundle/chunks/update-5A2B6QYB.js +25 -0
  256. package/dist/cli-bundle/chunks/{update-many-JSRF5EH5.js → update-many-TUGU5YXQ.js} +22 -22
  257. package/dist/cli-bundle/chunks/{update-many-Y3HOL7WA.js → update-many-V4LA3C4H.js} +22 -22
  258. package/dist/cli-bundle/chunks/{upgrade-5RTQVKKE.js → upgrade-37F7JKES.js} +5 -5
  259. package/dist/cli-bundle/chunks/{upgrade-ECB6GH3M.js → upgrade-L32JA4TZ.js} +5 -5
  260. package/dist/cli-bundle/chunks/{validate-MCNMAXVA.js → validate-EQTT6WVX.js} +16 -16
  261. package/dist/cli-bundle/chunks/{validate-J6Q444SD.js → validate-XN4I4DPL.js} +16 -16
  262. package/dist/cli-bundle/main.js +276 -47
  263. package/dist/cli-bundle/main.js.map +2 -2
  264. package/dist/core/diagnostics/remediation.js +12 -2
  265. package/dist/core/diagnostics/remediation.js.map +1 -1
  266. package/dist/core/extensions/extension-policy.d.ts +14 -1
  267. package/dist/core/extensions/extension-policy.js +38 -3
  268. package/dist/core/extensions/extension-policy.js.map +1 -1
  269. package/dist/core/extensions/extension-types.d.ts +40 -1
  270. package/dist/core/extensions/extension-types.js +28 -2
  271. package/dist/core/extensions/extension-types.js.map +1 -1
  272. package/dist/core/extensions/loader.d.ts +6 -4
  273. package/dist/core/extensions/loader.js +67 -14
  274. package/dist/core/extensions/loader.js.map +1 -1
  275. package/dist/core/history/replay.d.ts +1 -1
  276. package/dist/core/history/replay.js +13 -4
  277. package/dist/core/history/replay.js.map +1 -1
  278. package/dist/core/output/mutation-projection.d.ts +2 -0
  279. package/dist/core/output/mutation-projection.js +9 -2
  280. package/dist/core/output/mutation-projection.js.map +1 -1
  281. package/dist/core/output/output.d.ts +2 -0
  282. package/dist/core/output/output.js +7 -3
  283. package/dist/core/output/output.js.map +1 -1
  284. package/dist/core/output/query-summary.d.ts +31 -0
  285. package/dist/core/output/query-summary.js +62 -0
  286. package/dist/core/output/query-summary.js.map +1 -0
  287. package/dist/core/shared/command-types.d.ts +1 -0
  288. package/dist/core/shared/command-types.js +2 -2
  289. package/dist/core/shared/command-types.js.map +1 -1
  290. package/dist/core/shared/constants.js +8 -4
  291. package/dist/core/shared/constants.js.map +1 -1
  292. package/dist/core/store/item-store.d.ts +1 -1
  293. package/dist/core/store/item-store.js +3 -3
  294. package/dist/core/store/item-store.js.map +1 -1
  295. package/dist/core/store/settings-read-cache.d.ts +15 -0
  296. package/dist/core/store/settings-read-cache.js +72 -0
  297. package/dist/core/store/settings-read-cache.js.map +1 -0
  298. package/dist/core/store/settings-validator.d.ts +4 -1
  299. package/dist/core/store/settings-validator.js +14 -2
  300. package/dist/core/store/settings-validator.js.map +1 -1
  301. package/dist/core/store/settings.js +166 -16
  302. package/dist/core/store/settings.js.map +1 -1
  303. package/dist/core/telemetry/runtime.d.ts +1 -0
  304. package/dist/core/telemetry/runtime.js +3 -3
  305. package/dist/core/telemetry/runtime.js.map +1 -1
  306. package/dist/core/test/run-selectors.d.ts +27 -0
  307. package/dist/core/test/run-selectors.js +110 -0
  308. package/dist/core/test/run-selectors.js.map +1 -0
  309. package/dist/mcp/server.js +76 -262
  310. package/dist/mcp/server.js.map +1 -1
  311. package/dist/mcp/tool-definitions.d.ts +27 -0
  312. package/dist/mcp/tool-definitions.js +330 -0
  313. package/dist/mcp/tool-definitions.js.map +1 -0
  314. package/dist/sdk/cli-contracts/commander-mutation-options.js +3 -2
  315. package/dist/sdk/cli-contracts/commander-mutation-options.js.map +1 -1
  316. package/dist/sdk/cli-contracts/tool-option-contracts.js +3 -2
  317. package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
  318. package/dist/sdk/cli-contracts/tool-parameter-tables.js +29 -2
  319. package/dist/sdk/cli-contracts/tool-parameter-tables.js.map +1 -1
  320. package/dist/sdk/cli-contracts.js +37 -5
  321. package/dist/sdk/cli-contracts.js.map +1 -1
  322. package/dist/sdk/index.d.ts +1 -1
  323. package/dist/sdk/index.js +2 -2
  324. package/dist/sdk/index.js.map +1 -1
  325. package/dist/sdk/runtime.d.ts +6 -0
  326. package/dist/sdk/runtime.js +51 -3
  327. package/dist/sdk/runtime.js.map +1 -1
  328. package/dist/types.d.ts +4 -1
  329. package/dist/types.js +4 -2
  330. package/dist/types.js.map +1 -1
  331. package/docs/AGENT_GUIDE.md +7 -1
  332. package/docs/ARCHITECTURE.md +7 -0
  333. package/docs/CLAUDE_CODE_PLUGIN.md +2 -2
  334. package/docs/COMMANDS.md +38 -3
  335. package/docs/CONFIGURATION.md +1 -1
  336. package/docs/EXTENSIONS.md +55 -53
  337. package/docs/SDK.md +8 -2
  338. package/docs/TESTING.md +60 -0
  339. package/docs/schemas/extension-manifest.schema.json +120 -0
  340. package/marketplace.json +1 -1
  341. package/package.json +2 -2
  342. package/packages/pm-beads/extensions/beads/manifest.json +10 -0
  343. package/packages/pm-calendar/extensions/calendar/manifest.json +10 -0
  344. package/packages/pm-command-kit/README.md +72 -0
  345. package/packages/pm-command-kit/extensions/command-kit/index.js +181 -0
  346. package/packages/pm-command-kit/extensions/command-kit/index.ts +176 -0
  347. package/packages/pm-command-kit/extensions/command-kit/manifest.json +22 -0
  348. package/packages/pm-command-kit/package.json +53 -0
  349. package/packages/pm-governance-audit/extensions/governance-audit/manifest.json +10 -0
  350. package/packages/pm-guide-shell/extensions/guide-shell/manifest.json +10 -0
  351. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/manifest.json +10 -0
  352. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/manifest.json +10 -0
  353. package/packages/pm-search-advanced/extensions/search-advanced/index.js +6 -0
  354. package/packages/pm-search-advanced/extensions/search-advanced/index.ts +6 -0
  355. package/packages/pm-search-advanced/extensions/search-advanced/manifest.json +10 -0
  356. package/packages/pm-search-advanced/extensions/search-advanced/runtime.js +1 -0
  357. package/packages/pm-search-advanced/extensions/search-advanced/runtime.ts +1 -0
  358. package/packages/pm-templates/extensions/templates/manifest.json +10 -0
  359. package/packages/pm-todos/extensions/todos/manifest.json +10 -0
  360. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  361. package/plugins/pm-claude/README.md +7 -3
  362. package/plugins/pm-claude/commands/pm-init.md +1 -1
  363. package/plugins/pm-codex/README.md +2 -2
  364. package/dist/cli-bundle/chunks/activity-HF3VJYKH.js +0 -16
  365. package/dist/cli-bundle/chunks/aggregate-IQ27NFBI.js.map +0 -7
  366. package/dist/cli-bundle/chunks/aggregate-TT7OCHHT.js.map +0 -1
  367. package/dist/cli-bundle/chunks/chunk-3RHE76G6.js.map +0 -1
  368. package/dist/cli-bundle/chunks/chunk-4LRVXVJK.js.map +0 -7
  369. package/dist/cli-bundle/chunks/chunk-5JF76OJF.js.map +0 -1
  370. package/dist/cli-bundle/chunks/chunk-7YTWXGE3.js.map +0 -1
  371. package/dist/cli-bundle/chunks/chunk-ANKG2JKL.js.map +0 -1
  372. package/dist/cli-bundle/chunks/chunk-BIRVSIM2.js.map +0 -7
  373. package/dist/cli-bundle/chunks/chunk-C72IQIBT.js.map +0 -7
  374. package/dist/cli-bundle/chunks/chunk-D5D7VKIC.js.map +0 -1
  375. package/dist/cli-bundle/chunks/chunk-EQ6N6IDR.js.map +0 -7
  376. package/dist/cli-bundle/chunks/chunk-FJNJEWU4.js.map +0 -1
  377. package/dist/cli-bundle/chunks/chunk-GPOSGWCN.js.map +0 -1
  378. package/dist/cli-bundle/chunks/chunk-H37YPWLM.js.map +0 -7
  379. package/dist/cli-bundle/chunks/chunk-I26E6XA7.js.map +0 -1
  380. package/dist/cli-bundle/chunks/chunk-I4FGL3K2.js.map +0 -1
  381. package/dist/cli-bundle/chunks/chunk-JVMAOD54.js.map +0 -1
  382. package/dist/cli-bundle/chunks/chunk-LU2HE272.js +0 -242
  383. package/dist/cli-bundle/chunks/chunk-LU2HE272.js.map +0 -1
  384. package/dist/cli-bundle/chunks/chunk-NJRZIJ4N.js.map +0 -1
  385. package/dist/cli-bundle/chunks/chunk-O4L7Z6LB.js +0 -252
  386. package/dist/cli-bundle/chunks/chunk-O4L7Z6LB.js.map +0 -7
  387. package/dist/cli-bundle/chunks/chunk-RLVI7KDW.js.map +0 -7
  388. package/dist/cli-bundle/chunks/chunk-RMTI5R76.js.map +0 -7
  389. package/dist/cli-bundle/chunks/chunk-T7B5VAKD.js.map +0 -7
  390. package/dist/cli-bundle/chunks/chunk-TLD3UYGY.js.map +0 -7
  391. package/dist/cli-bundle/chunks/chunk-WQZCEEQN.js.map +0 -1
  392. package/dist/cli-bundle/chunks/chunk-YSANBZAE.js.map +0 -7
  393. package/dist/cli-bundle/chunks/close-JTTGW7TS.js +0 -13
  394. package/dist/cli-bundle/chunks/context-4N7GYTVQ.js.map +0 -1
  395. package/dist/cli-bundle/chunks/contracts-AOBNEBVT.js.map +0 -7
  396. package/dist/cli-bundle/chunks/contracts-DXCWXOSP.js.map +0 -1
  397. package/dist/cli-bundle/chunks/create-JAPLFDGJ.js +0 -27
  398. package/dist/cli-bundle/chunks/health-CS5RNTJX.js.map +0 -1
  399. package/dist/cli-bundle/chunks/health-KCRVYIYY.js.map +0 -7
  400. package/dist/cli-bundle/chunks/history-6624XISO.js +0 -20
  401. package/dist/cli-bundle/chunks/history-redact-ZRQTI7NB.js +0 -19
  402. package/dist/cli-bundle/chunks/init-ZVE2HMKK.js +0 -17
  403. package/dist/cli-bundle/chunks/list-OO5P472O.js +0 -19
  404. package/dist/cli-bundle/chunks/register-list-query-6RA24SIZ.js.map +0 -1
  405. package/dist/cli-bundle/chunks/register-list-query-IO3RR5K6.js.map +0 -7
  406. package/dist/cli-bundle/chunks/register-mutation-KVFUXCAZ.js.map +0 -7
  407. package/dist/cli-bundle/chunks/register-mutation-VV2SC2KL.js.map +0 -1
  408. package/dist/cli-bundle/chunks/register-operations-DFNVRSJ5.js.map +0 -1
  409. package/dist/cli-bundle/chunks/register-operations-TAUUTRJ4.js.map +0 -7
  410. package/dist/cli-bundle/chunks/restore-F4ALFV4D.js +0 -17
  411. package/dist/cli-bundle/chunks/test-PPOLRIBA.js +0 -32
  412. package/dist/cli-bundle/chunks/update-MCPCPMHV.js +0 -25
  413. package/dist/cli-bundle/chunks/update-O7TBOUVQ.js +0 -21
  414. /package/dist/cli-bundle/chunks/{activity-RUJATACW.js.map → activity-XADJOG6G.js.map} +0 -0
  415. /package/dist/cli-bundle/chunks/{activity-HF3VJYKH.js.map → activity-XZIUPGZH.js.map} +0 -0
  416. /package/dist/cli-bundle/chunks/{append-E7AJ5RTR.js.map → append-JYWO4P7W.js.map} +0 -0
  417. /package/dist/cli-bundle/chunks/{append-CWQZBUWV.js.map → append-KG55G7S3.js.map} +0 -0
  418. /package/dist/cli-bundle/chunks/{chunk-ENCVPOID.js.map → chunk-3SLOMKCJ.js.map} +0 -0
  419. /package/dist/cli-bundle/chunks/{chunk-F2REA7VW.js.map → chunk-4JCSYR6F.js.map} +0 -0
  420. /package/dist/cli-bundle/chunks/{chunk-CAXUGAAF.js.map → chunk-4YFAGDRH.js.map} +0 -0
  421. /package/dist/cli-bundle/chunks/{chunk-U3Z4OCZC.js.map → chunk-5SCT2JCT.js.map} +0 -0
  422. /package/dist/cli-bundle/chunks/{chunk-NHRZSYAA.js.map → chunk-73ZPG2I3.js.map} +0 -0
  423. /package/dist/cli-bundle/chunks/{chunk-A5342JVL.js.map → chunk-7RIT3OCD.js.map} +0 -0
  424. /package/dist/cli-bundle/chunks/{chunk-7CR4GAYN.js.map → chunk-ATEES5SX.js.map} +0 -0
  425. /package/dist/cli-bundle/chunks/{chunk-FHUI7AXS.js.map → chunk-AVGHVVF7.js.map} +0 -0
  426. /package/dist/cli-bundle/chunks/{chunk-42IULX44.js.map → chunk-CCX4RSYZ.js.map} +0 -0
  427. /package/dist/cli-bundle/chunks/{chunk-EFRHTZO4.js.map → chunk-CW6E4NAT.js.map} +0 -0
  428. /package/dist/cli-bundle/chunks/{chunk-JN3BT7UY.js.map → chunk-DY6C42S6.js.map} +0 -0
  429. /package/dist/cli-bundle/chunks/{chunk-PUSOAQCR.js.map → chunk-E5DUIJA4.js.map} +0 -0
  430. /package/dist/cli-bundle/chunks/{chunk-E7LOIIFP.js.map → chunk-ESANVZF4.js.map} +0 -0
  431. /package/dist/cli-bundle/chunks/{chunk-YI6W2DBN.js.map → chunk-F75JSIOZ.js.map} +0 -0
  432. /package/dist/cli-bundle/chunks/{chunk-6IGTNFE3.js.map → chunk-FDH2X65L.js.map} +0 -0
  433. /package/dist/cli-bundle/chunks/{chunk-ZPXDD6RQ.js.map → chunk-I53JBTJW.js.map} +0 -0
  434. /package/dist/cli-bundle/chunks/{chunk-23WNCJBA.js.map → chunk-I7NYDZDV.js.map} +0 -0
  435. /package/dist/cli-bundle/chunks/{chunk-SAUXUI6U.js.map → chunk-IUKD4W6Z.js.map} +0 -0
  436. /package/dist/cli-bundle/chunks/{chunk-RKCJ2JMA.js.map → chunk-OASDW5UI.js.map} +0 -0
  437. /package/dist/cli-bundle/chunks/{chunk-JEGFLKSI.js.map → chunk-OLKBSY4N.js.map} +0 -0
  438. /package/dist/cli-bundle/chunks/{chunk-XEOO6K5J.js.map → chunk-P5BJOMBB.js.map} +0 -0
  439. /package/dist/cli-bundle/chunks/{chunk-P2NVFE4L.js.map → chunk-P5U5EOMA.js.map} +0 -0
  440. /package/dist/cli-bundle/chunks/{chunk-AM2AXVFS.js.map → chunk-PSD7F7DX.js.map} +0 -0
  441. /package/dist/cli-bundle/chunks/{chunk-VDVVOLR6.js.map → chunk-QJMGRZO2.js.map} +0 -0
  442. /package/dist/cli-bundle/chunks/{chunk-T7NWFVOA.js.map → chunk-QNJSITCX.js.map} +0 -0
  443. /package/dist/cli-bundle/chunks/{chunk-MNXJ6YDO.js.map → chunk-RXAP6JL5.js.map} +0 -0
  444. /package/dist/cli-bundle/chunks/{chunk-5MMLINZB.js.map → chunk-S26FESD4.js.map} +0 -0
  445. /package/dist/cli-bundle/chunks/{chunk-OPYA2HIU.js.map → chunk-TK5VZFHY.js.map} +0 -0
  446. /package/dist/cli-bundle/chunks/{chunk-4TJWRPIH.js.map → chunk-TNAP7EJX.js.map} +0 -0
  447. /package/dist/cli-bundle/chunks/{chunk-5ATRWEZO.js.map → chunk-UUWGCWBU.js.map} +0 -0
  448. /package/dist/cli-bundle/chunks/{chunk-YX5LAKFJ.js.map → chunk-VAOUX6TK.js.map} +0 -0
  449. /package/dist/cli-bundle/chunks/{chunk-WCWIDJII.js.map → chunk-VPEAS7PS.js.map} +0 -0
  450. /package/dist/cli-bundle/chunks/{chunk-RE2JQJZJ.js.map → chunk-VSRZRLG3.js.map} +0 -0
  451. /package/dist/cli-bundle/chunks/{chunk-PW7C262O.js.map → chunk-WUNFKP7M.js.map} +0 -0
  452. /package/dist/cli-bundle/chunks/{chunk-NUGAWYEN.js.map → chunk-XTKJSVWH.js.map} +0 -0
  453. /package/dist/cli-bundle/chunks/{chunk-KDX6VC3P.js.map → chunk-XUC4C4PT.js.map} +0 -0
  454. /package/dist/cli-bundle/chunks/{chunk-44JP4PYY.js.map → chunk-Y3YKK7CY.js.map} +0 -0
  455. /package/dist/cli-bundle/chunks/{chunk-KTVXLI54.js.map → chunk-YW6Q3RYZ.js.map} +0 -0
  456. /package/dist/cli-bundle/chunks/{chunk-I3UILOUU.js.map → chunk-ZLMIWZUG.js.map} +0 -0
  457. /package/dist/cli-bundle/chunks/{chunk-FKH7K6YP.js.map → chunk-ZMW77VWV.js.map} +0 -0
  458. /package/dist/cli-bundle/chunks/{claim-UXFGCF3P.js.map → claim-2RDYMCTP.js.map} +0 -0
  459. /package/dist/cli-bundle/chunks/{claim-RV6WYUF7.js.map → claim-MJ7DZFC3.js.map} +0 -0
  460. /package/dist/cli-bundle/chunks/{close-JTTGW7TS.js.map → close-4FMAPEMY.js.map} +0 -0
  461. /package/dist/cli-bundle/chunks/{close-O4JK2JKD.js.map → close-XLEKIQSW.js.map} +0 -0
  462. /package/dist/cli-bundle/chunks/{close-many-EQO4TPIE.js.map → close-many-AOD4HSAZ.js.map} +0 -0
  463. /package/dist/cli-bundle/chunks/{close-many-SRDBV3SI.js.map → close-many-XKAQY5CQ.js.map} +0 -0
  464. /package/dist/cli-bundle/chunks/{comments-TTZUIB2O.js.map → comments-B4RWWDJT.js.map} +0 -0
  465. /package/dist/cli-bundle/chunks/{comments-OMB7YE27.js.map → comments-RN5TG4ZN.js.map} +0 -0
  466. /package/dist/cli-bundle/chunks/{config-5VPR42A6.js.map → config-3JXJ3XZ7.js.map} +0 -0
  467. /package/dist/cli-bundle/chunks/{config-NNLXVGVC.js.map → config-FZ4UDC4B.js.map} +0 -0
  468. /package/dist/cli-bundle/chunks/{copy-5NM3SVJA.js.map → copy-ALU5WMHA.js.map} +0 -0
  469. /package/dist/cli-bundle/chunks/{copy-XSYEQTLA.js.map → copy-FWIVTLBO.js.map} +0 -0
  470. /package/dist/cli-bundle/chunks/{create-FCCAATQV.js.map → create-IFA26O2I.js.map} +0 -0
  471. /package/dist/cli-bundle/chunks/{create-JAPLFDGJ.js.map → create-JVXYHYH4.js.map} +0 -0
  472. /package/dist/cli-bundle/chunks/{delete-5JFP6OG7.js.map → delete-IYTIYAJS.js.map} +0 -0
  473. /package/dist/cli-bundle/chunks/{delete-PQXJQXQ7.js.map → delete-Y2SGJBGY.js.map} +0 -0
  474. /package/dist/cli-bundle/chunks/{deps-S5322EOQ.js.map → deps-6TSPOSGU.js.map} +0 -0
  475. /package/dist/cli-bundle/chunks/{deps-XXKBOQUA.js.map → deps-CZ4PTVXU.js.map} +0 -0
  476. /package/dist/cli-bundle/chunks/{docs-C7CCVWAJ.js.map → docs-5WMBVQT2.js.map} +0 -0
  477. /package/dist/cli-bundle/chunks/{docs-DZRPAW5S.js.map → docs-MB53UJAJ.js.map} +0 -0
  478. /package/dist/cli-bundle/chunks/{extension-CSHP6FZX.js.map → extension-Q34OEWO5.js.map} +0 -0
  479. /package/dist/cli-bundle/chunks/{extension-XNNVUVAY.js.map → extension-WH2FOIOZ.js.map} +0 -0
  480. /package/dist/cli-bundle/chunks/{files-UPCNKEIZ.js.map → files-DLB5LJEP.js.map} +0 -0
  481. /package/dist/cli-bundle/chunks/{files-OBWYYPKM.js.map → files-GVMNVLCB.js.map} +0 -0
  482. /package/dist/cli-bundle/chunks/{gc-FA2ONELT.js.map → gc-2WEPW6D6.js.map} +0 -0
  483. /package/dist/cli-bundle/chunks/{gc-KXK6KBRN.js.map → gc-4Z3IKHAZ.js.map} +0 -0
  484. /package/dist/cli-bundle/chunks/{get-PNTSONGB.js.map → get-PCHS7RA6.js.map} +0 -0
  485. /package/dist/cli-bundle/chunks/{get-FLHYTOBA.js.map → get-QARTE6BL.js.map} +0 -0
  486. /package/dist/cli-bundle/chunks/{history-COQTPBEU.js.map → history-7WUAEWHW.js.map} +0 -0
  487. /package/dist/cli-bundle/chunks/{history-6624XISO.js.map → history-L2FQFRTU.js.map} +0 -0
  488. /package/dist/cli-bundle/chunks/{history-compact-PVS2A3FS.js.map → history-compact-3EJ3L2O7.js.map} +0 -0
  489. /package/dist/cli-bundle/chunks/{history-compact-66PSRYL3.js.map → history-compact-LW27IPFK.js.map} +0 -0
  490. /package/dist/cli-bundle/chunks/{history-redact-DCXAWGTF.js.map → history-redact-G72A4EJ4.js.map} +0 -0
  491. /package/dist/cli-bundle/chunks/{history-redact-ZRQTI7NB.js.map → history-redact-QWQCX5DZ.js.map} +0 -0
  492. /package/dist/cli-bundle/chunks/{history-repair-SEQDFTGW.js.map → history-repair-KVPFJKOS.js.map} +0 -0
  493. /package/dist/cli-bundle/chunks/{history-repair-TA3NRIFO.js.map → history-repair-RUGKD3YR.js.map} +0 -0
  494. /package/dist/cli-bundle/chunks/{init-ZVE2HMKK.js.map → init-4BKRHGWW.js.map} +0 -0
  495. /package/dist/cli-bundle/chunks/{init-IQJE3EKJ.js.map → init-S5WEGUJY.js.map} +0 -0
  496. /package/dist/cli-bundle/chunks/{learnings-XC6EMW5E.js.map → learnings-HQXSSKZ5.js.map} +0 -0
  497. /package/dist/cli-bundle/chunks/{learnings-RJPGH2ME.js.map → learnings-XK3P4ZDR.js.map} +0 -0
  498. /package/dist/cli-bundle/chunks/{list-NJV6WBT4.js.map → list-6CL3XFT6.js.map} +0 -0
  499. /package/dist/cli-bundle/chunks/{list-OO5P472O.js.map → list-BYNN4ZEO.js.map} +0 -0
  500. /package/dist/cli-bundle/chunks/{notes-2KWHADK3.js.map → notes-5T6P7C5V.js.map} +0 -0
  501. /package/dist/cli-bundle/chunks/{notes-FNCDMZW2.js.map → notes-U5FZCSBT.js.map} +0 -0
  502. /package/dist/cli-bundle/chunks/{plan-CYK2P5PD.js.map → plan-FQLMJRLZ.js.map} +0 -0
  503. /package/dist/cli-bundle/chunks/{plan-MQO5JTSV.js.map → plan-VNUG3WZZ.js.map} +0 -0
  504. /package/dist/cli-bundle/chunks/{register-setup-X2R5CFDV.js.map → register-setup-G4QYI3RX.js.map} +0 -0
  505. /package/dist/cli-bundle/chunks/{register-setup-GAQZZRUA.js.map → register-setup-IKX5524L.js.map} +0 -0
  506. /package/dist/cli-bundle/chunks/{restore-F4ALFV4D.js.map → restore-CHIOQAQL.js.map} +0 -0
  507. /package/dist/cli-bundle/chunks/{restore-E3GZKRRK.js.map → restore-M6AFHMV4.js.map} +0 -0
  508. /package/dist/cli-bundle/chunks/{schema-3CPFLDAY.js.map → schema-76HDZJCC.js.map} +0 -0
  509. /package/dist/cli-bundle/chunks/{schema-7EHBPNXM.js.map → schema-AINZ2IMM.js.map} +0 -0
  510. /package/dist/cli-bundle/chunks/{search-OBZVYJJ2.js.map → search-JMLFQEPJ.js.map} +0 -0
  511. /package/dist/cli-bundle/chunks/{search-2T3NCCUR.js.map → search-NL3TSCYB.js.map} +0 -0
  512. /package/dist/cli-bundle/chunks/{stats-6LVK4JER.js.map → stats-BKXCBIGT.js.map} +0 -0
  513. /package/dist/cli-bundle/chunks/{stats-ULGQACF7.js.map → stats-UBD56TGK.js.map} +0 -0
  514. /package/dist/cli-bundle/chunks/{telemetry-HHKRTMZA.js.map → telemetry-N454RHG5.js.map} +0 -0
  515. /package/dist/cli-bundle/chunks/{telemetry-6G27FLCP.js.map → telemetry-ZJXK3H7X.js.map} +0 -0
  516. /package/dist/cli-bundle/chunks/{test-2PP4YBV6.js.map → test-BQAKIXAT.js.map} +0 -0
  517. /package/dist/cli-bundle/chunks/{test-PPOLRIBA.js.map → test-O74JFUH5.js.map} +0 -0
  518. /package/dist/cli-bundle/chunks/{test-all-6Z272JRI.js.map → test-all-7LV3I6S5.js.map} +0 -0
  519. /package/dist/cli-bundle/chunks/{test-all-NETGVNM6.js.map → test-all-TDYCCBA4.js.map} +0 -0
  520. /package/dist/cli-bundle/chunks/{test-runs-M24WA6TI.js.map → test-runs-E64M6XS3.js.map} +0 -0
  521. /package/dist/cli-bundle/chunks/{test-runs-CRPQVMMG.js.map → test-runs-LXZLULCI.js.map} +0 -0
  522. /package/dist/cli-bundle/chunks/{update-O7TBOUVQ.js.map → update-2EVXOC7V.js.map} +0 -0
  523. /package/dist/cli-bundle/chunks/{update-MCPCPMHV.js.map → update-5A2B6QYB.js.map} +0 -0
  524. /package/dist/cli-bundle/chunks/{update-many-JSRF5EH5.js.map → update-many-TUGU5YXQ.js.map} +0 -0
  525. /package/dist/cli-bundle/chunks/{update-many-Y3HOL7WA.js.map → update-many-V4LA3C4H.js.map} +0 -0
  526. /package/dist/cli-bundle/chunks/{upgrade-5RTQVKKE.js.map → upgrade-37F7JKES.js.map} +0 -0
  527. /package/dist/cli-bundle/chunks/{upgrade-ECB6GH3M.js.map → upgrade-L32JA4TZ.js.map} +0 -0
  528. /package/dist/cli-bundle/chunks/{validate-MCNMAXVA.js.map → validate-EQTT6WVX.js.map} +0 -0
  529. /package/dist/cli-bundle/chunks/{validate-J6Q444SD.js.map → validate-XN4I4DPL.js.map} +0 -0
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  parseAnnotationTextInput,
3
3
  runAnnotationCommand
4
- } from "./chunk-OPYA2HIU.js";
4
+ } from "./chunk-TK5VZFHY.js";
5
5
  import "./chunk-O7IWB35H.js";
6
6
  import {
7
7
  createStdinTokenResolver
8
- } from "./chunk-4TJWRPIH.js";
9
- import "./chunk-VDVVOLR6.js";
10
- import "./chunk-LF2VNLEZ.js";
11
- import "./chunk-WCWIDJII.js";
12
- import "./chunk-NHRZSYAA.js";
13
- import "./chunk-U3Z4OCZC.js";
14
- import "./chunk-SAUXUI6U.js";
8
+ } from "./chunk-TNAP7EJX.js";
9
+ import "./chunk-QJMGRZO2.js";
10
+ import "./chunk-3KLPFWZ4.js";
11
+ import "./chunk-VPEAS7PS.js";
12
+ import "./chunk-73ZPG2I3.js";
13
+ import "./chunk-5SCT2JCT.js";
14
+ import "./chunk-IUKD4W6Z.js";
15
15
  import {
16
16
  EXIT_CODE,
17
17
  PmCliError
18
- } from "./chunk-C72IQIBT.js";
18
+ } from "./chunk-FY4SPXSC.js";
19
19
 
20
20
  // dist/cli/commands/comments.js
21
21
  import { readFile } from "node:fs/promises";
@@ -100,4 +100,4 @@ async function runComments(id, options, global2) {
100
100
  export {
101
101
  runComments
102
102
  };
103
- //# sourceMappingURL=comments-TTZUIB2O.js.map
103
+ //# sourceMappingURL=comments-B4RWWDJT.js.map
@@ -3,21 +3,21 @@
3
3
  import {
4
4
  parseAnnotationTextInput,
5
5
  runAnnotationCommand
6
- } from "./chunk-RKCJ2JMA.js";
6
+ } from "./chunk-OASDW5UI.js";
7
7
  import "./chunk-J27KIHTG.js";
8
8
  import {
9
9
  createStdinTokenResolver
10
- } from "./chunk-23WNCJBA.js";
11
- import "./chunk-P2NVFE4L.js";
12
- import "./chunk-AVGOVJGV.js";
13
- import "./chunk-7CR4GAYN.js";
14
- import "./chunk-5ATRWEZO.js";
15
- import "./chunk-42IULX44.js";
16
- import "./chunk-PW7C262O.js";
10
+ } from "./chunk-I7NYDZDV.js";
11
+ import "./chunk-P5U5EOMA.js";
12
+ import "./chunk-HI7STVF2.js";
13
+ import "./chunk-ATEES5SX.js";
14
+ import "./chunk-UUWGCWBU.js";
15
+ import "./chunk-CCX4RSYZ.js";
16
+ import "./chunk-WUNFKP7M.js";
17
17
  import {
18
18
  EXIT_CODE,
19
19
  PmCliError
20
- } from "./chunk-5JF76OJF.js";
20
+ } from "./chunk-A6LXQFO7.js";
21
21
 
22
22
  // dist/cli/commands/comments.js
23
23
  import { readFile } from "node:fs/promises";
@@ -95,6 +95,6 @@ async function runComments(id, options, global) {
95
95
  export {
96
96
  runComments
97
97
  };
98
- //# sourceMappingURL=comments-OMB7YE27.js.map
98
+ //# sourceMappingURL=comments-RN5TG4ZN.js.map
99
99
 
100
100
  //# debugId=1e3f73a8-4331-568d-ab80-3e435948371c
@@ -3,19 +3,19 @@
3
3
  import {
4
4
  normalizeParentReferencePolicy,
5
5
  normalizeSprintReleaseFormatPolicy
6
- } from "./chunk-44JP4PYY.js";
6
+ } from "./chunk-Y3YKK7CY.js";
7
7
  import {
8
8
  migrateItemFilesToFormat
9
- } from "./chunk-E7LOIIFP.js";
9
+ } from "./chunk-ESANVZF4.js";
10
10
  import {
11
11
  buildInvalidTypeError
12
- } from "./chunk-6IGTNFE3.js";
13
- import "./chunk-5ATRWEZO.js";
12
+ } from "./chunk-FDH2X65L.js";
13
+ import "./chunk-UUWGCWBU.js";
14
14
  import {
15
15
  resolveItemTypeRegistry,
16
16
  resolveTypeName
17
- } from "./chunk-42IULX44.js";
18
- import "./chunk-PW7C262O.js";
17
+ } from "./chunk-CCX4RSYZ.js";
18
+ import "./chunk-WUNFKP7M.js";
19
19
  import {
20
20
  CONTEXT_DEPTH_VALUES,
21
21
  EXIT_CODE,
@@ -27,7 +27,7 @@ import {
27
27
  resolveGlobalPmRoot,
28
28
  resolvePmRoot,
29
29
  writeSettings
30
- } from "./chunk-5JF76OJF.js";
30
+ } from "./chunk-A6LXQFO7.js";
31
31
 
32
32
  // dist/core/config/positional-value.js
33
33
  var FORMAT_KEYS = /* @__PURE__ */ new Set(["item_format"]);
@@ -1781,6 +1781,6 @@ async function runConfig(scopeValue, actionValue, keyValue, options, global, val
1781
1781
  export {
1782
1782
  runConfig
1783
1783
  };
1784
- //# sourceMappingURL=config-5VPR42A6.js.map
1784
+ //# sourceMappingURL=config-3JXJ3XZ7.js.map
1785
1785
 
1786
1786
  //# debugId=6e9194b1-5f46-5288-8198-2d5a1c10b25a
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  normalizeParentReferencePolicy,
3
3
  normalizeSprintReleaseFormatPolicy
4
- } from "./chunk-NUGAWYEN.js";
4
+ } from "./chunk-XTKJSVWH.js";
5
5
  import {
6
6
  migrateItemFilesToFormat
7
- } from "./chunk-RE2JQJZJ.js";
7
+ } from "./chunk-VSRZRLG3.js";
8
8
  import {
9
9
  buildInvalidTypeError
10
- } from "./chunk-JEGFLKSI.js";
11
- import "./chunk-NHRZSYAA.js";
10
+ } from "./chunk-OLKBSY4N.js";
11
+ import "./chunk-73ZPG2I3.js";
12
12
  import {
13
13
  resolveItemTypeRegistry,
14
14
  resolveTypeName
15
- } from "./chunk-U3Z4OCZC.js";
16
- import "./chunk-SAUXUI6U.js";
15
+ } from "./chunk-5SCT2JCT.js";
16
+ import "./chunk-IUKD4W6Z.js";
17
17
  import {
18
18
  CONTEXT_DEPTH_VALUES,
19
19
  EXIT_CODE,
@@ -25,7 +25,7 @@ import {
25
25
  resolveGlobalPmRoot,
26
26
  resolvePmRoot,
27
27
  writeSettings
28
- } from "./chunk-C72IQIBT.js";
28
+ } from "./chunk-FY4SPXSC.js";
29
29
 
30
30
  // dist/core/config/positional-value.js
31
31
  !(function() {
@@ -1800,4 +1800,4 @@ async function runConfig(scopeValue, actionValue, keyValue, options, global2, va
1800
1800
  export {
1801
1801
  runConfig
1802
1802
  };
1803
- //# sourceMappingURL=config-NNLXVGVC.js.map
1803
+ //# sourceMappingURL=config-FZ4UDC4B.js.map
@@ -1,37 +1,37 @@
1
1
  import {
2
2
  runActivity
3
- } from "./chunk-KTVXLI54.js";
4
- import "./chunk-EQ6N6IDR.js";
5
- import "./chunk-H37YPWLM.js";
3
+ } from "./chunk-YW6Q3RYZ.js";
4
+ import "./chunk-IGVJRZ6H.js";
5
+ import "./chunk-XMBI6TNW.js";
6
6
  import {
7
7
  runList
8
- } from "./chunk-CAXUGAAF.js";
8
+ } from "./chunk-4YFAGDRH.js";
9
9
  import {
10
10
  collectRuntimeFilterValues,
11
11
  matchesRuntimeFilters
12
- } from "./chunk-F2REA7VW.js";
12
+ } from "./chunk-4JCSYR6F.js";
13
13
  import {
14
14
  parseIntegerLimit,
15
15
  parsePriority,
16
16
  parseType
17
- } from "./chunk-VDVVOLR6.js";
17
+ } from "./chunk-QJMGRZO2.js";
18
18
  import {
19
19
  listAllFrontMatterLight
20
- } from "./chunk-LF2VNLEZ.js";
21
- import "./chunk-WCWIDJII.js";
20
+ } from "./chunk-3KLPFWZ4.js";
21
+ import "./chunk-VPEAS7PS.js";
22
22
  import {
23
23
  isTerminalStatus,
24
24
  normalizeStatusForRegistry,
25
25
  normalizeStatusInput
26
- } from "./chunk-NHRZSYAA.js";
26
+ } from "./chunk-73ZPG2I3.js";
27
27
  import {
28
28
  resolveItemTypeRegistry
29
- } from "./chunk-U3Z4OCZC.js";
29
+ } from "./chunk-5SCT2JCT.js";
30
30
  import {
31
31
  compareTimestampStrings,
32
32
  nowIso,
33
33
  resolveIsoOrRelative
34
- } from "./chunk-SAUXUI6U.js";
34
+ } from "./chunk-IUKD4W6Z.js";
35
35
  import {
36
36
  CONTEXT_DEPTH_VALUES,
37
37
  CONTEXT_SECTION_VALUES,
@@ -47,7 +47,7 @@ import {
47
47
  resolveRuntimeFieldRegistry,
48
48
  resolveRuntimeStatusRegistry,
49
49
  weekdayOrderIndex
50
- } from "./chunk-C72IQIBT.js";
50
+ } from "./chunk-FY4SPXSC.js";
51
51
 
52
52
  // dist/cli/commands/calendar.js
53
53
  import { encode as encodeToon } from "@toon-format/toon";
@@ -739,14 +739,14 @@ async function runCalendar(options, global2) {
739
739
  !(function() {
740
740
  try {
741
741
  var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
742
- n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d5f50a52-85aa-5e3d-b803-9c1500b4320c");
742
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "6714cb01-5f6a-50da-9cf6-8d60a33a390a");
743
743
  } catch (e2) {
744
744
  }
745
745
  })();
746
746
  var CONTEXT_OUTPUT_VALUES = ["markdown", "toon", "json"];
747
747
  var HIGH_LEVEL_TYPES = /* @__PURE__ */ new Set(["Epic", "Feature"]);
748
748
  var DEFAULT_CONTEXT_LIMIT = 10;
749
- var STANDARD_SECTIONS = ["hierarchy", "activity", "progress", "workload"];
749
+ var STANDARD_SECTIONS = ["hierarchy", "activity", "progress", "recently_created", "unparented", "workload"];
750
750
  var DEEP_SECTIONS = [
751
751
  ...STANDARD_SECTIONS,
752
752
  "blockers",
@@ -754,6 +754,10 @@ var DEEP_SECTIONS = [
754
754
  "staleness",
755
755
  "tests"
756
756
  ];
757
+ var LEADING_HYPHEN_DATE = /^(\d{4})-(\d{2})-(\d{2})/;
758
+ var LEADING_COMPACT_DATE = /^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/;
759
+ var COMPACT_DATE = /^(\d{4})(\d{2})(\d{2})$/;
760
+ var COMPACT_DATETIME = /^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?(Z|[+-]\d{2}:?\d{2})?$/i;
757
761
  function parseOutputFormat(raw) {
758
762
  if (!raw)
759
763
  return void 0;
@@ -890,6 +894,59 @@ function compareOptionalDeadline(left, right) {
890
894
  return -1;
891
895
  return compareTimestampStrings(leftValue, rightValue);
892
896
  }
897
+ function daysInUtcMonth(year, monthIndex) {
898
+ return new Date(Date.UTC(year, monthIndex + 1, 0)).getUTCDate();
899
+ }
900
+ function hasNoInvalidDatePrefix(value) {
901
+ const match = LEADING_HYPHEN_DATE.exec(value) ?? LEADING_COMPACT_DATE.exec(value);
902
+ if (!match) {
903
+ return true;
904
+ }
905
+ const year = Number.parseInt(match[1], 10);
906
+ const month = Number.parseInt(match[2], 10);
907
+ const day = Number.parseInt(match[3], 10);
908
+ return month >= 1 && month <= 12 && day >= 1 && day <= daysInUtcMonth(year, month - 1);
909
+ }
910
+ function normalizeTimestampCandidate(value) {
911
+ const compactDate = COMPACT_DATE.exec(value);
912
+ if (compactDate) {
913
+ return `${compactDate[1]}-${compactDate[2]}-${compactDate[3]}`;
914
+ }
915
+ const compactDateTime = COMPACT_DATETIME.exec(value);
916
+ if (compactDateTime) {
917
+ const [, year, month, day, hour, minute, secondRaw, offsetRaw] = compactDateTime;
918
+ const second = secondRaw ? `:${secondRaw}` : "";
919
+ const offset = offsetRaw && offsetRaw.length === 5 && offsetRaw !== "Z" ? `${offsetRaw.slice(0, 3)}:${offsetRaw.slice(3)}` : offsetRaw ?? "";
920
+ return `${year}-${month}-${day}T${hour}:${minute}${second}${offset}`;
921
+ }
922
+ return value;
923
+ }
924
+ function parseContextTimestampMs(value) {
925
+ if (typeof value !== "string") {
926
+ return Number.NaN;
927
+ }
928
+ const trimmed = value.trim();
929
+ if (trimmed.length === 0 || !hasNoInvalidDatePrefix(trimmed)) {
930
+ return Number.NaN;
931
+ }
932
+ const parsed = Date.parse(normalizeTimestampCandidate(trimmed));
933
+ return Number.isFinite(parsed) ? parsed : Number.NaN;
934
+ }
935
+ function sortableTimestamp(value) {
936
+ const parsed = parseContextTimestampMs(value);
937
+ return Number.isFinite(parsed) ? new Date(parsed).toISOString() : "";
938
+ }
939
+ function dateTokenForTimestamp(value) {
940
+ const parsed = parseContextTimestampMs(value);
941
+ return Number.isFinite(parsed) ? new Date(parsed).toISOString().slice(0, 10) : "unknown";
942
+ }
943
+ function normalizedParentId(value) {
944
+ if (typeof value !== "string") {
945
+ return null;
946
+ }
947
+ const trimmed = value.trim();
948
+ return trimmed.length > 0 ? trimmed : null;
949
+ }
893
950
  function compareCriticalItems(left, right, statusRegistry) {
894
951
  const byStatus = statusRank(left.status, statusRegistry) - statusRank(right.status, statusRegistry);
895
952
  if (byStatus !== 0)
@@ -903,12 +960,27 @@ function compareCriticalItems(left, right, statusRegistry) {
903
960
  const byDeadline = compareOptionalDeadline(left.deadline, right.deadline);
904
961
  if (byDeadline !== 0)
905
962
  return byDeadline;
906
- const byUpdated = compareTimestampStrings(right.updated_at, left.updated_at);
963
+ const byUpdated = compareTimestampStrings(sortableTimestamp(right.updated_at), sortableTimestamp(left.updated_at));
907
964
  const byId = left.id.localeCompare(right.id);
908
965
  return byUpdated !== 0 ? byUpdated : byId;
909
966
  }
910
- function toContextFocusItem(item) {
911
- return {
967
+ function completionPct(closed, total) {
968
+ return total > 0 ? Math.round(closed / total * 100) : 0;
969
+ }
970
+ function buildChildrenByParent(allItems) {
971
+ const childrenByParent = /* @__PURE__ */ new Map();
972
+ for (const item of allItems) {
973
+ const parent = normalizedParentId(item.parent);
974
+ if (!parent)
975
+ continue;
976
+ const children = childrenByParent.get(parent) ?? [];
977
+ children.push(item);
978
+ childrenByParent.set(parent, children);
979
+ }
980
+ return childrenByParent;
981
+ }
982
+ function toContextFocusItem(item, statusRegistry, childrenByParent) {
983
+ const focus = {
912
984
  id: item.id,
913
985
  title: item.title,
914
986
  type: item.type,
@@ -918,8 +990,20 @@ function toContextFocusItem(item) {
918
990
  deadline: item.deadline ?? null,
919
991
  assignee: item.assignee ?? null,
920
992
  tags: Array.isArray(item.tags) ? [...item.tags] : [],
921
- updated_at: item.updated_at
993
+ updated_at: item.updated_at,
994
+ parent: normalizedParentId(item.parent)
922
995
  };
996
+ if (statusRegistry && childrenByParent) {
997
+ const descendants = collectDescendants(item.id, childrenByParent);
998
+ const total = descendants.length;
999
+ if (total > 0) {
1000
+ const closed = descendants.filter((desc) => isClosedStatus(desc.status, statusRegistry)).length;
1001
+ focus.children_total = total;
1002
+ focus.children_closed = closed;
1003
+ focus.completion_pct = completionPct(closed, total);
1004
+ }
1005
+ }
1006
+ return focus;
923
1007
  }
924
1008
  function summarizeAgenda(events) {
925
1009
  let deadlines = 0;
@@ -954,14 +1038,7 @@ function buildHierarchy(allItems, activeItems, statusRegistry, limit) {
954
1038
  for (const item of allItems) {
955
1039
  itemMap.set(item.id, item);
956
1040
  }
957
- const childrenByParent = /* @__PURE__ */ new Map();
958
- for (const item of allItems) {
959
- if (!item.parent)
960
- continue;
961
- const children = childrenByParent.get(item.parent) ?? [];
962
- children.push(item);
963
- childrenByParent.set(item.parent, children);
964
- }
1041
+ const childrenByParent = buildChildrenByParent(allItems);
965
1042
  const activeHighLevelIds = new Set(activeItems.filter((item) => HIGH_LEVEL_TYPES.has(item.type)).map((item) => item.id));
966
1043
  const nodes = [];
967
1044
  for (const parentId of activeHighLevelIds) {
@@ -1075,7 +1152,7 @@ function buildProgress(allItems, activeItems, statusRegistry, limit) {
1075
1152
  open,
1076
1153
  in_progress: inProgress,
1077
1154
  blocked,
1078
- completion_pct: total > 0 ? Math.round(closed / total * 100) : 0
1155
+ completion_pct: completionPct(closed, total)
1079
1156
  });
1080
1157
  }
1081
1158
  return entries.sort((a, b) => a.completion_pct - b.completion_pct).slice(0, limit);
@@ -1134,6 +1211,18 @@ function buildStaleness(allNonTerminal, staleThresholdDays, now, limit) {
1134
1211
  stale_days: Math.floor((new Date(now).getTime() - new Date(item.updated_at).getTime()) / (24 * 60 * 60 * 1e3))
1135
1212
  })).sort((a, b) => b.stale_days - a.stale_days).slice(0, limit);
1136
1213
  }
1214
+ function buildRecentlyCreated(allNonTerminal, statusRegistry, childrenByParent, limit) {
1215
+ return allNonTerminal.map((item) => ({ item, sortKey: sortableTimestamp(item.created_at) })).sort((left, right) => {
1216
+ const byCreated = compareTimestampStrings(right.sortKey, left.sortKey);
1217
+ return byCreated !== 0 ? byCreated : left.item.id.localeCompare(right.item.id);
1218
+ }).slice(0, limit).map(({ item }) => ({
1219
+ ...toContextFocusItem(item, statusRegistry, childrenByParent),
1220
+ created_at: item.created_at
1221
+ }));
1222
+ }
1223
+ function buildUnparented(allNonTerminal, statusRegistry, childrenByParent, limit) {
1224
+ return allNonTerminal.filter((item) => !normalizedParentId(item.parent) && !HIGH_LEVEL_TYPES.has(item.type)).sort((left, right) => compareCriticalItems(left, right, statusRegistry)).slice(0, limit).map((item) => toContextFocusItem(item, statusRegistry, childrenByParent));
1225
+ }
1137
1226
  function buildTestHealth(activeItems) {
1138
1227
  let itemsWithTests = 0;
1139
1228
  let itemsWithRecentRuns = 0;
@@ -1175,7 +1264,9 @@ function formatClock(timestamp) {
1175
1264
  function formatFocusLine(item) {
1176
1265
  const orderToken = item.order === null ? "-" : String(item.order);
1177
1266
  const deadlineToken = item.deadline ?? "-";
1178
- return `${item.id} p${item.priority} ${item.status} ${item.type} order:${orderToken} deadline:${deadlineToken} ${item.title}`;
1267
+ const parentToken = item.parent ? ` parent:${item.parent}` : "";
1268
+ const progressToken = item.children_total !== void 0 && item.children_closed !== void 0 && item.completion_pct !== void 0 ? ` children:${item.children_closed}/${item.children_total} done:${item.completion_pct}%` : "";
1269
+ return `${item.id} p${item.priority} ${item.status} ${item.type} order:${orderToken} deadline:${deadlineToken}${parentToken}${progressToken} ${item.title}`;
1179
1270
  }
1180
1271
  function formatAgendaLine(event) {
1181
1272
  const base = `${formatClock(event.at)} [${event.kind}] ${event.item_id} p${event.item_priority} ${event.item_status} ${event.item_title}`;
@@ -1259,6 +1350,20 @@ function renderContextMarkdown(result) {
1259
1350
  }
1260
1351
  lines.push("");
1261
1352
  }
1353
+ if (result.recently_created && result.recently_created.length > 0) {
1354
+ lines.push("## Recently created");
1355
+ for (const item of result.recently_created) {
1356
+ lines.push(`- ${dateTokenForTimestamp(item.created_at)} ${formatFocusLine(item)}`);
1357
+ }
1358
+ lines.push("");
1359
+ }
1360
+ if (result.unparented && result.unparented.length > 0) {
1361
+ lines.push("## Unparented");
1362
+ for (const item of result.unparented) {
1363
+ lines.push(`- ${formatFocusLine(item)}`);
1364
+ }
1365
+ lines.push("");
1366
+ }
1262
1367
  if (result.activity && result.activity.length > 0) {
1263
1368
  lines.push("## Recent activity");
1264
1369
  for (const entry of result.activity) {
@@ -1330,7 +1435,7 @@ async function runContext(options, global2) {
1330
1435
  const sectionsIncluded = parseContextSections(options.section, depth, contextSettings);
1331
1436
  const activityLimit = parseActivityLimit(options.activityLimit, contextSettings);
1332
1437
  const staleThresholdDays = parseStaleThresholdDays(options.staleThreshold, contextSettings);
1333
- const needsAllItems = sectionsIncluded.some((s) => ["hierarchy", "progress", "blockers", "staleness"].includes(s));
1438
+ const needsAllItems = sectionsIncluded.some((s) => ["hierarchy", "progress", "blockers", "staleness", "recently_created", "unparented"].includes(s));
1334
1439
  const baseListOptions = stripListProjectionFlags(options);
1335
1440
  const listOptions = { ...baseListOptions, excludeTerminal: true };
1336
1441
  const listed = await runList(void 0, listOptions, global2);
@@ -1346,10 +1451,12 @@ async function runContext(options, global2) {
1346
1451
  const blockedStatuses = statusRegistry.blocked_statuses;
1347
1452
  const activeItems = ranked.filter((item) => activeStatuses.has(normalizeStatusForRegistry(item.status, statusRegistry)));
1348
1453
  const blockedItems = ranked.filter((item) => blockedStatuses.has(normalizeStatusForRegistry(item.status, statusRegistry)));
1349
- const highLevel = activeItems.filter((item) => HIGH_LEVEL_TYPES.has(item.type)).slice(0, limit).map(toContextFocusItem);
1350
- const lowLevel = activeItems.filter((item) => !HIGH_LEVEL_TYPES.has(item.type)).slice(0, limit).map(toContextFocusItem);
1454
+ const childrenByParent = buildChildrenByParent(allItems);
1455
+ const focusChildrenByParent = needsAllItems ? childrenByParent : void 0;
1456
+ const highLevel = activeItems.filter((item) => HIGH_LEVEL_TYPES.has(item.type)).slice(0, limit).map((item) => toContextFocusItem(item, statusRegistry, focusChildrenByParent));
1457
+ const lowLevel = activeItems.filter((item) => !HIGH_LEVEL_TYPES.has(item.type)).slice(0, limit).map((item) => toContextFocusItem(item, statusRegistry, focusChildrenByParent));
1351
1458
  const blockedFallbackUsed = activeItems.length === 0;
1352
- const blockedFallback = blockedFallbackUsed ? blockedItems.slice(0, limit).map(toContextFocusItem) : [];
1459
+ const blockedFallback = blockedFallbackUsed ? blockedItems.slice(0, limit).map((item) => toContextFocusItem(item, statusRegistry, focusChildrenByParent)) : [];
1353
1460
  const calendarOptions = {
1354
1461
  ...baseListOptions,
1355
1462
  view: "agenda",
@@ -1375,6 +1482,8 @@ async function runContext(options, global2) {
1375
1482
  const activity = has("activity") ? await buildActivity(activityLimit, global2) : void 0;
1376
1483
  const progress = has("progress") ? buildProgress(allItems, activeItems, statusRegistry, limit) : void 0;
1377
1484
  const blockersSection = has("blockers") ? buildBlockers(blockedItems, itemMap, limit) : void 0;
1485
+ const recentlyCreated = has("recently_created") ? buildRecentlyCreated(allNonTerminal, statusRegistry, childrenByParent, limit) : void 0;
1486
+ const unparented = has("unparented") ? buildUnparented(allNonTerminal, statusRegistry, childrenByParent, limit) : void 0;
1378
1487
  const filesSection = has("files") ? buildHotFiles(activeItems, limit) : void 0;
1379
1488
  const workload = has("workload") ? buildWorkload(activeItems, statusRegistry, limit) : void 0;
1380
1489
  const staleness = has("staleness") ? buildStaleness(allNonTerminal, staleThresholdDays, now, limit) : void 0;
@@ -1438,6 +1547,10 @@ async function runContext(options, global2) {
1438
1547
  result.progress = progress;
1439
1548
  if (blockersSection)
1440
1549
  result.blockers = blockersSection;
1550
+ if (recentlyCreated)
1551
+ result.recently_created = recentlyCreated;
1552
+ if (unparented)
1553
+ result.unparented = unparented;
1441
1554
  if (filesSection)
1442
1555
  result.files = filesSection;
1443
1556
  if (workload)
@@ -1466,4 +1579,4 @@ export {
1466
1579
  resolveContextOutputFormat,
1467
1580
  runContext
1468
1581
  };
1469
- //# sourceMappingURL=context-4QK6GRXO.js.map
1582
+ //# sourceMappingURL=context-L36PIN35.js.map