@unbrained/pm-cli 2026.7.9 → 2026.7.10

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 (405) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cli/bootstrap-args.js +6 -3
  3. package/dist/cli/bootstrap-args.js.map +1 -1
  4. package/dist/cli/commands/context.d.ts +23 -0
  5. package/dist/cli/commands/context.js +96 -7
  6. package/dist/cli/commands/context.js.map +1 -1
  7. package/dist/cli/commands/extension.d.ts +1 -1
  8. package/dist/cli/commands/extension.js +91 -32
  9. package/dist/cli/commands/extension.js.map +1 -1
  10. package/dist/cli/commands/init.d.ts +19 -3
  11. package/dist/cli/commands/init.js +57 -24
  12. package/dist/cli/commands/init.js.map +1 -1
  13. package/dist/cli/commands/next.d.ts +3 -1
  14. package/dist/cli/commands/next.js +19 -7
  15. package/dist/cli/commands/next.js.map +1 -1
  16. package/dist/cli/commands/update.js +20 -10
  17. package/dist/cli/commands/update.js.map +1 -1
  18. package/dist/cli/register-list-query.js +8 -4
  19. package/dist/cli/register-list-query.js.map +1 -1
  20. package/dist/cli/register-setup.js +11 -2
  21. package/dist/cli/register-setup.js.map +1 -1
  22. package/dist/cli-bundle/chunks/append-G7NGOQVU.js +11 -0
  23. package/dist/cli-bundle/chunks/{append-RSPHC423.js → append-SIECQAPH.js} +5 -5
  24. package/dist/cli-bundle/chunks/{chunk-CGDUIPJL.js → chunk-22PW73KV.js} +3 -3
  25. package/dist/cli-bundle/chunks/{chunk-NBJCIAVV.js → chunk-2RW5DWHQ.js} +13 -8
  26. package/dist/cli-bundle/chunks/chunk-2RW5DWHQ.js.map +1 -0
  27. package/dist/cli-bundle/chunks/{chunk-GO2X6ZRB.js → chunk-35U3AVRY.js} +3 -3
  28. package/dist/cli-bundle/chunks/{chunk-4I7KS5ES.js → chunk-3JFQRPOI.js} +2 -2
  29. package/dist/cli-bundle/chunks/{chunk-NRMDT4OV.js → chunk-3THCOPYI.js} +4 -4
  30. package/dist/cli-bundle/chunks/{chunk-D6J5673C.js → chunk-4BINCIRM.js} +4 -4
  31. package/dist/cli-bundle/chunks/{chunk-26MFLA7K.js → chunk-4P2GYOM5.js} +7 -7
  32. package/dist/cli-bundle/chunks/{chunk-LHDHS4Z6.js → chunk-4QE5HOJY.js} +5 -5
  33. package/dist/cli-bundle/chunks/{chunk-5VAZHYVQ.js → chunk-56J3MPGE.js} +2 -2
  34. package/dist/cli-bundle/chunks/{chunk-MCZK7LY6.js → chunk-5BFBDJ4R.js} +24 -16
  35. package/dist/cli-bundle/chunks/chunk-5BFBDJ4R.js.map +1 -0
  36. package/dist/cli-bundle/chunks/{chunk-IINCZYM3.js → chunk-62ECRG6J.js} +3 -3
  37. package/dist/cli-bundle/chunks/{chunk-VCGHRLJU.js → chunk-62KPBB2W.js} +10 -10
  38. package/dist/cli-bundle/chunks/{chunk-3FUXM574.js → chunk-6MK6M35B.js} +4 -4
  39. package/dist/cli-bundle/chunks/{chunk-TI7QSUFK.js → chunk-6PBZBIS6.js} +5 -5
  40. package/dist/cli-bundle/chunks/{chunk-Y2736PT5.js → chunk-6WIP52LQ.js} +8 -8
  41. package/dist/cli-bundle/chunks/{chunk-GLMJLBLR.js → chunk-75NAGPEL.js} +3 -3
  42. package/dist/cli-bundle/chunks/{chunk-6TD5QGIB.js → chunk-77CWXIAC.js} +4 -4
  43. package/dist/cli-bundle/chunks/{chunk-CEX2DQXZ.js → chunk-7S2UC7S6.js} +37 -73
  44. package/dist/cli-bundle/chunks/chunk-7S2UC7S6.js.map +7 -0
  45. package/dist/cli-bundle/chunks/{chunk-PAWPLIWW.js → chunk-7THLDY3D.js} +5 -5
  46. package/dist/cli-bundle/chunks/{chunk-QJZM5WO5.js → chunk-7TRCAREE.js} +3 -3
  47. package/dist/cli-bundle/chunks/{chunk-EEJKHF7M.js → chunk-7TRVVYPI.js} +5 -5
  48. package/dist/cli-bundle/chunks/{chunk-ONADVBMD.js → chunk-A62N3BM3.js} +5 -5
  49. package/dist/cli-bundle/chunks/{chunk-MBLHA6LR.js → chunk-A7DJG5EF.js} +55 -6
  50. package/dist/cli-bundle/chunks/chunk-A7DJG5EF.js.map +7 -0
  51. package/dist/cli-bundle/chunks/{chunk-GZ365M6E.js → chunk-AD4HJKQZ.js} +49 -7
  52. package/dist/cli-bundle/chunks/chunk-AD4HJKQZ.js.map +1 -0
  53. package/dist/cli-bundle/chunks/{chunk-7QKSLAHB.js → chunk-AIWGQK6K.js} +2 -2
  54. package/dist/cli-bundle/chunks/{chunk-WDNPNW22.js → chunk-AKCHJXJ4.js} +7 -7
  55. package/dist/cli-bundle/chunks/{chunk-KFL3XHMA.js → chunk-AYPXY3HF.js} +2 -2
  56. package/dist/cli-bundle/chunks/{chunk-RL24NAUX.js → chunk-B7FCPO65.js} +4 -4
  57. package/dist/cli-bundle/chunks/{chunk-4OCWJ2AP.js → chunk-BC7QBM2A.js} +7 -7
  58. package/dist/cli-bundle/chunks/{chunk-LD2NBQ5T.js → chunk-BST7GFIX.js} +3 -3
  59. package/dist/cli-bundle/chunks/{chunk-P5SUMCU5.js → chunk-CUBPPDDF.js} +145 -62
  60. package/dist/cli-bundle/chunks/chunk-CUBPPDDF.js.map +1 -0
  61. package/dist/cli-bundle/chunks/{chunk-FJR2S7S4.js → chunk-CYBW4HK7.js} +7 -7
  62. package/dist/cli-bundle/chunks/{chunk-7UCBLJDF.js → chunk-DDF7UMVV.js} +2 -2
  63. package/dist/cli-bundle/chunks/{chunk-DQLP22K2.js → chunk-DLHFJZ2S.js} +7 -7
  64. package/dist/cli-bundle/chunks/{chunk-PCBZ2VJD.js → chunk-DMD2TENU.js} +4 -4
  65. package/dist/cli-bundle/chunks/{chunk-SCJPFQQT.js → chunk-DN67YDFH.js} +3 -3
  66. package/dist/cli-bundle/chunks/{chunk-7TBUV7XS.js → chunk-DNHILSD7.js} +4 -4
  67. package/dist/cli-bundle/chunks/{chunk-FFB3WITE.js → chunk-DT6NDP53.js} +3 -3
  68. package/dist/cli-bundle/chunks/{chunk-DBV5A7FT.js → chunk-DWGHHSDC.js} +5 -5
  69. package/dist/cli-bundle/chunks/{chunk-3V5C7PUH.js → chunk-DYUAQVDK.js} +2 -2
  70. package/dist/cli-bundle/chunks/{chunk-MCH6IKK7.js → chunk-E2RJZQNW.js} +3 -3
  71. package/dist/cli-bundle/chunks/{chunk-6ZKDMEVT.js → chunk-ECXJ7OHI.js} +3 -3
  72. package/dist/cli-bundle/chunks/{chunk-LG4N6YOK.js → chunk-ESXG6VFX.js} +5 -5
  73. package/dist/cli-bundle/chunks/{chunk-K4NMHZR3.js → chunk-EXG6XTJC.js} +13 -8
  74. package/dist/cli-bundle/chunks/chunk-EXG6XTJC.js.map +7 -0
  75. package/dist/cli-bundle/chunks/{chunk-BPJ5NYSJ.js → chunk-F7UA74OZ.js} +54 -7
  76. package/dist/cli-bundle/chunks/chunk-F7UA74OZ.js.map +7 -0
  77. package/dist/cli-bundle/chunks/{chunk-GSQVQINP.js → chunk-FBD2WUNS.js} +4 -4
  78. package/dist/cli-bundle/chunks/{chunk-YSRXFGNV.js → chunk-FSD7W7Y2.js} +3 -3
  79. package/dist/cli-bundle/chunks/{chunk-JYVPLGOW.js → chunk-FWL5XVYI.js} +4 -4
  80. package/dist/cli-bundle/chunks/{chunk-BPYVKTZE.js → chunk-FYMHD6VX.js} +16 -16
  81. package/dist/cli-bundle/chunks/{chunk-SIQGG335.js → chunk-GMNCW27N.js} +7 -7
  82. package/dist/cli-bundle/chunks/{chunk-3SHDAKMF.js → chunk-GPPWUJMR.js} +3 -3
  83. package/dist/cli-bundle/chunks/{chunk-W2VFNVSJ.js → chunk-H3HKQXQJ.js} +3 -3
  84. package/dist/cli-bundle/chunks/{chunk-UIHDZS6X.js → chunk-HFQ7QQZL.js} +7 -7
  85. package/dist/cli-bundle/chunks/{chunk-Z6RLSNUX.js → chunk-HLUB7G6J.js} +3 -3
  86. package/dist/cli-bundle/chunks/{chunk-NRYZ4QLH.js → chunk-HWUIK7YL.js} +16 -16
  87. package/dist/cli-bundle/chunks/{chunk-U72GF3I2.js → chunk-INAZHXOI.js} +3 -3
  88. package/dist/cli-bundle/chunks/{chunk-INOWVPUD.js → chunk-J3ELHLOJ.js} +5 -5
  89. package/dist/cli-bundle/chunks/{chunk-2BVD4ZD2.js → chunk-J3FDNQWM.js} +4 -3
  90. package/dist/cli-bundle/chunks/chunk-J3FDNQWM.js.map +7 -0
  91. package/dist/cli-bundle/chunks/{chunk-UH6VFRV6.js → chunk-J3Z2JMDV.js} +3 -3
  92. package/dist/cli-bundle/chunks/{chunk-2FKIIQMJ.js → chunk-JDEXIVKQ.js} +372 -20
  93. package/dist/cli-bundle/chunks/chunk-JDEXIVKQ.js.map +1 -0
  94. package/dist/cli-bundle/chunks/{chunk-KAJNWMBE.js → chunk-JFOBTM4D.js} +8 -8
  95. package/dist/cli-bundle/chunks/{chunk-J6AD3GWC.js → chunk-JNELC5UO.js} +2 -2
  96. package/dist/cli-bundle/chunks/{chunk-YPE5MFPJ.js → chunk-JQ5NB6O2.js} +4 -4
  97. package/dist/cli-bundle/chunks/{chunk-3UXIMY62.js → chunk-KFC6X4PI.js} +3 -3
  98. package/dist/cli-bundle/chunks/{chunk-C3YU3TXX.js → chunk-L2SWAZ3S.js} +2 -2
  99. package/dist/cli-bundle/chunks/{chunk-QLEH6FTQ.js → chunk-LVVZLEW5.js} +4 -4
  100. package/dist/cli-bundle/chunks/{chunk-RFHLRMLQ.js → chunk-M66PC7JI.js} +3 -3
  101. package/dist/cli-bundle/chunks/{chunk-63PZJCKO.js → chunk-M7DWRMNY.js} +4 -4
  102. package/dist/cli-bundle/chunks/{chunk-UEATYUZW.js → chunk-M7JYEBPT.js} +2 -2
  103. package/dist/cli-bundle/chunks/{chunk-Z2JQH2MG.js → chunk-MQ632QRB.js} +2 -2
  104. package/dist/cli-bundle/chunks/{chunk-5ZMZF53A.js → chunk-N7N3PUUP.js} +7 -7
  105. package/dist/cli-bundle/chunks/{chunk-3YJDIJIE.js → chunk-NPJLTZQZ.js} +3 -3
  106. package/dist/cli-bundle/chunks/{chunk-ASSVI7FP.js → chunk-NQTIOKHL.js} +8 -8
  107. package/dist/cli-bundle/chunks/{chunk-BFNFTHWQ.js → chunk-O67XP4FD.js} +3 -3
  108. package/dist/cli-bundle/chunks/{chunk-K2OKKYSO.js → chunk-OVYXSZOQ.js} +8 -8
  109. package/dist/cli-bundle/chunks/{chunk-FOJEBRDD.js → chunk-P7PDLLCE.js} +5 -5
  110. package/dist/cli-bundle/chunks/{chunk-XXN2B2MJ.js → chunk-PEACKWHL.js} +4 -4
  111. package/dist/cli-bundle/chunks/{chunk-HZZ3AC27.js → chunk-PFRGQZG2.js} +3 -3
  112. package/dist/cli-bundle/chunks/{chunk-Q3CFSOQZ.js → chunk-PMU2OJ3N.js} +4 -4
  113. package/dist/cli-bundle/chunks/{chunk-5STY7NVM.js → chunk-PUMTJMMF.js} +4 -4
  114. package/dist/cli-bundle/chunks/{chunk-K52C6YPA.js → chunk-QTJCMK2S.js} +5 -5
  115. package/dist/cli-bundle/chunks/{chunk-6FU5BVRB.js → chunk-RAE2SLNO.js} +4 -4
  116. package/dist/cli-bundle/chunks/{chunk-S7J3GEHL.js → chunk-RYA7QE7B.js} +10 -10
  117. package/dist/cli-bundle/chunks/{chunk-N4S7BV43.js → chunk-SL337EYZ.js} +379 -20
  118. package/dist/cli-bundle/chunks/chunk-SL337EYZ.js.map +7 -0
  119. package/dist/cli-bundle/chunks/{chunk-NSPSJWGL.js → chunk-SMKQFGDI.js} +4 -4
  120. package/dist/cli-bundle/chunks/{chunk-UFNFHCAC.js → chunk-SWQMU4AD.js} +2 -2
  121. package/dist/cli-bundle/chunks/{chunk-MFLLULHU.js → chunk-TB2CZJAQ.js} +5 -4
  122. package/dist/cli-bundle/chunks/chunk-TB2CZJAQ.js.map +1 -0
  123. package/dist/cli-bundle/chunks/{chunk-WVEMZZCR.js → chunk-TEKAGPZV.js} +3 -3
  124. package/dist/cli-bundle/chunks/{chunk-JH5XDDYS.js → chunk-TM5E2IED.js} +5 -5
  125. package/dist/cli-bundle/chunks/{chunk-C6XSTACC.js → chunk-TTRL5GE6.js} +3 -3
  126. package/dist/cli-bundle/chunks/{chunk-AEOFBBWO.js → chunk-UA2VI62P.js} +3 -3
  127. package/dist/cli-bundle/chunks/{chunk-6RR4XM5H.js → chunk-UYK26VRP.js} +3 -3
  128. package/dist/cli-bundle/chunks/{chunk-CXH7EMSB.js → chunk-VBDQTL3Z.js} +3 -3
  129. package/dist/cli-bundle/chunks/{chunk-NGBWEYNY.js → chunk-W2FXYQ6D.js} +5 -5
  130. package/dist/cli-bundle/chunks/{chunk-UURYLDDC.js → chunk-WZ7EPGUX.js} +5 -5
  131. package/dist/cli-bundle/chunks/{chunk-PPY3GXFK.js → chunk-XES6AVCK.js} +39 -68
  132. package/dist/cli-bundle/chunks/chunk-XES6AVCK.js.map +1 -0
  133. package/dist/cli-bundle/chunks/{chunk-QYZMZD4L.js → chunk-XVCB574W.js} +4 -4
  134. package/dist/cli-bundle/chunks/{chunk-F5DDGY6R.js → chunk-XWS3Z57Q.js} +3 -3
  135. package/dist/cli-bundle/chunks/{chunk-EP2CKDS7.js → chunk-XXJB4GLJ.js} +2 -2
  136. package/dist/cli-bundle/chunks/{chunk-NTOOEVJ4.js → chunk-Y5Q4FEE4.js} +47 -7
  137. package/dist/cli-bundle/chunks/chunk-Y5Q4FEE4.js.map +1 -0
  138. package/dist/cli-bundle/chunks/{chunk-CHSXGTWF.js → chunk-YA4B6P3L.js} +23 -15
  139. package/dist/cli-bundle/chunks/chunk-YA4B6P3L.js.map +7 -0
  140. package/dist/cli-bundle/chunks/{chunk-YHKXNGLA.js → chunk-Z3R2Z5KW.js} +145 -62
  141. package/dist/cli-bundle/chunks/chunk-Z3R2Z5KW.js.map +7 -0
  142. package/dist/cli-bundle/chunks/{chunk-5RJ4LFD3.js → chunk-Z5MFM54X.js} +5 -5
  143. package/dist/cli-bundle/chunks/{chunk-6WCXSC5V.js → chunk-ZGDJA6WI.js} +5 -5
  144. package/dist/cli-bundle/chunks/{chunk-TKWTJGD6.js → chunk-ZIU35KME.js} +5 -5
  145. package/dist/cli-bundle/chunks/{chunk-YUMNZS3X.js → chunk-ZQ2KEWE7.js} +3 -3
  146. package/dist/cli-bundle/chunks/close-2NVUCJXV.js +12 -0
  147. package/dist/cli-bundle/chunks/{close-TKTFRL7N.js → close-BZPS37KL.js} +5 -5
  148. package/dist/cli-bundle/chunks/{close-many-HEPL66EG.js → close-many-KKNCGLVR.js} +13 -13
  149. package/dist/cli-bundle/chunks/close-many-S5WKLWVO.js +22 -0
  150. package/dist/cli-bundle/chunks/{comments-PLFK5ZKK.js → comments-PV5XG342.js} +7 -7
  151. package/dist/cli-bundle/chunks/comments-XAM2ADHO.js +13 -0
  152. package/dist/cli-bundle/chunks/copy-OJ2YNJ7S.js +9 -0
  153. package/dist/cli-bundle/chunks/{copy-VH3L4MN2.js → copy-OZDYDQUG.js} +4 -4
  154. package/dist/cli-bundle/chunks/create-5O3QK3PX.js +25 -0
  155. package/dist/cli-bundle/chunks/{create-LD4SEUD6.js → create-WGFKEJAK.js} +9 -9
  156. package/dist/cli-bundle/chunks/{delete-ZNXUNCZR.js → delete-NTYXFL7A.js} +4 -4
  157. package/dist/cli-bundle/chunks/delete-V7FPW6JL.js +10 -0
  158. package/dist/cli-bundle/chunks/{deps-CVDY7FFK.js → deps-7WVENNH3.js} +4 -4
  159. package/dist/cli-bundle/chunks/{deps-SZXQHV73.js → deps-Z6RD6RWW.js} +4 -4
  160. package/dist/cli-bundle/chunks/{docs-DR74ITCD.js → docs-2NIRGHAN.js} +6 -6
  161. package/dist/cli-bundle/chunks/docs-SOY2CMH3.js +14 -0
  162. package/dist/cli-bundle/chunks/{files-QEFQ2M3H.js → files-4OH2I663.js} +6 -6
  163. package/dist/cli-bundle/chunks/{files-H5YCA74Z.js → files-5KNAFW67.js} +6 -6
  164. package/dist/cli-bundle/chunks/{focus-55TRYSNA.js → focus-CLNZWWKW.js} +5 -5
  165. package/dist/cli-bundle/chunks/focus-JUKXZN3J.js +10 -0
  166. package/dist/cli-bundle/chunks/{history-compact-JJZ4EFL3.js → history-compact-R3T3XPD4.js} +9 -9
  167. package/dist/cli-bundle/chunks/history-compact-WKAKPLFQ.js +21 -0
  168. package/dist/cli-bundle/chunks/{history-redact-TPPUT3A5.js → history-redact-CLJDCBNF.js} +7 -7
  169. package/dist/cli-bundle/chunks/history-redact-Y67UDKD3.js +17 -0
  170. package/dist/cli-bundle/chunks/history-repair-2WLXWQAM.js +19 -0
  171. package/dist/cli-bundle/chunks/{history-repair-J7PIZ6ZP.js → history-repair-LNA7V2VI.js} +9 -9
  172. package/dist/cli-bundle/chunks/{learnings-KB6BT4NR.js → learnings-2L72KBOE.js} +7 -7
  173. package/dist/cli-bundle/chunks/learnings-PNK7WUWO.js +13 -0
  174. package/dist/cli-bundle/chunks/{notes-ZTHXVOKM.js → notes-USDIABZV.js} +7 -7
  175. package/dist/cli-bundle/chunks/notes-X4SWEJSB.js +13 -0
  176. package/dist/cli-bundle/chunks/plan-JU454RMZ.js +24 -0
  177. package/dist/cli-bundle/chunks/{plan-LUR7C24X.js → plan-U4RWU56Z.js} +10 -10
  178. package/dist/cli-bundle/chunks/{profile-JRDMDGT5.js → profile-COBKZJUQ.js} +9 -9
  179. package/dist/cli-bundle/chunks/{profile-5F75MO5O.js → profile-RKIRCXH7.js} +9 -9
  180. package/dist/cli-bundle/chunks/{register-list-query-GZYRZLQZ.js → register-list-query-2VBANNFM.js} +19 -17
  181. package/dist/cli-bundle/chunks/{register-list-query-GZYRZLQZ.js.map → register-list-query-2VBANNFM.js.map} +1 -1
  182. package/dist/cli-bundle/chunks/{register-list-query-W2W7RQJJ.js → register-list-query-4AZEKWZ5.js} +18 -16
  183. package/dist/cli-bundle/chunks/{register-list-query-W2W7RQJJ.js.map → register-list-query-4AZEKWZ5.js.map} +2 -2
  184. package/dist/cli-bundle/chunks/{register-mutation-7DMOYDPC.js → register-mutation-JGXTDEIZ.js} +29 -29
  185. package/dist/cli-bundle/chunks/{register-mutation-5UDT3WL3.js → register-mutation-XVO4GGZI.js} +29 -29
  186. package/dist/cli-bundle/chunks/{register-operations-Y4E32W4D.js → register-operations-4EEFV5KJ.js} +26 -26
  187. package/dist/cli-bundle/chunks/{register-operations-NW43IUPE.js → register-operations-UV25Z4BN.js} +26 -26
  188. package/dist/cli-bundle/chunks/{register-setup-3GVJ7XPE.js → register-setup-MMXQQC5J.js} +27 -19
  189. package/dist/cli-bundle/chunks/register-setup-MMXQQC5J.js.map +1 -0
  190. package/dist/cli-bundle/chunks/{register-setup-MPTTS52V.js → register-setup-NQE5MW63.js} +26 -18
  191. package/dist/cli-bundle/chunks/register-setup-NQE5MW63.js.map +7 -0
  192. package/dist/cli-bundle/chunks/restore-54HR2EYD.js +15 -0
  193. package/dist/cli-bundle/chunks/{restore-BTBEZ5CK.js → restore-BINCHJIY.js} +7 -7
  194. package/dist/cli-bundle/chunks/{schema-DGSTYYQB.js → schema-2JZNEQSG.js} +6 -6
  195. package/dist/cli-bundle/chunks/{schema-HAIBEE24.js → schema-VV3K5WZI.js} +6 -6
  196. package/dist/cli-bundle/chunks/{update-ZMYVXM77.js → update-DK3GAY5D.js} +12 -12
  197. package/dist/cli-bundle/chunks/update-OIMRKTX6.js +21 -0
  198. package/dist/cli-bundle/chunks/update-many-5KI6MW76.js +31 -0
  199. package/dist/cli-bundle/chunks/update-many-IOLDHIZT.js +35 -0
  200. package/dist/cli-bundle/main.js +16 -54
  201. package/dist/cli-bundle/main.js.map +3 -3
  202. package/dist/cli-bundle/sdk-runtime.js +52 -52
  203. package/dist/cli-bundle/sdk-testing.js +6 -6
  204. package/dist/cli-bundle/sdk.js +75 -55
  205. package/dist/cli-bundle/sdk.js.map +2 -2
  206. package/dist/core/extensions/extension-types.d.ts +1 -1
  207. package/dist/core/extensions/extension-types.js +3 -2
  208. package/dist/core/extensions/extension-types.js.map +1 -1
  209. package/dist/core/extensions/index.d.ts +1 -0
  210. package/dist/core/extensions/index.js +3 -2
  211. package/dist/core/extensions/index.js.map +1 -1
  212. package/dist/core/store/front-matter-cache.d.ts +8 -0
  213. package/dist/core/store/front-matter-cache.js +22 -9
  214. package/dist/core/store/front-matter-cache.js.map +1 -1
  215. package/dist/sdk/cli-contracts/commander-mutation-options.js +4 -4
  216. package/dist/sdk/cli-contracts/commander-mutation-options.js.map +1 -1
  217. package/dist/sdk/cli-contracts/enum-contracts.d.ts +1 -1
  218. package/dist/sdk/cli-contracts/flag-contracts.js +7 -2
  219. package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -1
  220. package/dist/sdk/context-relevance.d.ts +166 -0
  221. package/dist/sdk/context-relevance.js +299 -0
  222. package/dist/sdk/context-relevance.js.map +1 -0
  223. package/dist/sdk/index.d.ts +1 -0
  224. package/dist/sdk/index.js +3 -2
  225. package/dist/sdk/index.js.map +1 -1
  226. package/docs/COMMANDS.md +7 -1
  227. package/docs/EXTENSIONS.md +3 -1
  228. package/docs/SDK.md +78 -0
  229. package/docs/TESTING.md +40 -1
  230. package/package.json +4 -2
  231. package/dist/cli-bundle/chunks/append-CDPAYYSB.js +0 -11
  232. package/dist/cli-bundle/chunks/chunk-2BVD4ZD2.js.map +0 -7
  233. package/dist/cli-bundle/chunks/chunk-2FKIIQMJ.js.map +0 -1
  234. package/dist/cli-bundle/chunks/chunk-BPJ5NYSJ.js.map +0 -7
  235. package/dist/cli-bundle/chunks/chunk-CEX2DQXZ.js.map +0 -7
  236. package/dist/cli-bundle/chunks/chunk-CHSXGTWF.js.map +0 -7
  237. package/dist/cli-bundle/chunks/chunk-GZ365M6E.js.map +0 -1
  238. package/dist/cli-bundle/chunks/chunk-K4NMHZR3.js.map +0 -7
  239. package/dist/cli-bundle/chunks/chunk-MBLHA6LR.js.map +0 -7
  240. package/dist/cli-bundle/chunks/chunk-MCZK7LY6.js.map +0 -1
  241. package/dist/cli-bundle/chunks/chunk-MFLLULHU.js.map +0 -1
  242. package/dist/cli-bundle/chunks/chunk-N4S7BV43.js.map +0 -7
  243. package/dist/cli-bundle/chunks/chunk-NBJCIAVV.js.map +0 -1
  244. package/dist/cli-bundle/chunks/chunk-NTOOEVJ4.js.map +0 -1
  245. package/dist/cli-bundle/chunks/chunk-P5SUMCU5.js.map +0 -1
  246. package/dist/cli-bundle/chunks/chunk-PPY3GXFK.js.map +0 -1
  247. package/dist/cli-bundle/chunks/chunk-YHKXNGLA.js.map +0 -7
  248. package/dist/cli-bundle/chunks/close-5WY6QO5F.js +0 -12
  249. package/dist/cli-bundle/chunks/close-many-U2KLQ3NL.js +0 -22
  250. package/dist/cli-bundle/chunks/comments-ZNOD5PTV.js +0 -13
  251. package/dist/cli-bundle/chunks/copy-F7BUFY4J.js +0 -9
  252. package/dist/cli-bundle/chunks/create-KCQM6UYM.js +0 -25
  253. package/dist/cli-bundle/chunks/delete-6KQHZYIP.js +0 -10
  254. package/dist/cli-bundle/chunks/docs-WCVYY6I7.js +0 -14
  255. package/dist/cli-bundle/chunks/focus-N2QGNS5D.js +0 -10
  256. package/dist/cli-bundle/chunks/history-compact-GWQ4UOEI.js +0 -21
  257. package/dist/cli-bundle/chunks/history-redact-4GJOLXCM.js +0 -17
  258. package/dist/cli-bundle/chunks/history-repair-HVCVCGUF.js +0 -19
  259. package/dist/cli-bundle/chunks/learnings-YYY3U2Y7.js +0 -13
  260. package/dist/cli-bundle/chunks/notes-BGG7VL72.js +0 -13
  261. package/dist/cli-bundle/chunks/plan-B42KBMX7.js +0 -24
  262. package/dist/cli-bundle/chunks/register-setup-3GVJ7XPE.js.map +0 -1
  263. package/dist/cli-bundle/chunks/register-setup-MPTTS52V.js.map +0 -7
  264. package/dist/cli-bundle/chunks/restore-EX4UUZL6.js +0 -15
  265. package/dist/cli-bundle/chunks/update-76CRUMC7.js +0 -21
  266. package/dist/cli-bundle/chunks/update-many-QYQRGNPU.js +0 -31
  267. package/dist/cli-bundle/chunks/update-many-U4CEQWI4.js +0 -35
  268. /package/dist/cli-bundle/chunks/{append-CDPAYYSB.js.map → append-G7NGOQVU.js.map} +0 -0
  269. /package/dist/cli-bundle/chunks/{append-RSPHC423.js.map → append-SIECQAPH.js.map} +0 -0
  270. /package/dist/cli-bundle/chunks/{chunk-CGDUIPJL.js.map → chunk-22PW73KV.js.map} +0 -0
  271. /package/dist/cli-bundle/chunks/{chunk-GO2X6ZRB.js.map → chunk-35U3AVRY.js.map} +0 -0
  272. /package/dist/cli-bundle/chunks/{chunk-4I7KS5ES.js.map → chunk-3JFQRPOI.js.map} +0 -0
  273. /package/dist/cli-bundle/chunks/{chunk-NRMDT4OV.js.map → chunk-3THCOPYI.js.map} +0 -0
  274. /package/dist/cli-bundle/chunks/{chunk-D6J5673C.js.map → chunk-4BINCIRM.js.map} +0 -0
  275. /package/dist/cli-bundle/chunks/{chunk-26MFLA7K.js.map → chunk-4P2GYOM5.js.map} +0 -0
  276. /package/dist/cli-bundle/chunks/{chunk-LHDHS4Z6.js.map → chunk-4QE5HOJY.js.map} +0 -0
  277. /package/dist/cli-bundle/chunks/{chunk-5VAZHYVQ.js.map → chunk-56J3MPGE.js.map} +0 -0
  278. /package/dist/cli-bundle/chunks/{chunk-IINCZYM3.js.map → chunk-62ECRG6J.js.map} +0 -0
  279. /package/dist/cli-bundle/chunks/{chunk-VCGHRLJU.js.map → chunk-62KPBB2W.js.map} +0 -0
  280. /package/dist/cli-bundle/chunks/{chunk-3FUXM574.js.map → chunk-6MK6M35B.js.map} +0 -0
  281. /package/dist/cli-bundle/chunks/{chunk-TI7QSUFK.js.map → chunk-6PBZBIS6.js.map} +0 -0
  282. /package/dist/cli-bundle/chunks/{chunk-Y2736PT5.js.map → chunk-6WIP52LQ.js.map} +0 -0
  283. /package/dist/cli-bundle/chunks/{chunk-GLMJLBLR.js.map → chunk-75NAGPEL.js.map} +0 -0
  284. /package/dist/cli-bundle/chunks/{chunk-6TD5QGIB.js.map → chunk-77CWXIAC.js.map} +0 -0
  285. /package/dist/cli-bundle/chunks/{chunk-PAWPLIWW.js.map → chunk-7THLDY3D.js.map} +0 -0
  286. /package/dist/cli-bundle/chunks/{chunk-QJZM5WO5.js.map → chunk-7TRCAREE.js.map} +0 -0
  287. /package/dist/cli-bundle/chunks/{chunk-EEJKHF7M.js.map → chunk-7TRVVYPI.js.map} +0 -0
  288. /package/dist/cli-bundle/chunks/{chunk-ONADVBMD.js.map → chunk-A62N3BM3.js.map} +0 -0
  289. /package/dist/cli-bundle/chunks/{chunk-7QKSLAHB.js.map → chunk-AIWGQK6K.js.map} +0 -0
  290. /package/dist/cli-bundle/chunks/{chunk-WDNPNW22.js.map → chunk-AKCHJXJ4.js.map} +0 -0
  291. /package/dist/cli-bundle/chunks/{chunk-KFL3XHMA.js.map → chunk-AYPXY3HF.js.map} +0 -0
  292. /package/dist/cli-bundle/chunks/{chunk-RL24NAUX.js.map → chunk-B7FCPO65.js.map} +0 -0
  293. /package/dist/cli-bundle/chunks/{chunk-4OCWJ2AP.js.map → chunk-BC7QBM2A.js.map} +0 -0
  294. /package/dist/cli-bundle/chunks/{chunk-LD2NBQ5T.js.map → chunk-BST7GFIX.js.map} +0 -0
  295. /package/dist/cli-bundle/chunks/{chunk-FJR2S7S4.js.map → chunk-CYBW4HK7.js.map} +0 -0
  296. /package/dist/cli-bundle/chunks/{chunk-7UCBLJDF.js.map → chunk-DDF7UMVV.js.map} +0 -0
  297. /package/dist/cli-bundle/chunks/{chunk-DQLP22K2.js.map → chunk-DLHFJZ2S.js.map} +0 -0
  298. /package/dist/cli-bundle/chunks/{chunk-PCBZ2VJD.js.map → chunk-DMD2TENU.js.map} +0 -0
  299. /package/dist/cli-bundle/chunks/{chunk-SCJPFQQT.js.map → chunk-DN67YDFH.js.map} +0 -0
  300. /package/dist/cli-bundle/chunks/{chunk-7TBUV7XS.js.map → chunk-DNHILSD7.js.map} +0 -0
  301. /package/dist/cli-bundle/chunks/{chunk-FFB3WITE.js.map → chunk-DT6NDP53.js.map} +0 -0
  302. /package/dist/cli-bundle/chunks/{chunk-DBV5A7FT.js.map → chunk-DWGHHSDC.js.map} +0 -0
  303. /package/dist/cli-bundle/chunks/{chunk-3V5C7PUH.js.map → chunk-DYUAQVDK.js.map} +0 -0
  304. /package/dist/cli-bundle/chunks/{chunk-MCH6IKK7.js.map → chunk-E2RJZQNW.js.map} +0 -0
  305. /package/dist/cli-bundle/chunks/{chunk-6ZKDMEVT.js.map → chunk-ECXJ7OHI.js.map} +0 -0
  306. /package/dist/cli-bundle/chunks/{chunk-LG4N6YOK.js.map → chunk-ESXG6VFX.js.map} +0 -0
  307. /package/dist/cli-bundle/chunks/{chunk-GSQVQINP.js.map → chunk-FBD2WUNS.js.map} +0 -0
  308. /package/dist/cli-bundle/chunks/{chunk-YSRXFGNV.js.map → chunk-FSD7W7Y2.js.map} +0 -0
  309. /package/dist/cli-bundle/chunks/{chunk-JYVPLGOW.js.map → chunk-FWL5XVYI.js.map} +0 -0
  310. /package/dist/cli-bundle/chunks/{chunk-BPYVKTZE.js.map → chunk-FYMHD6VX.js.map} +0 -0
  311. /package/dist/cli-bundle/chunks/{chunk-SIQGG335.js.map → chunk-GMNCW27N.js.map} +0 -0
  312. /package/dist/cli-bundle/chunks/{chunk-3SHDAKMF.js.map → chunk-GPPWUJMR.js.map} +0 -0
  313. /package/dist/cli-bundle/chunks/{chunk-W2VFNVSJ.js.map → chunk-H3HKQXQJ.js.map} +0 -0
  314. /package/dist/cli-bundle/chunks/{chunk-UIHDZS6X.js.map → chunk-HFQ7QQZL.js.map} +0 -0
  315. /package/dist/cli-bundle/chunks/{chunk-Z6RLSNUX.js.map → chunk-HLUB7G6J.js.map} +0 -0
  316. /package/dist/cli-bundle/chunks/{chunk-NRYZ4QLH.js.map → chunk-HWUIK7YL.js.map} +0 -0
  317. /package/dist/cli-bundle/chunks/{chunk-U72GF3I2.js.map → chunk-INAZHXOI.js.map} +0 -0
  318. /package/dist/cli-bundle/chunks/{chunk-INOWVPUD.js.map → chunk-J3ELHLOJ.js.map} +0 -0
  319. /package/dist/cli-bundle/chunks/{chunk-UH6VFRV6.js.map → chunk-J3Z2JMDV.js.map} +0 -0
  320. /package/dist/cli-bundle/chunks/{chunk-KAJNWMBE.js.map → chunk-JFOBTM4D.js.map} +0 -0
  321. /package/dist/cli-bundle/chunks/{chunk-J6AD3GWC.js.map → chunk-JNELC5UO.js.map} +0 -0
  322. /package/dist/cli-bundle/chunks/{chunk-YPE5MFPJ.js.map → chunk-JQ5NB6O2.js.map} +0 -0
  323. /package/dist/cli-bundle/chunks/{chunk-3UXIMY62.js.map → chunk-KFC6X4PI.js.map} +0 -0
  324. /package/dist/cli-bundle/chunks/{chunk-C3YU3TXX.js.map → chunk-L2SWAZ3S.js.map} +0 -0
  325. /package/dist/cli-bundle/chunks/{chunk-QLEH6FTQ.js.map → chunk-LVVZLEW5.js.map} +0 -0
  326. /package/dist/cli-bundle/chunks/{chunk-RFHLRMLQ.js.map → chunk-M66PC7JI.js.map} +0 -0
  327. /package/dist/cli-bundle/chunks/{chunk-63PZJCKO.js.map → chunk-M7DWRMNY.js.map} +0 -0
  328. /package/dist/cli-bundle/chunks/{chunk-UEATYUZW.js.map → chunk-M7JYEBPT.js.map} +0 -0
  329. /package/dist/cli-bundle/chunks/{chunk-Z2JQH2MG.js.map → chunk-MQ632QRB.js.map} +0 -0
  330. /package/dist/cli-bundle/chunks/{chunk-5ZMZF53A.js.map → chunk-N7N3PUUP.js.map} +0 -0
  331. /package/dist/cli-bundle/chunks/{chunk-3YJDIJIE.js.map → chunk-NPJLTZQZ.js.map} +0 -0
  332. /package/dist/cli-bundle/chunks/{chunk-ASSVI7FP.js.map → chunk-NQTIOKHL.js.map} +0 -0
  333. /package/dist/cli-bundle/chunks/{chunk-BFNFTHWQ.js.map → chunk-O67XP4FD.js.map} +0 -0
  334. /package/dist/cli-bundle/chunks/{chunk-K2OKKYSO.js.map → chunk-OVYXSZOQ.js.map} +0 -0
  335. /package/dist/cli-bundle/chunks/{chunk-FOJEBRDD.js.map → chunk-P7PDLLCE.js.map} +0 -0
  336. /package/dist/cli-bundle/chunks/{chunk-XXN2B2MJ.js.map → chunk-PEACKWHL.js.map} +0 -0
  337. /package/dist/cli-bundle/chunks/{chunk-HZZ3AC27.js.map → chunk-PFRGQZG2.js.map} +0 -0
  338. /package/dist/cli-bundle/chunks/{chunk-Q3CFSOQZ.js.map → chunk-PMU2OJ3N.js.map} +0 -0
  339. /package/dist/cli-bundle/chunks/{chunk-5STY7NVM.js.map → chunk-PUMTJMMF.js.map} +0 -0
  340. /package/dist/cli-bundle/chunks/{chunk-K52C6YPA.js.map → chunk-QTJCMK2S.js.map} +0 -0
  341. /package/dist/cli-bundle/chunks/{chunk-6FU5BVRB.js.map → chunk-RAE2SLNO.js.map} +0 -0
  342. /package/dist/cli-bundle/chunks/{chunk-S7J3GEHL.js.map → chunk-RYA7QE7B.js.map} +0 -0
  343. /package/dist/cli-bundle/chunks/{chunk-NSPSJWGL.js.map → chunk-SMKQFGDI.js.map} +0 -0
  344. /package/dist/cli-bundle/chunks/{chunk-UFNFHCAC.js.map → chunk-SWQMU4AD.js.map} +0 -0
  345. /package/dist/cli-bundle/chunks/{chunk-WVEMZZCR.js.map → chunk-TEKAGPZV.js.map} +0 -0
  346. /package/dist/cli-bundle/chunks/{chunk-JH5XDDYS.js.map → chunk-TM5E2IED.js.map} +0 -0
  347. /package/dist/cli-bundle/chunks/{chunk-C6XSTACC.js.map → chunk-TTRL5GE6.js.map} +0 -0
  348. /package/dist/cli-bundle/chunks/{chunk-AEOFBBWO.js.map → chunk-UA2VI62P.js.map} +0 -0
  349. /package/dist/cli-bundle/chunks/{chunk-6RR4XM5H.js.map → chunk-UYK26VRP.js.map} +0 -0
  350. /package/dist/cli-bundle/chunks/{chunk-CXH7EMSB.js.map → chunk-VBDQTL3Z.js.map} +0 -0
  351. /package/dist/cli-bundle/chunks/{chunk-NGBWEYNY.js.map → chunk-W2FXYQ6D.js.map} +0 -0
  352. /package/dist/cli-bundle/chunks/{chunk-UURYLDDC.js.map → chunk-WZ7EPGUX.js.map} +0 -0
  353. /package/dist/cli-bundle/chunks/{chunk-QYZMZD4L.js.map → chunk-XVCB574W.js.map} +0 -0
  354. /package/dist/cli-bundle/chunks/{chunk-F5DDGY6R.js.map → chunk-XWS3Z57Q.js.map} +0 -0
  355. /package/dist/cli-bundle/chunks/{chunk-EP2CKDS7.js.map → chunk-XXJB4GLJ.js.map} +0 -0
  356. /package/dist/cli-bundle/chunks/{chunk-5RJ4LFD3.js.map → chunk-Z5MFM54X.js.map} +0 -0
  357. /package/dist/cli-bundle/chunks/{chunk-6WCXSC5V.js.map → chunk-ZGDJA6WI.js.map} +0 -0
  358. /package/dist/cli-bundle/chunks/{chunk-TKWTJGD6.js.map → chunk-ZIU35KME.js.map} +0 -0
  359. /package/dist/cli-bundle/chunks/{chunk-YUMNZS3X.js.map → chunk-ZQ2KEWE7.js.map} +0 -0
  360. /package/dist/cli-bundle/chunks/{close-5WY6QO5F.js.map → close-2NVUCJXV.js.map} +0 -0
  361. /package/dist/cli-bundle/chunks/{close-TKTFRL7N.js.map → close-BZPS37KL.js.map} +0 -0
  362. /package/dist/cli-bundle/chunks/{close-many-HEPL66EG.js.map → close-many-KKNCGLVR.js.map} +0 -0
  363. /package/dist/cli-bundle/chunks/{close-many-U2KLQ3NL.js.map → close-many-S5WKLWVO.js.map} +0 -0
  364. /package/dist/cli-bundle/chunks/{comments-PLFK5ZKK.js.map → comments-PV5XG342.js.map} +0 -0
  365. /package/dist/cli-bundle/chunks/{comments-ZNOD5PTV.js.map → comments-XAM2ADHO.js.map} +0 -0
  366. /package/dist/cli-bundle/chunks/{copy-F7BUFY4J.js.map → copy-OJ2YNJ7S.js.map} +0 -0
  367. /package/dist/cli-bundle/chunks/{copy-VH3L4MN2.js.map → copy-OZDYDQUG.js.map} +0 -0
  368. /package/dist/cli-bundle/chunks/{create-KCQM6UYM.js.map → create-5O3QK3PX.js.map} +0 -0
  369. /package/dist/cli-bundle/chunks/{create-LD4SEUD6.js.map → create-WGFKEJAK.js.map} +0 -0
  370. /package/dist/cli-bundle/chunks/{delete-ZNXUNCZR.js.map → delete-NTYXFL7A.js.map} +0 -0
  371. /package/dist/cli-bundle/chunks/{delete-6KQHZYIP.js.map → delete-V7FPW6JL.js.map} +0 -0
  372. /package/dist/cli-bundle/chunks/{deps-CVDY7FFK.js.map → deps-7WVENNH3.js.map} +0 -0
  373. /package/dist/cli-bundle/chunks/{deps-SZXQHV73.js.map → deps-Z6RD6RWW.js.map} +0 -0
  374. /package/dist/cli-bundle/chunks/{docs-DR74ITCD.js.map → docs-2NIRGHAN.js.map} +0 -0
  375. /package/dist/cli-bundle/chunks/{docs-WCVYY6I7.js.map → docs-SOY2CMH3.js.map} +0 -0
  376. /package/dist/cli-bundle/chunks/{files-QEFQ2M3H.js.map → files-4OH2I663.js.map} +0 -0
  377. /package/dist/cli-bundle/chunks/{files-H5YCA74Z.js.map → files-5KNAFW67.js.map} +0 -0
  378. /package/dist/cli-bundle/chunks/{focus-55TRYSNA.js.map → focus-CLNZWWKW.js.map} +0 -0
  379. /package/dist/cli-bundle/chunks/{focus-N2QGNS5D.js.map → focus-JUKXZN3J.js.map} +0 -0
  380. /package/dist/cli-bundle/chunks/{history-compact-JJZ4EFL3.js.map → history-compact-R3T3XPD4.js.map} +0 -0
  381. /package/dist/cli-bundle/chunks/{history-compact-GWQ4UOEI.js.map → history-compact-WKAKPLFQ.js.map} +0 -0
  382. /package/dist/cli-bundle/chunks/{history-redact-TPPUT3A5.js.map → history-redact-CLJDCBNF.js.map} +0 -0
  383. /package/dist/cli-bundle/chunks/{history-redact-4GJOLXCM.js.map → history-redact-Y67UDKD3.js.map} +0 -0
  384. /package/dist/cli-bundle/chunks/{history-repair-HVCVCGUF.js.map → history-repair-2WLXWQAM.js.map} +0 -0
  385. /package/dist/cli-bundle/chunks/{history-repair-J7PIZ6ZP.js.map → history-repair-LNA7V2VI.js.map} +0 -0
  386. /package/dist/cli-bundle/chunks/{learnings-KB6BT4NR.js.map → learnings-2L72KBOE.js.map} +0 -0
  387. /package/dist/cli-bundle/chunks/{learnings-YYY3U2Y7.js.map → learnings-PNK7WUWO.js.map} +0 -0
  388. /package/dist/cli-bundle/chunks/{notes-ZTHXVOKM.js.map → notes-USDIABZV.js.map} +0 -0
  389. /package/dist/cli-bundle/chunks/{notes-BGG7VL72.js.map → notes-X4SWEJSB.js.map} +0 -0
  390. /package/dist/cli-bundle/chunks/{plan-B42KBMX7.js.map → plan-JU454RMZ.js.map} +0 -0
  391. /package/dist/cli-bundle/chunks/{plan-LUR7C24X.js.map → plan-U4RWU56Z.js.map} +0 -0
  392. /package/dist/cli-bundle/chunks/{profile-JRDMDGT5.js.map → profile-COBKZJUQ.js.map} +0 -0
  393. /package/dist/cli-bundle/chunks/{profile-5F75MO5O.js.map → profile-RKIRCXH7.js.map} +0 -0
  394. /package/dist/cli-bundle/chunks/{register-mutation-7DMOYDPC.js.map → register-mutation-JGXTDEIZ.js.map} +0 -0
  395. /package/dist/cli-bundle/chunks/{register-mutation-5UDT3WL3.js.map → register-mutation-XVO4GGZI.js.map} +0 -0
  396. /package/dist/cli-bundle/chunks/{register-operations-Y4E32W4D.js.map → register-operations-4EEFV5KJ.js.map} +0 -0
  397. /package/dist/cli-bundle/chunks/{register-operations-NW43IUPE.js.map → register-operations-UV25Z4BN.js.map} +0 -0
  398. /package/dist/cli-bundle/chunks/{restore-EX4UUZL6.js.map → restore-54HR2EYD.js.map} +0 -0
  399. /package/dist/cli-bundle/chunks/{restore-BTBEZ5CK.js.map → restore-BINCHJIY.js.map} +0 -0
  400. /package/dist/cli-bundle/chunks/{schema-DGSTYYQB.js.map → schema-2JZNEQSG.js.map} +0 -0
  401. /package/dist/cli-bundle/chunks/{schema-HAIBEE24.js.map → schema-VV3K5WZI.js.map} +0 -0
  402. /package/dist/cli-bundle/chunks/{update-ZMYVXM77.js.map → update-DK3GAY5D.js.map} +0 -0
  403. /package/dist/cli-bundle/chunks/{update-76CRUMC7.js.map → update-OIMRKTX6.js.map} +0 -0
  404. /package/dist/cli-bundle/chunks/{update-many-QYQRGNPU.js.map → update-many-5KI6MW76.js.map} +0 -0
  405. /package/dist/cli-bundle/chunks/{update-many-U4CEQWI4.js.map → update-many-IOLDHIZT.js.map} +0 -0
