@testmuai/kane-cli 0.7.1 → 0.7.2

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 (258) hide show
  1. package/dist/ChatSurface-E7QKI4LA.js +8 -0
  2. package/dist/{ChromeProfilePicker-4CDSPBWL.js → ChromeProfilePicker-DGDWGCZD.js} +1 -1
  3. package/dist/{CliFeedbackPrompt-TLRVBA4E.js → CliFeedbackPrompt-SYCZXSME.js} +1 -1
  4. package/dist/{CliUploadProgress-WGGFLUSF.js → CliUploadProgress-VDEAKXJY.js} +1 -1
  5. package/dist/{ConfigView-DBANTBXC.js → ConfigView-HPKRQXMC.js} +1 -1
  6. package/dist/EvidenceViewOffer-F5YG54OC.js +2 -0
  7. package/dist/{FolderPicker-W7RCIFEL.js → FolderPicker-4NSDXQY5.js} +1 -1
  8. package/dist/{HelpView-FBCX32U7.js → HelpView-ON6BFGJM.js} +1 -1
  9. package/dist/{InfoBox-KK2ICVS4.js → InfoBox-B23NZ6IG.js} +1 -1
  10. package/dist/{LinksBox-KKRANMR3.js → LinksBox-TI26VFFH.js} +1 -1
  11. package/dist/{ProfilesView-DGPXSAQN.js → ProfilesView-CRO5AH3H.js} +1 -1
  12. package/dist/{ProjectPicker-ESQSL4TT.js → ProjectPicker-3N7LJOXU.js} +1 -1
  13. package/dist/{SaveSessionPrompt-AQGP5W6E.js → SaveSessionPrompt-UTOEC5AW.js} +1 -1
  14. package/dist/SingleShotApp-Y3YDFQSD.js +2 -0
  15. package/dist/{SummaryBox-BFZJW2KK.js → SummaryBox-JK64EKC2.js} +1 -1
  16. package/dist/TestMdRunView-O6JTHV5W.js +2 -0
  17. package/dist/{WhoamiView-JABY3I5Q.js → WhoamiView-6QSLPNF6.js} +1 -1
  18. package/dist/{auth-76LVI6B5.js → auth-IKFVW3NX.js} +1 -1
  19. package/dist/bind-KCUSVJXG.js +12 -0
  20. package/dist/bootstrap-NFYYRGGR.js +2 -0
  21. package/dist/bridge-JSKEO4N3.js +2 -0
  22. package/dist/{changelog-PSWPPOAF.js → changelog-AAH2ZBYO.js} +1 -1
  23. package/dist/chat-committer-UUC6JTRJ.js +2 -0
  24. package/dist/chat-controller-T2FAI55V.js +2 -0
  25. package/dist/{chunk-NAE7MBR2.js → chunk-23VPUWBD.js} +3 -3
  26. package/dist/chunk-2UIHS2FH.js +2 -0
  27. package/dist/chunk-2WFZIQ62.js +2 -0
  28. package/dist/chunk-2WRBTLFN.js +13 -0
  29. package/dist/chunk-2YEHV2CX.js +2 -0
  30. package/dist/{chunk-KVQOBPAZ.js → chunk-3Q6WAK6P.js} +1 -1
  31. package/dist/{chunk-6HEGD6H2.js → chunk-4LTXE3IX.js} +1 -1
  32. package/dist/{chunk-KT6G7AF2.js → chunk-4NFCAGRK.js} +1 -1
  33. package/dist/chunk-53IBTIL3.js +12 -0
  34. package/dist/{chunk-FCMLIK7P.js → chunk-5DBK6QNS.js} +1 -1
  35. package/dist/chunk-5DT7PIGB.js +5 -0
  36. package/dist/{chunk-XDHZMCTA.js → chunk-5FJJJNJK.js} +2 -2
  37. package/dist/{chunk-XVDJ423L.js → chunk-5SXMV66P.js} +1 -1
  38. package/dist/{chunk-6UJDOAYR.js → chunk-5WXGMXGA.js} +2 -2
  39. package/dist/chunk-5ZQZOVWY.js +4 -0
  40. package/dist/{chunk-5KFS3GAZ.js → chunk-6KPPGMO2.js} +1 -1
  41. package/dist/{chunk-RNSSM2BK.js → chunk-74HTO7K3.js} +1 -1
  42. package/dist/{chunk-PMHJRT3A.js → chunk-7KORP5FF.js} +1 -1
  43. package/dist/chunk-7OYZR6JA.js +3 -0
  44. package/dist/chunk-7QJ75SYR.js +8 -0
  45. package/dist/{chunk-DXV6MBTD.js → chunk-AECMF3T2.js} +1 -1
  46. package/dist/{chunk-3LWTUMDG.js → chunk-AFBKGZFG.js} +1 -1
  47. package/dist/{chunk-AM5S4KG4.js → chunk-AFPHLUQ5.js} +1 -1
  48. package/dist/chunk-AJ56AMT6.js +9 -0
  49. package/dist/{chunk-NJPTOKW5.js → chunk-APPYQZFK.js} +1 -1
  50. package/dist/{chunk-CSQ46PJ7.js → chunk-AXTGYOMK.js} +1 -1
  51. package/dist/{chunk-HPMS5KO6.js → chunk-B5RS2XZU.js} +2 -2
  52. package/dist/chunk-BKHXPBWN.js +2 -0
  53. package/dist/{chunk-SRDHPKJT.js → chunk-BXYWX4J3.js} +1 -1
  54. package/dist/chunk-C3T7TKAC.js +349 -0
  55. package/dist/{chunk-JEUA4UWK.js → chunk-CLGC7VEO.js} +1 -1
  56. package/dist/{chunk-L4JIMNKW.js → chunk-CUM23TLF.js} +1 -1
  57. package/dist/chunk-DBIBROYW.js +5 -0
  58. package/dist/chunk-DBKNJRJG.js +2 -0
  59. package/dist/{chunk-M7WQM4UA.js → chunk-DUAXZYAD.js} +1 -1
  60. package/dist/chunk-DZPGG4S6.js +7 -0
  61. package/dist/{chunk-2KBD6JZX.js → chunk-EOLFTMWF.js} +1 -1
  62. package/dist/{chunk-2XGDWUJ5.js → chunk-F7ISS545.js} +1 -1
  63. package/dist/{chunk-JKTFTF24.js → chunk-FBHRBFHP.js} +1 -1
  64. package/dist/{chunk-L7VREJTG.js → chunk-FDIPQRX4.js} +1 -1
  65. package/dist/{chunk-AAONIIQV.js → chunk-GFKCTYCA.js} +1 -1
  66. package/dist/{chunk-73C4PRYU.js → chunk-GYNTNKNB.js} +1 -1
  67. package/dist/{chunk-KNDSQ4PS.js → chunk-H32GM5G4.js} +1 -1
  68. package/dist/{chunk-323MLBYA.js → chunk-HYSFJSIG.js} +1 -1
  69. package/dist/chunk-I7TIGB7K.js +2 -0
  70. package/dist/chunk-IDX3TOPY.js +6 -0
  71. package/dist/{chunk-CVOGP253.js → chunk-IMR64OCZ.js} +1 -1
  72. package/dist/{chunk-IBNC444G.js → chunk-IOD3HQVW.js} +1 -1
  73. package/dist/{chunk-URQUQWGW.js → chunk-J5FBU425.js} +40 -40
  74. package/dist/chunk-JKM2PUHI.js +4 -0
  75. package/dist/{chunk-ZM5PVRJK.js → chunk-JPWLGHPM.js} +1 -1
  76. package/dist/{chunk-5JTUL6XL.js → chunk-JZ26R6UL.js} +1 -1
  77. package/dist/chunk-KBM3XHAM.js +2 -0
  78. package/dist/{chunk-SY3HLQMV.js → chunk-KCCSWEGA.js} +1 -1
  79. package/dist/{chunk-APAIWBIH.js → chunk-KQZA2QSC.js} +1 -1
  80. package/dist/{chunk-X3ICV5M5.js → chunk-KWIK22R6.js} +1 -1
  81. package/dist/{chunk-33QXD75Y.js → chunk-M6FKJKC6.js} +2 -2
  82. package/dist/{chunk-IXVOXJP6.js → chunk-MK7JUOYV.js} +1 -1
  83. package/dist/chunk-N2P4MI32.js +2 -0
  84. package/dist/{chunk-JRMDGLLT.js → chunk-O75ZHGJG.js} +1 -1
  85. package/dist/chunk-OR6MCL6Z.js +2 -0
  86. package/dist/chunk-ORQNKZ2Z.js +5 -0
  87. package/dist/{chunk-QROUKGKU.js → chunk-OS4VSIHT.js} +1 -1
  88. package/dist/{chunk-UI7KULSI.js → chunk-OUJQVBUT.js} +3 -3
  89. package/dist/{chunk-UBFKZEX3.js → chunk-PLOWZLG5.js} +1 -1
  90. package/dist/chunk-QIGPXYMF.js +19 -0
  91. package/dist/chunk-QOFZSHSC.js +47 -0
  92. package/dist/{chunk-2XMJ6YAE.js → chunk-R5T4RLF5.js} +1 -1
  93. package/dist/chunk-R7QAS6LZ.js +4 -0
  94. package/dist/{chunk-CDQX6HGJ.js → chunk-RDNFVZEB.js} +1 -1
  95. package/dist/{chunk-NRTHYROA.js → chunk-SFII7HPP.js} +1 -1
  96. package/dist/{chunk-3FN5VJMV.js → chunk-SL6PCVM2.js} +1 -1
  97. package/dist/{chunk-LQZ2BU7Q.js → chunk-STVP2XHO.js} +1 -1
  98. package/dist/chunk-TH47OOBV.js +4 -0
  99. package/dist/{chunk-OHRS3H7Z.js → chunk-TRJUD3XJ.js} +1 -1
  100. package/dist/{chunk-BAL64WSI.js → chunk-UC7MNPIN.js} +1 -1
  101. package/dist/chunk-UD7KKHPW.js +5 -0
  102. package/dist/chunk-VAYBKR76.js +4 -0
  103. package/dist/chunk-VFII6C46.js +2 -0
  104. package/dist/{chunk-R2RGSO4B.js → chunk-VHZ4S57N.js} +1 -1
  105. package/dist/{chunk-WJ5HDEVH.js → chunk-VLWMMOMF.js} +1 -1
  106. package/dist/chunk-VMM4LC4V.js +10 -0
  107. package/dist/{chunk-322JEJEH.js → chunk-VOOPWFHW.js} +1 -1
  108. package/dist/{chunk-4OPQJ7PE.js → chunk-VRLUNZAK.js} +1 -1
  109. package/dist/{chunk-AH7ZZIZY.js → chunk-VRVFPMCR.js} +1 -1
  110. package/dist/{chunk-F6ZOJXYU.js → chunk-VT54ARGE.js} +1 -1
  111. package/dist/{chunk-NBKQT7LJ.js → chunk-VWKVUOXU.js} +1 -1
  112. package/dist/chunk-W4B5LOEX.js +4 -0
  113. package/dist/{chunk-36OC3TFE.js → chunk-W5TTF7GB.js} +2 -2
  114. package/dist/chunk-WXHQYYD5.js +2 -0
  115. package/dist/{chunk-NOCIMJSN.js → chunk-XUS4WKDS.js} +1 -1
  116. package/dist/chunk-XWKUZJCP.js +2 -0
  117. package/dist/chunk-YTHQNN2L.js +3 -0
  118. package/dist/{chunk-V36ATG7A.js → chunk-ZBOWFJB2.js} +2 -2
  119. package/dist/chunk-ZMNJBUAO.js +2 -0
  120. package/dist/{chunk-LR5XO2KD.js → chunk-ZRASQ63J.js} +1 -1
  121. package/dist/{chunk-C4G7RVJ6.js → chunk-ZUGCHQFC.js} +1 -1
  122. package/dist/committer-SWEWEYNX.js +2 -0
  123. package/dist/{config-R3GF2FZA.js → config-CWZV6XPT.js} +1 -1
  124. package/dist/{cover-cmd-TXICWHUU.js → cover-cmd-NWIRJY5Z.js} +1 -1
  125. package/dist/{credentials-XN4ROCQ3.js → credentials-YHTJGKEO.js} +1 -1
  126. package/dist/descriptor-OEUZZCOK.js +2 -0
  127. package/dist/design-committer-VYT6NU3T.js +2 -0
  128. package/dist/dispatch-WVNXB7AD.js +2 -0
  129. package/dist/docx-convert-CHLJUTFH.js +2 -0
  130. package/dist/{dossier-QZV74XOS.js → dossier-KTLTGT2X.js} +1 -1
  131. package/dist/{evidence-V23FPVXQ.js → evidence-IVDNXWPL.js} +1 -1
  132. package/dist/evolve-cmd-XBX4SX5H.js +2 -0
  133. package/dist/{exit-manager-HNFATGSM.js → exit-manager-XZL4KIJU.js} +1 -1
  134. package/dist/explain-UAAQWHYR.js +2 -0
  135. package/dist/{explain-cmd-RZW6QJYM.js → explain-cmd-75MCF2ZV.js} +1 -1
  136. package/dist/{explain-cmd-X7JZLSZZ.js → explain-cmd-IZEHWZV5.js} +1 -1
  137. package/dist/extract-bind-5OWELRME.js +10 -0
  138. package/dist/extract-cmd-ZRYMJ6IC.js +5 -0
  139. package/dist/feeder-C3TOJPKK.js +2 -0
  140. package/dist/{gaps-cmd-BWCRLLBK.js → gaps-cmd-XBRXKXDL.js} +1 -1
  141. package/dist/{gate-YHBPWEM5.js → gate-54BRAE7N.js} +1 -1
  142. package/dist/{generate-headless-BSTDLZZY.js → generate-headless-D6BISWDC.js} +2 -2
  143. package/dist/{headless-io-BL3TEAX5.js → headless-io-66RG5NN5.js} +1 -1
  144. package/dist/identity-ADZ4PAJF.js +2 -0
  145. package/dist/index.js +43 -43
  146. package/dist/ingest-EX72IEQT.js +2 -0
  147. package/dist/ingest-cmd-YTGOICTC.js +2 -0
  148. package/dist/{interactive-bind-43HGDF5K.js → interactive-bind-XSRD36MO.js} +7 -6
  149. package/dist/{lifecycle-cmd-D6TVTYRK.js → lifecycle-cmd-EQSFAZG6.js} +1 -1
  150. package/dist/{list-cmd-XCAV2FKA.js → list-cmd-IRJSUCM5.js} +1 -1
  151. package/dist/{list-commands-747UTUSS.js → list-commands-RCYHJ5Y3.js} +1 -1
  152. package/dist/locks-cmd-CSVSWY2Y.js +2 -0
  153. package/dist/logical-ids-TEBCQJGO.js +2 -0
  154. package/dist/login-flow-PYAPYCPY.js +2 -0
  155. package/dist/maintenance-cmd-MVFA6H74.js +2 -0
  156. package/dist/pdf-convert-OZIRUADA.js +2 -0
  157. package/dist/{persist-recorded-session-MDPWWUA7.js → persist-recorded-session-DTYCLXTQ.js} +1 -1
  158. package/dist/phase-seed-DIRETNU6.js +2 -0
  159. package/dist/pipeline-MXFOD6ES.js +2 -0
  160. package/dist/readmodel-XOYGGQ3S.js +2 -0
  161. package/dist/reconcile-cmd-EG6BOU3A.js +2 -0
  162. package/dist/reconcile-deps-HTT6IPHT.js +4 -0
  163. package/dist/reconcile-engine-JQNXALNY.js +2 -0
  164. package/dist/{recording-banner-TALO7PUR.js → recording-banner-76GCIPUN.js} +1 -1
  165. package/dist/records-IOZTZUZV.js +2 -0
  166. package/dist/{require-project-folder-R347LFDQ.js → require-project-folder-ACRDP5ZB.js} +1 -1
  167. package/dist/{resolver-IDCGRPFJ.js → resolver-SRPCFW7P.js} +1 -1
  168. package/dist/revert-NQ7GEVSE.js +2 -0
  169. package/dist/review-cmd-L3V5UP5T.js +4 -0
  170. package/dist/run-GMZCDRDD.js +2 -0
  171. package/dist/run-TFRWPGXP.js +2 -0
  172. package/dist/run-channel-RGH4WIQX.js +2 -0
  173. package/dist/{run-test-md-DFNIGYB7.js → run-test-md-KEHSRMCM.js} +2 -2
  174. package/dist/sessions-GIEXOCE4.js +2 -0
  175. package/dist/{sessions-cmd-AQWLL5ZN.js → sessions-cmd-ZVYGSRJ3.js} +4 -4
  176. package/dist/{skill-installer-ANXTCXQV.js → skill-installer-HBN3A35K.js} +1 -1
  177. package/dist/spawner-GC5CFAJ7.js +2 -0
  178. package/dist/structured-answers-A43Q25CZ.js +5 -0
  179. package/dist/tcg-generate-V7YFNC5O.js +2 -0
  180. package/dist/testmd-actions-MNDOO76O.js +2 -0
  181. package/dist/token-refresh-3UYMCYG3.js +2 -0
  182. package/dist/{validate-basic-O2DP2XJL.js → validate-basic-ZGWPBYB6.js} +1 -1
  183. package/dist/verdicts-SCETLY5J.js +2 -0
  184. package/dist/{version-check-RNR3JCQ5.js → version-check-CJWKDAXV.js} +1 -1
  185. package/dist/{view-cmd-YSEGA5PI.js → view-cmd-SOVM64L2.js} +1 -1
  186. package/dist/walk-session-YUYRULPY.js +2 -0
  187. package/dist/with-telemetry-E7QWPGL6.js +2 -0
  188. package/package.json +6 -6
  189. package/dist/ChatSurface-D66CACLX.js +0 -8
  190. package/dist/EvidenceViewOffer-DNCQ3A6R.js +0 -2
  191. package/dist/SingleShotApp-SMCAIKCE.js +0 -2
  192. package/dist/TestMdRunView-FMKZJ3A3.js +0 -2
  193. package/dist/bind-AACBTSAA.js +0 -12
  194. package/dist/bootstrap-CNOZ5VRB.js +0 -2
  195. package/dist/bridge-T4HL4TG7.js +0 -2
  196. package/dist/chat-committer-4BQBOKI4.js +0 -2
  197. package/dist/chat-controller-NNTMKEPG.js +0 -2
  198. package/dist/chunk-2SREGETM.js +0 -4
  199. package/dist/chunk-3STZLM5J.js +0 -4
  200. package/dist/chunk-5YPBPZUR.js +0 -2
  201. package/dist/chunk-BQHKBOSF.js +0 -11
  202. package/dist/chunk-DQ54MH7F.js +0 -13
  203. package/dist/chunk-EV3EHXEI.js +0 -4
  204. package/dist/chunk-F7WKDMX7.js +0 -47
  205. package/dist/chunk-FPFOW6BS.js +0 -2
  206. package/dist/chunk-GVIPTX6T.js +0 -6
  207. package/dist/chunk-GW5DWAXY.js +0 -2
  208. package/dist/chunk-HJERKSBK.js +0 -349
  209. package/dist/chunk-IQDWBTRJ.js +0 -3
  210. package/dist/chunk-KRXSXQBU.js +0 -12
  211. package/dist/chunk-NAC7SFBE.js +0 -5
  212. package/dist/chunk-NRC2G4Y5.js +0 -5
  213. package/dist/chunk-O56PUUNL.js +0 -9
  214. package/dist/chunk-QM4S2APK.js +0 -2
  215. package/dist/chunk-SE6WNCYU.js +0 -4
  216. package/dist/chunk-SWESH2J7.js +0 -10
  217. package/dist/chunk-T63R6QT4.js +0 -4
  218. package/dist/chunk-UPPEOQJQ.js +0 -3
  219. package/dist/chunk-UX2B7L6K.js +0 -2
  220. package/dist/chunk-VOHQA2SP.js +0 -2
  221. package/dist/chunk-W5DOU2DV.js +0 -2
  222. package/dist/chunk-W6VD2XFO.js +0 -19
  223. package/dist/chunk-WWNSD6FA.js +0 -6
  224. package/dist/chunk-ZLCZDAEX.js +0 -6
  225. package/dist/committer-2EJPVVCQ.js +0 -2
  226. package/dist/descriptor-KXDJ4XYD.js +0 -2
  227. package/dist/design-committer-BQUWD6AC.js +0 -2
  228. package/dist/docx-convert-ZBVQO2LG.js +0 -2
  229. package/dist/evolve-cmd-PZCPXDMR.js +0 -2
  230. package/dist/explain-UE4IACQH.js +0 -2
  231. package/dist/extract-bind-BFY7IRL4.js +0 -10
  232. package/dist/extract-cmd-U3MGK2LP.js +0 -6
  233. package/dist/feeder-XGTFV7TZ.js +0 -2
  234. package/dist/ingest-AL6CABJT.js +0 -2
  235. package/dist/ingest-cmd-O6OWWZT4.js +0 -2
  236. package/dist/locks-cmd-QAULI5LV.js +0 -2
  237. package/dist/logical-ids-4G4FAHNJ.js +0 -2
  238. package/dist/login-flow-CV76ENHV.js +0 -2
  239. package/dist/maintenance-cmd-ZRB4NTGG.js +0 -2
  240. package/dist/pdf-convert-S7VYE6AV.js +0 -2
  241. package/dist/phase-seed-52LRE3LH.js +0 -2
  242. package/dist/pipeline-LM5JAK7F.js +0 -2
  243. package/dist/readmodel-X7L7W2BA.js +0 -2
  244. package/dist/reconcile-cmd-DGCSDML6.js +0 -2
  245. package/dist/records-5SVUXJBW.js +0 -2
  246. package/dist/revert-DXXYXJGN.js +0 -2
  247. package/dist/review-cmd-2QF5HTI7.js +0 -4
  248. package/dist/run-52UIBPXD.js +0 -2
  249. package/dist/run-VRVH4VO3.js +0 -2
  250. package/dist/sessions-BLXZVK5U.js +0 -2
  251. package/dist/spawner-AH5FTUYU.js +0 -2
  252. package/dist/structured-answers-QHFGZPSS.js +0 -5
  253. package/dist/tcg-generate-WKCBBKI5.js +0 -2
  254. package/dist/testmd-actions-RPYG6TJG.js +0 -2
  255. package/dist/token-refresh-NIDUOTRM.js +0 -2
  256. package/dist/verdicts-TJH3O5UW.js +0 -2
  257. package/dist/walk-session-HXW4OSA2.js +0 -2
  258. package/dist/with-telemetry-PNP6CAVM.js +0 -2
