@iowarp/clio-coder 0.4.4 → 0.4.5

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 (555) hide show
  1. package/CHANGELOG.md +92 -2
  2. package/CONTRIBUTING.md +25 -15
  3. package/README.md +340 -27
  4. package/dist/{acp-WNAYYF4F.js → acp-H3CU2HBQ.js} +25 -24
  5. package/dist/{agents-3OKXHLOI.js → agents-IXQQZ7BD.js} +77 -77
  6. package/dist/assets/codewiki.json +1 -1
  7. package/dist/{auth-VKNNMGPU.js → auth-R7KYF7N3.js} +38 -38
  8. package/dist/builtins-CRFDQUVP.js +22 -0
  9. package/dist/{chunk-TQAHXW6Y.js → chunk-22PQ4TX4.js} +4 -4
  10. package/dist/{chunk-NEDJ26B5.js → chunk-2GPGAE5W.js} +6 -51
  11. package/dist/{chunk-IKCO5N3L.js → chunk-2QPI3TR3.js} +3 -3
  12. package/dist/{chunk-HRQMFLJP.js → chunk-32KJPXAM.js} +6 -6
  13. package/dist/{chunk-65DEGPJ6.js → chunk-3A3CUMKA.js} +6 -4
  14. package/dist/{chunk-JCI2ROMZ.js → chunk-3T4DXWP6.js} +7 -7
  15. package/dist/{chunk-DR52UMZW.js → chunk-3UW3KU4A.js} +2 -2
  16. package/dist/{chunk-6Q3CYFD3.js → chunk-4SVIVOMC.js} +184 -33
  17. package/dist/{chunk-W54I7H25.js → chunk-5A6XR3RJ.js} +44 -19
  18. package/dist/{chunk-YPC6ZR5L.js → chunk-5CMARGPF.js} +119 -5
  19. package/dist/{chunk-KXDSS5WJ.js → chunk-5CY4Q6QI.js} +4 -4
  20. package/dist/{chunk-I2DWJ4GM.js → chunk-5DDOTTG4.js} +54 -42
  21. package/dist/{chunk-D4CJV46V.js → chunk-5GZICIYO.js} +3 -3
  22. package/dist/{chunk-4IUZQIJ3.js → chunk-5PHVPU4G.js} +2 -2
  23. package/dist/{chunk-3ODX73FK.js → chunk-5VTJP36Q.js} +4 -4
  24. package/dist/{chunk-54X7T7DK.js → chunk-5ZMXGW7P.js} +79 -7
  25. package/dist/chunk-5ZSZEYJK.js +119 -0
  26. package/dist/{chunk-IXIY2H4R.js → chunk-633EXGZA.js} +5 -5
  27. package/dist/{chunk-CUSRQKPU.js → chunk-6CDNRHWH.js} +299 -89
  28. package/dist/{chunk-EBY63B7G.js → chunk-6EXUUOSN.js} +2 -2
  29. package/dist/{chunk-SVNXH4L2.js → chunk-6ICZKDUC.js} +2 -2
  30. package/dist/{chunk-JEIYHLOR.js → chunk-6SYEGZI3.js} +12 -12
  31. package/dist/{chunk-DQOVN6KV.js → chunk-6YA46L5A.js} +4 -4
  32. package/dist/{chunk-NZMNUPZZ.js → chunk-77CZRFTE.js} +3 -3
  33. package/dist/{chunk-6PAZTBPA.js → chunk-7HBHHVCK.js} +15 -6
  34. package/dist/{chunk-25QBEXRS.js → chunk-7TKWWPD7.js} +5 -4
  35. package/dist/{chunk-2VTFPG5O.js → chunk-7WLRF2U5.js} +2 -2
  36. package/dist/chunk-7WUZEB2M.js +165 -0
  37. package/dist/{chunk-3UUXNFEX.js → chunk-7YJWEF2L.js} +61 -34
  38. package/dist/{chunk-3EBYEESD.js → chunk-A46ILRS2.js} +5 -5
  39. package/dist/{chunk-UOIZ7DA4.js → chunk-AP7HDJOP.js} +2 -2
  40. package/dist/{chunk-APJ265NV.js → chunk-B5GGDIHT.js} +146 -146
  41. package/dist/{chunk-PMZVFWSR.js → chunk-B5ZTR6KZ.js} +2 -2
  42. package/dist/{chunk-I5FWO7L5.js → chunk-B6UM3OZC.js} +2 -2
  43. package/dist/{chunk-2CU2H6KE.js → chunk-BBV5TKE6.js} +5 -5
  44. package/dist/{chunk-4O6MANBS.js → chunk-BS4GAMUB.js} +14 -10
  45. package/dist/{chunk-S66XZJOF.js → chunk-C27U2TYG.js} +2 -2
  46. package/dist/{chunk-QZWQA4DE.js → chunk-CBSKDFWL.js} +3 -3
  47. package/dist/{chunk-2LEAKD4C.js → chunk-CKK25WN3.js} +3 -3
  48. package/dist/{chunk-BYP5D4HI.js → chunk-CTTI7G3T.js} +2 -2
  49. package/dist/{chunk-XAKHZX5N.js → chunk-CVDAFGPW.js} +4 -4
  50. package/dist/{chunk-RKKLTLYB.js → chunk-CXQ37WJH.js} +3 -3
  51. package/dist/{chunk-GTUD2WMY.js → chunk-DBREN25X.js} +44 -9
  52. package/dist/{chunk-YNFKXPEC.js → chunk-DIMRLNIC.js} +35 -66
  53. package/dist/{chunk-NDDGJUXD.js → chunk-DNCE23JJ.js} +2 -2
  54. package/dist/{chunk-HVDIIIQW.js → chunk-DNHVRBH4.js} +3 -3
  55. package/dist/{chunk-XULDXHTN.js → chunk-DRD2A54W.js} +102 -50
  56. package/dist/{chunk-D7E7WCDF.js → chunk-DVNAPPXU.js} +2 -2
  57. package/dist/{chunk-YXLYO42X.js → chunk-DXVMLM3Z.js} +3 -2
  58. package/dist/{chunk-5MEZN6CB.js → chunk-DZK63TZJ.js} +6 -6
  59. package/dist/{chunk-IGLP3ODT.js → chunk-E3BQTQUP.js} +15 -15
  60. package/dist/{chunk-IWHMRKLL.js → chunk-E3LEPLQ2.js} +2 -2
  61. package/dist/{chunk-3R73A4XB.js → chunk-ECBHH7LU.js} +3 -3
  62. package/dist/chunk-ECOMVOHP.js +139 -0
  63. package/dist/chunk-EFSEIZE6.js +56 -0
  64. package/dist/{chunk-FEAXX7B6.js → chunk-EHCPSZJF.js} +4 -4
  65. package/dist/{chunk-4NSRCOYP.js → chunk-EHOSNVVM.js} +3 -2
  66. package/dist/{chunk-7UGL4MB5.js → chunk-EQEJJ53P.js} +10 -10
  67. package/dist/{chunk-GWZNEVM2.js → chunk-EWD5P3GK.js} +9 -9
  68. package/dist/{chunk-6UINWWS6.js → chunk-F34AR6O3.js} +14 -14
  69. package/dist/{chunk-GHS5EBTQ.js → chunk-FKIOX6DS.js} +29 -20
  70. package/dist/{chunk-HAXOFFRH.js → chunk-FQOOGXBH.js} +7 -7
  71. package/dist/{chunk-Y55JBDO5.js → chunk-FSTIBAGM.js} +38 -23
  72. package/dist/{chunk-ZTJUVLTU.js → chunk-FXFVDPWY.js} +2 -2
  73. package/dist/{chunk-XPLRXC72.js → chunk-GD55RTIW.js} +3 -3
  74. package/dist/{chunk-5B2AEOW5.js → chunk-GH5ZR6JP.js} +472 -472
  75. package/dist/{chunk-TOIVGRUX.js → chunk-GJ24ODAX.js} +5 -5
  76. package/dist/{chunk-QUFRYSWI.js → chunk-GNQRWTMY.js} +129 -48
  77. package/dist/{chunk-5ICU3EUH.js → chunk-GVYWZNRK.js} +5 -5
  78. package/dist/{chunk-GX5WYQO4.js → chunk-GXCCHKN6.js} +6 -6
  79. package/dist/{chunk-K6T2ZAMZ.js → chunk-HGSLRG33.js} +6 -6
  80. package/dist/{chunk-26QSH3EJ.js → chunk-HHVJNVUJ.js} +5 -5
  81. package/dist/{chunk-F4EKGO4N.js → chunk-HL26ADLH.js} +4 -2
  82. package/dist/{chunk-JT2RFCC5.js → chunk-HR3HPQ76.js} +5 -5
  83. package/dist/{chunk-ID64D7PE.js → chunk-HXHFDHB6.js} +24 -24
  84. package/dist/{chunk-ELWDPP3Y.js → chunk-I7VLWRK2.js} +8 -8
  85. package/dist/{chunk-6OSVSQL5.js → chunk-ICO4TQ2F.js} +7 -5
  86. package/dist/{chunk-SZAA6XDG.js → chunk-IFDRAD6F.js} +2 -2
  87. package/dist/{chunk-72YIHOZQ.js → chunk-ILJ7DWGE.js} +9 -9
  88. package/dist/{chunk-2JH2WHGE.js → chunk-J2FYEQ5L.js} +4 -4
  89. package/dist/{chunk-BMS5RKQY.js → chunk-JABWPKFY.js} +3 -3
  90. package/dist/{chunk-QDC3K2U3.js → chunk-K2BLQC5E.js} +3 -3
  91. package/dist/{chunk-AUPNRN7C.js → chunk-K2HL3GBL.js} +4 -4
  92. package/dist/{chunk-2ASED4PZ.js → chunk-K6RDB7IA.js} +26 -26
  93. package/dist/{chunk-FFUPXJC4.js → chunk-KDWLXVMN.js} +23 -24
  94. package/dist/{chunk-OZNBF4L3.js → chunk-KECNXMDE.js} +2 -2
  95. package/dist/{chunk-6QOTUPRG.js → chunk-KF6GFW6O.js} +66 -18
  96. package/dist/{chunk-BTK3SSSK.js → chunk-KMF54VH3.js} +2 -2
  97. package/dist/chunk-KPRLAMP4.js +32 -0
  98. package/dist/{chunk-ECH6PKUQ.js → chunk-KQ6IDQIB.js} +2 -2
  99. package/dist/{chunk-3UNOLWNZ.js → chunk-KTFSFCVN.js} +20 -9
  100. package/dist/{chunk-57XXR6DR.js → chunk-KYKNBD4Y.js} +24 -23
  101. package/dist/{chunk-IRXAATOX.js → chunk-L4N3DWNW.js} +3 -3
  102. package/dist/{chunk-LCGCVYZ4.js → chunk-LQTKDAUO.js} +2 -2
  103. package/dist/{chunk-U6TMQNSI.js → chunk-LTR5QCLS.js} +4 -4
  104. package/dist/chunk-LUL5Z66S.js +221 -0
  105. package/dist/{chunk-ELZVTCGV.js → chunk-LVFANMOH.js} +151 -327
  106. package/dist/{chunk-H7IXIC72.js → chunk-LY4N4TTL.js} +17 -3
  107. package/dist/{chunk-VKPAQYEB.js → chunk-LZBMXNLP.js} +5 -5
  108. package/dist/{chunk-UL3WSD3F.js → chunk-M4KFUXS7.js} +2 -2
  109. package/dist/{chunk-NXYCB2VD.js → chunk-M6TAYK66.js} +6 -6
  110. package/dist/{chunk-NEKRRTYW.js → chunk-MC3JSVR6.js} +2 -2
  111. package/dist/{chunk-CFGTUFWB.js → chunk-MCJKEGHO.js} +2 -2
  112. package/dist/{chunk-DXKJURES.js → chunk-MDU3C27C.js} +10 -7
  113. package/dist/{chunk-6XLNIQDB.js → chunk-MYI32N4R.js} +2 -2
  114. package/dist/{chunk-3GY4F45V.js → chunk-NC4KV7EL.js} +6 -6
  115. package/dist/{chunk-LLXSDWXS.js → chunk-NF3BK5WR.js} +5 -5
  116. package/dist/chunk-NTK3WTHM.js +141 -0
  117. package/dist/{chunk-GYV6VZOC.js → chunk-NTTS3O53.js} +2 -2
  118. package/dist/{chunk-RZDWV63N.js → chunk-NY6IWDVU.js} +6 -6
  119. package/dist/{chunk-XXYSBZIQ.js → chunk-O2RQ7LCK.js} +4 -4
  120. package/dist/{chunk-4BJ5BYCE.js → chunk-O3VV6IVK.js} +2 -2
  121. package/dist/{chunk-W6GROXXM.js → chunk-O5F25NIE.js} +2 -2
  122. package/dist/{chunk-NXIMQY5W.js → chunk-ODUTYZIU.js} +5 -5
  123. package/dist/{chunk-LTIKRKFL.js → chunk-ONRTXOZY.js} +4 -4
  124. package/dist/{chunk-KFV5L5SK.js → chunk-OQM5IVJY.js} +118 -232
  125. package/dist/{chunk-XRZT5WY5.js → chunk-P5SC4DLJ.js} +4 -4
  126. package/dist/{chunk-R6Q67RJH.js → chunk-PECBKCDK.js} +34 -6
  127. package/dist/{chunk-33YXPOE3.js → chunk-PPEZJWUG.js} +2 -2
  128. package/dist/{chunk-RXTN6AKH.js → chunk-PWWSIB2A.js} +5 -5
  129. package/dist/{chunk-2STGEDFV.js → chunk-QEQISF75.js} +2 -2
  130. package/dist/{chunk-3DPEIQKN.js → chunk-QH3ZTUOA.js} +2 -2
  131. package/dist/{chunk-YAKGTXEV.js → chunk-QRFXEO6Y.js} +2 -2
  132. package/dist/{chunk-35MSIRKH.js → chunk-QUIJZSDW.js} +2 -2
  133. package/dist/{chunk-HHV2GANA.js → chunk-R2P2U3ZS.js} +2 -2
  134. package/dist/{chunk-2DSOYNFC.js → chunk-R6MAYTMS.js} +7 -7
  135. package/dist/{chunk-JQLNNIKT.js → chunk-R6MICQYU.js} +6 -6
  136. package/dist/{chunk-NAI6ZFCY.js → chunk-RLTT5GVY.js} +122 -11
  137. package/dist/{chunk-DT3LWJOB.js → chunk-RXIOCVBZ.js} +24 -6
  138. package/dist/{chunk-N56KALIC.js → chunk-S32UQ5GL.js} +61 -34
  139. package/dist/{chunk-UEPWCCTY.js → chunk-SBZX6ARC.js} +12 -12
  140. package/dist/chunk-SD7SHNDW.js +15 -0
  141. package/dist/{chunk-NRO2BJRH.js → chunk-SDWNDICN.js} +10235 -4015
  142. package/dist/{chunk-UXCU4E3T.js → chunk-SE4ZKILO.js} +6 -6
  143. package/dist/chunk-SL2RDHKO.js +19 -0
  144. package/dist/{chunk-NUGM5KR6.js → chunk-SRCEQKQS.js} +2 -2
  145. package/dist/{chunk-OMQNJVKW.js → chunk-SRZOW5L2.js} +43 -13
  146. package/dist/{chunk-3M6DQK6S.js → chunk-T334FW2H.js} +7 -7
  147. package/dist/{chunk-V76WTFTW.js → chunk-T52TPHYC.js} +6 -6
  148. package/dist/{chunk-I7XBWTYH.js → chunk-T53XI6I7.js} +5 -5
  149. package/dist/{chunk-2ZSONWVL.js → chunk-T7FDXNRU.js} +13 -13
  150. package/dist/{chunk-JSD46VO2.js → chunk-TEG3RYVZ.js} +43 -36
  151. package/dist/{chunk-3I7MS7N2.js → chunk-TK2BMCBZ.js} +2 -2
  152. package/dist/{chunk-5OIVVPHF.js → chunk-TN5FW4XY.js} +13 -6
  153. package/dist/{chunk-75W7L2E2.js → chunk-TZ7MFRG4.js} +1041 -162
  154. package/dist/{chunk-36CT5VVL.js → chunk-U2JOLB7O.js} +126 -77
  155. package/dist/{chunk-LL4KHSZI.js → chunk-U2MSJ57E.js} +2 -2
  156. package/dist/{chunk-FTMGRKEF.js → chunk-U44YYLVV.js} +4 -4
  157. package/dist/{chunk-YECAMM3D.js → chunk-U7H5WRG5.js} +5 -5
  158. package/dist/{chunk-RQCKCSRL.js → chunk-U7VQ4NI4.js} +22 -22
  159. package/dist/{chunk-5TUB6SLS.js → chunk-UFYNOQK4.js} +7 -7
  160. package/dist/{chunk-R346GLFC.js → chunk-UHW5V7HC.js} +2 -2
  161. package/dist/{chunk-USR47QNF.js → chunk-UL36QJX6.js} +14 -14
  162. package/dist/{chunk-VIA6RFQZ.js → chunk-UQIVHSE4.js} +4 -4
  163. package/dist/{chunk-RAY4OVGZ.js → chunk-URBGEOH3.js} +5 -5
  164. package/dist/chunk-USZA7GWL.js +341 -0
  165. package/dist/{chunk-YD5GIKET.js → chunk-UTUNT5QL.js} +48 -579
  166. package/dist/{chunk-ZA4VCIGV.js → chunk-UUQ5G6EZ.js} +60 -41
  167. package/dist/{chunk-23L32XTI.js → chunk-UXAC2FX4.js} +68 -39
  168. package/dist/{chunk-VG7TBQIY.js → chunk-V552WL53.js} +68 -4
  169. package/dist/{chunk-BWH6N36D.js → chunk-VHKTOLEW.js} +272 -42
  170. package/dist/{chunk-EXLD33WO.js → chunk-VLPTKCKT.js} +24 -9
  171. package/dist/{chunk-336NSSKI.js → chunk-VNBICSS2.js} +2 -2
  172. package/dist/{chunk-VAVR4IJY.js → chunk-VQD7NH7Z.js} +3 -3
  173. package/dist/{chunk-LBMZMYH2.js → chunk-W2RJEH6Q.js} +3 -3
  174. package/dist/{chunk-7CR24IG7.js → chunk-WDV62RKY.js} +2 -2
  175. package/dist/{chunk-S6PYF2XF.js → chunk-WFKDPU7U.js} +4 -4
  176. package/dist/{chunk-BJVFZO5U.js → chunk-WJIMKGD6.js} +7 -7
  177. package/dist/{chunk-5636DCO5.js → chunk-WLMSOT73.js} +59 -12
  178. package/dist/{chunk-MXHC5QYU.js → chunk-WTQGRBHV.js} +5 -144
  179. package/dist/chunk-WXA2CFJO.js +23 -0
  180. package/dist/{chunk-QSNYB6ZV.js → chunk-XCUDZQLX.js} +3 -3
  181. package/dist/{chunk-4M6Z5QVF.js → chunk-XXBQKW32.js} +11 -11
  182. package/dist/{chunk-OEJSLEPW.js → chunk-YEJIG7LN.js} +332 -332
  183. package/dist/chunk-YGDMBK7O.js +567 -0
  184. package/dist/{chunk-4WR7VSYB.js → chunk-YYB3MC65.js} +23 -9
  185. package/dist/{chunk-2IR2NMPA.js → chunk-ZIDFQJRB.js} +2 -2
  186. package/dist/{chunk-Q4WO54TA.js → chunk-ZMZQEBKI.js} +14 -14
  187. package/dist/{chunk-6EJMN2Y3.js → chunk-ZTNFYMIO.js} +2 -2
  188. package/dist/{chunk-WEPFGWHJ.js → chunk-ZZFWWYLX.js} +2 -2
  189. package/dist/cli/index.js +44 -44
  190. package/dist/clio-5I2IBFYL.js +26 -0
  191. package/dist/{code-nav-IJR2DBPR.js → code-nav-YXIAEZVS.js} +48 -32
  192. package/dist/codewiki/build-worker.js +76 -29
  193. package/dist/{compile-cache-OQAVB7Y5.js → compile-cache-WJEPUZEJ.js} +4 -4
  194. package/dist/{components-2TGAI2RC.js → components-TNIKXCBH.js} +13 -13
  195. package/dist/{config-IUA6OYNS.js → config-Y2JDJ3JJ.js} +210 -124
  196. package/dist/configure-SML6UBZ5.js +55 -0
  197. package/dist/{context-4MPR7WKB.js → context-P5YSEO55.js} +125 -121
  198. package/dist/{context-2DKHWH2T.js → context-QQ53HSGJ.js} +91 -62
  199. package/dist/{context-BOYF5EJM.js → context-S2EEC3EJ.js} +62 -31
  200. package/dist/context-clear-TMEQCOTH.js +183 -0
  201. package/dist/{context-index-HNG3MOME.js → context-index-HP2JFUWA.js} +13 -11
  202. package/dist/{context-map-COB37XXN.js → context-map-INTXD54D.js} +71 -21
  203. package/dist/{context-working-set-3I3FYX6Y.js → context-working-set-CNLSQN5K.js} +31 -31
  204. package/dist/detail-5572VLBO.js +114 -0
  205. package/dist/{dispatch-runner-RJ5I2F2O.js → dispatch-runner-FRHD6P2O.js} +191 -116
  206. package/dist/{docs-SPOV3BAN.js → docs-BL7ROUFN.js} +4 -4
  207. package/dist/{doctor-DKICC2SN.js → doctor-N3LCM2LG.js} +58 -58
  208. package/dist/{eval-OQOQUDHK.js → eval-BUU3ZOUZ.js} +473 -168
  209. package/dist/{eval-inventory-Y6QRFOH5.js → eval-inventory-QOYZERXJ.js} +7 -7
  210. package/dist/evidence-DTGEN456.js +224 -0
  211. package/dist/{evidence-4DQ25GUQ.js → evidence-SQ5DNFEN.js} +110 -94
  212. package/dist/{evolve-GSS52E5J.js → evolve-IJNUFZDS.js} +107 -91
  213. package/dist/{extensions-G7MFLYHT.js → extensions-YVRHX6ZI.js} +16 -16
  214. package/dist/{fleet-Q37YHHAQ.js → fleet-ZNNVSYFO.js} +147 -147
  215. package/dist/{fleet-commands-G7E4N7SM.js → fleet-commands-5YE7NPJL.js} +27 -26
  216. package/dist/{fleet-decisions-O7M6QBA2.js → fleet-decisions-3SBSCTCW.js} +16 -15
  217. package/dist/{fleet-graph-TOUBW6OW.js → fleet-graph-6HHPWF5T.js} +39 -38
  218. package/dist/{fleet-inspect-SW33JJNI.js → fleet-inspect-JEYMGCGC.js} +107 -91
  219. package/dist/{fleet-new-RDVJLHHH.js → fleet-new-RCKGSRDV.js} +3 -3
  220. package/dist/{fleet-preflight-CV2655TW.js → fleet-preflight-QRSHIIDE.js} +10 -9
  221. package/dist/{fleet-validate-KESZX2YH.js → fleet-validate-4PM4GDDL.js} +46 -42
  222. package/dist/{fleet-verify-UQPMTVE3.js → fleet-verify-NJDTHTO3.js} +105 -89
  223. package/dist/fleet-view-UP2BWQQY.js +117 -0
  224. package/dist/{init-PXEXQSBF.js → init-S3GZQ5ZF.js} +123 -123
  225. package/dist/{install-NKNG7KD4.js → install-3RZDDP23.js} +5 -5
  226. package/dist/{interop-ZG5T62U3.js → interop-YOTGXFJM.js} +25 -25
  227. package/dist/inventory-K2OZ36YJ.js +117 -0
  228. package/dist/{library-B2W4N74O.js → library-GJI6W6OK.js} +45 -44
  229. package/dist/{memory-YCANYS5A.js → memory-OQOXQGYD.js} +107 -93
  230. package/dist/{models-GERTU3YI.js → models-3IK2Y5WE.js} +63 -62
  231. package/dist/{monitor-CPNIUULB.js → monitor-FTJLTKCQ.js} +136 -107
  232. package/dist/{orchestrator-J4BSH4WQ.js → orchestrator-N47O7SFD.js} +1159 -697
  233. package/dist/{panes-BOHAEGYC.js → panes-7BTYH3XQ.js} +8 -8
  234. package/dist/{panes-NXSLDQZ2.js → panes-WPOMEMRH.js} +22 -22
  235. package/dist/{paths-VSUWNC22.js → paths-J3KN7UAO.js} +12 -12
  236. package/dist/preload-65U34NG6.js +115 -0
  237. package/dist/{registry-LG64LTF4.js → registry-DESGAXWK.js} +3 -3
  238. package/dist/{reset-TNWTB5LU.js → reset-MUVQDLNL.js} +20 -20
  239. package/dist/{resources-4PXNMD5G.js → resources-LM76COAO.js} +41 -40
  240. package/dist/{run-D6XJ34CN.js → run-3VFZQ33N.js} +162 -156
  241. package/dist/{share-2NWMJJEE.js → share-4JUB4BL7.js} +43 -42
  242. package/dist/{skills-KR7WON5G.js → skills-S36AAJHU.js} +47 -46
  243. package/dist/{skills-eval-O2ZNOLDS.js → skills-eval-G6T57L7M.js} +127 -107
  244. package/dist/{skills-inventory-ZZOUBK7O.js → skills-inventory-WLM46PJH.js} +41 -40
  245. package/dist/slash-commands-GBARG3Y7.js +91 -0
  246. package/dist/{steer-XA25PSCS.js → steer-S7D7IKPU.js} +7 -7
  247. package/dist/{support-7EMVWYG2.js → support-5VAEC32W.js} +14 -14
  248. package/dist/{targets-OMH2XCSN.js → targets-N5REUETU.js} +145 -94
  249. package/dist/tasks-6BVY5YZF.js +36 -0
  250. package/dist/{terminal-lease-C2J3JYRE.js → terminal-lease-57UEOJKS.js} +12 -11
  251. package/dist/tools-6OCQ6SVB.js +28 -0
  252. package/dist/{trace-FXMXUZUF.js → trace-JHLXWUMN.js} +18 -17
  253. package/dist/{tree-sitter-HGKH6LG4.js → tree-sitter-AQUUOSYM.js} +6 -6
  254. package/dist/{tui-primitives-K5PASC3O.js → tui-primitives-RCY2HN7G.js} +3 -3
  255. package/dist/{uninstall-HALS6BLF.js → uninstall-FXYMFFRT.js} +17 -17
  256. package/dist/{upgrade-MS72RJEP.js → upgrade-4HD5HAIV.js} +40 -39
  257. package/dist/{usage-NHG6MCJM.js → usage-4GWM2WWP.js} +136 -105
  258. package/dist/{verifiers-7AUNVXDY.js → verifiers-GSKWKWVG.js} +28 -27
  259. package/dist/verify-3AS3ULCY.js +30 -0
  260. package/dist/{version-KGEG7EPO.js → version-RFPKO6T7.js} +4 -4
  261. package/dist/{web-fetch-V4FKSDAV.js → web-fetch-MQN4FH3X.js} +169 -18
  262. package/dist/wiki-generate-7BV7XWIY.js +614 -0
  263. package/dist/{with-panes-BDQEWBRT.js → with-panes-OFTNAR4Y.js} +34 -20
  264. package/dist/worker/entry.js +99 -88
  265. package/dist/{workspace-ZJ6BFM3Q.js → workspace-DZ7JADBG.js} +6 -6
  266. package/docs/README.md +7 -6
  267. package/docs/architecture/acp.md +10 -0
  268. package/docs/architecture/architecture.md +5 -5
  269. package/docs/architecture/context-engine.md +44 -59
  270. package/docs/architecture/context-working-set.md +7 -9
  271. package/docs/architecture/dispatch-architecture-rationale.md +1 -1
  272. package/docs/architecture/evidence-and-memory.md +10 -0
  273. package/docs/architecture/pi-boundary.md +37 -7
  274. package/docs/architecture/prompt-envelope-and-tools.md +7 -7
  275. package/docs/architecture/session-lifecycle.md +4 -4
  276. package/docs/architecture/worker-dispatch-mechanics.md +4 -0
  277. package/docs/guide/commands-and-modes.md +49 -36
  278. package/docs/guide/configuration-and-targets.md +7 -2
  279. package/docs/guide/configuration-reference.md +13 -3
  280. package/docs/guide/environment-variables.md +6 -2
  281. package/docs/guide/fleet-dispatch.md +12 -0
  282. package/docs/guide/installation-and-lifecycle.md +35 -9
  283. package/docs/guide/proactive-memory.md +1 -1
  284. package/docs/guide/skills-marketplace.md +11 -3
  285. package/docs/guide/tool-usage.md +9 -2
  286. package/docs/process/development-pipeline.md +10 -10
  287. package/docs/process/documentation-guide.md +2 -2
  288. package/docs/process/eval-runner.md +15 -0
  289. package/docs/process/evals-internal.md +1 -1
  290. package/docs/process/release-cut-checklist.md +6 -6
  291. package/evals/README.md +4 -0
  292. package/evals/behavioral-corpus-grader.mjs +147 -14
  293. package/evals/behavioral-model-negative-control.yaml +1 -0
  294. package/evals/behavioral-model.yaml +266 -1
  295. package/evals/fixtures/docs-retrieval.json +102 -0
  296. package/evals/fixtures/scalar-decision.json +17 -0
  297. package/evals/fixtures/scout-citation-pipeline.json +55 -0
  298. package/evals/fixtures/source-explanation.json +74 -0
  299. package/evals/fixtures/tool-arguments.json +18 -0
  300. package/evals/fixtures/tool-surface/read.txt +4 -0
  301. package/evals/fixtures/tool-surface/subdir/keep.txt +1 -0
  302. package/evals/no-edit-memory-grader.mjs +149 -0
  303. package/evals/scalar-decision-grader.py +41 -0
  304. package/evals/scalar-decision-machinery.ts +145 -0
  305. package/evals/source-explanation-grader.mjs +118 -0
  306. package/evals/tool-surface-grader.mjs +53 -0
  307. package/evals/tool-surface-model.yaml +274 -0
  308. package/package.json +14 -14
  309. package/skills/README.md +6 -6
  310. package/skills/registry.yaml +1 -1
  311. package/skills/skill-marketplace.json +1 -1
  312. package/src/cli/bootstrap-generate.ts +6 -0
  313. package/src/cli/config-inspect.ts +24 -7
  314. package/src/cli/config-trust.ts +62 -0
  315. package/src/cli/config.ts +8 -0
  316. package/src/cli/context-map.ts +75 -14
  317. package/src/cli/context.ts +46 -17
  318. package/src/cli/eval.ts +17 -3
  319. package/src/cli/modes/print.ts +32 -4
  320. package/src/cli/run.ts +16 -14
  321. package/src/cli/skills-eval.ts +10 -8
  322. package/src/cli/steer-channel.ts +31 -18
  323. package/src/cli/targets.ts +83 -31
  324. package/src/cli/tasks.ts +10 -1
  325. package/src/cli/upgrade.ts +9 -6
  326. package/src/cli/usage.ts +24 -0
  327. package/src/cli/wiki-generate.ts +239 -96
  328. package/src/core/bash-exec.ts +43 -15
  329. package/src/core/bus-events.ts +15 -0
  330. package/src/core/config.ts +33 -14
  331. package/src/core/defaults.ts +5 -4
  332. package/src/core/file-references.ts +11 -1
  333. package/src/core/incomplete-installation.ts +3 -1
  334. package/src/core/settings-layers.ts +21 -5
  335. package/src/core/termination.ts +26 -9
  336. package/src/core/untrusted-content.ts +16 -0
  337. package/src/core/workspace-trust.ts +179 -0
  338. package/src/domains/agents/builtins/coder.md +4 -2
  339. package/src/domains/agents/builtins/context-bootstrap.md +3 -1
  340. package/src/domains/agents/builtins/documenter.md +7 -4
  341. package/src/domains/agents/builtins/researcher.md +1 -0
  342. package/src/domains/agents/builtins/scout.md +7 -1
  343. package/src/domains/agents/result-contract.ts +199 -26
  344. package/src/domains/context/bootstrap-prompt.ts +11 -9
  345. package/src/domains/context/bootstrap.ts +74 -39
  346. package/src/domains/context/clio-md.ts +88 -26
  347. package/src/domains/context/codewiki/build-operation.ts +121 -0
  348. package/src/domains/context/codewiki/build-worker-protocol.ts +37 -3
  349. package/src/domains/context/codewiki/build-worker.ts +3 -35
  350. package/src/domains/context/codewiki/coordinator.ts +36 -6
  351. package/src/domains/context/codewiki/indexer.ts +59 -19
  352. package/src/domains/context/contract.ts +6 -2
  353. package/src/domains/context/extension.ts +72 -10
  354. package/src/domains/context/fingerprint.ts +39 -34
  355. package/src/domains/context/index.ts +7 -1
  356. package/src/domains/context/prompt-context.ts +55 -14
  357. package/src/domains/context/refresh.ts +9 -57
  358. package/src/domains/context/wiki/assemble.ts +14 -10
  359. package/src/domains/context/wiki/evidence.ts +209 -0
  360. package/src/domains/context/wiki/generate.ts +201 -67
  361. package/src/domains/context/wiki/meta.ts +10 -2
  362. package/src/domains/context/wiki/plan-store.ts +70 -14
  363. package/src/domains/context/wiki/plan.ts +71 -14
  364. package/src/domains/context/wiki/prompts.ts +42 -1
  365. package/src/domains/context/wiki/source-content.ts +106 -0
  366. package/src/domains/context/wiki/staleness.ts +33 -22
  367. package/src/domains/context/working-set/contract.ts +8 -2
  368. package/src/domains/context/working-set/engine.ts +17 -4
  369. package/src/domains/context/working-set/fold.ts +15 -2
  370. package/src/domains/context/working-set/marker.ts +2 -1
  371. package/src/domains/context/working-set/project.ts +18 -7
  372. package/src/domains/context/working-set/recall.ts +82 -56
  373. package/src/domains/dispatch/active-route-planner.ts +6 -3
  374. package/src/domains/dispatch/admission-queue.ts +19 -7
  375. package/src/domains/dispatch/admission.ts +3 -3
  376. package/src/domains/dispatch/budget-envelope.ts +47 -82
  377. package/src/domains/dispatch/capacity-lease.ts +57 -19
  378. package/src/domains/dispatch/contract.ts +10 -2
  379. package/src/domains/dispatch/event-pump.ts +28 -7
  380. package/src/domains/dispatch/execution-role.ts +49 -2
  381. package/src/domains/dispatch/execution-scheduler.ts +2 -0
  382. package/src/domains/dispatch/extension.ts +190 -105
  383. package/src/domains/dispatch/fleet-run.ts +20 -0
  384. package/src/domains/dispatch/gate-role-prompts.ts +4 -2
  385. package/src/domains/dispatch/parallel-writers.ts +34 -0
  386. package/src/domains/dispatch/reservation-store.ts +8 -34
  387. package/src/domains/dispatch/route-approval.ts +3 -3
  388. package/src/domains/dispatch/route-observer.ts +4 -2
  389. package/src/domains/dispatch/route-quality.ts +6 -1
  390. package/src/domains/dispatch/types.ts +4 -3
  391. package/src/domains/dispatch/worker-spawn.ts +58 -21
  392. package/src/domains/dispatch/workspace-checkpoint.ts +57 -0
  393. package/src/domains/eval/compare/behavioral.ts +81 -14
  394. package/src/domains/eval/compare/compare.ts +15 -5
  395. package/src/domains/eval/compare/envelope.ts +12 -5
  396. package/src/domains/eval/metrics/context.ts +24 -1
  397. package/src/domains/eval/metrics/tracked.ts +4 -28
  398. package/src/domains/eval/reports/comparison.ts +9 -9
  399. package/src/domains/eval/runners/clio-run.ts +5 -1
  400. package/src/domains/eval/schema/suite.ts +2 -0
  401. package/src/domains/eval/schema/validate.ts +1 -0
  402. package/src/domains/eval/suites/run.ts +189 -13
  403. package/src/domains/eval/verifiers/integrity.ts +39 -0
  404. package/src/domains/eval/verifiers/patch.ts +58 -2
  405. package/src/domains/eval/workspaces/temp-copy.ts +3 -0
  406. package/src/domains/evidence/build.ts +4 -2
  407. package/src/domains/interop/registry.ts +2 -2
  408. package/src/domains/middleware/hooks-io.ts +45 -26
  409. package/src/domains/middleware/hooks.ts +6 -0
  410. package/src/domains/middleware/injection-screen.ts +23 -0
  411. package/src/domains/middleware/rules.ts +5 -1
  412. package/src/domains/middleware/stalled-turn.ts +18 -3
  413. package/src/domains/middleware/task-board-reminder.ts +4 -2
  414. package/src/domains/middleware/task-nudge.ts +4 -1
  415. package/src/domains/mux/contract.ts +34 -1
  416. package/src/domains/mux/dock-controller.ts +8 -1
  417. package/src/domains/mux/index.ts +1 -0
  418. package/src/domains/mux/socket-client.ts +13 -3
  419. package/src/domains/observability/contract.ts +2 -2
  420. package/src/domains/observability/projection.ts +30 -9
  421. package/src/domains/prompts/compiler.ts +10 -2
  422. package/src/domains/prompts/contract.ts +7 -4
  423. package/src/domains/prompts/extension.ts +28 -64
  424. package/src/domains/prompts/fragments/identity/clio.md +23 -0
  425. package/src/domains/prompts/fragments/operating/contract.md +10 -0
  426. package/src/domains/prompts/fragments/operating/delegation.md +5 -0
  427. package/src/domains/prompts/fragments/wiki/page.md +28 -15
  428. package/src/domains/prompts/fragments/wiki/plan.md +4 -4
  429. package/src/domains/prompts/preload-prefix.ts +31 -0
  430. package/src/domains/prompts/preload.ts +135 -61
  431. package/src/domains/providers/auth/backend-file.ts +15 -11
  432. package/src/domains/providers/auth/storage.ts +3 -5
  433. package/src/domains/providers/catalog.ts +18 -3
  434. package/src/domains/providers/runtime-resolution.ts +11 -9
  435. package/src/domains/providers/runtimes/cloud/openrouter.ts +2 -0
  436. package/src/domains/resources/skills/promotion.ts +8 -1
  437. package/src/domains/safety/action-classifier.ts +9 -0
  438. package/src/domains/safety/autonomy.ts +10 -1
  439. package/src/domains/safety/contract.ts +5 -1
  440. package/src/domains/safety/default-path-policy.ts +11 -0
  441. package/src/domains/safety/extension.ts +11 -2
  442. package/src/domains/safety/policy-engine.ts +189 -32
  443. package/src/domains/safety/project-policy.ts +7 -2
  444. package/src/domains/safety/workspace-trust.ts +43 -0
  445. package/src/domains/session/compaction/compact.ts +384 -21
  446. package/src/domains/session/compaction/cut-point.ts +42 -5
  447. package/src/domains/session/compaction/tokens.ts +9 -1
  448. package/src/domains/session/decision-board.ts +43 -33
  449. package/src/domains/session/entries.ts +169 -4
  450. package/src/domains/session/prompt-manifest.ts +47 -8
  451. package/src/domains/session/task-board.ts +21 -3
  452. package/src/domains/user-tasks/handoff.ts +16 -0
  453. package/src/engine/acp/adapter.ts +44 -12
  454. package/src/engine/acp/server.ts +1 -0
  455. package/src/engine/acp/transport.ts +2 -1
  456. package/src/engine/acp/types.ts +6 -1
  457. package/src/engine/antigravity/subprocess-runtime.ts +20 -4
  458. package/src/engine/api-registry.ts +19 -2
  459. package/src/engine/apis/openai-completions.ts +13 -6
  460. package/src/engine/apis/output-budget.ts +26 -10
  461. package/src/engine/claude/sdk-runtime.ts +4 -3
  462. package/src/engine/env-api-keys.ts +2 -1
  463. package/src/engine/external-subprocess.ts +14 -3
  464. package/src/engine/loop-guard.ts +19 -2
  465. package/src/engine/provider-diagnostics.ts +129 -0
  466. package/src/engine/provider-payload.ts +3 -1
  467. package/src/engine/worker-runtime.ts +13 -2
  468. package/src/engine/worker-tools.ts +5 -1
  469. package/src/entry/extension-reload.ts +1 -0
  470. package/src/entry/orchestrator.ts +53 -15
  471. package/src/interactive/chat-loop-messages.ts +12 -4
  472. package/src/interactive/chat-loop.ts +115 -45
  473. package/src/interactive/chat-renderer.ts +60 -0
  474. package/src/interactive/context-recall-command.ts +2 -1
  475. package/src/interactive/dispatch-board.ts +17 -2
  476. package/src/interactive/editor-submit.ts +13 -0
  477. package/src/interactive/interactive-application.ts +8 -2
  478. package/src/interactive/interactive-event-projection.ts +7 -1
  479. package/src/interactive/interactive-presentation.ts +15 -7
  480. package/src/interactive/interactive-slash-runtime.ts +2 -0
  481. package/src/interactive/layout.ts +2 -1
  482. package/src/interactive/model-session-replay.ts +2 -2
  483. package/src/interactive/overlay-frame.ts +1 -0
  484. package/src/interactive/overlay-general-openers.ts +3 -1
  485. package/src/interactive/overlay-session-lifecycle.ts +6 -0
  486. package/src/interactive/overlays/ask-user.ts +1 -0
  487. package/src/interactive/overlays/message-picker.ts +1 -1
  488. package/src/interactive/renderers/tool-execution.ts +17 -1
  489. package/src/interactive/renderers/worker-entry.ts +25 -10
  490. package/src/interactive/slash-commands.ts +9 -7
  491. package/src/interactive/turn-context.ts +221 -53
  492. package/src/interactive/turn-middleware.ts +3 -1
  493. package/src/interactive/turn-persistence.ts +3 -0
  494. package/src/interactive/turn-runtime.ts +11 -2
  495. package/src/interactive/turn-state.ts +10 -9
  496. package/src/interactive/watch-pane.ts +18 -4
  497. package/src/interactive/worker-stream.ts +7 -7
  498. package/src/tools/agent-tools.ts +6 -3
  499. package/src/tools/bash.ts +1 -1
  500. package/src/tools/builtin-tool-catalog.ts +9 -2
  501. package/src/tools/codewiki/code-nav.ts +4 -10
  502. package/src/tools/compete-judge-task.ts +71 -0
  503. package/src/tools/compete-worktrees.ts +34 -0
  504. package/src/tools/context/index.ts +32 -7
  505. package/src/tools/context/surface.ts +15 -4
  506. package/src/tools/decide.ts +1 -1
  507. package/src/tools/dispatch-admission.ts +12 -1
  508. package/src/tools/dispatch-arguments.ts +38 -1
  509. package/src/tools/dispatch-plan.ts +7 -7
  510. package/src/tools/dispatch-runner.ts +48 -32
  511. package/src/tools/dispatch-schema.ts +30 -23
  512. package/src/tools/dispatch-scout-admission.ts +10 -44
  513. package/src/tools/dispatch-scout.ts +2 -3
  514. package/src/tools/find.ts +13 -4
  515. package/src/tools/grep.ts +13 -1
  516. package/src/tools/ls.ts +7 -1
  517. package/src/tools/monitor.ts +26 -11
  518. package/src/tools/network-policy.ts +11 -24
  519. package/src/tools/observation.ts +39 -2
  520. package/src/tools/read.ts +112 -15
  521. package/src/tools/registry.ts +54 -17
  522. package/src/tools/result-shaping.ts +110 -2
  523. package/src/tools/tasks.ts +33 -7
  524. package/src/tools/verify/frontend.ts +67 -30
  525. package/src/tools/verify/numeric.ts +6 -1
  526. package/src/tools/web-fetch-network.ts +179 -0
  527. package/src/tools/web-fetch-surface.ts +2 -1
  528. package/src/tools/web-fetch.ts +15 -13
  529. package/src/tools/worker-evidence.ts +27 -0
  530. package/src/worker/spec-contract.ts +12 -8
  531. package/dist/builtins-WGALA46I.js +0 -22
  532. package/dist/chunk-2WZ546HR.js +0 -792
  533. package/dist/chunk-5PSMVOLM.js +0 -56
  534. package/dist/chunk-EL24TAU4.js +0 -1560
  535. package/dist/chunk-IZXGRF7P.js +0 -4048
  536. package/dist/chunk-JVCV3ICN.js +0 -47
  537. package/dist/chunk-MNJGS2IN.js +0 -33
  538. package/dist/chunk-O5CVSAG5.js +0 -122
  539. package/dist/chunk-ODGTEFFI.js +0 -50
  540. package/dist/chunk-OQE5J4C6.js +0 -73
  541. package/dist/chunk-UUVG37B4.js +0 -244
  542. package/dist/chunk-V6HJFQZE.js +0 -228
  543. package/dist/clio-QLICPCF5.js +0 -25
  544. package/dist/configure-VEPX4NMX.js +0 -55
  545. package/dist/context-clear-S4ZJCQUX.js +0 -182
  546. package/dist/detail-A7JAVSIG.js +0 -98
  547. package/dist/evidence-4F5USFKH.js +0 -208
  548. package/dist/fleet-view-MN2VG4MR.js +0 -101
  549. package/dist/inventory-C26CFDRR.js +0 -101
  550. package/dist/preload-P6DGH2PZ.js +0 -13
  551. package/dist/slash-commands-ZXPJD64J.js +0 -92
  552. package/dist/tasks-IPAGMEIX.js +0 -36
  553. package/dist/tools-EFFEAIDP.js +0 -28
  554. package/dist/verify-FWYGPKMR.js +0 -29
  555. package/dist/wiki-generate-743CIGJW.js +0 -476