@@ -0,0 +1,166 @@
1
+ /** Canonical signal keys understood by the built-in relevance model. */
2
+ export declare const CONTEXT_RELEVANCE_SIGNAL_NAMES: readonly ["structural", "recency", "activity_density", "graph_proximity", "claim_focus", "priority_pressure", "risk_pressure", "deadline_pressure", "knowledge_density", "author_affinity", "semantic_similarity"];
3
+ /** A normalized signal consumed by the built-in context relevance scorer. */
4
+ export type ContextRelevanceSignalName = (typeof CONTEXT_RELEVANCE_SIGNAL_NAMES)[number];
5
+ /** Normalized candidate features; omitted signals are excluded from weighting. */
6
+ export type ContextRelevanceSignals = Partial<Record<Exclude<ContextRelevanceSignalName, "structural">, number>>;
7
+ /** A project-management object and its derived relevance signals. */
8
+ export interface ContextRelevanceCandidate<TItem> {
9
+ id: string;
10
+ item: TItem;
11
+ signals?: ContextRelevanceSignals;
12
+ }
13
+ /** Per-signal weighted contributions used to explain a ranked result. */
14
+ export type ContextRelevanceContributions = Record<string, number>;
15
+ /** One ranked candidate with deterministic score and explanation metadata. */
16
+ export interface RankedContextCandidate<TItem> extends ContextRelevanceCandidate<TItem> {
17
+ baseline_rank: number;
18
+ rank: number;
19
+ score: number;
20
+ contributions: ContextRelevanceContributions;
21
+ }
22
+ /** Complete output from a context relevance scorer. */
23
+ export interface ContextRelevanceReport<TItem> {
24
+ model: string;
25
+ available_signals: ContextRelevanceSignalName[];
26
+ ranked: RankedContextCandidate<TItem>[];
27
+ warnings?: string[];
28
+ }
29
+ /** Minimal custom score returned by a replacement or wrapper scorer. */
30
+ export interface ContextRelevanceCustomScore {
31
+ id: string;
32
+ score: number;
33
+ }
34
+ /** Input provided to a custom scorer, including the deterministic default. */
35
+ export interface ContextRelevanceScorerInput<TItem> {
36
+ candidates: readonly ContextRelevanceCandidate<TItem>[];
37
+ default_report: ContextRelevanceReport<TItem>;
38
+ }
39
+ /** Replaceable package/extension scorer contract. */
40
+ export type ContextRelevanceScorer<TItem> = (input: ContextRelevanceScorerInput<TItem>) => readonly ContextRelevanceCustomScore[] | Promise<readonly ContextRelevanceCustomScore[]>;
41
+ /** Options for the built-in or replaceable context relevance scorer. */
42
+ export interface ScoreContextCandidatesOptions<TItem> {
43
+ weights?: Partial<Record<ContextRelevanceSignalName, number>>;
44
+ scorer?: ContextRelevanceScorer<TItem>;
45
+ }
46
+ /** Governed extension service used to replace or wrap context ranking. */
47
+ export declare const CONTEXT_RELEVANCE_SERVICE: "context_relevance";
48
+ /** Command surface requesting an active extension relevance override. */
49
+ export type ContextRelevanceSurface = "context" | "next";
50
+ /**
51
+ * Score candidates with pm's deterministic weighted model. Candidate order is
52
+ * the structural baseline and remains unchanged when no advanced signals exist.
53
+ */
54
+ export declare function defaultScoreContextCandidates<TItem>(candidates: readonly ContextRelevanceCandidate<TItem>[], options?: Pick<ScoreContextCandidatesOptions<TItem>, "weights">): ContextRelevanceReport<TItem>;
55
+ /** Score candidates with the default model or a validated replacement/wrapper. */
56
+ export declare function scoreContextCandidates<TItem>(candidates: readonly ContextRelevanceCandidate<TItem>[], options?: ScoreContextCandidatesOptions<TItem>): Promise<ContextRelevanceReport<TItem>>;
57
+ /**
58
+ * Score command candidates through the public default model and then the active
59
+ * governed `context_relevance` service override, when one is registered.
60
+ */
61
+ export declare function scoreContextCandidatesWithActiveExtensions<TItem>(surface: ContextRelevanceSurface, candidates: readonly ContextRelevanceCandidate<TItem>[], options?: Pick<ScoreContextCandidatesOptions<TItem>, "weights">): Promise<ContextRelevanceReport<TItem>>;
62
+ /** Input for rank-aware context/next quality evaluation. */
63
+ export interface ContextRankingEvaluationInput {
64
+ ranked_ids: string[];
65
+ judgments: Record<string, number>;
66
+ required_ids?: string[];
67
+ continuity_ids?: string[];
68
+ actual_tokens: number;
69
+ token_budget: number;
70
+ }
71
+ /** Rank-quality, continuity, recall, and token-budget metrics for one scenario. */
72
+ export interface ContextRankingEvaluation {
73
+ ndcg: number;
74
+ reciprocal_rank: number;
75
+ required_recall: number;
76
+ continuity_coverage: number;
77
+ token_budget_adherence: number;
78
+ within_token_budget: boolean;
79
+ }
80
+ /** Flexible read options accepted by context evaluation scenarios. */
81
+ export interface ContextEvaluationReadOptions {
82
+ explainRanking?: boolean;
83
+ [key: string]: unknown;
84
+ }
85
+ /** Minimal item identity consumed by the context evaluation runner. */
86
+ export interface ContextEvaluationResultItem {
87
+ id: string;
88
+ }
89
+ /** Optional scorer attribution returned by an evaluated read primitive. */
90
+ export interface ContextEvaluationResultRanking {
91
+ items?: Array<{
92
+ id: string;
93
+ contributions: ContextRelevanceContributions;
94
+ }>;
95
+ }
96
+ /** Structural context result consumed by the evaluation runner. */
97
+ export interface ContextEvaluationContextResult {
98
+ high_level?: ContextEvaluationResultItem[];
99
+ low_level?: ContextEvaluationResultItem[];
100
+ blocked_fallback?: ContextEvaluationResultItem[];
101
+ ranking?: ContextEvaluationResultRanking;
102
+ [key: string]: unknown;
103
+ }
104
+ /** Structural next result consumed by the evaluation runner. */
105
+ export interface ContextEvaluationNextResult {
106
+ ready?: ContextEvaluationResultItem[];
107
+ ranking?: ContextEvaluationResultRanking;
108
+ [key: string]: unknown;
109
+ }
110
+ /** Read-only SDK surface required by the context evaluation runner. */
111
+ export interface ContextEvaluationReader {
112
+ context(options?: ContextEvaluationReadOptions): Promise<ContextEvaluationContextResult>;
113
+ next(options?: ContextEvaluationReadOptions): Promise<ContextEvaluationNextResult>;
114
+ }
115
+ /** One graded context or next scenario evaluated against a real SDK reader. */
116
+ export interface ContextEvaluationScenario {
117
+ id: string;
118
+ surface: ContextRelevanceSurface;
119
+ options?: ContextEvaluationReadOptions;
120
+ judgments: Record<string, number>;
121
+ required_ids?: string[];
122
+ continuity_ids?: string[];
123
+ token_budget: number;
124
+ rationale: string;
125
+ }
126
+ /** Per-item signal attribution retained by a context evaluation report. */
127
+ export interface ContextEvaluationAttribution {
128
+ id: string;
129
+ contributions: ContextRelevanceContributions;
130
+ }
131
+ /** Result of executing and grading one context evaluation scenario. */
132
+ export interface ContextEvaluationScenarioReport {
133
+ id: string;
134
+ surface: ContextRelevanceSurface;
135
+ rationale: string;
136
+ ranked_ids: string[];
137
+ actual_tokens: number;
138
+ metrics: ContextRankingEvaluation;
139
+ attribution: ContextEvaluationAttribution[];
140
+ }
141
+ /** Minimum acceptable aggregate metrics for a context evaluation corpus. */
142
+ export interface ContextEvaluationThresholds {
143
+ ndcg: number;
144
+ reciprocal_rank: number;
145
+ required_recall: number;
146
+ continuity_coverage: number;
147
+ token_budget_adherence: number;
148
+ }
149
+ /** Canonical aggregate metrics required by every context evaluation corpus. */
150
+ export declare const CONTEXT_EVALUATION_METRIC_NAMES: readonly ["ndcg", "reciprocal_rank", "required_recall", "continuity_coverage", "token_budget_adherence"];
151
+ /** Aggregate context evaluation report suitable for a CI quality gate. */
152
+ export interface ContextEvaluationCorpusReport {
153
+ scenario_count: number;
154
+ aggregate: ContextEvaluationThresholds;
155
+ scenarios: ContextEvaluationScenarioReport[];
156
+ passed: boolean;
157
+ failures: string[];
158
+ }
159
+ /** Evaluate one ranked context packet against graded human judgments. */
160
+ export declare function evaluateContextRanking(input: ContextRankingEvaluationInput): ContextRankingEvaluation;
161
+ /** Execute one graded scenario through public SDK context/next read primitives. */
162
+ export declare function runContextEvaluationScenario(scenario: ContextEvaluationScenario, reader: ContextEvaluationReader): Promise<ContextEvaluationScenarioReport>;
163
+ /** Aggregate scenario reports and evaluate every metric against explicit thresholds. */
164
+ export declare function summarizeContextEvaluationReports(reports: readonly ContextEvaluationScenarioReport[], thresholds: ContextEvaluationThresholds): ContextEvaluationCorpusReport;
165
+ /** Execute a same-workspace scenario corpus through public SDK read primitives. */
166
+ export declare function runContextEvaluationCorpus(scenarios: readonly ContextEvaluationScenario[], reader: ContextEvaluationReader, thresholds: ContextEvaluationThresholds): Promise<ContextEvaluationCorpusReport>;
@@ -0,0 +1,299 @@
1
+ /**
2
+ * @module sdk/context-relevance
3
+ *
4
+ * Public, deterministic context-ranking and evaluation primitives. The scorer
5
+ * accepts already-derived signals so package authors can reuse the same model
6
+ * with core, extension, or project-specific feature stores.
7
+ */
8
+
9
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0ede5e2d-3e25-5e4a-8cc5-574ae470c796")}catch(e){}}();
10
+ import { runActiveServiceOverride } from "../core/extensions/index.js";
11
+ /** Canonical signal keys understood by the built-in relevance model. */
12
+ export const CONTEXT_RELEVANCE_SIGNAL_NAMES = [
13
+ "structural",
14
+ "recency",
15
+ "activity_density",
16
+ "graph_proximity",
17
+ "claim_focus",
18
+ "priority_pressure",
19
+ "risk_pressure",
20
+ "deadline_pressure",
21
+ "knowledge_density",
22
+ "author_affinity",
23
+ "semantic_similarity",
24
+ ];
25
+ /** Governed extension service used to replace or wrap context ranking. */
26
+ export const CONTEXT_RELEVANCE_SERVICE = "context_relevance";
27
+ const DEFAULT_CONTEXT_RELEVANCE_WEIGHTS = {
28
+ structural: 0.4,
29
+ recency: 0.35,
30
+ activity_density: 0.25,
31
+ graph_proximity: 0.15,
32
+ claim_focus: 0.6,
33
+ priority_pressure: 0.35,
34
+ risk_pressure: 0.2,
35
+ deadline_pressure: 0.45,
36
+ knowledge_density: 0.25,
37
+ author_affinity: 0.2,
38
+ semantic_similarity: 0.5,
39
+ };
40
+ const JSON_TOKEN_ENCODER = new TextEncoder();
41
+ function assertCandidates(candidates) {
42
+ const ids = new Set();
43
+ for (const candidate of candidates) {
44
+ if (typeof candidate.id !== "string" || candidate.id.trim().length === 0 || ids.has(candidate.id)) {
45
+ throw new TypeError("Context relevance candidates require unique non-empty ids");
46
+ }
47
+ ids.add(candidate.id);
48
+ for (const [signal, value] of Object.entries(candidate.signals ?? {})) {
49
+ if (signal === "structural" || !CONTEXT_RELEVANCE_SIGNAL_NAMES.includes(signal)) {
50
+ throw new TypeError(`Unknown context relevance signal: ${signal}`);
51
+ }
52
+ if (value === undefined)
53
+ continue;
54
+ if (!Number.isFinite(value) || value < 0 || value > 1) {
55
+ throw new TypeError(`Context relevance signal ${signal} must be a finite number from 0 to 1`);
56
+ }
57
+ }
58
+ }
59
+ }
60
+ function resolveWeights(overrides) {
61
+ const weights = { ...DEFAULT_CONTEXT_RELEVANCE_WEIGHTS };
62
+ for (const [signal, weight] of Object.entries(overrides ?? {})) {
63
+ if (weight !== undefined && CONTEXT_RELEVANCE_SIGNAL_NAMES.includes(signal)) {
64
+ weights[signal] = weight;
65
+ }
66
+ }
67
+ for (const [signal, weight] of Object.entries(weights)) {
68
+ if (!Number.isFinite(weight) || weight < 0) {
69
+ throw new TypeError(`Context relevance weight ${signal} must be a finite non-negative number`);
70
+ }
71
+ }
72
+ return weights;
73
+ }
74
+ /**
75
+ * Score candidates with pm's deterministic weighted model. Candidate order is
76
+ * the structural baseline and remains unchanged when no advanced signals exist.
77
+ */
78
+ export function defaultScoreContextCandidates(candidates, options = {}) {
79
+ assertCandidates(candidates);
80
+ const weights = resolveWeights(options.weights);
81
+ const denominator = Math.max(candidates.length - 1, 1);
82
+ const available = new Set(["structural"]);
83
+ for (const candidate of candidates) {
84
+ for (const [signal, value] of Object.entries(candidate.signals ?? {})) {
85
+ if (value !== undefined)
86
+ available.add(signal);
87
+ }
88
+ }
89
+ const availableSignals = CONTEXT_RELEVANCE_SIGNAL_NAMES.filter((signal) => available.has(signal));
90
+ const scored = candidates.map((candidate, index) => {
91
+ const signalValues = {
92
+ structural: candidates.length === 1 ? 1 : 1 - index / denominator,
93
+ ...candidate.signals,
94
+ };
95
+ const contributions = {};
96
+ let weightedScore = 0;
97
+ let totalWeight = 0;
98
+ for (const signal of availableSignals) {
99
+ const value = signalValues[signal];
100
+ if (value === undefined)
101
+ continue;
102
+ const contribution = value * weights[signal];
103
+ contributions[signal] = contribution;
104
+ weightedScore += contribution;
105
+ totalWeight += weights[signal];
106
+ }
107
+ return {
108
+ ...candidate,
109
+ baseline_rank: index + 1,
110
+ rank: 0,
111
+ score: totalWeight === 0 ? 0 : weightedScore / totalWeight,
112
+ contributions,
113
+ };
114
+ });
115
+ scored.sort((left, right) => right.score - left.score || left.baseline_rank - right.baseline_rank);
116
+ scored.forEach((entry, index) => {
117
+ entry.rank = index + 1;
118
+ });
119
+ return { model: "default-weighted-v1", available_signals: availableSignals, ranked: scored };
120
+ }
121
+ /** Score candidates with the default model or a validated replacement/wrapper. */
122
+ export async function scoreContextCandidates(candidates, options = {}) {
123
+ const defaultReport = defaultScoreContextCandidates(candidates, options);
124
+ if (!options.scorer)
125
+ return defaultReport;
126
+ const customScores = await options.scorer({ candidates, default_report: defaultReport });
127
+ const scoreById = new Map();
128
+ for (const entry of customScores) {
129
+ if (scoreById.has(entry.id) || !Number.isFinite(entry.score)) {
130
+ throw new TypeError("Context relevance scorer must return one finite score for every candidate");
131
+ }
132
+ scoreById.set(entry.id, entry.score);
133
+ }
134
+ if (scoreById.size !== candidates.length || candidates.some((candidate) => !scoreById.has(candidate.id))) {
135
+ throw new TypeError("Context relevance scorer must return one finite score for every candidate");
136
+ }
137
+ const ranked = defaultReport.ranked.map((entry) => {
138
+ const score = scoreById.get(entry.id);
139
+ return { ...entry, score, contributions: { custom: score } };
140
+ });
141
+ ranked.sort((left, right) => right.score - left.score || left.baseline_rank - right.baseline_rank);
142
+ ranked.forEach((entry, index) => {
143
+ entry.rank = index + 1;
144
+ });
145
+ return { model: "custom", available_signals: defaultReport.available_signals, ranked };
146
+ }
147
+ /**
148
+ * Score command candidates through the public default model and then the active
149
+ * governed `context_relevance` service override, when one is registered.
150
+ */
151
+ export async function scoreContextCandidatesWithActiveExtensions(surface, candidates, options = {}) {
152
+ const defaultReport = defaultScoreContextCandidates(candidates, options);
153
+ const override = await runActiveServiceOverride(CONTEXT_RELEVANCE_SERVICE, {
154
+ surface,
155
+ candidates,
156
+ default_report: defaultReport,
157
+ });
158
+ if (!override.handled) {
159
+ return override.warnings.length > 0 ? { ...defaultReport, warnings: override.warnings } : defaultReport;
160
+ }
161
+ if (!Array.isArray(override.result) ||
162
+ !override.result.every((entry) => typeof entry === "object" &&
163
+ entry !== null &&
164
+ typeof entry.id === "string" &&
165
+ typeof entry.score === "number" &&
166
+ Number.isFinite(entry.score))) {
167
+ return { ...defaultReport, warnings: [...override.warnings, "extension_context_relevance_invalid_result"] };
168
+ }
169
+ try {
170
+ const report = await scoreContextCandidates(candidates, {
171
+ ...options,
172
+ scorer: () => override.result,
173
+ });
174
+ return override.warnings.length > 0 ? { ...report, warnings: override.warnings } : report;
175
+ }
176
+ catch {
177
+ return { ...defaultReport, warnings: [...override.warnings, "extension_context_relevance_invalid_result"] };
178
+ }
179
+ }
180
+ /** Canonical aggregate metrics required by every context evaluation corpus. */
181
+ export const CONTEXT_EVALUATION_METRIC_NAMES = [
182
+ "ndcg",
183
+ "reciprocal_rank",
184
+ "required_recall",
185
+ "continuity_coverage",
186
+ "token_budget_adherence",
187
+ ];
188
+ function ratioOfPresent(expected, actual) {
189
+ if (expected.length === 0)
190
+ return 1;
191
+ return expected.filter((id) => actual.has(id)).length / expected.length;
192
+ }
193
+ /** Evaluate one ranked context packet against graded human judgments. */
194
+ export function evaluateContextRanking(input) {
195
+ if (!Number.isFinite(input.actual_tokens) || input.actual_tokens < 0 || !Number.isFinite(input.token_budget) || input.token_budget <= 0) {
196
+ throw new TypeError("Context ranking token counts require actual_tokens >= 0 and token_budget > 0");
197
+ }
198
+ const judgments = input.judgments ?? {};
199
+ const gains = input.ranked_ids.map((id) => Math.max(0, judgments[id] ?? 0));
200
+ const idealGains = Object.values(judgments).map((grade) => Math.max(0, grade)).sort((left, right) => right - left).slice(0, gains.length || 1);
201
+ const discountedGain = (values) => values.reduce((total, grade, index) => total + (2 ** grade - 1) / Math.log2(index + 2), 0);
202
+ const ideal = discountedGain(idealGains);
203
+ const firstRelevant = gains.findIndex((grade) => grade > 0);
204
+ const actualIds = new Set(input.ranked_ids);
205
+ const withinBudget = input.actual_tokens <= input.token_budget;
206
+ return {
207
+ ndcg: ideal === 0 ? 1 : discountedGain(gains) / ideal,
208
+ reciprocal_rank: firstRelevant < 0 ? 0 : 1 / (firstRelevant + 1),
209
+ required_recall: ratioOfPresent(input.required_ids ?? [], actualIds),
210
+ continuity_coverage: ratioOfPresent(input.continuity_ids ?? [], actualIds),
211
+ token_budget_adherence: withinBudget ? 1 : input.token_budget / input.actual_tokens,
212
+ within_token_budget: withinBudget,
213
+ };
214
+ }
215
+ function estimateJsonTokens(value) {
216
+ return Math.ceil(JSON_TOKEN_ENCODER.encode(JSON.stringify(value)).byteLength / 4);
217
+ }
218
+ function roundEvaluationMetric(value) {
219
+ return Math.round(value * 10_000) / 10_000;
220
+ }
221
+ function rankingPayloadForScenario(result, surface) {
222
+ const rankedIds = surface === "context"
223
+ ? [
224
+ ...(result.high_level ?? []),
225
+ ...(result.low_level ?? []),
226
+ ...(result.blocked_fallback ?? []),
227
+ ]
228
+ .map((item) => item.id)
229
+ : (result.ready ?? []).map((item) => item.id);
230
+ const servedIds = new Set(rankedIds);
231
+ const attribution = (result.ranking?.items ?? [])
232
+ .filter((item) => servedIds.has(item.id))
233
+ .map((item) => ({ id: item.id, contributions: item.contributions }));
234
+ return { rankedIds, attribution };
235
+ }
236
+ /** Execute one graded scenario through public SDK context/next read primitives. */
237
+ export async function runContextEvaluationScenario(scenario, reader) {
238
+ if (scenario.id.trim().length === 0 || scenario.rationale.trim().length === 0) {
239
+ throw new TypeError("Context evaluation scenarios require non-empty id and rationale values");
240
+ }
241
+ const result = scenario.surface === "context"
242
+ ? await reader.context({ ...scenario.options, explainRanking: true })
243
+ : await reader.next({ ...scenario.options, explainRanking: true });
244
+ const { rankedIds, attribution } = rankingPayloadForScenario(result, scenario.surface);
245
+ const packet = { ...result, ranking: undefined };
246
+ const actualTokens = estimateJsonTokens(packet);
247
+ return {
248
+ id: scenario.id,
249
+ surface: scenario.surface,
250
+ rationale: scenario.rationale,
251
+ ranked_ids: rankedIds,
252
+ actual_tokens: actualTokens,
253
+ metrics: evaluateContextRanking({
254
+ ranked_ids: rankedIds,
255
+ judgments: scenario.judgments,
256
+ required_ids: scenario.required_ids,
257
+ continuity_ids: scenario.continuity_ids,
258
+ actual_tokens: actualTokens,
259
+ token_budget: scenario.token_budget,
260
+ }),
261
+ attribution,
262
+ };
263
+ }
264
+ /** Aggregate scenario reports and evaluate every metric against explicit thresholds. */
265
+ export function summarizeContextEvaluationReports(reports, thresholds) {
266
+ if (reports.length === 0) {
267
+ throw new TypeError("Context evaluation requires at least one scenario report");
268
+ }
269
+ const metrics = CONTEXT_EVALUATION_METRIC_NAMES;
270
+ for (const metric of metrics) {
271
+ if (!Number.isFinite(thresholds[metric])) {
272
+ throw new TypeError(`Context evaluation threshold ${metric} must be a finite number`);
273
+ }
274
+ }
275
+ const aggregate = Object.fromEntries(metrics.map((metric) => [
276
+ metric,
277
+ roundEvaluationMetric(reports.reduce((total, report) => total + report.metrics[metric], 0) / reports.length),
278
+ ]));
279
+ const failures = metrics
280
+ .filter((metric) => aggregate[metric] < thresholds[metric])
281
+ .map((metric) => `${metric}:${aggregate[metric]}<${thresholds[metric]}`);
282
+ return {
283
+ scenario_count: reports.length,
284
+ aggregate,
285
+ scenarios: [...reports],
286
+ passed: failures.length === 0,
287
+ failures,
288
+ };
289
+ }
290
+ /** Execute a same-workspace scenario corpus through public SDK read primitives. */
291
+ export async function runContextEvaluationCorpus(scenarios, reader, thresholds) {
292
+ const reports = [];
293
+ for (const scenario of scenarios) {
294
+ reports.push(await runContextEvaluationScenario(scenario, reader));
295
+ }
296
+ return summarizeContextEvaluationReports(reports, thresholds);
297
+ }
298
+ //# sourceMappingURL=context-relevance.js.map
299
+ //# debugId=0ede5e2d-3e25-5e4a-8cc5-574ae470c796
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-relevance.js","sources":["sdk/context-relevance.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/context-relevance\n *\n * Public, deterministic context-ranking and evaluation primitives. The scorer\n * accepts already-derived signals so package authors can reuse the same model\n * with core, extension, or project-specific feature stores.\n */\nimport { runActiveServiceOverride } from \"../core/extensions/index.js\";\n\n/** Canonical signal keys understood by the built-in relevance model. */\nexport const CONTEXT_RELEVANCE_SIGNAL_NAMES = [\n \"structural\",\n \"recency\",\n \"activity_density\",\n \"graph_proximity\",\n \"claim_focus\",\n \"priority_pressure\",\n \"risk_pressure\",\n \"deadline_pressure\",\n \"knowledge_density\",\n \"author_affinity\",\n \"semantic_similarity\",\n] as const;\n\n/** A normalized signal consumed by the built-in context relevance scorer. */\nexport type ContextRelevanceSignalName = (typeof CONTEXT_RELEVANCE_SIGNAL_NAMES)[number];\n\n/** Normalized candidate features; omitted signals are excluded from weighting. */\nexport type ContextRelevanceSignals = Partial<Record<Exclude<ContextRelevanceSignalName, \"structural\">, number>>;\n\n/** A project-management object and its derived relevance signals. */\nexport interface ContextRelevanceCandidate<TItem> {\n id: string;\n item: TItem;\n signals?: ContextRelevanceSignals;\n}\n\n/** Per-signal weighted contributions used to explain a ranked result. */\nexport type ContextRelevanceContributions = Record<string, number>;\n\n/** One ranked candidate with deterministic score and explanation metadata. */\nexport interface RankedContextCandidate<TItem> extends ContextRelevanceCandidate<TItem> {\n baseline_rank: number;\n rank: number;\n score: number;\n contributions: ContextRelevanceContributions;\n}\n\n/** Complete output from a context relevance scorer. */\nexport interface ContextRelevanceReport<TItem> {\n model: string;\n available_signals: ContextRelevanceSignalName[];\n ranked: RankedContextCandidate<TItem>[];\n warnings?: string[];\n}\n\n/** Minimal custom score returned by a replacement or wrapper scorer. */\nexport interface ContextRelevanceCustomScore {\n id: string;\n score: number;\n}\n\n/** Input provided to a custom scorer, including the deterministic default. */\nexport interface ContextRelevanceScorerInput<TItem> {\n candidates: readonly ContextRelevanceCandidate<TItem>[];\n default_report: ContextRelevanceReport<TItem>;\n}\n\n/** Replaceable package/extension scorer contract. */\nexport type ContextRelevanceScorer<TItem> = (\n input: ContextRelevanceScorerInput<TItem>,\n) => readonly ContextRelevanceCustomScore[] | Promise<readonly ContextRelevanceCustomScore[]>;\n\n/** Options for the built-in or replaceable context relevance scorer. */\nexport interface ScoreContextCandidatesOptions<TItem> {\n weights?: Partial<Record<ContextRelevanceSignalName, number>>;\n scorer?: ContextRelevanceScorer<TItem>;\n}\n\n/** Governed extension service used to replace or wrap context ranking. */\nexport const CONTEXT_RELEVANCE_SERVICE = \"context_relevance\" as const;\n\n/** Command surface requesting an active extension relevance override. */\nexport type ContextRelevanceSurface = \"context\" | \"next\";\n\nconst DEFAULT_CONTEXT_RELEVANCE_WEIGHTS: Record<ContextRelevanceSignalName, number> = {\n structural: 0.4,\n recency: 0.35,\n activity_density: 0.25,\n graph_proximity: 0.15,\n claim_focus: 0.6,\n priority_pressure: 0.35,\n risk_pressure: 0.2,\n deadline_pressure: 0.45,\n knowledge_density: 0.25,\n author_affinity: 0.2,\n semantic_similarity: 0.5,\n};\nconst JSON_TOKEN_ENCODER = new TextEncoder();\n\nfunction assertCandidates<TItem>(candidates: readonly ContextRelevanceCandidate<TItem>[]): void {\n const ids = new Set<string>();\n for (const candidate of candidates) {\n if (typeof candidate.id !== \"string\" || candidate.id.trim().length === 0 || ids.has(candidate.id)) {\n throw new TypeError(\"Context relevance candidates require unique non-empty ids\");\n }\n ids.add(candidate.id);\n for (const [signal, value] of Object.entries(candidate.signals ?? {})) {\n if (signal === \"structural\" || !CONTEXT_RELEVANCE_SIGNAL_NAMES.includes(signal as ContextRelevanceSignalName)) {\n throw new TypeError(`Unknown context relevance signal: ${signal}`);\n }\n if (value === undefined) continue;\n if (!Number.isFinite(value) || value < 0 || value > 1) {\n throw new TypeError(`Context relevance signal ${signal} must be a finite number from 0 to 1`);\n }\n }\n }\n}\n\nfunction resolveWeights(\n overrides: Partial<Record<ContextRelevanceSignalName, number>> | undefined,\n): Record<ContextRelevanceSignalName, number> {\n const weights = { ...DEFAULT_CONTEXT_RELEVANCE_WEIGHTS };\n for (const [signal, weight] of Object.entries(overrides ?? {})) {\n if (weight !== undefined && CONTEXT_RELEVANCE_SIGNAL_NAMES.includes(signal as ContextRelevanceSignalName)) {\n weights[signal as ContextRelevanceSignalName] = weight;\n }\n }\n for (const [signal, weight] of Object.entries(weights)) {\n if (!Number.isFinite(weight) || weight < 0) {\n throw new TypeError(`Context relevance weight ${signal} must be a finite non-negative number`);\n }\n }\n return weights;\n}\n\n/**\n * Score candidates with pm's deterministic weighted model. Candidate order is\n * the structural baseline and remains unchanged when no advanced signals exist.\n */\nexport function defaultScoreContextCandidates<TItem>(\n candidates: readonly ContextRelevanceCandidate<TItem>[],\n options: Pick<ScoreContextCandidatesOptions<TItem>, \"weights\"> = {},\n): ContextRelevanceReport<TItem> {\n assertCandidates(candidates);\n const weights = resolveWeights(options.weights);\n const denominator = Math.max(candidates.length - 1, 1);\n const available = new Set<ContextRelevanceSignalName>([\"structural\"]);\n for (const candidate of candidates) {\n for (const [signal, value] of Object.entries(candidate.signals ?? {})) {\n if (value !== undefined) available.add(signal as ContextRelevanceSignalName);\n }\n }\n const availableSignals = CONTEXT_RELEVANCE_SIGNAL_NAMES.filter((signal) => available.has(signal));\n const scored = candidates.map((candidate, index): RankedContextCandidate<TItem> => {\n const signalValues: Partial<Record<ContextRelevanceSignalName, number>> = {\n structural: candidates.length === 1 ? 1 : 1 - index / denominator,\n ...candidate.signals,\n };\n const contributions: ContextRelevanceContributions = {};\n let weightedScore = 0;\n let totalWeight = 0;\n for (const signal of availableSignals) {\n const value = signalValues[signal];\n if (value === undefined) continue;\n const contribution = value * weights[signal];\n contributions[signal] = contribution;\n weightedScore += contribution;\n totalWeight += weights[signal];\n }\n return {\n ...candidate,\n baseline_rank: index + 1,\n rank: 0,\n score: totalWeight === 0 ? 0 : weightedScore / totalWeight,\n contributions,\n };\n });\n scored.sort((left, right) => right.score - left.score || left.baseline_rank - right.baseline_rank);\n scored.forEach((entry, index) => {\n entry.rank = index + 1;\n });\n return { model: \"default-weighted-v1\", available_signals: availableSignals, ranked: scored };\n}\n\n/** Score candidates with the default model or a validated replacement/wrapper. */\nexport async function scoreContextCandidates<TItem>(\n candidates: readonly ContextRelevanceCandidate<TItem>[],\n options: ScoreContextCandidatesOptions<TItem> = {},\n): Promise<ContextRelevanceReport<TItem>> {\n const defaultReport = defaultScoreContextCandidates(candidates, options);\n if (!options.scorer) return defaultReport;\n const customScores = await options.scorer({ candidates, default_report: defaultReport });\n const scoreById = new Map<string, number>();\n for (const entry of customScores) {\n if (scoreById.has(entry.id) || !Number.isFinite(entry.score)) {\n throw new TypeError(\"Context relevance scorer must return one finite score for every candidate\");\n }\n scoreById.set(entry.id, entry.score);\n }\n if (scoreById.size !== candidates.length || candidates.some((candidate) => !scoreById.has(candidate.id))) {\n throw new TypeError(\"Context relevance scorer must return one finite score for every candidate\");\n }\n const ranked = defaultReport.ranked.map((entry) => {\n const score = scoreById.get(entry.id) as number;\n return { ...entry, score, contributions: { custom: score } };\n });\n ranked.sort((left, right) => right.score - left.score || left.baseline_rank - right.baseline_rank);\n ranked.forEach((entry, index) => {\n entry.rank = index + 1;\n });\n return { model: \"custom\", available_signals: defaultReport.available_signals, ranked };\n}\n\n/**\n * Score command candidates through the public default model and then the active\n * governed `context_relevance` service override, when one is registered.\n */\nexport async function scoreContextCandidatesWithActiveExtensions<TItem>(\n surface: ContextRelevanceSurface,\n candidates: readonly ContextRelevanceCandidate<TItem>[],\n options: Pick<ScoreContextCandidatesOptions<TItem>, \"weights\"> = {},\n): Promise<ContextRelevanceReport<TItem>> {\n const defaultReport = defaultScoreContextCandidates(candidates, options);\n const override = await runActiveServiceOverride(CONTEXT_RELEVANCE_SERVICE, {\n surface,\n candidates,\n default_report: defaultReport,\n });\n if (!override.handled) {\n return override.warnings.length > 0 ? { ...defaultReport, warnings: override.warnings } : defaultReport;\n }\n if (\n !Array.isArray(override.result) ||\n !override.result.every(\n (entry) =>\n typeof entry === \"object\" &&\n entry !== null &&\n typeof (entry as { id?: unknown }).id === \"string\" &&\n typeof (entry as { score?: unknown }).score === \"number\" &&\n Number.isFinite((entry as { score: number }).score),\n )\n ) {\n return { ...defaultReport, warnings: [...override.warnings, \"extension_context_relevance_invalid_result\"] };\n }\n try {\n const report = await scoreContextCandidates(candidates, {\n ...options,\n scorer: () => override.result as ContextRelevanceCustomScore[],\n });\n return override.warnings.length > 0 ? { ...report, warnings: override.warnings } : report;\n } catch {\n return { ...defaultReport, warnings: [...override.warnings, \"extension_context_relevance_invalid_result\"] };\n }\n}\n\n/** Input for rank-aware context/next quality evaluation. */\nexport interface ContextRankingEvaluationInput {\n ranked_ids: string[];\n judgments: Record<string, number>;\n required_ids?: string[];\n continuity_ids?: string[];\n actual_tokens: number;\n token_budget: number;\n}\n\n/** Rank-quality, continuity, recall, and token-budget metrics for one scenario. */\nexport interface ContextRankingEvaluation {\n ndcg: number;\n reciprocal_rank: number;\n required_recall: number;\n continuity_coverage: number;\n token_budget_adherence: number;\n within_token_budget: boolean;\n}\n\n/** Flexible read options accepted by context evaluation scenarios. */\nexport interface ContextEvaluationReadOptions {\n explainRanking?: boolean;\n [key: string]: unknown;\n}\n\n/** Minimal item identity consumed by the context evaluation runner. */\nexport interface ContextEvaluationResultItem {\n id: string;\n}\n\n/** Optional scorer attribution returned by an evaluated read primitive. */\nexport interface ContextEvaluationResultRanking {\n items?: Array<{ id: string; contributions: ContextRelevanceContributions }>;\n}\n\n/** Structural context result consumed by the evaluation runner. */\nexport interface ContextEvaluationContextResult {\n high_level?: ContextEvaluationResultItem[];\n low_level?: ContextEvaluationResultItem[];\n blocked_fallback?: ContextEvaluationResultItem[];\n ranking?: ContextEvaluationResultRanking;\n [key: string]: unknown;\n}\n\n/** Structural next result consumed by the evaluation runner. */\nexport interface ContextEvaluationNextResult {\n ready?: ContextEvaluationResultItem[];\n ranking?: ContextEvaluationResultRanking;\n [key: string]: unknown;\n}\n\n/** Read-only SDK surface required by the context evaluation runner. */\nexport interface ContextEvaluationReader {\n context(options?: ContextEvaluationReadOptions): Promise<ContextEvaluationContextResult>;\n next(options?: ContextEvaluationReadOptions): Promise<ContextEvaluationNextResult>;\n}\n\n/** One graded context or next scenario evaluated against a real SDK reader. */\nexport interface ContextEvaluationScenario {\n id: string;\n surface: ContextRelevanceSurface;\n options?: ContextEvaluationReadOptions;\n judgments: Record<string, number>;\n required_ids?: string[];\n continuity_ids?: string[];\n token_budget: number;\n rationale: string;\n}\n\n/** Per-item signal attribution retained by a context evaluation report. */\nexport interface ContextEvaluationAttribution {\n id: string;\n contributions: ContextRelevanceContributions;\n}\n\n/** Result of executing and grading one context evaluation scenario. */\nexport interface ContextEvaluationScenarioReport {\n id: string;\n surface: ContextRelevanceSurface;\n rationale: string;\n ranked_ids: string[];\n actual_tokens: number;\n metrics: ContextRankingEvaluation;\n attribution: ContextEvaluationAttribution[];\n}\n\n/** Minimum acceptable aggregate metrics for a context evaluation corpus. */\nexport interface ContextEvaluationThresholds {\n ndcg: number;\n reciprocal_rank: number;\n required_recall: number;\n continuity_coverage: number;\n token_budget_adherence: number;\n}\n\n/** Canonical aggregate metrics required by every context evaluation corpus. */\nexport const CONTEXT_EVALUATION_METRIC_NAMES = [\n \"ndcg\",\n \"reciprocal_rank\",\n \"required_recall\",\n \"continuity_coverage\",\n \"token_budget_adherence\",\n] as const satisfies readonly (keyof ContextEvaluationThresholds)[];\n\n/** Aggregate context evaluation report suitable for a CI quality gate. */\nexport interface ContextEvaluationCorpusReport {\n scenario_count: number;\n aggregate: ContextEvaluationThresholds;\n scenarios: ContextEvaluationScenarioReport[];\n passed: boolean;\n failures: string[];\n}\n\nfunction ratioOfPresent(expected: readonly string[], actual: ReadonlySet<string>): number {\n if (expected.length === 0) return 1;\n return expected.filter((id) => actual.has(id)).length / expected.length;\n}\n\n/** Evaluate one ranked context packet against graded human judgments. */\nexport function evaluateContextRanking(input: ContextRankingEvaluationInput): ContextRankingEvaluation {\n if (!Number.isFinite(input.actual_tokens) || input.actual_tokens < 0 || !Number.isFinite(input.token_budget) || input.token_budget <= 0) {\n throw new TypeError(\"Context ranking token counts require actual_tokens >= 0 and token_budget > 0\");\n }\n const judgments = input.judgments ?? {};\n const gains = input.ranked_ids.map((id) => Math.max(0, judgments[id] ?? 0));\n const idealGains = Object.values(judgments).map((grade) => Math.max(0, grade)).sort((left, right) => right - left).slice(0, gains.length || 1);\n const discountedGain = (values: readonly number[]) => values.reduce(\n (total, grade, index) => total + (2 ** grade - 1) / Math.log2(index + 2),\n 0,\n );\n const ideal = discountedGain(idealGains);\n const firstRelevant = gains.findIndex((grade) => grade > 0);\n const actualIds = new Set(input.ranked_ids);\n const withinBudget = input.actual_tokens <= input.token_budget;\n return {\n ndcg: ideal === 0 ? 1 : discountedGain(gains) / ideal,\n reciprocal_rank: firstRelevant < 0 ? 0 : 1 / (firstRelevant + 1),\n required_recall: ratioOfPresent(input.required_ids ?? [], actualIds),\n continuity_coverage: ratioOfPresent(input.continuity_ids ?? [], actualIds),\n token_budget_adherence: withinBudget ? 1 : input.token_budget / input.actual_tokens,\n within_token_budget: withinBudget,\n };\n}\n\nfunction estimateJsonTokens(value: unknown): number {\n return Math.ceil(JSON_TOKEN_ENCODER.encode(JSON.stringify(value)).byteLength / 4);\n}\n\nfunction roundEvaluationMetric(value: number): number {\n return Math.round(value * 10_000) / 10_000;\n}\n\nfunction rankingPayloadForScenario(\n result: ContextEvaluationContextResult | ContextEvaluationNextResult,\n surface: ContextRelevanceSurface,\n): { rankedIds: string[]; attribution: ContextEvaluationAttribution[] } {\n const rankedIds = surface === \"context\"\n ? [\n ...((result as ContextEvaluationContextResult).high_level ?? []),\n ...((result as ContextEvaluationContextResult).low_level ?? []),\n ...((result as ContextEvaluationContextResult).blocked_fallback ?? []),\n ]\n .map((item) => item.id)\n : ((result as ContextEvaluationNextResult).ready ?? []).map((item) => item.id);\n const servedIds = new Set(rankedIds);\n const attribution = (result.ranking?.items ?? [])\n .filter((item) => servedIds.has(item.id))\n .map((item) => ({ id: item.id, contributions: item.contributions }));\n return { rankedIds, attribution };\n}\n\n/** Execute one graded scenario through public SDK context/next read primitives. */\nexport async function runContextEvaluationScenario(\n scenario: ContextEvaluationScenario,\n reader: ContextEvaluationReader,\n): Promise<ContextEvaluationScenarioReport> {\n if (scenario.id.trim().length === 0 || scenario.rationale.trim().length === 0) {\n throw new TypeError(\"Context evaluation scenarios require non-empty id and rationale values\");\n }\n const result = scenario.surface === \"context\"\n ? await reader.context({ ...scenario.options, explainRanking: true })\n : await reader.next({ ...scenario.options, explainRanking: true });\n const { rankedIds, attribution } = rankingPayloadForScenario(result, scenario.surface);\n const packet = { ...result, ranking: undefined };\n const actualTokens = estimateJsonTokens(packet);\n return {\n id: scenario.id,\n surface: scenario.surface,\n rationale: scenario.rationale,\n ranked_ids: rankedIds,\n actual_tokens: actualTokens,\n metrics: evaluateContextRanking({\n ranked_ids: rankedIds,\n judgments: scenario.judgments,\n required_ids: scenario.required_ids,\n continuity_ids: scenario.continuity_ids,\n actual_tokens: actualTokens,\n token_budget: scenario.token_budget,\n }),\n attribution,\n };\n}\n\n/** Aggregate scenario reports and evaluate every metric against explicit thresholds. */\nexport function summarizeContextEvaluationReports(\n reports: readonly ContextEvaluationScenarioReport[],\n thresholds: ContextEvaluationThresholds,\n): ContextEvaluationCorpusReport {\n if (reports.length === 0) {\n throw new TypeError(\"Context evaluation requires at least one scenario report\");\n }\n const metrics = CONTEXT_EVALUATION_METRIC_NAMES;\n for (const metric of metrics) {\n if (!Number.isFinite(thresholds[metric])) {\n throw new TypeError(`Context evaluation threshold ${metric} must be a finite number`);\n }\n }\n const aggregate = Object.fromEntries(\n metrics.map((metric) => [\n metric,\n roundEvaluationMetric(reports.reduce((total, report) => total + report.metrics[metric], 0) / reports.length),\n ]),\n ) as unknown as ContextEvaluationThresholds;\n const failures = metrics\n .filter((metric) => aggregate[metric] < thresholds[metric])\n .map((metric) => `${metric}:${aggregate[metric]}<${thresholds[metric]}`);\n return {\n scenario_count: reports.length,\n aggregate,\n scenarios: [...reports],\n passed: failures.length === 0,\n failures,\n };\n}\n\n/** Execute a same-workspace scenario corpus through public SDK read primitives. */\nexport async function runContextEvaluationCorpus(\n scenarios: readonly ContextEvaluationScenario[],\n reader: ContextEvaluationReader,\n thresholds: ContextEvaluationThresholds,\n): Promise<ContextEvaluationCorpusReport> {\n const reports: ContextEvaluationScenarioReport[] = [];\n for (const scenario of scenarios) {\n reports.push(await runContextEvaluationScenario(scenario, reader));\n }\n return summarizeContextEvaluationReports(reports, thresholds);\n}\n"],"names":[],"mappings":"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","debugId":"0ede5e2d-3e25-5e4a-8cc5-574ae470c796"}
@@ -9,6 +9,7 @@ export type { CommanderOptionAliasContract, CommanderOptionRegistrationContract
9
9
  export { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, APPEND_FLAG_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, COMMENTS_AUDIT_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS, CONTEXT_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, CREATE_COMMANDER_STRING_OPTION_CONTRACTS, CREATE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, DEDUPE_AUDIT_FLAG_CONTRACTS, DEDUPE_MERGE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, EVAL_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_SCOPE_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, MEET_FLAG_CONTRACTS, NEXT_COMMANDER_STRING_OPTION_CONTRACTS, NEXT_FLAG_CONTRACTS, NORMALIZE_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, PLAN_FLAG_CONTRACTS, PM_CORE_COMMAND_NAMES, PM_EXTENSION_CAPABILITY_CONTRACTS, PM_EXTENSION_POLICY_MODE_CONTRACTS, PM_EXTENSION_POLICY_SURFACE_CONTRACTS, PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS, PM_EXTENSION_SERVICE_NAME_CONTRACTS, PM_EXTENSION_TRUST_MODE_CONTRACTS, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION, PM_TOOL_ACTIONS, PM_TOOL_ACTION_PARAMETER_CONTRACTS, PM_TOOL_PARAMETERS_SCHEMA, PM_TOOL_PARAMETERS_SCHEMA_MAJOR, PM_TOOL_PARAMETERS_SCHEMA_VERSION, PROFILE_FLAG_CONTRACTS, REINDEX_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, REMIND_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, SEARCH_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, SUBCOMMAND_GLOBAL_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, TOOL_ACTIVITY_OPTION_CONTRACTS, TOOL_AGGREGATE_OPTION_CONTRACTS, TOOL_CALENDAR_OPTION_CONTRACTS, TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS, TOOL_CONTEXT_OPTION_CONTRACTS, TOOL_CREATE_OPTION_CONTRACTS, TOOL_DEDUPE_AUDIT_OPTION_CONTRACTS, TOOL_DEPS_OPTION_CONTRACTS, TOOL_LIST_FILTER_OPTION_CONTRACTS, TOOL_NORMALIZE_FILTER_OPTION_CONTRACTS, TOOL_SEARCH_FILTER_OPTION_CONTRACTS, TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS, TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS, TOOL_UPDATE_OPTION_CONTRACTS, UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, UPDATE_COMMANDER_STRING_OPTION_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, compactFlagAliasContracts, isPmExtensionCapabilityContract, isPmExtensionPolicyModeContract, isPmExtensionPolicySurfaceContract, isPmExtensionServiceNameContract, isPmToolAction, readFirstStringFromCommanderOptions, readFirstValueFromCommanderOptions, readStringArrayFromCommanderOptions, resolveSubcommandFlagContractsForCommand, toCompletionFlagString, withFlagAliasMetadata, } from "./cli-contracts.js";
10
10
  export type { CliFlagContract, PmActionSchemaContract, PmExtensionCapabilityContract, PmExtensionPolicyModeContract, PmExtensionPolicySurfaceContract, PmExtensionSandboxProfileContract, PmExtensionServiceNameContract, PmExtensionTrustModeContract, PmToolAction, ToolOptionFlagContract, } from "./cli-contracts.js";
11
11
  export * from "./compose.js";
12
+ export * from "./context-relevance.js";
12
13
  export * from "./define.js";
13
14
  export { BASELINE_ITEM_FORMAT_VERSION, BUILTIN_ITEM_TYPE_VALUES, CONFIDENCE_TEXT_VALUES, CURRENT_ITEM_FORMAT_VERSION, DEPENDENCY_KIND_VALUES, EXIT_CODE, ISSUE_SEVERITY_VALUES, ITEM_TYPE_VALUES, PM_CLI_EXPECTED_ERROR_NAME, PmCliError, PmClient, RISK_VALUES, STATUS_VALUES, acquireLock, appendHistoryEntry, canonicalDocument, classifyItemFormatVersion, clearWorkspaceContractsCache, commitImportedItem, createHistoryEntry, createPmCliExpectedError, effectiveItemFormatVersion, emptyImportedDocument, ensureTrackerInitialized, generateItemId, getActiveExtensionRegistrations, getContracts, getHistoryPath, getItemPath, getSettingsPath, getWorkspaceContracts, isPmCliExpectedError, isTimestampLiteral, listAllFrontMatter, loadCreateTemplateOptions, locateItem, normalizeFrontMatter, normalizeItemFormatVersion, normalizeItemId, normalizeRawItemId, normalizeStatusInput, nowIso, parseTags, pathExists, readBooleanOption, readCsvListOption, readFileIfExists, readLocatedItem, readRequiredString, readSettings, readStringOption, removeFileIfExists, renderCalendarMarkdown, renderCalendarToon, renderGuideMarkdown, resolveCalendarOutputFormat, resolveGuideOutputFormat, resolveItemTypeRegistry, resolvePmRoot, resolveRuntimeFieldRegistry, resolveRuntimeStatusRegistry, runAction, runActiveOnReadHooks, runActiveOnWriteHooks, runCalendar, runCommentsAudit, runCompletion, runDedupeAudit, runDedupeMerge, runGuide, runNormalize, runReindex, runSearch, runTemplatesList, runTemplatesSave, runTemplatesShow, runTestRunsList, runTestRunsLogs, runTestRunsResume, runTestRunsStatus, runTestRunsStop, scanItemFormatVersions, selectImportAuthor, serializeItemDocument, splitFrontMatter, toEstimatedMinutesValue, toImportBoolean, toImportConfidence, toImportInteger, toImportLinkedDocs, toImportLinkedFiles, toImportLinkedTests, toImportLogEntries, toImportNormalizedEnum, toImportNumberMap, toImportPriority, toImportStatus, toImportStringList, toImportStringMap, toImportTags, toNonEmptyImportString, writeFileAtomic, aggregate, append, claim, close, closeTask, comments, config, context, copy, create, deleteItem, deps, docs, extension, extensionActivate, extensionDeactivate, extensionList, files, filesDiscover, focus, gc, get, health, init, learnings, list, next, notes, packageActivate, packageCatalog, packageDeactivate, packageDescribe, packageDoctor, packageInstall, packageLifecycle, packageList, packageManage, packageReload, packageUninstall, pauseTask, profile, profileApply, profileLint, profileList, profileShow, release, restore, schema, schemaAddField, schemaAddStatus, schemaAddType, schemaApplyPreset, schemaInferTypes, schemaList, schemaListFields, schemaRemoveField, schemaRemoveStatus, schemaRemoveType, schemaShow, schemaShowField, schemaShowStatus, search, startTask, stats, update, upgrade, validate, type AggregateOptions, type AggregateResult, type AggregateRow, type AppendCommandOptions, type AppendResult, type BlockerEntry, type CalendarOptions, type CalendarResult, type ClaimResult, type CloseResult, type CloseTaskResult, type CommentsAuditEntry, type CommentsAuditHistoryRow, type CommentsAuditOptions, type CommentsAuditResult, type CommentsAuditSummary, type CommentsAuditTypeSummary, type CommitImportedItemParams, type CommitImportedItemResult, type CommentsCommandOptions, type CommentsResult, type ConfigCommandOptions, type ConfigResult, type CompletionResult, type CompletionShell, type ContractsCommandOptions, type ContractsResult, type ContextFocusItem, type ContextOptions, type ContextOutputFormat, type ContextResult, type CopyResult, type CreatePmCliExpectedErrorOptions, type CreateResult, type CreateTemplateOptions, type DedupeAuditCandidate, type DedupeAuditCluster, type DedupeAuditOptions, type DedupeAuditResult, type DedupeMergeChildReparent, type DedupeMergeCloseAction, type DedupeMergeDuplicateOutcome, type DedupeMergeOptions, type DedupeMergeResult, type Dependency, type DeleteResult, type DepsCommandOptions, type DepsResult, type DocsCommandOptions, type DocsResult, type ExtensionCommandOptions, type ExtensionCommandResult, type FilesCommandOptions, type FilesDiscoverOptions, type FilesDiscoverResult, type FilesResult, type FocusResult, type GcCommandOptions, type GcResult, type GetContractsOptions, type GetOptions, type GetResult, type GuideDepth, type GuideOptions, type GuideOutputFormat, type GuideResult, type HealthResult, type ImportLinkedScope, type InitCommandOptions, type InitResult, type ItemFormatVersionScanEntry, type ItemFormatVersionScanResult, type ItemFormatVersionStatus, type ItemMetadata, type LearningsCommandOptions, type LearningsResult, type LinkedDoc, type LinkedFile, type LinkedTest, type ListedItem, type ListCompactResult, type ListOptions, type ListResult, type ListSortField, type ListSortOrder, type ListVerboseResult, type LogNote, type NextActionableItem, type NextBlockerRef, type NextOptions, type NextOutputFormat, type NextRecommendation, type NextResult, type NormalizeCommandOptions, type NormalizeResult, type NotesCommandOptions, type NotesResult, type PackageCommandOptions, type PackageCommandResult, type PauseTaskResult, type PmActionInput, type PmActionName, type PmActionOptions, type PmClientFullMutationOptions, type PmClientMutationOptions, type PmClientOptions, type PmClientRunArgs, type PmCliExpectedError, type ProfileApplyCommandOptions, type ProfileApplyResult, type ProfileLintResult, type ProfileListResult, type ProfileResult, type ProfileShowResult, type ProfileSubcommand, type ReindexOptions, type ReindexResult, type ReleaseResult, type RestoreResult, type RunHealthOptions, type SchemaAddFieldCommandOptions, type SchemaAddFieldResult, type SchemaAddStatusCommandOptions, type SchemaAddStatusResult, type SchemaAddTypeCommandOptions, type SchemaAddTypeInferCommandOptions, type SchemaAddTypeInferResult, type SchemaAddTypeResult, type SchemaApplyPresetCommandOptions, type SchemaApplyPresetResult, type SchemaInspectResult, type SchemaListFieldsResult, type SchemaListResult, type SchemaRemoveFieldCommandOptions, type SchemaRemoveFieldResult, type SchemaRemoveStatusCommandOptions, type SchemaRemoveStatusResult, type SchemaRemoveTypeCommandOptions, type SchemaRemoveTypeResult, type SchemaShowFieldResult, type SchemaShowResult, type SchemaShowStatusResult, type SchemaResult, type SchemaSubcommand, type SearchCompactResult, type SearchHit, type SearchHitHighlight, type SearchMatchMode, type SearchOptions, type SearchResult, type SearchResultItem, type SearchVerboseResult, type StartTaskResult, type StatsCommandOptions, type StatsResult, type TemplatesListResult, type TemplatesSaveResult, type TemplatesShowResult, type TestRunsListCommandOptions, type TestRunsLogsCommandOptions, type TestRunsResumeCommandOptions, type TestRunsStopCommandOptions, type ToImportLinkedArtifactsOptions, type ToImportLinkedTestsOptions, type ToImportLogEntriesOptions, type UpdateResult, type UpgradeCommandOptions, type UpgradeResult, type ValidateCommandOptions, type ValidateResult, type WorkspaceContracts, type WorkspaceContractsOptions, } from "./runtime.js";
14
15
  export { BUILTIN_PROFILES, listProfiles, normalizeProfileName, PROFILE_NAMES, resolveProfile, type ProfileConfigEntry, type ProfileName, type ProfilePackageRecommendation, type ProfileTemplateEntry, type ProfileTemplateOptions, type ProjectProfileDefinition, type ProjectProfileRegistrationInput, } from "../core/profile/profile-presets.js";
package/dist/sdk/index.js CHANGED
@@ -4,11 +4,12 @@
4
4
  * Defines public SDK APIs and package-author helpers for Index.
5
5
  */
6
6
 
7
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a5711d42-f13d-5316-9112-0ed678f3a1ce")}catch(e){}}();
7
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="db6acc46-6442-58d4-9436-be4229cb5d18")}catch(e){}}();
8
8
  import { EXTENSION_CAPABILITY_CONTRACT, EXTENSION_CAPABILITY_CONTRACT_VERSION, EXTENSION_CAPABILITY_LEGACY_ALIASES, KNOWN_EXTENSION_CAPABILITIES, KNOWN_EXTENSION_POLICY_MODES, KNOWN_EXTENSION_POLICY_SURFACES, KNOWN_EXTENSION_SANDBOX_PROFILES, KNOWN_EXTENSION_TRUST_MODES, } from "../core/extensions/loader.js";