@@ -1,5 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a as M,b as B,c as oe,d as A}from"./chunk-2YQ6TW77.js";import{b as z}from"./chunk-CJJXT5DO.js";import{a as F}from"./chunk-WAOCHXJ5.js";import{a as U}from"./chunk-2WVKOZ6W.js";import{a as j}from"./chunk-NLCCBXXV.js";import{a as O}from"./chunk-RZ4F3BHX.js";import{e as se}from"./chunk-UR6MHSHU.js";import{readFileSync as te,existsSync as C,readdirSync as Re,mkdirSync as D,writeFileSync as x}from"fs";import{readFile as ie,unlink as Ae}from"fs/promises";import{join as E}from"path";import{randomUUID as P}from"crypto";var re="/home/kaneai/Downloads";function N(t){return`${re}/${t}`}function $(t){return"FILE__"+t.replace(/[^A-Za-z0-9]/g,"_")}function S(t){let e=t?.media;return!e||!e.name||!e.media_url?null:{media_id:e.media_id??"",name:e.name,media_url:e.media_url,type:e.type??"doc"}}function K(t){return t?t.includes(`
3
- `)?t.split(`
4
- `).map(e=>e.trim()).filter(Boolean):t.split(". ").map(e=>e.trim()).filter(Boolean).map(e=>e.endsWith(".")?e:e+"."):[]}function L(t,e){return!t||!e?t:t.replace(/\{\{(.+?)\}\}/g,(i,n)=>{let s=e[n];return s?s.value:i}).replace(/\$\{(.+?)\}/g,(i,n)=>{let s=e[n];return s?s.value:i})}var ae={click:"CLICK",double_click:"CLICK",type:"TYPE",fill:"TYPE",select:"SELECT",hover:"HOVER",drag:"DRAG_DROP",upload_files:"UPLOAD_FILE",navigate:"OPEN",go_back:"NAVIGATE",go_forward:"NAVIGATE",refresh:"REFRESH",press_key:"SENDKEYS",scroll:"SCROLL_PIXELS",scroll_into_view:"SCROLL_UNTIL_ELEMENT",wait:"WAIT",wait_until:"WAIT_UNTIL",wait_for_load:"WAIT_FOR_LOAD",switch_tab:"SWITCH_TAB",new_tab:"NEW_TAB",close_tab:"CLOSE_TAB",api:"API",evaluate_js:"EVALUATE_JS",vision_query:"VISION_QUERY",textual_query:"TEXTUAL_QUERY",get_url:"GET_URL",get_title:"GET_TITLE",assert:"ASSERTION",math:"MATHEMATICAL_OPERATION",set_cookies:"SET_COOKIES",delete_cookies:"DELETE_COOKIES",clear_cookies:"CLEAR_COOKIES",set_local_storage:"SET_LOCAL_STORAGE",delete_local_storage:"DELETE_LOCAL_STORAGE",clear_local_storage:"CLEAR_LOCAL_STORAGE",set_clipboard:"SET_CLIPBOARD",paste_clipboard:"PASTE_CLIPBOARD",clear_clipboard:"CLEAR_CLIPBOARD"},G={literal:"SET_VARIABLE",condition:"SET_VARIABLE",visual:"VISION_QUERY",dom:"TEXTUAL_QUERY",url:"GET_URL",title:"GET_TITLE",devtool_network:"DEVTOOLS_NETWORK_QUERY",devtool_console:"DEVTOOLS_CONSOLE_QUERY",devtool_cookies:"DEVTOOLS_COOKIES_QUERY",devtool_storage:"DEVTOOLS_STORAGE_QUERY",devtool_performance:"DEVTOOLS_PERFORMANCE",api_response:"API_CALLS_QUERY",textual_visual:"TEXTUAL_ANALYZER"},le=new Set(["CLICK","TYPE","FILL","HOVER","SCROLL_UNTIL_ELEMENT","UPLOAD_FILE","VISION_QUERY","DRAG_DROP","SELECT"]);function X(t,e){if(t==="analyze"){let n=e?.action_params?.analyzer_type??"";return G[n]}let i=ae[t];return i||console.warn(`[migrator] UNKNOWN action_type "${t}" \u2014 falling back to "${t.toUpperCase()}"; explicit mapping required`),i??t.toUpperCase()}function Y(t,e){if(!t||!e)return"";try{let i=new Date(t);return isNaN(i.getTime())?"":new Date(i.getTime()+e).toISOString()}catch{return""}}function H(t){try{return JSON.parse(t.output_value??"{}")}catch{return{}}}function ce(t){let e=t.output_variable??"";if(!e)return"[]";let n={...H(t)};return delete n.body,JSON.stringify([{name:e,unique_key:(t.action_id??"").replace(/-/g,"").slice(0,8)||P().replace(/-/g,"").slice(0,8),value:n,variable_description:"API Response"}])}function ue(t,e,i){let n=t.action_params??{},s=le.has(e)?"Vision Agent":"Operation Agent",a={operation_type:e};if(e==="OPEN"&&(a.url=n.url??""),e==="SET_VARIABLE"&&(a.variable_name=t.output_variable??n.key??"",a.variable_value=t.output_value??""),e==="UPLOAD_FILE"){let f=S(n);f&&(a.value=N(f.name))}let o={},l={},r=t.action_instruction??"",c=n.text??"",u=n.url??"",p=[["intent",r],["value",c],["url",u]];for(let[f,h]of Object.entries(i)){let b=String(h);if(f.startsWith("secrets."))for(let[I,v]of p)v.includes(b)&&(l[I]=f);for(let[I,v]of p)v.includes(b)&&!(I in o)&&(o[I]=v)}let _=t.action_type,d={operation:t.action_instruction??"",agent:s,operation_dict:a,reasoning:_==="analyze"?n.query??"":t.intent??t.action_instruction??"",variable:o,secrets:l,params:{}};_==="analyze"&&typeof n.code=="string"&&n.code&&(d.code=n.code),_==="analyze"&&typeof n.code_js=="string"&&n.code_js&&(d.code_js=n.code_js),_==="analyze"&&typeof n.condition_expression=="string"&&n.condition_expression&&(d.condition_expression=n.condition_expression),n.uses_websocket===!0&&(d.uses_websocket=!0),n.uses_sse===!0&&(d.uses_sse=!0),_==="analyze"&&n.analyzer_type==="textual_visual"&&(typeof n.wrapped_js=="string"&&(d.wrapped_js=n.wrapped_js),Array.isArray(n.locators)&&(d.locators=n.locators),typeof n.operator=="string"&&(d.operator=n.operator),Array.isArray(n.transforms)&&(d.transforms=n.transforms),typeof n.query=="string"&&(d.query=n.query),typeof n.expected_value=="string"&&(d.expected_value=n.expected_value),typeof n.needs_unit_conversion=="boolean"&&(d.needs_unit_conversion=n.needs_unit_conversion),typeof n.condition=="string"&&(d.condition=n.condition));let m={set_cookies:"cookies",set_clipboard:"text",delete_cookies:"names",set_local_storage:"items",delete_local_storage:"keys"}[_];return m&&n[m]!==void 0&&(d[m]=n[m]),_==="set_clipboard"&&typeof n.html=="string"&&n.html&&(d.html=n.html),d}function de(t){let e=t.assertion_tree??{};if(typeof e.passed=="boolean")return e.passed;let i=e.sub_results??[];return i.length===0?e.status==="passed":(e.composite_operator??"and")==="or"?i.some(s=>s.passed===!0):i.every(s=>s.passed===!0)}function W(t){return t.map(e=>({description:e.description??"",store_key:e.store_key??"",expected_value:e.expected??"",extracted_value:e.extracted_value??"",operator:e.operator??"equals",transforms:e.transforms??[]}))}function _e(t){let e=t.assertion_tree??{},i=e.sub_results??[],n=W(i);return{operator:[],assertion_operands:[],left_operand:null,right_operand:null,operands:[],sub_results:i,sub_checks:n,composite_operator:e.composite_operator??"and",verification:e.verification??"",claim:e.description??""}}function pe(t){let i=(t.action_params??{}).assertion_tree??{},n=i.sub_results??[],s=W(n);return[{operation:t.action_instruction??"",agent:"Operation Agent",operation_dict:{operation_type:"ASSERTION",assertion_tree:{sub_results:n,sub_checks:s,composite_operator:i.composite_operator??"and",verification:"",claim:i.description??t.action_instruction??"",operator:[],assertion_operands:[],left_operand:null,right_operand:null,operands:[]}},variable:{},secrets:{},params:{}}]}function ge(t,e,i,n){let s=t.visual_data;if(!s||s.x==null||s.y==null)return null;let a=e?`${e}/test_screenshots`:"";return{x:s.x,y:s.y,confidence:0,bbox:s.bbox??null,bbox_source:s.bbox?"accessibility_tree":"fallback",viewport_width:s.viewport_width??1280,viewport_height:s.viewport_height??800,scale_factor:null,raw_image_url:a?`${a}/untagged_screenshot/${i}.${n?.get(i)??"png"}`:"",raw_image_sas_url:"",annotated_image_url:"",annotated_image_sas_url:""}}function fe(t){if(!t)return"";let e=t;return typeof t=="object"&&!Array.isArray(t)&&Array.isArray(t.frameInfo)&&(e=t.frameInfo),!Array.isArray(e)||e.length===0?"":JSON.stringify(e)}function V(t,e={},i="",n){let s=t.action_type,a=X(s,t),o=t.action_params??{},l=t.coordinates??null,r=t.selectors??null,c=!!(r&&r.length>0),u=t.timestamp??"",p=t.duration_ms??0,_=t.variables_used??{},d=t.action_id??P(),g=P(),m=Y(u,p),f="",h="";if(s==="navigate")h=o.url??"",f=h;else if(s==="type"||s==="fill")f=o.text??"";else if(s==="press_key")f=o.key??"";else if(s==="wait")f=String(o.ms??o.timeout_ms??"");else if(s==="evaluate_js")f=o.script??"";else if(s==="upload_files"){let y=S(o);y&&(f=N(y.name))}else s==="analyze"&&a==="SET_VARIABLE"&&(f=t.output_value??"");let b="";s==="go_back"?b="back":s==="go_forward"&&(b="forward");let I=L(f,e),v=L(h,e),k=L(t.action_instruction??"",e),R=ue(t,a,_);return{operation_id:d,instruction_id:g,instruction:k,intent:k,operation_start:u,operation_end:m,status:t.status??"",command:a,name:"",target:"",value:I,message:"",operation_dict:"",frame:fe(t.frame_info),error_message:t.error??"",code_snippet:"",sub_instruction_obj:JSON.stringify(R),test_id:"",test_version:"",action:"",string_to_float:!1,feedback_msg:"",time_taken:"",create_time_stamp:"",update_time_stamp:"",locator_variable:"",locator_variable_name:"",image_url:i?`${i}/test_screenshots/untagged_screenshot/${d}.${n?.get(d)??"png"}`:"",alternative_xpaths:[],attribute:"",value_description:"",url:v,navigation_direction:b,tagified_image_url:"",query_variable_name:t.output_variable??"",query_variable_value:t.output_value??"",query_variable_type:"",expected_value:"",queried_value:"",operator:"",assertion_status:a==="ASSERTION"?de(o):"",query_info_dict:{},query_content_confidence:"none",debugging_logs:[],locator_index:0,query_html:"",user_variables:"[]",optional_flag:!1,max_retries:0,retries_delay:0,explicit_wait:0,implicit_wait:0,tab_index:String(o.tab_index??""),tab_identifier:String(o.tab_identifier??""),scroll_value:o.amount??1,scroll_direction:o.direction??"",mi_scroll_payload:{},sleep_duration:0,app_id:"",manual_interaction_tag:"",string_to_float_list:[],js_snippet:s==="evaluate_js"?o.script??"":"",code_error:"",hide:!1,dismiss_dialog:!1,use_v2_mobile_tagging:!1,multiple_inputs:!1,dialog_action:"",dialog_type:"",is_coordinates_used_for_interaction:l!==null&&!c,element_coordinates_ratio:[],element_bounds_ratio:[],x_coord:c?null:l?.x??null,y_coord:c?null:l?.y??null,target_x_coord:o.target_x??null,target_y_coord:o.target_y??null,source_description:o.source_description??null,target_description:o.target_description??null,use_coordinates:l!==null&&!c,kaneaiMobileTaggingImageLimit:1,clicks_order_code:"se_js_ac",selector:c?r.map(y=>({type:y.isXPath?"xpath":"css",...y})):"",selector_target:"",math_result_variable_name:"",math_result_variable_value:"",expression_tree:a==="ASSERTION"?_e(o):o.expression_tree??{},assertion_tree:o.assertion_tree??{},assertion_tree_simplified:{},network_throttle:{},is_mobile_offline:!1,autoheal:!1,db_query:"",db_details:{},db_query_decoded:"",is_global_variable:!1,is_global_variable_persist:!1,global_variable_id:"",wait_for_element_timeout:0,failure_condition:a==="ASSERTION"?"Fail test immediately":"",screenshot_command:"",smartui_contents:{},smartui_results:{},result_type:"",result_hint:"",drag_offset:{},start_coordinates:o.source_coordinates?{x:o.source_coordinates[0],y:o.source_coordinates[1]}:{},end_coordinates:o.target_coordinates?{x:o.target_coordinates[0],y:o.target_coordinates[1]}:{},element_rect:null,is_canvas:!1,until_condition:"",until_max_retries:0,until_settle_ms:0,api_data:s==="api"?{request:t.action_params?.api_data?.request??{}}:{},output_variables:s==="api"?t.output_variable?{[t.output_variable]:null}:{}:t.output_variable?{[t.output_variable]:t.output_value??""}:{},visual_context:ge(t,i,d,n),reasoning:s==="analyze"?o.query??"":t.intent??t.action_instruction??""}}function q(t,e,i={}){let n=t.action_type,s=X(n,t),a=t.timestamp??"",o=t.duration_ms??0,l=Y(a,o),r=s==="ASSERTION"||s==="MATHEMATICAL_OPERATION";return{instruction_id:e.instruction_id,instruction_class:r?"non_driver_action":"driver_action",module_id:"",instruction:L(t.action_instruction??"",i),command:s,error:null,parent_instruction_id:"",classification_layer_resp:s==="ASSERTION"?pe(t):[],classification_error:{},operations:[e],status:t.status??"",start_timestamp:a,end_timestamp:l,type:"agent_generated",tags:[],html_paths:[],optional_flag:!1,max_retries:0,retries_delay:0,explicit_wait:0,implicit_wait:0,content_type:n==="api"?"api":n==="analyze"&&t.action_params?.analyzer_type==="api_response"?"api_calls_query":n==="analyze"&&t.action_params?.analyzer_type?.startsWith("devtool_")?t.action_params.analyzer_type.replace("devtool_","devtools_"):"instruction",js_snippet:n==="evaluate_js"?t.action_params?.script??"":"",user_variables:n==="api"?ce(t):"[]",api_data:n==="api"?{request:t.action_params?.api_data?.request??{},response:H(t)}:{},params_used:!1,hard_assertion:s==="ASSERTION"?t.action_params?.failure_condition==="hard":!1,expected_outcome:"",module_execution_index:0,module_version:null,network_throttle:{},isEdited:!1,use_query_assertion_v2:!1,db_query:"",db_details:{},network_assertion_content:{},screenshot_command:"",smartui_contents:{},generative_id:"",plan_id:"",generative_objective:"",error_message:"",error_code:"",reason:"",title:"",used_variables:[],reasoning:n==="analyze"?t.action_params?.query??"":t.intent??t.action_instruction??""}}function me(t,e=[]){let i=t.action_params??{},n=i.branches??[],s=i.winning_index??-1,a=i.sub_results??[],o={};for(let r of a){let c=r.sub_results;if(c)for(let u of c){let p=u.store_key;p&&(o[p]=u)}}let l=n.map((r,c)=>{let u=c===s,p=(r.sub_checks??[]).map(_=>{let d=o[_.store_key];return{description:_.description,store_key:_.store_key,expected_value:_.expected_value,stored_value:d?.extracted_value??_.stored_value,operator:_.operator??d?.operator??"equals",transforms:_.transforms??d?.transforms??[]}});if(p.length===0&&r.condition&&a.length>0){let d=a.find(g=>g.branch_index===c)?.sub_results??[];d.length>0&&(p=d.map(g=>({description:g.description??r.condition,store_key:g.store_key??"",expected_value:g.expected??"true",stored_value:g.extracted_value??void 0,operator:g.operator??"equals",transforms:g.transforms??[]})))}return{branch_index:c,condition:r.condition??null,branch_type:r.branch_type??"sub_objective",passed:u,sub_objective:null,custom_event:r.custom_event??null,children:u?e:[],sub_checks:r.condition?p:[],composite_operator:r.composite_operator??"and"}});return{content_type:"conditional_block",instruction_id:`if_else_${P().slice(0,8)}`,instruction:t.action_instruction??"",instruction_class:"driver_action",command:"",status:t.status??"success",resolved_branch_index:s,branches:l,generative_id:"",generative_objective:"",variables_used:{},classification_layer_resp:[],classification_error:{},used_variables:[],user_variables:"[]",module_id:"",module_execution_index:0,module_version:"",plan_id:"",optional_flag:!1,max_retries:0,retries_delay:0,explicit_wait:0,implicit_wait:0,error:null,error_message:"",error_code:"",reason:"",start_timestamp:t.timestamp??"",end_timestamp:"",type:"agent_generated",hook:null,hook_type:null,evaluation_context:{},query_variables:{}}}function J(t,e,i){for(let n of t)n.content_type==="instruction"&&"generative_id"in n&&(n.generative_id=e,n.generative_objective=i)}function w(t,e={},i="",n,s){let a=[],o=0;for(;o<t.length;){let l=t[o],r=l.action_type;if(!s?.keepFailedActions&&l.status==="error"&&r!=="assert"&&r!=="if_else"&&r!=="child_agent_start"&&r!=="child_agent_end"&&!(l.until_condition&&!l.error)){o+=1;continue}if(r==="analyze"&&!G[l.action_params?.analyzer_type??""]){o+=1;continue}if(r==="child_agent_start"){let c=l.action_params?.child_id??"",u=l.action_params?.objective??"",p=[];o+=1;let _=1,d="error",g;for(;o<t.length&&_>0;){let R=t[o],y=R.action_type;if(y==="child_agent_start")_+=1;else if(y==="child_agent_end"&&(_-=1,_===0)){d=R.status??"success",g=R,o+=1;break}_>0&&p.push(R),o+=1}let m=w(p,e,i,n);J(m,c,u);let f=g?.action_params?.result_code??null,h=g?.action_params?.reason_code??null,b=g?.action_params?.error_message??null,I=g?.action_params?.summary??null,v=g?.action_params?.one_liner??null,k=d==="error";a.push({content_type:"generative_block",instruction_id:`generative_block_${c}`,generative_id:c,objective:u,status:d,children:m,error_message:k?b??null:null,error_code:k?h??null:null,result_code:f??null,bifurcation_context:[],approach_reason:K(I),one_liner:v??null});continue}else if(r==="child_agent_end"){o+=1;continue}else if(r==="if_else"){o+=1;let c=[];for(;o<t.length&&t[o].action_type==="child_agent_start";){let u=t[o],p=u.action_params?.child_id??"",_=u.action_params?.objective??"",d=[];o+=1;let g=1,m="error";for(;o<t.length&&g>0;){let h=t[o];if(h.action_type==="child_agent_start")g+=1;else if(h.action_type==="child_agent_end"&&(g-=1,g===0)){m=h.status??"success",o+=1;break}g>0&&d.push(h),o+=1}let f=w(d,e,i,n);c.push(...f)}a.push(me(l,c));continue}else if(r==="query_tool"){o+=1;continue}else if(l.until_condition){let c=V(l,e,i,n),u=q(l,c,e),p=typeof l.until_condition_met=="boolean"?l.until_condition_met:l.status==="success";a.push({content_type:"until_block",instruction_id:`until_${P().slice(0,8)}`,condition:l.until_condition,max_retries:l.until_max_retries??10,settle_ms:l.until_settle_ms??500,current_count:0,condition_met:p,children:[u],generative_id:"",generative_objective:"",variables_used:{},status:l.status??"success"})}else{let c=V(l,e,i,n),u=q(l,c,e);a.push(u)}o+=1}return a}function T(t,e={},i="",n,s){let a=[];for(let o of t){let l=w(o.records,e,i,n,s);if(l.length===0)continue;let r=P().replace(/-/g,"");J(l,r,o.objective);let c=l.some(d=>"status"in d&&typeof d.status=="string"?d.status==="error"||d.status==="failed":!1),u=o.resultCode?parseInt(o.resultCode,10):null,p=u!==null&&!isNaN(u)&&u>=200,_=c||p?"error":"success";a.push({content_type:"generative_block",instruction_id:`generative_block_${r}`,generative_id:r,objective:o.objective,status:_,children:l,error_message:_==="error"?o.errorMessage??null:null,error_code:_==="error"?o.reasonCode??null:null,result_code:o.resultCode??null,bifurcation_context:[],approach_reason:K(o.summary),one_liner:o.oneLiner??null})}return{instructions:a}}var Z=se(oe(),1);import{createWriteStream as he}from"fs";import{readFile as Ee}from"fs/promises";import{join as be,basename as Ie}from"path";import{tmpdir as ve}from"os";var ye=["**/screenshots/**","**/annotated/**","**/tcg/**","**/bifurcation/**"];async function Q(t){let e=be(ve(),`${Ie(t)}_artifacts.zip`);return new Promise((i,n)=>{let s=he(e),a=(0,Z.default)("zip",{zlib:{level:6}});s.on("close",()=>i(e)),a.on("error",n),a.pipe(s),a.glob("**/*",{cwd:t,ignore:ye}),a.finalize()})}async function ee(t){return Ee(t)}async function Pe(t,e){return ie(z(t,e))}function ke(t){return{key:"artifacts",content_type:"application/zip",filename:`${t}.evidence`}}var ne=class{config;controller;testId;constructor(e){this.config=e,this.controller=new F(e.controllerBaseUrl,e.auth),this.testId=e.testId}log(e,i,n,s){this.config.log?.(e,i,n,s)}async execute(){let{onProgress:e}=this.config;try{if(!this.testId)return this.log("error","PIPELINE_ABORT","No test_id available"),{success:!1,testId:null,error:"No test_id available"};let i=this.config.evidence,n=null;if(this.config.shouldUploadArtifacts!==!1){e("convert","running");let l=this.collectNdjsonPerRun(),r=l.reduce((m,f)=>m+f.records.length,0);this.log("info","PIPELINE_CONVERT","Collected NDJSON records",{total_records:r,run_groups:l.length});let c=this.config.variables??{};this.log("info","PIPELINE_CONVERT_VARS","Variables for template resolution",{keys:Object.keys(c)});let{instructions:u}=l.length>0?T(l,c,this.config.screenshotBaseUrl??"",this.config.screenshotExtMap):{instructions:[]};this.log("info","PIPELINE_CONVERT_INSTRUCTIONS","Auteur instructions produced",{count:u.length});let p=this.buildExecutionEnvelope(u),_=Buffer.from(JSON.stringify(p));this.log("info","PIPELINE_CONVERT_BLOB","Blob created",{size_kb:+(_.length/1024).toFixed(1)});let d=E(this.config.sessionDir,"execution.json");x(d,JSON.stringify(p,null,2)),this.log("info","PIPELINE_CONVERT_LOCAL_SAVE","Execution blob saved locally",{path:d});let g=i?.packTestDir??this.config.evidenceRead?.packTestDir;if(g){let m=E(g,"auteur");D(m,{recursive:!0}),x(E(m,"execution.json"),JSON.stringify(p,null,2)),this.log("info","PIPELINE_CONVERT_PACK_COPY","Execution blob copied into pack",{path:E(m,"execution.json")})}if(e("convert","done"),i)n=_;else{e("zip","running"),this.log("info","PIPELINE_ZIP_START","Zipping session",{session_dir:this.config.sessionDir});let m=null,f;try{m=await Q(this.config.sessionDir),f=await ee(m),this.log("info","PIPELINE_ZIP_DONE","Zip complete",{size_mb:+(f.length/1024/1024).toFixed(1),path:m}),e("zip","done",`${(f.length/1024/1024).toFixed(1)}MB`)}finally{m&&await Ae(m).catch(()=>{})}e("presign","running"),this.log("info","PIPELINE_PRESIGN_START","Requesting presigned URLs",{url:`${this.config.controllerBaseUrl}/upload/presign`,test_id:this.testId,session_id:this.config.sessionId});let h=await this.controller.getPresignedUrls(this.testId,this.config.sessionId,[{key:"artifacts",content_type:"application/zip",filename:`${this.config.sessionId}_artifacts.zip`},{key:"blob",content_type:"application/json",filename:`${this.config.commitId}.json`}]);this.log("info","PIPELINE_PRESIGN_OK","Presigned URLs received",{artifacts_url:h.urls.artifacts?.blob_url,blob_url:h.urls.blob?.blob_url}),e("presign","done"),e("upload","running"),this.log("info","PIPELINE_UPLOAD_START","Uploading artifacts and blob",{artifact_size_mb:+(f.length/1024/1024).toFixed(1),blob_size_kb:+(_.length/1024).toFixed(1)}),await Promise.all([A(h.urls.artifacts.upload_url,f,"application/zip"),A(h.urls.blob.upload_url,_,"application/json")]),this.log("info","PIPELINE_UPLOAD_OK","Upload complete"),e("upload","done")}}else{let l=this.collectNdjsonPerRun(),r=this.config.variables??{},{instructions:c}=l.length>0?T(l,r,this.config.screenshotBaseUrl??"",this.config.screenshotExtMap,{keepFailedActions:!0}):{instructions:[]},u=this.buildExecutionEnvelope(c),p=E(this.config.sessionDir,"execution.json");x(p,JSON.stringify(u,null,2)),this.log("info","PIPELINE_LOCAL_SAVE","Execution blob saved locally (no upload)",{path:p});let _=this.config.evidence?.packTestDir??this.config.evidenceRead?.packTestDir;if(_){let d=E(_,"auteur");D(d,{recursive:!0});let g=this.readAuthoredExecution();x(E(d,"execution.json"),g??JSON.stringify(u,null,2)),this.log("info","PIPELINE_CONVERT_PACK_COPY","Execution blob copied into pack (gated)",{path:E(d,"execution.json"),source:g?"authored":"run_envelope"})}e("convert","skipped"),e("zip","skipped"),e("presign","skipped"),e("upload","skipped"),this.log("info","PIPELINE_UPLOAD_SKIPPED","Upload steps skipped (gate disabled)")}if(this.config.shouldReplaceLocalOutput&&this.config.onAtomicReplace){e("atomic_replace","running");try{await this.config.onAtomicReplace(),this.log("info","PIPELINE_ATOMIC_REPLACE_OK","Local output replaced"),e("atomic_replace","done")}catch(l){let r=l instanceof Error?l.message:String(l);throw this.log("error","PIPELINE_ATOMIC_REPLACE_FAILED","Atomic-replace failed",{error:r}),e("atomic_replace","failed",r),l}}else e("atomic_replace","skipped");let s,a;if(this.config.shouldCommit&&!this.config.isFirstRun&&this.config.onCommitLock){e("commit_lock","running");let l=await this.config.onCommitLock();if(l.ok)s=l.testcaseId,this.log("info","PIPELINE_COMMIT_LOCK_OK","Commit lock acquired",{testcase_id:s??"none"}),e("commit_lock","done");else return this.log("error","PIPELINE_COMMIT_LOCK_FAILED","Commit lock failed",{reason:l.reason,message:l.message}),e("commit_lock","failed",`${l.reason??"unknown"}: ${l.message??""}`),{success:!1,testId:this.testId,error:`commit-lock failed: ${l.reason??"unknown"}`}}else e("commit_lock","skipped");if(this.config.isFirstRun&&!this.config.skipTmsFinalize){e("finalize","running"),this.log("info","PIPELINE_FINALIZE_START","Finalizing test (first-run)",{test_id:this.testId,commit_id:this.config.commitId});let l=new U(this.config.tmsBaseUrl,this.config.tmsUsername,this.config.tmsAccessKey),r=this.config.runObjectives&&this.config.runObjectives.length>0?this.config.runObjectives:[this.config.firstObjective];if(s=(await l.endTest(this.testId,{commit_id:this.config.commitId,time_taken:Math.round(this.config.totalDuration),steps_count:this.config.totalSteps,commit_message:this.config.firstObjective.slice(0,255),objectives:r})).testcase_id||void 0,this.log("info","PIPELINE_FINALIZE_OK","Test finalized",{testcase_id:s??"none"}),this.config.onFinalizeSuccess)try{await this.config.onFinalizeSuccess(s)}catch(u){this.log("warn","PIPELINE_FINALIZE_META_FAILED","Meta-rewrite after endTest failed",{error:String(u)})}e("finalize","done")}else e("finalize","skipped"),this.log("info","PIPELINE_FINALIZE_SKIPPED","Finalize skipped (evolve flow or first-run disabled)");if(s&&this.config.shareApiBaseUrl)try{a=await this.generateShareLink(s),this.log("info","PIPELINE_SHARE_OK","Share link generated",{share_id:a})}catch(l){this.log("warn","PIPELINE_SHARE_FAILED","Share link failed",{error:String(l)})}if(i&&n){let l=null;e("zip","running");try{await i.sealFn({testcaseId:s,shareId:a}),l=i.sealedPackPath?await ie(i.sealedPackPath):await Pe(i.executionId,i.cwd),this.log("info","PIPELINE_EVIDENCE_SEALED","Evidence pack sealed",{execution_id:i.executionId}),this.log("info","PIPELINE_PACK_READ","Sealed pack read",{size_mb:+(l.length/1024/1024).toFixed(1)})}catch(r){let c=r instanceof Error?r.message:String(r);this.log("warn","PIPELINE_EVIDENCE_UPLOAD_SKIPPED","Evidence seal/read failed \u2014 uploading blob only",{execution_id:i.executionId,error:c})}if(l){e("zip","done",`${(l.length/1024/1024).toFixed(1)}MB`),e("presign","running");let r=await this.controller.getPresignedUrls(this.testId,this.config.sessionId,[ke(i.executionId),{key:"blob",content_type:"application/json",filename:`${this.config.commitId}.json`}]);this.log("info","PIPELINE_PRESIGN_OK","Presigned URLs received",{artifacts_url:r.urls.artifacts?.blob_url,blob_url:r.urls.blob?.blob_url}),e("presign","done"),e("upload","running"),this.log("info","PIPELINE_UPLOAD_START","Uploading pack and blob",{artifact_size_mb:+(l.length/1024/1024).toFixed(1),blob_size_kb:+(n.length/1024).toFixed(1)}),await Promise.all([A(r.urls.artifacts.upload_url,l,"application/zip"),A(r.urls.blob.upload_url,n,"application/json")]),this.log("info","PIPELINE_UPLOAD_OK","Upload complete"),e("upload","done")}else{e("zip","skipped"),e("presign","running");let r=await this.controller.getPresignedUrls(this.testId,this.config.sessionId,[{key:"blob",content_type:"application/json",filename:`${this.config.commitId}.json`}]);e("presign","done"),e("upload","running"),this.log("info","PIPELINE_UPLOAD_START","Uploading blob only (evidence skipped)",{blob_size_kb:+(n.length/1024).toFixed(1)}),await A(r.urls.blob.upload_url,n,"application/json"),this.log("info","PIPELINE_UPLOAD_OK","Blob upload complete (pack skipped)"),e("upload","done")}}let o;if(this.config.codeExport?.enabled&&s){let l=!1;try{await this.triggerCodeExport(s),this.log("info","PIPELINE_CODE_EXPORT_START","Code export triggered"),l=!0}catch(r){let c=r instanceof Error?r.message:String(r);this.log("error","PIPELINE_CODE_EXPORT_FAILED","Code export trigger failed; skipping poll",{error:c}),e("code_export","failed",`trigger failed: ${c}`)}if(l){e("code_export","running","Waiting for code generation\u2026");try{o=await this.pollAndDownloadCode(s,e),this.log("info","PIPELINE_CODE_EXPORT_OK","Code export complete",{dir:o}),e("code_export","done",o)}catch(r){let c=r instanceof Error?r.message:String(r);this.log("error","PIPELINE_CODE_EXPORT_FAILED","Code export failed",{error:c}),e("code_export","failed",c)}}}else e("code_export","skipped");return this.log("info","PIPELINE_COMPLETE","Pipeline complete"),{success:!0,testId:this.testId,testcaseId:s,shareId:a,codeExportDir:o}}catch(i){return{success:!1,testId:this.testId,error:i instanceof Error?i.message:String(i)}}}async runCodeExport(e,i){let n=i??this.config.onProgress,s=!1;try{await this.triggerCodeExport(e),this.log("info","PIPELINE_CODE_EXPORT_TRIGGER","Code export triggered",{testcase_id:e}),s=!0}catch(a){let o=a instanceof Error?a.message:String(a);this.log("error","PIPELINE_CODE_EXPORT_TRIGGER_FAILED","Code export trigger failed; skipping poll",{error:o}),n("code_export","failed",`trigger failed: ${o}`)}if(s){n("code_export","running","Waiting for code generation\u2026");try{let a=await this.pollAndDownloadCode(e,n);return this.log("info","PIPELINE_CODE_EXPORT_OK","Code export complete",{dir:a}),n("code_export","done",a),a}catch(a){let o=a instanceof Error?a.message:String(a);this.log("error","PIPELINE_CODE_EXPORT_FAILED","Code export failed",{error:o}),n("code_export","failed",o);return}}}collectNdjsonPerRun(){let e=[],i=this.config.runObjectives??[],n=this.config.runMetadata??[],s=this.config.evidence??this.config.evidenceRead;for(let a=0;a<this.config.runDirs.length;a++){let o=this.config.runDirs[a],l=i[a]||this.config.firstObjective,r=n[a],c=s?this.readNdjsonFromFile(E(s.packTestDir,"logs",`${s.runIndices?.[a]??a}-actions.ndjson`)):this.readNdjsonFromDir(o);c.length>0&&e.push({objective:l,records:c,resultCode:r?.resultCode,reasonCode:r?.reasonCode,errorMessage:r?.errorMessage,summary:r?.summary,oneLiner:r?.oneLiner})}if(e.length===0){let a=E(this.config.sessionDir,"runs");if(C(a))try{let l=Re(a,{withFileTypes:!0}).filter(r=>r.isDirectory()).map(r=>r.name).sort();for(let r of l){let c=E(a,r),u=this.readNdjsonFromDir(c);u.length>0&&e.push({objective:this.config.firstObjective,records:u})}}catch{}}return e}readNdjsonFromDir(e){let i=[E(e,"run-test","actions.ndjson"),E(e,"actions.ndjson")];for(let n of i)if(C(n))return this.readNdjsonFromFile(n);return[]}readNdjsonFromFile(e){let i=[];if(!C(e))return i;this.log("debug","PIPELINE_COLLECT_READ","Reading NDJSON file",{path:e});let n=te(e,"utf-8");for(let s of n.split(`
5
- `)){let a=s.trim();if(a)try{i.push(JSON.parse(a))}catch{}}return i}async generateShareLink(e){let i=`${this.config.shareApiBaseUrl}/lshs/api/v1.0/share-item/generate-sharable-link`;this.log("info","PIPELINE_SHARE_START","Requesting share link",{url:i,testcase_id:e});let n={method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({entityIds:[e],entityType:"Test Case Details",expiresAt:7})},s=!!this.config.authResolver;this.log("debug","PIPELINE_SHARE_AUTH","Share link auth config",{resolver:s,fallback_auth_type:typeof this.config.auth=="string"?"bearer":"basic",tms_user:this.config.tmsUsername});let a=s?await this.config.authResolver.fetch(i,n):await O(i,{...n,headers:{...n.headers,Authorization:this.buildAuthHeader()}});if(!a.ok)throw new Error(`Share link API failed: ${a.status} ${await a.text()}`);let o=await a.json();if(!o.shareId)throw new Error("Share link API returned no shareId");return o.shareId}async triggerCodeExport(e){if(!this.config.codeExport)throw new Error("triggerCodeExport called without resolved codeExport config");let{url:i,body:n}=M({tmsBaseUrl:this.config.tmsBaseUrl,testcaseId:e,codeExport:this.config.codeExport});this.log("info","PIPELINE_CODE_EXPORT_POST","Triggering code export",{url:i});let s={method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(n)},a=this.config.authResolver?await this.config.authResolver.fetch(i,s):await O(i,{...s,headers:{...s.headers,Authorization:this.buildAuthHeader()}});if(!a.ok)throw new Error(`Code export failed: ${a.status} ${await a.text()}`)}async pollAndDownloadCode(e,i){let n=B({tmsBaseUrl:this.config.tmsBaseUrl,testcaseId:e}),s=this.config.exitTimeoutMs??3e5,a=5e3,o=Date.now()+s;this.log("info","PIPELINE_CODE_EXPORT_POLL","Polling for code export",{url:n,timeout_ms:s});let l=(r,c)=>this.config.authResolver?this.config.authResolver.fetch(r,c):O(r,{...c,headers:{...c?.headers,Authorization:this.buildAuthHeader()}});for(;Date.now()<o;){let r=await l(n,{method:"GET",headers:{Accept:"application/json"}});if(!r.ok){let d=await r.text().catch(()=>"");throw this.log("warn","PIPELINE_CODE_EXPORT_POLL_FAILED","Code export poll non-200; skipping",{status:r.status,body:d.slice(0,200)}),new Error(`code export poll skipped: HTTP ${r.status}`)}let u=(await r.json()).data?.find(d=>d.code_name==="kane-cli-trigger");if(!u){this.log("debug","PIPELINE_CODE_EXPORT_WAITING","No kane-cli-trigger entry yet"),i("code_export","running","Waiting for code generation\u2026"),await this.sleep(a);continue}let p=u.status.toLowerCase();if(p==="in progress"||p==="in_progress"||p==="pending"){this.log("debug","PIPELINE_CODE_EXPORT_IN_PROGRESS","Code export in progress",{status:u.status}),i("code_export","running","Generating code\u2026"),await this.sleep(a);continue}if(!u.url||u.url.length===0)throw new Error(`Code export status=${u.status} but no files returned`);let _=this.config.codeExportDir??E(this.config.sessionDir,"code-export");D(_,{recursive:!0}),this.log("info","PIPELINE_CODE_EXPORT_DOWNLOAD","Downloading code files",{file_count:u.url.length,dir:_}),i("code_export","running",`Downloading ${u.url.length} files\u2026`);for(let d of u.url){let g=E(_,d.file_name),m=await O(d.file_url);if(!m.ok){this.log("warn","PIPELINE_CODE_EXPORT_FILE_FAILED","Failed to download file",{file_name:d.file_name,status:m.status});continue}let f=await m.text();x(g,f,"utf-8"),this.log("info","PIPELINE_CODE_EXPORT_FILE_SAVED","File saved",{file_name:d.file_name,size_bytes:f.length})}return _}throw new Error("Code export timed out")}sleep(e){return new Promise(i=>setTimeout(i,e))}buildAuthHeader(){return typeof this.config.auth=="string"?`Bearer ${this.config.auth}`:j(this.config.auth.username,this.config.auth.accessKey)}readAuthoredExecution(){let e=this.config.authoredExecutionPath;if(!e)return null;try{let i=te(e,"utf8");return JSON.parse(i),i}catch{return this.log("warn","PIPELINE_AUTHORED_BLOB_UNREADABLE","Authored execution.json missing/unreadable \u2014 pack gets this run's envelope",{path:e}),null}}buildExecutionEnvelope(e){let i=this.config.runStatuses.every(r=>r==="passed")?"success":"error",n=this.config.variableIds??{},s=[];if(this.config.variables)for(let[r,c]of Object.entries(this.config.variables)){if(c.secret)continue;let u=r.startsWith("global.")?r.slice(7):r;s.push({id:n[u]??0,name:u,value:c.value,session_value:c.value,is_persist:!1,environment_id:0,environment_name:"No Env"})}let a=[],o=[],l=new Set;for(let r of this.collectNdjsonPerRun())for(let c of r.records)if(c.output_variable&&c.output_value!=null&&a.push({name:c.output_variable,value:String(c.output_value),value_type:"test_level",variable_description:"ANALYZE result"}),c.action_type==="upload_files"){let u=S(c.action_params);if(u){let p=u.media_id||u.media_url;if(!l.has(p)){l.add(p),o.push({media_url:u.media_url,media_id:u.media_id,name:u.name,type:u.type});let _=N(u.name);a.push({name:$(u.name),value:_,value_type:"string",variable_description:`variable for ${_}`})}}}return{test_id:this.testId,version:"v4",auto_heal_version:this.config.apMode==="v2"?"AH2":"",session_id:this.config.sessionId,org_id:String(this.config.orgId),user_id:String(this.config.userId),url:this.config.firstUrl??"",start_timestamp:this.config.startedAt,end_timestamp:this.config.endedAt,status:i,commit_id:this.config.commitId,instructions:e,modules:[],uploaded_files:o,test_params:[],test_level_variables:JSON.stringify(a),test_global_variables:s,max_network_wait:0,wait_buffer:0,network_throttle:{},secrets:this.config.secrets??[],totp:[],environment_id:0,environment:"",mobile_browser:!1,native_popups:[],smartui:{},module_index:0}}};export{Pe as a,ke as b,ne as c};
@@ -1,5 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{d as Y}from"./chunk-BB2W35TW.js";import{a as L}from"./chunk-YKTYVJBN.js";import{a as T}from"./chunk-GW5DWAXY.js";import{k as z,l as W,m as $}from"./chunk-3STZLM5J.js";import{b as q,g as N}from"./chunk-M7WQM4UA.js";import{a as J,d as S,f as D}from"./chunk-WWNSD6FA.js";import{a as G,c as K}from"./chunk-C4G7RVJ6.js";var ae=3,ce=1e4,X=()=>new Promise(r=>setTimeout(r,25+Math.floor(Math.random()*50))),Q=r=>r==="design"||r==="maintain"?"session":r==="revert"||r==="shape-op"?"exclusive":"commit";function de(r,e,o){for(let s of r){for(let t of s.supersessions)if(t.kind==="node"&&(o.has(t.old)||t.new!==null&&o.has(t.new)))return!0;for(let t of s.nodes)if(t.label==="usecase"&&e.newBuCandidates.length>0||o.has(t.cid))return!0;if(s.design_generation&&e.generationTicket&&s.design_generation.uc_root===e.generationTicket.uc_root)return!0;for(let t of e.sourcePins)if(Object.prototype.hasOwnProperty.call(s.source_head_moves,t.source_id))return!0}return!1}async function Re(r,e,o){let{contextDir:s,locks:t,probe:a}=r,p=r.sid??r.rootSid,f=e.newBuCandidates.map(b=>({tempRef:b.tempRef,probeText:b.probeText})),k=0,g=!0,m={hits:[],degraded:!1,probeBasis:null};for(;;){g&&(f.length>0&&(m=await a.batchSimilar(T(s),f)),g=!1);let b=T(s),I={seq:b.lastSeq,hash:b.latestHash},P=new Map,E=[],v=[],_=new Set;for(let d of e.ucTargets){let c=$(b,d.ref);if(c===null)return{ok:!1,kind:"validation",errors:[{code:"UNKNOWN_REF",detail:`${d.ref}: names no living node (unknown or tombstoned chain)`}]};d.expectedTip!==void 0&&d.expectedTip!==c.cid&&P.set(d.expectedTip,c.cid),_.add(c.cid),v.push(D(b,d.ref).key)}(e.verb==="revert"||e.verb==="shape-op")&&(v.length=0,v.push({kind:"context",mode:"exclusive"}));let y;try{y=t.acquire(S(v),{hold:Q(e.verb),verb:e.verb})}catch(d){if(d instanceof J&&(d.code==="UC_HELD"||d.code==="CONTEXT_HELD"))return{ok:!1,kind:"contended",err:d};throw d}let B=!1,V=!1;try{let d=await t.withKeySerialized(v,async()=>{let c=T(s),O=I.hash===c.latestHash?[]:N(s,I.seq,I.hash).records;for(let n of e.ucTargets){let i=$(c,n.ref);if(i===null){E.push({kind:"supersession",ref:n.ref,detail:`${n.ref} was retired while this commit staged \u2014 re-ground or abandon`});continue}for(let l of _)c.superseded.has(l)&&c.tipOf(l)===i.cid&&P.set(l,i.cid)}for(let n of e.sourcePins){let i=c.heads.get(n.source_id);i!=null&&i!==n.source_cid&&E.push({kind:"pin",ref:n.source_id,detail:`source '${n.source_id}' moved (pinned ${n.source_cid.slice(0,19)}, head ${i.slice(0,19)}) \u2014 re-ground or abandon`})}if(E.length>0)return{ok:!1,kind:"drifted",asks:E};if(e.generationTicket){let n=Y(c,e.generationTicket);if(n!==null)return{ok:!1,kind:"validation",errors:[n]}}if(f.length>0&&O.length>0){let n=new Set(m.hits.map(u=>u.candidateCid)),i=a.recheckLocal(c,f,m.probeBasis,O);if(i.hits.some(u=>!n.has(u.candidateCid))||i.uncachedNewNodes.length>0)return V=!0,"restart"}if(e.verb!=="revert"&&e.verb!=="shape-op"){let n=S(e.ucTargets.map(u=>D(c,u.ref).key)),i=S(v);if(!(n.length===i.length&&n.every((u,h)=>JSON.stringify(u)===JSON.stringify(i[h]))))return"restart"}if(e.eventIds&&e.eventIds.length>0&&e.eventIds.every(n=>c.appliedEvents.has(n)))return{ok:!0,skipped:"already-applied"};let ie=Date.now()+ce,M=c.latestHash,w=c;for(;;){let n={graph:w,expectPrev:M,redirects:P,probeHits:m.hits,degradedProbe:m.degraded,sid:p,eventIds:(l,u)=>{if(e.eventIds&&e.eventIds.length>0)return e.eventIds.slice(0,u);let h=W(w,r.rootSid,l,u),j=r.reservedEventIds??[];if(j.length===0)return h;let R=`${r.rootSid}:${l}:`,A=0;for(let F of j){if(!F.startsWith(R))continue;let x=F.slice(R.length);/^\d+$/.test(x)&&(A=Math.max(A,Number.parseInt(x,10)))}if(A===0)return h;let U=Number.parseInt(h[0].slice(R.length),10);return!Number.isInteger(U)||U>A?h:Array.from({length:u},(F,x)=>z(r.rootSid,l,A+1+x))},assertLocks:()=>y.assertHeld()};if(r.revalidate){let l=r.revalidate(n);if(l.length>0)return{ok:!1,kind:"validation",errors:l}}y.assertHeld();let i;try{i=o(n)}catch(l){if(l instanceof q){let u=T(s),h=N(s,w.lastSeq,w.latestHash).records;if(!de(h,e,_)&&Date.now()<ie){await X(),w=u,M=u.latestHash;continue}return"restart"}throw l}return"errors"in i?{ok:!1,kind:"validation",errors:i.errors}:(Q(e.verb)==="session"&&y.touch(),{ok:!0,result:i.result,record:i.record})}});if(d==="restart")B=!0;else return d}finally{y.release()}if(B){if(k+=1,k>=ae)return{ok:!1,kind:"unsettled",attempts:k};V&&(g=!0),await X();continue}}}import{readFileSync as le,writeFileSync as ue,renameSync as fe,mkdirSync as pe}from"fs";import{dirname as me,join as he}from"path";var H=1,ge=720*60*1e3;function C(r){return he(K,"embeddings",`alias-${r}.json`)}function Z(r,e=Date.now()){return r!==null&&e-r.fetchedAt<ge}function ee(r){try{let e=JSON.parse(le(r,"utf-8"));return e.wrapperVersion!==H||typeof e.purposes!="object"||e.purposes===null?null:{wrapperVersion:H,writtenByVersion:String(e.writtenByVersion??""),purposes:e.purposes}}catch{return null}}function re(r,e,o=C(r)){let t=ee(o)?.purposes?.[e];return!t||typeof t.alias!="string"||typeof t.dims!="number"||typeof t.fetchedAt!="number"?null:{alias:t.alias,dims:t.dims,fetchedAt:t.fetchedAt}}function te(r,e,o,s=C(r)){try{pe(me(s),{recursive:!0});let a=ee(s)?.purposes??{};a[e]={alias:o.alias,dims:o.dims,fetchedAt:Date.now()};let p={wrapperVersion:H,writtenByVersion:G,purposes:a},f=`${s}.tmp`;ue(f,JSON.stringify(p,null,2)+`
3
- `),fe(f,s)}catch(t){process.stderr.write(`[embed] Failed to save alias cache: ${t instanceof Error?t.message:String(t)}
4
- `)}}function be(r){return r.TESTMUAI_ENV==="stage"?"stage":"prod"}function se(r){let e=r.env??process.env,o=r.auth?.TESTMUAI_BASIC_AUTH||e.TESTMUAI_BASIC_AUTH;if(o)return{authorization:`Basic ${o}`};let s=r.auth?.TESTMUAI_API_KEY||e.TESTMUAI_API_KEY;return s?{authorization:`Bearer ${s}`}:{}}async function Ve(r,e={}){let o=e.env??process.env,s=be(o),t=e.aliasCacheFile??C(s),a=e.now??Date.now,p=re(s,r,t);if(Z(p,a()))return{alias:p.alias,dims:p.dims};let k=`${L(o)}/assurance/embed/alias?purpose=${encodeURIComponent(r)}`,g=await(e.fetchImpl??fetch)(k,{method:"GET",headers:se(e)});if(!g.ok)throw new Error(`embed alias resolve failed: ${g.status}`);let m=await g.json();return te(s,r,{alias:m.alias,dims:m.dims},t),{alias:m.alias,dims:m.dims}}async function Oe(r,e,o={}){let s=o.env??process.env,t=L(s),a=await(o.fetchImpl??fetch)(`${t}/assurance/embed`,{method:"POST",headers:{...se(o),"content-type":"application/json"},body:JSON.stringify({purpose:r,input:e})});if(!a.ok)throw new Error(`embed failed: ${a.status}`);return await a.json()}import{readFileSync as ve,writeFileSync as ke,renameSync as ye,mkdirSync as we}from"fs";import{dirname as Ae,join as oe}from"path";function Te(r){return oe(r,"embeddings")}function Ee(r){let e=r.indexOf(":");return e>=0?r.slice(e+1):r}function ne(r,e,o){let s=Ee(o);return oe(Te(r),e,s.slice(0,2),`${s.slice(2)}.f32`)}function Ge(r,e,o){try{let s=ve(ne(r,e,o)),t=new Float32Array(Math.floor(s.length/4));for(let a=0;a<t.length;a++)t[a]=s.readFloatLE(a*4);return t}catch{return null}}function Ke(r,e,o,s){try{let t=ne(r,e,o);we(Ae(t),{recursive:!0});let a=Buffer.alloc(s.length*4);for(let f=0;f<s.length;f++)a.writeFloatLE(s[f],f*4);let p=`${t}.tmp`;ke(p,a),ye(p,t)}catch(t){process.stderr.write(`[embed] Failed to cache vector: ${t instanceof Error?t.message:String(t)}
5
- `)}}export{Re as a,Ve as b,Oe as c,Ge as d,Ke as e};
@@ -1,9 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{b as he,c as _e,d as J,e as Z}from"./chunk-NRC2G4Y5.js";import{a as ke}from"./chunk-BQHKBOSF.js";import{c as ye,e as we}from"./chunk-VGFTNLQQ.js";import{d as H}from"./chunk-JFAFKHDX.js";import{a as pe}from"./chunk-XDHZMCTA.js";import{a as L}from"./chunk-DNNZ353O.js";import{a as I}from"./chunk-GW5DWAXY.js";import{b as ge}from"./chunk-T63R6QT4.js";import{w as me}from"./chunk-3STZLM5J.js";import{a as ue}from"./chunk-L4JIMNKW.js";import{d as de,i as fe}from"./chunk-M7WQM4UA.js";import{d as ae,f as le}from"./chunk-5YPBPZUR.js";function bt(t){let e=process.env.HOME??"";return e&&t.startsWith(e)?`~${t.slice(e.length)}`:t}import{randomBytes as mt}from"crypto";function ee(t,e){let n=Math.min(t.length,e.length),s=0,r=0,c=0;for(let o=0;o<n;o++)s+=t[o]*e[o],r+=t[o]*t[o],c+=e[o]*e[o];return r===0||c===0?0:s/(Math.sqrt(r)*Math.sqrt(c))}function te(t,e,n){return n*t+(1-n)*e}var ne=.7;var ze=["get_node","get_edges","find_by_provenance","match_by_type","stale_nodes","search_similar","search_similar_batch","history"],Qe=["source_read","source_grep","source_list"],Ke=[...ze,...Qe],Se=50,Re=200,re=10,Ee=50,be=20,We=200,Xe=50;function V(t,e,n){let s=typeof t=="number"&&Number.isFinite(t)?Math.floor(t):e;return Math.max(1,Math.min(s,n))}function M(t,e){let n=t[e];if(typeof n!="string"||n.length===0)throw new b(`param "${e}" must be a non-empty string`);return n}function D(t,e){let n=t[e];if(n==null)return null;if(typeof n!="string")throw new b(`param "${e}" must be a string when present`);return n}var b=class extends Error{},xe=24,qe=10,Ye=10;function Je(t){let e=t.cursor;if(e==null)return 0;if(typeof e=="string"&&/^\d+$/.test(e))return Number.parseInt(e,10);throw new b(`BAD_CURSOR: cursor ${JSON.stringify(e)} is not a cursor this store minted`)}function Ae(t,e){let n=e.fields;if(!Array.isArray(n)||n.length===0)return t;let s=new Set(n.filter(r=>typeof r=="string"));return t.map(r=>Object.fromEntries(Object.entries(r).filter(([c])=>s.has(c))))}function se(t,e,n=Se,s=Re){let r=Je(e),c=V(e.limit,n,s),o=t.slice(r,r+c),d=r+o.length<t.length;return{rows:Ae(o,e),truncated:d,next_cursor:d?String(r+o.length):null}}var Ze=t=>t.cursor!=null||t.fields!=null;function z(t,e,n=Se){let s=se(t,e,n);return Ze(e)||s.truncated?{rows:s.rows,truncated:s.truncated,next_cursor:s.next_cursor}:s.rows}function oe(t,e){let n=t.getNode(e);return n?{cid:e,label:n.label,content:n.content,trust:t.trust.get(e)??null,freshness:t.stale(e)}:null}function ve(t){return new Set(t.toLowerCase().replace(/[^\p{L}\p{N}]+/gu," ").split(" ").filter(Boolean))}function Q(t,...e){let n=ve(t);if(n.size===0)return 0;let s=t.trim().toLowerCase(),r=0;for(let c of e){let o=ve(c);if(o.size===0)continue;let d=0;for(let u of n)o.has(u)&&d++;let m=n.size+o.size-d,f=m===0?0:d/m;s&&c.toLowerCase().includes(s)&&(f=Math.max(f,.9)),r=Math.max(r,f)}return r}function et(t,e){let n=M(e,"cid"),s=D(e,"type"),r=D(e,"direction")??"both";if(!["out","in","both"].includes(r))throw new b('param "direction" must be out|in|both');let c=[];(r==="out"||r==="both")&&c.push(...t.edgesFrom(n)),(r==="in"||r==="both")&&c.push(...t.edgesInto(n));let o=c.filter(d=>s==null||d.type===s);return z(o,e)}function tt(t,e){let n=M(e,"source_id"),s=t.heads.get(n)??null,r=[];for(let c of t.nodeLabel.keys()){let o=t.derivesInto(c).filter(m=>m.props.source_id===n).map(m=>({source_cid:m.props.source_cid,anchor:m.props.anchor??null}));if(o.length===0)continue;let d=oe(t,c);d&&r.push({...d,pins:o,pinned_to_head:s!=null&&o.some(m=>m.source_cid===s)})}return z(r,e,Re)}function nt(t,e){let n=M(e,"label"),s=D(e,"trust"),r=D(e,"freshness"),c=[];for(let{cid:o}of t.byLabel(n)){let d=oe(t,o);d&&(s!=null&&d.trust!==s||r!=null&&d.freshness!==r||c.push(d))}return z(c,e)}function rt(t,e={}){let n=D(e,"label"),s=t.staleList().map(({cid:r,state:c})=>{let o=t.getNode(r);return{cid:r,state:c,label:o?.label??null,title:o?.content.title??null}}).filter(r=>n==null||r.label===n);return z(s,e)}function st(t,e,n){let s=e.extracted,r=D(e,"kind"),c=[];for(let f of[...t.heads.keys()].sort()){let u=t.heads.get(f);if(typeof u!="string")continue;let h=t.mediaOf(u).format;if(r!=null&&h!==r)continue;let k=t.extractedSourceCids.has(u);if(typeof s=="boolean"&&k!==s)continue;let R=0;if(h!=="image"){let _=L(n,t,u);_&&(R=_.toString("utf8").replace(/\n$/,"").split(`
3
- `).length)}let l=t.extractionCompleteness.get(f);c.push({source_id:f,kind:h,lines:R,head_cid:u,extracted:k,last_extract_at:l?.at??null,extractor_version:l?.extractor_version??null})}let{rows:o,truncated:d,next_cursor:m}=se(c,e);return{sources:o,truncated:d,next_cursor:m}}function ot(t,e,n){let s=M(e,"ref"),r=t.resolve(s);if(!r)throw new b(`UNKNOWN_REF: ${s} names nothing in the graph`);let c=r.tip,o=new Map;for(let[p,w]of t.superseded)typeof w=="string"&&w!==p&&o.set(w,[...o.get(w)??[],p]);let d=[],m=[c],f=new Set;for(;m.length>0;){let p=m.pop();f.has(p)||(f.add(p),d.push(p),m.push(...o.get(p)??[]))}let{records:u}=de(n),g=new Map,h=new Map;for(let p of u){for(let w of p.nodes)g.has(w.cid)||g.set(w.cid,p.ts);for(let w of p.supersessions)w.kind==="node"&&h.set(w.old,{by_cid:w.new,reason:w.reason})}let k=d.map(p=>({cid:p,minted_at:g.get(p)??null,superseded_by:h.get(p)?.by_cid??null,reason:h.get(p)?.reason??null,change_note:null})),{rows:R,truncated:l,next_cursor:_}=se(k,e,Ye);return{root_logical_id:t.displayNameOf(c),live_tip:t.superseded.has(c)?null:c,truncated:l,next_cursor:_,chain:R}}function $e(t){let e=t.queries;if(!Array.isArray(e)||e.length<1||e.length>xe)throw new b(`param "queries" must be 1..${xe} entries`);return e.map((n,s)=>{if(typeof n!="object"||n===null)throw new b(`queries[${s}] must be an object`);let r=n;if(typeof r.qid!="string"||r.qid.length===0)throw new b(`queries[${s}].qid must be a non-empty string`);if(typeof r.text!="string"||r.text.length===0)throw new b(`queries[${s}].text must be a non-empty string`);return{qid:r.qid,text:r.text,topK:V(r.top_k,re,qe)}})}function De(t){let e=[];for(let{cid:n,content:s}of t.byLabel("usecase"))t.superseded.has(n)||e.push({cid:n,title:String(s.title??""),summary:String(s.summary??""),description:String(s.description??"")});return e}function Me(t,e,n){let s=De(t);return e.map(r=>{let c=[];for(let o of s){let d=n(r,o);d<=0||c.push({cid:o.cid,logical_id:t.displayNameOf(o.cid),title:o.title,score:Math.round(d*1e3)/1e3,trust:t.trust.get(o.cid)??null,superseded:!1})}return c.sort((o,d)=>d.score-o.score||o.cid.localeCompare(d.cid)),{qid:r.qid,truncated:c.length>r.topK,matches:c.slice(0,r.topK)}})}function Ce(t,e){let n=$e(e);return{results:Me(t,n,(s,r)=>Q(s.text,r.title,r.summary,r.description)),scorer:"lexical_fallback"}}function it(t,e){let n=M(e,"text"),s=D(e,"label")??"usecase",r=V(e.k,re,Ee),c=[];for(let{cid:o,content:d}of t.byLabel(s)){let m=String(d.title??""),f=String(d.summary??""),u=Q(n,m,f);u<=0||c.push({cid:o,title:m,summary:f,score:Math.round(u*1e3)/1e3,trust:t.trust.get(o)??null,freshness:t.stale(o)})}return c.sort((o,d)=>d.score-o.score||o.cid.localeCompare(d.cid)),c.slice(0,r)}function Te(t,e,n){let s=t.heads.get(n);if(typeof s!="string"){let c=[...t.heads.keys()].sort().join(", ");throw new b(`unknown source_id "${n}" \u2014 known: ${c||"(none)"}`)}if(t.mediaOf(s).format==="image")throw new b(`source "${n}" is an image \u2014 no line window (cite img#whole)`);let r=L(e,t,s);if(r==null)throw new b(`source "${n}" blob is missing from the store`);return{head:s,lines:r.toString("utf8").replace(/\n$/,"").split(`
4
- `)}}function ct(t,e,n){return t.slice(e-1,n).map((s,r)=>`${String(e+r).padStart(4,"0")}| ${s}`).join(`
5
- `)}function at(t,e,n){let s=M(e,"source_id"),r=D(e,"anchor"),c=e.line_range;if(r!=null&&c!=null)throw new b("give anchor OR line_range, not both");let{head:o,lines:d}=Te(t,n,s),m=d.length,f,u;if(r!=null){let g=/^L(\d+)-L(\d+)$/.exec(r);if(!g)throw new b(`anchor "${r}" is not L<a>-L<b>`);let h=Number(g[1]),k=Number(g[2]);if(h<1||k<h||k>m)throw new b(`anchor "${r}" does not resolve (source has ${m} lines)`);f=Math.max(1,h-be),u=Math.min(m,k+be)}else if(c!=null){if(!Array.isArray(c)||c.length!==2||!c.every(k=>Number.isInteger(k)))throw new b('param "line_range" must be [from_line, to_line]');let[g,h]=c;if(g<1||h<g)throw new b('param "line_range" must be 1-based with from \u2264 to');if(g>m)throw new b(`line_range starts past the end (source has ${m} lines)`);f=g,u=Math.min(h,m)}else f=1,u=m;return u=Math.min(u,f+We-1),{window:ct(d,f,u),from_line:f,to_line:u,source_cid:o,total_lines:m}}function lt(t,e,n){let s=M(e,"pattern"),r=D(e,"source_id"),c;try{c=new RegExp(s,"u")}catch(f){throw new b(`invalid pattern: ${f instanceof Error?f.message:String(f)}`)}let o=r!=null?[r]:[...t.heads.keys()].sort(),d=[],m=!1;e:for(let f of o){if(r==null){let g=t.heads.get(f);if(typeof g!="string"||t.mediaOf(g).format==="image")continue}let{lines:u}=Te(t,n,f);for(let g=0;g<u.length;g++)if(c.test(u[g])){if(d.length>=Xe){m=!0;break e}d.push({source_id:f,line:g+1,text:u[g]})}}return{matches:d,truncated:m}}function ut(t,e,n,s){try{switch(e){case"get_node":{let r=oe(t,M(n,"cid"));return r==null?{ok:!0,result:null}:{ok:!0,result:Ae([r],n)[0]}}case"get_edges":return{ok:!0,result:et(t,n)};case"find_by_provenance":return{ok:!0,result:tt(t,n)};case"match_by_type":return{ok:!0,result:nt(t,n)};case"stale_nodes":return{ok:!0,result:rt(t,n)};case"search_similar":return{ok:!0,result:it(t,n)};case"search_similar_batch":return{ok:!0,result:Ce(t,n)};case"history":{if(s==null)throw new b("history unavailable (no context store)");return{ok:!0,result:ot(t,n,s)}}case"source_list":{if(s==null)throw new b("source roster unavailable (no context store)");return{ok:!0,result:st(t,n,s)}}case"source_read":case"source_grep":{if(s==null)throw new b("source text unavailable (no context store)");return{ok:!0,result:(e==="source_read"?at:lt)(t,n,s)}}default:return{ok:!1,error:`unknown method: ${e} \u2014 available: ${Ke.join(", ")}`}}}catch(r){return r instanceof b?{ok:!1,error:`${e}: ${r.message}`}:{ok:!1,error:`${e}: graph read failed: ${r instanceof Error?r.message:String(r)}`}}}var U="assurance.sim";function dt(t){return[t.title,t.summary,t.description].filter(Boolean).join(`
6
- `)}async function ft(t,e,n){let s=M(e,"text"),r=D(e,"label")??"usecase",c=V(e.k,re,Ee),o=[];for(let{cid:m,content:f}of t.byLabel(r)){if(t.superseded.has(m))continue;let u=String(f.title??""),g=String(f.summary??""),h=String(f.description??"");o.push({cid:m,title:u,summary:g,description:h,lex:Q(s,u,g,h)})}let d=m=>{let f=[];for(let u of o){let g=m(u);g.score<=0||f.push({cid:u.cid,title:u.title,summary:u.summary,score:Math.round(g.score*1e3)/1e3,trust:t.trust.get(u.cid)??null,freshness:t.stale(u.cid),...g.dense!==void 0?{dense_score:Math.round(g.dense*1e3)/1e3,lexical_score:Math.round(u.lex*1e3)/1e3}:{}})}return f.sort((u,g)=>g.score-u.score||u.cid.localeCompare(g.cid)),f.slice(0,c)};try{let m=n.readVector??J,f=n.writeVector??Z,u=n.alpha??ne,{alias:g}=await n.resolveAlias(U),h=new Map,k=[],R=[];for(let p of o){let w=m(n.contextDir,g,p.cid);w?h.set(p.cid,w):(k.push(p.cid),R.push(dt(p)))}let{vectors:l}=await n.embed(U,[s,...R]),_=Float32Array.from(l[0]);for(let p=0;p<k.length;p++){let w=Float32Array.from(l[p+1]);h.set(k[p],w),f(n.contextDir,g,k[p],w)}return d(p=>{let w=h.get(p.cid),$=w?ee(_,w):0;return{score:te($,p.lex,u),dense:$}})}catch{return n.onDegraded?.(),d(m=>({score:m.lex}))}}async function gt(t,e,n){let s=$e(e),r=De(t);try{let c=n.readVector??J,o=n.writeVector??Z,d=n.alpha??ne,{alias:m}=await n.resolveAlias(U),f=new Map,u=[],g=[];for(let l of r){let _=c(n.contextDir,m,l.cid);_?f.set(l.cid,_):(u.push(l.cid),g.push([l.title,l.summary,l.description].filter(Boolean).join(`
7
- `)))}let{vectors:h}=await n.embed(U,[...s.map(l=>l.text),...g]),k=s.map((l,_)=>Float32Array.from(h[_]));for(let l=0;l<u.length;l++){let _=Float32Array.from(h[s.length+l]);f.set(u[l],_),o(n.contextDir,m,u[l],_)}let R=new Map(s.map((l,_)=>[l.qid,_]));return{results:Me(t,s,(l,_)=>{let p=f.get(_.cid),w=p?ee(k[R.get(l.qid)],p):0;return te(w,Q(l.text,_.title,_.summary,_.description),d)}),scorer:"embedding"}}catch{return n.onDegraded?.(),Ce(t,e)}}async function Ie(t,e,n,s){if((e==="search_similar"||e==="search_similar_batch")&&s)try{return{ok:!0,result:e==="search_similar"?await ft(t,n,s):await gt(t,n,s)}}catch(r){return r instanceof b?{ok:!1,error:`${e}: ${r.message}`}:{ok:!1,error:`${e}: graph read failed: ${r instanceof Error?r.message:String(r)}`}}return ut(t,e,n,s?.contextDir)}var pt=2,Ne=10,ht=2;function Ge(t,e,n){return t.map(s=>{let r=e.find(c=>c.id===s.id);if(r&&r.selected_index!=null&&r.selected_index>=0&&r.selected_index<s.options.length){let o=(s.allow_free_text||s.options[r.selected_index]?.input===!0)&&r.free_text!=null?r.free_text:null;return{id:s.id,resolution:"answered",selected_index:r.selected_index,free_text:o}}return r&&r.free_text!=null&&s.allow_free_text?{id:s.id,resolution:"answered",selected_index:-1,free_text:r.free_text}:n.explicitAcceptDefaults?{id:s.id,resolution:"assumed-default",selected_index:s.recommended_index,flagged:!0}:{id:s.id,resolution:"deferred",selected_index:null}})}async function Nt(t,e,n,s,r=()=>{},c){let o=(i,a)=>r(i,a,t.session_id),d=(process.env.ASSURANCE_LOG_LEVEL??"info").toLowerCase()==="debug",m={contextDir:e.contextDir,resolveAlias:i=>he(i,{env:process.env,auth:e.auth}),embed:(i,a)=>_e(i,a,{env:process.env,auth:e.auth}),...e.onEmbedDegraded?{onDegraded:e.onEmbedDegraded}:{}},f=0,u=e.agent(t,{auth:e.auth,onWarn:i=>{o("warn",i),e.out(i)},onStderr:i=>o("agent_stderr",i)}),g=null,h=null,k,R,l=u.send.bind(u),_=new Set(["user_response","user_message","session_complete"]),p=null,w=!1,$=[],v=i=>{if(i.type==="session_complete"&&(w=!0),p!==null&&_.has(i.type)){$.push(i),o("belt_withheld",{type:i.type,unacked_seq:p});return}l(i)};if(t.checkpoints&&!e.checkpoint)throw u.kill(),new Error("run_config.checkpoints is on but DriverDeps.checkpoint sink is absent (programming error)");let C=!1,K=e.pendingDeferral??null,O=!1,je=e.chat?.attachSender?.(i=>v(i));e.initialMessage&&(v({type:"user_message",message_id:`msg-${t.session_id}-${mt(3).toString("hex")}`,text:e.initialMessage}),o("user_message_sent",{chars:e.initialMessage.length,...d?{text:e.initialMessage}:{}}),e.emit?.({type:"message_sent",sid:t.session_id,chars:e.initialMessage.length}),e.chat?.note(`delivered your message to the agent: "${e.initialMessage}"`));let W,F=0,X=0,B=0,q,E=ye(),N=e.progress??e.out;try{for await(let i of u.events){try{e.chat?.onAgentEvent(i)}catch(a){o("chat_mirror_error",{event_type:i.type,message:a instanceof Error?a.message:String(a)})}if(i.type==="reasoning_delta"?(f+=i.text.length,process.env.KANE_TRACE_REASONING&&o("reasoning_delta",i.text)):i.type==="state_checkpoint"&&!process.env.KANE_TRACE_REASONING?o("state_checkpoint",{seq:i.seq,items:i.delta_items.length,bytes:JSON.stringify(i.delta_items).length}):o(i.type,i),i.type==="reasoning_done"&&o("reasoning_chars",f),i.type==="progress")N(`\u2026 ${i.stage}${i.n?` #${i.n}`:""}`),e.emit?.({type:"agent_activity",kind:"progress",label:`${i.stage}${i.n?` #${i.n}`:""}`});else if(i.type==="reasoning_delta"||i.type==="reasoning_done"||i.type==="tool_activity"||i.type==="decision_activity"){e.onStreamEvent?.(i);let a=E;if(E=we(E,i),E===a)continue;i.type==="reasoning_delta"?E.liveThinking===i.text&&N("\u2237 thinking\u2026"):i.type==="reasoning_done"?i.present&&(N(`thought for ${(i.took_ms/1e3).toFixed(1)}s`),e.emit?.({type:"agent_activity",kind:"thinking_done",label:`thought for ${(i.took_ms/1e3).toFixed(1)}s`})):i.type==="tool_activity"?i.status!=="done"&&(N(E.activity[E.activity.length-1].label),e.emit?.({type:"agent_activity",kind:"tool",label:E.activity[E.activity.length-1].label})):(N(`\xB7 ${E.activity[E.activity.length-1].label}`),e.emit?.({type:"agent_activity",kind:"decision",label:E.activity[E.activity.length-1].label}))}else if(i.type==="usage")q=i.total_credits,e.emit?.({type:"usage",credits:i.credits,total_credits:i.total_credits});else if(i.type==="graph_query"){let a=await Ie(e.graphSlot?.current??s,i.method,i.params??{},m),S=a.ok?{type:"graph_result",id:i.id,ok:!0,result:a.result}:{type:"graph_result",id:i.id,ok:!1,error:a.error};o("graph_result",d?{id:i.id,method:i.method,ok:a.ok,result:a.ok?a.result:a.error}:{id:i.id,method:i.method,ok:a.ok}),v(S)}else if(i.type==="ingest_request")if(e.ingest){let a;try{a=await e.ingest({id:i.id,ref:i.ref,purpose:i.purpose??null})}catch(T){o("ingest_executor_threw",{id:i.id,error:T instanceof Error?T.message:String(T)}),a={ok:!1,error:{code:"INGEST_FAILED",message:"the landing failed \u2014 see the trace for detail"}}}let S=a.ok?{type:"ingest_result",id:i.id,ok:!0,result:a.result}:{type:"ingest_result",id:i.id,ok:!1,error:a.error};o("ingest_result",a.ok?{id:i.id,ok:!0,source_id:a.result.source_id}:{id:i.id,ok:!1,code:a.error.code}),v(S)}else{let a={type:"ingest_result",id:i.id,ok:!1,error:{code:"INGEST_UNAVAILABLE",message:"this session has no ingest executor"}};o("ingest_result",{id:i.id,ok:!1,code:a.error.code}),v(a)}else if(i.type==="state_checkpoint"){if(!e.checkpoint)throw new Error("state_checkpoint arrived with no checkpoint sink (programming error)");p=i.seq;try{for(e.checkpoint.persist(i),p=null,l({type:"checkpoint_ack",seq:i.seq}),o("checkpoint_acked",{seq:i.seq,at:i.at});$.length>0&&p===null;)v($.shift())}catch(a){let S=a instanceof Error?a.message:String(a);C||(C=!0,e.out("warning: couldn't save the session checkpoint \u2014 pausing so no work is lost")),o("checkpoint_persist_failed",{seq:i.seq,message:S}),l({type:"pause"})}}else if(i.type==="session_paused")O=!0,R=i;else if(i.type==="done")O=!0;else if(i.type==="ask_user"){i.text&&(e.chat?e.chat.ledger({kind:"agent",text:i.text}):e.out(i.text));let a=t.mode;if(K){let y=K;K=null,e.emit?.({type:"ask_deferred",source_id:y.ingested.source_id,cid:y.ingested.cid,questions:i.questions.length}),o("ask_deferred",{source_id:y.ingested.source_id,questions:i.questions.length}),v({type:"user_response",answers:[],deferral:{deferred:!0,ingested:y.ingested}});continue}if(a!=="interactive"){let y=i.questions.filter(x=>x.risk==="high");if(a==="ci"&&y.length>0){W=y,u.kill();break}if(a==="agent"&&y.length>0){o("pause_requested",{high:y.map(x=>x.id)}),v({type:"pause"});continue}let A=Ge(i.questions,[],{explicitAcceptDefaults:!0});F+=A.length;for(let x of A)o("assumed_default",{id:x.id,resolution:x.resolution}),e.emit?.({type:"assumed_default",id:x.id,selected_index:x.selected_index,risk:i.questions.find(P=>P.id===x.id)?.risk});let j={type:"user_response",answers:A.map(x=>({id:x.id,selected_index:x.resolution==="deferred"?null:x.selected_index,free_text:null}))};v(j);continue}let S=await e.ask(i.questions);if(!Array.isArray(S)){v({type:"user_response",answers:[],deferral:S});continue}let T=S,He=Ge(i.questions,T,{explicitAcceptDefaults:!1}),Ue={type:"user_response",answers:i.questions.map(y=>{let A=T.find(x=>x.id===y.id);if(A?.free_text!=null){let x=A.selected_index!=null&&A.selected_index>=0&&A.selected_index<y.options.length?A.selected_index:null;if(x!=null){let G=y.allow_free_text||y.options[x]?.input===!0;return G&&A.free_text!=null&&n.set(y.id,(n.get(y.id)??0)+1),{id:y.id,selected_index:x,free_text:G?A.free_text:null}}let P=n.get(y.id)??0;if(!y.allow_free_text||P>=pt){let G=y.options[y.recommended_index]?.label??"recommended option";if(F+=1,e.emit?.({type:"assumed_default",id:y.id,selected_index:y.recommended_index,risk:y.risk}),e.chat?.noteCoercion)e.chat.noteCoercion(y,G);else{let Y=y.text.replace(/\?+\s*$/,""),Ve=Y.length<=36?Y:`${Y.slice(0,33)}\u2026`;e.out(`note: couldn't use a typed answer for "${Ve}" \u2014 kept the recommended option (${G})`)}return{id:y.id,selected_index:y.recommended_index,free_text:null}}return n.set(y.id,P+1),{id:y.id,selected_index:null,free_text:A.free_text}}let j=He.find(x=>x.id===y.id);return j.resolution==="deferred"?{id:y.id,selected_index:null,free_text:null}:{id:y.id,selected_index:j.selected_index,free_text:null}})};v(Ue)}else if(i.type==="chat_ops"&&!e.chat){let a=i.chat_ops??i,S=Array.isArray(a.ops)?a.ops.length:0;if(S===0)a.text&&e.out(a.text),v({type:"session_complete"}),o("headless_zero_op_chat_turn_complete",{chars:a.text?.length??0});else if(B<ht)B+=1,v({type:"user_message",message_id:`nochat-${t.session_id}-${B}`,text:"[auto-repair] chat ops are unavailable in this mode \u2014 commit through finalize_design, or finish if nothing remains."}),o("headless_chat_ops_nudge",{n:B,ops:S});else{h="the agent kept trying to hold a conversation in a non-interactive run",e.out("error: the agent kept trying to hold a conversation in a non-interactive run \u2014 session closed; re-run interactively, or retry"),o("headless_chat_ops_terminal",{ops:S}),u.kill();break}}else if(i.type===(c.terminalEventType??"proposal")){let a=await c.onProposalEvent(i[i.type]);if(g=a.proposal,a.error&&(h=a.error),a.receipt)e.emit?.(a.receipt.event),t.mode!=="interactive"?(X+=1,a.sessionComplete||X>=Ne?(a.sessionComplete||(e.out(`warning: ${Ne} commits without completion \u2014 closing the session (runaway guard)`),o("receipt_runaway_cap",{commits:X})),v({type:"session_complete"}),o("session_complete_sent",{commit_n:a.receipt.event.commit_n,runaway:!a.sessionComplete})):(v({type:"user_message",message_id:`receipt-${t.session_id}-${String(a.receipt.event.commit_n??0)}`,text:a.receipt.text}),o("receipt_sent",{commit_n:a.receipt.event.commit_n,chars:a.receipt.text.length}))):e.chat?.holdReceipt&&(e.chat.holdReceipt(a.receipt.text),o("receipt_held",{commit_n:a.receipt.event.commit_n}));else if(a.error&&t.mode!=="interactive"){e.out("error: saving the agent's work failed and can't be retried in this mode \u2014 session closed; re-run to retry"),o("headless_commit_error_terminal",{error:a.error}),u.kill();break}}else if(i.type==="error"){O=!0;let a=i;if(a.code==="PAIR_MISMATCH")throw new pe(a.expected??"",a.actual??"");h=i.message,typeof a.code=="string"&&(k=a.code);let S=i.failed_proposal;S&&o("failed_proposal",S)}}}finally{u.kill(),je?.()}let Pe=t.chat===!0&&t.mode==="interactive",ce=!!e.checkpoint&&!O&&!w&&!R&&!W&&h===null&&g===null&&!Pe;return{proposal:g,error:h,...k!==void 0?{errorCode:k}:{},paused:R,highRisk:W,...F>0?{assumedDefaults:F}:{},...q!==void 0?{creditsTotal:q}:{},...ce?{crashed:ce}:{}}}function Le(t,e){let n=e.trim(),s=null;for(let r of t??[])if(r.ref===n){if(!r.consumed)return{kind:"unconsumed"};s={kind:"consumed",identity:r.consumed}}return s??{kind:"unauthorized"}}function Lt(t,e,n){let s=e.trim(),r=[...t??[]];return r.find(o=>o.ref===s&&!o.consumed)||r.push({ref:s,entered_at:n.toISOString()}),r}function Oe(t,e,n){let s=e.trim(),r=[...t??[]],c=r.findIndex(o=>o.ref===s&&!o.consumed);return c<0||(r[c]={...r[c],consumed:n}),r}import{basename as ie}from"path";function Fe(t,e,n,s,r){let c=e.mediaOf(s),o=0;if(c.format!=="image"){let d=L(t,e,s);d&&(o=d.toString("utf8").replace(/\n$/,"").split(`
8
- `).length)}return{source_id:n,cid:s,total_lines:o,media_type:c.format,status:r}}function Ut(t){return async e=>{let n=Le(t.handle.state.ingest_registry,e.ref);if(n.kind==="unauthorized")return{ok:!1,error:{code:"INGEST_UNAUTHORIZED_REF",message:"that ref was not provided by the owner this session \u2014 only owner-provided refs may land"}};if(n.kind==="consumed"){let h=t.graphSlot?.current??I(t.contextDir);return{ok:!0,result:Fe(t.contextDir,h,n.identity.source_id,n.identity.cid,"unchanged")}}let s=[],r={out:h=>s.push(h),err:h=>s.push(h),confirm:async()=>!1,isTTY:!1},c;try{c=await ke([e.ref],{},r,t.cwd,t.remoteDeps)}catch(h){return{ok:!1,error:{code:"INGEST_FAILED",message:h instanceof Error?h.message:String(h)}}}if(c.code!==0||c.results.length===0)return{ok:!1,error:{code:"INGEST_FAILED",message:s.find(k=>k.startsWith("error:"))??s.at(-1)??"the landing failed"}};let o=c.results[0],d={source_id:o.source_id,cid:o.source_cid},m=Oe(t.handle.state.ingest_registry,e.ref,d),f=t.schedule?[...t.handle.state.ingest_schedule??[],{source_id:o.source_id,cid:o.source_cid,status:"pending"}]:void 0;t.handle.save({ingest_registry:m,...f!==void 0?{ingest_schedule:f}:{}}),t.graphSlot&&(t.graphSlot.current=I(t.contextDir));let u=t.graphSlot?.current??I(t.contextDir),g=Fe(t.contextDir,u,o.source_id,o.source_cid,o.status==="unchanged"?"unchanged":"landed");return t.note(t.schedule?`landed ${o.source_id} (${ie(e.ref)}) \u2014 ${g.total_lines} lines; scheduled for extraction in this run`:t.scheduleRefused?`landed ${o.source_id} (${ie(e.ref)}) \u2014 ${g.total_lines} lines; ${t.scheduleRefused}`:`landed ${o.source_id} (${ie(e.ref)}) \u2014 ${g.total_lines} lines; it guides this design only (not extracted \u2014 its own extraction pass adds its use-cases)`),{ok:!0,result:g}}}var _t=3,yt={edit:"edit",reject:"mistake",dedup_dropped:"mistake",approve:"usage",enhance:"directed-edit",add:"directed-edit",default_accepted:"usage",default_overridden:"edit",gap_resolution:"usage",dedup_kept:"usage"};function Be(t){let{contextDir:e,graph:n,watermark:s,by:r}=t,{signals:c}=H(e,s),o=c.filter(l=>l.event_id===void 0||n.appliedEvents.has(l.event_id)),d=new Map;for(let l of o){let _=l.event_id??`${l.ts}|${l.id}|${l.verdict}|${l.polarity}`;d.has(`${_}|${l.polarity}|${l.verdict}`)||d.set(`${_}|${l.polarity}|${l.verdict}`,l)}let m=[...d.values()].sort((l,_)=>(l.event_id??l.ts)<(_.event_id??_.ts)?-1:1),f=new Map;for(let l of m){let _=`${l.verdict}|${l.tag??""}`,p=f.get(_)??{verdict:l.verdict,tag:l.tag,events:new Set};p.events.add(l.event_id??l.ts),f.set(_,p)}let u=[],g=[],h=new Set,k=0;for(let[,l]of[...f.entries()].sort(([_],[p])=>_<p?-1:1)){if(l.events.size<_t)continue;let p={derived:!0,statement:`${l.verdict}${l.tag?`/${l.tag}`:""} recurs (${l.events.size} distinct events) \u2014 bias future proposals ${l.verdict==="approve"?"toward":"away from"} this pattern`,learned_from_kind:yt[l.verdict]??"usage",learned_from:[...l.events].sort()},w=le("stylenote",p);if(w.length>0)return{record:null,errors:w.map(C=>({code:C.code,detail:C.detail})),minted:0};let $=ue("stylenote",p);if(n.hasNode($))continue;u.push({cid:$,label:ae.STYLENOTE,content:p});let v=me("stylenote",C=>h.has(C),n.names.keys());v!==null&&(h.add(v),g.push({cid:$,slug:v,by:r})),k+=1}return u.length===0?{record:null,errors:null,minted:0}:{record:fe(e,{ts:new Date().toISOString(),proposal_id:null,nodes:u,edges:[],review:[],supersessions:[],source_head_moves:{},...g.length>0?{names:g}:{}},{expectPrev:n.latestHash}).record,errors:null,minted:k}}var wt={kind:"system",id:"distiller"};function tn(t,e=n=>process.stderr.write(n+`
9
- `)){try{let n=I(t),{watermark:s}=H(t),r=Be({contextDir:t,graph:n,watermark:s,by:wt});if(r.errors){let c=r.errors.map(o=>`${o.code}: ${o.detail}`).join("; ");return e(`warning: style-note distill skipped \u2014 ${c}`),{minted:0,error:c}}if(r.minted>0)try{ge(t)}catch{}return{minted:r.minted,error:null}}catch(n){let s=n instanceof Error?n.message:String(n);return e(`warning: style-note distill skipped \u2014 ${s}`),{minted:0,error:s}}}export{bt as a,Ie as b,pt as c,Ge as d,Nt as e,Lt as f,Ut as g,tn as h};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{d,e as f}from"./chunk-5YPBPZUR.js";var G={high:3,med:2,low:1},R={create:0,evolve:1,"reuse-candidate":2},_=.75;function a(e,n){return!e.superseded.has(n)&&e.trust.get(n)!=="archived"}function E(e,n){return e.edgesInto(n).some(t=>t.type===f.VERIFIES&&a(e,t.src))}function m(e,n="med"){let t=e.risk;return t==="high"||t==="med"||t==="low"?t:n}function u(e,n){return e.displayNameOf(n)??n}function y(e,n){return`kane-cli design tests --use-case ${u(e,n)}`}function b(e,n){let t=e.edgesFrom(n).find(i=>i.type===f.SCOPED_TO&&a(e,i.dst));if(!t)return null;let s=e.nodeLabel.get(t.dst);if(s===d.USECASE)return t.dst;if(s===d.SCENARIO){let i=e.edgesFrom(t.dst).find(r=>r.type===f.BELONGS_TO&&a(e,r.dst));return i?i.dst:null}return null}function v(e,n){let t=b(e,n);return t?y(e,t):w(e,n)}function w(e,n){return`kane-cli design explain ${u(e,n)}`}function h(e,n){let t=e.edgesFrom(n).find(i=>i.type===f.AUTOMATES&&a(e,i.dst));if(!t)return null;let s=e.edgesFrom(t.dst).find(i=>i.type===f.BELONGS_TO&&a(e,i.dst));return s?s.dst:null}function x(e){let n=[];for(let{cid:t,content:s}of e.byLabel(d.AC))a(e,t)&&(E(e,t)||n.push({ref:u(e,t),kind:"no-verifies",why:"no live test verifies this acceptance criterion",risk:m(s),stage:"design",tag:"create",ready_command:v(e,t)}));return n}function S(e){let n=[];for(let{cid:t,content:s}of e.byLabel(d.USECASE)){if(!a(e,t))continue;let i=e.edgesInto(t).filter(o=>o.type===f.BELONGS_TO&&a(e,o.src));if(i.length===0){n.push({ref:u(e,t),kind:"zero-scenario",why:"use-case has no scenarios",risk:m(s),stage:"design",tag:"create",ready_command:y(e,t)});continue}i.every(o=>e.getNode(o.src)?.content.case_type==="happy")&&n.push({ref:u(e,t),kind:"happy-only",why:"use-case is exercised by happy-path scenarios only",risk:m(s),stage:"design",tag:"create",ready_command:y(e,t)})}return n}function L(e){let n=[];for(let{cid:t,content:s}of e.byLabel(d.GAP)){if(!a(e,t))continue;let i=s.ref,r=typeof i=="string"?e.resolve(i):null,o=r&&a(e,r.tip)?r.tip:null,l=o?e.nodeLabel.get(o):null,p=l===d.USECASE?y(e,o):l===d.AC?v(e,o):w(e,t),c=s.question&&typeof s.question=="object"?s.question:void 0,k=typeof s.text=="string"&&s.text||(c&&typeof c.header=="string"?c.header:"")||"design gap";n.push({ref:u(e,t),kind:String(s.kind),why:k,risk:m(s),stage:"design",tag:"create",ready_command:p,...typeof s.risk_rationale=="string"?{risk_rationale:s.risk_rationale}:{},...c?{question:c}:{}})}return n}function C(e){let n=[];for(let{cid:t,content:s}of e.byLabel(d.AC)){if(!a(e,t))continue;let i=e.stale(t);i==="fresh"||i==="superseded"||n.push({ref:u(e,t),kind:"stale-ac",why:`acceptance criterion is ${i} \u2014 its source moved since this was authored \xB7 why: kane-cli design explain ${u(e,t)}`,risk:m(s),stage:"design",tag:"evolve",ready_command:"kane-cli maintain reconcile"})}for(let{cid:t,content:s}of e.byLabel(d.TEST)){if(!a(e,t))continue;let i=e.stale(t);if(i==="fresh"||i==="superseded")continue;let r=e.edgesFrom(t).filter(g=>g.type===f.VERIFIES&&a(e,g.dst)),o=r.map(g=>m(e.getNode(g.dst)?.content??{})),l=o.includes("high")?"high":o.includes("med")?"med":o.includes("low")?"low":"med",p=r[0]?.dst??null,c=p?null:h(e,t),k=p?v(e,p):c?y(e,c):w(e,t);n.push({ref:u(e,t),kind:"stale-test",why:`test is ${i} \u2014 its source moved since this was authored`,risk:l,stage:"design",tag:"evolve",ready_command:k})}return n}async function O(e,n,t){for(let s of e)if(s.tag==="create"){if(!t){s.meta={embed_arm:"skipped"};continue}try{let i=n.resolve(s.ref),r=i?n.getNode(i.tip):null,o=r&&(String(r.content.title??"")||String(r.content.text??""))||s.why,l=r?.label===d.USECASE?"scenario":"test",c=(await t.searchSimilar(o,{label:l,k:1}))[0];c&&c.score>=_?(s.tag="reuse-candidate",s.meta={embed_arm:"used",near_hit:{ref:u(n,c.cid),score:c.score}}):s.meta={embed_arm:"used",near_hit:null}}catch{s.meta={embed_arm:"skipped"}}}}function A(e,n){let t=G[n.risk]-G[e.risk];if(t!==0)return t;let s=R[e.tag]-R[n.tag];return s!==0?s:e.ref<n.ref?-1:e.ref>n.ref?1:0}function T(e,n){let t=[],s=r=>{let o=e.resolve(r);return o&&!o.superseded?m(e.getNode(o.tip)?.content??{}):"med"},i=r=>{let o=e.resolve(r),l=o&&!o.superseded?b(e,o.tip):null;return l?u(e,l):r};for(let r of n.usecases??[])for(let o of r.acceptance_criteria??[])(o.covered_by??[]).length>0&&(o.execution==="failed"?t.push({ref:o.id,kind:"execution-failed",stage:"cover",tag:"evolve",risk:s(o.id),why:`covering test failed against this AC (tests: ${(o.covered_by??[]).join(", ")})`,ready_command:`kane-cli maintain evolve ${i(o.id)}`}):o.execution==="blocked"?t.push({ref:o.id,kind:"execution-blocked",stage:"cover",tag:"reuse-candidate",risk:s(o.id),why:"the oracle could not run (infrastructure) \u2014 the covering test exists and is reusable",ready_command:"kane-cli testrun run"}):o.execution==="not-run"&&t.push({ref:o.id,kind:"covered-not-run",stage:"cover",tag:"reuse-candidate",risk:s(o.id),why:"a covering test exists but never joined this pack \u2014 run it",ready_command:"kane-cli testrun run"}));return t}async function N(e,n,t,s){if(n!=="design"&&!s)throw new Error(`gaps-engine: stage "${n}" requires a pack's usecases doc`);let i=[];return(n==="design"||n==="all")&&i.push(...x(e),...S(e),...L(e),...C(e)),(n==="cover"||n==="all")&&i.push(...T(e,s)),await O(i,e,t),i.sort(A),i}export{a,E as b,b as c,N as d};
@@ -1,4 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{b as U}from"./chunk-DNNZ353O.js";import{a as G}from"./chunk-Q2F5QB2W.js";import{b as B,c as b}from"./chunk-NVGBE2DR.js";import{a as T}from"./chunk-GW5DWAXY.js";import{a as L,c as P}from"./chunk-L4JIMNKW.js";import{b as j,i as F}from"./chunk-M7WQM4UA.js";import{a as $,d as N,f as D}from"./chunk-5YPBPZUR.js";import{existsSync as ne,mkdirSync as ie,readFileSync as oe,writeFileSync as re}from"fs";import{basename as C,extname as H,join as se}from"path";var K=/^[A-Za-z0-9][A-Za-z0-9._-]*$/;function q(e){return typeof e=="string"&&e!=="."&&e!==".."&&K.test(e)}function k(e){if(!q(e))throw new Error(`unsafe logical_id: ${JSON.stringify(e)} \u2014 must match ${String(K)} (no path separators)`)}import{extname as W}from"path";var Q={kind:"jira",media_type:"application/x-kane-jira-envelope",extensions:[],cite:"verbatim",maxBytes:2e6},z=[{kind:"text",media_type:"text/plain",extensions:[".txt"],cite:"verbatim",maxBytes:2e6},{kind:"markdown",media_type:"text/markdown",extensions:[".md",".markdown"],cite:"verbatim",maxBytes:2e6},{kind:"image",media_type:"image/png",extensions:[".png"],cite:"anchor-only",maxBytes:5e6},{kind:"image",media_type:"image/jpeg",extensions:[".jpg",".jpeg"],cite:"anchor-only",maxBytes:5e6},{kind:"image",media_type:"image/webp",extensions:[".webp"],cite:"anchor-only",maxBytes:5e6},{kind:"text",media_type:"application/json",extensions:[".json"],cite:"verbatim",maxBytes:2e6},{kind:"text",media_type:"application/yaml",extensions:[".yaml",".yml"],cite:"verbatim",maxBytes:2e6},{kind:"text",media_type:"application/toml",extensions:[".toml"],cite:"verbatim",maxBytes:2e6},{kind:"text",media_type:"application/xml",extensions:[".xml"],cite:"verbatim",maxBytes:2e6},{kind:"text",media_type:"text/plain",extensions:[".log"],cite:"verbatim",maxBytes:2e6},{kind:"pdf",media_type:"application/pdf",extensions:[".pdf"],cite:"verbatim",maxBytes:25e6,sniff:e=>e.subarray(0,5).toString("latin1")==="%PDF-"},{kind:"docx",media_type:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",extensions:[".docx"],cite:"verbatim",maxBytes:25e6,sniff:e=>e.length>=4&&e[0]===80&&e[1]===75&&e[2]===3&&e[3]===4,sniffFail:e=>e.length>=8&&e.subarray(0,8).equals(ee)?"DOCX_ENCRYPTED_OR_LEGACY: password-protected Office file (or a legacy .doc renamed .docx) \u2014 remove the password / save as .docx and re-ingest":void 0},Q],ee=Buffer.from([208,207,17,224,161,177,26,225]),S={pdf:"pdf",docx:"docx",jira:"jira"},pe=new Set(Object.keys(S));function J(e){let n=W(e).toLowerCase(),t=z.find(i=>i.extensions.includes(n));return t?{ok:!0,media:t}:{ok:!1,code:"UNSUPPORTED_MEDIA",allowlist:z.flatMap(i=>i.extensions)}}function v(e){return e>=1024*1024?`${(e/(1024*1024)).toFixed(1)} MB`:`${Math.max(1,Math.round(e/1024))} KB`}function ae(e,n,t){return G({source_id:e,source_cid:"sha256:".padEnd(71,"0"),doc_kind:n,numbered_text:U(t)})}var Y=2e3;function de(e){let t=C(e,H(e)).toLowerCase().replace(/[^a-z0-9._-]+/g,"-").replace(/^[^a-z0-9]+/,"");return k(t),t}function Be(e){let n=/^(.*?)[-_.]?v?\d+$/.exec(e);if(!n)return null;let t=(n[1]??"").replace(/[-_.]+$/,"");return t.length>0&&t!==e?t:null}function X(e){let n=se(e,"meta.json");ne(n)||(ie(e,{recursive:!0}),re(n,JSON.stringify({schema:$,canonicalizer:"v1"},null,2)+`
3
- `))}async function ke(e){let{contextDir:n,filePath:t,asId:i,confirmSameSource:y,converters:h}=e;X(n);let o=oe(t),s=J(t);if(!s.ok)throw new Error(`${C(t)} is a file type kane can't ingest (${H(t)||"no extension"}) \u2014 supported: ${s.allowlist.join(" ")} [UNSUPPORTED_MEDIA]`);if(o.byteLength>s.media.maxBytes)throw new Error(`${C(t)} is too large \u2014 ${v(o.byteLength)}, the limit for ${s.media.media_type} is ${v(s.media.maxBytes)} [FILE_TOO_LARGE]`);if(s.media.sniff&&!s.media.sniff(o)){let m=s.media.sniffFail?.(o);throw new Error(m??`MEDIA_SNIFF_MISMATCH: ${t} does not look like ${s.media.media_type}`)}let l;return i!==void 0?(k(i),l=i):l=de(t),ce({contextDir:n,bytes:o,media:s.media,sourceId:l,label:t,confirmSameSource:y,converters:h})}async function ce(e){let{contextDir:n,bytes:t,media:i,confirmSameSource:y,converters:h}=e,o=e.sourceId,s=e.label??o;if(X(n),t.byteLength>i.maxBytes)throw new Error(`the content is too large \u2014 ${v(t.byteLength)}, the limit for ${i.media_type} is ${v(i.maxBytes)} [FILE_TOO_LARGE]`);let l=[],m=S[i.kind];if(i.cite==="verbatim"&&!m){try{new TextDecoder("utf-8",{fatal:!0}).decode(t)}catch{throw new Error(`ENCODING_UNSUPPORTED: ${s} is not valid UTF-8 \u2014 re-save it as UTF-8 and re-ingest`)}t.toString("utf8").split(`
4
- `).some(f=>f.length>Y)&&l.push(`long line detected (> ${Y} chars) \u2014 anchors lose granularity; consider pretty-printing before ingest`)}let p=B(t),_=new Map,c=null,M=!1;for(let f=0;;f++){let x=T(n),u=x.heads.get(o),Z=u!=null?x.getNode(u)?.content:void 0;if(u!=null&&Z?.blob===p)return{status:"unchanged",source_id:o,cid:u,blob:p};if(u==null){for(let[r,g]of x.heads.entries())if(!(r===o||g==null)&&x.getNode(g)?.content.blob===p){let a;if(_.has(r)?a=_.get(r):f===0&&y?(a=await y(r),_.set(r,a)):(a=!1,_.set(r,a),f>0&&l.push(`same bytes already ingested as '${r}' \u2014 minted under '${o}' anyway (the twin appeared mid-commit; not prompted)`)),a)return{status:"unchanged",source_id:r,cid:g,blob:p};break}}if(c===null){let r={},g,a=null,O=null;if(m){let A=h?.[m];if(!A)throw new Error(`${m.toUpperCase()}_CONVERTER_MISSING: ${m} ingestion requires the converter \u2014 the command layer wires it`);let d=await A(t);a=Buffer.from(d.projection,"utf8");let R=ae(o,i.kind,a);if(R>4e5)throw new Error(`PROJECTION_TOO_LARGE: serialized source payload ${R} bytes > ${4e5} \u2014 split the document and re-ingest`);r={text_blob:B(a),...d.inventory.length>0?{images:d.inventory}:{},converter:d.converter},O=d.blobs,g={kind:i.kind,...d.pages!==void 0?{pages:d.pages}:{},delivered:d.delivered.length,omitted:d.inventory.length-d.delivered.length}}c={derived:r,composite:g,projBytes:a,derivedBlobs:O}}if(!M){if(b(n,t),c.projBytes!==null&&b(n,c.projBytes),c.derivedBlobs!==null)for(let[,r]of c.derivedBlobs)b(n,r);M=!0}let w=P(o,p),E=D("source",w);if(E.length>0)throw new Error(`source node fails ${E[0].code}: ${E[0].detail}`);let I=L("source",w);try{F(n,{ts:new Date().toISOString(),proposal_id:null,nodes:[{cid:I,label:N.SOURCE,content:w}],edges:[],review:[],supersessions:[],media:{[o]:{format:i.kind,media_type:i.media_type,anchors_supported:m?["L-L","img#ref"]:i.cite==="verbatim"?["L-L"]:[],...c.derived}},...e.eventIds&&e.eventIds.length>0?{event_ids:e.eventIds}:{},source_head_moves:{[o]:I}},{expectPrev:x.latestHash})}catch(r){if(r instanceof j&&f<3)continue;throw r}return{status:u!=null?"versioned":"created",source_id:o,cid:I,blob:p,...l.length?{warnings:l}:{},...c.composite?{composite:c.composite}:{}}}}export{k as a,Q as b,pe as c,J as d,ae as e,de as f,Be as g,ke as h,ce as i};
@@ -1,10 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{b as K}from"./chunk-3LWTUMDG.js";import{a as j,b as B,c as Y}from"./chunk-AM5S4KG4.js";import{a as U}from"./chunk-DNNZ353O.js";import{d as F}from"./chunk-QM4S2APK.js";import{a as k}from"./chunk-GW5DWAXY.js";import{a as L,b as P,j as G,n as N}from"./chunk-3STZLM5J.js";import{d as V}from"./chunk-M7WQM4UA.js";import{d as E,e as x,g as I}from"./chunk-5YPBPZUR.js";function ee(e,n,t,i,s){let f=t.rows.filter(u=>{let d=i.get(u.temp_ref);return d!==void 0&&d!=="reject"});if(f.length===0)return{record:null,errors:null};let c={version:1,read_basis:n.latestHash,source:{source_id:t.source_id,source_cid:n.heads.get(t.source_id)??""},use_cases:f.map(u=>u.uc)},p=new Map;for(let u of f){let d=i.get(u.temp_ref);typeof d=="object"?p.set(u.temp_ref,{resolution:"edited",edit:d.edited}):p.set(u.temp_ref,{resolution:u.uc.matches_existing&&u.uc.changed?"edited":"approved"})}let g=Y(c,n,t.staged_source_cid);if(g.errors!==null)return{record:null,errors:g.errors};let o=g.proposal,l=c.source.source_cid?D(e,n,c.source.source_cid):null;if(l!==null){o=B(o,l);let u=G(o,j(l),n);if(u.length>0)return{record:null,errors:[{code:"HELD_CITES_STALE",detail:"the source moved after this plan staged \u2014 its quotes no longer verify against the current head; re-run kane-cli maintain reconcile to re-stage"},...u]}}let m=`held-${(n.latestHash??"root").slice(-12)}-${f.length}`;return N({contextDir:e,graph:n,proposal:o,proposalId:m,verdicts:p,by:s,autoName:!0})}function W(e,n,t=[]){let i=K(e,n),s=new Set,f=[],c=l=>{!l||s.has(l)||(s.add(l),f.push(b(e,l)))};for(let l of i.pairs)c(l.scenario),c(l.test);for(let[l,m]of i.verifies){c(l);for(let u of m)c(u)}if(t.length===0)return{stale_refs:f};let p=l=>`${String(l.props.source_id)}\0${String(l.props.anchor)}`,g=new Set;for(let{cid:l}of e.byLabel(E.USECASE))if(e.tipOf(l)===n)for(let m of e.edgesInto(l)){if(m.type!==x.DERIVES)continue;let u=m.props.claim;typeof u=="string"&&t.includes(u)&&g.add(p(m))}if(g.size===0)return{stale_refs:f};let o=new Set;for(let[l,m]of i.verifies)if(e.edgesInto(l).some(d=>d.type===x.DERIVES&&g.has(p(d)))){o.add(b(e,l));for(let d of m)o.add(b(e,d))}return{stale_refs:f,...o.size>0?{direct_refs:[...o]}:{}}}var q="this release plans changes only \u2014 blast-radius impact and drift meaning-checks are not measured, and REMOVE rows are never executed automatically",te="suite untouched; graph updated";function M(e,n){return!e.superseded.has(n)&&e.trust.get(n)!=="archived"}function b(e,n,t=new Set){let i=e.nameOf.get(n);if(i!==void 0)return i;if(t.has(n))return n;t.add(n);for(let[s,f]of e.superseded){if(f!==n)continue;let c=b(e,s,t);if(c!==s)return c}return n}function O(e){return String(e).slice(0,19)}function A(e,n,t){let i=e.edgesFrom(n).find(s=>s.type===t);return i?e.tipOf(i.dst):null}function X(e,n){let t=e.nodeLabel.get(n);if(t===E.USECASE)return n;if(t===E.SCENARIO)return A(e,n,x.BELONGS_TO);if(t===E.AC){let i=A(e,n,x.SCOPED_TO);return i?e.nodeLabel.get(i)===E.USECASE?i:A(e,i,x.BELONGS_TO):null}if(t===E.TEST){let i=A(e,n,x.AUTOMATES);return i?A(e,i,x.BELONGS_TO):null}return null}function z(e,n){let t=[],i=new Map;for(let s of e.derivesInto(n))i.set(String(s.props.source_id),s);for(let[s,f]of i){let c=e.heads.get(s);if(c==null){t.push(`DERIVES pin ${s} @ ${O(f.props.source_cid)} \u2014 source retired`);continue}if(c!==f.props.source_cid){let p=e.convChains.get(s)?.chain;if(p&&p.includes(String(f.props.source_cid)))continue;t.push(`DERIVES pin ${s} @ ${O(f.props.source_cid)} \u2014 source head moved to ${O(c)}`)}}for(let s of e.edgesFrom(n))I(s.type)?.pin?.comparesTo==="dst_tip"&&e.superseded.has(s.dst)&&t.push(`${s.type} pin \u2192 ${b(e,s.dst)} \u2014 target superseded`);return t.join("; ")||"structural pin broken"}var ne=new Set([E.USECASE,E.SCENARIO,E.AC,E.TEST]);function $(e,n){return e.ref<n.ref?-1:e.ref>n.ref?1:0}function D(e,n,t){let i=U(e,n,t);return i===null?null:i.toString("utf8")}function se(e,n,t,i,s){let f=t.props.quote;if(typeof f=="string"&&f.length>0)return i.includes(f);let c=String(t.props.source_cid);s.has(c)||s.set(c,D(e,n,c));let p=s.get(c);if(p===null)return!1;let g=P(p,String(t.props.anchor));return g===null?!1:g.split(`
3
- `).some(o=>o.trim().length>0&&i.includes(o.trim()))}function oe(e,n,t){let i=L(String(n.props.anchor));if(i?.kind!=="img-part")return!1;let f=(e.mediaOf(String(n.props.source_cid)).images??[]).find(o=>o.ref===i.ref),c=f?.blob;if(c===void 0)return!1;let p=e.mediaOf(t).images??[];if(p.some(o=>o.blob===c))return!0;let g=f?.appearance;return g!==void 0&&p.filter(o=>o.appearance===g).length===1}var J=128*1024,Q=64*1024;function re(e,n){let t=e.split(`
4
- `),i=n.split(`
5
- `),s=0;for(;s<t.length&&s<i.length&&t[s]===i[s];)s++;let f=t.length,c=i.length;for(;f>s&&c>s&&t[f-1]===i[c-1];)f--,c--;if(f===s&&c===s)return"";let p=t.slice(s,f),g=i.slice(s,c),l=ie(p,g,2e3),m=[];if(l===null)m.push(`@@ old L${s+1}-L${f} \u2192 new L${s+1}-L${c} @@`,...p.map(u=>`- ${u}`),...g.map(u=>`+ ${u}`));else{let u=l.map((a,h)=>a.op==="="?-1:h).filter(a=>a>=0),d=0;for(;d<u.length;){let a=d;for(;a+1<u.length&&u[a+1]-u[a]<=3;)a++;let h=Math.max(u[d]-1,0),v=Math.min(u[a]+1,l.length-1),y=l.slice(h,v+1),S=s+(y[0].ai??0)+1,_=s+(y[0].bi??0)+1,r=y.filter(R=>R.op!=="+").length,w=y.filter(R=>R.op!=="-").length;m.push(`@@ old L${S}-L${S+Math.max(r-1,0)} \u2192 new L${_}-L${_+Math.max(w-1,0)} @@`);for(let R of y)m.push(R.op==="="?` ${R.line}`:`${R.op} ${R.line}`);d=a+1}}return m.join(`
6
- `)}function ie(e,n,t){let i=e.length,s=n.length,f=Math.min(i+s,t),c=new Map([[1,0]]),p=[],g=!1;for(let u=0;u<=f&&!g;u++){p.push(new Map(c));for(let d=-u;d<=u;d+=2){let a=d===-u||d!==u&&(c.get(d-1)??0)<(c.get(d+1)??0)?c.get(d+1)??0:(c.get(d-1)??0)+1,h=a-d;for(;a<i&&h<s&&e[a]===n[h];)a++,h++;if(c.set(d,a),a>=i&&h>=s){g=!0;break}}}if(!g)return null;let o=i,l=s,m=[];for(let u=p.length-1;u>0;u--){let d=p[u],a=o-l,h=a===-u||a!==u&&(d.get(a-1)??0)<(d.get(a+1)??0)?a+1:a-1,v=d.get(h)??0,y=v-h;for(;o>v&&l>y;)m.push({op:"=",line:e[o-1],ai:o-1,bi:l-1}),o--,l--;u>0&&(o===v?(m.push({op:"+",line:n[l-1],ai:o,bi:l-1}),l--):(m.push({op:"-",line:e[o-1],ai:o-1,bi:l}),o--))}for(;o>0&&l>0;)m.push({op:"=",line:e[o-1],ai:o-1,bi:l-1}),o--,l--;for(;o>0;)m.push({op:"-",line:e[o-1],ai:o-1,bi:0}),o--;for(;l>0;)m.push({op:"+",line:n[l-1],ai:0,bi:l-1}),l--;return m.reverse()}function ce(e){let n=Buffer.byteLength(e,"utf8");if(n<=J+Q)return{diff:e,truncated:!1};let t=Buffer.from(e,"utf8"),i=J;for(;i>0&&(t[i]&192)===128;)i--;let s=n-Q;for(;s<n&&(t[s]&192)===128;)s++;let f=t.subarray(0,i).toString("utf8"),c=t.subarray(s).toString("utf8");return{diff:`${f}
7
- \u2026 [diff truncated: ${n-i-(n-s)} bytes omitted] \u2026
8
- ${c}`,truncated:!0}}function ae(e,n){let t=k(e),i=t.heads.get(n);if(typeof i!="string")return null;let s=[];for(let d of V(e).records){let a=d.source_head_moves?.[n];a!==void 0&&a!==s[s.length-1]&&s.push(a)}let f=s.lastIndexOf(i),c=f>0?s[f-1]:null;if(typeof c!="string"||c===i)return null;let p=D(e,t,c),g=D(e,t,i);if(p===null||g===null)return null;let{diff:o,truncated:l}=ce(re(p,g)),m=new Set,u=[];for(let d of t.edgesFrom(c))d.type!==x.DERIVES||t.nodeLabel.get(d.dst)!==E.USECASE||m.has(d.dst)||(m.add(d.dst),u.push({id:d.dst,title:String(t.getNode(d.dst)?.content.title??"")}));return{source_id:n,old_head:c,new_head:i,diff:o,...l?{truncated:!0}:{},prior_ucs:u}}function de(e,n,t){let i=e.getNode(n)?.content??{},s=e.getNode(t)?.content??{},c=[...new Set([...Object.keys(i),...Object.keys(s)])].sort().filter(p=>JSON.stringify(i[p])!==JSON.stringify(s[p]));return c.length>0?`updated: ${c.join(", ")}`:"updated"}function le(e,n,t,i,s,f,c){let p=new Set((c?.rows??[]).map(a=>a.matched_cid).filter(a=>!!a)),g=[];for(let[a,h]of t.superseded)h===null||a===h||n.superseded.has(a)||t.nodeLabel.get(a)===E.USECASE&&g.push({kind:"MODIFY",ref:b(t,a),old_cid:a,new_cid:h,summary:de(t,a,h)});let o=f.map(a=>({kind:"ADD",ref:b(t,a),cid:a}));for(let a of c?.rows??[])a.kind==="MODIFY"&&a.matched_cid?g.push({kind:"MODIFY",ref:b(t,a.matched_cid),old_cid:a.matched_cid,new_cid:null,summary:`${a.why} (staged)`}):a.kind==="ADD"&&o.push({kind:"ADD",ref:a.title,cid:null});let l=[],m=D(e,t,s),u=new Map;for(let{cid:a}of t.byLabel(E.USECASE)){if(!M(t,a)||p.has(a))continue;let h=t.derivesInto(a),v=h.filter(_=>String(_.props.source_id)===i);v.length===0||v.some(_=>_.props.source_cid===s)||v.some(_=>{let r=String(_.props.anchor),w=L(r);return w?.kind==="img-whole"?!1:w?.kind==="img-part"?oe(t,_,s):m!==null&&se(e,t,_,m,u)})||h.some(_=>{let r=String(_.props.source_id);if(r===i)return!1;let w=t.heads.get(r);return w!=null})||l.push({kind:"ARCHIVE",ref:b(t,a),cid:a,why:`evidence decayed: no quote from ${i} relocates into @${O(s)}, no other live source, no fresh evidence this run`,impact:W(t,t.tipOf(a))})}let d=(a,h)=>a.ref<h.ref?-1:a.ref>h.ref?1:0;return[...g.sort(d),...o.sort(d),...l.sort(d)]}function Re(e,n,t,i,s){let f=n.rows.find(d=>d.temp_ref===t);if(!f)return{ok:!1,message:`held item ${t} missing from the plan artifact`};let c=f,p=k(e);if(c.matched_cid){let d=p.tipOf(c.matched_cid);if(p.superseded.get(d)===null)return{ok:!1,message:`use-case for "${c.title}" was retired meanwhile \u2014 nothing to update`};d!==c.matched_cid&&(c={...c,matched_cid:d,uc:{...c.uc,matches_existing:{cid:d}}})}let g=s?{edited:s}:"approve",o=ee(e,p,{source_id:n.source_id,...n.staged_source_cid!==void 0?{staged_source_cid:n.staged_source_cid}:{},rows:[c]},new Map([[c.temp_ref,g]]),i);if(o.errors)return{ok:!1,message:o.errors.map(d=>`${d.code}: ${d.detail}`).join("; ")};let l=k(e),m=c.matched_cid?l.tipOf(c.matched_cid):o.record?.nodes.find(d=>d.label==="usecase")?.cid??o.record?.review[0]?.id;return{ok:!0,ref:m?b(l,m):c.title,kind:c.kind}}async function ve(e,n,t,i={}){let s=k(e),f=s.heads.get(n)??null,c=new Set(s.staleList().filter(r=>r.state==="stale").map(r=>r.cid)),p=await t.reingest(n);if(p.status==="unchanged"&&!i.resumeHeld)return{source_id:n,changed:!1,head:{status:p.status,before:f,after:p.cid},note:`nothing to reconcile \u2014 ${n} is unchanged`,skipped_arms:q,changeset:[],rows:[]};let g=i.resumeHeld?{minted:[],matched:[],held:i.resumeHeld}:await t.reextract(n),o=k(e),l=g.minted.map(r=>{let w=b(o,r);return{kind:"ADD",origin:"content-change",ref:w,reason:`new use-case extracted from ${n}`,provenance:`extraction commit \u2014 DERIVES ${n} @ ${O(p.cid)}`,action:`kane-cli design tests --use-case ${w}`}}),m=o.staleList().filter(r=>r.state==="stale"&&!c.has(r.cid)&&M(o,r.cid)).map(r=>r.cid),u=m.map(r=>{let w=b(o,r),R=ne.has(o.nodeLabel.get(r)??"");return{kind:"MODIFY",origin:"structural-stale",ref:w,reason:"stale (structural)",provenance:z(o,r),action:R?`kane-cli maintain evolve ${w}`:`kane-cli design explain ${w}`}}),d=[],a=[];for(let r of g.held?.rows??[])if(r.kind==="ADD")d.push({kind:"ADD",origin:"content-change",ref:r.title,held_ref:r.temp_ref,reason:`${r.why} (staged \u2014 commits on approval)`,provenance:`staged extraction of ${n} @ ${O(p.cid)}`,action:"approve to commit + design"});else{let w=r.matched_cid?o.tipOf(r.matched_cid):null,R=w?o.getNode(w)?.content.criteria??[]:[],T=(r.uc.updated?.criteria??[]).map(C=>typeof C=="string"?C:C.text),Z=[...T.filter(C=>!R.includes(C)),...r.uc.updated?.criteria!==void 0?R.filter(C=>!T.includes(C)):[]],H=w?W(o,w,Z):void 0;a.push({kind:"MODIFY",origin:"content-change",ref:r.matched_cid?b(o,r.matched_cid):r.title,held_ref:r.temp_ref,reason:`${r.why} (staged \u2014 commits on approval)`,provenance:`staged extraction of ${n} @ ${O(p.cid)}`,action:"approve to commit the updated version (old\u2192new redirect)",...H?{impact:H}:{}})}let h=new Set;for(let r of[...g.minted,...g.matched])h.add(o.tipOf(r));for(let r of g.held?.rows??[])r.matched_cid&&h.add(o.tipOf(r.matched_cid));for(let r of m){let w=X(o,o.tipOf(r));w&&o.nodeLabel.get(w)===E.USECASE&&h.add(o.tipOf(w))}let v=[];for(let r of await F(o,"design")){if(r.kind!=="no-verifies")continue;let w=o.resolve(r.ref);if(!w)continue;let R=X(o,w.tip);!R||!h.has(o.tipOf(R))||v.push({kind:"ADD",origin:"content-change",ref:r.ref,reason:r.why,provenance:`gaps engine (design) \u2014 uncovered AC of touched use-case ${b(o,R)}`,action:r.ready_command})}let y=[];for(let{cid:r}of o.byLabel(E.USECASE))M(o,r)&&o.stale(r)==="orphaned"&&y.push({kind:"REMOVE",ref:b(o,r),reason:"orphaned \u2014 no live source evidences this use-case",provenance:z(o,r),action:"plan-only \u2014 REMOVE is not executed in this release"});let S=new Set,_=[...l.sort($),...d.sort($),...v.sort($),...a.sort($),...u.sort($),...y.sort($)].filter(r=>{let w=`${r.kind}\0${r.ref}`;return S.has(w)?!1:(S.add(w),!0)});return{source_id:n,changed:!0,head:{status:p.status,before:f,after:p.cid},note:te,skipped_arms:q,changeset:le(e,s,o,n,p.cid,g.minted,g.held),rows:_,...g.held?{held:g.held}:{}}}function be(e,n){return async t=>{let{ingestFile:i}=await import("./ingest-AL6CABJT.js"),{convertPdf:s}=await import("./pdf-convert-S7VYE6AV.js"),{convertDocx:f}=await import("./docx-convert-ZBVQO2LG.js"),c=await i({contextDir:e,filePath:n,asId:t,converters:{pdf:s,docx:f}});return{status:c.status,cid:c.cid}}}function ye(e,n={}){return async t=>{let i=[],[{runExtract:s},{resolveAgentAuthEnv:f},{runAgent:c},{preflightTurn:p}]=await Promise.all([import("./run-VRVH4VO3.js"),import("./spawner-AH5FTUYU.js"),import("./bridge-T4HL4TG7.js"),import("./turn-preflight-JGYT7LXP.js")]),g=await f(),o=new Set(k(e).byLabel(E.USECASE).map(S=>S.cid)),l=ae(e,t)??void 0,m=0,u=await s({mode:"override",source:t,...l?{changeContext:l}:{}},{contextDir:e,agent:c,preflightTurn:()=>p(g),ask:async()=>[],review:async S=>{if(!n.stage)return new Map(S.map(r=>[r.temp_ref,{resolution:r.matches_existing&&r.changed?"edited":"skipped"}]));let _=new Map;for(let r of S){if(r.matches_existing&&!r.changed){_.set(r.temp_ref,{resolution:"skipped"});continue}i.push({kind:r.matches_existing?"MODIFY":"ADD",temp_ref:r.temp_ref,title:r.title,why:r.matches_existing?`updated: ${Object.keys(r.updated??{}).join(", ")||"content"}`:`newly extracted from ${t}`,...r.matches_existing?{matched_cid:r.matches_existing.cid,updated:r.updated}:{},uc:r}),_.set(r.temp_ref,{resolution:"rejected"})}return _},confirmStale:async()=>!1,out:S=>process.stderr.write(S+`
9
- `),progress:S=>process.stderr.write(S+`
10
- `),emit:S=>{S.type==="commit"&&typeof S.assumed=="number"&&(m+=S.assumed)},isTTY:!1,auth:g});if(u!==0)throw new Error(`reconcile: re-extract of ${t} failed (exit ${u})`);let d=k(e),a=d.heads.get(t),h=[],v=[];if(typeof a=="string"){let S=new Set;for(let _ of d.edgesFrom(a))_.type!==x.DERIVES||d.nodeLabel.get(_.dst)!==E.USECASE||S.has(_.dst)||(S.add(_.dst),!(n.stage&&d.trust.get(_.dst)==="archived")&&(o.has(_.dst)?v:h).push(_.dst))}let y=k(e).heads.get(t);return{minted:h,matched:v,defaultsTaken:m,...n.stage?{held:{source_id:t,...y!=null?{staged_source_cid:y}:{},rows:i}}:{}}}}export{Re as a,ve as b,be as c,ye as d};
@@ -1,4 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a as F}from"./chunk-L4JIMNKW.js";import{a as _,d as k,g as A}from"./chunk-M7WQM4UA.js";import{a as R,e as S,f as I,g as j,h as L}from"./chunk-5YPBPZUR.js";import{existsSync as w,mkdirSync as P,readFileSync as N,renameSync as J,rmSync as V,writeFileSync as W}from"fs";import{dirname as K,join as y}from"path";var q=i=>y(i,"derived"),D=i=>y(q(i),"index.json");function U(i,s){let r=s.startsWith("sha256:")?s.slice(7):s;return y(q(i),"nodes",r.slice(0,2),r.slice(2)+".json")}function $(){return{applied:{seq:0,hash:null},heads:{},trust:{},nodeLabel:{},forward:{},extracted:[],design_of:{},design_generation:{},exec:{},superseded:{},names:{},archivedReason:{},appliedEvents:[],completeness:{},srcOwner:{},conv:{},media:{},design_phases:{}}}function M(i){let s=D(i);if(!w(s))return null;try{let r=JSON.parse(N(s,"utf8"));return r.superseded===void 0||r.names===void 0||r.archivedReason===void 0||r.appliedEvents===void 0||r.conv===void 0||r.media===void 0||r.exec===void 0||r.completeness===void 0||r.srcOwner===void 0||r.design_phases===void 0||r.reverse!==void 0?null:r}catch{return null}}function T(i,s){P(K(i),{recursive:!0});let r=`${i}.tmp-${process.pid}`;W(r,s),J(r,i)}function b(i,s,r,p,l={}){let f=l.writeNodeFiles!==!1,g=new Set(s.extracted),m=new Set(s.appliedEvents);r.forEach((t,v)=>{for(let e of t.nodes){let n=U(i,e.cid);f&&!w(n)&&T(n,JSON.stringify({label:e.label,content:e.content})+`
3
- `),!(e.cid in s.trust)&&e.content.derived===!0&&(s.trust[e.cid]="derived"),s.nodeLabel[e.cid]=e.label}for(let[e,n]of Object.entries(t.source_head_moves))typeof n=="string"&&(s.srcOwner[n]=e);if(t.proposal_id!=null&&typeof t.extraction_of=="string"){g.add(t.extraction_of);let e=null;for(let n of t.edges)if(n.type===S.DERIVES&&n.props.source_cid===t.extraction_of&&typeof n.props.source_id=="string"){e=n.props.source_id;break}if(e??=s.srcOwner[t.extraction_of]??null,e!==null){let n=s.completeness[e];(!n||t.seq>=n.seq)&&(s.completeness[e]={source_cid:t.extraction_of,completeness:"complete",...t.extractor_version?{extractor_version:t.extractor_version}:{},at:t.ts,seq:t.seq})}else s.completenessSkipped=(s.completenessSkipped??0)+1}else if(t.proposal_id!=null&&Array.isArray(t.extraction_of))for(let e of t.extraction_of){g.add(e.source_cid);let n=s.completeness[e.source_id];(!n||t.seq>=n.seq)&&(s.completeness[e.source_id]={source_cid:e.source_cid,completeness:e.completeness,...e.extractor_version?{extractor_version:e.extractor_version}:{},at:e.at,seq:t.seq})}t.design_of&&((s.design_of??={})[t.design_of.uc_cid]={engine:t.design_of.engine,seq:t.seq}),t.design_generation&&((s.design_generation??={})[t.design_generation.uc_root]={gen:t.design_generation.generation,seq:t.seq});{let e=t.design_phase;e&&typeof e.uc_root=="string"&&typeof e.phase=="string"&&typeof e.generation=="number"&&((s.design_phases??={})[e.uc_root]??=[]).push({phase:e.phase,generation:e.generation,seq:t.seq,completeness:e.completeness==="partial"?"partial":"complete"})}for(let e of t.executions??[])((s.exec??={})[e.about]??=[]).push(e);for(let e of t.edges){let{quote:n,...o}=e.props,c=s.forward[e.src]??=[];c.some(a=>a.ecid===e.ecid)||c.push({...e,props:o}),t.proposal_id!=null&&e.type===S.DERIVES&&typeof e.props.source_cid=="string"&&g.add(e.props.source_cid)}for(let e of t.review)e.resolution==="approved"||e.resolution==="edited"?(s.trust[e.id]="trusted",delete s.archivedReason[e.id]):e.resolution==="rejected"?(s.trust[e.id]="archived",e.reason?s.archivedReason[e.id]=e.reason:delete s.archivedReason[e.id]):e.resolution==="reset"&&(s.trust[e.id]="derived",delete s.archivedReason[e.id]);for(let e of t.supersessions)e.kind==="node"?e.new===e.old?delete s.superseded[e.old]:s.superseded[e.old]=e.new:s.superseded[e.ecid]=null;for(let e of t.names??[])s.names[e.slug]=e.cid;for(let[e,n]of Object.entries(t.source_head_moves))s.heads[e]=n;for(let e of t.event_ids??[])m.add(e);if(t.media)for(let[e,n]of Object.entries(t.media)){let o=t.source_head_moves[e];typeof o=="string"&&(s.media[o]=n)}if(t.conv){let e=t.source_head_moves[t.conv.source_id];if(typeof e=="string"){let n=s.conv[t.conv.source_id],o=n&&n.chain.length>0?n.chain[n.chain.length-1]:null;t.conv.append_of===o?s.conv[t.conv.source_id]={turns:t.conv.turn,chain:[...n?.chain??[],e]}:s.conv[t.conv.source_id]={turns:t.conv.turn,chain:[e]}}}for(let[e,n]of Object.entries(t.source_head_moves))t.conv?.source_id!==e&&s.conv[e]!==void 0&&(s.conv[e]=typeof n=="string"?{turns:s.conv[e].turns,chain:[n]}:{turns:s.conv[e].turns,chain:[]});s.applied={seq:t.seq,hash:p[v]}}),s.extracted=[...g].sort(),s.appliedEvents=[...m].sort()}function x(i,s){T(D(i),JSON.stringify(s)+`
4
- `)}function Y(i){let s=y(i,"meta.json");if(w(s))try{let r=JSON.parse(N(s,"utf8"));if(r.schema!==R||r.canonicalizer!=="v1")throw new _(`schema fence: store is ${r.schema}/${r.canonicalizer}, this build is ${R}/${"v1"} \u2014 migrate explicitly (kane-cli context rebuild after upgrading)`)}catch(r){throw r instanceof _?r:new _(`corrupt meta.json in ${i} \u2014 fix or remove it`)}}function z(i){Y(i);let s=M(i);if(s===null){s=$();let{records:l,hashes:f}=k(i);return b(i,s,l,f),x(i,s),s}let{records:r,hashes:p}=A(i,s.applied.seq,s.applied.hash);return r.length>0&&(b(i,s,r,p),x(i,s)),s}function X(i){return V(q(i),{recursive:!0,force:!0}),z(i)}function ee(i){let s=[],r=[],p=[];try{({records:r,hashes:p}=k(i))}catch(n){return{ok:!1,issues:[n instanceof _?n.message:String(n)],records:0}}let l=$();b(i,l,r,p,{writeNodeFiles:!1});let f=M(i),g=0,m=l;if(f!==null&&f.applied.seq<r.length){let n=f.applied.seq;f.applied.hash===(n===0?null:p[n-1])&&(g=r.length-n,m=$(),b(i,m,r.slice(0,n),p.slice(0,n),{writeNodeFiles:!1}))}if(f===null)s.push("derived/index.json missing or corrupt (run kane-cli context rebuild)");else{let n=o=>JSON.stringify(O(o));for(let o of["applied","heads","trust","nodeLabel","forward","extracted","superseded","names","archivedReason","appliedEvents","conv","media","design_of","design_generation","design_phases","exec","completeness","srcOwner"])n(m[o])!==n(f[o])&&s.push(`derived drift in index.${o} (run kane-cli context rebuild)`)}let t=new Set;for(let n of Object.values(l.forward))for(let o of n)t.add(o.ecid);let v=new Set;for(let n of r)for(let o of n.supersessions)o.kind==="node"?(o.old in l.nodeLabel||s.push(`SUPERSEDE_UNKNOWN_OLD: ${o.old} (record ${n.seq})`),o.new!==null&&o.new!==o.old&&!(o.new in l.nodeLabel)&&s.push(`SUPERSEDE_UNKNOWN_NEW: ${String(o.new)} (record ${n.seq})`),o.new===o.old?v.delete(o.old):(v.has(o.old)&&s.push(`DOUBLE_SUPERSEDE: ${o.old} re-superseded while live (record ${n.seq})`),v.add(o.old))):t.has(o.ecid)||s.push(`SUPERSEDE_UNKNOWN_ECID: ${o.ecid} (record ${n.seq})`);for(let n of Object.keys(l.superseded)){let o=new Set,c=n;for(;c!==null&&c in l.superseded;){if(o.has(c)){s.push(`SUPERSEDE_CYCLE: chain from ${n} revisits ${c}`);break}o.add(c),c=l.superseded[c]}}for(let[n,o]of Object.entries(l.names))o in l.nodeLabel||s.push(`NAME_UNKNOWN_TARGET: slug ${n} \u2192 ${o} not in the graph`);for(let n of r)for(let o of n.edges){let c=l.nodeLabel[o.src]??"(unknown)",a=l.nodeLabel[o.dst]??"(unknown)";for(let d of L(o.type,c,a,o.props))s.push(`${d.code}: ${o.ecid} ${d.detail}`)}let e=new Map;for(let n of Object.values(l.forward))for(let o of n){if(o.ecid in l.superseded)continue;let c=e.get(o.type)??[];c.push(o),e.set(o.type,c)}for(let[n,o]of e){let c=j(n);if(c?.acyclic){let a=new Map;for(let u of o)a.set(u.src,[...a.get(u.src)??[],u.dst]);let d=new Map,h=u=>{d.set(u,1);for(let E of a.get(u)??[])if(d.get(E)===1||d.get(E)===void 0&&h(E))return!0;return d.set(u,2),!1};for(let u of a.keys())if(d.get(u)===void 0&&h(u)){s.push(`EDGE_CYCLE: live ${n} edges form a cycle reachable from ${u}`);break}}if(c?.cardinality==="one-live-per-src"||c?.cardinality==="one-live-per-src-and-dst"){let a=new Map;for(let d of o)d.dst in l.superseded||a.set(d.src,(a.get(d.src)??0)+1);for(let[d,h]of a)h>1&&s.push(`CARDINALITY_VIOLATION: ${h} live ${n} edges from ${d} (one-live-per-src)`)}if(c?.cardinality==="one-live-per-src-and-dst"){let a=new Map;for(let d of o)d.src in l.superseded||d.dst in l.superseded||a.set(d.dst,(a.get(d.dst)??0)+1);for(let[d,h]of a)h>1&&s.push(`CARDINALITY_VIOLATION: ${h} live ${n} edges onto ${d} (one-live-per-dst)`)}}for(let[n,o]of Object.entries(m.nodeLabel)){let c=U(i,n);if(!w(c)){s.push(`missing node file for ${n} (run kane-cli context rebuild)`);continue}try{let a=JSON.parse(N(c,"utf8"));(a.label!==o||F(a.label,a.content)!==n)&&s.push(`node file content mismatch for ${n} (run kane-cli context rebuild)`);for(let d of I(a.label,a.content))s.push(`${d.code}: ${n} ${d.detail}`)}catch{s.push(`corrupt node file for ${n} (run kane-cli context rebuild)`)}}return{ok:s.length===0,issues:s,records:r.length,...g>0?{pending:g}:{}}}function O(i){return Array.isArray(i)?i.map(O):i&&typeof i=="object"?Object.fromEntries(Object.entries(i).sort(([s],[r])=>s<r?-1:1).map(([s,r])=>[s,O(r)])):i}export{U as a,z as b,X as c,ee as d};
@@ -1,3 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- var v="usecase-dedup";function w(n,r){let i=Math.min(n.length,r.length),u=0,s=0,c=0;for(let e=0;e<i;e++)u+=n[e]*r[e],s+=n[e]*n[e],c+=r[e]*r[e];return s===0||c===0?0:u/(Math.sqrt(s)*Math.sqrt(c))}function y(n,r,i){return i*n+(1-i)*r}var C=.7;function H(n){return new Set(n.toLowerCase().replace(/[^\p{L}\p{N}]+/gu," ").split(" ").filter(Boolean))}function R(n,...r){let i=H(n);if(i.size===0)return 0;let u=n.trim().toLowerCase(),s=0;for(let c of r){let e=H(c);if(e.size===0)continue;let p=0;for(let m of i)e.has(m)&&p++;let b=i.size+e.size-p,d=b===0?0:p/b;u&&c.toLowerCase().includes(u)&&(d=Math.max(d,.9)),s=Math.max(s,d)}return s}var S=n=>String(n.title??"");function A(n){return n.byLabel("usecase").filter(r=>!n.superseded.has(r.cid)).map(r=>({cid:r.cid,text:S(r.content)}))}function _(n,r){let i=r.threshold??.8,u=new Map,s=null;return{async batchSimilar(c,e){let p=c.latestHash;if(e.length===0)return{hits:[],degraded:!1,probeBasis:p};let b=A(c),d=[];try{s=(await r.resolveAlias(v)).alias;let f=new Map,g=[];for(let t of b){let a=r.readVector?.(s,t.cid)??null;a!==null?f.set(t.cid,a):g.push(t)}let o=[...e.map(t=>t.probeText),...g.map(t=>t.text)],{vectors:P}=await r.embed(v,o);e.forEach((t,a)=>u.set(t.tempRef,Float32Array.from(P[a]))),g.forEach((t,a)=>{let l=Float32Array.from(P[e.length+a]);f.set(t.cid,l),r.writeVector?.(s,t.cid,l)});for(let t of e){let a=u.get(t.tempRef);for(let l of b){let x=f.get(l.cid);if(x===void 0)continue;let h=y(w(a,x),R(t.probeText,l.text),C);h>=i&&d.push({tempRef:t.tempRef,candidateCid:l.cid,score:h,scorer:"embedding"})}}return{hits:d,degraded:!1,probeBasis:p}}catch(m){process.stderr.write(JSON.stringify({event:"dedup_probe_degraded",contextDir:n,candidates:e.length,reason:String(m?.message??m).slice(0,160),ts:new Date().toISOString()})+`
3
- `);for(let f of e)for(let g of b){let o=R(f.probeText,g.text);o>=i&&d.push({tempRef:f.tempRef,candidateCid:g.cid,score:o,scorer:"lexical_fallback"})}return{hits:d,degraded:!0,probeBasis:p}}},recheckLocal(c,e,p,b){let d=[],m=[],f=new Set;for(let g of b)for(let o of g.nodes){if(o.label!=="usecase"||f.has(o.cid)||(f.add(o.cid),c.superseded.has(o.cid)||!c.hasNode(o.cid)))continue;let P=S(o.content),t=s!==null?r.readVector?.(s,o.cid)??null:null,a=t!==null;for(let l of e){let x=u.get(l.tempRef),h;t!==null&&x!==void 0?h=y(w(x,t),R(l.probeText,P),C):(h=R(l.probeText,P),a=a&&!1),h>=i&&d.push({tempRef:l.tempRef,candidateCid:o.cid,score:h,scorer:t!==null&&x!==void 0?"embedding":"lexical_fallback"})}a||m.push(o.cid)}return{hits:d,uncachedNewNodes:m}}}}export{_ as a};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{b as g}from"./chunk-XDHZMCTA.js";import{existsSync as u}from"fs";import{dirname as d,resolve as i}from"path";import{fileURLToPath as p}from"url";var f=d(p(import.meta.url));function A(){return[i(f,".."),i(f,"../../..")]}function _(o){return{"darwin-arm64":"kane-cli-darwin-arm64","darwin-x64":"kane-cli-darwin-x64","linux-x64":"kane-cli-linux-x64","linux-arm64":"kane-cli-linux-arm64","win32-x64":"kane-cli-win-x64"}[o]??null}function w(){let o=_(`${process.platform}-${process.arch}`),n=process.platform==="win32"?"assurance-agent.exe":"assurance-agent";for(let r of A()){for(let s of o?["@testmuai","@lambdatestincprivate"]:[]){let e=i(r,"node_modules",s,o,"bin",n);if(u(e))return{cmd:e,args:[],tier:"platform"}}let a=i(r,"../assurance-agent/dist",n);if(u(a))return{cmd:a,args:[],tier:"sibling"};let t=i(r,"../assurance-agent/main.py");if(u(t)){let s=i(r,"../assurance-agent/.venv/bin/python");return{cmd:u(s)?s:"python3",args:[t],tier:"dev-python"}}}return null}function x(o,n={}){return{...process.env,...n,...g(),TESTMUAI_SOURCE:"kane-cli",TESTMUAI_SESSION_ID:o,ASSURANCE_LOG_LEVEL:process.env.ASSURANCE_LOG_LEVEL??"info"}}async function k(){if(process.env.TESTMUAI_API_KEY||process.env.TESTMUAI_BASIC_AUTH)return{};try{let{CredentialsManager:o}=await import("./credentials-XN4ROCQ3.js"),n=process.env.TESTMUAI_ENV==="stage"?"stage":"prod",r=new o,a=r.getActiveProfile()??"default",t={TESTMUAI_ENV:n},s=r.loadBasicAuth(a,n);if(s)return t.TESTMUAI_BASIC_AUTH=Buffer.from(`${s.username}:${s.access_key}`,"utf8").toString("base64"),t;let e=r.loadCredentials(a,n);if(e){try{let{refreshOAuthToken:l}=await import("./token-refresh-NIDUOTRM.js");await l({creds:r,profile:a,env:n,credentials:e})}catch{}let c=r.loadCredentials(a,n)??e;if(typeof c.access_token=="string"){let l=await T(n,c.access_token);return l?(t.TESTMUAI_BASIC_AUTH=l,t):(t.TESTMUAI_API_KEY=c.access_token,t)}}return{}}catch{return{}}}var E=8e3;function m(){return process.stderr.write("warn: session auth may expire during long runs \u2014 if that happens, run `kane-cli login` and retry\n"),null}async function T(o,n){try{let[{getEnvironment:r},{ControllerClient:a}]=await Promise.all([import("./config-R3GF2FZA.js"),import("./controller-client-RD2YEMAH.js")]),t=new a(r(o).controllerBaseUrl,n),s;try{let e=await Promise.race([t.getTmsCredentials().catch(()=>null),new Promise(c=>{s=setTimeout(()=>c(null),E)})]);return typeof e?.username!="string"||!e.username||typeof e.access_key!="string"||!e.access_key?m():Buffer.from(`${e.username}:${e.access_key}`,"utf8").toString("base64")}finally{clearTimeout(s)}}catch{return m()}}export{_ as a,w as b,x as c,k as d};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- function S(e,n){let{width:t,height:r,channels:a}=n;if(e.length!==t*r*a)throw new Error(`appearanceSignature: buffer ${e.length} bytes does not match ${t}x${r}x${a}`);let f=9,h=8,x=new Array(f*h);for(let o=0;o<h;o++){let l=Math.floor(o*r/h),d=Math.min(r,Math.max(l+1,Math.floor((o+1)*r/h)));for(let c=0;c<f;c++){let y=Math.floor(c*t/f),A=Math.min(t,Math.max(y+1,Math.floor((c+1)*t/f))),b=0,p=0;for(let u=l;u<d;u++)for(let m=y;m<A;m++){let s=(u*t+m)*a;b+=a===1?e[s]:Math.floor((e[s]*299+e[s+1]*587+e[s+2]*114)/1e3),p+=1}x[o*f+c]=Math.floor(b/p)}}let M="",i=0,g=0;for(let o=0;o<h;o++)for(let l=0;l<f-1;l++)i=i<<1|(x[o*f+l+1]>x[o*f+l]?1:0),g+=1,g===4&&(M+=i.toString(16),i=0,g=0);return M}var $=(()=>{let e=new Uint32Array(256);for(let n=0;n<256;n++){let t=n;for(let r=0;r<8;r++)t=t&1?3988292384^t>>>1:t>>>1;e[n]=t>>>0}return e})();function C(e){let n=4294967295;for(let t=0;t<e.length;t++)n=$[(n^e[t])&255]^n>>>8;return(n^4294967295)>>>0}export{S as a,C as b};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a as P}from"./chunk-YCCUBQY4.js";import{y as a}from"./chunk-C4G7RVJ6.js";import{a as S}from"./chunk-HCBYKLMW.js";import{a as M,b as n,i as $,k as B}from"./chunk-C44QQJR4.js";import{a as N}from"./chunk-6YGTRKDT.js";import{e as b}from"./chunk-UR6MHSHU.js";var o=b(S(),1);function Q(m){let e=m.findIndex(c=>c.free);return e>=0?e:null}var _=60,I=100;function X({headline:m,ask:e=!1,rows:c,sel:r,focused:T,legend:u,freeText:l=null,freeTextNote:x,sublines:i=[]}){let{stdout:t}=B(),f=t?.columns??80,A=f<_,s=Math.min(f-1,I),g=d=>T&&r===d?(0,o.jsx)(n,{color:a.assuranceAccent,children:"\u276F"}):" ",p=e?`? ${m}`:m,w=Math.max(4,s-3),h=i.map((d,v)=>(0,o.jsx)(n,{color:a.dim,children:` ${d.length>w?`${d.slice(0,w-1)}\u2026`:d}`},`sub-${v}`)),C=0,E=c.map((d,v)=>d.free?l?(0,o.jsxs)(M,{flexDirection:"column",children:[(0,o.jsxs)(M,{children:[(0,o.jsxs)(n,{children:[(0,o.jsx)(n,{color:a.assuranceAccent,children:"\u276F"})," ",(0,o.jsx)(n,{color:a.dim,children:"\u270E "})]}),(0,o.jsx)(P,{value:l.value,onChange:l.onChange,onSubmit:l.onSubmit,onCancel:l.onCancel,placeholder:d.label})]}),x?(0,o.jsx)(n,{color:a.muted,children:` ${x}`}):null]},d.key):(0,o.jsxs)(n,{children:[g(v)," ",(0,o.jsx)(n,{color:a.dim,children:`\u270E ${d.label}`})]},d.key):(C+=1,(0,o.jsxs)(n,{bold:T&&r===v,children:[g(v),` ${C}. ${d.label}`,d.detail?(0,o.jsx)(n,{color:a.dim,bold:!1,children:` \u2014 ${d.detail}`}):null]},d.key)));if(A)return(0,o.jsxs)(M,{marginTop:1,marginBottom:1,flexDirection:"column",children:[(0,o.jsx)(n,{bold:!0,color:a.assuranceAccent,children:p}),h,E,(0,o.jsx)(n,{color:a.muted,children:u})]});let L=Math.max(2,s-(3+p.length+1)),F=Math.max(2,s-(3+u.length+1));return(0,o.jsxs)(M,{marginTop:1,marginBottom:1,flexDirection:"column",children:[(0,o.jsxs)(n,{color:a.assuranceAccent,children:["\u2500\u2500 ",(0,o.jsx)(n,{bold:!0,children:p}),` ${"\u2500".repeat(L)}`]}),h,(0,o.jsx)(n,{children:" "}),E,(0,o.jsx)(n,{children:" "}),(0,o.jsxs)(n,{color:a.assuranceAccent,children:["\u2500\u2500 ",(0,o.jsx)(n,{color:a.muted,children:u}),` ${"\u2500".repeat(F)}`]})]})}var R=b(S(),1),K="ctrl+t thinking \xB7 ctrl+c exit";function D(m,e){if(m.length<=e)return m;if(e<=1)return"\u2026";let c=Math.ceil((e-1)/2),r=Math.floor((e-1)/2);return`${m.slice(0,c)}\u2026${r>0?m.slice(-r):""}`}function J({verb:m,subject:e,pendingCount:c,creditsTotal:r,state:T,hints:u=K}){let{stdout:l}=B(),x=l?.columns??80,i=[];i.push(m),T&&i.push(T),r!==void 0&&i.push(`${r.toFixed(1)} credits`);let t=c?`[${c} pending]`:null,f=" \xB7 ",s=[...i,...t?[t]:[]].join(f).length,g,p=[...i,...e?[e]:[],...t?[t]:[],u].join(f);if(p.length<=x)g=p;else{let w=x-s-(e?f.length:0)-f.length-u.length;if(e&&w>=8)g=[...i,D(e,w),...t?[t]:[],u].join(f);else{let h=x-s-(e?f.length:0);g=[...i,...e&&h>=4?[D(e,h)]:[],...t?[t]:[]].join(f)}}if(T){let w=` \xB7 ${T}`,h=g.indexOf(w);if(h>=0)return(0,R.jsxs)(n,{color:a.dim,children:[g.slice(0,h+3),(0,R.jsx)(n,{color:a.assuranceAccent,children:T}),g.slice(h+w.length)]})}return(0,R.jsx)(n,{color:a.dim,children:g})}var O=b(N(),1);function Z({onToggleThinking:m,onCtrlC:e,explorer:c,panel:r}){let u=(0,O.useRef)(null),l=(0,O.useRef)(""),x=()=>{u.current&&clearTimeout(u.current),u.current=null,l.current=""};return(0,O.useEffect)(()=>x,[]),$((i,t)=>{if(t.ctrl&&i==="t"){m();return}if(t.ctrl&&i==="c"){e();return}if(!t.ctrl&&i.includes("")){e();return}if(!t.ctrl&&i.includes("")){m();return}if(c&&c.isOpen()){let f=()=>{u.current&&clearTimeout(u.current),u.current=setTimeout(()=>{x(),c.onBack()},150)};if(u.current){if(t.upArrow||t.downArrow||t.return){x(),t.return?c.onEnter():c.onMove(t.upArrow?-1:1);return}if(l.current+=i,l.current==="["){f();return}let A=l.current;x();let s=/^\[([ABCD])/.exec(A);if(s){(s[1]==="A"||s[1]==="B")&&c.onMove(s[1]==="A"?-1:1);return}c.onBack();return}if(t.upArrow){c.onMove(-1);return}if(t.downArrow){c.onMove(1);return}if(t.return){c.onEnter();return}if(t.escape){l.current="",f();return}return}if(r&&r.isFocused()){let f=()=>{u.current&&clearTimeout(u.current),u.current=setTimeout(()=>{x(),r.onBack()},150)};if(u.current){if(t.upArrow||t.downArrow||t.return||t.leftArrow||t.rightArrow){x(),t.return?r.onSelect():t.leftArrow?r.onLeft?.():t.rightArrow?r.onRight?.():r.onMove(t.upArrow?-1:1);return}if(l.current+=i,l.current==="["){f();return}let A=l.current;x();let s=/^\[([ABCD])/.exec(A);if(s){s[1]==="A"||s[1]==="B"?r.onMove(s[1]==="A"?-1:1):s[1]==="C"?r.onRight?.():r.onLeft?.();return}r.onBack();return}if(t.upArrow){r.onMove(-1);return}if(t.downArrow){r.onMove(1);return}if(t.leftArrow){r.onLeft?.();return}if(t.rightArrow){r.onRight?.();return}if(t.return){r.onSelect();return}if(t.escape){l.current="",f();return}if(/^[1-9]$/.test(i)){r.onDigit(Number(i));return}if(t.tab){r.onTab?.();return}if(i===" "&&r.isMulti()){r.onSpace();return}if(i&&!t.ctrl&&!t.meta){r.onType(i);return}return}}),null}export{Q as a,X as b,J as c,Z as d};
@@ -1,19 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{c as g}from"./chunk-5EOX4MEY.js";var D={ASR_CMD_START:"info",ASR_CMD_END:"info",ASR_AGENT_SPAWN:"info",ASR_WORK_ITEM_START:"info",ASR_WORK_ITEM_END:"info",ASR_PROPOSAL:"info",ASR_VALIDATE_FAILED:"warn",ASR_COMMIT:"info",ASR_SESSION_PAUSED:"info",ASR_SESSION_RESUMED:"info",ASR_SESSION_COMPLETE:"info",ASR_AGENT_EXIT:"warn",ASR_RECONCILE_PLAN:"info",ASR_RECONCILE_ROW_END:"info",ASR_HIGH_RISK_CI:"warn",ASR_INGEST:"info",ASR_EMBED_DEGRADED:"warn",ASR_CONTEXT_CLONED:"warn",ASR_ERROR:"error",ASR_CRASH:"error"},h={ASR_CMD_START:["source_count","resumed","applied_plan"],ASR_CMD_END:["exit_code","duration_ms","credits_total","work_items_total","work_items_failed"],ASR_AGENT_SPAWN:["tier","duration_ms"],ASR_WORK_ITEM_START:["work_item_index","work_item_count","source_kind"],ASR_WORK_ITEM_END:["work_item_index","work_item_count","outcome","duration_ms","error_domain","error_code"],ASR_PROPOSAL:["item_count","turn_index"],ASR_VALIDATE_FAILED:["error_code","count","turn_index"],ASR_COMMIT:["trusted","derived","archived","items","items_dropped","record_seq"],ASR_SESSION_PAUSED:["pending_questions","pending_proposals"],ASR_SESSION_RESUMED:["resume_count","expired_session_id"],ASR_SESSION_COMPLETE:["duration_ms","credits_total"],ASR_AGENT_EXIT:["exit_code","signal"],ASR_RECONCILE_PLAN:["row_count","add_count","modify_count","archive_count"],ASR_RECONCILE_ROW_END:["row_index","kind","outcome","duration_ms"],ASR_HIGH_RISK_CI:["count"],ASR_INGEST:["work_item_index","work_item_count","format","bytes","media_facts"],ASR_EMBED_DEGRADED:["held"],ASR_CONTEXT_CLONED:[],ASR_ERROR:["error_domain","error_code","exit_code","turn_index"],ASR_CRASH:["error_domain","error_code","error_name"]},k=[[/^(auth_expired|401|preflight_auth|AUTH)/i,"auth"],[/^(credit_denied|402|CREDIT)/i,"credit"],[/^(stream_drop|read_timeout|connect_failed|dns|E(CONN|AI_AGAIN|TIMEDOUT)|network)/i,"network"],[/^(frame_parse|post_terminal_data|eof_without_terminal|turn_id_mismatch|binding_mismatch|schema_invalid|frame_too_large|protocol)/i,"protocol"],[/^(provider_error|http_5\d\d|turn_exhausted|adapter_integrity)/i,"provider"],[/^(STALE_BASIS|R\d+|validation|criteria)/i,"validation"],[/^(BLOB_MISSING|SOURCE_UNKNOWN|SESSION_(LOCKED|EXPIRED|MISSING|LOCK_LOST)|NO_STORE|fsck|store)/i,"store"],[/^(usage|EX2|SOURCE_WITH_RESUME|HIGH_RISK_CI|bad_flag|no_tty)/i,"usage"],[/^agent_(crash|exit)/i,"agent_crash"]];function O(e){let t=(e||"unknown").slice(0,64);for(let[n,r]of k)if(n.test(t))return{error_domain:r,error_code:t};return{error_domain:"cli_crash",error_code:t}}import{randomBytes as L}from"crypto";var v=/^(uc|sc|ac|t|gap|sty)-\d+$/,$="0123456789abcdefghijklmnopqrstuvwxyz";function b(e){let t="",n=L(e);for(let r=0;r<e;r++)t+=$[n[r]%36];return t}function q(e=new Date){let t=(r,o)=>String(r).padStart(o,"0");return`as-${`${e.getUTCFullYear()}${t(e.getUTCMonth()+1,2)}${t(e.getUTCDate(),2)}T${t(e.getUTCHours(),2)}${t(e.getUTCMinutes(),2)}`}-${b(8)}`}var C=-1,p=0;function z(e=new Date){let t=e.getTime(),n=L(10);t===C?p=p+1&4095:(C=t,p=(n[0]<<8|n[1])&4095);let r=Buffer.alloc(16);r.writeUIntBE(t,0,6),r[6]=112|p>>8,r[7]=p&255,r[8]=128|n[2]&63,n.copy(r,9,3,10);let o=r.toString("hex");return`${o.slice(0,8)}-${o.slice(8,12)}-${o.slice(12,16)}-${o.slice(16,20)}-${o.slice(20)}`}var G=64,U=128,P=/^[A-Za-z0-9._:@\/-]+$/,H=0;function W(e,t){if(typeof t=="number"&&Number.isFinite(t)||typeof t=="boolean")return t;if(typeof t!="string")return;let n=e.endsWith("_id")||e==="signal"?U:G;if(!(t.length===0||t.length>n)&&P.test(t))return t}function w(e,t,n={}){let r=h[t],o={};for(let i of r){let s=n[i];if(s==null)continue;if(i==="items"){let u=Array.isArray(s)?s.filter(y=>typeof y=="string"):[],f=u.filter(y=>v.test(y));f.length>0&&(o.items=f.slice(0,50).join(","));let S=u.length-f.length;S>0&&(o.items_dropped=S);continue}let a=W(i,s);a!==void 0&&(o[i]=a)}if(typeof n.error_code=="string"&&r.includes("error_code")){let{error_domain:i,error_code:s}=O(n.error_code);o.error_code=s,r.includes("error_domain")&&(o.error_domain=i)}return{level:D[t],event:t,message:t,session_id:e.session_id,operation_id:e.operation_id,...e.parent_operation_id?{parent_operation_id:e.parent_operation_id}:{},...e.agent_session_id?{agent_session_id:e.agent_session_id}:{},context_lineage_id:e.context_lineage_id??null,context_instance_id:e.context_instance_id??null,verb:e.verb,mode:e.mode,component:"kane-cli",seq:H++,event_time:new Date().toISOString(),context:o}}import _ from"fs";import F from"path";var K=500,j=7;function M(e){if(e.length!==0)try{let t=g();_.mkdirSync(F.dirname(t),{recursive:!0});let n=e.map(r=>JSON.stringify(r)).join(`
3
- `)+`
4
- `;_.appendFileSync(t,n,{flag:"a",mode:384}),B()}catch{}}async function re(e){let t=g(),n=`${t}.claim-${process.pid}`,r;try{_.renameSync(t,n),r=_.readFileSync(n,"utf8")}catch{return}let o=[];for(let i of r.split(`
5
- `))if(i.trim())try{o.push(JSON.parse(i))}catch{}try{(o.length===0?!0:await e(o))?_.unlinkSync(n):(_.appendFileSync(t,r,{flag:"a",mode:384}),_.unlinkSync(n))}catch{try{_.appendFileSync(t,r,{flag:"a",mode:384}),_.unlinkSync(n)}catch{}}}function B(e=K,t=j){try{let n=g(),o=_.readFileSync(n,"utf8").split(`
6
- `).filter(u=>u.trim()),i=Date.now()-t*24*3600*1e3,a=o.filter(u=>{try{let f=JSON.parse(u),S=Date.parse(f.event_time??f.timestamp??"");return Number.isNaN(S)||S>=i}catch{return!1}}).slice(-e);a.length!==o.length&&_.writeFileSync(n,a.length?a.join(`
7
- `)+`
8
- `:"",{mode:384})}catch{}}var l=null;function _e(e){l=e}function ce(){return l}var I=()=>!!process.env.KANE_DEV_MODE,c=[],R=!1,N=null,A=null,x=null,d=null,E=[];function ae(e){if(d=e,e&&E.length>0){let t=E;E=[];for(let n of t)try{e.log(n.level,n.event,n.message,n.context)}catch{}}}function de(e,t,n,r){if(d){try{d.log(e,t,n,r)}catch{}return}E.push({level:e,event:t,message:n,context:r})}function le(){return d}function ue(){return R}function fe(e,t){c=c.filter(n=>n.name!==e),c.push({name:e,fn:t})}function Se(e){c=c.filter(t=>t.name!==e)}function pe(e,t){let n=c.find(o=>o.name===e);if(!n)return;c=c.filter(o=>o.name!==e);let r=!0;try{n.fn()}catch(o){r=!1,process.stderr.write(`[exit-manager] cleanup(${e}) failed: ${o instanceof Error?o.message:String(o)}
9
- `)}t&&r&&I()&&process.stderr.write(`[exit-manager] cleanup(${e}): ${t}
10
- `)}function m(e,t,n=!1,r){if(R){process.exit(N??e);return}if(R=!0,N=e,n&&d)try{d.log("error","CRASH",t),d.shutdownSync()}catch{}if(n&&l&&e!==130&&e!==143)try{let s=/Uncaught exception:\s*([A-Za-z0-9_$]+)/.exec(t)?.[1]??"crash";M([w(l,"ASR_CRASH",{error_code:"cli_crash",error_name:s})])}catch{}let o=[...c].reverse(),i=[];for(let s of o)try{s.fn(),i.push(s.name)}catch(a){process.stderr.write(`[exit-manager] cleanup(${s.name}) failed: ${a instanceof Error?a.message:String(a)}
11
- `)}if(c=[],I()&&(process.stderr.write(`[exit-manager] shutdown(${e}): ${t}
12
- `),i.length>0&&process.stderr.write(`[exit-manager] cleaned up: ${i.join(", ")}
13
- `)),n){if(x)try{x()}catch{}e===130||e===143||(process.stderr.write(`
14
- kane-cli crashed: ${t}
15
- `+(i.length>0?`Resources cleaned up (${i.join(", ")}).
16
- `:"")),l&&process.stderr.write(`session: ${l.session_id} \u2014 share this id with support
17
- `),r&&I()?process.stderr.write(`${r}
18
- `):process.stderr.write(`(re-run with KANE_DEV_MODE=1 for the full stack)
19
- `)),process.exit(e);return}if(A&&!n){A();return}process.exit(e)}function Ee(e){A=e}function ge(e){x=e}var T=!1;function me(){T||(T=!0,process.on("SIGINT",()=>{m(130,"Received SIGINT",!0)}),process.on("SIGTERM",()=>{m(143,"Received SIGTERM",!0)}),process.on("uncaughtException",e=>{m(1,`Uncaught exception: ${e.name}: ${e.message}`,!0,e.stack)}),process.on("unhandledRejection",e=>{m(1,`Unhandled rejection: ${String(e)}`,!0,e instanceof Error?e.stack:void 0)}))}function Re(){c=[],R=!1,N=null,A=null,x=null,d=null,E=[],T=!1,l=null}export{D as a,q as b,z as c,w as d,M as e,re as f,_e as g,ce as h,ae as i,de as j,le as k,ue as l,fe as m,Se as n,pe as o,m as p,Ee as q,ge as r,me as s,Re as t};
@@ -1,6 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{closeSync as A,existsSync as R,mkdirSync as N,openSync as J,readFileSync as I,readdirSync as W,renameSync as C,rmSync as g,watch as D,writeFileSync as _}from"fs";import{join as h}from"path";import{randomBytes as U}from"crypto";var X=1440*60*1e3,L=class extends Error{constructor(l,u,f,k){super(`${l}: ${f}`);this.code=l;this.key=u;this.holder=k}},E=e=>(e?.now??(()=>new Date))();function M(e){if(!Number.isInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch(s){return s.code==="EPERM"}}function $(e,s){let l=s.getTime()-new Date(e.ts).getTime();return!M(e.pid)||l>=X||Number.isNaN(l)}var m=e=>h(e,"locks"),G=e=>h(m(e),"waiters");function T(e,s){return s.kind==="context"?h(m(e),"context.lock"):s.kind==="extract"?h(m(e),"extract.lock"):h(m(e),`uc-${s.id}.lock`)}var x=e=>e.kind==="uc"?e.id:e.kind,v=e=>e.kind==="uc"?`uc:${e.id}`:e.kind,K=e=>e.kind==="uc"?e.id:`~${e.kind}`;function H(e){return[...e].sort((s,l)=>K(s)<K(l)?-1:K(s)>K(l)?1:0)}function p(e){try{return JSON.parse(I(e,"utf8"))}catch{return null}}function F(e,s,l){let u=`${e}.break-${l}`;try{C(e,u)}catch(k){if(k.code==="ENOENT")return!1;throw k}let f;try{f=JSON.parse(I(u,"utf8"))}catch{f=null}if(f===null||f.nonce===s)return g(u,{force:!0}),!0;try{C(u,e)}catch{g(u,{force:!0})}return!1}var y=new Map,O=new Map;function B(e,s,l){let u=o=>`${e}|${s}|${x(o)}`;function f(o,d,c=0){if(c>20)throw new L("LOCK_CONTENTION_UNSETTLED",o,`${v(o)}: lock contention did not settle`);let i=T(e,o);N(m(e),{recursive:!0});let n=U(8).toString("hex");try{let t=J(i,"wx",384);return _(t,JSON.stringify({...d,nonce:n})+`
3
- `),A(t),n}catch(t){if(t.code!=="EEXIST")throw t;let r=p(i),a=E(l);if(r!==null&&!$(r,a)){let S=o.kind==="context"?"CONTEXT_HELD":o.kind==="extract"?"EXTRACT_HELD":"UC_HELD";throw new L(S,o,`${v(o)} is held by ${r.owner_sid} (${r.verb})`,{owner_sid:r.owner_sid,pid:r.pid,ts:r.ts,verb:r.verb,alive:M(r.pid)})}return F(i,r?.nonce,n)&&process.stderr.write(JSON.stringify({event:"lock_steal",key:v(o),stale_owner:r?.owner_sid??"corrupt",by:s,ts:a.toISOString()})+`
4
- `),f(o,d,c+1)}}function k(o,d){let c=!1;return{keys:d,assertHeld(){for(let{key:i,sk:n}of o){let t=y.get(n),r=t?p(t.path):null;if(!t||r===null||r.nonce!==t.nonce)throw new L("LOCK_LOST",i,`${v(i)} grant was taken over or removed`)}},touch(){for(let{sk:i}of o){let n=y.get(i);if(!n)continue;let t=p(n.path);t!==null&&t.nonce===n.nonce&&_(n.path,JSON.stringify({...t,ts:E(l).toISOString()})+`
5
- `,{mode:384})}},release(){if(!c){c=!0;for(let{sk:i}of[...o].reverse()){let n=y.get(i);if(n&&(n.count-=1,n.count<=0)){y.delete(i);let t=p(n.path);t!==null&&t.nonce===n.nonce&&g(n.path,{force:!0})}}}}}}function w(o,d){let c=H(o),i=[];try{for(let n of c){let t=u(n),r=y.get(t);if(r)r.count+=1;else{let a=f(n,{owner_sid:s,pid:process.pid,ts:E(l).toISOString(),verb:d.verb??"unknown",hold:d.hold,...n.kind==="uc"?{logical_display:n.id.toUpperCase()}:{}});y.set(t,{nonce:a,count:1,path:T(e,n),key:n})}i.push({key:n,sk:t})}return k(i,c)}catch(n){for(let{sk:t}of[...i].reverse()){let r=y.get(t);if(r&&(r.count-=1,r.count<=0)){y.delete(t);let a=p(r.path);a!==null&&a.nonce===r.nonce&&g(r.path,{force:!0})}}throw n}}return{acquire:w,tryAcquire(o,d){try{return w(o,d)}catch(c){if(c instanceof L&&(c.code==="UC_HELD"||c.code==="CONTEXT_HELD"||c.code==="EXTRACT_HELD"))return{contended:c};throw c}},holder(o){return p(T(e,o))},async wait(o,d){let c=T(e,o);N(G(e),{recursive:!0});let i=h(G(e),`${x(o)}.${s}.${process.pid}.json`);try{_(i,JSON.stringify({sid:s,pid:process.pid,ts:E(l).toISOString()})+`
6
- `,{mode:384})}catch{}let n=Date.now()+d.timeoutMs,t=null,r=null;try{try{t=D(m(e),()=>{r?.()}),t.on("error",()=>{r?.(),t=null})}catch{t=null}for(;;){if(d.signal?.aborted)return"cancelled";let a=p(c);if(a===null||$(a,E(l)))return"free";let S=n-Date.now();if(S<=0)return"timeout";await new Promise(b=>{r=b;let P=setTimeout(b,Math.min(t?250:100,Math.max(1,S)));d.signal?.addEventListener?.("abort",()=>{clearTimeout(P),b()},{once:!0})}),r=null}}finally{t?.close(),g(i,{force:!0})}},async withKeySerialized(o,d){let i=H(o).map(a=>`${e}|${x(a)}`),n=i.map(a=>O.get(a)??Promise.resolve()),t,r=new Promise(a=>{t=a});for(let a of i)O.set(a,r);await Promise.all(n);try{return await d()}finally{t();for(let a of i)O.get(a)===r&&O.delete(a)}},releaseAll(o){let d=`${e}|${o}|`;for(let[c,i]of[...y]){if(!c.startsWith(d))continue;y.delete(c);let n=p(i.path);n!==null&&n.nonce===i.nonce&&g(i.path,{force:!0})}}}}function Q(e,s){let l=e.resolve(s);if(l===null)return{key:{kind:"uc",id:s.toLowerCase()},display:s};let u=e.displayNameOf(l.tip)??e.displayNameOf(l.cid);if(u!==null&&/^uc-\d+$/i.test(u))return{key:{kind:"uc",id:u.toLowerCase()},display:u.toUpperCase()};let f=new Map;for(let[d,c]of e.superseded)typeof c=="string"&&f.set(c,d);let k=l.cid,w=new Set;for(;f.has(k)&&!w.has(k);)w.add(k),k=f.get(k);let o=k.slice(0,12);return{key:{kind:"uc",id:o},display:u??o}}export{L as a,M as b,G as c,H as d,B as e,Q as f};
@@ -1,6 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- var p=1;function f(e){return e==="agent"?"ndjson":"human"}function c(){return!!(process.stdin.isTTY&&process.stdout.isTTY)}var d=/^(∷ |· |→ |✓ |✗ |… )/;function a(e){return e===0?"complete":e===2?"refused":e===3?"paused":e===130?"interrupted":"error"}function l(e,n,s={stdout:t=>process.stdout.write(t),stderr:t=>process.stderr.write(t)}){let t=!1,u=r=>{if(e!=="ndjson")return;if(r.type==="done"){if(t)return;t=!0}let{type:i,...o}=r;s.stdout(JSON.stringify({type:i,v:1,verb:n,...o})+`
3
- `)};return{encoding:e,out:e==="ndjson"?r=>s.stderr(r+`
4
- `):r=>s.stdout(r+`
5
- `),progress:e==="ndjson"?()=>{}:r=>s.stderr(r.replace(d,"").replace(/…$/,"")+`
6
- `),event:u,done:(r,i,o)=>(u({type:"done",status:i??a(r),exit_code:r,...o!==void 0&&o.length>0?{next:o}:{}}),r)}}var g=8*1024;function m(e,n){return e.message==null?null:e.message.trim()?e.resume?Buffer.byteLength(e.message,"utf8")>g?`${n==="extract"?"extract":"design"}: --message is over 8KB \u2014 the agent would silently drop it; shorten the statement`:null:`${n==="extract"?"extract":"design"}: --message only rides a resume \u2014 pair it with --resume <sid> (a fresh run takes its direction from the sources)`:`${n==="extract"?"extract":"design"}: --message is empty \u2014 say what you want the agent to know`}function x(e,n,s){return e.event({type:"error",message:n,...s?{code:s}:{}}),e.done(2,"refused")}function E(e,n,s){return{out:t=>{n()&&s.test(t)||e.out(t)},emit:t=>{n()&&t.type==="error"&&s.test(String(t.message??""))||e.event(t)}}}export{p as a,f as b,c,l as d,g as e,m as f,x as g,E as h};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{d as b,e as c,f as d,g as e,h as f,i as g,j as h,k as i,l as j,m as k,n as l,o as m,p as n,q as o,r as p}from"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import{h as a}from"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";export{b as SLUG_RE,c as checkAcyclic,d as checkCardinality,e as citesOf,o as commitNames,n as commitPairMerge,l as commitProposal,p as commitRetire,m as commitReviewFacts,f as criteriaShape,i as mintEventId,j as nextEventIds,a as recordsSince,k as resolveLivingTip,g as validateCriterionOps,h as validateProposal};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a}from"./chunk-CVOGP253.js";import"./chunk-427OQS2N.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";export{a as topologyDescriptor};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a,b,c}from"./chunk-KVQOBPAZ.js";import"./chunk-AM5S4KG4.js";import"./chunk-BB2W35TW.js";import"./chunk-DNNZ353O.js";import"./chunk-NVGBE2DR.js";import"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";export{a as captureForceScope,b as commitDesign,c as designPhaseLadder};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{c as a,d as b,e as c,f as d,g as e,h as f,i as g,j as h,k as i}from"./chunk-F7WKDMX7.js";import"./chunk-VOHQA2SP.js";import"./chunk-Q2F5QB2W.js";import"./chunk-NVGBE2DR.js";import"./chunk-IAHKTEET.js";import"./chunk-UR6MHSHU.js";export{a as DOCX_CONVERTER_POLICY,b as DOCX_CONVERTER_VERSION,d as DOCX_IMAGE_CAP,c as DOCX_IMAGE_DIMENSION_FLOOR,f as DOCX_IMAGE_MAX_BYTES,g as DOCX_IMAGE_MAX_PIXELS,e as DOCX_VISION_BYTE_BUDGET,i as convertDocx,h as renderTokens};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a,b,c,d,e,f,g}from"./chunk-3LWTUMDG.js";import"./chunk-QROUKGKU.js";import"./chunk-OHRS3H7Z.js";import"./chunk-5JTUL6XL.js";import"./chunk-JFAFKHDX.js";import"./chunk-ZLCZDAEX.js";import"./chunk-DNNZ353O.js";import"./chunk-NVGBE2DR.js";import"./chunk-CH273NAE.js";import"./chunk-GW5DWAXY.js";import"./chunk-T63R6QT4.js";import"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";export{b as designStateOf,g as evolveCommand,c as evolveOneUc,f as liveRunDesignForUc,a as resolveParentUc,e as runEvolveCommand,d as staleTargets};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a}from"./chunk-PMHJRT3A.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";export{a as explain};
@@ -1,10 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a as T}from"./chunk-WJ5HDEVH.js";import{a as q}from"./chunk-5JTUL6XL.js";import{f as Y,g as A}from"./chunk-KRXSXQBU.js";import"./chunk-UPPEOQJQ.js";import"./chunk-36OC3TFE.js";import"./chunk-O56PUUNL.js";import"./chunk-NRC2G4Y5.js";import"./chunk-BQHKBOSF.js";import"./chunk-2XGDWUJ5.js";import"./chunk-BB2W35TW.js";import"./chunk-VGFTNLQQ.js";import"./chunk-L2TV4G56.js";import"./chunk-JFAFKHDX.js";import"./chunk-5KFS3GAZ.js";import"./chunk-EV3EHXEI.js";import"./chunk-F7WKDMX7.js";import"./chunk-VOHQA2SP.js";import{d as Q}from"./chunk-UX2B7L6K.js";import"./chunk-XDHZMCTA.js";import"./chunk-AAONIIQV.js";import{c as $}from"./chunk-YKTYVJBN.js";import"./chunk-CVOGP253.js";import"./chunk-427OQS2N.js";import{c as U}from"./chunk-ZLCZDAEX.js";import"./chunk-SE6WNCYU.js";import"./chunk-DNNZ353O.js";import"./chunk-Q2F5QB2W.js";import{a as N,b as j}from"./chunk-IQDWBTRJ.js";import"./chunk-GVIPTX6T.js";import"./chunk-BKM2LWU2.js";import"./chunk-2XMJ6YAE.js";import"./chunk-NVGBE2DR.js";import{a as b}from"./chunk-CH273NAE.js";import"./chunk-GW5DWAXY.js";import"./chunk-T63R6QT4.js";import"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-W6VD2XFO.js";import"./chunk-5EOX4MEY.js";import"./chunk-RZ4F3BHX.js";import"./chunk-C4G7RVJ6.js";import"./chunk-UR6MHSHU.js";async function J(n){let[{render:t},s,{QuestionBatchPrompt:f}]=await Promise.all([import("./build-JIKYOZUH.js"),import("./react-QWOAB3TB.js"),import("./ui-JEJGTURD.js")]),l=s.default??s;return new Promise(g=>{let h=t(l.createElement(f,{questions:n,onSubmit:y=>{h.unmount(),g(y)}}))})}async function K(n,t){let[{render:s},f,{ReviewChecklist:l}]=await Promise.all([import("./build-JIKYOZUH.js"),import("./react-QWOAB3TB.js"),import("./ui-JEJGTURD.js")]),g=f.default??f;return new Promise(h=>{let y=s(g.createElement(l,{items:n.map(e=>{let o=t.get(e.temp_ref);return{uc:e,dedupWith:o&&!o.archived?o.cid:void 0,archivedMatch:o?.archived?{cid:o.cid,reason:o.reason}:void 0}}),onSubmit:e=>{y.unmount(),h(e)}}))})}async function X(n){let{createInterface:t}=await import("readline/promises"),s=t({input:process.stdin,output:process.stdout});try{let f=await s.question(`${n} [y/N] `);return/^y(es)?$/i.test(f.trim())}finally{s.close()}}async function ae(n){let t=b(process.cwd()),s=j({verb:"extract",mode:n.plan?"cli":"interactive",contextRoot:t,env:N(),resumeSid:n.resume,write:!0,longSession:!0}),l={...await Q(),...s.spawnEnv()},g=await $(l);if(!g.ok)return process.stderr.write((g.message??"error: turn-endpoint preflight failed")+`
3
- `),process.stderr.write(s.supportFooter()+`
4
- `),s.error("preflight_auth"),await s.end({exit_code:2}),2;let h=async()=>g;if(n.plan){let a=await A(n,{contextDir:t,agent:T,preflightTurn:h,ask:J,review:K,confirmStale:X,out:d=>process.stdout.write(d+`
5
- `),progress:d=>process.stderr.write(d+`
6
- `),isTTY:U(),auth:l,telemetry:s});return a===1&&process.stderr.write(s.supportFooter()+`
7
- `),await s.end({exit_code:a}),a}let[{render:y},e,{ScrollbackProvider:o},{ChatSurface:E},{ScrollbackTap:D},{makeChatController:k},{setInkExit:G},P]=await Promise.all([import("./build-JIKYOZUH.js"),import("./react-QWOAB3TB.js"),import("./scrollback-JLPJR25X.js"),import("./ChatSurface-D66CACLX.js"),import("./ScrollbackTap-Q3IOKNMS.js"),import("./chat-controller-NNTMKEPG.js"),import("./exit-manager-HNFATGSM.js"),Promise.all([import("./chat-committer-4BQBOKI4.js"),import("./descriptor-KXDJ4XYD.js"),import("./explain-UE4IACQH.js"),import("./readmodel-X7L7W2BA.js")])]),[{commitChatTurn:r},{topologyDescriptor:F},{explain:R},{openGraph:v}]=P,V=e.default??e,c=k({commitChatTurn:r,descriptor:F(),contextDir:t,refreshGraph:()=>v(t),graph:v(t),explain:R,by:{kind:"human",id:"owner"},dedupFlags:a=>Y(a,v(t))}),I={current:null},H=0,M=null,C=!1,z=()=>{if(H+=1,H>=2){try{_.unmount()}catch{}process.exit(130)}c.requestPause(),M=setTimeout(()=>{C||(C=!0,(async()=>{c.ledger({kind:"interrupted",detail:"the agent did not confirm the pause within 5s"}),await I.current?.flush();try{_.unmount()}catch{}process.exit(130)})())},5e3)},O=await import("./dossier-QZV74XOS.js"),B=a=>{try{return O.buildDossier(v(t),a)}catch{return null}},L={listUcs:()=>{let a=v(t),d=new Set(c.state.turns.flatMap(i=>(i.items??[]).map(u=>u.title.toLowerCase()))),p={high:0,med:1,low:2};return a.byLabel("usecase").filter(i=>!a.superseded.has(i.cid)).map((i,u)=>{let m=i.content,x=String(m.title??i.cid.slice(0,12)),w=q(a,i.cid),S=w?w.designed_at_cid===i.cid?"current":"stale":void 0;return{key:i.cid,title:x,badge:S==="current"?"designed":S==="stale"?"designed \xB7 stale":d.has(x.toLowerCase())?"drafted this session":"existing",designed:S,risk:m.risk,i:u}}).sort((i,u)=>(p[i.risk??"zz"]??3)-(p[u.risk??"zz"]??3)||i.i-u.i).map(({key:i,title:u,badge:m,designed:x})=>({key:i,title:u,badge:m,designed:x}))},runDesignChild:async(a,d=!1)=>{try{let{designEntryCheck:m,confirmUnreviewedViaAsk:x}=await import("./trust-gate-EX7R2P4Y.js"),w=m(v(t),a);if(!w.ok&&(w.code==="UC_UNREVIEWED"||w.code==="UC_ARCHIVED")&&!await x(W=>c.ask(W),w))return c.note(`design child refused \u2014 approve it first: ${w.reviewCmd}`),2}catch{}let[{runDesign:p}]=await Promise.all([import("./run-52UIBPXD.js")]),i="",u=await p({useCase:a,force:d,mode:"interactive"},{contextDir:t,agent:T,preflightTurn:h,ask:m=>c.ask(m),chat:c,nested:!0,out:m=>{i=m},progress:()=>{},isTTY:!0,auth:l});return u!==0&&i&&c.note(i),u}},_=y(V.createElement(o,null,V.createElement(D,{into:I}),V.createElement(E,{controller:c,verb:"extract",onCtrlC:z,chain:L,inspect:B})),{exitOnCtrlC:!1});G(()=>_.unmount()),c.ledger({kind:"banner",text:"kane-cli context \xB7 extract \xB7 interactive"});try{let a=A(n,{contextDir:t,agent:T,preflightTurn:h,ask:p=>c.ask(p),review:async p=>new Map(p.map(i=>[i.temp_ref,{resolution:"skipped"}])),confirmStale:async()=>!0,out:p=>c.note(p),progress:()=>{},isTTY:U(),auth:l,chat:c,telemetry:s});a.finally(()=>{C=!0});let d=await a;return d===1&&process.stderr.write(s.supportFooter()+`
8
- `),await s.end({exit_code:d}),d}finally{C=!0,M&&clearTimeout(M),await I.current?.flush();try{_.unmount()}catch{}}}async function ce(n){let t=j({verb:"extract",mode:n.mode,contextRoot:b(process.cwd()),env:N(),resumeSid:n.resume,write:!0,longSession:!0}),s={...await Q(),...t.spawnEnv()},{makeHeadlessIO:f,resolveEncoding:l,guardedChannels:g}=await import("./headless-io-BL3TEAX5.js"),{withStructuredNext:h,prepareStructuredResume:y}=await import("./structured-answers-QHFGZPSS.js"),e=h(f(l(n.mode),"extract"));for(let r of n.landed??[])e.event({type:"ingested",source_id:r.source_id,status:r.status,cid:r.source_cid});let o=y({opts:n,contextDir:b(process.cwd()),verb:"extract"});if(o.kind==="refuse")return e.out(o.error),n.mode==="agent"&&e.event({type:"error",message:o.error,code:o.code}),await t.end({exit_code:2}),n.mode==="agent"?e.done(2,"refused"):2;let E=n;if(o.kind==="apply"){for(let r of o.notes)e.out(r);if(o.matchedQids.length>0){e.out(`applying ${o.matchedQids.length} structured answer(s) from --answer to the paused session's pending questions`);for(let r of o.matchedQids)e.event({type:"panel_resolved",id:r,by:"user",via:"flag"})}o.statement&&(E={...n,message:[n.message,o.statement].filter(Boolean).join(`
9
-
10
- `)})}let{makeInterruptGuard:D}=await import("./interrupt-guard-UREUWNRL.js"),k=D(T,r=>e.out(r)),P=g(e,()=>k.interrupted(),/^error: (agent failed|repair run failed|agent ended)/);try{let r=await A(E,{contextDir:b(process.cwd()),agent:k.agent,preflightTurn:()=>$(s),ask:async()=>[],review:async F=>new Map(F.map(R=>[R.temp_ref,{resolution:"skipped"}])),confirmStale:async()=>!1,out:P.out,emit:P.emit,progress:e.progress,isTTY:!1,auth:s,telemetry:t});return k.interrupted()&&r!==3?(e.out("interrupted \u2014 no session saved"),await t.end({exit_code:130}),e.done(130)):(r===1&&e.out(t.supportFooter()),await t.end({exit_code:r}),e.done(r))}catch(r){return e.event({type:"error",message:`error: extract failed: ${r instanceof Error?r.message:String(r)}`}),e.out(`error: extract failed: ${r instanceof Error?r.message:String(r)}`),e.out('hint: the full trace is in the file named on the "trace:" line at the start of this run'),e.done(1)}finally{k.dispose()}}export{ce as bindExtractHeadless,ae as bindExtractInteractive};
@@ -1,6 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a as i}from"./chunk-CH273NAE.js";import"./chunk-UR6MHSHU.js";import{existsSync as u}from"fs";async function g(e){if(e.mode!=null&&!["interactive","agent","ci","override"].includes(e.mode))return process.stderr.write(`extract: --mode must be interactive | agent | ci | override, got '${e.mode}'
3
- `),2;let n=async(r,t)=>{if(process.stderr.write(r+`
4
- `),e.mode!=="agent")return 2;let{makeHeadlessIO:o,agentRefusal:c}=await import("./headless-io-BL3TEAX5.js");return c(o("ndjson","extract"),r,t)};if(e.apply)return n("extract: --apply is not implemented yet \u2014 coming with the plan\u2192apply workflow (run without --apply, or use --plan to preview)");{let{validateResumeMessage:r}=await import("./headless-io-BL3TEAX5.js"),t=r(e,"extract");if(t)return n(t)}{let{gateStructuredFlags:r}=await import("./structured-answers-QHFGZPSS.js"),t=r(e,"extract");if(t)return n(t,"STRUCTURED_FLAGS_USAGE")}if(e.withSource&&!e.resume)return n("extract: --with-source pairs with --resume \u2014 it lands the source and sets the resumed session's pending questions aside");if(e.queued)return n("extract: --queued is gone \u2014 extract sweeps every pending source by default (just run kane-cli context extract)");if(!u(i(process.cwd())))return n("error: no context store here (run `kane-cli context ingest <files>` first)","NO_STORE");if(!e.mode&&!process.stdin.isTTY)return process.stderr.write(`extract: no TTY \u2014 pass an explicit --mode agent|ci|override to run headless
5
- `),2;let s=e.mode??"interactive";if(s==="interactive"){if(!process.stdin.isTTY||!process.stdout.isTTY)return process.stderr.write(`extract: --mode interactive needs a TTY on stdin and stdout (use --mode agent|ci|override headless)
6
- `),2;let{bindExtractInteractive:r}=await import("./extract-bind-BFY7IRL4.js");return r(e)}let{bindExtractHeadless:a}=await import("./extract-bind-BFY7IRL4.js");return a({...e,mode:s})}export{g as extractCommand};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a,b,c,d}from"./chunk-AH7ZZIZY.js";import"./chunk-AAONIIQV.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";export{a as archiveImpact,b as heldArchiveScan,c as reviewCards,d as reviewCounts};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{e as a,f as b,g as c,h as d,i as e}from"./chunk-SE6WNCYU.js";import"./chunk-DNNZ353O.js";import"./chunk-Q2F5QB2W.js";import"./chunk-NVGBE2DR.js";import"./chunk-GW5DWAXY.js";import"./chunk-T63R6QT4.js";import"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";export{a as compositePayloadBytes,e as ingestBytes,d as ingestFile,b as slugFromFilename,c as versionBaseOf};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a,b,c}from"./chunk-BQHKBOSF.js";import"./chunk-EV3EHXEI.js";import"./chunk-F7WKDMX7.js";import"./chunk-VOHQA2SP.js";import"./chunk-ZLCZDAEX.js";import"./chunk-SE6WNCYU.js";import"./chunk-DNNZ353O.js";import"./chunk-Q2F5QB2W.js";import"./chunk-NVGBE2DR.js";import"./chunk-CH273NAE.js";import"./chunk-GW5DWAXY.js";import"./chunk-T63R6QT4.js";import"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-C4G7RVJ6.js";import"./chunk-UR6MHSHU.js";export{c as ingestCommand,b as runIngestCommand,a as runIngestWithResults};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{b as p,c as f}from"./chunk-WWNSD6FA.js";import"./chunk-UR6MHSHU.js";import{existsSync as c,readFileSync as l,readdirSync as w}from"fs";import{join as g}from"path";function h(n,m,i){let o=g(n,"locks");if(!c(n))return i(`error: no context store at ${n}`),2;let s=[],a=new Map,d=f(n);if(c(d))for(let r of w(d)){let e=r.split(".")[0];try{let t=JSON.parse(l(g(d,r),"utf8"));(a.get(e)??a.set(e,[]).get(e)).push({sid:t.sid,pid:t.pid})}catch{}}if(c(o)){for(let r of w(o))if(r.endsWith(".lock"))try{let e=JSON.parse(l(g(o,r),"utf8")),t=r.replace(/\.lock$/,"");s.push({key:t,grant:e,alive:p(e.pid),age_s:Math.max(0,Math.round((Date.now()-new Date(e.ts).getTime())/1e3)),waiters:a.get(t.replace(/^uc-/,""))??a.get(t)??[]})}catch{}}if(m.json)return i(JSON.stringify(s.map(r=>({key:r.key,owner_sid:r.grant.owner_sid,pid:r.grant.pid,alive:r.alive,verb:r.grant.verb,hold:r.grant.hold,age_s:r.age_s,waiters:r.waiters})))),0;if(s.length===0)return i("no locks held"),0;for(let r of s){i(`${r.key} ${r.grant.owner_sid} pid ${r.grant.pid} (${r.alive?"live":"dead"}) ${r.grant.verb}/${r.grant.hold} age ${r.age_s}s`);for(let e of r.waiters)i(` waiter: ${e.sid} (pid ${e.pid})`)}return 0}export{h as runLocksCommand};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{q as d,t as f,u as m}from"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";var y=Object.keys(f).filter(n=>n!=="source");function b(n,t,u={kind:"system",id:"logical-id-backfill"}){let l=new Set(t.names.keys()),r=[];for(let c of y)for(let{cid:s,content:e}of t.byLabel(c)){if(t.superseded.has(s)||t.nameOf.has(s))continue;let a=typeof e.title=="string"&&e.title||typeof e.intent=="string"&&e.intent||typeof e.statement=="string"&&e.statement||typeof e.text=="string"&&e.text||"",i=a?m(c,a,g=>l.has(g)):null;i&&(l.add(i),r.push({ref:s,slug:i}))}if(r.length===0)return{record:null,errors:null,assigned:0};let o=d({contextDir:n,graph:t,assignments:r,by:u});return o.errors?{record:null,errors:o.errors,assigned:0}:{record:o.record,errors:null,assigned:r.length}}export{b as backfillLogicalIds};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a}from"./chunk-BAL64WSI.js";import"./chunk-KT6G7AF2.js";import"./chunk-RFHMDQXZ.js";import"./chunk-RZ4F3BHX.js";import"./chunk-JRMDGLLT.js";import"./chunk-F6ZOJXYU.js";import"./chunk-C4G7RVJ6.js";import"./chunk-UR6MHSHU.js";export{a as LoginFlow};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{b as i,c as m,d as s}from"./chunk-QROUKGKU.js";import"./chunk-ZLCZDAEX.js";import{a as t}from"./chunk-CH273NAE.js";import{c as d,d as c}from"./chunk-T63R6QT4.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";async function u(r,o=process.cwd()){if(!i(o,r))return 2;let e=c(t(o));if(e.ok)return r.out(e.pending?`ok: ${e.records} record(s) verified \u2014 ${e.pending} record(s) pending catch-up (applied automatically on the next command)`:`ok: ${e.records} record(s) verified, derived projection in parity`),0;for(let n of e.issues)r.out(`issue: ${n}`);return 1}async function p(r,o,e=process.cwd()){if(!i(e,o)||!await m(o,"wipe .context/derived and rebuild it from the verified commit chain",r.yes))return 2;let n=d(t(e));return o.out(`rebuilt: ${n.applied.seq} record(s) replayed, ${Object.keys(n.nodeLabel).length} node(s) projected`),0}async function b(){return u(s())}async function y(r={}){return p(r,s())}export{b as fsckCommand,y as rebuildCommand,u as runFsckCommand,p as runRebuildCommand};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a,b,c,d,e,f,g}from"./chunk-EV3EHXEI.js";import"./chunk-VOHQA2SP.js";import"./chunk-NVGBE2DR.js";import"./chunk-IAHKTEET.js";import"./chunk-UR6MHSHU.js";export{e as PDFJS_VERSION,b as PDF_IMAGE_CAP,a as PDF_IMAGE_DIMENSION_FLOOR,d as PDF_IMAGE_MAX_BYTES,c as PDF_VISION_BYTE_BUDGET,f as PdfConvertError,g as convertPdf};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a as p}from"./chunk-OHRS3H7Z.js";import{c}from"./chunk-KVQOBPAZ.js";import"./chunk-AM5S4KG4.js";import{a as g}from"./chunk-BB2W35TW.js";import"./chunk-DNNZ353O.js";import"./chunk-NVGBE2DR.js";import"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import{d}from"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";var u=["grounding","acs","scenarios","wiring","tests"];function l(i,r,o){let s=r.resolve(o);if(s===null)return[];let n=g(r,s.cid),a=c(d(i).records,n),e=a.reduce((t,m)=>Math.max(t,m.generation),0);return a.filter(t=>t.generation===e)}function E(i,r,o,s){let n=u;if(!n.includes(s))return{ok:!1,code:"UNKNOWN_PHASE",message:`--phase must be one of ${n.join(" | ")}, got '${s}'`,valid:[...n]};let a=new Set(l(i,r,o).map(t=>t.phase)),e=n.slice(0,n.indexOf(s)).filter(t=>t!=="grounding"&&!a.has(t));return e.length===0?{ok:!0,phase:s}:{ok:!1,code:"PHASE_ORDER",message:`--phase ${s} needs ${e.join(" + ")} committed first (nothing recorded for ${e.join(", ")})`,missing:e,earliest:e[0]}}function y(i,r,o,s){let n=l(i,r,o),a=r.resolve(o);if(a===null)return{priorDesign:void 0,phaseLadder:n};let e=p(r,a.tip);return{priorDesign:e.scenarios.length===0&&e.tests.length===0&&e.acs.length===0?void 0:e,phaseLadder:n}}function R(i,r,o){return`kane-cli design tests --use-case ${i} --phase ${r}${o?" --mode agent":""}`}export{u as PHASE_ORDER,y as buildPhaseSeed,E as checkPhaseEntry,R as phaseEntryCmd,l as phaseLadderFor};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a,b,c}from"./chunk-NAC7SFBE.js";import"./chunk-2YQ6TW77.js";import"./chunk-DQ54MH7F.js";import"./chunk-FCMLIK7P.js";import"./chunk-CJJXT5DO.js";import"./chunk-QM4S2APK.js";import"./chunk-ZPDM6FO7.js";import"./chunk-EHN5HTUD.js";import"./chunk-NVGBE2DR.js";import"./chunk-CH273NAE.js";import"./chunk-L5LI2JF4.js";import"./chunk-WAOCHXJ5.js";import"./chunk-GW5DWAXY.js";import"./chunk-T63R6QT4.js";import"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-2WVKOZ6W.js";import"./chunk-NLCCBXXV.js";import"./chunk-RZ4F3BHX.js";import"./chunk-JRMDGLLT.js";import"./chunk-C4G7RVJ6.js";import"./chunk-UR6MHSHU.js";export{c as UploadPipeline,b as packPresignEntry,a as readPackForUpload};
@@ -1,2 +0,0 @@
1
- import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
- import{a,b}from"./chunk-GW5DWAXY.js";import"./chunk-T63R6QT4.js";import"./chunk-3STZLM5J.js";import"./chunk-L4JIMNKW.js";import"./chunk-M7WQM4UA.js";import"./chunk-WWNSD6FA.js";import"./chunk-IAHKTEET.js";import"./chunk-5YPBPZUR.js";import"./chunk-UR6MHSHU.js";export{a as openGraph,b as staleForEvolve};