@@ -14,21 +14,21 @@ import {
14
14
  toolResultPayload,
15
15
  toolResultText,
16
16
  withoutThinkingBlocks
17
- } from "./chunk-GTUD2WMY.js";
17
+ } from "./chunk-DBREN25X.js";
18
18
  import {
19
19
  filterEntriesToActivePath
20
- } from "./chunk-W6GROXXM.js";
20
+ } from "./chunk-O5F25NIE.js";
21
21
  import {
22
22
  formatSize
23
- } from "./chunk-OZNBF4L3.js";
23
+ } from "./chunk-KECNXMDE.js";
24
24
  import {
25
25
  ceilChars,
26
26
  contentChars,
27
27
  estimateAgentMessageTokens
28
- } from "./chunk-NZMNUPZZ.js";
28
+ } from "./chunk-77CZRFTE.js";
29
29
  import {
30
30
  init_esm_shims
31
- } from "./chunk-3R73A4XB.js";
31
+ } from "./chunk-ECBHH7LU.js";
32
32
 
33
33
  // src/domains/session/compaction/tokens.ts
34
34
  init_esm_shims();
@@ -50,7 +50,15 @@ function estimateCustom(entry) {
50
50
  return ceilChars(contentChars(entry.data));
51
51
  }
52
52
  function estimateSummary(entry) {
53
- return ceilChars(entry.summary.length);
53
+ let tokens = ceilChars(entry.summary.length);
54
+ if (entry.kind !== "compactionSummary") return tokens;
55
+ if (entry.userContext) tokens += ceilChars(entry.userContext.text.length + 40) + 4;
56
+ for (const skill of entry.skillContext?.skills ?? []) {
57
+ tokens += ceilChars(skill.requestText.length + 40) + 4;
58
+ tokens += ceilChars(JSON.stringify(skill.activation).length + 32) + 4;
59
+ for (const block of skill.content) tokens += ceilChars(block.text.length) + 4;
60
+ }
61
+ return tokens;
54
62
  }