9
9
  export { PM_PACKAGE_CONVENTIONAL_RESOURCE_ROOTS, PM_PACKAGE_RESOURCE_KINDS, collectPackageExtensionDirectories, readPmPackageManifest, } from "../core/packages/manifest.js";
10
10
  export { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, APPEND_FLAG_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, COMMENTS_AUDIT_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS, CONTEXT_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, CREATE_COMMANDER_STRING_OPTION_CONTRACTS, CREATE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, DEDUPE_AUDIT_FLAG_CONTRACTS, DEDUPE_MERGE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, EVAL_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_SCOPE_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, MEET_FLAG_CONTRACTS, NEXT_COMMANDER_STRING_OPTION_CONTRACTS, NEXT_FLAG_CONTRACTS, NORMALIZE_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, PLAN_FLAG_CONTRACTS, PM_CORE_COMMAND_NAMES, PM_EXTENSION_CAPABILITY_CONTRACTS, PM_EXTENSION_POLICY_MODE_CONTRACTS, PM_EXTENSION_POLICY_SURFACE_CONTRACTS, PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS, PM_EXTENSION_SERVICE_NAME_CONTRACTS, PM_EXTENSION_TRUST_MODE_CONTRACTS, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION, PM_TOOL_ACTIONS, PM_TOOL_ACTION_PARAMETER_CONTRACTS, PM_TOOL_PARAMETERS_SCHEMA, PM_TOOL_PARAMETERS_SCHEMA_MAJOR, PM_TOOL_PARAMETERS_SCHEMA_VERSION, PROFILE_FLAG_CONTRACTS, REINDEX_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, REMIND_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, SEARCH_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, SUBCOMMAND_GLOBAL_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, TOOL_ACTIVITY_OPTION_CONTRACTS, TOOL_AGGREGATE_OPTION_CONTRACTS, TOOL_CALENDAR_OPTION_CONTRACTS, TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS, TOOL_CONTEXT_OPTION_CONTRACTS, TOOL_CREATE_OPTION_CONTRACTS, TOOL_DEDUPE_AUDIT_OPTION_CONTRACTS, TOOL_DEPS_OPTION_CONTRACTS, TOOL_LIST_FILTER_OPTION_CONTRACTS, TOOL_NORMALIZE_FILTER_OPTION_CONTRACTS, TOOL_SEARCH_FILTER_OPTION_CONTRACTS, TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS, TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS, TOOL_UPDATE_OPTION_CONTRACTS, UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, UPDATE_COMMANDER_STRING_OPTION_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, compactFlagAliasContracts, isPmExtensionCapabilityContract, isPmExtensionPolicyModeContract, isPmExtensionPolicySurfaceContract, isPmExtensionServiceNameContract, isPmToolAction, readFirstStringFromCommanderOptions, readFirstValueFromCommanderOptions, readStringArrayFromCommanderOptions, resolveSubcommandFlagContractsForCommand, toCompletionFlagString, withFlagAliasMetadata, } from "./cli-contracts.js";