55
63
  function estimateTokens(entry) {
56
64
  switch (entry.kind) {
@@ -201,7 +209,7 @@ function firstLine(text) {
201
209
  return line.trim().slice(0, PREVIEW_LIMIT).replace(/"/g, '\\"');
202
210
  }
203
211
  function renderMarker(input) {
204
- const ref = input.ref.entry;
212
+ const ref = input.alias ?? input.ref.entry;
205
213
  const fields = [`ref=${ref}`, `reason=${input.reason}`];
206
214
  if (input.by !== void 0) fields.push(`by=${input.by}`);
207
215
  fields.push(`tool=${input.toolName}`);
@@ -268,9 +276,11 @@ function eventIndex(entries, lastEvictionTurnId) {
268
276
  const index = entries.findIndex((entry) => entry.turnId === lastEvictionTurnId);
269
277
  return index < 0 ? entries.length : index;
270
278
  }
271
- function projectWorkingSet(entries, view) {
272
- if (view.evicted.size === 0 && view.evictionEvents === 0) return [...entries];
273
- const cutoff = view.evictionEvents > 0 ? eventIndex(entries, view.lastEvictionTurnId) : -1;
279
+ function projectWorkingSet(entries, view, activeLeafTurnId) {
280
+ const checkpoint = filterEntriesToActivePath(entries, activeLeafTurnId).reverse().find((entry) => entry.kind === "compactionSummary");
281
+ const compactionIndex = checkpoint ? entries.indexOf(checkpoint) : -1;
282
+ if (view.evicted.size === 0 && view.evictionEvents === 0 && compactionIndex < 0) return [...entries];
283
+ const cutoff = Math.max(compactionIndex, view.evictionEvents > 0 ? eventIndex(entries, view.lastEvictionTurnId) : -1);
274
284
  const out = [];
275
285
  for (let index = 0; index < entries.length; index += 1) {
276
286
  const entry = entries[index];
@@ -292,7 +302,7 @@ function projectWorkingSet(entries, view) {
292
302
  // src/domains/context/working-set/engine.ts
293
303
  var NO_CALL_PATHS = /* @__PURE__ */ new Map();
294
304
  var PENDING_EVENT_TURN_ID = "";
295
- function markerFor(entry, candidate, callPaths) {
305
+ function markerFor(entry, candidate, callPaths, alias) {
296
306
  if (entry.kind !== "message") return null;
297
307
  if (entry.role === "assistant") return hasThinking(entry.payload) ? "" : null;
298
308
  if (entry.role !== "tool_result") return null;
@@ -300,6 +310,7 @@ function markerFor(entry, candidate, callPaths) {
300
310
  const toolCallId = typeof payload.obj.toolCallId === "string" ? payload.obj.toolCallId : void 0;
301
311
  return renderMarker({
302
312
  ref: candidate.ref,
313
+ ...alias === void 0 ? {} : { alias },
303
314
  reason: candidate.reason,
304
315
  by: candidate.by,
305
316
  toolName: payload.toolName,
@@ -349,8 +360,8 @@ function sumTokens(entries, estimate) {
349
360
  for (const entry of entries) total += estimate(entry);
350
361
  return total;
351
362
  }
352
- function tokensFreedByEviction(estimateTokens2, entry, candidate, callPaths = NO_CALL_PATHS) {
353
- const marker = markerFor(entry, candidate, callPaths);
363
+ function tokensFreedByEviction(estimateTokens2, entry, candidate, callPaths = NO_CALL_PATHS, alias) {
364
+ const marker = markerFor(entry, candidate, callPaths, alias);
354
365
  if (marker === null) return 0;
355
366
  const key = refKey(candidate.ref);
356
367
  const projected = projectWorkingSet([entry], soloView(key, pendingState(candidate, marker, "")))[0] ?? entry;
@@ -364,17 +375,21 @@ function planEviction(policy, input) {
364
375
  const callPaths = callPathsByToolCallId(input.entries);
365
376
  const items = [];
366
377
  const claimed = /* @__PURE__ */ new Set();
378
+ let aliasSequence = input.view.recallAliasSequence ?? [...input.view.evicted.values()].reduce((max, state) => Math.max(max, Number(state.alias?.slice(1)) || 0), 0);
367
379
  for (const candidate of candidates) {
368
380
  const key = refKey(candidate.ref);
369
381
  if (input.view.evicted.has(key) || claimed.has(key)) continue;
370
382
  const entry = byTurnId.get(key);
371
383
  if (entry === void 0) continue;
372
- const marker = markerFor(entry, candidate, callPaths);
384
+ const alias = entry.kind === "message" && entry.role === "tool_result" ? `r${aliasSequence + 1}` : void 0;
385
+ const marker = markerFor(entry, candidate, callPaths, alias);
373
386
  if (marker === null) continue;
374
- const tokensFreed = tokensFreedByEviction(input.estimateTokens, entry, candidate, callPaths);
387
+ const tokensFreed = tokensFreedByEviction(input.estimateTokens, entry, candidate, callPaths, alias);
375
388
  if (tokensFreed <= 0) continue;
376
389
  claimed.add(key);
390
+ if (alias !== void 0) aliasSequence += 1;
377
391
  items.push({
392
+ ...alias === void 0 ? {} : { alias },
378
393
  ref: candidate.ref,
379
394
  reason: candidate.reason,
380
395
  tokensFreed,
@@ -563,7 +578,7 @@ function findTurnStartIndex(entries, entryIndex, startIndex = 0) {
563
578
  function isValidCutPoint(entry) {
564
579
  switch (entry.kind) {
565
580
  case "message":
566
- return entry.role !== "tool_result";
581
+ return entry.role !== "tool_result" && entry.role !== "tool_call";
567
582
  case "bashExecution":
568
583
  case "custom":
569
584
  case "skillActivation":
@@ -593,6 +608,29 @@ function findValidCutPoints(entries, startIndex, endIndex) {
593
608
  }
594
609
  return cuts;
595
610
  }
611
+ function findToolBatchStart(entries, resultIndex, startIndex, endIndex) {
612
+ for (let index = resultIndex - 1; index >= startIndex; index--) {
613
+ const entry = entries[index];
614
+ if (entry?.kind !== "message") continue;
615
+ if (entry.role === "user") break;
616
+ if (entry.role !== "assistant") continue;
617
+ const payload = entry.payload;
618
+ if (!Array.isArray(payload?.content)) break;
619
+ const callIds = /* @__PURE__ */ new Set();
620
+ for (const block of payload.content) {
621
+ if (block?.type === "toolCall" && typeof block.id === "string") callIds.add(block.id);
622
+ }
623
+ if (callIds.size === 0) break;
624
+ for (let tail = index + 1; tail < endIndex; tail++) {
625
+ const result = entries[tail];
626
+ if (result?.kind !== "message" || result.role !== "tool_result") continue;
627
+ const id = result.payload?.toolCallId;
628
+ if (typeof id !== "string" || !callIds.has(id)) return -1;
629
+ }
630
+ return index;
631
+ }
632
+ return -1;
633
+ }
596
634
  function findCutPoint(entries, keepRecentTokens, opts = {}) {
597
635
  const startIndex = opts.startIndex ?? 0;
598
636
  const endIndex = opts.endIndex ?? entries.length;
@@ -613,6 +651,9 @@ function findCutPoint(entries, keepRecentTokens, opts = {}) {
613
651
  break;
614
652
  }
615
653
  }
654
+ if (cutIndex === -1 && entry.kind === "message" && (entry.role === "tool_result" || entry.role === "tool_call")) {
655
+ cutIndex = findToolBatchStart(entries, i, startIndex, endIndex);
656
+ }
616
657
  break;
617
658
  }
618
659
  }
@@ -639,40 +680,18 @@ function findCutPoint(entries, keepRecentTokens, opts = {}) {
639
680
  };
640
681
  }
641
682
 
642
- // src/domains/context/working-set/visible.ts
643
- init_esm_shims();
644
- function compactionCut(entries) {
645
- let compactionIndex = -1;
646
- for (let i = entries.length - 1; i >= 0; i -= 1) {
647
- if (entries[i]?.kind === "compactionSummary") {
648
- compactionIndex = i;
649
- break;
650
- }
651
- }
652
- const compaction = entries[compactionIndex];
653
- if (compaction?.kind !== "compactionSummary") return { compactionIndex: -1, visible: [...entries] };
654
- const firstKeptIndex = compaction.firstKeptTurnId.length > 0 ? entries.findIndex((entry) => entry.turnId === compaction.firstKeptTurnId) : -1;
655
- const kept = firstKeptIndex >= 0 && firstKeptIndex < compactionIndex ? entries.slice(firstKeptIndex, compactionIndex) : [];
656
- return { compactionIndex, visible: [...kept, ...entries.slice(compactionIndex + 1)] };
657
- }
658
- function selectVisibleEntries(entries, activeLeafTurnId) {
659
- return compactionCut(filterEntriesToActivePath(entries, activeLeafTurnId)).visible;
660
- }
661
-
662
683
  export {
684
+ projectWorkingSet,
663
685
  estimateTokens,
664
686
  getLastAssistantUsage,
665
687
  calculateContextTokens,
666
688
  findCutPoint,
667
689
  DEFAULT_RESERVE_TOKENS,
668
690
  DEFAULT_KEEP_RECENT_TOKENS,
669
- projectWorkingSet,
670
691
  tokensFreedByEviction,
671
692
  planEviction,
672
693
  buildEvictionFields,
673
694
  isProtected,
674
- resolveWorkingSetPolicy,
675
- compactionCut,
676
- selectVisibleEntries
695
+ resolveWorkingSetPolicy
677
696
  };
678
- //# sourceMappingURL=chunk-ZA4VCIGV.js.map
697
+ //# sourceMappingURL=chunk-UUQ5G6EZ.js.map
@@ -4,36 +4,37 @@ import {
4
4
  listChecks,
5
5
  runProjectCheck,
6
6
  runScriptCheck
7
- } from "./chunk-K6T2ZAMZ.js";
7
+ } from "./chunk-HGSLRG33.js";
8
8
  import {
9
9
  BROWSER_MODES,
10
10
  prepareVerifyArguments,
11
11
  verifyToolSurface
12
- } from "./chunk-GX5WYQO4.js";
12
+ } from "./chunk-GXCCHKN6.js";
13
13
  import {
14
- escapeRegExp
15
- } from "./chunk-VG7TBQIY.js";
14
+ prepareBoundedImage
15
+ } from "./chunk-YGDMBK7O.js";
16
16
  import {
17
+ escapeRegExp,
17
18
  resolveReadPath
18
- } from "./chunk-OQE5J4C6.js";
19
+ } from "./chunk-V552WL53.js";
19
20
  import {
20
21
  maxOutputArg,
21
22
  timeoutArg
22
- } from "./chunk-BJVFZO5U.js";
23
+ } from "./chunk-WJIMKGD6.js";
23
24
  import {
24
25
  VERIFICATION_SCRIPT_FAMILY_HINT,
25
26
  isVerificationScriptName
26
- } from "./chunk-UL3WSD3F.js";
27
+ } from "./chunk-M4KFUXS7.js";
27
28
  import {
28
29
  truncateUtf8
29
- } from "./chunk-6XLNIQDB.js";
30
+ } from "./chunk-MYI32N4R.js";
30
31
  import {
31
32
  combineSafeOutput,
32
33
  runCommandVector
33
- } from "./chunk-TOIVGRUX.js";
34
+ } from "./chunk-GJ24ODAX.js";
34
35
  import {
35
36
  init_esm_shims
36
- } from "./chunk-3R73A4XB.js";
37
+ } from "./chunk-ECBHH7LU.js";
37
38
 
38
39
  // src/tools/verify/index.ts
39
40
  init_esm_shims();
@@ -105,7 +106,10 @@ async function runFrontendCheck(args, options) {
105
106
  const browserMode = browserModeArg(args.browser);
106
107
  const validateOptions = {
107
108
  timeoutMs: timeoutArg(args),
108
- maxOutputBytes: maxOutputArg(args)
109
+ maxOutputBytes: maxOutputArg(args),
110
+ supportsImages: options?.supportsImages === true,
111
+ imageMaxBytes: Math.min(maxOutputArg(args), options?.toolResultMaxBytes ?? 5e4) - 4096,
112
+ images: []
109
113
  };
110
114
  if (options?.signal !== void 0) validateOptions.signal = options.signal;
111
115
  const checks = [];
@@ -130,7 +134,7 @@ ${output}`,
130
134
  details
131
135
  };
132
136
  }
133
- return { kind: "ok", output, details };
137
+ return { kind: "ok", output, details, ...validateOptions.images?.length ? { images: validateOptions.images } : {} };
134
138
  }
135
139
  async function validateArtifact(artifactPath, checks, browserMode, options) {
136
140
  const ext = path.extname(artifactPath).toLowerCase();
@@ -488,38 +492,63 @@ async function validateBrowserLoad(artifactPath, browserMode, checks, options) {
488
492
  });
489
493
  return;
490
494
  }
491
- const result = await runCommandVector(
492
- browser,
493
- [
494
- "--headless=new",
495
- "--disable-gpu",
496
- "--no-sandbox",
497
- "--disable-dev-shm-usage",
498
- "--dump-dom",
499
- pathToFileURL(artifactPath).href
500
- ],
501
- {
502
- timeoutMs: options.timeoutMs,
503
- maxOutputBytes: options.maxOutputBytes,
504
- ...options.signal !== void 0 ? { signal: options.signal } : {}
495
+ const dir = mkdtempSync(path.join(tmpdir(), "clio-coder-browser-check-"));
496
+ const screenshot = path.join(dir, "loaded.png");
497
+ try {
498
+ const result = await runCommandVector(
499
+ browser,
500
+ [
501
+ "--headless=new",
502
+ "--disable-gpu",
503
+ "--no-sandbox",
504
+ "--disable-dev-shm-usage",
505
+ `--user-data-dir=${path.join(dir, "profile")}`,
506
+ `--screenshot=${screenshot}`,
507
+ pathToFileURL(artifactPath).href
508
+ ],
509
+ {
510
+ timeoutMs: options.timeoutMs,
511
+ maxOutputBytes: options.maxOutputBytes,
512
+ ...options.signal !== void 0 ? { signal: options.signal } : {}
513
+ }
514
+ );
515
+ let failure;
516
+ if (result.aborted) failure = "headless browser aborted";
517
+ else if (result.timedOut) failure = `headless browser timed out after ${options.timeoutMs}ms`;
518
+ else if (result.outputCapped) failure = `headless browser output exceeded ${options.maxOutputBytes} bytes`;
519
+ else if (result.exitCode !== 0) {
520
+ failure = `headless browser exited with ${result.exitCode ?? result.signal ?? "unknown"}`;
521
+ } else if (!existsSync(screenshot) || !statSync(screenshot).isFile() || statSync(screenshot).size === 0) {
522
+ failure = "headless browser exited without a rendered screenshot";
523
+ } else {
524
+ if (options.supportsImages) {
525
+ const image = await prepareBoundedImage(readFileSync(screenshot), options.imageMaxBytes ?? 0);
526
+ if (image) options.images?.push(image);
527
+ else
528
+ checks.push({
529
+ name: "browser image",
530
+ status: "warn",
531
+ message: "Screenshot omitted: could not encode within the tool result byte cap."
532
+ });
533
+ }
534
+ checks.push({
535
+ name: "browser load",
536
+ status: "pass",
537
+ message: `loaded and rendered with ${path.basename(browser)}`,
538
+ path: artifactPath
539
+ });
540
+ return;
505
541
  }
506
- );
507
- if (result.exitCode === 0 && !result.timedOut && !result.aborted && !result.outputCapped) {
542
+ const output = truncateUtf8(combineSafeOutput(result).trim(), 800, " [truncated]");
508
543
  checks.push({
509
544
  name: "browser load",
510
- status: "pass",
511
- message: `loaded with ${path.basename(browser)}`,
545
+ status: "fail",
546
+ message: `${failure}${output ? `: ${output}` : ""}`,
512
547
  path: artifactPath
513
548
  });
514
- return;
549
+ } finally {
550
+ rmSync(dir, { recursive: true, force: true });
515
551
  }
516
- const output = truncateUtf8(combineSafeOutput(result).trim(), 800, " [truncated]");
517
- checks.push({
518
- name: "browser load",
519
- status: "fail",
520
- message: `headless browser exited with ${result.exitCode ?? result.signal ?? "unknown"}${output ? `: ${output}` : ""}`,
521
- path: artifactPath
522
- });
523
552
  }
524
553
  function parseAttributes(source) {
525
554
  const attrs = {};
@@ -636,4 +665,4 @@ var verifyTool = {
636
665
  export {
637
666
  verifyTool
638
667
  };
639
- //# sourceMappingURL=chunk-23L32XTI.js.map
668
+ //# sourceMappingURL=chunk-UXAC2FX4.js.map
@@ -1,15 +1,75 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
- toPosixPath
4
- } from "./chunk-OQE5J4C6.js";
3
+ canonicalizeExistingPath
4
+ } from "./chunk-KQ6IDQIB.js";
5
5
  import {
6
6
  init_esm_shims
7
- } from "./chunk-3R73A4XB.js";
7
+ } from "./chunk-ECBHH7LU.js";
8
8
 
9
9
  // src/tools/ignore-policy.ts
10
10
  init_esm_shims();
11
11
  import { existsSync } from "node:fs";
12
12
  import { dirname, join } from "node:path";
13
+
14
+ // src/tools/path-utils.ts
15
+ init_esm_shims();
16
+ import { accessSync, constants } from "node:fs";
17
+ import { homedir } from "node:os";
18
+ import { isAbsolute, resolve as resolvePath, sep } from "node:path";
19
+ function toPosixPath(value) {
20
+ return value.split(sep).join("/");
21
+ }
22
+ var UNICODE_SPACES = /[\u00A0\u2000-\u200A\u202F\u205F\u3000]/g;
23
+ var NARROW_NO_BREAK_SPACE = "\u202F";
24
+ function normalizeUnicodeSpaces(value) {
25
+ return value.replace(UNICODE_SPACES, " ");
26
+ }
27
+ function fileExists(filePath) {
28
+ try {
29
+ accessSync(filePath, constants.F_OK);
30
+ return true;
31
+ } catch {
32
+ return false;
33
+ }
34
+ }
35
+ function normalizeAtPrefix(filePath) {
36
+ return filePath.startsWith("@") ? filePath.slice(1) : filePath;
37
+ }
38
+ function tryMacOSScreenshotPath(filePath) {
39
+ return filePath.replace(/ (AM|PM)\./gi, `${NARROW_NO_BREAK_SPACE}$1.`);
40
+ }
41
+ function tryNfdVariant(filePath) {
42
+ return filePath.normalize("NFD");
43
+ }
44
+ function tryCurlyQuoteVariant(filePath) {
45
+ return filePath.replace(/'/g, "\u2019");
46
+ }
47
+ function expandPath(filePath) {
48
+ const normalized = normalizeUnicodeSpaces(normalizeAtPrefix(filePath));
49
+ if (normalized === "~") return homedir();
50
+ if (normalized.startsWith("~/")) return homedir() + normalized.slice(1);
51
+ return normalized;
52
+ }
53
+ function resolveToCwd(filePath, cwd = process.cwd()) {
54
+ const expanded = expandPath(filePath);
55
+ const resolved = isAbsolute(expanded) ? resolvePath(expanded) : resolvePath(cwd, expanded);
56
+ return canonicalizeExistingPath(resolved);
57
+ }
58
+ function resolveReadPath(filePath, cwd = process.cwd()) {
59
+ const resolved = resolveToCwd(filePath, cwd);
60
+ if (fileExists(resolved)) return resolved;
61
+ const amPmVariant = tryMacOSScreenshotPath(resolved);
62
+ if (amPmVariant !== resolved && fileExists(amPmVariant)) return amPmVariant;
63
+ const nfdVariant = tryNfdVariant(resolved);
64
+ if (nfdVariant !== resolved && fileExists(nfdVariant)) return nfdVariant;
65
+ const curlyVariant = tryCurlyQuoteVariant(resolved);
66
+ if (curlyVariant !== resolved && fileExists(curlyVariant)) return curlyVariant;
67
+ const nfdCurlyVariant = tryCurlyQuoteVariant(nfdVariant);
68
+ if (nfdCurlyVariant !== resolved && fileExists(nfdCurlyVariant)) return nfdCurlyVariant;
69
+ return resolved;
70
+ }
71
+
72
+ // src/tools/ignore-policy.ts
13
73
  var ALWAYS_EXCLUDED_DIRS = [".clio-coder", ".fallow", ".git"];
14
74
  var GENERATED_DIRS = [
15
75
  ".cache",
@@ -118,6 +178,10 @@ function compileGlobRegex(pattern) {
118
178
  }
119
179
 
120
180
  export {
181
+ toPosixPath,
182
+ expandPath,
183
+ resolveToCwd,
184
+ resolveReadPath,
121
185
  rgIgnoreArgs,
122
186
  fdIgnoreArgs,
123
187
  fallbackIgnoredDirs,
@@ -125,4 +189,4 @@ export {
125
189
  normalizeGlobInput,
126
190
  compileGlobRegex
127
191
  };
128
- //# sourceMappingURL=chunk-VG7TBQIY.js.map
192
+ //# sourceMappingURL=chunk-V552WL53.js.map