11
11
  export * from "./compose.js";
12
+ export * from "./context-relevance.js";
12
13
  export * from "./define.js";
13
14
  export { BASELINE_ITEM_FORMAT_VERSION, BUILTIN_ITEM_TYPE_VALUES, CONFIDENCE_TEXT_VALUES, CURRENT_ITEM_FORMAT_VERSION, DEPENDENCY_KIND_VALUES, EXIT_CODE, ISSUE_SEVERITY_VALUES, ITEM_TYPE_VALUES, PM_CLI_EXPECTED_ERROR_NAME, PmCliError, PmClient, RISK_VALUES, STATUS_VALUES, acquireLock, appendHistoryEntry, canonicalDocument, classifyItemFormatVersion, clearWorkspaceContractsCache, commitImportedItem, createHistoryEntry, createPmCliExpectedError, effectiveItemFormatVersion, emptyImportedDocument, ensureTrackerInitialized, generateItemId, getActiveExtensionRegistrations, getContracts, getHistoryPath, getItemPath, getSettingsPath, getWorkspaceContracts, isPmCliExpectedError, isTimestampLiteral, listAllFrontMatter, loadCreateTemplateOptions, locateItem, normalizeFrontMatter, normalizeItemFormatVersion, normalizeItemId, normalizeRawItemId, normalizeStatusInput, nowIso, parseTags, pathExists, readBooleanOption, readCsvListOption, readFileIfExists, readLocatedItem, readRequiredString, readSettings, readStringOption, removeFileIfExists, renderCalendarMarkdown, renderCalendarToon, renderGuideMarkdown, resolveCalendarOutputFormat, resolveGuideOutputFormat, resolveItemTypeRegistry, resolvePmRoot, resolveRuntimeFieldRegistry, resolveRuntimeStatusRegistry, runAction, runActiveOnReadHooks, runActiveOnWriteHooks, runCalendar, runCommentsAudit, runCompletion, runDedupeAudit, runDedupeMerge, runGuide, runNormalize, runReindex, runSearch, runTemplatesList, runTemplatesSave, runTemplatesShow, runTestRunsList, runTestRunsLogs, runTestRunsResume, runTestRunsStatus, runTestRunsStop, scanItemFormatVersions, selectImportAuthor, serializeItemDocument, splitFrontMatter, toEstimatedMinutesValue, toImportBoolean, toImportConfidence, toImportInteger, toImportLinkedDocs, toImportLinkedFiles, toImportLinkedTests, toImportLogEntries, toImportNormalizedEnum, toImportNumberMap, toImportPriority, toImportStatus, toImportStringList, toImportStringMap, toImportTags, toNonEmptyImportString, writeFileAtomic, aggregate, append, claim, close, closeTask, comments, config, context, copy, create, deleteItem, deps, docs, extension, extensionActivate, extensionDeactivate, extensionList, files, filesDiscover, focus, gc, get, health, init, learnings, list, next, notes, packageActivate, packageCatalog, packageDeactivate, packageDescribe, packageDoctor, packageInstall, packageLifecycle, packageList, packageManage, packageReload, packageUninstall, pauseTask, profile, profileApply, profileLint, profileList, profileShow, release, restore, schema, schemaAddField, schemaAddStatus, schemaAddType, schemaApplyPreset, schemaInferTypes, schemaList, schemaListFields, schemaRemoveField, schemaRemoveStatus, schemaRemoveType, schemaShow, schemaShowField, schemaShowStatus, search, startTask, stats, update, upgrade, validate, } from "./runtime.js";
14
15
  export { BUILTIN_PROFILES, listProfiles, normalizeProfileName, PROFILE_NAMES, resolveProfile, } from "../core/profile/profile-presets.js";
@@ -47,4 +48,4 @@ export { EXTENSION_CAPABILITY_REGISTRATION_SURFACES, collectUsedExtensionCapabil
47
48
  */
48
49
  export { renderExtensionSurfaceMarkdown, } from "../core/extensions/activation-summary-markdown.js";
49
50
  //# sourceMappingURL=index.js.map
50
- //# debugId=a5711d42-f13d-5316-9112-0ed678f3a1ce
51
+ //# debugId=db6acc46-6442-58d4-9436-be4229cb5d18