openpond 0.2.63 → 0.2.64

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 (561) hide show
  1. package/dist/app-server.d.ts +76 -2
  2. package/dist/app-server.js +1 -1
  3. package/dist/chunks/account-context-TIJOM22A.js +12 -0
  4. package/dist/chunks/acp-G5GCLP44.js +2 -0
  5. package/dist/chunks/acp-agent-JM5THNMF.js +19 -0
  6. package/dist/chunks/actions-command-VLKMHCMI.js +2 -0
  7. package/dist/chunks/app-layer-DZHMJUBC.js +3 -0
  8. package/dist/chunks/app-server-connected-apps-IB6M35NS.js +2 -0
  9. package/dist/chunks/app-server-evaluations-V6LRWDUF.js +2 -0
  10. package/dist/chunks/app-server-harness-services-6ZRLA3YD.js +2 -0
  11. package/dist/chunks/app-server-runtime-6LCX46RF.js +2 -0
  12. package/dist/chunks/apps-7LPKIYRY.js +2 -0
  13. package/dist/chunks/{chunk-NZTCH6K5.js → chunk-2GJD23CM.js} +1 -1
  14. package/dist/chunks/{chunk-BKEDG3A4.js → chunk-2MEOUS24.js} +1 -1
  15. package/dist/chunks/{chunk-DUL6DXOI.js → chunk-2W22IXHB.js} +1 -1
  16. package/dist/chunks/{chunk-GGJUWIGR.js → chunk-36FNNR5N.js} +1 -1
  17. package/dist/chunks/chunk-3BJ7LPE3.js +2 -0
  18. package/dist/chunks/chunk-3MVKXAH7.js +2 -0
  19. package/dist/chunks/{chunk-UTNGEMW5.js → chunk-3WJQ4IGK.js} +1 -1
  20. package/dist/chunks/{chunk-G6OR5NB6.js → chunk-4D3CICBG.js} +1 -1
  21. package/dist/chunks/chunk-4DYWVGVS.js +2 -0
  22. package/dist/chunks/{chunk-KUPJNBWG.js → chunk-4JYTFEND.js} +1 -1
  23. package/dist/chunks/chunk-4MQHIFZL.js +2 -0
  24. package/dist/chunks/chunk-4TO743HO.js +4 -0
  25. package/dist/chunks/{chunk-B4RKHHF7.js → chunk-4TTXNVCE.js} +1 -1
  26. package/dist/chunks/{chunk-3YXYBYWK.js → chunk-4V73I4OL.js} +1 -1
  27. package/dist/chunks/chunk-55Q64WWF.js +2 -0
  28. package/dist/chunks/{chunk-F7QTIHXX.js → chunk-5AU5Y6KS.js} +1 -1
  29. package/dist/chunks/chunk-5HPZGLOL.js +2 -0
  30. package/dist/chunks/{chunk-LCSBCCYC.js → chunk-5JVJQA5H.js} +1 -1
  31. package/dist/chunks/chunk-5KJMFK65.js +2 -0
  32. package/dist/chunks/{chunk-BSPFY3Y5.js → chunk-5KWKSR4P.js} +1 -1
  33. package/dist/chunks/chunk-5WPMI6QX.js +2 -0
  34. package/dist/chunks/{chunk-SHJY5RLU.js → chunk-5Z3AU5CL.js} +1 -1
  35. package/dist/chunks/{chunk-DQI5TE6A.js → chunk-66HFW4OU.js} +1 -1
  36. package/dist/chunks/{chunk-NT7N6KLE.js → chunk-67HXM6AL.js} +1 -1
  37. package/dist/chunks/{chunk-J7ZTPXRQ.js → chunk-6C3CXME7.js} +1 -1
  38. package/dist/chunks/{chunk-PWK5Z5S3.js → chunk-6ESBAHWK.js} +1 -1
  39. package/dist/chunks/{chunk-XNOMIWEY.js → chunk-6I5AUTVO.js} +1 -1
  40. package/dist/chunks/{chunk-OG33QAG6.js → chunk-6S2MWJVD.js} +1 -1
  41. package/dist/chunks/{chunk-KCOTDUGW.js → chunk-6TRVEA3T.js} +1 -1
  42. package/dist/chunks/chunk-6ZTP6CUJ.js +2 -0
  43. package/dist/chunks/{chunk-4L6DU6Z2.js → chunk-7FBWUVX7.js} +1 -1
  44. package/dist/chunks/{chunk-GPL2Z65R.js → chunk-7P5SH3CI.js} +2 -2
  45. package/dist/chunks/chunk-7PKTCMZ6.js +2 -0
  46. package/dist/chunks/chunk-7XOUM6RK.js +2 -0
  47. package/dist/chunks/chunk-A77DLBR4.js +2 -0
  48. package/dist/chunks/chunk-AF3AVDPP.js +2 -0
  49. package/dist/chunks/{chunk-RV7PUSI2.js → chunk-AJXWJLZA.js} +1 -1
  50. package/dist/chunks/chunk-AMC4Z7G4.js +2 -0
  51. package/dist/chunks/chunk-ANG2YMMD.js +2 -0
  52. package/dist/chunks/{chunk-ZPTKR3GB.js → chunk-B32CW3NT.js} +1 -1
  53. package/dist/chunks/{chunk-Y766IN7Y.js → chunk-B666Z2NS.js} +1 -1
  54. package/dist/chunks/chunk-BJXPQIVD.js +2 -0
  55. package/dist/chunks/{chunk-WBUK73ST.js → chunk-BL3CZWWD.js} +1 -1
  56. package/dist/chunks/{chunk-XMHIQ3SK.js → chunk-BTJACFU3.js} +2 -2
  57. package/dist/chunks/{chunk-25XXZS3E.js → chunk-C5B3FMV3.js} +1 -1
  58. package/dist/chunks/chunk-CRDKBFRN.js +2 -0
  59. package/dist/chunks/chunk-CYQLXS2U.js +2 -0
  60. package/dist/chunks/{chunk-N4VHLJBZ.js → chunk-D7R2AAX2.js} +1 -1
  61. package/dist/chunks/{chunk-LSZJ5M3X.js → chunk-DAEUVT2I.js} +1 -1
  62. package/dist/chunks/{chunk-ELX7VRSU.js → chunk-DIDQHTAX.js} +1 -1
  63. package/dist/chunks/chunk-DMO3UIS7.js +6 -0
  64. package/dist/chunks/{chunk-4BJGUCHY.js → chunk-DRMOHADV.js} +1 -1
  65. package/dist/chunks/{chunk-FYYYECHE.js → chunk-DSJZS77R.js} +4 -4
  66. package/dist/chunks/{chunk-7HRLWPPZ.js → chunk-DXA2UHBE.js} +1 -1
  67. package/dist/chunks/{chunk-T6JN4PND.js → chunk-EBOTNBUS.js} +1 -1
  68. package/dist/chunks/chunk-ECOH24MC.js +9 -0
  69. package/dist/chunks/{chunk-6PKXJEJM.js → chunk-EICS777E.js} +1 -1
  70. package/dist/chunks/{chunk-4SZ3HKHU.js → chunk-EVQISX7M.js} +1 -1
  71. package/dist/chunks/{chunk-2HAWOMZK.js → chunk-EW7CD7OA.js} +1 -1
  72. package/dist/chunks/chunk-FEQ7HNJR.js +2 -0
  73. package/dist/chunks/{chunk-IWWXIUAQ.js → chunk-FHLSLOKH.js} +8 -8
  74. package/dist/chunks/{chunk-BU27SLZP.js → chunk-FS2VKOT7.js} +1 -1
  75. package/dist/chunks/{chunk-4FNCBA3Y.js → chunk-FUFI4THX.js} +1 -1
  76. package/dist/chunks/{chunk-W5W4IODW.js → chunk-FYWQWKVS.js} +1 -1
  77. package/dist/chunks/{chunk-IZ56L2ZK.js → chunk-G4747MOW.js} +1 -1
  78. package/dist/chunks/{chunk-J572ANHX.js → chunk-G4E3WGLM.js} +4 -4
  79. package/dist/chunks/{chunk-P7HRF4FM.js → chunk-GD3RCUDH.js} +1 -1
  80. package/dist/chunks/{chunk-HUCBKXTU.js → chunk-GDJ4X2ZN.js} +1 -1
  81. package/dist/chunks/{chunk-JHR3LF2F.js → chunk-GF55VEMR.js} +1 -1
  82. package/dist/chunks/{chunk-GXCUH2VV.js → chunk-GFAI2MCJ.js} +3 -3
  83. package/dist/chunks/{chunk-KOKX7PBS.js → chunk-GI7LTJV3.js} +1 -1
  84. package/dist/chunks/{chunk-TCOTXCV6.js → chunk-GIU3Z45P.js} +1 -1
  85. package/dist/chunks/chunk-GKLZQN6P.js +161 -0
  86. package/dist/chunks/{chunk-GXZCMO6S.js → chunk-GRLQHYAU.js} +2 -2
  87. package/dist/chunks/{chunk-M3SCON53.js → chunk-GUG2SWRZ.js} +1 -1
  88. package/dist/chunks/{chunk-JQRMDFF3.js → chunk-H42UW6IF.js} +1 -1
  89. package/dist/chunks/{chunk-EZRUWIP6.js → chunk-H5ML7735.js} +1 -1
  90. package/dist/chunks/{chunk-VNJAAYNQ.js → chunk-HIQPGYVH.js} +1 -1
  91. package/dist/chunks/{chunk-DLANLLKH.js → chunk-HNDAGZCF.js} +1 -1
  92. package/dist/chunks/{chunk-OE22TAXP.js → chunk-HNQPEOJD.js} +1 -1
  93. package/dist/chunks/chunk-HORMGT2Q.js +2 -0
  94. package/dist/chunks/{chunk-2V4LPUBH.js → chunk-HPTEJBP4.js} +1 -1
  95. package/dist/chunks/{chunk-R6VJDOQM.js → chunk-HQQJKWZY.js} +4 -4
  96. package/dist/chunks/{chunk-UWHIU24L.js → chunk-HVM2GUM3.js} +1 -1
  97. package/dist/chunks/{chunk-NEJLJ2XY.js → chunk-HX6GXMDK.js} +1 -1
  98. package/dist/chunks/chunk-I3NYYOSS.js +2 -0
  99. package/dist/chunks/{chunk-LV3CQ72P.js → chunk-I6VMRQF4.js} +1 -1
  100. package/dist/chunks/{chunk-QU4UE73E.js → chunk-IEVJLG3V.js} +1 -1
  101. package/dist/chunks/chunk-IOSBGCRT.js +2 -0
  102. package/dist/chunks/{chunk-SO42ZB5K.js → chunk-JBFPTEVE.js} +1 -1
  103. package/dist/chunks/{chunk-G32BO6M5.js → chunk-JD76ANPN.js} +1 -1
  104. package/dist/chunks/{chunk-ERJV5BMC.js → chunk-JFZ6USNQ.js} +1 -1
  105. package/dist/chunks/{chunk-UPWJSNL5.js → chunk-JLW5BQVO.js} +1 -1
  106. package/dist/chunks/chunk-JRGECNP3.js +2 -0
  107. package/dist/chunks/{chunk-DABBHWSF.js → chunk-KAWXVMHI.js} +1 -1
  108. package/dist/chunks/chunk-KGUPAPGR.js +2 -0
  109. package/dist/chunks/{chunk-AHOBCBVZ.js → chunk-KOKBDIGR.js} +1 -1
  110. package/dist/chunks/chunk-KTIBXRWQ.js +2 -0
  111. package/dist/chunks/chunk-L4EJ5R3B.js +23 -0
  112. package/dist/chunks/{chunk-SI5W5LBV.js → chunk-LARJARMS.js} +1 -1
  113. package/dist/chunks/{chunk-MPNJ2BB4.js → chunk-LE75SVEL.js} +1 -1
  114. package/dist/chunks/{chunk-ERT32RZA.js → chunk-LI3FTPAH.js} +5 -5
  115. package/dist/chunks/chunk-LK77GI6M.js +2 -0
  116. package/dist/chunks/chunk-LOIYNRBC.js +33 -0
  117. package/dist/chunks/{chunk-7WYL2IDD.js → chunk-LXZLLTYQ.js} +1 -1
  118. package/dist/chunks/{chunk-RZUCVF2Q.js → chunk-LYVHYT3L.js} +1 -1
  119. package/dist/chunks/{chunk-MWXW2CA6.js → chunk-LZPCA6DH.js} +1 -1
  120. package/dist/chunks/{chunk-GVARQXYI.js → chunk-M5QPL5NO.js} +1 -1
  121. package/dist/chunks/{chunk-WWQNMC7C.js → chunk-MCBRB5D6.js} +1 -1
  122. package/dist/chunks/chunk-MHPCVQOE.js +2 -0
  123. package/dist/chunks/chunk-MMJU6PZV.js +2 -0
  124. package/dist/chunks/chunk-MVPKU72J.js +4 -0
  125. package/dist/chunks/{chunk-AGVOGPAZ.js → chunk-MWS2NAHJ.js} +1 -1
  126. package/dist/chunks/{chunk-R6WMY6AH.js → chunk-NTM3KQ25.js} +1 -1
  127. package/dist/chunks/chunk-NXN7GJOH.js +2 -0
  128. package/dist/chunks/chunk-O6ZYDHEJ.js +3 -0
  129. package/dist/chunks/chunk-OKEC2EIE.js +2 -0
  130. package/dist/chunks/{chunk-KCV5VN4X.js → chunk-OKKNDQJF.js} +1 -1
  131. package/dist/chunks/{chunk-ZYVHOVKL.js → chunk-OPTJYDZN.js} +1 -1
  132. package/dist/chunks/{chunk-NJLULBTM.js → chunk-OTDDXEQ6.js} +1 -1
  133. package/dist/chunks/{chunk-RDSVU6F6.js → chunk-OTUS7NTQ.js} +1 -1
  134. package/dist/chunks/{chunk-UH4JSSRL.js → chunk-OTXGAKFH.js} +8 -8
  135. package/dist/chunks/chunk-OW3EOC5Q.js +4 -0
  136. package/dist/chunks/chunk-OXRVILDW.js +2 -0
  137. package/dist/chunks/{chunk-JEISPWWM.js → chunk-PWKJ5KLZ.js} +1 -1
  138. package/dist/chunks/{chunk-RFMME46Z.js → chunk-PYNW5OFA.js} +1 -1
  139. package/dist/chunks/{chunk-AKGCM53D.js → chunk-Q3WXB465.js} +1 -1
  140. package/dist/chunks/{chunk-KHTAAVC2.js → chunk-Q4AXZY2P.js} +1 -1
  141. package/dist/chunks/{chunk-QJ6KUVAR.js → chunk-QAEZNFAM.js} +1 -1
  142. package/dist/chunks/{chunk-ABF3W2MO.js → chunk-QAFXQHHG.js} +2 -2
  143. package/dist/chunks/chunk-QCJY6FTC.js +3 -0
  144. package/dist/chunks/{chunk-5MHYGMJG.js → chunk-QJJNHKLT.js} +1 -1
  145. package/dist/chunks/{chunk-ERL2M773.js → chunk-QYQZQVVN.js} +1 -1
  146. package/dist/chunks/{chunk-VVNV4NNW.js → chunk-RCT3O3HQ.js} +1 -1
  147. package/dist/chunks/{chunk-7R56WC7L.js → chunk-RHMULF56.js} +1 -1
  148. package/dist/chunks/chunk-RRWL5BHZ.js +2 -0
  149. package/dist/chunks/{chunk-RG3NH6YQ.js → chunk-S4WILIRA.js} +1 -1
  150. package/dist/chunks/{chunk-N33D7KCW.js → chunk-S6UCVXBC.js} +1 -1
  151. package/dist/chunks/{chunk-IHB5GTOJ.js → chunk-SAZTOGX6.js} +3 -3
  152. package/dist/chunks/{chunk-2EPR4HLF.js → chunk-SH7POUVX.js} +6 -6
  153. package/dist/chunks/chunk-SQX22LQT.js +10 -0
  154. package/dist/chunks/{chunk-NLYZ5K7U.js → chunk-SSJV3VX7.js} +1 -1
  155. package/dist/chunks/chunk-TBODQT4W.js +2 -0
  156. package/dist/chunks/chunk-TGULVWPV.js +2 -0
  157. package/dist/chunks/{chunk-HIYQPZ7C.js → chunk-TPOAAJKA.js} +1 -1
  158. package/dist/chunks/{chunk-42V4NV2F.js → chunk-TVDZXDQW.js} +1 -1
  159. package/dist/chunks/{chunk-FVRII5XO.js → chunk-U2BD545L.js} +1 -1
  160. package/dist/chunks/chunk-UK5LGSGT.js +2 -0
  161. package/dist/chunks/{chunk-HFJUXKT5.js → chunk-ULJZ7NUF.js} +1 -1
  162. package/dist/chunks/chunk-UN2LKLGV.js +2 -0
  163. package/dist/chunks/{chunk-4NXEYPPX.js → chunk-UOFDKMRU.js} +1 -1
  164. package/dist/chunks/{chunk-2ITZW2CN.js → chunk-UTIELP6F.js} +1 -1
  165. package/dist/chunks/{chunk-NWQL6FNF.js → chunk-V3KEG6MI.js} +1 -1
  166. package/dist/chunks/{chunk-BPZOABMC.js → chunk-V3S2B6WU.js} +2 -2
  167. package/dist/chunks/{chunk-ZG6353RM.js → chunk-VD2TQCMH.js} +1 -1
  168. package/dist/chunks/{chunk-4ZBOYWQ3.js → chunk-VS2LOUCT.js} +1 -1
  169. package/dist/chunks/{chunk-V7KR74NO.js → chunk-VS3AMJEK.js} +1 -1
  170. package/dist/chunks/{chunk-YCZZ62C2.js → chunk-W22KWKF6.js} +1 -1
  171. package/dist/chunks/chunk-W7NXFRHN.js +2 -0
  172. package/dist/chunks/{chunk-DTTFUANI.js → chunk-WBO6FQHR.js} +2 -2
  173. package/dist/chunks/{chunk-5ZBLCWEJ.js → chunk-WJSJXK2N.js} +1 -1
  174. package/dist/chunks/{chunk-C2LAEGOW.js → chunk-WKHGXLJD.js} +2 -2
  175. package/dist/chunks/{chunk-H6C4MAUN.js → chunk-WLQEONBF.js} +1 -1
  176. package/dist/chunks/chunk-WLZJOCLA.js +10 -0
  177. package/dist/chunks/chunk-WMBOXX7G.js +2 -0
  178. package/dist/chunks/{chunk-PF56N7ZY.js → chunk-X2J2P5ZT.js} +5 -5
  179. package/dist/chunks/{chunk-AH26AQN7.js → chunk-XHBMK6LC.js} +1 -1
  180. package/dist/chunks/{chunk-ZZHXQCNB.js → chunk-Y3B6ZUE6.js} +1 -1
  181. package/dist/chunks/{chunk-WP2L2NY2.js → chunk-YBKDEEEH.js} +1 -1
  182. package/dist/chunks/chunk-YRDPVTEI.js +3 -0
  183. package/dist/chunks/{chunk-JORRZ4BB.js → chunk-YU4JYWCA.js} +1 -1
  184. package/dist/chunks/{chunk-CZ5R4JXZ.js → chunk-Z2TOBS3P.js} +1 -1
  185. package/dist/chunks/chunk-ZFJWA4JK.js +1 -0
  186. package/dist/chunks/chunk-ZSZXA7WB.js +2 -0
  187. package/dist/chunks/{chunk-LK2K3SPM.js → chunk-ZU3YBRXS.js} +2 -2
  188. package/dist/chunks/{chunk-5FU5RLML.js → chunk-ZUT4EM64.js} +1 -1
  189. package/dist/chunks/chunk-ZWW227M3.js +2 -0
  190. package/dist/chunks/chunk-ZY32SZ2P.js +3 -0
  191. package/dist/chunks/cli-TE7RP5H7.js +2 -0
  192. package/dist/chunks/client-I5MYOJEJ.js +2 -0
  193. package/dist/chunks/command-NDHFZAKA.js +13 -0
  194. package/dist/chunks/configuration-command-HPMGH7WR.js +2 -0
  195. package/dist/chunks/connected-app-executor-7DYMZCD7.js +2 -0
  196. package/dist/chunks/connected-evidence-FNHTBUDG.js +2 -0
  197. package/dist/chunks/{connected-starting-assets-JONPTII6.js → connected-starting-assets-O4X6D6BG.js} +1 -1
  198. package/dist/chunks/connection-GDWPMHPC.js +2 -0
  199. package/dist/chunks/{continual-Z7MO2PF6.js → continual-HQCFY7GN.js} +3 -3
  200. package/dist/chunks/core-commands-LEFFBKR7.js +2 -0
  201. package/dist/chunks/dataset-preparation-authoring-KWRTMKN6.js +4 -0
  202. package/dist/chunks/datasets-BWHI23IB.js +2 -0
  203. package/dist/chunks/desktop-test-XROQ7K5H.js +3 -0
  204. package/dist/chunks/dist-GR56E3QK.js +2 -0
  205. package/dist/chunks/dist-J4KHAVO3.js +2 -0
  206. package/dist/chunks/dist-O7HXZUBW.js +2 -0
  207. package/dist/chunks/enclave-7VLABNIX.js +2 -0
  208. package/dist/chunks/evaluation-coordination-JTQIKHW6.js +2 -0
  209. package/dist/chunks/experiment-improvements-2TV2DA3K.js +2 -0
  210. package/dist/chunks/experiments-VOCZ4DW3.js +2 -0
  211. package/dist/chunks/experiments-VUJ4SEMG.js +2 -0
  212. package/dist/chunks/experiments-signal-TSTEBORD.js +2 -0
  213. package/dist/chunks/{extension-ZM6NI5O5.js → extension-UH34ZF7N.js} +1 -1
  214. package/dist/chunks/{help-7HXFWIKS.js → help-OPN36XRA.js} +1 -1
  215. package/dist/chunks/host-profile-evaluation-tools-75EPCRSZ.js +2 -0
  216. package/dist/chunks/host-profile-external-dataset-YRKG2GL5.js +2 -0
  217. package/dist/chunks/hosted-app-server-composition-7WZ4RIX2.js +2 -0
  218. package/dist/chunks/hosted-experiment-improvement-NZTPZTDH.js +3 -0
  219. package/dist/chunks/hosted-harness-runtime-3AJGEIFD.js +2 -0
  220. package/dist/chunks/hosted-profile-candidate-3CAT3XBI.js +3 -0
  221. package/dist/chunks/hosted-profile-compiler-RXU626Q6.js +2 -0
  222. package/dist/chunks/hosted-profile-evaluation-control-CBDRKJ5J.js +2 -0
  223. package/dist/chunks/hosted-profile-evaluation-inspection-CHYKDYUQ.js +3 -0
  224. package/dist/chunks/hosted-profile-evaluation-preparation-H5S7JZMD.js +3 -0
  225. package/dist/chunks/hosted-tasksets-AMGDDB2R.js +2 -0
  226. package/dist/chunks/human-review-NVKBEYG5.js +2 -0
  227. package/dist/chunks/{import-6SI4BEKS.js → import-P5DCYMQ6.js} +2 -2
  228. package/dist/chunks/learning-NJLTGZFQ.js +2 -0
  229. package/dist/chunks/learning-XTY5VOTK.js +2 -0
  230. package/dist/chunks/local-harness-improvement-runtime-XEA73RGS.js +2 -0
  231. package/dist/chunks/local-harness-taskset-review-SW35G4DM.js +2 -0
  232. package/dist/chunks/local-scope-X3737QXT.js +2 -0
  233. package/dist/chunks/model-projects-GHWCKDON.js +2 -0
  234. package/dist/chunks/opchat-ZJ5DO4RT.js +3 -0
  235. package/dist/chunks/opchat-bounded-chat-JVZ5LRH2.js +2 -0
  236. package/dist/chunks/organizations-UKXORVYS.js +2 -0
  237. package/dist/chunks/{profile-O5HL5DTQ.js → profile-XL5LABHR.js} +1 -1
  238. package/dist/chunks/profile-training-source-VIND2MM2.js +2 -0
  239. package/dist/chunks/project-action-payload-2G57RL74.js +2 -0
  240. package/dist/chunks/project-agent-CCGEMNR7.js +2 -0
  241. package/dist/chunks/published-experiment-source-D3C2AWQD.js +2 -0
  242. package/dist/chunks/refiner-profile-service-PPGGNVOV.js +2 -0
  243. package/dist/chunks/{runtime-XBA744HJ.js → runtime-VSOOPNYN.js} +2 -2
  244. package/dist/chunks/sandbox-command-L6BMKDGY.js +2 -0
  245. package/dist/chunks/{sandbox-template-27U3FQN7.js → sandbox-template-QL5ID5GJ.js} +1 -1
  246. package/dist/chunks/saved-work-LAVTNKPT.js +2 -0
  247. package/dist/chunks/send-turn-D3GTSSHI.js +2 -0
  248. package/dist/chunks/setup-HSRCZ3WR.js +2 -0
  249. package/dist/chunks/{src-PU7QTFO5.js → src-662QOKNP.js} +1 -1
  250. package/dist/chunks/{src-BLWX6DRG.js → src-KWOSLOBH.js} +117 -117
  251. package/dist/chunks/standalone-experiment-turn-owner-KKYIGGPF.js +2 -0
  252. package/dist/chunks/stdio-Z65UIX55.js +2 -0
  253. package/dist/chunks/store-chat-resources-ZWDYMDJF.js +2 -0
  254. package/dist/chunks/{store-continual-support-reviews-FOMYYS25.js → store-continual-support-reviews-7PDLGRWF.js} +1 -1
  255. package/dist/chunks/store-conversation-serving-WRT4N7N2.js +2 -0
  256. package/dist/chunks/{store-create-improve-3LQMIYAP.js → store-create-improve-G46KIUVT.js} +1 -1
  257. package/dist/chunks/{store-datasets-3KSX7RSO.js → store-datasets-O67F75BL.js} +1 -1
  258. package/dist/chunks/store-evaluation-results-BEPR4LVD.js +7 -0
  259. package/dist/chunks/{store-harness-memory-2L7ARBR4.js → store-harness-memory-4XEUITXE.js} +1 -1
  260. package/dist/chunks/{store-harness-refinement-candidates-3PHL3BUY.js → store-harness-refinement-candidates-LCN4NV23.js} +1 -1
  261. package/dist/chunks/store-harness-workspaces-PJJQ74G6.js +2 -0
  262. package/dist/chunks/store-human-review-HJ3D7ZFA.js +7 -0
  263. package/dist/chunks/store-learned-preference-migration-validation-EXNRDHCO.js +2 -0
  264. package/dist/chunks/store-learning-6P6IS7GH.js +2 -0
  265. package/dist/chunks/store-learning-credentials-EGJ2WTZI.js +2 -0
  266. package/dist/chunks/{store-local-experiments-QTVHJAEP.js → store-local-experiments-CBJA56X2.js} +1 -1
  267. package/dist/chunks/store-model-batch-review-YIVD7T2T.js +2 -0
  268. package/dist/chunks/{store-model-configuration-3SU73CMS.js → store-model-configuration-T6XJJDAB.js} +2 -2
  269. package/dist/chunks/store-model-project-preparation-WWU5CJTV.js +2 -0
  270. package/dist/chunks/{store-preference-comparison-DWV5XSMY.js → store-preference-comparison-XQFTLMGH.js} +1 -1
  271. package/dist/chunks/{store-schedules-2KUY4T6M.js → store-schedules-JPFVWL3Q.js} +1 -1
  272. package/dist/chunks/{store-sidebar-file-bookmarks-A4XCS7RM.js → store-sidebar-file-bookmarks-J3JEVAYR.js} +1 -1
  273. package/dist/chunks/{store-sidebar-preferences-V2PKRXUZ.js → store-sidebar-preferences-2JHTFXJK.js} +1 -1
  274. package/dist/chunks/{store-subagents-UGVEFA6M.js → store-subagents-PUBQVWSU.js} +1 -1
  275. package/dist/chunks/{store-task-inbox-QABI4ZAH.js → store-task-inbox-VVXZUJIO.js} +1 -1
  276. package/dist/chunks/{store-task-inventory-GEQIZELY.js → store-task-inventory-MQX44AI6.js} +1 -1
  277. package/dist/chunks/store-taskset-drafts-G3WFVN4M.js +9 -0
  278. package/dist/chunks/{store-training-CQV7PL3V.js → store-training-DUVIDYK5.js} +1 -1
  279. package/dist/chunks/{store-training-jobs-XKN6K66J.js → store-training-jobs-HHFH3V5O.js} +1 -1
  280. package/dist/chunks/{store-training-models-Q7DTTR4S.js → store-training-models-C7UUZDTO.js} +1 -1
  281. package/dist/chunks/{store-usage-XGAX7NLB.js → store-usage-6DMZM7WV.js} +1 -1
  282. package/dist/chunks/{store-work-evidence-VSLLZ6UF.js → store-work-evidence-77B36LRC.js} +1 -1
  283. package/dist/chunks/taskset-7FQCJ55X.js +2 -0
  284. package/dist/chunks/taskset-packages-NRRPON7B.js +2 -0
  285. package/dist/chunks/taskset-packages-RW4SFGDU.js +2 -0
  286. package/dist/chunks/{teams-bot-UTQAJA6H.js → teams-bot-LGV7UKX2.js} +1 -1
  287. package/dist/chunks/tool-learning-NGO7QHYK.js +2 -0
  288. package/dist/chunks/training-XFM3OOPN.js +2 -0
  289. package/dist/chunks/training-XILDD5RG.js +2 -0
  290. package/dist/chunks/training-error-LQKCOQDJ.js +2 -0
  291. package/dist/chunks/training-hardware-ESXRWUIK.js +3 -0
  292. package/dist/chunks/training-hosted-6BX2IASC.js +2 -0
  293. package/dist/chunks/training-hosted-checkpoint-evaluation-UXFW33QL.js +2 -0
  294. package/dist/chunks/training-hosted-learning-YN5VD3PW.js +2 -0
  295. package/dist/chunks/training-hosted-serving-N2MHWGZN.js +2 -0
  296. package/dist/chunks/training-hosted-serving-report-J4YOZLRP.js +2 -0
  297. package/dist/chunks/training-hosted-workers-6JTDCCWA.js +2 -0
  298. package/dist/chunks/training-model-start-E5MP3URL.js +2 -0
  299. package/dist/chunks/web-search-56QRZGPR.js +2 -0
  300. package/dist/chunks/workspaces-MCS2AQX6.js +2 -0
  301. package/dist/cli.js +1 -1
  302. package/dist/index.js +1 -1
  303. package/dist/sandbox-template/manifest.js +1 -1
  304. package/dist/skills/manifest.json +1 -1
  305. package/dist/web/assets/App-BZuSv1XM.js +53 -0
  306. package/dist/web/assets/{AppDialog-8Y0FYalT.js → AppDialog-BILEK4np.js} +1 -1
  307. package/dist/web/assets/AppTerminalPanel-BvxZ8bwD.js +2 -0
  308. package/dist/web/assets/{AppToastContext-BiQbbVxq.js → AppToastContext-C-FsCKXW.js} +1 -1
  309. package/dist/web/assets/{AppsView-Dtte4h6e.js → AppsView-BMaq5oxx.js} +1 -1
  310. package/dist/web/assets/{AttachmentTypeIcon-DgADV7dn.js → AttachmentTypeIcon-Bh7Ft_UL.js} +1 -1
  311. package/dist/web/assets/{BrowserSidebar-BUqDvEv9.js → BrowserSidebar-BG2MLJ9I.js} +1 -1
  312. package/dist/web/assets/{CartesianChart-J4ChOjvG.js → CartesianChart-CS6ES_XT.js} +1 -1
  313. package/dist/web/assets/ChatTimelineEntry-Dr5X_XyN.js +8 -0
  314. package/dist/web/assets/{ChatTimelineEntry-DztFb85D.css → ChatTimelineEntry-vs8RaEGD.css} +1 -1
  315. package/dist/web/assets/{CollaborationTabs-CFCpk2Ck.js → CollaborationTabs-CPJ2w67F.js} +1 -1
  316. package/dist/web/assets/{CommandMenu-EPPjB14H.js → CommandMenu-Fe1V7NJd.js} +1 -1
  317. package/dist/web/assets/{CommunityView-Okydjpqm.js → CommunityView-DHTcmOnI.js} +1 -1
  318. package/dist/web/assets/{ComposerAttachments-RXCiE88M.js → ComposerAttachments-Ck9VWD6o.js} +1 -1
  319. package/dist/web/assets/{ComposerCreateImproveStrip-CSngc8-V.js → ComposerCreateImproveStrip-yiXO7cf8.js} +1 -1
  320. package/dist/web/assets/{ConversationImportsSettings-DS73kyfj.js → ConversationImportsSettings-_VLzUnHQ.js} +1 -1
  321. package/dist/web/assets/{FilePagePreview-Qc4B0vue.js → FilePagePreview-BpcM1DfE.js} +2 -2
  322. package/dist/web/assets/{GetStartedView-DGFPQ1We.js → GetStartedView-BH-WJ-rW.js} +1 -1
  323. package/dist/web/assets/{GettingStartedDialog-DFBYQdHz.js → GettingStartedDialog-CdQfj7RA.js} +1 -1
  324. package/dist/web/assets/{HostedModelLearningReview-BDu3FlcU.js → HostedModelLearningReview-C3GsOlu9.js} +1 -1
  325. package/dist/web/assets/{HostedModelLearningSettings-CHaTHwC8.js → HostedModelLearningSettings-SSMst6dl.js} +1 -1
  326. package/dist/web/assets/{HtmlVisual-D9Mh7xds.js → HtmlVisual-CH0tb3fv.js} +1 -1
  327. package/dist/web/assets/{LabModelVersionDetailPage-DgY7lAu5.js → LabModelVersionDetailPage-J2t9yILv.js} +1 -1
  328. package/dist/web/assets/{LabSkillSidebar-BwtlThO7.js → LabSkillSidebar-DdDYvfj2.js} +1 -1
  329. package/dist/web/assets/LabsRoute-MJwIjSKg.js +101 -0
  330. package/dist/web/assets/MainChatThread-BcwtaTDZ.js +2 -0
  331. package/dist/web/assets/MainPane-DDO6diPt.js +10 -0
  332. package/dist/web/assets/NativeSetupTerminal-BPSUFpRm.js +2 -0
  333. package/dist/web/assets/{NativeSkillSidebar-BEJvt5_H.js → NativeSkillSidebar-DPYavzau.js} +1 -1
  334. package/dist/web/assets/{NewProjectDialog-CjrjgkTN.js → NewProjectDialog-BtmvE9Sp.js} +1 -1
  335. package/dist/web/assets/{OutputsPage-jzx93QQ3.js → OutputsPage-BMRY7RK2.js} +1 -1
  336. package/dist/web/assets/{PageChrome-C1M13qG2.js → PageChrome-5VRxH6Rp.js} +1 -1
  337. package/dist/web/assets/{ProjectsPage-DZrjlMp2.js → ProjectsPage-1LHqxOMo.js} +1 -1
  338. package/dist/web/assets/RightChatPanelStack-D_7KgExz.js +1 -0
  339. package/dist/web/assets/RightSidebarHomePanel-iznJwDMf.js +1 -0
  340. package/dist/web/assets/{ScheduledWorkPage-Cw1ja2GF.js → ScheduledWorkPage-Dtz4zJ0T.js} +1 -1
  341. package/dist/web/assets/{SettingsView-CckoIki3.js → SettingsView-BeDYNPcD.js} +3 -3
  342. package/dist/web/assets/{TasksetDraftEditorPrimitives-ByC8bDjp.js → TasksetDraftEditorPrimitives-CcvKO3YA.js} +1 -1
  343. package/dist/web/assets/{TeamChatView-OprnSKLF.js → TeamChatView-DaXxOkTe.js} +1 -1
  344. package/dist/web/assets/{TerminalOverlay-d7A2F9Lx.js → TerminalOverlay-CF8uB4qA.js} +1 -1
  345. package/dist/web/assets/{TrainingCreationPanel-Cyn6R6I6.js → TrainingCreationPanel-DmMO7x5T.js} +1 -1
  346. package/dist/web/assets/{TrainingDraftPanel-Mpb5e7t5.js → TrainingDraftPanel-DCHbXjSx.js} +1 -1
  347. package/dist/web/assets/{TrainingRunLineage-VcKz7dIR.js → TrainingRunLineage-CwisTWs_.js} +1 -1
  348. package/dist/web/assets/UsageSettingsSection-Drt7gwRb.js +7 -0
  349. package/dist/web/assets/WorkSidebarPanel-BrIIRtGW.js +1 -0
  350. package/dist/web/assets/WorkspaceDiffPanel-Dmbrg0-y.js +11 -0
  351. package/dist/web/assets/{WorkspaceEnvironmentMenu-C8y3537a.js → WorkspaceEnvironmentMenu-KEZm1gdb.js} +1 -1
  352. package/dist/web/assets/{WorkspaceFileLocation-LrEWj4UK.js → WorkspaceFileLocation-ChbOKrPO.js} +1 -1
  353. package/dist/web/assets/{WorkspaceGitDialogs-NRIMXnkS.js → WorkspaceGitDialogs-BS2JQKNQ.js} +1 -1
  354. package/dist/web/assets/{WorkspaceMonacoEditor-CvDGjKAL.js → WorkspaceMonacoEditor-CN1hE_C4.js} +3 -3
  355. package/dist/web/assets/{WorkspacePdfPreview-BZ0BbnHv.js → WorkspacePdfPreview-Clb4m0le.js} +2 -2
  356. package/dist/web/assets/{WorkspacePresentationPreview-DJrjrvT0.js → WorkspacePresentationPreview-CwQsdvAR.js} +1 -1
  357. package/dist/web/assets/app-models-Cz3yxq4x.js +1 -0
  358. package/dist/web/assets/{bot-6OhUEmkE.js → bot-BNFltD5O.js} +1 -1
  359. package/dist/web/assets/chat-resources-CTN4f6KC.js +1 -0
  360. package/dist/web/assets/{chevron-down-jmVA1BIf.js → chevron-down-BnnT0tnM.js} +1 -1
  361. package/dist/web/assets/chevron-right-C8K5PZj7.js +1 -0
  362. package/dist/web/assets/{chevron-up-CstyLXH3.js → chevron-up-BAnwJJN3.js} +1 -1
  363. package/dist/web/assets/chunk-GJRXJL6G-pJp1DyJd.js +9 -0
  364. package/dist/web/assets/chunk-TLSP5JKG-DZmxtX-4.js +1 -0
  365. package/dist/web/assets/{client-choice-storage-BdQ_YDuk.js → client-choice-storage-Iuzoszas.js} +1 -1
  366. package/dist/web/assets/{cloud-upload-Ck1ufAr8.js → cloud-upload-CdSXJ7ms.js} +1 -1
  367. package/dist/web/assets/{copy-CPkbMfXt.js → copy-CBFg6m0d.js} +1 -1
  368. package/dist/web/assets/{createLucideIcon-CXQny8HU.js → createLucideIcon-DF2VR6WA.js} +1 -1
  369. package/dist/web/assets/{cssMode-CYxYl_om.js → cssMode-BSQUZhUO.js} +1 -1
  370. package/dist/web/assets/{external-link-CDKOLG_v.js → external-link-Cql9bKdv.js} +1 -1
  371. package/dist/web/assets/{folder-open-CEtOb_lK.js → folder-open-BXdVB5J1.js} +1 -1
  372. package/dist/web/assets/{folder-plus-CVMYZs3e.js → folder-plus-Cma2HulC.js} +1 -1
  373. package/dist/web/assets/{git-commit-horizontal-DDyhPjxS.js → git-commit-horizontal-eF--16ps.js} +1 -1
  374. package/dist/web/assets/{htmlMode-DoY4V_j0.js → htmlMode-aLPlQtyU.js} +1 -1
  375. package/dist/web/assets/icons-c3vt7y6n.js +1 -0
  376. package/dist/web/assets/{image-B-PjDSwU.js → image-CqKPwnBn.js} +1 -1
  377. package/dist/web/assets/{index-D9WbJMSq.js → index-CM0IRu1U.js} +2 -2
  378. package/dist/web/assets/{info-CCnw-K3b.js → info-CqeYEqG0.js} +1 -1
  379. package/dist/web/assets/{jsonMode-CeOpZdPj.js → jsonMode-fu7bEcHB.js} +1 -1
  380. package/dist/web/assets/loader-circle-pxp89T5x.js +1 -0
  381. package/dist/web/assets/{lspLanguageFeatures-DAbgLCqZ.js → lspLanguageFeatures-DraXQA4w.js} +1 -1
  382. package/dist/web/assets/{maximize-2-BZX38cpr.js → maximize-2-yMp8X9ts.js} +1 -1
  383. package/dist/web/assets/{message-square-CvgSecgD.js → message-square-DbIMQqfj.js} +1 -1
  384. package/dist/web/assets/model-display-zPvC4L2B.js +1 -0
  385. package/dist/web/assets/models-route-CWcJuOd0.js +1 -0
  386. package/dist/web/assets/{monaco.contribution-cbDqt48m.js → monaco.contribution-BQhp1CJs.js} +2 -2
  387. package/dist/web/assets/{monaco.contribution-CF2JDhi4.js → monaco.contribution-Bd8EqYGR.js} +2 -2
  388. package/dist/web/assets/{monaco.contribution-m2ze2EsL.js → monaco.contribution-CYWKnVxQ.js} +2 -2
  389. package/dist/web/assets/{monaco.contribution-yeyow_-Q.js → monaco.contribution-CmbWO0tB.js} +2 -2
  390. package/dist/web/assets/{monitor-By0s4hxb.js → monitor-DFE2fTkT.js} +1 -1
  391. package/dist/web/assets/{paperclip-BJ2QgJLa.js → paperclip-D_qsKbVs.js} +1 -1
  392. package/dist/web/assets/{pdf-C4x-1jjP.js → pdf-DkQRsi4n.js} +1 -1
  393. package/dist/web/assets/play-BtlX2stU.js +1 -0
  394. package/dist/web/assets/plus-DbASL_gy.js +1 -0
  395. package/dist/web/assets/{presentation-I86G1Gd9.js → presentation-BN_kIBPL.js} +1 -1
  396. package/dist/web/assets/{python-CqFTPj8r.js → python-DB9pj5Hr.js} +1 -1
  397. package/dist/web/assets/{refresh-cw-Dga35Eay.js → refresh-cw-B27ohHfn.js} +1 -1
  398. package/dist/web/assets/{save-BLKjYtzR.js → save-D-rwjKop.js} +1 -1
  399. package/dist/web/assets/settings-lists-DgSaJQA4.js +5 -0
  400. package/dist/web/assets/square-C2caJ3NG.js +1 -0
  401. package/dist/web/assets/{square-terminal-B-n7vUex.js → square-terminal-CeoK51wH.js} +1 -1
  402. package/dist/web/assets/{submit-issue-command-B7Hrt2tU.js → submit-issue-command-DZNW7Evj.js} +1 -1
  403. package/dist/web/assets/{toggleHighContrast-BhmBE5XE.js → toggleHighContrast-Bs8L1gx0.js} +1 -1
  404. package/dist/web/assets/{training-QrdkRQZQ.js → training-DCdoHJ0Y.js} +2 -2
  405. package/dist/web/assets/{training-model-data-DB-jg6L_.js → training-model-data-wHvE7xL1.js} +1 -1
  406. package/dist/web/assets/{tsMode-BSWEII2p.js → tsMode-C7EqshxC.js} +1 -1
  407. package/dist/web/assets/{upload-C4MPhQn8.js → upload-BWgjC2Jf.js} +1 -1
  408. package/dist/web/assets/{useAccountSettings-9oqWdRLs.js → useAccountSettings-Dva1MpsJ.js} +1 -1
  409. package/dist/web/assets/{useAgentInventory-isO79ui9.js → useAgentInventory-CrjIOmvb.js} +1 -1
  410. package/dist/web/assets/{useLocalAgentSchedules-CZX6PxoK.js → useLocalAgentSchedules-P-UaUKMb.js} +1 -1
  411. package/dist/web/assets/{useQuery-BD0Uexmh.js → useQuery-Bn3KqR4r.js} +1 -1
  412. package/dist/web/assets/{wifi-off-Cloe0WuQ.js → wifi-off--mKrSPFc.js} +1 -1
  413. package/dist/web/assets/{workers-BXagz5eg.js → workers-p0Kn2KMK.js} +1 -1
  414. package/dist/web/assets/x-D9GTV9ke.js +1 -0
  415. package/dist/web/assets/{yaml-sBdvVbCc.js → yaml-BeIdC4tu.js} +1 -1
  416. package/dist/web/index.html +1 -1
  417. package/docs/command-reference.md +44 -2
  418. package/package.json +1 -1
  419. package/dist/chunks/acp-H3MJCPHX.js +0 -2
  420. package/dist/chunks/acp-agent-DWA7272M.js +0 -21
  421. package/dist/chunks/actions-command-IIYOO4LL.js +0 -2
  422. package/dist/chunks/app-layer-K7H2WJ56.js +0 -3
  423. package/dist/chunks/app-server-connected-apps-RM5E2VWF.js +0 -2
  424. package/dist/chunks/app-server-evaluations-XGMGS67X.js +0 -2
  425. package/dist/chunks/app-server-harness-services-BHD6S5II.js +0 -2
  426. package/dist/chunks/app-server-runtime-LFIL6F7D.js +0 -2
  427. package/dist/chunks/apps-QKAHJGQ4.js +0 -2
  428. package/dist/chunks/chunk-5EP2DZLJ.js +0 -2
  429. package/dist/chunks/chunk-6EBCS57F.js +0 -2
  430. package/dist/chunks/chunk-6RS4NAOY.js +0 -2
  431. package/dist/chunks/chunk-7O6Z3VOZ.js +0 -2
  432. package/dist/chunks/chunk-7YLXGILH.js +0 -2
  433. package/dist/chunks/chunk-7ZLXFKRI.js +0 -2
  434. package/dist/chunks/chunk-B5R53U74.js +0 -2
  435. package/dist/chunks/chunk-C2AXMKK4.js +0 -2
  436. package/dist/chunks/chunk-F6UQ6PPK.js +0 -2
  437. package/dist/chunks/chunk-GS6ZUSIN.js +0 -3
  438. package/dist/chunks/chunk-JSQRLLN6.js +0 -2
  439. package/dist/chunks/chunk-LAOLJDVB.js +0 -2
  440. package/dist/chunks/chunk-LKKMLBOH.js +0 -3
  441. package/dist/chunks/chunk-M3FLEZ4E.js +0 -4
  442. package/dist/chunks/chunk-MEGKXGW3.js +0 -2
  443. package/dist/chunks/chunk-MILEWROZ.js +0 -2
  444. package/dist/chunks/chunk-N42HT64M.js +0 -2
  445. package/dist/chunks/chunk-NG2L6D7G.js +0 -2
  446. package/dist/chunks/chunk-OSVGNONV.js +0 -2
  447. package/dist/chunks/chunk-OTUBJV6C.js +0 -6
  448. package/dist/chunks/chunk-PBTXLQAU.js +0 -2
  449. package/dist/chunks/chunk-PBZCXPPC.js +0 -10
  450. package/dist/chunks/chunk-SFKZITAG.js +0 -9
  451. package/dist/chunks/chunk-SXMR6E2W.js +0 -2
  452. package/dist/chunks/chunk-U2K7QJCG.js +0 -2
  453. package/dist/chunks/chunk-URNMC46H.js +0 -157
  454. package/dist/chunks/chunk-VHXDWAEH.js +0 -2
  455. package/dist/chunks/chunk-W2TICQ62.js +0 -2
  456. package/dist/chunks/chunk-WSOUMXH3.js +0 -24
  457. package/dist/chunks/chunk-XOB6FKQV.js +0 -2
  458. package/dist/chunks/chunk-YBNKGA5C.js +0 -2
  459. package/dist/chunks/chunk-YM4PSVFW.js +0 -4
  460. package/dist/chunks/chunk-YNQWJWIC.js +0 -10
  461. package/dist/chunks/chunk-Z3BWCFLV.js +0 -2
  462. package/dist/chunks/cli-PSXMIJTF.js +0 -2
  463. package/dist/chunks/configuration-command-XYKMXIWF.js +0 -2
  464. package/dist/chunks/connected-app-executor-6G2LA3PQ.js +0 -2
  465. package/dist/chunks/connected-evidence-IRXYN6YD.js +0 -2
  466. package/dist/chunks/connection-XMAAGMXJ.js +0 -2
  467. package/dist/chunks/core-commands-WWN7X3XC.js +0 -2
  468. package/dist/chunks/dataset-preparation-authoring-F3OZIQSP.js +0 -4
  469. package/dist/chunks/datasets-2PC2HP7N.js +0 -2
  470. package/dist/chunks/desktop-test-VU6AFAMO.js +0 -3
  471. package/dist/chunks/dist-47AYOIH6.js +0 -2
  472. package/dist/chunks/dist-HSC43RG4.js +0 -2
  473. package/dist/chunks/dist-MXBEBM4D.js +0 -2
  474. package/dist/chunks/enclave-VURYNILU.js +0 -2
  475. package/dist/chunks/evaluation-coordination-UOWZHHC5.js +0 -2
  476. package/dist/chunks/experiment-improvements-EB2CV5RA.js +0 -2
  477. package/dist/chunks/experiments-CLXGM3TZ.js +0 -2
  478. package/dist/chunks/experiments-SZQYR6MH.js +0 -2
  479. package/dist/chunks/experiments-signal-2KJCP25D.js +0 -2
  480. package/dist/chunks/host-profile-evaluation-tools-Y2LQ4WQN.js +0 -2
  481. package/dist/chunks/host-profile-external-dataset-FRIGXOO7.js +0 -2
  482. package/dist/chunks/hosted-app-server-composition-PGKQNDW6.js +0 -2
  483. package/dist/chunks/hosted-experiment-improvement-UXC542SZ.js +0 -3
  484. package/dist/chunks/hosted-harness-runtime-6PEI7F2U.js +0 -2
  485. package/dist/chunks/hosted-profile-candidate-HM44BIUX.js +0 -3
  486. package/dist/chunks/hosted-profile-compiler-UAZ4PHYE.js +0 -2
  487. package/dist/chunks/hosted-profile-evaluation-control-EUL57FAB.js +0 -2
  488. package/dist/chunks/hosted-profile-evaluation-inspection-7USY75Z4.js +0 -3
  489. package/dist/chunks/hosted-profile-evaluation-preparation-2LSMZQNA.js +0 -3
  490. package/dist/chunks/hosted-tasksets-WGXGXJ7E.js +0 -2
  491. package/dist/chunks/human-review-M26UKGJL.js +0 -2
  492. package/dist/chunks/learning-HM3NWOV5.js +0 -2
  493. package/dist/chunks/local-harness-improvement-runtime-QGWFWNSR.js +0 -2
  494. package/dist/chunks/local-harness-taskset-review-KS4WPMN6.js +0 -2
  495. package/dist/chunks/local-scope-62GWHDXS.js +0 -2
  496. package/dist/chunks/model-projects-YUAMBQTO.js +0 -2
  497. package/dist/chunks/opchat-AG4CWVY4.js +0 -3
  498. package/dist/chunks/opchat-bounded-chat-IQMP5IIO.js +0 -2
  499. package/dist/chunks/organizations-KDKX77XZ.js +0 -2
  500. package/dist/chunks/profile-training-source-3DXFM2XI.js +0 -2
  501. package/dist/chunks/project-action-payload-QA24HYGF.js +0 -2
  502. package/dist/chunks/project-agent-XBOOM5TS.js +0 -2
  503. package/dist/chunks/published-experiment-source-GZGN354O.js +0 -2
  504. package/dist/chunks/refiner-profile-service-BJMOYKTC.js +0 -2
  505. package/dist/chunks/sandbox-command-5ECGS7DG.js +0 -2
  506. package/dist/chunks/saved-work-KUNVTJ7O.js +0 -2
  507. package/dist/chunks/send-turn-FIPWOXWV.js +0 -2
  508. package/dist/chunks/standalone-experiment-turn-owner-XIE46VNH.js +0 -2
  509. package/dist/chunks/store-chat-resources-YOEJ2BI6.js +0 -2
  510. package/dist/chunks/store-conversation-serving-K324SQTO.js +0 -2
  511. package/dist/chunks/store-evaluation-results-LHCCNNE6.js +0 -7
  512. package/dist/chunks/store-harness-workspaces-ZHNCNWVI.js +0 -2
  513. package/dist/chunks/store-human-review-QJY3ZPPF.js +0 -7
  514. package/dist/chunks/store-learned-preference-migration-validation-X32SRBOM.js +0 -2
  515. package/dist/chunks/store-learning-DW3QLQXU.js +0 -2
  516. package/dist/chunks/store-learning-credentials-67QNTPA7.js +0 -2
  517. package/dist/chunks/store-model-batch-review-PBYQZJJJ.js +0 -2
  518. package/dist/chunks/store-model-project-preparation-TFCG2F2F.js +0 -2
  519. package/dist/chunks/store-taskset-drafts-GXABQR5G.js +0 -9
  520. package/dist/chunks/taskset-ARKJQKYQ.js +0 -2
  521. package/dist/chunks/taskset-packages-X4K65DTW.js +0 -2
  522. package/dist/chunks/taskset-packages-XK7FSD45.js +0 -2
  523. package/dist/chunks/training-3IWW4256.js +0 -2
  524. package/dist/chunks/training-RVIESURJ.js +0 -2
  525. package/dist/chunks/training-error-2EWDOQ4G.js +0 -2
  526. package/dist/chunks/training-hosted-PFJHYTEU.js +0 -2
  527. package/dist/chunks/training-hosted-checkpoint-evaluation-JJPP7KFW.js +0 -2
  528. package/dist/chunks/training-hosted-learning-Y7NHRY4V.js +0 -2
  529. package/dist/chunks/training-hosted-serving-QAV7ZGGV.js +0 -2
  530. package/dist/chunks/training-hosted-serving-report-OX4A5OKB.js +0 -2
  531. package/dist/chunks/training-hosted-workers-LST4ZUXN.js +0 -2
  532. package/dist/chunks/training-model-start-ROLS3E4V.js +0 -2
  533. package/dist/chunks/web-search-7FBUBZ66.js +0 -2
  534. package/dist/chunks/workspaces-G3CMY7ZA.js +0 -2
  535. package/dist/web/assets/App-DY2R8Z6r.js +0 -53
  536. package/dist/web/assets/AppTerminalPanel-YcnBD5DF.js +0 -2
  537. package/dist/web/assets/ChatTimelineEntry-DC93wlDa.js +0 -8
  538. package/dist/web/assets/LabsRoute-BV7ZJGEw.js +0 -101
  539. package/dist/web/assets/MainChatThread-pzHKd_YN.js +0 -2
  540. package/dist/web/assets/MainPane-6OlLiKKb.js +0 -10
  541. package/dist/web/assets/NativeSetupTerminal-CPDChcMi.js +0 -2
  542. package/dist/web/assets/RightChatPanelStack-BsxJg9sy.js +0 -1
  543. package/dist/web/assets/RightSidebarHomePanel-CCVQ9LMB.js +0 -1
  544. package/dist/web/assets/UsageSettingsSection-FhYymrfc.js +0 -7
  545. package/dist/web/assets/WorkSidebarPanel-u87uptH0.js +0 -1
  546. package/dist/web/assets/WorkspaceDiffPanel-B5rlW7bA.js +0 -11
  547. package/dist/web/assets/app-models-CUA9XB9U.js +0 -1
  548. package/dist/web/assets/chat-resources-CI8KFVO5.js +0 -1
  549. package/dist/web/assets/chevron-right-BYmDQ7ti.js +0 -1
  550. package/dist/web/assets/chunk-ONGOAEY6-C__DQmRT.js +0 -9
  551. package/dist/web/assets/chunk-SQBYHWZU-DumrB9SB.js +0 -1
  552. package/dist/web/assets/icons-D7jkCa2d.js +0 -1
  553. package/dist/web/assets/loader-circle-CPaJeTDy.js +0 -1
  554. package/dist/web/assets/models-route-Bl_TmMl6.js +0 -1
  555. package/dist/web/assets/play-D_SuGDBM.js +0 -1
  556. package/dist/web/assets/plus-yw95Iaj8.js +0 -1
  557. package/dist/web/assets/settings-lists-DMKA1lCN.js +0 -5
  558. package/dist/web/assets/square-BY5lG2Ol.js +0 -1
  559. package/dist/web/assets/x-Dqpel42h.js +0 -1
  560. /package/dist/chunks/{chunk-IDOGNIMV.js → chunk-7J2NMUTK.js} +0 -0
  561. /package/dist/chunks/{chunk-PCB65K4G.js → chunk-SFR32TMJ.js} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{d as n,f as l}from"./chunk-OE22TAXP.js";import{A as e}from"./chunk-PF56N7ZY.js";import{a as c}from"./chunk-FTQLQJQV.js";var u=e.enum(["active","preview","planned","deprecated"]),y=e.enum(["openpond-account","openpond-managed","codex-login","native-agent-login","chatgpt-subscription","local-byok","hosted-byok","custom"]),L=e.enum(["none","local_secret","env","openpond_account","codex_login","native_agent_login","chatgpt_subscription","hosted"]),v=e.object({connected:e.boolean().default(!1),source:L.default("none"),redacted:e.string().nullable().default(null),lastValidatedAt:e.string().nullable().default(null),lastError:e.string().nullable().default(null)}),m=e.object({hostedOpChat:e.boolean().default(!1),localRuntime:e.boolean().default(!0),localByok:e.boolean().default(!1),hostedByok:e.boolean().default(!1)}),O=e.enum(["hosted","provider","manual","none"]),p=e.object({chatCompletions:e.boolean().default(!0),streaming:e.boolean().default(!0),modelDiscovery:O.default("none"),toolCalling:e.boolean().default(!1),reasoning:e.boolean().default(!1),imageInput:e.boolean().default(!1),structuredOutput:e.boolean().default(!1)}),N=e.enum(["hosted","provider","curated","manual","cache"]),f=e.object({streaming:e.boolean().default(!0),toolCalling:e.boolean().default(!1),reasoning:e.boolean().default(!1),reasoningEfforts:e.array(e.enum(["off","low","medium","high","xhigh","max"])).default([]),vision:e.boolean().default(!1),structuredOutput:e.boolean().default(!1)}),U=e.object({id:e.string().trim().min(1).max(300),providerId:n,displayName:e.string().trim().min(1).max(300),contextWindow:e.number().int().positive().nullable().default(null),outputLimit:e.number().int().positive().nullable().default(null),lifecycleStatus:u.default("active"),source:N,capabilities:f.default(()=>f.parse({})),raw:e.record(e.string(),e.unknown()).optional()}),z=e.object({providerId:n,models:e.array(U).default([]),fetchedAt:e.string().nullable().default(null),lastError:e.string().nullable().default(null),source:e.enum(["none","hosted","provider","curated","manual"]).default("none")}),P=e.object({displayName:e.string().trim().min(1).max(160),command:e.string().trim().min(1).max(4096),args:e.array(e.string().max(4096)).max(100).default([]),env:e.record(e.string().regex(/^[A-Za-z_][A-Za-z0-9_]*$/),e.string().max(2e4)).default({}),registryId:e.string().max(160).nullable().default(null),version:e.string().max(200).nullable().default(null),installUrl:e.string().url().nullable().default(null),authMethodId:e.string().max(200).nullable().default(null)}),F=e.object({acp:P.nullable().default(null),nativeMode:e.string().max(200).nullable().default(null),nativeOptions:e.record(e.string().max(200),e.string().max(300)).default({}),binaryPath:e.string().trim().min(1).max(4096).nullable().default(null),sourceHome:e.string().trim().min(1).max(4096).nullable().default(null),enabled:e.boolean().default(!1),baseUrl:e.string().trim().min(1).max(2048).nullable().default(null),defaultModel:e.string().trim().min(1).max(300).nullable().default(null),modelOverrides:e.array(e.string().trim().min(1).max(300)).max(500).default([]),updatedAt:e.string().nullable().default(null)}),W=e.object({acp:P.nullable().optional(),nativeMode:e.string().max(200).nullable().optional(),nativeOptions:e.record(e.string().max(200),e.string().max(300)).optional(),binaryPath:e.string().trim().min(1).max(4096).nullable().optional(),sourceHome:e.string().trim().min(1).max(4096).nullable().optional(),enabled:e.boolean().optional(),baseUrl:e.string().trim().min(1).max(2048).nullable().optional(),defaultModel:e.string().trim().min(1).max(300).nullable().optional(),modelOverrides:e.array(e.string().trim().min(1).max(300)).max(500).optional()}),B=e.object({id:e.string().trim().min(1).max(300),displayName:e.string().trim().min(1).max(300),contextWindow:e.number().int().positive().nullable().optional(),outputLimit:e.number().int().positive().nullable().optional(),lifecycleStatus:u.optional(),capabilities:f.partial().optional()}),q=e.object({id:n,displayName:e.string().trim().min(1).max(160),lifecycleStatus:u.default("active"),credentialModes:e.array(y).default([]),routing:m,capabilities:p,defaultEnabled:e.boolean().optional(),defaultBaseUrl:e.string().trim().min(1).max(2048).nullable().optional(),defaultModel:e.string().trim().min(1).max(300).nullable().optional(),modelCacheSource:e.enum(["none","hosted","provider","curated","manual"]),models:e.array(B).default([])}),Ee=e.object({version:e.literal(1).default(1),generatedAt:e.string().datetime(),providers:e.array(q)}),V=e.object({id:n,displayName:e.string().trim().min(1).max(160),lifecycleStatus:u.default("active"),credentialModes:e.array(y).default([]),routing:m.default(()=>m.parse({})),capabilities:p.default(()=>p.parse({})),credential:v.default(()=>v.parse({})),enabled:e.boolean().default(!1),available:e.boolean().default(!1),defaultModel:e.string().trim().min(1).max(300).nullable().default(null),modelIds:e.array(e.string().trim().min(1).max(300)).max(1e3).default([]),lastError:e.string().nullable().default(null)}),H=e.object({version:e.literal(1).default(1),providers:e.record(e.string(),F).default({}),statuses:e.record(e.string(),V).default({}),modelCaches:e.record(e.string(),z).default({}),updatedAt:e.string().nullable().default(null)}),Me=e.object({providers:e.record(e.string(),W).optional()}),ke=e.object({source:e.enum(["local_secret","env"]).default("local_secret"),value:e.string().min(1).max(2e4).optional(),envVar:e.string().trim().min(1).max(160).optional()}).superRefine((t,r)=>{t.source==="env"&&!t.envVar&&r.addIssue({code:"custom",path:["envVar"],message:"envVar is required when provider credential source is env."}),t.source==="local_secret"&&!t.value&&r.addIssue({code:"custom",path:["value"],message:"value is required when provider credential source is local_secret."})}),je=e.object({source:e.enum(["local_secret","env","chatgpt_subscription"]).optional()}),we=e.object({modelId:e.string().trim().min(1).max(300).optional(),baseUrl:e.string().trim().min(1).max(2048).optional()}),Te=e.object({query:e.string().trim().max(200).optional(),refresh:e.boolean().default(!1),limit:e.number().int().positive().max(500).default(100)}),De=e.object({query:e.string().trim().max(200).optional(),force:e.boolean().default(!1)});var G=["coding","research","review","test","docs","planner","summarizer"],ze=e.enum(G),g=e.string().trim().min(1).max(80).regex(/^[a-z][a-z0-9_-]*$/),_=e.enum(["none","worktree","copy_on_write"]),R=e.enum(["read_only","workspace_write","full_tools"]),A=e.enum(["disabled","parent_scoped"]),Y=e.enum(["manual","balanced","proactive"]),Z=e.enum(["queued","running","completed","failed","cancelled","needs_resume"]),X=["subagent.started","subagent.reported","subagent.completed","subagent.progress","subagent.failed","subagent.cancelled","subagent.cleanup","subagent.workspace_retained","subagent.workspace_retention_expiring","subagent.archived","subagent.message"],Fe=e.enum(X),K=[{id:"coding",label:"Coding",description:"Make scoped code changes and return patch, diff, and test evidence.",defaultToolPolicy:"full_tools"},{id:"research",label:"Research",description:"Inspect docs, code, web or repo context and return cited findings.",defaultToolPolicy:"full_tools"},{id:"review",label:"Review",description:"Inspect diffs or implementation plans and return ranked findings.",defaultToolPolicy:"full_tools"},{id:"test",label:"Test",description:"Run or design validation in isolation and return command evidence.",defaultToolPolicy:"full_tools"},{id:"docs",label:"Docs",description:"Update or draft project documentation in an isolated target.",defaultToolPolicy:"full_tools"},{id:"planner",label:"Planner",description:"Decompose a goal into child assignments and context packs.",defaultToolPolicy:"full_tools"},{id:"summarizer",label:"Summarizer",description:"Compact transcripts, child results, and goal state for parent context.",defaultToolPolicy:"full_tools"}],b=e.object({id:g,enabled:e.boolean().default(!0),modelRef:l.nullable().default(null),isolationMode:_.default("none"),maxConcurrentRuns:e.number().int().min(1).max(16).default(1),toolPolicy:R.default("read_only"),background:e.boolean().default(!0),peerMessages:A.default("parent_scoped")}),x=e.object({enabled:e.boolean().default(!0),workspaceDefaultsVersion:e.literal(1).default(1),toolDefaultsVersion:e.literal(1).default(1),delegationMode:Y.default("manual"),defaultModelRef:l.nullable().default(null),roles:e.array(b).max(64).default(()=>I()),maxConcurrentRuns:e.number().int().min(1).max(32).default(4),maxConcurrentRunsPerProvider:e.number().int().min(1).max(32).nullable().default(2),maxConcurrentRunsPerWorkspaceTarget:e.number().int().min(1).max(32).nullable().default(1)}).transform(t=>({...t,roles:re(t.roles)})),i=e.object({kind:e.enum(["session","turn","file","diff","artifact"]),id:e.string().trim().min(1).max(500),label:e.string().trim().min(1).max(500)}),$=e.object({kind:e.enum(["retain_with_parent"]).default("retain_with_parent"),messageRetentionDays:e.number().int().min(1).max(3650).nullable().default(null),artifactRetentionDays:e.number().int().min(1).max(3650).nullable().default(null),cleanupAfterExpiry:e.boolean().default(!1)}).default(()=>({kind:"retain_with_parent",messageRetentionDays:null,artifactRetentionDays:null,cleanupAfterExpiry:!1})),Q=e.enum(["orient","edit","validate","report"]),J=e.object({command:e.string().trim().min(1).max(2e3),status:e.enum(["passed","failed","unknown"]).default("unknown"),exitCode:e.number().int().nullable().default(null),outputSummary:e.string().trim().max(5e3).nullable().default(null),startedAt:e.string().nullable().default(null),completedAt:e.string().nullable().default(null)}),ee=e.object({phase:Q.default("orient"),inspectedFiles:e.array(e.string().trim().min(1).max(1e3)).max(500).default([]),inspectedResources:e.array(e.string().trim().min(1).max(1e3)).max(500).default([]),repeatedSearches:e.array(e.string().trim().min(1).max(1e3)).max(200).default([]),repeatedReads:e.array(e.string().trim().min(1).max(1e3)).max(200).default([]),repeatedCommands:e.array(e.string().trim().min(1).max(1e3)).max(200).default([]),changedFiles:e.array(e.string().trim().min(1).max(1e3)).max(500).default([]),patchRefs:e.array(i).max(100).default([]),validationAttempts:e.array(J).max(100).default([]),latestMeaningfulActivity:e.string().trim().max(5e3).nullable().default(null),currentBlocker:e.string().trim().max(5e3).nullable().default(null),updatedAt:e.string().nullable().default(null)}).default(()=>({phase:"orient",inspectedFiles:[],inspectedResources:[],repeatedSearches:[],repeatedReads:[],repeatedCommands:[],changedFiles:[],patchRefs:[],validationAttempts:[],latestMeaningfulActivity:null,currentBlocker:null,updatedAt:null})),te=e.object({summary:e.string().trim().max(2e4).default(""),findings:e.array(e.string().trim().min(1).max(5e3)).max(200).default([]),artifacts:e.array(i).max(200).default([]),patchRef:i.nullable().default(null),diffRef:i.nullable().default(null),testsRun:e.array(e.string().trim().min(1).max(2e3)).max(100).default([]),blockers:e.array(e.string().trim().min(1).max(5e3)).max(100).default([]),confidence:e.enum(["low","medium","high"]).nullable().default(null),followUpNeeded:e.boolean().default(!1)}),ae=e.object({id:e.string().trim().min(1).max(200),parentSessionId:e.string().trim().min(1).max(200),parentTurnId:e.string().trim().min(1).max(200).nullable().default(null),childSessionId:e.string().trim().min(1).max(200).nullable().default(null),roleId:g,objective:e.string().trim().min(1).max(5e4),modelRef:l.nullable().default(null),isolationMode:_.default("none"),toolPolicy:R.default("read_only"),background:e.boolean().default(!0),peerMessages:A.default("parent_scoped"),status:Z.default("queued"),progress:ee,evidenceRetention:$,createdAt:e.string(),startedAt:e.string().nullable().default(null),completedAt:e.string().nullable().default(null),updatedAt:e.string().nullable().default(null),error:e.string().nullable().default(null),report:te.nullable().default(null),metadata:e.record(e.string(),e.unknown()).optional().default({})}),C=e.enum(["cleanup","archive","cleanup_and_archive"]),We=e.object({action:C,reason:e.string().trim().min(1).max(2e3).nullable().default(null)}),Be=e.object({action:C,run:ae,workspaceCleanup:e.record(e.string(),e.unknown()).nullable().default(null),sessionArchive:e.record(e.string(),e.unknown()).nullable().default(null),nextStep:e.string()}),ne=e.enum(["question","answer","handoff","artifact","status","blocker"]),le=e.enum(["normal","interrupt"]),oe=e.object({inputIds:e.array(e.string()).default([]),status:e.enum(["pending","delivered","undelivered"]).default("pending"),deliveredRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),acknowledgedRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),deliveredParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),acknowledgedParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),wakeRequestedParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),wakeQueuedParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),wakeDeferredParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),wakeParentReason:e.string().trim().min(1).max(1e3).nullable().default(null),wakeRequestedRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),wakeInterruptedRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),wakeDeferredRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),reason:e.string().trim().min(1).max(1e3).nullable().default(null)}),qe=e.object({id:e.string().trim().min(1).max(200),fromRunId:e.string().trim().min(1).max(200),toRunId:e.string().trim().min(1).max(200).nullable().default(null),toRole:g.nullable().default(null),kind:ne,priority:le.optional(),body:e.string().trim().min(1).max(5e4),refs:e.array(i).max(100).default([]),delivery:oe.optional(),createdAt:e.string()});function I(){return K.map(t=>b.parse({id:t.id,toolPolicy:t.defaultToolPolicy}))}c(I,"defaultSubagentRoleSettings");function re(t){let r=I(),d=new Map(r.map(o=>[o.id,o])),S=[];for(let o of t??[]){let s=b.parse(o);d.has(s.id)?d.set(s.id,s):S.push(s)}return[...r.map(o=>d.get(o.id)??o),...S]}c(re,"normalizeSubagentRoleSettings");var Xe="gpt-5.6-sol",j="openpond-chat",Ke=j,ie="openpond",se=j,ue="default",de="high",ce="ask",w=n,me=e.enum(["default","auto-review","full-access"]),pe=e.enum(["ask","full-access","disabled"]),fe=e.enum(["off","low","medium","high","xhigh","max"]),$e=e.enum(["sandbox_app","local_project","sandbox","sandbox_template"]),Qe=e.enum(["openpond"]),ge=e.enum(["provider_usage","provider_tokenizer","model_family","heuristic"]),Je=e.object({provider:w,model:e.string().min(1),usedTokens:e.number().int().nonnegative(),maxContextTokens:e.number().int().positive(),usableContextTokens:e.number().int().positive(),percentFull:e.number().min(0).max(100),source:ge,updatedAtEventId:e.string().nullable()}),E=e.object({pinned:e.boolean().default(!1),projects:e.boolean().default(!1),cloudProjects:e.boolean().default(!1),chats:e.boolean().default(!1),savedForLater:e.boolean().default(!0)}),be=e.enum(["auto","off"]),xe=e.enum(["typescript","python","rust"]),T=e.enum(["auto","disabled","custom"]),a=e.object({mode:T.default("auto"),customCommand:e.string().trim().max(4096).default("")}),h=e.object({languageServers:be.default("auto"),diagnosticsWhileEditing:e.boolean().default(!0),checkOnSave:e.boolean().default(!0),languages:e.object({typescript:a.optional().default(()=>a.parse({})),python:a.optional().default(()=>a.parse({})),rust:a.optional().default(()=>a.parse({}))}).optional().default(()=>({typescript:a.parse({}),python:a.parse({}),rust:a.parse({})}))}),he=e.object({language:xe,label:e.string(),mode:T,status:e.enum(["found","missing","disabled","error"]),command:e.string().nullable(),message:e.string().nullable()}),et=e.object({settings:h,languages:e.array(he),updatedAt:e.string()}),Se=e.object({id:e.string(),root:e.string(),status:e.enum(["starting","connected","unavailable","error"]),message:e.string().nullable().optional().default(null),openedDocuments:e.number().int().nonnegative(),pendingRequests:e.number().int().nonnegative(),lastUsedAt:e.string(),stderrTail:e.string()}),tt=e.object({clients:e.array(Se),maxClients:e.number().int().positive(),idleTimeoutMs:e.number().int().positive(),updatedAt:e.string()}),M=e.object({autoEnabled:e.boolean().default(!0),triggerPercent:e.number().int().min(50).max(95).default(85),summaryModel:e.enum(["same_model"]).default("same_model")}),k=e.object({defaultModelRef:l.nullable().default(null),creationMode:e.enum(["defaults","customize"]).default("customize"),autoApproveEvidence:e.boolean().default(!1)}),at=e.object({defaultChatProvider:w.default(ie),defaultChatModel:e.string().min(1).default(se),defaultChatModelRef:l.nullable().optional(),subagents:x.optional().default(()=>x.parse({})),codexPermissionMode:me.default(ue),codexReasoningEffort:fe.default(de),openPondCommandAccessMode:pe.default(ce),defaultBranchPrefix:e.string().trim().max(48).default("feat/"),defaultNewProjectDirectory:e.string().trim().max(4096).default(""),defaultTeamId:e.string().trim().max(191).nullable().default(null),advancedWorkspaceControls:e.boolean().default(!1),steerActiveResponses:e.boolean().default(!0),contextCompaction:M.optional().default(()=>M.parse({})),training:k.optional().default(()=>k.parse({})),sidebarWidth:e.number().int().min(244).max(560).default(332),diffPanelWidth:e.number().int().min(320).max(2400).default(560),sidebarSectionsCollapsed:E.optional().default(()=>E.parse({})),editor:h.optional().default(()=>h.parse({}))});var ve="default",ye=[{id:"default",name:"Balanced",source:"built_in",description:"Clear, useful, and concise.",content:`You are OpenPond Chat, a clear and useful AI assistant.
2
+ import{d as n,f as l}from"./chunk-HNQPEOJD.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as c}from"./chunk-FTQLQJQV.js";var u=e.enum(["active","preview","planned","deprecated"]),y=e.enum(["openpond-account","openpond-managed","codex-login","native-agent-login","chatgpt-subscription","local-byok","hosted-byok","custom"]),L=e.enum(["none","local_secret","env","openpond_account","codex_login","native_agent_login","chatgpt_subscription","hosted"]),v=e.object({connected:e.boolean().default(!1),source:L.default("none"),redacted:e.string().nullable().default(null),lastValidatedAt:e.string().nullable().default(null),lastError:e.string().nullable().default(null)}),m=e.object({hostedOpChat:e.boolean().default(!1),localRuntime:e.boolean().default(!0),localByok:e.boolean().default(!1),hostedByok:e.boolean().default(!1)}),O=e.enum(["hosted","provider","manual","none"]),p=e.object({chatCompletions:e.boolean().default(!0),streaming:e.boolean().default(!0),modelDiscovery:O.default("none"),toolCalling:e.boolean().default(!1),reasoning:e.boolean().default(!1),imageInput:e.boolean().default(!1),structuredOutput:e.boolean().default(!1)}),N=e.enum(["hosted","provider","curated","manual","cache"]),f=e.object({streaming:e.boolean().default(!0),toolCalling:e.boolean().default(!1),reasoning:e.boolean().default(!1),reasoningEfforts:e.array(e.enum(["off","low","medium","high","xhigh","max"])).default([]),vision:e.boolean().default(!1),structuredOutput:e.boolean().default(!1)}),U=e.object({id:e.string().trim().min(1).max(300),providerId:n,displayName:e.string().trim().min(1).max(300),contextWindow:e.number().int().positive().nullable().default(null),outputLimit:e.number().int().positive().nullable().default(null),lifecycleStatus:u.default("active"),source:N,capabilities:f.default(()=>f.parse({})),raw:e.record(e.string(),e.unknown()).optional()}),z=e.object({providerId:n,models:e.array(U).default([]),fetchedAt:e.string().nullable().default(null),lastError:e.string().nullable().default(null),source:e.enum(["none","hosted","provider","curated","manual"]).default("none")}),P=e.object({displayName:e.string().trim().min(1).max(160),command:e.string().trim().min(1).max(4096),args:e.array(e.string().max(4096)).max(100).default([]),env:e.record(e.string().regex(/^[A-Za-z_][A-Za-z0-9_]*$/),e.string().max(2e4)).default({}),registryId:e.string().max(160).nullable().default(null),version:e.string().max(200).nullable().default(null),installUrl:e.string().url().nullable().default(null),authMethodId:e.string().max(200).nullable().default(null)}),F=e.object({acp:P.nullable().default(null),nativeMode:e.string().max(200).nullable().default(null),nativeOptions:e.record(e.string().max(200),e.string().max(300)).default({}),binaryPath:e.string().trim().min(1).max(4096).nullable().default(null),sourceHome:e.string().trim().min(1).max(4096).nullable().default(null),enabled:e.boolean().default(!1),baseUrl:e.string().trim().min(1).max(2048).nullable().default(null),defaultModel:e.string().trim().min(1).max(300).nullable().default(null),modelOverrides:e.array(e.string().trim().min(1).max(300)).max(500).default([]),updatedAt:e.string().nullable().default(null)}),W=e.object({acp:P.nullable().optional(),nativeMode:e.string().max(200).nullable().optional(),nativeOptions:e.record(e.string().max(200),e.string().max(300)).optional(),binaryPath:e.string().trim().min(1).max(4096).nullable().optional(),sourceHome:e.string().trim().min(1).max(4096).nullable().optional(),enabled:e.boolean().optional(),baseUrl:e.string().trim().min(1).max(2048).nullable().optional(),defaultModel:e.string().trim().min(1).max(300).nullable().optional(),modelOverrides:e.array(e.string().trim().min(1).max(300)).max(500).optional()}),B=e.object({id:e.string().trim().min(1).max(300),displayName:e.string().trim().min(1).max(300),contextWindow:e.number().int().positive().nullable().optional(),outputLimit:e.number().int().positive().nullable().optional(),lifecycleStatus:u.optional(),capabilities:f.partial().optional()}),q=e.object({id:n,displayName:e.string().trim().min(1).max(160),lifecycleStatus:u.default("active"),credentialModes:e.array(y).default([]),routing:m,capabilities:p,defaultEnabled:e.boolean().optional(),defaultBaseUrl:e.string().trim().min(1).max(2048).nullable().optional(),defaultModel:e.string().trim().min(1).max(300).nullable().optional(),modelCacheSource:e.enum(["none","hosted","provider","curated","manual"]),models:e.array(B).default([])}),Ee=e.object({version:e.literal(1).default(1),generatedAt:e.string().datetime(),providers:e.array(q)}),V=e.object({id:n,displayName:e.string().trim().min(1).max(160),lifecycleStatus:u.default("active"),credentialModes:e.array(y).default([]),routing:m.default(()=>m.parse({})),capabilities:p.default(()=>p.parse({})),credential:v.default(()=>v.parse({})),enabled:e.boolean().default(!1),available:e.boolean().default(!1),defaultModel:e.string().trim().min(1).max(300).nullable().default(null),modelIds:e.array(e.string().trim().min(1).max(300)).max(1e3).default([]),lastError:e.string().nullable().default(null)}),H=e.object({version:e.literal(1).default(1),providers:e.record(e.string(),F).default({}),statuses:e.record(e.string(),V).default({}),modelCaches:e.record(e.string(),z).default({}),updatedAt:e.string().nullable().default(null)}),Me=e.object({providers:e.record(e.string(),W).optional()}),ke=e.object({source:e.enum(["local_secret","env"]).default("local_secret"),value:e.string().min(1).max(2e4).optional(),envVar:e.string().trim().min(1).max(160).optional()}).superRefine((t,r)=>{t.source==="env"&&!t.envVar&&r.addIssue({code:"custom",path:["envVar"],message:"envVar is required when provider credential source is env."}),t.source==="local_secret"&&!t.value&&r.addIssue({code:"custom",path:["value"],message:"value is required when provider credential source is local_secret."})}),je=e.object({source:e.enum(["local_secret","env","chatgpt_subscription"]).optional()}),we=e.object({modelId:e.string().trim().min(1).max(300).optional(),baseUrl:e.string().trim().min(1).max(2048).optional()}),Te=e.object({query:e.string().trim().max(200).optional(),refresh:e.boolean().default(!1),limit:e.number().int().positive().max(500).default(100)}),De=e.object({query:e.string().trim().max(200).optional(),force:e.boolean().default(!1)});var G=["coding","research","review","test","docs","planner","summarizer"],ze=e.enum(G),g=e.string().trim().min(1).max(80).regex(/^[a-z][a-z0-9_-]*$/),_=e.enum(["none","worktree","copy_on_write"]),R=e.enum(["read_only","workspace_write","full_tools"]),A=e.enum(["disabled","parent_scoped"]),Y=e.enum(["manual","balanced","proactive"]),Z=e.enum(["queued","running","completed","failed","cancelled","needs_resume"]),X=["subagent.started","subagent.reported","subagent.completed","subagent.progress","subagent.failed","subagent.cancelled","subagent.cleanup","subagent.workspace_retained","subagent.workspace_retention_expiring","subagent.archived","subagent.message"],Fe=e.enum(X),K=[{id:"coding",label:"Coding",description:"Make scoped code changes and return patch, diff, and test evidence.",defaultToolPolicy:"full_tools"},{id:"research",label:"Research",description:"Inspect docs, code, web or repo context and return cited findings.",defaultToolPolicy:"full_tools"},{id:"review",label:"Review",description:"Inspect diffs or implementation plans and return ranked findings.",defaultToolPolicy:"full_tools"},{id:"test",label:"Test",description:"Run or design validation in isolation and return command evidence.",defaultToolPolicy:"full_tools"},{id:"docs",label:"Docs",description:"Update or draft project documentation in an isolated target.",defaultToolPolicy:"full_tools"},{id:"planner",label:"Planner",description:"Decompose a goal into child assignments and context packs.",defaultToolPolicy:"full_tools"},{id:"summarizer",label:"Summarizer",description:"Compact transcripts, child results, and goal state for parent context.",defaultToolPolicy:"full_tools"}],b=e.object({id:g,enabled:e.boolean().default(!0),modelRef:l.nullable().default(null),isolationMode:_.default("none"),maxConcurrentRuns:e.number().int().min(1).max(16).default(1),toolPolicy:R.default("read_only"),background:e.boolean().default(!0),peerMessages:A.default("parent_scoped")}),x=e.object({enabled:e.boolean().default(!0),workspaceDefaultsVersion:e.literal(1).default(1),toolDefaultsVersion:e.literal(1).default(1),delegationMode:Y.default("manual"),defaultModelRef:l.nullable().default(null),roles:e.array(b).max(64).default(()=>I()),maxConcurrentRuns:e.number().int().min(1).max(32).default(4),maxConcurrentRunsPerProvider:e.number().int().min(1).max(32).nullable().default(2),maxConcurrentRunsPerWorkspaceTarget:e.number().int().min(1).max(32).nullable().default(1)}).transform(t=>({...t,roles:re(t.roles)})),i=e.object({kind:e.enum(["session","turn","file","diff","artifact"]),id:e.string().trim().min(1).max(500),label:e.string().trim().min(1).max(500)}),$=e.object({kind:e.enum(["retain_with_parent"]).default("retain_with_parent"),messageRetentionDays:e.number().int().min(1).max(3650).nullable().default(null),artifactRetentionDays:e.number().int().min(1).max(3650).nullable().default(null),cleanupAfterExpiry:e.boolean().default(!1)}).default(()=>({kind:"retain_with_parent",messageRetentionDays:null,artifactRetentionDays:null,cleanupAfterExpiry:!1})),Q=e.enum(["orient","edit","validate","report"]),J=e.object({command:e.string().trim().min(1).max(2e3),status:e.enum(["passed","failed","unknown"]).default("unknown"),exitCode:e.number().int().nullable().default(null),outputSummary:e.string().trim().max(5e3).nullable().default(null),startedAt:e.string().nullable().default(null),completedAt:e.string().nullable().default(null)}),ee=e.object({phase:Q.default("orient"),inspectedFiles:e.array(e.string().trim().min(1).max(1e3)).max(500).default([]),inspectedResources:e.array(e.string().trim().min(1).max(1e3)).max(500).default([]),repeatedSearches:e.array(e.string().trim().min(1).max(1e3)).max(200).default([]),repeatedReads:e.array(e.string().trim().min(1).max(1e3)).max(200).default([]),repeatedCommands:e.array(e.string().trim().min(1).max(1e3)).max(200).default([]),changedFiles:e.array(e.string().trim().min(1).max(1e3)).max(500).default([]),patchRefs:e.array(i).max(100).default([]),validationAttempts:e.array(J).max(100).default([]),latestMeaningfulActivity:e.string().trim().max(5e3).nullable().default(null),currentBlocker:e.string().trim().max(5e3).nullable().default(null),updatedAt:e.string().nullable().default(null)}).default(()=>({phase:"orient",inspectedFiles:[],inspectedResources:[],repeatedSearches:[],repeatedReads:[],repeatedCommands:[],changedFiles:[],patchRefs:[],validationAttempts:[],latestMeaningfulActivity:null,currentBlocker:null,updatedAt:null})),te=e.object({summary:e.string().trim().max(2e4).default(""),findings:e.array(e.string().trim().min(1).max(5e3)).max(200).default([]),artifacts:e.array(i).max(200).default([]),patchRef:i.nullable().default(null),diffRef:i.nullable().default(null),testsRun:e.array(e.string().trim().min(1).max(2e3)).max(100).default([]),blockers:e.array(e.string().trim().min(1).max(5e3)).max(100).default([]),confidence:e.enum(["low","medium","high"]).nullable().default(null),followUpNeeded:e.boolean().default(!1)}),ae=e.object({id:e.string().trim().min(1).max(200),parentSessionId:e.string().trim().min(1).max(200),parentTurnId:e.string().trim().min(1).max(200).nullable().default(null),childSessionId:e.string().trim().min(1).max(200).nullable().default(null),roleId:g,objective:e.string().trim().min(1).max(5e4),modelRef:l.nullable().default(null),isolationMode:_.default("none"),toolPolicy:R.default("read_only"),background:e.boolean().default(!0),peerMessages:A.default("parent_scoped"),status:Z.default("queued"),progress:ee,evidenceRetention:$,createdAt:e.string(),startedAt:e.string().nullable().default(null),completedAt:e.string().nullable().default(null),updatedAt:e.string().nullable().default(null),error:e.string().nullable().default(null),report:te.nullable().default(null),metadata:e.record(e.string(),e.unknown()).optional().default({})}),C=e.enum(["cleanup","archive","cleanup_and_archive"]),We=e.object({action:C,reason:e.string().trim().min(1).max(2e3).nullable().default(null)}),Be=e.object({action:C,run:ae,workspaceCleanup:e.record(e.string(),e.unknown()).nullable().default(null),sessionArchive:e.record(e.string(),e.unknown()).nullable().default(null),nextStep:e.string()}),ne=e.enum(["question","answer","handoff","artifact","status","blocker"]),le=e.enum(["normal","interrupt"]),oe=e.object({inputIds:e.array(e.string()).default([]),status:e.enum(["pending","delivered","undelivered"]).default("pending"),deliveredRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),acknowledgedRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),deliveredParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),acknowledgedParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),wakeRequestedParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),wakeQueuedParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),wakeDeferredParentSessionId:e.string().trim().min(1).max(200).nullable().default(null),wakeParentReason:e.string().trim().min(1).max(1e3).nullable().default(null),wakeRequestedRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),wakeInterruptedRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),wakeDeferredRunIds:e.array(e.string().trim().min(1).max(200)).max(200).default([]),reason:e.string().trim().min(1).max(1e3).nullable().default(null)}),qe=e.object({id:e.string().trim().min(1).max(200),fromRunId:e.string().trim().min(1).max(200),toRunId:e.string().trim().min(1).max(200).nullable().default(null),toRole:g.nullable().default(null),kind:ne,priority:le.optional(),body:e.string().trim().min(1).max(5e4),refs:e.array(i).max(100).default([]),delivery:oe.optional(),createdAt:e.string()});function I(){return K.map(t=>b.parse({id:t.id,toolPolicy:t.defaultToolPolicy}))}c(I,"defaultSubagentRoleSettings");function re(t){let r=I(),d=new Map(r.map(o=>[o.id,o])),S=[];for(let o of t??[]){let s=b.parse(o);d.has(s.id)?d.set(s.id,s):S.push(s)}return[...r.map(o=>d.get(o.id)??o),...S]}c(re,"normalizeSubagentRoleSettings");var Xe="gpt-5.6-sol",j="openpond-chat",Ke=j,ie="openpond",se=j,ue="default",de="high",ce="ask",w=n,me=e.enum(["default","auto-review","full-access"]),pe=e.enum(["ask","full-access","disabled"]),fe=e.enum(["off","low","medium","high","xhigh","max"]),$e=e.enum(["sandbox_app","local_project","sandbox","sandbox_template"]),Qe=e.enum(["openpond"]),ge=e.enum(["provider_usage","provider_tokenizer","model_family","heuristic"]),Je=e.object({provider:w,model:e.string().min(1),usedTokens:e.number().int().nonnegative(),maxContextTokens:e.number().int().positive(),usableContextTokens:e.number().int().positive(),percentFull:e.number().min(0).max(100),source:ge,updatedAtEventId:e.string().nullable()}),E=e.object({pinned:e.boolean().default(!1),projects:e.boolean().default(!1),cloudProjects:e.boolean().default(!1),chats:e.boolean().default(!1),savedForLater:e.boolean().default(!0)}),be=e.enum(["auto","off"]),xe=e.enum(["typescript","python","rust"]),T=e.enum(["auto","disabled","custom"]),a=e.object({mode:T.default("auto"),customCommand:e.string().trim().max(4096).default("")}),h=e.object({languageServers:be.default("auto"),diagnosticsWhileEditing:e.boolean().default(!0),checkOnSave:e.boolean().default(!0),languages:e.object({typescript:a.optional().default(()=>a.parse({})),python:a.optional().default(()=>a.parse({})),rust:a.optional().default(()=>a.parse({}))}).optional().default(()=>({typescript:a.parse({}),python:a.parse({}),rust:a.parse({})}))}),he=e.object({language:xe,label:e.string(),mode:T,status:e.enum(["found","missing","disabled","error"]),command:e.string().nullable(),message:e.string().nullable()}),et=e.object({settings:h,languages:e.array(he),updatedAt:e.string()}),Se=e.object({id:e.string(),root:e.string(),status:e.enum(["starting","connected","unavailable","error"]),message:e.string().nullable().optional().default(null),openedDocuments:e.number().int().nonnegative(),pendingRequests:e.number().int().nonnegative(),lastUsedAt:e.string(),stderrTail:e.string()}),tt=e.object({clients:e.array(Se),maxClients:e.number().int().positive(),idleTimeoutMs:e.number().int().positive(),updatedAt:e.string()}),M=e.object({autoEnabled:e.boolean().default(!0),triggerPercent:e.number().int().min(50).max(95).default(85),summaryModel:e.enum(["same_model"]).default("same_model")}),k=e.object({defaultModelRef:l.nullable().default(null),creationMode:e.enum(["defaults","customize"]).default("customize"),autoApproveEvidence:e.boolean().default(!1)}),at=e.object({defaultChatProvider:w.default(ie),defaultChatModel:e.string().min(1).default(se),defaultChatModelRef:l.nullable().optional(),subagents:x.optional().default(()=>x.parse({})),codexPermissionMode:me.default(ue),codexReasoningEffort:fe.default(de),openPondCommandAccessMode:pe.default(ce),defaultBranchPrefix:e.string().trim().max(48).default("feat/"),defaultNewProjectDirectory:e.string().trim().max(4096).default(""),defaultTeamId:e.string().trim().max(191).nullable().default(null),advancedWorkspaceControls:e.boolean().default(!1),steerActiveResponses:e.boolean().default(!0),contextCompaction:M.optional().default(()=>M.parse({})),training:k.optional().default(()=>k.parse({})),sidebarWidth:e.number().int().min(244).max(560).default(332),diffPanelWidth:e.number().int().min(320).max(2400).default(560),sidebarSectionsCollapsed:E.optional().default(()=>E.parse({})),editor:h.optional().default(()=>h.parse({}))});var ve="default",ye=[{id:"default",name:"Balanced",source:"built_in",description:"Clear, useful, and concise.",content:`You are OpenPond Chat, a clear and useful AI assistant.
3
3
  Be concise, accurate, and direct.
4
4
  Do not use emojis.
5
5
  Ask only when missing information would materially change the answer.
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as me,b as D,c as G,d as j,e as z,g as ye,i as T,j as we,k as S,l as he,v as B,x as F}from"./chunk-GPL2Z65R.js";import{a as re,b as L,c as R}from"./chunk-SXMR6E2W.js";import{a as Z,b as ee,c as te}from"./chunk-XRKFTPHD.js";import{b as H,c as be,d as ve,f as w,h as P,i as Re}from"./chunk-BSHAIAXY.js";import{a as M,f as v,k as X}from"./chunk-3M53YXEI.js";import{M as pe,N as ue,R as ge,V as fe,h as $,i as ie,l as ae,n as se,o as ce,p as le,q as de}from"./chunk-MILEWROZ.js";import{d as y,e as ne,f as oe,g as C}from"./chunk-UTNGEMW5.js";import{a as g}from"./chunk-FTQLQJQV.js";import{promises as V,existsSync as W}from"node:fs";import U from"node:path";import{stdin as $e}from"node:process";async function Ge(e,o){let t=await y(),r=w(t),n=P(t),i=await R(t,r),{app:a}=await T(n,i,o),s=await ce(n,i,a.id);console.log(JSON.stringify(s,null,2))}g(Ge,"runTemplateStatus");async function je(e,o){let t=await y(),r=w(t),n=P(t),i=await R(t,r),{app:a}=await T(n,i,o),s=await le(n,i,a.id);console.log(JSON.stringify(s,null,2))}g(je,"runTemplateBranches");async function ze(e,o){let t=await y(),r=w(t),n=P(t),i=await R(t,r),{app:a}=await T(n,i,o),s=typeof e.env=="string"?e.env:typeof e.environment=="string"?e.environment:void 0,f=X(s),c=await de(n,i,a.id,{environment:f});console.log(JSON.stringify(c,null,2))}g(ze,"runTemplateUpdate");async function He(e){let o=await y(),t=w(o),r=typeof e.apiKey=="string"?e.apiKey:typeof e.key=="string"?e.key:null,n=r?r.trim():await L();if(!n)throw new Error("API key is required");n.startsWith("opk_")||console.log("warning: API keys usually start with opk_."),await C({handle:o.activeProfile?.handle||"default",apiKey:n,baseUrl:t,apiBaseUrl:o.apiBaseUrl,chatApiBaseUrl:o.chatApiBaseUrl,setActive:!0}),console.log("Saved account credentials to the encrypted OpenPond credential store.")}g(He,"runLogin");async function Fe(e,o){let t=o[0]||"list";if(t==="list"){let r=await ne();console.log(JSON.stringify({profiles:r},null,2));return}if(t==="use"){let r=o[1];if(!r)throw new Error("usage: profiles use <name> [--base-url <url>]");let n=await oe(r,{baseUrl:H(e)});console.log(JSON.stringify({profile:n},null,2));return}if(t==="save"){let r=o[1];if(!r)throw new Error("usage: profiles save <name> --api-key <key> [--base-url <url>] [--api-base-url <url>] [--chat-api-base-url <url>]");let n=typeof e.apiKey=="string"?e.apiKey:typeof e.key=="string"?e.key:null,i=n?n.trim():await L(),a=typeof e.environment=="string"?e.environment:typeof e.env=="string"?e.env:void 0,s=await C({handle:r,apiKey:i,baseUrl:H(e),apiBaseUrl:be(e),chatApiBaseUrl:ve(e),environment:a,setActive:!0});console.log(JSON.stringify({profile:s},null,2));return}throw new Error("usage: profiles <list|use|save> [args]")}g(Fe,"runProfiles");async function Ve(){let e=await y(),o=w(e),t=P(e),r=await R(e,o),n=await pe(t,r);console.log(JSON.stringify(n,null,2))}g(Ve,"runAccount");async function We(e){let o=await y(),t=P(o),r=re(o),n=await ue(t,r);console.log(JSON.stringify(n,null,2))}g(We,"runHealth");async function qe(e,o){let t=await y(),r=w(t),n=P(t),i=await R(t,r),{app:a}=await T(n,i,o),s=typeof e.branch=="string"?String(e.branch):void 0,f=await $(n,i,a.id,{branch:s});if(!f?.id){console.log("no deployments found");return}let c=await ie(n,i,f.id),d=(c&&Array.isArray(c.toolsJson)?c.toolsJson:null)||(c&&typeof c.metadataJson=="object"&&c.metadataJson?c.metadataJson.tools:null),u=Array.isArray(d)?d:[];if(u.length===0){console.log("no tools found");return}for(let l of u){let m=l,h=m.profile||m.function,I=m.name||h?.name||"unknown",p=m.description||h?.description||"";console.log(p?`${I} - ${p}`:I)}}g(qe,"runToolList");async function Ye(e,o,t){let r=await y(),n=w(r),i=P(r),a=await R(r,n),{app:s}=await T(i,a,o),f=typeof e.branch=="string"?String(e.branch):void 0,c=await $(i,a,s.id,{branch:f});if(!c?.id)throw new Error("no deployments found");let d;if(typeof e.body=="string")try{d=JSON.parse(e.body)}catch{throw new Error("tool body must be valid JSON")}let u=typeof e.method=="string"?String(e.method).toUpperCase():"POST",l=await fe(n,a,{appId:s.id,deploymentId:c.id,toolName:t,method:u,body:d,headers:a?{"openpond-api-key":a}:void 0});if(!l.ok)throw new Error(l.error||`tool failed (${l.status})`);let m=l.data??{ok:!0};console.log(JSON.stringify(m,null,2))}g(Ye,"runToolRun");async function Qe(e,o,t){let r=await y(),n=w(r),i=P(r),a=await R(r,n),{app:s}=await T(i,a,o),f=typeof e.branch=="string"?String(e.branch):void 0,c=typeof e.deploymentId=="string"?String(e.deploymentId):void 0,d=c?{id:c}:await $(i,a,s.id,{branch:f});if(!d?.id)throw new Error("no deployments found");let u=typeof e.body=="string"?M(String(e.body),"body"):{};if(!u||typeof u!="object"||Array.isArray(u))throw new Error("body must be a JSON object");let l=typeof e.method=="string"?String(e.method).toUpperCase():"POST",m={...u,appId:s.id,deploymentId:d.id,toolName:t,method:l},h=await ge(i,a,m);console.log(JSON.stringify(h,null,2))}g(Qe,"runBacktestRun");async function Xe(e,o){let t=await y(),r=w(t),n=P(t),i=await R(t,r),{app:a,handle:s,repo:f}=await T(n,i,o),c=typeof e.branch=="string"?String(e.branch):void 0,d=typeof e.deploymentId=="string"?String(e.deploymentId):void 0,u=d?{id:d}:await $(n,i,a.id,{branch:c});if(!u?.id){console.log("no deployments found");return}await we({baseUrl:n,apiKey:i,deploymentId:u.id,prefix:`[${s}/${f}] `,intervalMs:e.interval?Number(e.interval):void 0,timeoutMs:e.timeout?Number(e.timeout):void 0})}g(Xe,"runDeployWatch");async function Ze(e,o){let r=((typeof e.name=="string"?e.name:null)||o.join(" ")).trim();if(!r)throw new Error("usage: repo create --name <name> [--team-id <id>] [--path <dir>] [--template <owner/repo|url>] [--template-branch <branch>] [--empty|--opentool] [--sandbox] [--token] [--auto-schedule-migration <true|false>]");let n=await y(),i=w(n),a=await R(n,i),s=P(n),f=typeof e.teamId=="string"&&e.teamId.trim()?e.teamId.trim():void 0,c=typeof e.template=="string"?e.template.trim():"";if(c&&(e.empty==="true"||e.opentool==="true"))throw new Error("choose one: --template or --empty/--opentool");if(e.empty==="true"&&e.opentool==="true")throw new Error("choose one: --empty or --opentool");let d=typeof e.description=="string"?e.description.trim():void 0,u=typeof e.templateBranch=="string"&&e.templateBranch.trim().length>0?e.templateBranch.trim():void 0,l=typeof e.env=="string"?M(e.env,"env"):void 0;if(l){if(typeof l!="object"||Array.isArray(l))throw new Error("env must be a JSON object");for(let[b,A]of Object.entries(l))if(typeof A!="string")throw new Error(`env value for ${b} must be a string`)}if(c){e.deployOnPush!==void 0&&console.warn("deploy-on-push is not used for template create (auto deploys)");let b=Re(c,i),k=(await se(s,a,[{name:r,...d?{description:d}:{},templateRepoUrl:b,...u?{templateBranch:u}:{},...l?{envVars:l}:{}}],f)).items?.[0];if(!k||k.status!=="ok"||!k.appId)throw new Error(k?.error||"Template create failed");console.log(`app_id: ${k.appId}`),k.deploymentId&&console.log(`deployment_id: ${k.deploymentId}`),k.conversationId&&console.log(`conversation_id: ${k.conversationId}`);return}let m=process.cwd(),h=typeof e.path=="string"?e.path:typeof e.dir=="string"?e.dir:null,I=h&&h.trim().length>0?h.trim():$e.isTTY?await he(m):m,p=U.resolve(I);if(W(p)){if(!(await V.stat(p)).isDirectory())throw new Error(`path is not a directory: ${p}`)}else await V.mkdir(p,{recursive:!0});let Pe=(await V.readdir(p)).filter(b=>b!==".git").length===0,x=v(e.yes)||v(e.force);if(!Pe&&!x&&!await S(`Directory is not empty (${p}). Continue?`,!1)){console.log("aborted");return}let ke=U.join(p,".git");if(!W(ke)){if(!(x?!0:await S("Initialize git repository here?",!0))){console.log("aborted");return}let A=await B("git",["init"],{cwd:p});if(A.code!==0)throw new Error(`git init failed: ${A.stderr.trim()||A.stdout.trim()||"unknown error"}`)}let K=await F(p,"origin");if(K&&!x&&!await S(`Remote "origin" already set (${K}). Replace it?`,!1)){console.log("aborted");return}let q=e.opentool==="true"?"opentool":"empty",Te=v(e.sandbox),Be=v(e.deployOnPush),N=e.autoScheduleMigration,Y=typeof N=="string"||typeof N=="boolean",Ee=Y?v(N):void 0,E=await ae(s,a,{name:r,...f?{teamId:f}:{},...d?{description:d}:{},...q?{repoInit:q}:{},...Te?{sandbox:!0}:{},...l?{envVars:l}:{},...Be?{deployOnPush:!0}:{},...Y?{autoScheduleMigration:Ee}:{}}),O=me(E);z(O);let J=v(e.token)||v(e.setRemoteToken),Oe=D(O,a),Q=J?Oe:O,_=await B("git",K?["remote","set-url","origin",Q]:["remote","add","origin",Q],{cwd:p});if(_.code!==0)throw new Error(`git remote failed: ${j(_.stderr.trim()||_.stdout.trim()||"unknown error")}`);let Ae=J?G(O):O;console.log(`app_id: ${E.appId}`),E.gitOwner&&E.gitRepo&&console.log(`repo: ${E.gitOwner}/${E.gitRepo}`),console.log(`remote: ${Ae}`),console.log('next: git add . && git commit -m "init"');let Ie=E.defaultBranch||"master";console.log(`next: openpond repo push --path ${p} --branch ${Ie}`),J||console.log(`token-remote (non-interactive): git -C ${p} remote set-url origin ${G(O)}`);try{await ye({apiBase:s,apiKey:a,forceRefresh:!0})}catch(b){console.warn("cache refresh failed",b)}}g(Ze,"runRepoCreate");async function Se(e){let o=await B("git",["rev-parse","--abbrev-ref","HEAD"],{cwd:e});if(o.code!==0)return null;let t=o.stdout.trim();return t.length>0?t:null}g(Se,"resolveGitBranch");async function et(e){let o=await y(),t=w(o),r=await R(o,t),n=typeof e.path=="string"?e.path:typeof e.dir=="string"?e.dir:null,i=U.resolve(n&&n.trim().length>0?n.trim():"."),a=U.join(i,".git");if(!W(a))throw new Error(`git repo not found at ${i} (missing .git)`);let s=await F(i,"origin");if(!s)throw new Error("origin remote not set; run `openpond repo create` first");z(s);let c=(typeof e.branch=="string"?e.branch.trim():"")||await Se(i);if(!c)throw new Error("unable to resolve git branch; pass --branch");let d;try{d=D(s,r)}catch{throw new Error("origin remote must be https for tokenized pushes")}let u=v(e.keepTokenRemote)||v(e.token)||v(e.setRemoteToken),l=s.includes("x-access-token:"),m=!u&&!l?s:null,h=process.env.GIT_TERMINAL_PROMPT;process.env.GIT_TERMINAL_PROMPT="0";try{if(!l){let p=await B("git",["remote","set-url","origin",d],{cwd:i});if(p.code!==0)throw new Error(`git remote set-url failed: ${j(p.stderr.trim()||p.stdout.trim()||"unknown error")}`)}if((await B("git",["push","-u","origin",c],{cwd:i,inherit:!0})).code!==0)throw new Error("git push failed")}finally{m&&await B("git",["remote","set-url","origin",m],{cwd:i}).catch(()=>null),h===void 0?delete process.env.GIT_TERMINAL_PROMPT:process.env.GIT_TERMINAL_PROMPT=h}}g(et,"runRepoPush");async function tt(e){if(e.length===0)throw new Error("usage: opentool <init|validate|build> [args]");let o=process.platform==="win32"?"npx.cmd":"npx";if((await B(o,["opentool",...e],{inherit:!0})).code!==0)throw new Error("opentool command failed")}g(tt,"runOpentool");async function nt(){let e="openpond",o=Z(),t=await te(e),r=`npm i -g ${e}@${t}`,n=ee(o,t);if(n===0){console.log(`${e} is up to date (${o})`);return}if(n===-1){console.log(`Update available: ${o} -> ${t}`),console.log(`Run: ${r}`);return}if(n===1){console.log(`Installed version (${o}) is newer than npm latest (${t}).`);return}if(o===t){console.log(`${e} is up to date (${o})`);return}console.log(`Installed: ${o}`),console.log(`Latest: ${t}`),console.log(`Run: ${r}`)}g(nt,"runCheckUpdate");export{Ge as a,je as b,ze as c,He as d,Fe as e,Ve as f,We as g,qe as h,Ye as i,Qe as j,Xe as k,Ze as l,Se as m,et as n,tt as o,nt as p};
2
+ import{a as he,b as G,c as j,d as z,e as H,g as be,i as T,j as ve,k as S,l as Re,v as B,x as F}from"./chunk-7P5SH3CI.js";import{a as se,b as D,c as P}from"./chunk-TGULVWPV.js";import{a as Z,b as ee,c as te}from"./chunk-XRKFTPHD.js";import{b as C,c as ne,d as oe,f as w,h as R,i as re}from"./chunk-BSHAIAXY.js";import{a as M,f as v,k as X}from"./chunk-3M53YXEI.js";import{L as fe,M as me,Q as ye,U as we,g as $,h as ce,k as le,m as de,n as pe,o as ue,p as ge}from"./chunk-CRDKBFRN.js";import{d as y,e as ie,f as ae,g as L}from"./chunk-3WJQ4IGK.js";import{a as g}from"./chunk-FTQLQJQV.js";import{promises as V,existsSync as W}from"node:fs";import U from"node:path";import{stdin as $e}from"node:process";async function Ge(e,o){let t=await y(),r=w(t),n=R(t),i=await P(t,r),{app:a}=await T(n,i,o),s=await pe(n,i,a.id);console.log(JSON.stringify(s,null,2))}g(Ge,"runTemplateStatus");async function je(e,o){let t=await y(),r=w(t),n=R(t),i=await P(t,r),{app:a}=await T(n,i,o),s=await ue(n,i,a.id);console.log(JSON.stringify(s,null,2))}g(je,"runTemplateBranches");async function ze(e,o){let t=await y(),r=w(t),n=R(t),i=await P(t,r),{app:a}=await T(n,i,o),s=typeof e.env=="string"?e.env:typeof e.environment=="string"?e.environment:void 0,f=X(s),c=await ge(n,i,a.id,{environment:f});console.log(JSON.stringify(c,null,2))}g(ze,"runTemplateUpdate");async function He(e){let o=await y(),t=w(o),r=typeof e.apiKey=="string"?e.apiKey:typeof e.key=="string"?e.key:null,n=r?r.trim():await D();if(!n)throw new Error("API key is required");n.startsWith("opk_")||console.log("warning: API keys usually start with opk_."),await L({handle:o.activeProfile?.handle||"default",apiKey:n,baseUrl:t,apiBaseUrl:o.apiBaseUrl,chatApiBaseUrl:o.chatApiBaseUrl,setActive:!0}),console.log("Saved account credentials to the encrypted OpenPond credential store.")}g(He,"runLogin");async function Fe(e,o){let t=o[0]||"list";if(t==="list"){let r=await ie();console.log(JSON.stringify({profiles:r},null,2));return}if(t==="use"){let r=o[1];if(!r)throw new Error("usage: profiles use <name> [--base-url <url>]");let n=await ae(r,{baseUrl:C(e)});console.log(JSON.stringify({profile:n},null,2));return}if(t==="save"){let r=o[1];if(!r)throw new Error("usage: profiles save <name> --api-key <key> [--base-url <url>] [--api-base-url <url>] [--chat-api-base-url <url>]");let n=typeof e.apiKey=="string"?e.apiKey:typeof e.key=="string"?e.key:null,i=n?n.trim():await D(),a=typeof e.environment=="string"?e.environment:typeof e.env=="string"?e.env:void 0,s=await L({handle:r,apiKey:i,baseUrl:C(e),apiBaseUrl:ne(e),chatApiBaseUrl:oe(e),environment:a,setActive:!0});console.log(JSON.stringify({profile:s},null,2));return}throw new Error("usage: profiles <list|use|save> [args]")}g(Fe,"runProfiles");async function Ve(){let e=await y(),o=w(e),t=R(e),r=await P(e,o),n=await fe(t,r);console.log(JSON.stringify(n,null,2))}g(Ve,"runAccount");async function We(e){let o=await y(),t=R(o),r=se(o),n=await me(t,r);console.log(JSON.stringify(n,null,2))}g(We,"runHealth");async function qe(e,o){let t=await y(),r=w(t),n=R(t),i=await P(t,r),{app:a}=await T(n,i,o),s=typeof e.branch=="string"?String(e.branch):void 0,f=await $(n,i,a.id,{branch:s});if(!f?.id){console.log("no deployments found");return}let c=await ce(n,i,f.id),d=(c&&Array.isArray(c.toolsJson)?c.toolsJson:null)||(c&&typeof c.metadataJson=="object"&&c.metadataJson?c.metadataJson.tools:null),u=Array.isArray(d)?d:[];if(u.length===0){console.log("no tools found");return}for(let l of u){let m=l,h=m.profile||m.function,I=m.name||h?.name||"unknown",p=m.description||h?.description||"";console.log(p?`${I} - ${p}`:I)}}g(qe,"runToolList");async function Ye(e,o,t){let r=await y(),n=w(r),i=R(r),a=await P(r,n),{app:s}=await T(i,a,o),f=typeof e.branch=="string"?String(e.branch):void 0,c=await $(i,a,s.id,{branch:f});if(!c?.id)throw new Error("no deployments found");let d;if(typeof e.body=="string")try{d=JSON.parse(e.body)}catch{throw new Error("tool body must be valid JSON")}let u=typeof e.method=="string"?String(e.method).toUpperCase():"POST",l=await we(n,a,{appId:s.id,deploymentId:c.id,toolName:t,method:u,body:d,headers:a?{"openpond-api-key":a}:void 0});if(!l.ok)throw new Error(l.error||`tool failed (${l.status})`);let m=l.data??{ok:!0};console.log(JSON.stringify(m,null,2))}g(Ye,"runToolRun");async function Qe(e,o,t){let r=await y(),n=w(r),i=R(r),a=await P(r,n),{app:s}=await T(i,a,o),f=typeof e.branch=="string"?String(e.branch):void 0,c=typeof e.deploymentId=="string"?String(e.deploymentId):void 0,d=c?{id:c}:await $(i,a,s.id,{branch:f});if(!d?.id)throw new Error("no deployments found");let u=typeof e.body=="string"?M(String(e.body),"body"):{};if(!u||typeof u!="object"||Array.isArray(u))throw new Error("body must be a JSON object");let l=typeof e.method=="string"?String(e.method).toUpperCase():"POST",m={...u,appId:s.id,deploymentId:d.id,toolName:t,method:l},h=await ye(i,a,m);console.log(JSON.stringify(h,null,2))}g(Qe,"runBacktestRun");async function Xe(e,o){let t=await y(),r=w(t),n=R(t),i=await P(t,r),{app:a,handle:s,repo:f}=await T(n,i,o),c=typeof e.branch=="string"?String(e.branch):void 0,d=typeof e.deploymentId=="string"?String(e.deploymentId):void 0,u=d?{id:d}:await $(n,i,a.id,{branch:c});if(!u?.id){console.log("no deployments found");return}await ve({baseUrl:n,apiKey:i,deploymentId:u.id,prefix:`[${s}/${f}] `,intervalMs:e.interval?Number(e.interval):void 0,timeoutMs:e.timeout?Number(e.timeout):void 0})}g(Xe,"runDeployWatch");async function Ze(e,o){let r=((typeof e.name=="string"?e.name:null)||o.join(" ")).trim();if(!r)throw new Error("usage: repo create --name <name> [--team-id <id>] [--path <dir>] [--template <owner/repo|url>] [--template-branch <branch>] [--empty|--opentool] [--sandbox] [--token] [--auto-schedule-migration <true|false>]");let n=await y(),i=w(n),a=await P(n,i),s=R(n),f=typeof e.teamId=="string"&&e.teamId.trim()?e.teamId.trim():void 0,c=typeof e.template=="string"?e.template.trim():"";if(c&&(e.empty==="true"||e.opentool==="true"))throw new Error("choose one: --template or --empty/--opentool");if(e.empty==="true"&&e.opentool==="true")throw new Error("choose one: --empty or --opentool");let d=typeof e.description=="string"?e.description.trim():void 0,u=typeof e.templateBranch=="string"&&e.templateBranch.trim().length>0?e.templateBranch.trim():void 0,l=typeof e.env=="string"?M(e.env,"env"):void 0;if(l){if(typeof l!="object"||Array.isArray(l))throw new Error("env must be a JSON object");for(let[b,A]of Object.entries(l))if(typeof A!="string")throw new Error(`env value for ${b} must be a string`)}if(c){e.deployOnPush!==void 0&&console.warn("deploy-on-push is not used for template create (auto deploys)");let b=re(c,i),k=(await de(s,a,[{name:r,...d?{description:d}:{},templateRepoUrl:b,...u?{templateBranch:u}:{},...l?{envVars:l}:{}}],f)).items?.[0];if(!k||k.status!=="ok"||!k.appId)throw new Error(k?.error||"Template create failed");console.log(`app_id: ${k.appId}`),k.deploymentId&&console.log(`deployment_id: ${k.deploymentId}`),k.conversationId&&console.log(`conversation_id: ${k.conversationId}`);return}let m=process.cwd(),h=typeof e.path=="string"?e.path:typeof e.dir=="string"?e.dir:null,I=h&&h.trim().length>0?h.trim():$e.isTTY?await Re(m):m,p=U.resolve(I);if(W(p)){if(!(await V.stat(p)).isDirectory())throw new Error(`path is not a directory: ${p}`)}else await V.mkdir(p,{recursive:!0});let Pe=(await V.readdir(p)).filter(b=>b!==".git").length===0,x=v(e.yes)||v(e.force);if(!Pe&&!x&&!await S(`Directory is not empty (${p}). Continue?`,!1)){console.log("aborted");return}let ke=U.join(p,".git");if(!W(ke)){if(!(x?!0:await S("Initialize git repository here?",!0))){console.log("aborted");return}let A=await B("git",["init"],{cwd:p});if(A.code!==0)throw new Error(`git init failed: ${A.stderr.trim()||A.stdout.trim()||"unknown error"}`)}let K=await F(p,"origin");if(K&&!x&&!await S(`Remote "origin" already set (${K}). Replace it?`,!1)){console.log("aborted");return}let q=e.opentool==="true"?"opentool":"empty",Te=v(e.sandbox),Be=v(e.deployOnPush),N=e.autoScheduleMigration,Y=typeof N=="string"||typeof N=="boolean",Ee=Y?v(N):void 0,E=await le(s,a,{name:r,...f?{teamId:f}:{},...d?{description:d}:{},...q?{repoInit:q}:{},...Te?{sandbox:!0}:{},...l?{envVars:l}:{},...Be?{deployOnPush:!0}:{},...Y?{autoScheduleMigration:Ee}:{}}),O=he(E);H(O);let J=v(e.token)||v(e.setRemoteToken),Oe=G(O,a),Q=J?Oe:O,_=await B("git",K?["remote","set-url","origin",Q]:["remote","add","origin",Q],{cwd:p});if(_.code!==0)throw new Error(`git remote failed: ${z(_.stderr.trim()||_.stdout.trim()||"unknown error")}`);let Ae=J?j(O):O;console.log(`app_id: ${E.appId}`),E.gitOwner&&E.gitRepo&&console.log(`repo: ${E.gitOwner}/${E.gitRepo}`),console.log(`remote: ${Ae}`),console.log('next: git add . && git commit -m "init"');let Ie=E.defaultBranch||"master";console.log(`next: openpond repo push --path ${p} --branch ${Ie}`),J||console.log(`token-remote (non-interactive): git -C ${p} remote set-url origin ${j(O)}`);try{await be({apiBase:s,apiKey:a,forceRefresh:!0})}catch(b){console.warn("cache refresh failed",b)}}g(Ze,"runRepoCreate");async function Se(e){let o=await B("git",["rev-parse","--abbrev-ref","HEAD"],{cwd:e});if(o.code!==0)return null;let t=o.stdout.trim();return t.length>0?t:null}g(Se,"resolveGitBranch");async function et(e){let o=await y(),t=w(o),r=await P(o,t),n=typeof e.path=="string"?e.path:typeof e.dir=="string"?e.dir:null,i=U.resolve(n&&n.trim().length>0?n.trim():"."),a=U.join(i,".git");if(!W(a))throw new Error(`git repo not found at ${i} (missing .git)`);let s=await F(i,"origin");if(!s)throw new Error("origin remote not set; run `openpond repo create` first");H(s);let c=(typeof e.branch=="string"?e.branch.trim():"")||await Se(i);if(!c)throw new Error("unable to resolve git branch; pass --branch");let d;try{d=G(s,r)}catch{throw new Error("origin remote must be https for tokenized pushes")}let u=v(e.keepTokenRemote)||v(e.token)||v(e.setRemoteToken),l=s.includes("x-access-token:"),m=!u&&!l?s:null,h=process.env.GIT_TERMINAL_PROMPT;process.env.GIT_TERMINAL_PROMPT="0";try{if(!l){let p=await B("git",["remote","set-url","origin",d],{cwd:i});if(p.code!==0)throw new Error(`git remote set-url failed: ${z(p.stderr.trim()||p.stdout.trim()||"unknown error")}`)}if((await B("git",["push","-u","origin",c],{cwd:i,inherit:!0})).code!==0)throw new Error("git push failed")}finally{m&&await B("git",["remote","set-url","origin",m],{cwd:i}).catch(()=>null),h===void 0?delete process.env.GIT_TERMINAL_PROMPT:process.env.GIT_TERMINAL_PROMPT=h}}g(et,"runRepoPush");async function tt(e){if(e.length===0)throw new Error("usage: opentool <init|validate|build> [args]");let o=process.platform==="win32"?"npx.cmd":"npx";if((await B(o,["opentool",...e],{inherit:!0})).code!==0)throw new Error("opentool command failed")}g(tt,"runOpentool");async function nt(){let e="openpond",o=Z(),t=await te(e),r=`npm i -g ${e}@${t}`,n=ee(o,t);if(n===0){console.log(`${e} is up to date (${o})`);return}if(n===-1){console.log(`Update available: ${o} -> ${t}`),console.log(`Run: ${r}`);return}if(n===1){console.log(`Installed version (${o}) is newer than npm latest (${t}).`);return}if(o===t){console.log(`${e} is up to date (${o})`);return}console.log(`Installed: ${o}`),console.log(`Latest: ${t}`),console.log(`Run: ${r}`)}g(nt,"runCheckUpdate");export{Ge as a,je as b,ze as c,He as d,Fe as e,Ve as f,We as g,qe as h,Ye as i,Qe as j,Xe as k,Ze as l,Se as m,et as n,tt as o,nt as p};
@@ -1,5 +1,5 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{n as V,o as G,u as J}from"./chunk-GPL2Z65R.js";import{c as o,d as H,e as l,f as K,h as ae,i as w}from"./chunk-3M53YXEI.js";import{b as ie,c as se,d as ce}from"./chunk-JEISPWWM.js";import{h as X,k as Z}from"./chunk-ERJV5BMC.js";import{a as I}from"./chunk-6FA3GG5B.js";import{a as i}from"./chunk-FTQLQJQV.js";import{existsSync as j,readFileSync as _e}from"node:fs";import{createRequire as Ie}from"node:module";import b from"node:path";function de(e){let n=b.join(e,"node_modules","openpond-agent-sdk","dist","cli.js");if(j(n))return{command:process.execPath,args:[n]};let t=b.join(e,"node_modules",".bin","openpond-agent");if(j(t))return{command:t,args:[]};let r=b.join(e,"node_modules","openpond-agent-sdk","src","cli.ts");if(j(r))return ue(b.dirname(b.dirname(r)),r);let a=De(e);return a||{command:"openpond-agent",args:[]}}i(de,"resolveLocalAgentSdkCommand");function De(e){let n=b.join(e,"package.json");if(!j(n))return null;try{let t=JSON.parse(_e(n,"utf8")),r=t.dependencies?.["openpond-agent-sdk"]??t.devDependencies?.["openpond-agent-sdk"]??t.peerDependencies?.["openpond-agent-sdk"];if(!r?.startsWith("file:"))return null;let a=b.resolve(e,r.slice(5)),d=b.join(a,"src","cli.ts");if(j(d))return ue(a,d);let s=b.join(a,"dist","cli.js");if(j(s))return{command:process.execPath,args:[s]}}catch{return null}return null}i(De,"resolveAgentSdkDependencyCli");function ue(e,n){let t=Ie(b.join(e,"package.json")).resolve("tsx/cli");return{command:process.execPath,args:[t,n]}}i(ue,"nodeTypescriptCommand");import{Buffer as A}from"node:buffer";import{existsSync as U,promises as P}from"node:fs";import m from"node:path";import{createHash as Te}from"node:crypto";import{existsSync as T,promises as M,readFileSync as ye,statSync as Me}from"node:fs";import{tmpdir as $e}from"node:os";import y from"node:path";import{gunzipSync as ze}from"node:zlib";import{existsSync as C}from"node:fs";import v from"node:path";function L(e,n){let t=n.packageManager;if(typeof t=="string"){let r=t.split("@")[0];if(r==="bun"||r==="npm"||r==="pnpm"||r==="yarn")return r}return C(v.join(e,"bun.lock"))||C(v.join(e,"bun.lockb"))?"bun":C(v.join(e,"pnpm-lock.yaml"))?"pnpm":C(v.join(e,"yarn.lock"))?"yarn":C(v.join(e,"package-lock.json"))||C(v.join(e,"npm-shrinkwrap.json"))?"npm":"unknown"}i(L,"detectAgentSdkPackageManager");function le(e){return e==="npm"?"npm install --offline":e==="pnpm"?"pnpm install --offline":e==="yarn"?"yarn install --offline":e==="bun"?"bun install --offline":"pnpm install --offline"}i(le,"agentSdkDependencyInstallCommand");function pe(e,n){return e==="pnpm"?`pnpm run ${n}`:e==="yarn"?`yarn ${n}`:e==="npm"?`npm run ${n}`:e==="bun"?`bun run ${n}`:`pnpm run ${n}`}i(pe,"agentSdkRunScriptCommand");function ge(e,n){return e==="pnpm"?`pnpm --silent run ${n}`:e==="yarn"?`yarn --silent ${n}`:e==="npm"?`npm run --silent ${n}`:e==="bun"?`bun run --silent ${n}`:`pnpm --silent run ${n}`}i(ge,"agentSdkRunJsonScriptCommand");var ke=".openpond/vendor/openpond-agent-sdk.tgz",Ue=".openpond/vendor/npm",Ne=`file:${ke}`,fe="# openpond-agent-sdk-source-upload: synthesized-openpond-yaml";async function ne(e,n,t={}){return J(e,n,{cwd:t.cwd})}i(ne,"runCommand");function Je(e){for(let n of["dependencies","devDependencies","peerDependencies"]){let t=e[n];if(!t||typeof t!="object"||Array.isArray(t))continue;let r=t["openpond-agent-sdk"];if(typeof r=="string"&&r.trim())return r.trim()}return null}i(Je,"readOpenPondAgentSdkVersionSpec");async function he(e,n){let t=Ke(e,n);if(!t)return null;let r=await M.mkdtemp(y.join($e(),"openpond-agent-sdk-pack-"));try{let a=t.kind==="package_root"?await Le(t.packageRoot,r):t.kind==="registry"?await He(t.versionSpec,r):t.tarballContents,d=await Fe({sdkPackageJson:t.packageJson,dependencyBaseDir:t.dependencyBaseDir,projectPackageJson:n,projectPath:e,tempDir:r}),s=L(e,n),c=Xe(n,d,s),u=s==="pnpm"||s==="unknown"?Ze(e,d):null,p=le(s),f={packageName:"openpond-agent-sdk",source:"uploaded_tarball",path:ke,sha256:O(a),sizeBytes:a.byteLength};return{rewrittenPackageJson:c,pnpmWorkspaceSource:u,tarballs:[{...f,contents:a},...d],dependencySetup:{required:!0,packageManager:s,installCommand:p,commands:[p],packageJsonPath:"package.json",expectedBinaryPath:"node_modules/.bin/openpond-agent",generatedArtifactDirectory:".openpond",sdkPackage:f,dependencyPackages:d.map(g=>({packageName:g.packageName,source:g.source,versionSpec:g.versionSpec,path:g.path,sha256:g.sha256,sizeBytes:g.sizeBytes}))}}}finally{await M.rm(r,{recursive:!0,force:!0})}}i(he,"buildAgentSdkMaterializedDependency");async function Le(e,n){let t=await ne("npm",["pack","--silent","--pack-destination",n,e],{cwd:e});if(t.code!==0){let a=[t.stderr.trim(),t.stdout.trim()].filter(Boolean).join(`
2
+ import{n as V,o as G,u as J}from"./chunk-7P5SH3CI.js";import{c as o,d as H,e as l,f as K,h as ae,i as w}from"./chunk-3M53YXEI.js";import{b as ie,c as se,d as ce}from"./chunk-PWKJ5KLZ.js";import{h as X,k as Z}from"./chunk-JFZ6USNQ.js";import{a as I}from"./chunk-6FA3GG5B.js";import{a as i}from"./chunk-FTQLQJQV.js";import{existsSync as j,readFileSync as _e}from"node:fs";import{createRequire as Ie}from"node:module";import b from"node:path";function de(e){let n=b.join(e,"node_modules","openpond-agent-sdk","dist","cli.js");if(j(n))return{command:process.execPath,args:[n]};let t=b.join(e,"node_modules",".bin","openpond-agent");if(j(t))return{command:t,args:[]};let r=b.join(e,"node_modules","openpond-agent-sdk","src","cli.ts");if(j(r))return ue(b.dirname(b.dirname(r)),r);let a=De(e);return a||{command:"openpond-agent",args:[]}}i(de,"resolveLocalAgentSdkCommand");function De(e){let n=b.join(e,"package.json");if(!j(n))return null;try{let t=JSON.parse(_e(n,"utf8")),r=t.dependencies?.["openpond-agent-sdk"]??t.devDependencies?.["openpond-agent-sdk"]??t.peerDependencies?.["openpond-agent-sdk"];if(!r?.startsWith("file:"))return null;let a=b.resolve(e,r.slice(5)),d=b.join(a,"src","cli.ts");if(j(d))return ue(a,d);let s=b.join(a,"dist","cli.js");if(j(s))return{command:process.execPath,args:[s]}}catch{return null}return null}i(De,"resolveAgentSdkDependencyCli");function ue(e,n){let t=Ie(b.join(e,"package.json")).resolve("tsx/cli");return{command:process.execPath,args:[t,n]}}i(ue,"nodeTypescriptCommand");import{Buffer as A}from"node:buffer";import{existsSync as U,promises as P}from"node:fs";import m from"node:path";import{createHash as Te}from"node:crypto";import{existsSync as T,promises as M,readFileSync as ye,statSync as Me}from"node:fs";import{tmpdir as $e}from"node:os";import y from"node:path";import{gunzipSync as ze}from"node:zlib";import{existsSync as C}from"node:fs";import v from"node:path";function L(e,n){let t=n.packageManager;if(typeof t=="string"){let r=t.split("@")[0];if(r==="bun"||r==="npm"||r==="pnpm"||r==="yarn")return r}return C(v.join(e,"bun.lock"))||C(v.join(e,"bun.lockb"))?"bun":C(v.join(e,"pnpm-lock.yaml"))?"pnpm":C(v.join(e,"yarn.lock"))?"yarn":C(v.join(e,"package-lock.json"))||C(v.join(e,"npm-shrinkwrap.json"))?"npm":"unknown"}i(L,"detectAgentSdkPackageManager");function le(e){return e==="npm"?"npm install --offline":e==="pnpm"?"pnpm install --offline":e==="yarn"?"yarn install --offline":e==="bun"?"bun install --offline":"pnpm install --offline"}i(le,"agentSdkDependencyInstallCommand");function pe(e,n){return e==="pnpm"?`pnpm run ${n}`:e==="yarn"?`yarn ${n}`:e==="npm"?`npm run ${n}`:e==="bun"?`bun run ${n}`:`pnpm run ${n}`}i(pe,"agentSdkRunScriptCommand");function ge(e,n){return e==="pnpm"?`pnpm --silent run ${n}`:e==="yarn"?`yarn --silent ${n}`:e==="npm"?`npm run --silent ${n}`:e==="bun"?`bun run --silent ${n}`:`pnpm --silent run ${n}`}i(ge,"agentSdkRunJsonScriptCommand");var ke=".openpond/vendor/openpond-agent-sdk.tgz",Ue=".openpond/vendor/npm",Ne=`file:${ke}`,fe="# openpond-agent-sdk-source-upload: synthesized-openpond-yaml";async function ne(e,n,t={}){return J(e,n,{cwd:t.cwd})}i(ne,"runCommand");function Je(e){for(let n of["dependencies","devDependencies","peerDependencies"]){let t=e[n];if(!t||typeof t!="object"||Array.isArray(t))continue;let r=t["openpond-agent-sdk"];if(typeof r=="string"&&r.trim())return r.trim()}return null}i(Je,"readOpenPondAgentSdkVersionSpec");async function he(e,n){let t=Ke(e,n);if(!t)return null;let r=await M.mkdtemp(y.join($e(),"openpond-agent-sdk-pack-"));try{let a=t.kind==="package_root"?await Le(t.packageRoot,r):t.kind==="registry"?await He(t.versionSpec,r):t.tarballContents,d=await Fe({sdkPackageJson:t.packageJson,dependencyBaseDir:t.dependencyBaseDir,projectPackageJson:n,projectPath:e,tempDir:r}),s=L(e,n),c=Xe(n,d,s),u=s==="pnpm"||s==="unknown"?Ze(e,d):null,p=le(s),f={packageName:"openpond-agent-sdk",source:"uploaded_tarball",path:ke,sha256:O(a),sizeBytes:a.byteLength};return{rewrittenPackageJson:c,pnpmWorkspaceSource:u,tarballs:[{...f,contents:a},...d],dependencySetup:{required:!0,packageManager:s,installCommand:p,commands:[p],packageJsonPath:"package.json",expectedBinaryPath:"node_modules/.bin/openpond-agent",generatedArtifactDirectory:".openpond",sdkPackage:f,dependencyPackages:d.map(g=>({packageName:g.packageName,source:g.source,versionSpec:g.versionSpec,path:g.path,sha256:g.sha256,sizeBytes:g.sizeBytes}))}}}finally{await M.rm(r,{recursive:!0,force:!0})}}i(he,"buildAgentSdkMaterializedDependency");async function Le(e,n){let t=await ne("npm",["pack","--silent","--pack-destination",n,e],{cwd:e});if(t.code!==0){let a=[t.stderr.trim(),t.stdout.trim()].filter(Boolean).join(`
3
3
  `);throw new Error(`failed to pack openpond-agent-sdk for source upload${a?`:
4
4
  ${a}`:""}`)}let r=t.stdout.trim().split(/\r?\n/).filter(Boolean).pop();if(!r)throw new Error("failed to pack openpond-agent-sdk for source upload: npm pack did not return a tarball name");return M.readFile(y.join(n,r))}i(Le,"packOpenPondAgentSdkPackageRoot");async function Fe(e){let n=D(e.sdkPackageJson.dependencies),t=D(e.projectPackageJson.dependencies),r=D(e.projectPackageJson.devDependencies);delete t["openpond-agent-sdk"],delete r["openpond-agent-sdk"];let a=[...Object.entries(n).map(([c,u])=>({packageName:c,versionSpec:u,dependencyBaseDir:e.dependencyBaseDir})),...Object.entries(t).map(([c,u])=>({packageName:c,versionSpec:u,dependencyBaseDir:e.projectPath})),...Object.entries(r).map(([c,u])=>({packageName:c,versionSpec:u,dependencyBaseDir:e.projectPath}))].sort((c,u)=>c.packageName.localeCompare(u.packageName)),d=new Set,s=[];for(;a.length>0;){let{packageName:c,versionSpec:u,dependencyBaseDir:p}=a.shift();if(d.has(c))continue;d.add(c);let f=We({packageName:c,versionSpec:u,dependencyBaseDir:p}),g=await ne("npm",["pack","--silent","--pack-destination",e.tempDir,f],{cwd:p});if(g.code!==0){let h=[g.stderr.trim(),g.stdout.trim()].filter(Boolean).join(`
5
5
  `);throw new Error(`failed to pack openpond-agent-sdk dependency ${c}${h?`:
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a as H,g as O,h as M,i as q,j as V,k as F,l as W,m as G,n as K,p as B}from"./chunk-VD2TQCMH.js";import{a as x,u as D}from"./chunk-Y3B6ZUE6.js";import{E as C,kb as z}from"./chunk-WLZJOCLA.js";import{m as I}from"./chunk-HIQPGYVH.js";import{W as $,ea as A}from"./chunk-ZY32SZ2P.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as k}from"./chunk-FTQLQJQV.js";var Q=e.enum(["create","save","publish","begin_version"]),ee=e.object({operationId:e.string().trim().min(1).max(240),kind:Q,requestHash:e.string().regex(/^[a-f0-9]{64}$/),receipt:q,base:q.nullable()}).strict().superRefine((t,a)=>{let{receipt:r,base:s,kind:i}=t;(s&&(s.teamId!==r.teamId||s.datasetId!==r.datasetId||s.revision+1!==r.revision)||!s&&r.revision!==1)&&a.addIssue({code:"custom",message:"Operation recovery history identity/revision mismatch."}),s&&((s.ownerScope??"workspace")!==(r.ownerScope??"workspace")||s.originProjectId!==r.originProjectId||s.workspace.draft.createdAt!==r.workspace.draft.createdAt)&&a.addIssue({code:"custom",message:"Operation recovery cannot change Dataset ownership or origin."});let n=s?r.workspace.draft.status==="published"?"publish":s.workspace.draft.status==="published"?"begin_version":"save":"create";i!==n&&a.addIssue({code:"custom",message:"Operation recovery kind differs from its retained lifecycle."})}),o=e.string().trim().min(1).max(240),u=e.string().regex(/^[a-f0-9]{64}$/),b=e.iso.datetime(),d=e.number().int().nonnegative(),l=e.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER),te=e.object({id:o,projectId:o,maximumMicroUsd:l.positive(),maximumSandboxSeconds:d.max(10800)}).strict(),ae=e.object({schemaVersion:e.literal("openpond.datasetPreparationGrant.v1"),id:o,teamId:o,ownerUserId:o,projectId:o,maximumMicroUsd:l,maximumSandboxSeconds:d,settledMicroUsd:l,heldMicroUsd:l,sandboxSeconds:d,heldSandboxSeconds:d,unresolvedCalls:d,cleanupPending:d,createdAt:b,updatedAt:b}).strict(),T=e.enum(["coding_change","debugging","code_explanation","structured_text","artifact_work"]),J=e.enum(["inventory","preview","reconstruction","grader_authoring","qualification","release"]),se=e.enum(["draft","running","pausing","paused","needs_attention","preview_ready","ready","releasing","completed","insufficient_data","budget_exhausted","cancelling","cancelled","failed"]),re=e.object({projectId:o,from:b,to:b,importCutoff:b,connections:e.array(o).min(1).max(50),excludedSessions:e.array(e.object({connectionId:o,sourceKeyHash:u,nativeRevisionHash:u,reason:e.enum(["source_read_failed","native_session_not_ready"]),explanation:e.string().trim().min(1).max(2e3)}).strict()).max(1e4).default([])}).strict().superRefine((t,a)=>{Date.parse(t.from)>=Date.parse(t.to)&&a.addIssue({code:"custom",message:"Source event-time window must be nonempty."}),new Set(t.connections).size!==t.connections.length&&a.addIssue({code:"custom",message:"Source connections must be unique."}),t.excludedSessions.some(r=>!t.connections.includes(r.connectionId))&&a.addIssue({code:"custom",message:"Excluded sessions must belong to selected source connections."}),new Set(t.excludedSessions.map(r=>JSON.stringify([r.connectionId,r.sourceKeyHash]))).size!==t.excludedSessions.length&&a.addIssue({code:"custom",message:"Source session exclusions must be unique."})}),X=e.object({source:re,taskClasses:e.array(T).min(1).max(5),limits:e.object({maximumConversations:e.number().int().min(1).max(1e4),maximumCandidates:e.number().int().min(1).max(1e4),acceptedTarget:e.number().int().min(1).max(1e4),maximumRepairsPerCandidate:e.number().int().min(0).max(5),maximumEvidenceBytesPerConversation:e.number().int().min(1024).max(2e6)}).strict(),researcher:e.object({modelId:o,maximumOutputTokens:e.number().int().min(1).max(32768)}).strict(),adjudicator:e.object({modelId:o,maximumOutputTokens:e.number().int().min(1).max(32768)}).strict(),grading:e.discriminatedUnion("mode",[e.object({mode:e.literal("auto")}).strict(),e.object({mode:e.literal("existing_only")}).strict(),e.object({mode:e.literal("manual"),releases:e.array(x).min(1).max(100)}).strict()]),budget:e.object({grantId:o,maximumMicroUsd:l.positive(),previewMaximumMicroUsd:l,qualificationMaximumMicroUsdPerCandidate:l,maximumSandboxSeconds:d.max(10800)}).strict(),finish:e.enum(["stop_ready","create_private_version"]),execution:e.enum(["preview_only","prepare"]),allowPartialVersion:e.boolean(),population:e.literal("development")}).strict().superRefine((t,a)=>{t.limits.acceptedTarget>t.limits.maximumCandidates&&a.addIssue({code:"custom",message:"Accepted target exceeds candidate scan limit."}),t.budget.previewMaximumMicroUsd>t.budget.maximumMicroUsd&&a.addIssue({code:"custom",message:"Preview allowance exceeds the shared preparation ceiling."}),new Set(t.taskClasses).size!==t.taskClasses.length&&a.addIssue({code:"custom",message:"Task classes must be unique."})}),ie=e.object({operationId:o,expectedDatasetRevision:e.number().int().positive(),policy:X}).strict(),ne=e.discriminatedUnion("action",[e.object({action:e.enum(["start","pause","resume","cancel","release"]),operationId:o,expectedRevision:e.number().int().positive()}).strict(),e.object({action:e.literal("resolve"),operationId:o,expectedRevision:e.number().int().positive(),candidateId:o,decision:e.enum(["retry","exclude"]),reason:e.string().trim().min(1).max(5e3)}).strict()]),oe=e.object({conversations:d,importedTurns:d,selectedTurns:d,queuedSnapshots:d.nullable(),failedSessions:d.nullable(),skippedSessions:d.nullable(),lastAdmissionAt:b.nullable(),complete:e.boolean(),sourceComplete:e.boolean().default(!1),excludedSessions:d.default(0),reasons:e.array(e.object({code:o,message:e.string().trim().min(1).max(2e3)}).strict()).max(100),sourceInventoryHash:u}).strict(),de=e.object({maximumMicroUsd:l,settledMicroUsd:l,heldMicroUsd:l,unresolvedCalls:d,sandboxSeconds:d,cleanupPending:d,complete:e.boolean()}).strict(),ce=e.object({sampleConversations:d,sampleTurns:d,candidateCount:d,modelId:o,modelConfigurationHash:u,callReceiptIds:e.array(o).max(2e3),inputTokens:d.nullable(),outputTokens:d.nullable(),classes:e.array(e.object({taskClass:T,candidates:d,assessment:e.enum(["executable","calibrated_judge","unsupported"]),requirements:e.array(e.string().trim().min(1).max(5e3)).max(20)}).strict()).max(5),exclusions:e.array(e.object({code:o,count:d,reason:e.string().trim().min(1).max(5e3)}).strict()).max(100),estimates:e.array(e.object({stage:J,minimumMicroUsd:l,maximumMicroUsd:l,assumptions:e.array(e.string().trim().min(1).max(2e3)).min(1).max(20)}).strict().refine(t=>t.minimumMicroUsd<=t.maximumMicroUsd,"Estimate range is reversed.")).max(6),createdAt:b}).strict(),U=e.object({schemaVersion:e.literal("openpond.datasetPreparationRun.v1"),id:o,operationId:o,teamId:o,ownerUserId:o,datasetId:o,datasetRevision:e.number().int().positive(),revision:e.number().int().positive(),requestHash:u,policy:X,status:se,stage:J,coverage:oe.nullable(),preview:ce.nullable(),counts:e.object({scannedConversations:d,scannedTurns:d,candidates:d,reconstructed:d,qualifying:d,qualified:d,excluded:d,needsAttention:d}).strict(),accounting:de,publication:e.object({datasetId:o,workspaceRevision:e.number().int().positive(),release:x}).strict().nullable(),error:e.object({code:o,message:e.string().trim().min(1).max(5e3)}).strict().nullable(),createdAt:b,updatedAt:b}).strict().superRefine((t,a)=>{t.accounting.maximumMicroUsd!==t.policy.budget.maximumMicroUsd&&a.addIssue({code:"custom",message:"Accounting authority differs from the saved preparation policy."}),t.counts.qualified+t.counts.excluded+t.counts.needsAttention>t.counts.candidates&&a.addIssue({code:"custom",message:"Preparation outcomes exceed the candidate population."}),t.status==="preview_ready"&&(t.policy.execution!=="preview_only"||t.stage!=="preview"||!t.preview||!t.coverage?.complete||!t.accounting.complete)&&a.addIssue({code:"custom",message:"Preview readiness requires a preview-only policy, reconciled source coverage and settled preview calls."}),["ready","releasing","completed"].includes(t.status)&&(t.counts.qualified===0||!t.policy.allowPartialVersion&&t.counts.qualified<t.policy.limits.acceptedTarget)&&a.addIssue({code:"custom",message:"Preparation cannot report readiness below its accepted target."}),["ready","releasing","completed"].includes(t.status)&&(t.policy.execution!=="prepare"||!t.preview||!t.coverage?.complete||!t.accounting.complete)&&a.addIssue({code:"custom",message:"Dataset readiness requires full preparation authority, reconciled source coverage, preview and final accounting."}),t.status==="completed"&&(!t.publication||!t.accounting.complete)&&a.addIssue({code:"custom",message:"Completed preparation requires publication and reconciled accounting."}),t.status==="cancelled"&&(!t.accounting.complete||t.accounting.cleanupPending>0)&&a.addIssue({code:"custom",message:"Cancellation requires settled resource obligations."})}),me=e.object({teamId:o,datasetId:o,runs:e.array(U).max(50),nextCursor:o.nullable()}).strict(),P=e.object({source:H,startSequence:d,endSequence:d,role:e.enum(["requirement","initial_context","outcome","correction","verification"])}).strict().superRefine((t,a)=>{t.endSequence<t.startSequence&&a.addIssue({code:"custom",message:"Evidence span must be ordered."})}),pe=e.object({schemaVersion:e.literal("openpond.preparedTaskProvenance.v1"),candidateId:o,preparationId:o,familyKey:o,sourceSpans:e.array(P).min(1).max(200),firstAvailableAt:b,initialInputHash:u,initialEnvironmentHash:u,initialAssetsHash:u.nullable(),sourceScopeHash:u}).strict().superRefine((t,a)=>{t.sourceSpans.some(s=>s.role==="requirement")||a.addIssue({code:"custom",message:"A reconstructed task needs a source requirement."});let r=new Set;for(let s of t.sourceSpans){t.sourceSpans.some(n=>n!==s&&n.source.id===s.source.id&&n.source.snapshotHash===s.source.snapshotHash&&n.role!==s.role&&s.startSequence<=n.endSequence&&n.startSequence<=s.endSequence)&&a.addIssue({code:"custom",message:"Evidence offsets cannot have conflicting roles."});let i=JSON.stringify([s.source,s.startSequence,s.endSequence]);r.has(i)&&a.addIssue({code:"custom",message:"Evidence span is duplicated or crosses public/private roles."}),r.add(i)}}),ue=e.object({schemaVersion:e.literal("openpond.preparedTaskQualification.v1"),id:o,candidateId:o,preparationId:o,taskHash:u,environmentHash:u,packageHash:u,graderBindings:e.array(e.object({id:o,version:o,contentHash:u,origin:e.enum(["reused","adapted","authored"])}).strict()).min(1).max(100),checks:e.array(e.object({id:o,label:e.enum(["positive","incorrect","incomplete","adversarial","clean_reset"]),executionReceiptId:o,expectedPassed:e.boolean(),observedPassed:e.boolean().nullable(),infrastructureError:o.nullable()}).strict()).min(5).max(500),independentEvidenceRefs:e.array(o).min(1).max(100),judgeCalibration:e.enum(["not_applicable","passed","failed","pending"]),cleanup:e.enum(["completed","pending"]),passed:e.boolean(),createdAt:b}).strict().superRefine((t,a)=>{if(!t.passed)return;let r=new Set(t.checks.map(s=>s.label));["positive","incorrect","incomplete","adversarial","clean_reset"].some(s=>!r.has(s))&&a.addIssue({code:"custom",message:"Qualified tasks require positive, negative, adversarial and clean-reset evidence."}),(t.cleanup!=="completed"||["pending","failed"].includes(t.judgeCalibration)||t.checks.some(s=>s.infrastructureError!==null||s.observedPassed!==s.expectedPassed))&&a.addIssue({code:"custom",message:"Failed, uncalibrated or uncleared checks cannot qualify a task."}),t.checks.some(s=>s.expectedPassed!==["positive","clean_reset"].includes(s.label))&&a.addIssue({code:"custom",message:"Qualification witnesses must pass positives/resets and reject incorrect, incomplete and adversarial outputs."})}),le=e.object({id:o,runId:o,revision:e.number().int().positive(),taskClass:T,status:e.enum(["discovered","reconstructing","authoring","qualifying","qualified","excluded","needs_attention"]),objective:e.string().trim().min(1).max(2e4),provenance:pe.nullable(),qualification:ue.nullable(),reason:e.object({code:o,message:e.string().trim().min(1).max(5e3)}).strict().nullable(),attempts:d.max(6)}).strict().superRefine((t,a)=>{t.status==="qualified"&&(!t.provenance||!t.qualification?.passed)&&a.addIssue({code:"custom",message:"Candidate admission requires reconstruction and qualification receipts."}),t.provenance&&(t.provenance.candidateId!==t.id||t.provenance.preparationId!==t.runId)&&a.addIssue({code:"custom",message:"Candidate provenance identity mismatch."}),t.qualification&&(t.qualification.candidateId!==t.id||t.qualification.preparationId!==t.runId)&&a.addIssue({code:"custom",message:"Candidate qualification identity mismatch."})}),p=e.string().trim().min(1).max(240),he=e.object({teamId:p,datasetId:p,runId:p,candidates:e.array(le).max(50),nextCursor:p.nullable()}).strict(),L=class extends Error{static{k(this,"DatasetPreparationRequestError")}constructor(t,a,r){super(r),this.status=t,this.code=a,this.name="DatasetPreparationRequestError"}status;code},fe=class{static{k(this,"OpenPondDatasetPreparationClient")}constructor(t){this.options=t;let a=new URL(t.baseUrl);if(!["http:","https:"].includes(a.protocol)||a.username||a.password||a.search||a.hash||!t.apiKey.trim()||!t.teamId.trim())throw new Error("A clean API origin and workspace credentials are required.");this.baseUrl=a.toString().replace(/\/+$/,"")}options;baseUrl;async create(t,a,r){let s=ie.parse(a),i=this.readRun(await this.request(t,"","POST",s,r),t);if(i.operationId!==s.operationId||i.requestHash!==I(s)||i.datasetRevision!==s.expectedDatasetRevision)throw new Error("Preparation creation receipt differs from the saved intent.");return i}async createGrant(t,a,r){let s=te.parse(a),i=this.readGrant(await this.request(t,"/grants","POST",s,r));if(i.id!==s.id||i.projectId!==s.projectId||i.maximumMicroUsd!==s.maximumMicroUsd||i.maximumSandboxSeconds!==s.maximumSandboxSeconds)throw new Error("Preparation grant receipt differs from the saved limits.");return i}async getGrant(t,a,r){let s=this.readGrant(await this.request(t,`/grants/${encodeURIComponent(p.parse(a))}`,"GET",void 0,r));if(s.id!==a)throw new Error("Preparation grant identity mismatch.");return s}readGrant(t){let a=ae.parse(t);if(a.teamId!==this.options.teamId)throw new Error("Preparation grant workspace mismatch.");return a}async get(t,a,r){return this.readRun(await this.request(t,`/${encodeURIComponent(p.parse(a))}`,"GET",void 0,r),t,a)}async list(t,a={}){let r=new URLSearchParams(a.cursor?{cursor:p.parse(a.cursor)}:{}),s=me.parse(await this.request(t,`?${r}`,"GET",void 0,a.signal));if(s.teamId!==this.options.teamId||s.datasetId!==t||s.runs.some(i=>i.teamId!==s.teamId||i.datasetId!==t)||new Set(s.runs.map(i=>i.id)).size!==s.runs.length)throw new Error("Preparation list scope/identity mismatch.");return s}async command(t,a,r,s){let i=ne.parse(r),n=this.readRun(await this.request(t,`/${encodeURIComponent(p.parse(a))}/commands`,"POST",i,s),t,a);if(n.revision<i.expectedRevision+1)throw new Error("Preparation command did not advance the expected revision.");return n}async operationResult(t,a,r){let s=await this.request(t,`/operations/${encodeURIComponent(p.parse(a))}`,"GET",void 0,r);if(s===null)return null;let i=e.object({operationId:p,requestHash:e.string().regex(/^[a-f0-9]{64}$/),run:U}).strict().parse(s);if(i.operationId!==a)throw new Error("Preparation operation recovery identity mismatch.");return this.readRun(i.run,t),i}async candidates(t,a,r={}){let s=new URLSearchParams(r.cursor?{cursor:p.parse(r.cursor)}:{}),i=he.parse(await this.request(t,`/${encodeURIComponent(p.parse(a))}/candidates?${s}`,"GET",void 0,r.signal));if(i.teamId!==this.options.teamId||i.datasetId!==t||i.runId!==a||i.candidates.some(n=>n.runId!==a)||new Set(i.candidates.map(n=>n.id)).size!==i.candidates.length)throw new Error("Preparation candidate page scope/identity mismatch.");return i}readRun(t,a,r){let s=U.parse(t);if(s.teamId!==this.options.teamId||s.datasetId!==a||r&&s.id!==r)throw new Error("Preparation run scope/identity mismatch.");return s}async request(t,a,r,s,i){let n=await(this.options.fetch??fetch)(`${this.baseUrl}/v1/dataset-workspaces/${encodeURIComponent(p.parse(t))}/preparations${a}`,{method:r,signal:i,redirect:"error",headers:{Authorization:`Bearer ${this.options.apiKey}`,"X-OpenPond-Team-Id":this.options.teamId,"Content-Type":"application/json"},...s===void 0?{}:{body:JSON.stringify(s)}});if(!n.body)throw n.ok?new Error("Preparation response is empty."):new L(n.status,"dataset_preparation_request_failed",`Dataset preparation request failed (${n.status}).`);let m=n.body.getReader(),h=[],v=0;try{for(;;){let g=await m.read();if(g.done)break;if(v+=g.value.byteLength,v>(n.ok?8*1024*1024:64*1024))throw new Error("Preparation response exceeds its bounded page.");h.push(g.value)}}finally{await m.cancel()}let y=new Uint8Array(v),c=0;for(let g of h)y.set(g,c),c+=g.length;let f=new TextDecoder("utf-8",{fatal:!0}).decode(y);if(!n.ok){let g=null;try{g=JSON.parse(f)}catch{}let w=e.object({code:e.string().max(240),message:e.string().max(5e3)}).safeParse(g);throw new L(n.status,w.success?w.data.code:"dataset_preparation_request_failed",w.success?w.data.message:`Dataset preparation request failed (${n.status}).`)}return JSON.parse(f)}},Me=class{static{k(this,"OpenPondDatasetWorkspaceClient")}constructor(t){this.options=t;let a=new URL(t.baseUrl);if(!["http:","https:"].includes(a.protocol)||a.username||a.password||a.search||a.hash||!t.apiKey.trim()||!t.teamId.trim())throw new Error("A clean API origin and workspace credentials are required.");this.baseUrl=a.toString().replace(/\/+$/,""),this.preparations=new fe(t)}options;baseUrl;preparations;async list(t={}){let{signal:a,...r}=t,s=O.parse(r),i=new URLSearchParams(Object.entries(s).filter(([,m])=>m!==void 0).map(([m,h])=>[m,String(h)])),n=G.parse(await this.request(`?${i}`,"GET",void 0,a));if(n.teamId!==this.options.teamId||n.datasets.length>s.limit||new Set(n.datasets.map(m=>m.id)).size!==n.datasets.length)throw new Error("Dataset list workspace/page mismatch.");return n}async get(t,a){return this.readback(await this.request(`/${encodeURIComponent(t)}`,"GET",void 0,a),t)}async operationResult(t,a){let r=Q.parse(a.kind),s=new URLSearchParams({kind:r,...a.datasetId?{datasetId:a.datasetId}:{}}),i=await this.request(`/operations/${encodeURIComponent(t)}?${s}`,"GET",void 0,a.signal,132*1024*1024);if(i===null)return null;let n=ee.parse(i);if(this.readback(n.receipt,n.receipt.datasetId),n.base&&this.readback(n.base,n.receipt.datasetId),n.operationId!==t||n.kind!==r||a.datasetId&&n.receipt.datasetId!==a.datasetId||a.requestHash&&n.requestHash!==a.requestHash)throw new Error("Dataset operation recovery identity/request mismatch.");return n}async beginVersion(t,a,r){let s=F.parse(a),i=this.readback(await this.request(`/${encodeURIComponent(t)}/begin-version`,"POST",s,r),t);if(i.revision!==s.expectedRevision+1||i.workspace.draft.status!=="draft"||!i.publication||!i.workspace.draft.publishedTasksetRef)throw new Error("Editable version receipt mismatch.");return i}async versions(t,a={}){let r=new URLSearchParams(a.beforeRevision===void 0?{}:{beforeRevision:String(a.beforeRevision)}),s=W.parse(await this.request(`/${encodeURIComponent(t)}/versions?${r}`,"GET",void 0,a.signal));if(s.teamId!==this.options.teamId||s.datasetId!==t||s.items.some((i,n)=>n>0&&i.workspaceRevision>=s.items[n-1].workspaceRevision||a.beforeRevision!==void 0&&i.workspaceRevision>=a.beforeRevision))throw new Error("Dataset version history scope/order mismatch.");return s}async version(t,a,r){let s=this.readback(await this.request(`/${encodeURIComponent(t)}/versions/${a}`,"GET",void 0,r),t);if(s.revision!==a||s.workspace.draft.status!=="published")throw new Error("Dataset immutable version mismatch.");return s}async save(t,a){let r=M.parse(t),s=D(r.workspace);if(s.draft.profileId!==this.options.teamId||s.draft.revision!==r.expectedRevision+1)throw new Error("Dataset write scope or revision mismatch.");let i=this.readback(await this.request(`/${encodeURIComponent(s.draft.id)}`,"PUT",r,a),s.draft.id);if(r.originProjectId&&i.originProjectId!==r.originProjectId)throw new Error("Dataset origin Project mismatch.");if(r.ownerScope&&i.ownerScope!==r.ownerScope)throw new Error("Dataset owner scope mismatch.");if(i.workspace.contentHash!==s.contentHash)throw new Error("Dataset write receipt differs from the saved bytes.");return i}async validate(t,a,r){let s=K.parse(await this.request(`/${encodeURIComponent(t)}/validate`,"POST",{expectedRevision:a},r));if(s.teamId!==this.options.teamId||s.datasetId!==t||s.revision!==a)throw new Error("Dataset validation receipt mismatch.");return s}async publish(t,a,r){let s=V.parse(a),i=this.readback(await this.request(`/${encodeURIComponent(t)}/publish`,"POST",s,r),t);if(i.revision!==s.expectedRevision+1||i.workspace.draft.status!=="published"||i.publication?.packageHash!==s.packageHash)throw new Error("Dataset publication receipt mismatch.");return i}readback(t,a){let r=q.parse(t);if(D(r.workspace),r.datasetId!==a||r.teamId!==this.options.teamId)throw new Error("Dataset identity mismatch.");return r}async request(t,a,r,s,i){let n=await(this.options.fetch??fetch)(`${this.baseUrl}/v1/dataset-workspaces${t}`,{method:a,signal:s,redirect:"error",headers:{Authorization:`Bearer ${this.options.apiKey}`,"X-OpenPond-Team-Id":this.options.teamId,"Content-Type":"application/json"},...r===void 0?{}:{body:JSON.stringify(r)}});if(!n.ok)throw new Error(`Dataset request failed (${n.status}).`);if(i!==void 0){if(!n.body)throw new Error("Dataset response is empty.");let m=n.body.getReader(),h=[],v=0;try{for(;;){let f=await m.read();if(f.done)break;if(v+=f.value.byteLength,v>i)throw new Error("Dataset recovery exceeds its bounded response.");h.push(f.value)}}finally{await m.cancel()}let y=new Uint8Array(v),c=0;for(let f of h)y.set(f,c),c+=f.length;return JSON.parse(new TextDecoder("utf-8",{fatal:!0}).decode(y))}return n.json()}},E=e.string().trim().min(1).max(500),ge=e.string().regex(/^[a-f0-9]{64}$/),Y=e.object({release:x,afterId:E.optional(),limit:e.number().int().min(1).max(1e4).default(100),view:e.enum(["ids","policy"]).default("ids")}).strict().superRefine((t,a)=>{t.view==="policy"&&t.limit>100&&a.addIssue({code:"custom",path:["limit"],message:"Policy previews are bounded to 100 tasks."})}),Z=e.object({id:A.shape.id,split:$}).strict(),we=Z.extend({input:e.record(e.string(),e.unknown()),policyVisibleContext:e.record(e.string(),e.unknown()),artifacts:e.array(e.object({id:E,path:e.string(),mediaType:e.string(),sizeBytes:e.number().int().nonnegative()}).strict()).max(1e3)}).strict(),be=e.object({schemaVersion:e.literal("openpond.datasetPopulationPage.v1"),teamId:E,release:x,view:Y.shape.view,taskCount:e.number().int().nonnegative(),items:e.array(e.union([Z,we])).max(1e4),graders:e.array(z).max(1e3),nextCursor:E.nullable(),contentHash:ge}).strict().superRefine((t,a)=>{t.view==="policy"&&t.items.length>100&&a.addIssue({code:"custom",message:"Policy preview exceeded its task bound."}),t.items.some(r=>"input"in r!=(t.view==="policy"))&&a.addIssue({code:"custom",message:"Dataset task view differs from the requested projection."})}),We=class{static{k(this,"OpenPondDatasetPopulationClient")}constructor(t){this.options=t;let a=new URL(t.baseUrl);if(!["http:","https:"].includes(a.protocol)||a.username||a.password||a.search||a.hash||!t.apiKey.trim()||!t.teamId.trim())throw new Error("A clean API origin and workspace credentials are required.");this.baseUrl=a.toString().replace(/\/+$/,"")}options;baseUrl;async read(t,a){let r=Y.parse(t),s=new URLSearchParams({releaseId:r.release.id,revision:String(r.release.revision),contentHash:r.release.contentHash,limit:String(r.limit),view:r.view});r.afterId&&s.set("afterId",r.afterId);let i=await(this.options.fetch??fetch)(`${this.baseUrl}/v1/dataset-workspaces/population?${s}`,{signal:a,redirect:"error",headers:{Authorization:`Bearer ${this.options.apiKey}`,"X-OpenPond-Team-Id":this.options.teamId,Accept:"application/json"}}),n=i.body?.getReader();if(!n)throw new Error("Dataset population response was empty.");let m=0,h="",v=new TextDecoder;try{for(;;){let w=await n.read();if(w.done)break;if(m+=w.value.byteLength,m>4194304)throw new Error("Dataset population response exceeded 4 MiB. Request fewer tasks.");h+=v.decode(w.value,{stream:!0})}h+=v.decode()}finally{await n.cancel(),n.releaseLock()}let y=JSON.parse(h);if(!i.ok)throw new Error(e.object({message:e.string()}).passthrough().parse(y).message);let c=be.parse(y),{contentHash:f,...g}=c;if(c.teamId!==this.options.teamId||I(c.release)!==I(r.release)||c.view!==r.view||c.items.length>r.limit||I(g)!==f||c.items.some((w,_)=>r.afterId!==void 0&&w.id<=r.afterId||_>0&&w.id<=c.items[_-1].id)||c.nextCursor!==null&&c.nextCursor!==c.items.at(-1)?.id)throw new Error("Dataset population identity, hash, order or bounds mismatch.");return c}},N=e.string().trim().min(1).max(240),S=e.string().trim().min(1).max(5e3),ve=e.object({taskClass:T,objective:e.string().trim().min(1).max(2e4),sourceSpans:e.array(P).min(1).max(200),firstAvailableAt:e.iso.datetime(),reconstruction:e.object({kind:e.enum(["text_only","pinned_repository","pinned_artifact","unsupported"]),requiredAssets:e.array(e.object({reference:S,evidence:P}).strict()).max(100),missingEvidence:e.array(S).max(20)}).strict(),assessment:e.object({kind:e.enum(["executable","calibrated_judge","unsupported"]),requirements:e.array(e.object({criterion:S,evidence:P}).strict()).min(1).max(20),limitations:e.array(S).max(20)}).strict()}).strict().superRefine((t,a)=>{t.sourceSpans.some(r=>r.role==="requirement")||a.addIssue({code:"custom",message:"A research candidate requires independently retained user requirements."}),t.assessment.requirements.some(r=>r.evidence.role!=="requirement")&&a.addIssue({code:"custom",message:"Assessment criteria must cite user requirements, not historical answers."})}),Ke=e.object({schemaVersion:e.literal("openpond.datasetPreparationResearchDecision.v1"),sourceId:N,snapshotHash:e.string().regex(/^[a-f0-9]{64}$/),candidates:e.array(ve).max(100),exclusions:e.array(e.object({code:N,reason:S,sourceSpans:e.array(P).max(200)}).strict()).max(100),contextSummary:e.string().max(2e4)}).strict(),ye=e.string().regex(/^[a-f0-9]{64}$/);var Le=e.object({schemaVersion:e.literal("openpond.preparedRepositoryStartingState.v1"),dependencyClosureQualified:e.literal(!1),assets:e.array(B.extend({receiptId:e.string().regex(/^starting-assets-[a-f0-9]{40}$/),receiptHash:ye,source:H}).strict()).min(1).max(100)}).strict().superRefine((t,a)=>{new Set(t.assets.map(r=>r.path)).size!==t.assets.length&&a.addIssue({code:"custom",message:"Starting paths must be distinct."}),t.assets.some(r=>r.commitHash!==t.assets[0].commitHash||I(r.source)!==I(t.assets[0].source))&&a.addIssue({code:"custom",message:"Starting assets must belong to one original task boundary and commit."})});var R=e.string().trim().min(1).max(240),j=e.string().trim().min(1).max(2e4),Ie=e.object({id:R,label:e.enum(["positive","incorrect","incomplete","adversarial"]),output:e.record(e.string(),e.unknown()),artifacts:e.array(e.object({path:C.shape.path,mediaType:C.shape.mediaType,base64:e.string().max(8*1024*1024)}).strict()).max(100)}).strict().superRefine((t,a)=>{new Set(t.artifacts.map(r=>r.path)).size!==t.artifacts.length&&a.addIssue({code:"custom",message:"Qualification artifacts must have distinct paths."})}),Qe=e.object({schemaVersion:e.literal("openpond.preparedQualificationPlan.v1"),requirementRefs:e.array(R).min(1).max(100),supported:e.boolean(),limitations:e.array(j).max(20),independentVerifier:e.object({runtime:e.enum(["isolated_javascript","sandbox_process"]),source:e.string().trim().min(1).max(2e5),exportName:e.literal("verify"),timeoutMs:e.number().int().min(1).max(6e4)}).strict().nullable(),witnesses:e.array(Ie).max(20)}).strict().superRefine((t,a)=>{(new Set(t.requirementRefs).size!==t.requirementRefs.length||new Set(t.witnesses.map(r=>r.id)).size!==t.witnesses.length)&&a.addIssue({code:"custom",message:"Qualification evidence identities must be distinct."}),t.supported&&(!t.independentVerifier||t.limitations.length||["positive","incorrect","incomplete","adversarial"].some(r=>!t.witnesses.some(s=>s.label===r)))&&a.addIssue({code:"custom",message:"Supported qualification needs a complete verifier and witness population without unresolved evidence gaps."})}),Je=e.object({schemaVersion:e.literal("openpond.preparedWitnessAdjudication.v1"),witnesses:e.array(e.object({id:R,failureMode:e.enum(["none","incorrect","incomplete","adversarial","unverifiable"]),requirements:e.array(e.object({reference:R,status:e.enum(["satisfied","violated","unverifiable"]),reason:j}).strict()).min(1).max(100)}).strict()).min(4).max(20)}).strict(),Xe=e.object({schemaVersion:e.literal("openpond.preparedCheckerAudit.v1"),requirements:e.array(e.object({reference:R,adequatelyChecked:e.boolean(),oracleAdequatelyChecked:e.boolean(),reason:j}).strict()).min(1).max(100),executionIsolationPassed:e.boolean(),futureEvidenceLeak:e.boolean(),unresolvedLimitations:e.array(j).max(20),passed:e.boolean()}).strict();export{Me as a,Y as b,be as c,We as d};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{c as F}from"./chunk-IR3YJWPW.js";import{Wb as G}from"./chunk-MVPKU72J.js";import{b as $,c as z,d as H,e as V,f as R,g as U}from"./chunk-I6VMRQF4.js";import{P,R as Q}from"./chunk-G4E3WGLM.js";import{fb as q,v as h,x as T}from"./chunk-ZY32SZ2P.js";import{n as E}from"./chunk-RCT3O3HQ.js";import{A as i}from"./chunk-X2J2P5ZT.js";import{a}from"./chunk-FTQLQJQV.js";async function K(e){let t=D(await e),[s,m,{QuickJSWASMModule:d}]=await Promise.all([t.importModuleLoader().then(D),t.importFFI(),import("./module-ES6BEMUI-ZVL3F6NW.js").then(D)]),r=await s();r.type="sync";let w=new m(r);return new d(r,w)}a(K,"newQuickJSWASMModuleFromVariant");function D(e){return e&&"default"in e&&e.default?e.default&&"default"in e.default&&e.default.default?e.default.default:e.default:e}a(D,"smartUnwrap");var k=class extends Error{static{a(this,"JavaScriptIsolateExecutionError")}constructor(t){super(t),this.name="JavaScriptIsolateExecutionError"}};async function O(e){te(e),e.signal?.throwIfAborted();let t=a(r=>new Error(`${e.errorPrefix}_${r}`),"error"),s=Date.now()+e.timeoutMs,{default:m}=await import("./dist-SKYG5LZO.js");e.signal?.throwIfAborted();let d=await K(m);e.signal?.throwIfAborted();try{return F.withScope(r=>{let w=r.manage(d.newRuntime());w.setMemoryLimit(33554432),w.setMaxStackSize(262144),w.setInterruptHandler(()=>Date.now()>=s||e.signal?.aborted===!0);let n=r.manage(w.newContext());e.deterministic&&r.manage(n.unwrapResult(n.evalCode("globalThis.Date = undefined; Math.random = () => { throw new Error('environment_random_requires_explicit_seed'); };")));let _=r.manage(n.unwrapResult(n.evalCode("JSON.stringify"))),o=r.manage(n.unwrapResult(n.evalCode(`JSON.parse(${JSON.stringify(JSON.stringify(e.value))})`))),p=r.manage(n.unwrapResult(n.evalCode(e.source,`${e.errorPrefix}.mjs`,{type:"module"}))),v=r.manage(X(n,p,s,e.signal,t)),x=r.manage(n.getProp(v,e.exportName));if(n.typeof(x)!=="function")throw t("function_export_missing");let M=r.manage(n.unwrapResult(n.callFunction(x,n.undefined,o))),b=r.manage(X(n,M,s,e.signal,t)),c=r.manage(n.unwrapResult(n.callFunction(_,n.undefined,b)));if(n.typeof(c)!=="string")throw t("result_not_json");let f=n.getString(c);if(new TextEncoder().encode(f).byteLength>e.maxResultBytes)throw t("result_too_large");if(e.signal?.throwIfAborted(),Date.now()>=s)throw t("timeout");let g=JSON.parse(f);return h(g,e.maxResultBytes),g})}catch(r){throw e.signal?.throwIfAborted(),new k(r instanceof Error?r.message:"JavaScript execution failed.")}}a(O,"executeJavaScriptIsolate");function te(e){if(!Number.isInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>3e5)throw new Error(`${e.errorPrefix}_timeout_invalid`);if(!Number.isInteger(e.maxResultBytes)||e.maxResultBytes<1||e.maxResultBytes>4194304)throw new Error(`${e.errorPrefix}_result_limit_invalid`);if(new TextEncoder().encode(e.source).byteLength>524288)throw new Error(`${e.errorPrefix}_source_too_large`);h(e.value,4194304)}a(te,"validateJavaScriptIsolateInput");function X(e,t,s,m,d){for(;;){if(m?.throwIfAborted(),Date.now()>=s)throw d("timeout");let r=e.getPromiseState(t);if(r.type==="fulfilled")return r.notAPromise?r.value.dup():r.value;if(r.type==="rejected")return e.unwrapResult(r);if(e.runtime.executePendingJobs(1).unwrap()===0)throw d("unresolved_promise")}}a(X,"settle");function I(e,t){let s=t.scope==="arguments"?e.action?.arguments:e[t.scope];for(let m of t.path){if(!s||typeof s!="object"||!Object.hasOwn(s,m))throw new Error("environment_service_reference_missing");s=s[m]}return s}a(I,"resolveValue");async function Y(e,t){if(!e.executionServices?.length)return t.controller(e);if(!Number.isSafeInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>3e4)throw new Error("environment_timeout_invalid");h(e.value,4194304);let s=e.executionServices.map(n=>z.parse(n));if(s.length>16)throw new Error("environment_service_limit");if(new Set(s.map(n=>n.id)).size!==s.length)throw new Error("environment_service_identity_collision");let m=Date.now(),d=new AbortController,r=e.signal?AbortSignal.any([e.signal,d.signal]):d.signal,w=setTimeout(()=>d.abort(new Error("environment_timeout")),e.timeoutMs);try{let n=Object.create(null);for(let o of s){if(r.throwIfAborted(),o.operation!==e.operation||o.operation==="step"&&o.toolName!==e.value.action?.name)throw new Error("environment_service_operation_mismatch");let p=Math.min(o.timeoutMs,e.timeoutMs-(Date.now()-m));if(p<1)throw new Error("environment_timeout");let v=new AbortController,x=AbortSignal.any([r,v.signal]),M=setTimeout(()=>v.abort(new Error("environment_service_timeout")),p),b=Date.now();try{if(o.kind==="sqlite.v1"){if(!t.sql)throw new Error("environment_sql_executor_required");let c=I(e.value,o.sql);if(typeof c!="string"||!c.length||new TextEncoder().encode(c).byteLength>65536||c.includes("\0")){n[o.id]={status:"rejected",code:"invalid_submission"};continue}let f=$({schemaVersion:"openpond.sqlExecution.v1",snapshot:I(e.value,o.snapshot),sql:c,maxRows:o.maxRows,maxResultBytes:o.maxResultBytes});n[o.id]=await t.sql({request:f,timeoutMs:e.timeoutMs,signal:x})}else{let c=I(e.value,o.source),f=I(e.value,o.cases);if(typeof c!="string"||new TextEncoder().encode(c).byteLength>524288){n[o.id]={status:"rejected",code:"invalid_submission"};continue}if(!Array.isArray(f)||!f.length||f.length>o.maxCases||f.some(u=>!u||typeof u!="object"||!Object.hasOwn(u,"input")))throw new Error("environment_service_cases_invalid");let g=[];for(let u of f){let l=p-(Date.now()-b);if(l<1&&(v.abort(new Error("environment_service_timeout")),x.throwIfAborted()),g.push(await t.candidate({source:c,exportName:o.exportName,value:structuredClone(u.input),timeoutMs:Math.max(1,l),maxResultBytes:o.maxResultBytes,deterministic:!0,errorPrefix:"candidate",signal:x})),new TextEncoder().encode(JSON.stringify({status:"completed",cases:g})).byteLength>o.maxResultBytes)throw new k("candidate_result_too_large")}n[o.id]={status:"completed",cases:g}}}catch(c){if(r.throwIfAborted(),v.signal.aborted)n[o.id]={status:"rejected",code:"timeout"};else if(c instanceof k)n[o.id]={status:"rejected",code:"execution_failed"};else throw c}finally{clearTimeout(M)}}r.throwIfAborted();let _=e.timeoutMs-(Date.now()-m);if(_<1)throw new Error("environment_timeout");return await t.controller({...e,executionServices:void 0,value:{...e.value,services:n},timeoutMs:_,signal:r})}finally{clearTimeout(w)}}a(Y,"executeEnvironmentWithServices");async function re(e){let t=V.parse(e.operation);return Y(e,{candidate:O,controller:a(async s=>R.parse(await O({...s,exportName:t,maxResultBytes:1572864,deterministic:!0,errorPrefix:"environment"})),"controller")})}a(re,"executeJavaScriptEnvironment");var J=class extends Error{static{a(this,"JavaScriptEnvironmentActionError")}code;constructor(t){super(`environment_${t}`),this.code=t,this.name="JavaScriptEnvironmentActionError"}};async function Qe(e){let t=U(e.definition),s=Q(e.asset,t.module);if(!Number.isSafeInteger(e.seed))throw new Error("environment_seed_invalid");let m=e.seed;h(e.input,1048576),h(e.initialState,t.maxStateBytes);let d=structuredClone(e.input),r=structuredClone(e.initialState),w=e.execute??re,n=new AbortController,_=e.signal?AbortSignal.any([e.signal,n.signal]):n.signal,o={},p=0,v=!1,x=!1,M=null,b=[],c=null;async function f(u,l){if(v||x)throw new Error("environment_closed");if(M)throw new Error("environment_operation_in_progress");_.throwIfAborted(),l&&(h(l,262144),l=structuredClone(l));let L=E(o),y=l?t.tools.find(S=>S.name===l.name):null;if(u==="step"){if(p>=t.maxSteps)throw new J("step_budget_exhausted");p++}let j=a((S,C)=>b.push({sequence:b.length,operation:u,toolName:l?.name??null,arguments:l?structuredClone(l.arguments):null,observation:S,beforeStateHash:L,afterStateHash:E(o),error:C}),"record");try{if(l&&!y)throw new J("unknown_tool");if(l&&y&&!T(y.inputSchema,l.arguments).valid)throw new J("invalid_arguments");let S=t.executionServices?.filter(N=>N.operation===u&&(u!=="step"||N.toolName===l?.name)),C=w({source:s,operation:u,value:{input:d,initialState:r,seed:m,state:structuredClone(o),sequence:p,action:l?structuredClone(l):null},timeoutMs:Math.min(t.operationTimeoutMs,y?.timeoutMs??t.operationTimeoutMs),signal:_,...S?.length?{executionServices:S}:{}});M=C;let A=R.parse(await C);if(_.throwIfAborted(),h(A.state,t.maxStateBytes),h(A.observation,t.maxObservationBytes),(u==="collect"||y?.sideEffect==="read")&&E(A.state)!==L)throw new Error("environment_read_changed_state");o=structuredClone(A.state);let B=structuredClone(A.observation);return j(B,null),{state:structuredClone(o),observation:B}}catch(S){throw j(null,S instanceof Error?S.message:"environment_execution_failed"),S}finally{M=null}}a(f,"invoke");async function g(){return c||(x=!0,n.abort(new Error("environment_destroyed")),c=(async()=>{try{try{await M}catch{}await w({source:s,operation:"destroy",value:{input:d,initialState:r,seed:m,state:structuredClone(o),sequence:p,action:null},timeoutMs:t.operationTimeoutMs})}finally{o={},v=!0}})(),c)}a(g,"destroy");try{await f("create");let u=await f("reset"),l=E(o),L=a(()=>{if(v)throw new Error("environment_closed");return{definition:{id:t.id,revision:t.revision,contentHash:t.contentHash},inputHash:E(d),seed:m,initialStateHash:l,finalStateHash:E(o),state:structuredClone(o),events:structuredClone(b)}},"snapshot");return{definition:structuredClone(t),observation:u.observation,async step(y){return(await f("step",y)).observation},async collect(){let y=await f("collect");return{...L(),observation:y.observation}},snapshot:L,destroy:g}}catch(u){try{await g()}catch{}throw u}}a(Qe,"createJavaScriptEnvironmentSession");var ne=i.string().trim().min(1).max(500),oe=i.string().regex(/^[a-f0-9]{64}$/),W=i.object({kind:i.literal("model"),id:i.string().trim().min(1).max(191),taskId:ne,admissionHash:oe,model:G,instructions:i.string().max(262144),harness:q.optional(),input:i.record(i.string(),i.unknown()),policyVisibleContext:i.record(i.string(),i.unknown()),timeoutMs:i.number().int().positive().max(36e5),environment:i.discriminatedUnion("kind",[i.object({kind:i.literal("text")}).strict(),i.object({kind:i.literal("javascript"),definition:H,asset:P,initialState:i.record(i.string(),i.unknown()),seed:i.number().int().safe()}).strict()])}).strict(),Ye=i.discriminatedUnion("kind",[W,i.object({kind:i.literal("profile"),request:i.unknown()}).strict()]);var Z=i.string().trim().min(1).max(200),mt=i.object({receiptId:Z,taskId:Z,seed:i.string(),request:W}).strict(),ee=class extends Error{constructor(s,m,d=409){super(m);this.code=s;this.status=d}code;status;static{a(this,"LocalExperimentError")}};export{k as a,te as b,Y as c,J as d,Qe as e,W as f,Ye as g,ee as h};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{P as H,Q as L,_ as S}from"./chunk-2EPR4HLF.js";import{f as A,h as O}from"./chunk-UGOK7VTC.js";import{a as l}from"./chunk-FTQLQJQV.js";import Q from"node:path";var U="default",z=["apiKey","baseUrl","apiBaseUrl","chatApiBaseUrl","token","appId","conversationId"];function re(){return V()}l(re,"getConfigPath");function V(){return O(A()).config}l(V,"getGlobalConfigPath");function m(n,e){return Object.prototype.hasOwnProperty.call(n,e)}l(m,"hasOwn");function h(n){if(typeof n!="string")return null;let e=n.trim();return e.length>0?e:null}l(h,"normalizeHandle");function d(n){if(typeof n!="string")return null;let e=n.trim();return e?e.replace(/\/$/,""):null}l(d,"normalizeBaseUrl");function q(n){let e=h(n);if(!e)throw new Error("profile handle must be non-empty");return e}l(q,"requireHandle");function W(n){if(typeof n!="string")throw new Error("apiKey must be a non-empty string");let e=n.trim();if(!e)throw new Error("apiKey must be a non-empty string");return e}l(W,"requireApiKey");function b(n,e){let t=h(n),s=h(e);return!!(t&&s&&t.toLowerCase()===s.toLowerCase())}l(b,"handleEquals");function v(n,e,t){let s=d(t);return n.findIndex(i=>b(i.handle,e)?s?d(i.baseUrl)===s:!0:!1)}l(v,"findAccountIndex");function P(n){let e=h(n.handle)??U,t=d(n.baseUrl);return t?{handle:e,baseUrl:t}:{handle:e}}l(P,"selectorFromAccount");function y(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=h(typeof e.handle=="string"?e.handle:void 0);if(!t)return null;let s=d(typeof e.baseUrl=="string"?e.baseUrl:void 0);return s?{handle:t,baseUrl:s}:{handle:t}}l(y,"sanitizeActiveProfile");function B(n){if(!n||typeof n!="object"||Array.isArray(n))return;let e=n,t=typeof e.repoPath=="string"?e.repoPath.trim():"",s=typeof e.profile=="string"&&e.profile.trim()?e.profile.trim():"default";if(!t)return;let i={repoPath:t,profile:s,mode:"local"};if(e.lastCheck&&typeof e.lastCheck=="object"&&!Array.isArray(e.lastCheck)){let o=e.lastCheck,a=o.command,u=o.status,c=o.checkedAt;(a==="inspect"||a==="build"||a==="validate"||a==="eval"||a==="run")&&(u==="passed"||u==="failed")&&typeof c=="string"&&(i.lastCheck={command:a,status:u,checkedAt:c,...typeof o.exitCode=="number"||o.exitCode===null?{exitCode:o.exitCode}:{},...typeof o.sourceHead=="string"||o.sourceHead===null?{sourceHead:o.sourceHead}:{}})}if(e.lastPush&&typeof e.lastPush=="object"&&!Array.isArray(e.lastPush)){let o=e.lastPush,a=o.status,u=o.pushedAt;(a==="pushed"||a==="failed")&&typeof u=="string"&&(i.lastPush={status:a,pushedAt:u,...typeof o.teamId=="string"||o.teamId===null?{teamId:o.teamId}:{},...typeof o.projectId=="string"||o.projectId===null?{projectId:o.projectId}:{},...typeof o.localHead=="string"||o.localHead===null?{localHead:o.localHead}:{},...typeof o.hostedHead=="string"||o.hostedHead===null?{hostedHead:o.hostedHead}:{},...typeof o.sourceRef=="string"||o.sourceRef===null?{sourceRef:o.sourceRef}:{},...o.promotionStatus==="uploaded"||o.promotionStatus==="hosted_source_materialized"||o.promotionStatus==="hosted_source_materialize_failed"||o.promotionStatus==="hosted_source_check_pending"||o.promotionStatus==="hosted_source_check_failed"||o.promotionStatus==="hosted_source_published"||o.promotionStatus==="hosted_source_publish_failed"||o.promotionStatus==="hosted_run_pending"||o.promotionStatus==="hosted_run_passed"||o.promotionStatus==="hosted_run_failed"||o.promotionStatus===null?{promotionStatus:o.promotionStatus}:{},...o.hostedRunStatus==="not_started"||o.hostedRunStatus==="running"||o.hostedRunStatus==="passed"||o.hostedRunStatus==="failed"||o.hostedRunStatus===null?{hostedRunStatus:o.hostedRunStatus}:{},...typeof o.hostedRunAgentId=="string"||o.hostedRunAgentId===null?{hostedRunAgentId:o.hostedRunAgentId}:{},...typeof o.hostedRunId=="string"||o.hostedRunId===null?{hostedRunId:o.hostedRunId}:{},...typeof o.hostedRunAt=="string"||o.hostedRunAt===null?{hostedRunAt:o.hostedRunAt}:{},...w(o.hostedSourceMaterialization)?{hostedSourceMaterialization:w(o.hostedSourceMaterialization)}:{},...E(o.hostedSourceCheck)?{hostedSourceCheck:E(o.hostedSourceCheck)}:{},...K(o.hostedPublish)?{hostedPublish:K(o.hostedPublish)}:{},...M(o.hostedRun)?{hostedRun:M(o.hostedRun)}:{},...typeof o.error=="string"||o.error===null?{error:o.error}:{}})}if(Array.isArray(e.profiles)){let o=e.profiles.flatMap(a=>{let u=B(a);if(!u)return[];let c=a,p=c.source==="github"||c.source==="openpond_git"?c.source:"local",C=typeof c.repositoryId=="string"&&c.repositoryId.trim()?c.repositoryId.trim():Q.resolve(u.repoPath);return[{source:p,repositoryId:C,repoPath:u.repoPath,profile:u.profile,...u.lastCheck?{lastCheck:u.lastCheck}:{},...u.lastPush?{lastPush:u.lastPush}:{}}]});o.length>0&&(i.profiles=o)}return i}l(B,"sanitizeLocalOpenPondProfile");function w(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=R(e.status);return t?{status:t,...r(e,"agentId"),...r(e,"runtimeAgentId"),...r(e,"projectId"),...r(e,"sourceRoot"),...r(e,"sourceRef"),...r(e,"sourceCommitSha"),...r(e,"manifestHash"),...r(e,"manifestPath"),...r(e,"manifestSyncedAt"),...T(e,"fileCount"),...T(e,"totalBytes"),...r(e,"generatedManifestPath"),...k(e,"synthesizedOpenPondYaml"),...r(e,"uploadMetadataPath"),...f(e,"setupCommands"),...f(e,"validationCommands"),...r(e,"materializedAt"),...r(e,"error")}:null}l(w,"sanitizeHostedMaterializationStatus");function E(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=R(e.status);return t?{status:t,...r(e,"agentId"),...r(e,"deployPlanStatus"),...k(e,"canRun"),...k(e,"canDeploy"),...r(e,"sourceRef"),...r(e,"sourceCommitSha"),...r(e,"manifestHash"),...r(e,"manifestPath"),...f(e,"setupCommands"),...f(e,"validationCommands"),...f(e,"requiredChecks"),...f(e,"evalNames"),...f(e,"blockedReasons"),...f(e,"staleReasons"),...r(e,"runtimeId"),...r(e,"sandboxId"),...f(e,"traceArtifactRefs"),...f(e,"evalResultArtifactRefs"),...f(e,"validatorArtifactRefs"),...r(e,"checkedAt"),...r(e,"error")}:null}l(E,"sanitizeHostedSourceCheckStatus");function K(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=R(e.status);return t?{status:t,...r(e,"agentId"),...r(e,"snapshotId"),...r(e,"sourceRef"),...r(e,"sourceCommitSha"),...r(e,"manifestHash"),...r(e,"manifestPath"),...r(e,"buildStatus"),...r(e,"validationStatus"),...r(e,"evalStatus"),...r(e,"publishedAt"),...r(e,"error")}:null}l(K,"sanitizeHostedPublishStatus");function M(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=R(e.status);return t?{status:t,...r(e,"agentId"),...r(e,"runId"),...r(e,"runtimeId"),...r(e,"sandboxId"),...r(e,"sourceRef"),...r(e,"sourceCommitSha"),...r(e,"manifestHash"),...r(e,"setupGateStatus"),...f(e,"setupRequirementRefs"),...f(e,"artifactRefs"),...f(e,"traceArtifactRefs"),...f(e,"evalArtifactRefs"),...r(e,"startedAt"),...r(e,"completedAt"),...r(e,"error")}:null}l(M,"sanitizeHostedRunSummary");function r(n,e){let t=n[e];return typeof t=="string"||t===null?{[e]:t}:{}}l(r,"nullableStringProp");function k(n,e){let t=n[e];return typeof t=="boolean"||t===null?{[e]:t}:{}}l(k,"nullableBooleanProp");function T(n,e){let t=n[e];return typeof t=="number"||t===null?{[e]:t}:{}}l(T,"nullableNumberProp");function f(n,e){let t=n[e];if(!Array.isArray(t))return{};let s=t.filter(i=>typeof i=="string");return{[e]:s}}l(f,"stringArrayProp");function R(n){return typeof n=="string"&&n.trim()?n.trim():null}l(R,"stringField");function D(n,e){if(!b(n.handle,e.handle))return!1;let t=d(e.baseUrl);return t?d(n.baseUrl)===t:!d(n.baseUrl)}l(D,"accountMatchesSelector");function I(n,e,t={}){let s=d(e.baseUrl);if(s)return v(n,e.handle,s);let i=n.findIndex(a=>D(a,e));if(i!==-1)return i;let o=n.map((a,u)=>({account:a,index:u})).filter(({account:a})=>b(a.handle,e.handle));if(o.length>1&&t.requireUnambiguous)throw new Error(`multiple profiles found for ${e.handle}; pass --base-url to select one`);return o[0]?.index??-1}l(I,"findAccountIndexForSelector");function X(n){if(!n||typeof n!="object"||Array.isArray(n))return;let e=n,t={};return typeof e.token=="string"&&(t.token=e.token),(typeof e.appId=="string"||e.appId===null)&&(t.appId=e.appId),(typeof e.conversationId=="string"||e.conversationId===null)&&(t.conversationId=e.conversationId),Object.keys(t).length>0?t:void 0}l(X,"sanitizeSession");function Z(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=h(typeof e.handle=="string"?e.handle:void 0);if(!t)return null;let s={handle:t};typeof e.apiKey=="string"&&(s.apiKey=e.apiKey),typeof e.baseUrl=="string"&&(s.baseUrl=e.baseUrl),typeof e.apiBaseUrl=="string"&&(s.apiBaseUrl=e.apiBaseUrl),typeof e.chatApiBaseUrl=="string"&&(s.chatApiBaseUrl=e.chatApiBaseUrl),typeof e.environment=="string"&&(s.environment=e.environment);let i=X(e.session);return i&&(s.session=i),s}l(Z,"sanitizeAccount");function ee(n){let e={};return typeof n.token=="string"&&(e.token=n.token),(typeof n.appId=="string"||n.appId===null)&&(e.appId=n.appId),(typeof n.conversationId=="string"||n.conversationId===null)&&(e.conversationId=n.conversationId),Object.keys(e).length>0?e:void 0}l(ee,"extractLegacySession");function ne(n,e){let t={handle:e};typeof n.apiKey=="string"&&(t.apiKey=n.apiKey),typeof n.baseUrl=="string"&&(t.baseUrl=n.baseUrl),typeof n.apiBaseUrl=="string"&&(t.apiBaseUrl=n.apiBaseUrl),typeof n.chatApiBaseUrl=="string"&&(t.chatApiBaseUrl=n.chatApiBaseUrl);let s=ee(n);return s&&(t.session=s),t}l(ne,"extractLegacyAccount");function x(n){let e={};typeof n.lspEnabled=="boolean"&&(e.lspEnabled=n.lspEnabled),(n.executionMode==="local"||n.executionMode==="hosted")&&(e.executionMode=n.executionMode),(n.mode==="general"||n.mode==="builder")&&(e.mode=n.mode);let t=B(n.openpondProfile);t&&(e.openpondProfile=t);let s=[],i=Array.isArray(n.accounts)?n.accounts:[];for(let c of i){let p=Z(c);p&&v(s,p.handle,p.baseUrl)===-1&&s.push(p)}if(s.length===0){let c=y(n.activeProfile)?.handle||U;s.push(ne(n,c))}let o=y(n.activeProfile),a=o?I(s,o):-1,u=s[a===-1?0:a];return e.accounts=s,e.activeProfile=P(u),e}l(x,"normalizeGlobalConfig");function N(n,e,t){let s=n.accounts??[],i=d(t??process.env.OPENPOND_BASE_URL),o=h(e);if(o)return i?{handle:o,baseUrl:i}:{handle:o};let a=h(process.env.OPENPOND_ACCOUNT);if(a)return i?{handle:a,baseUrl:i}:{handle:a};let u=y(n.activeProfile);return u?i?{handle:u.handle,baseUrl:i}:u:s[0]?P(s[0]):{handle:U}}l(N,"resolveRequestedProfile");function G(n,e,t){let s=d(t);if(s){let o=v(n,e,s);if(o!==-1)return n[o]}else{let o=n.filter(a=>b(a.handle,e));if(o.length>1)throw new Error(`multiple profiles found for ${e}; pass --base-url to select one`);if(o.length===1)return o[0]}let i={handle:e};return s&&(i.baseUrl=s),n.push(i),i}l(G,"ensureAccount");function j(n){n.session&&Object.keys(n.session).length===0&&delete n.session}l(j,"cleanupAccount");function te(n,e,t,s){let i=t===null||t===void 0&&s.undefinedDeletes;switch(e){case"apiKey":{if(i){delete n.apiKey;return}typeof t=="string"&&(n.apiKey=t);return}case"baseUrl":{if(i){delete n.baseUrl;return}typeof t=="string"&&(n.baseUrl=t);return}case"apiBaseUrl":{if(i){delete n.apiBaseUrl;return}typeof t=="string"&&(n.apiBaseUrl=t);return}case"chatApiBaseUrl":{if(i){delete n.chatApiBaseUrl;return}typeof t=="string"&&(n.chatApiBaseUrl=t);return}case"token":case"appId":case"conversationId":{if(n.session||(n.session={}),i){delete n.session[e],j(n);return}(typeof t=="string"||t===null)&&(n.session[e]=t),j(n);return}}}l(te,"applyScopedKey");function $(n,e,t){if(!z.some(c=>m(e,c)))return!1;let i=n.accounts??[],o=y(e.activeProfile)??N(n),a=d(m(e,"baseUrl")?e.baseUrl??null:o.baseUrl??process.env.OPENPOND_BASE_URL),u=G(i,o.handle,a);for(let c of z)m(e,c)&&te(u,c,e[c],t);return n.accounts=i,n.activeProfile=P(u),!0}l($,"applyAccountPatch");function F(n,e){if(m(e,"lspEnabled")&&(typeof e.lspEnabled=="boolean"?n.lspEnabled=e.lspEnabled:e.lspEnabled===null&&delete n.lspEnabled),m(e,"executionMode")&&(e.executionMode==="local"||e.executionMode==="hosted"?n.executionMode=e.executionMode:e.executionMode===null&&delete n.executionMode),m(e,"mode")&&(e.mode==="general"||e.mode==="builder"?n.mode=e.mode:e.mode===null&&delete n.mode),m(e,"activeProfile")){let t=y(e.activeProfile);if(t){let s=I(n.accounts??[],t);n.activeProfile=s===-1?t:P((n.accounts??[])[s])}else e.activeProfile===null&&delete n.activeProfile}if(m(e,"openpondProfile")){let t=B(e.openpondProfile);t?n.openpondProfile=t:e.openpondProfile===null&&delete n.openpondProfile}}l(F,"applyTopLevelPatch");async function oe(n){let e=A();await S(e),await L(e,()=>n)}l(oe,"writeGlobalConfig");async function _(n){let e=A();return await S(e),await L(e,t=>{let s=x(t);return n(s),s})}l(_,"updateGlobalConfig");async function Y(){let n=A();return await S(n),x(await H(n))}l(Y,"loadGlobalConfig");async function le(n={}){let e=await Y(),t=e.accounts??[],s=N(e,n.account,n.baseUrl),i=I(t,s,{requireUnambiguous:!0}),o=i===-1?null:t[i],a=o?.session;return{...e,activeProfile:o?P(o):s,apiKey:o?.apiKey,baseUrl:o?.baseUrl,apiBaseUrl:o?.apiBaseUrl,chatApiBaseUrl:o?.chatApiBaseUrl,token:a?.token,appId:a?.appId,conversationId:a?.conversationId}}l(le,"loadConfig");async function J(){let n=await Y(),e=y(n.activeProfile);return(n.accounts??[]).map(t=>{let s=h(t.handle)??U;return{handle:s,baseUrl:d(t.baseUrl),apiBaseUrl:d(t.apiBaseUrl),chatApiBaseUrl:d(t.chatApiBaseUrl),environment:t.environment?.trim()||null,isActive:!!(e&&D({...t,handle:s},e)),hasApiKey:!!t.apiKey?.trim(),hasSessionToken:!!t.session?.token?.trim(),sessionAppId:t.session?.appId??null,sessionConversationId:t.session?.conversationId??null}})}l(J,"listConfiguredProfiles");async function ae(n,e={}){let t=q(n),s=d(e.baseUrl),i=-1;await _(a=>{let u=a.accounts??[];if(i=I(u,s?{handle:t,baseUrl:s}:{handle:t},{requireUnambiguous:!0}),i===-1)throw new Error(`profile not found: ${t}`);a.activeProfile=P(u[i])});let o=await J();return o.find(a=>a.isActive)??o[i]}l(ae,"setActiveProfile");async function ue(n){let e=q(n.handle),t=W(n.apiKey),s=d(n.baseUrl),i=d(n.apiBaseUrl),o=d(n.chatApiBaseUrl),a={handle:e};await _(p=>{let C=p.accounts??[],g=G(C,e,s);g.apiKey=t,s&&(g.baseUrl=s),i?g.apiBaseUrl=i:n.apiBaseUrl===null&&delete g.apiBaseUrl,o?g.chatApiBaseUrl=o:n.chatApiBaseUrl===null&&delete g.chatApiBaseUrl,n.environment===null?delete g.environment:typeof n.environment=="string"&&n.environment.trim()&&(g.environment=n.environment.trim()),p.accounts=C,a=P(g),n.setActive!==!1&&(p.activeProfile=a)});let c=(await J()).find(p=>b(p.handle,a.handle)?s?d(p.baseUrl)===s:!0:!1);if(!c)throw new Error(`failed to save profile: ${e}`);return c}l(ue,"saveProfileApiKey");async function ce(n){let e=x(n);F(e,n),$(e,n,{undefinedDeletes:!0}),await oe(e)}l(ce,"saveConfig");async function de(n){await _(e=>{F(e,n),$(e,n,{undefinedDeletes:!1})})}l(de,"saveGlobalConfig");export{re as a,_ as b,Y as c,le as d,J as e,ae as f,ue as g,ce as h,de as i};
2
+ import{P as H,Q as L,_ as S}from"./chunk-SH7POUVX.js";import{f as A,h as O}from"./chunk-UGOK7VTC.js";import{a as l}from"./chunk-FTQLQJQV.js";import Q from"node:path";var U="default",z=["apiKey","baseUrl","apiBaseUrl","chatApiBaseUrl","token","appId","conversationId"];function re(){return V()}l(re,"getConfigPath");function V(){return O(A()).config}l(V,"getGlobalConfigPath");function m(n,e){return Object.prototype.hasOwnProperty.call(n,e)}l(m,"hasOwn");function h(n){if(typeof n!="string")return null;let e=n.trim();return e.length>0?e:null}l(h,"normalizeHandle");function d(n){if(typeof n!="string")return null;let e=n.trim();return e?e.replace(/\/$/,""):null}l(d,"normalizeBaseUrl");function q(n){let e=h(n);if(!e)throw new Error("profile handle must be non-empty");return e}l(q,"requireHandle");function W(n){if(typeof n!="string")throw new Error("apiKey must be a non-empty string");let e=n.trim();if(!e)throw new Error("apiKey must be a non-empty string");return e}l(W,"requireApiKey");function b(n,e){let t=h(n),s=h(e);return!!(t&&s&&t.toLowerCase()===s.toLowerCase())}l(b,"handleEquals");function v(n,e,t){let s=d(t);return n.findIndex(i=>b(i.handle,e)?s?d(i.baseUrl)===s:!0:!1)}l(v,"findAccountIndex");function P(n){let e=h(n.handle)??U,t=d(n.baseUrl);return t?{handle:e,baseUrl:t}:{handle:e}}l(P,"selectorFromAccount");function y(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=h(typeof e.handle=="string"?e.handle:void 0);if(!t)return null;let s=d(typeof e.baseUrl=="string"?e.baseUrl:void 0);return s?{handle:t,baseUrl:s}:{handle:t}}l(y,"sanitizeActiveProfile");function B(n){if(!n||typeof n!="object"||Array.isArray(n))return;let e=n,t=typeof e.repoPath=="string"?e.repoPath.trim():"",s=typeof e.profile=="string"&&e.profile.trim()?e.profile.trim():"default";if(!t)return;let i={repoPath:t,profile:s,mode:"local"};if(e.lastCheck&&typeof e.lastCheck=="object"&&!Array.isArray(e.lastCheck)){let o=e.lastCheck,a=o.command,u=o.status,c=o.checkedAt;(a==="inspect"||a==="build"||a==="validate"||a==="eval"||a==="run")&&(u==="passed"||u==="failed")&&typeof c=="string"&&(i.lastCheck={command:a,status:u,checkedAt:c,...typeof o.exitCode=="number"||o.exitCode===null?{exitCode:o.exitCode}:{},...typeof o.sourceHead=="string"||o.sourceHead===null?{sourceHead:o.sourceHead}:{}})}if(e.lastPush&&typeof e.lastPush=="object"&&!Array.isArray(e.lastPush)){let o=e.lastPush,a=o.status,u=o.pushedAt;(a==="pushed"||a==="failed")&&typeof u=="string"&&(i.lastPush={status:a,pushedAt:u,...typeof o.teamId=="string"||o.teamId===null?{teamId:o.teamId}:{},...typeof o.projectId=="string"||o.projectId===null?{projectId:o.projectId}:{},...typeof o.localHead=="string"||o.localHead===null?{localHead:o.localHead}:{},...typeof o.hostedHead=="string"||o.hostedHead===null?{hostedHead:o.hostedHead}:{},...typeof o.sourceRef=="string"||o.sourceRef===null?{sourceRef:o.sourceRef}:{},...o.promotionStatus==="uploaded"||o.promotionStatus==="hosted_source_materialized"||o.promotionStatus==="hosted_source_materialize_failed"||o.promotionStatus==="hosted_source_check_pending"||o.promotionStatus==="hosted_source_check_failed"||o.promotionStatus==="hosted_source_published"||o.promotionStatus==="hosted_source_publish_failed"||o.promotionStatus==="hosted_run_pending"||o.promotionStatus==="hosted_run_passed"||o.promotionStatus==="hosted_run_failed"||o.promotionStatus===null?{promotionStatus:o.promotionStatus}:{},...o.hostedRunStatus==="not_started"||o.hostedRunStatus==="running"||o.hostedRunStatus==="passed"||o.hostedRunStatus==="failed"||o.hostedRunStatus===null?{hostedRunStatus:o.hostedRunStatus}:{},...typeof o.hostedRunAgentId=="string"||o.hostedRunAgentId===null?{hostedRunAgentId:o.hostedRunAgentId}:{},...typeof o.hostedRunId=="string"||o.hostedRunId===null?{hostedRunId:o.hostedRunId}:{},...typeof o.hostedRunAt=="string"||o.hostedRunAt===null?{hostedRunAt:o.hostedRunAt}:{},...w(o.hostedSourceMaterialization)?{hostedSourceMaterialization:w(o.hostedSourceMaterialization)}:{},...E(o.hostedSourceCheck)?{hostedSourceCheck:E(o.hostedSourceCheck)}:{},...K(o.hostedPublish)?{hostedPublish:K(o.hostedPublish)}:{},...M(o.hostedRun)?{hostedRun:M(o.hostedRun)}:{},...typeof o.error=="string"||o.error===null?{error:o.error}:{}})}if(Array.isArray(e.profiles)){let o=e.profiles.flatMap(a=>{let u=B(a);if(!u)return[];let c=a,p=c.source==="github"||c.source==="openpond_git"?c.source:"local",C=typeof c.repositoryId=="string"&&c.repositoryId.trim()?c.repositoryId.trim():Q.resolve(u.repoPath);return[{source:p,repositoryId:C,repoPath:u.repoPath,profile:u.profile,...u.lastCheck?{lastCheck:u.lastCheck}:{},...u.lastPush?{lastPush:u.lastPush}:{}}]});o.length>0&&(i.profiles=o)}return i}l(B,"sanitizeLocalOpenPondProfile");function w(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=R(e.status);return t?{status:t,...r(e,"agentId"),...r(e,"runtimeAgentId"),...r(e,"projectId"),...r(e,"sourceRoot"),...r(e,"sourceRef"),...r(e,"sourceCommitSha"),...r(e,"manifestHash"),...r(e,"manifestPath"),...r(e,"manifestSyncedAt"),...T(e,"fileCount"),...T(e,"totalBytes"),...r(e,"generatedManifestPath"),...k(e,"synthesizedOpenPondYaml"),...r(e,"uploadMetadataPath"),...f(e,"setupCommands"),...f(e,"validationCommands"),...r(e,"materializedAt"),...r(e,"error")}:null}l(w,"sanitizeHostedMaterializationStatus");function E(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=R(e.status);return t?{status:t,...r(e,"agentId"),...r(e,"deployPlanStatus"),...k(e,"canRun"),...k(e,"canDeploy"),...r(e,"sourceRef"),...r(e,"sourceCommitSha"),...r(e,"manifestHash"),...r(e,"manifestPath"),...f(e,"setupCommands"),...f(e,"validationCommands"),...f(e,"requiredChecks"),...f(e,"evalNames"),...f(e,"blockedReasons"),...f(e,"staleReasons"),...r(e,"runtimeId"),...r(e,"sandboxId"),...f(e,"traceArtifactRefs"),...f(e,"evalResultArtifactRefs"),...f(e,"validatorArtifactRefs"),...r(e,"checkedAt"),...r(e,"error")}:null}l(E,"sanitizeHostedSourceCheckStatus");function K(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=R(e.status);return t?{status:t,...r(e,"agentId"),...r(e,"snapshotId"),...r(e,"sourceRef"),...r(e,"sourceCommitSha"),...r(e,"manifestHash"),...r(e,"manifestPath"),...r(e,"buildStatus"),...r(e,"validationStatus"),...r(e,"evalStatus"),...r(e,"publishedAt"),...r(e,"error")}:null}l(K,"sanitizeHostedPublishStatus");function M(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=R(e.status);return t?{status:t,...r(e,"agentId"),...r(e,"runId"),...r(e,"runtimeId"),...r(e,"sandboxId"),...r(e,"sourceRef"),...r(e,"sourceCommitSha"),...r(e,"manifestHash"),...r(e,"setupGateStatus"),...f(e,"setupRequirementRefs"),...f(e,"artifactRefs"),...f(e,"traceArtifactRefs"),...f(e,"evalArtifactRefs"),...r(e,"startedAt"),...r(e,"completedAt"),...r(e,"error")}:null}l(M,"sanitizeHostedRunSummary");function r(n,e){let t=n[e];return typeof t=="string"||t===null?{[e]:t}:{}}l(r,"nullableStringProp");function k(n,e){let t=n[e];return typeof t=="boolean"||t===null?{[e]:t}:{}}l(k,"nullableBooleanProp");function T(n,e){let t=n[e];return typeof t=="number"||t===null?{[e]:t}:{}}l(T,"nullableNumberProp");function f(n,e){let t=n[e];if(!Array.isArray(t))return{};let s=t.filter(i=>typeof i=="string");return{[e]:s}}l(f,"stringArrayProp");function R(n){return typeof n=="string"&&n.trim()?n.trim():null}l(R,"stringField");function D(n,e){if(!b(n.handle,e.handle))return!1;let t=d(e.baseUrl);return t?d(n.baseUrl)===t:!d(n.baseUrl)}l(D,"accountMatchesSelector");function I(n,e,t={}){let s=d(e.baseUrl);if(s)return v(n,e.handle,s);let i=n.findIndex(a=>D(a,e));if(i!==-1)return i;let o=n.map((a,u)=>({account:a,index:u})).filter(({account:a})=>b(a.handle,e.handle));if(o.length>1&&t.requireUnambiguous)throw new Error(`multiple profiles found for ${e.handle}; pass --base-url to select one`);return o[0]?.index??-1}l(I,"findAccountIndexForSelector");function X(n){if(!n||typeof n!="object"||Array.isArray(n))return;let e=n,t={};return typeof e.token=="string"&&(t.token=e.token),(typeof e.appId=="string"||e.appId===null)&&(t.appId=e.appId),(typeof e.conversationId=="string"||e.conversationId===null)&&(t.conversationId=e.conversationId),Object.keys(t).length>0?t:void 0}l(X,"sanitizeSession");function Z(n){if(!n||typeof n!="object"||Array.isArray(n))return null;let e=n,t=h(typeof e.handle=="string"?e.handle:void 0);if(!t)return null;let s={handle:t};typeof e.apiKey=="string"&&(s.apiKey=e.apiKey),typeof e.baseUrl=="string"&&(s.baseUrl=e.baseUrl),typeof e.apiBaseUrl=="string"&&(s.apiBaseUrl=e.apiBaseUrl),typeof e.chatApiBaseUrl=="string"&&(s.chatApiBaseUrl=e.chatApiBaseUrl),typeof e.environment=="string"&&(s.environment=e.environment);let i=X(e.session);return i&&(s.session=i),s}l(Z,"sanitizeAccount");function ee(n){let e={};return typeof n.token=="string"&&(e.token=n.token),(typeof n.appId=="string"||n.appId===null)&&(e.appId=n.appId),(typeof n.conversationId=="string"||n.conversationId===null)&&(e.conversationId=n.conversationId),Object.keys(e).length>0?e:void 0}l(ee,"extractLegacySession");function ne(n,e){let t={handle:e};typeof n.apiKey=="string"&&(t.apiKey=n.apiKey),typeof n.baseUrl=="string"&&(t.baseUrl=n.baseUrl),typeof n.apiBaseUrl=="string"&&(t.apiBaseUrl=n.apiBaseUrl),typeof n.chatApiBaseUrl=="string"&&(t.chatApiBaseUrl=n.chatApiBaseUrl);let s=ee(n);return s&&(t.session=s),t}l(ne,"extractLegacyAccount");function x(n){let e={};typeof n.lspEnabled=="boolean"&&(e.lspEnabled=n.lspEnabled),(n.executionMode==="local"||n.executionMode==="hosted")&&(e.executionMode=n.executionMode),(n.mode==="general"||n.mode==="builder")&&(e.mode=n.mode);let t=B(n.openpondProfile);t&&(e.openpondProfile=t);let s=[],i=Array.isArray(n.accounts)?n.accounts:[];for(let c of i){let p=Z(c);p&&v(s,p.handle,p.baseUrl)===-1&&s.push(p)}if(s.length===0){let c=y(n.activeProfile)?.handle||U;s.push(ne(n,c))}let o=y(n.activeProfile),a=o?I(s,o):-1,u=s[a===-1?0:a];return e.accounts=s,e.activeProfile=P(u),e}l(x,"normalizeGlobalConfig");function N(n,e,t){let s=n.accounts??[],i=d(t??process.env.OPENPOND_BASE_URL),o=h(e);if(o)return i?{handle:o,baseUrl:i}:{handle:o};let a=h(process.env.OPENPOND_ACCOUNT);if(a)return i?{handle:a,baseUrl:i}:{handle:a};let u=y(n.activeProfile);return u?i?{handle:u.handle,baseUrl:i}:u:s[0]?P(s[0]):{handle:U}}l(N,"resolveRequestedProfile");function G(n,e,t){let s=d(t);if(s){let o=v(n,e,s);if(o!==-1)return n[o]}else{let o=n.filter(a=>b(a.handle,e));if(o.length>1)throw new Error(`multiple profiles found for ${e}; pass --base-url to select one`);if(o.length===1)return o[0]}let i={handle:e};return s&&(i.baseUrl=s),n.push(i),i}l(G,"ensureAccount");function j(n){n.session&&Object.keys(n.session).length===0&&delete n.session}l(j,"cleanupAccount");function te(n,e,t,s){let i=t===null||t===void 0&&s.undefinedDeletes;switch(e){case"apiKey":{if(i){delete n.apiKey;return}typeof t=="string"&&(n.apiKey=t);return}case"baseUrl":{if(i){delete n.baseUrl;return}typeof t=="string"&&(n.baseUrl=t);return}case"apiBaseUrl":{if(i){delete n.apiBaseUrl;return}typeof t=="string"&&(n.apiBaseUrl=t);return}case"chatApiBaseUrl":{if(i){delete n.chatApiBaseUrl;return}typeof t=="string"&&(n.chatApiBaseUrl=t);return}case"token":case"appId":case"conversationId":{if(n.session||(n.session={}),i){delete n.session[e],j(n);return}(typeof t=="string"||t===null)&&(n.session[e]=t),j(n);return}}}l(te,"applyScopedKey");function $(n,e,t){if(!z.some(c=>m(e,c)))return!1;let i=n.accounts??[],o=y(e.activeProfile)??N(n),a=d(m(e,"baseUrl")?e.baseUrl??null:o.baseUrl??process.env.OPENPOND_BASE_URL),u=G(i,o.handle,a);for(let c of z)m(e,c)&&te(u,c,e[c],t);return n.accounts=i,n.activeProfile=P(u),!0}l($,"applyAccountPatch");function F(n,e){if(m(e,"lspEnabled")&&(typeof e.lspEnabled=="boolean"?n.lspEnabled=e.lspEnabled:e.lspEnabled===null&&delete n.lspEnabled),m(e,"executionMode")&&(e.executionMode==="local"||e.executionMode==="hosted"?n.executionMode=e.executionMode:e.executionMode===null&&delete n.executionMode),m(e,"mode")&&(e.mode==="general"||e.mode==="builder"?n.mode=e.mode:e.mode===null&&delete n.mode),m(e,"activeProfile")){let t=y(e.activeProfile);if(t){let s=I(n.accounts??[],t);n.activeProfile=s===-1?t:P((n.accounts??[])[s])}else e.activeProfile===null&&delete n.activeProfile}if(m(e,"openpondProfile")){let t=B(e.openpondProfile);t?n.openpondProfile=t:e.openpondProfile===null&&delete n.openpondProfile}}l(F,"applyTopLevelPatch");async function oe(n){let e=A();await S(e),await L(e,()=>n)}l(oe,"writeGlobalConfig");async function _(n){let e=A();return await S(e),await L(e,t=>{let s=x(t);return n(s),s})}l(_,"updateGlobalConfig");async function Y(){let n=A();return await S(n),x(await H(n))}l(Y,"loadGlobalConfig");async function le(n={}){let e=await Y(),t=e.accounts??[],s=N(e,n.account,n.baseUrl),i=I(t,s,{requireUnambiguous:!0}),o=i===-1?null:t[i],a=o?.session;return{...e,activeProfile:o?P(o):s,apiKey:o?.apiKey,baseUrl:o?.baseUrl,apiBaseUrl:o?.apiBaseUrl,chatApiBaseUrl:o?.chatApiBaseUrl,token:a?.token,appId:a?.appId,conversationId:a?.conversationId}}l(le,"loadConfig");async function J(){let n=await Y(),e=y(n.activeProfile);return(n.accounts??[]).map(t=>{let s=h(t.handle)??U;return{handle:s,baseUrl:d(t.baseUrl),apiBaseUrl:d(t.apiBaseUrl),chatApiBaseUrl:d(t.chatApiBaseUrl),environment:t.environment?.trim()||null,isActive:!!(e&&D({...t,handle:s},e)),hasApiKey:!!t.apiKey?.trim(),hasSessionToken:!!t.session?.token?.trim(),sessionAppId:t.session?.appId??null,sessionConversationId:t.session?.conversationId??null}})}l(J,"listConfiguredProfiles");async function ae(n,e={}){let t=q(n),s=d(e.baseUrl),i=-1;await _(a=>{let u=a.accounts??[];if(i=I(u,s?{handle:t,baseUrl:s}:{handle:t},{requireUnambiguous:!0}),i===-1)throw new Error(`profile not found: ${t}`);a.activeProfile=P(u[i])});let o=await J();return o.find(a=>a.isActive)??o[i]}l(ae,"setActiveProfile");async function ue(n){let e=q(n.handle),t=W(n.apiKey),s=d(n.baseUrl),i=d(n.apiBaseUrl),o=d(n.chatApiBaseUrl),a={handle:e};await _(p=>{let C=p.accounts??[],g=G(C,e,s);g.apiKey=t,s&&(g.baseUrl=s),i?g.apiBaseUrl=i:n.apiBaseUrl===null&&delete g.apiBaseUrl,o?g.chatApiBaseUrl=o:n.chatApiBaseUrl===null&&delete g.chatApiBaseUrl,n.environment===null?delete g.environment:typeof n.environment=="string"&&n.environment.trim()&&(g.environment=n.environment.trim()),p.accounts=C,a=P(g),n.setActive!==!1&&(p.activeProfile=a)});let c=(await J()).find(p=>b(p.handle,a.handle)?s?d(p.baseUrl)===s:!0:!1);if(!c)throw new Error(`failed to save profile: ${e}`);return c}l(ue,"saveProfileApiKey");async function ce(n){let e=x(n);F(e,n),$(e,n,{undefinedDeletes:!0}),await oe(e)}l(ce,"saveConfig");async function de(n){await _(e=>{F(e,n),$(e,n,{undefinedDeletes:!1})})}l(de,"saveGlobalConfig");export{re as a,_ as b,Y as c,le as d,J as e,ae as f,ue as g,ce as h,de as i};
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{c as H,d as q}from"./chunk-YM4PSVFW.js";import{c as T,d as L,e as R}from"./chunk-F6UQ6PPK.js";import{k as M,l as O,o as k,p as C}from"./chunk-LV3CQ72P.js";import{x as S}from"./chunk-PBZCXPPC.js";import{n as N}from"./chunk-VVNV4NNW.js";import{A as c}from"./chunk-PF56N7ZY.js";import{a}from"./chunk-FTQLQJQV.js";var j=c.object({id:c.string().min(1).max(200),name:c.string().min(1).max(64),arguments:c.record(c.string(),c.unknown())}).strict(),W=c.object({text:c.string().max(262144),toolCalls:c.array(j).max(200)}).strict();async function D(e){if(!e.taskId||e.taskId.length>500)throw new Error("environment_task_identity_invalid");if(!Number.isInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>36e5)throw new Error("environment_attempt_timeout_invalid");S(e.instructions,262144);let m=e.taskId,f=e.instructions,d=structuredClone(e.input),J=e.policy,x=new AbortController,u=e.signal?AbortSignal.any([x.signal,e.signal]):x.signal,i=!1,_=setTimeout(()=>{i=!0,x.abort(new Error("environment_attempt_timeout"))},e.timeoutMs);_.unref?.();let t=null,h=null,o="environment_failure",p=null,v=null,b=!1,r=!1,n=[],y=0,E=a(s=>{if(y+=new TextEncoder().encode(JSON.stringify(s)).byteLength,y>4194304)throw o="budget_exhausted",new Error("environment_transcript_budget_exhausted");n.push(s)},"append"),P=new Set;try{t=await R({...e,input:d,signal:u}),E({role:"system",text:f}),E({role:"user",text:JSON.stringify({input:d,observation:t.observation})});for(let s=0;s<=t.definition.maxSteps;s++){u.throwIfAborted();let w;try{let l=await J({messages:structuredClone(n),tools:structuredClone(t.definition.tools),signal:u});S(l,1048576),w=structuredClone(W.parse(l));for(let g of w.toolCalls){if(P.has(g.id))throw new Error("environment_duplicate_tool_call_identity");P.add(g.id)}}catch(l){throw u.aborted||(o="policy_failure"),l}if(u.throwIfAborted(),E({role:"assistant",...w}),!w.toolCalls.length){p=w.text,await t.collect(),h=t.snapshot(),b=!0,o="completed";break}for(let l of w.toolCalls){let g;try{g=await t.step({name:l.name,arguments:l.arguments})}catch(I){if(!(I instanceof L))throw I;if(I.code==="step_budget_exhausted"){o="budget_exhausted";break}g={error:I.code}}E({role:"tool",callId:l.id,name:l.name,observation:g})}if(o==="budget_exhausted")break;s===t.definition.maxSteps&&(o="budget_exhausted")}h??=t.snapshot()}catch(s){u.aborted&&(o=i?"timed_out":"cancelled"),v=s instanceof Error?s.message:"environment_attempt_failed",h??=t?.snapshot()??null}finally{if(clearTimeout(_),t)try{await t.destroy(),r=!0}catch(s){o="environment_failure",v=s instanceof Error?s.message:"environment_cleanup_failed"}}let B={schemaVersion:"openpond.javascriptEnvironmentAttempt.v1",taskId:m,status:o,output:p,snapshot:h,collected:b,environmentCleanupComplete:r,messages:n,error:v};return{...B,contentHash:N(B)}}a(D,"runJavaScriptEnvironmentAttempt");import{spawn as z}from"node:child_process";async function A(e){if(e.signal?.throwIfAborted(),!Number.isSafeInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>3e4)throw new Error("sql_timeout_invalid");let m=O(e.request),{sqlExecutionProcessSource:f}=await import("./sql-execution-process-source-B4HQM6ZV.js");e.signal?.throwIfAborted();let{signal:d}=e,J=`globalThis.__openpondSqlInput = JSON.parse(${JSON.stringify(JSON.stringify(m))});
2
+ import{c as H,d as q}from"./chunk-OW3EOC5Q.js";import{c as T,d as L,e as R}from"./chunk-3MVKXAH7.js";import{a as M,b as O,e as k,f as C}from"./chunk-I6VMRQF4.js";import{v as S}from"./chunk-ZY32SZ2P.js";import{n as N}from"./chunk-RCT3O3HQ.js";import{A as c}from"./chunk-X2J2P5ZT.js";import{a}from"./chunk-FTQLQJQV.js";var j=c.object({id:c.string().min(1).max(200),name:c.string().min(1).max(64),arguments:c.record(c.string(),c.unknown())}).strict(),W=c.object({text:c.string().max(262144),toolCalls:c.array(j).max(200)}).strict();async function D(e){if(!e.taskId||e.taskId.length>500)throw new Error("environment_task_identity_invalid");if(!Number.isInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>36e5)throw new Error("environment_attempt_timeout_invalid");S(e.instructions,262144);let m=e.taskId,f=e.instructions,d=structuredClone(e.input),J=e.policy,x=new AbortController,u=e.signal?AbortSignal.any([x.signal,e.signal]):x.signal,i=!1,_=setTimeout(()=>{i=!0,x.abort(new Error("environment_attempt_timeout"))},e.timeoutMs);_.unref?.();let t=null,h=null,o="environment_failure",p=null,v=null,b=!1,r=!1,n=[],y=0,E=a(s=>{if(y+=new TextEncoder().encode(JSON.stringify(s)).byteLength,y>4194304)throw o="budget_exhausted",new Error("environment_transcript_budget_exhausted");n.push(s)},"append"),P=new Set;try{t=await R({...e,input:d,signal:u}),E({role:"system",text:f}),E({role:"user",text:JSON.stringify({input:d,observation:t.observation})});for(let s=0;s<=t.definition.maxSteps;s++){u.throwIfAborted();let w;try{let l=await J({messages:structuredClone(n),tools:structuredClone(t.definition.tools),signal:u});S(l,1048576),w=structuredClone(W.parse(l));for(let g of w.toolCalls){if(P.has(g.id))throw new Error("environment_duplicate_tool_call_identity");P.add(g.id)}}catch(l){throw u.aborted||(o="policy_failure"),l}if(u.throwIfAborted(),E({role:"assistant",...w}),!w.toolCalls.length){p=w.text,await t.collect(),h=t.snapshot(),b=!0,o="completed";break}for(let l of w.toolCalls){let g;try{g=await t.step({name:l.name,arguments:l.arguments})}catch(I){if(!(I instanceof L))throw I;if(I.code==="step_budget_exhausted"){o="budget_exhausted";break}g={error:I.code}}E({role:"tool",callId:l.id,name:l.name,observation:g})}if(o==="budget_exhausted")break;s===t.definition.maxSteps&&(o="budget_exhausted")}h??=t.snapshot()}catch(s){u.aborted&&(o=i?"timed_out":"cancelled"),v=s instanceof Error?s.message:"environment_attempt_failed",h??=t?.snapshot()??null}finally{if(clearTimeout(_),t)try{await t.destroy(),r=!0}catch(s){o="environment_failure",v=s instanceof Error?s.message:"environment_cleanup_failed"}}let B={schemaVersion:"openpond.javascriptEnvironmentAttempt.v1",taskId:m,status:o,output:p,snapshot:h,collected:b,environmentCleanupComplete:r,messages:n,error:v};return{...B,contentHash:N(B)}}a(D,"runJavaScriptEnvironmentAttempt");import{spawn as z}from"node:child_process";async function A(e){if(e.signal?.throwIfAborted(),!Number.isSafeInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>3e4)throw new Error("sql_timeout_invalid");let m=O(e.request),{sqlExecutionProcessSource:f}=await import("./sql-execution-process-source-B4HQM6ZV.js");e.signal?.throwIfAborted();let{signal:d}=e,J=`globalThis.__openpondSqlInput = JSON.parse(${JSON.stringify(JSON.stringify(m))});
3
3
  ${f}`;return new Promise((x,u)=>{let i=z("node",["--max-old-space-size=64","--input-type=module","-"],{stdio:["pipe","pipe","pipe"],env:{PATH:process.env.PATH},windowsHide:!0}),_,t="",h=0,o=0,p=a(r=>{_??=r,i.kill("SIGKILL")},"stop"),v=a(()=>p(d?.reason instanceof Error?d.reason:new Error("sql_cancelled")),"cancel"),b=setTimeout(()=>p(new Error("sql_timeout")),e.timeoutMs);d?.addEventListener("abort",v,{once:!0}),i.stdout.setEncoding("utf8"),i.stdout.on("data",r=>{h+=Buffer.byteLength(r),h>m.maxResultBytes+65536?p(new Error("sql_process_response_too_large")):t+=r}),i.stderr.on("data",r=>{o+=r.byteLength,o>65536&&p(new Error("sql_process_stderr_too_large"))}),i.once("error",r=>{_??=r}),i.stdin.on("error",r=>p(r)),i.once("close",r=>{if(clearTimeout(b),d?.removeEventListener("abort",v),_){u(_);return}try{if(r!==0)throw new Error("sql_process_exited_without_result");let n=JSON.parse(t);if(!n||typeof n!="object"||!("ok"in n)||n.ok!==!0||!("result"in n))throw new Error("sql_environment_failed");let y=M.parse(n.result);S(y,m.maxResultBytes),x(y)}catch(n){u(n)}}),i.stdin.end(J),d?.aborted&&v()})}a(A,"executeSqlInProcess");async function ie(e){let m=k.parse(e.operation);return T(e,{sql:A,candidate:q,controller:a(async f=>C.parse(await H({...f,exportName:m,maxResultBytes:1572864,deterministic:!0,errorPrefix:"environment"})),"controller")})}a(ie,"executeJavaScriptEnvironmentInWorker");async function le(e){let m=k.parse(e.operation);return T(e,{sql:A,candidate:q,controller:a(async f=>C.parse(await q({...f,exportName:m,maxResultBytes:1572864,deterministic:!0,errorPrefix:"environment"})),"controller")})}a(le,"executeJavaScriptEnvironmentInProcess");export{D as a,ie as b,le as c};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{A as be,X as d,c as D,d as ue,e as J,f as de,g as N,h as l,i as ce,l as fe,q as le,r as me,s as pe,t as K,u as he,v as ge,w as ye,x as _e,y as ke,z as ve}from"./chunk-A77DLBR4.js";import{a as Q,d as Qe,e as Je,f as Ke,h as Be,j as Ge,k as We,m as Ye,n as Xe,o as et,p as tt}from"./chunk-ECOH24MC.js";import{b as U}from"./chunk-X2J2P5ZT.js";import{a as s,c as M,e as ie}from"./chunk-FTQLQJQV.js";var Ae=M(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});var dt=Ge(),ct=We(),ft=Ye(),lt=Xe(),Pe=et(),mt=[dt.default,ct.default,(0,ft.default)(),lt.default,Pe.metadataVocabulary,Pe.contentVocabulary];W.default=mt});var xe=M((wo,pt)=>{pt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var X=M((p,Y)=>{"use strict";Object.defineProperty(p,"__esModule",{value:!0});p.MissingRefError=p.ValidationError=p.CodeGen=p.Name=p.nil=p.stringify=p.str=p._=p.KeywordCxt=p.Ajv=void 0;var ht=Be(),gt=Ae(),yt=tt(),Ie=xe(),_t=["/properties"],L="http://json-schema.org/draft-07/schema",E=class extends ht.default{static{s(this,"Ajv")}_addVocabularies(){super._addVocabularies(),gt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(yt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Ie,_t):Ie;this.addMetaSchema(e,L,!1),this.refs["http://json-schema.org/schema"]=L}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(L)?L:void 0)}};p.Ajv=E;Y.exports=p=E;Y.exports.Ajv=E;Object.defineProperty(p,"__esModule",{value:!0});p.default=E;var kt=Qe();Object.defineProperty(p,"KeywordCxt",{enumerable:!0,get:s(function(){return kt.KeywordCxt},"get")});var O=Q();Object.defineProperty(p,"_",{enumerable:!0,get:s(function(){return O._},"get")});Object.defineProperty(p,"str",{enumerable:!0,get:s(function(){return O.str},"get")});Object.defineProperty(p,"stringify",{enumerable:!0,get:s(function(){return O.stringify},"get")});Object.defineProperty(p,"nil",{enumerable:!0,get:s(function(){return O.nil},"get")});Object.defineProperty(p,"Name",{enumerable:!0,get:s(function(){return O.Name},"get")});Object.defineProperty(p,"CodeGen",{enumerable:!0,get:s(function(){return O.CodeGen},"get")});var vt=Je();Object.defineProperty(p,"ValidationError",{enumerable:!0,get:s(function(){return vt.default},"get")});var bt=Ke();Object.defineProperty(p,"MissingRefError",{enumerable:!0,get:s(function(){return bt.default},"get")})});var Ne=M($=>{"use strict";Object.defineProperty($,"__esModule",{value:!0});$.formatNames=$.fastFormats=$.fullFormats=void 0;function S(n,e){return{validate:n,compare:e}}s(S,"fmtDef");$.fullFormats={date:S(Oe,ae),time:S(te(!0),ne),"date-time":S(De(!0),ze),"iso-time":S(te(),Re),"iso-date-time":S(De(),je),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:At,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:Rt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:xt,int32:{type:"number",validate:Mt},int64:{type:"number",validate:Et},float:{type:"number",validate:Ee},double:{type:"number",validate:Ee},password:!0,binary:!0};$.fastFormats={...$.fullFormats,date:S(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,ae),time:S(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,ne),"date-time":S(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,ze),"iso-time":S(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Re),"iso-date-time":S(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,je),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};$.formatNames=Object.keys($.fullFormats);function Tt(n){return n%4===0&&(n%100!==0||n%400===0)}s(Tt,"isLeapYear");var wt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,St=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Oe(n){let e=wt.exec(n);if(!e)return!1;let t=+e[1],r=+e[2],a=+e[3];return r>=1&&r<=12&&a>=1&&a<=(r===2&&Tt(t)?29:St[r])}s(Oe,"date");function ae(n,e){if(n&&e)return n>e?1:n<e?-1:0}s(ae,"compareDate");var ee=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function te(n){return s(function(t){let r=ee.exec(t);if(!r)return!1;let a=+r[1],o=+r[2],i=+r[3],u=r[4],f=r[5]==="-"?-1:1,g=+(r[6]||0),m=+(r[7]||0);if(g>23||m>59||n&&!u)return!1;if(a<=23&&o<=59&&i<60)return!0;let v=o-m*f,c=a-g*f-(v<0?1:0);return(c===23||c===-1)&&(v===59||v===-1)&&i<61},"time")}s(te,"getTime");function ne(n,e){if(!(n&&e))return;let t=new Date("2020-01-01T"+n).valueOf(),r=new Date("2020-01-01T"+e).valueOf();if(t&&r)return t-r}s(ne,"compareTime");function Re(n,e){if(!(n&&e))return;let t=ee.exec(n),r=ee.exec(e);if(t&&r)return n=t[1]+t[2]+t[3],e=r[1]+r[2]+r[3],n>e?1:n<e?-1:0}s(Re,"compareIsoTime");var re=/t|\s/i;function De(n){let e=te(n);return s(function(r){let a=r.split(re);return a.length===2&&Oe(a[0])&&e(a[1])},"date_time")}s(De,"getDateTime");function ze(n,e){if(!(n&&e))return;let t=new Date(n).valueOf(),r=new Date(e).valueOf();if(t&&r)return t-r}s(ze,"compareDateTime");function je(n,e){if(!(n&&e))return;let[t,r]=n.split(re),[a,o]=e.split(re),i=ae(t,a);if(i!==void 0)return i||ne(r,o)}s(je,"compareIsoDateTime");var $t=/\/|:/,Pt=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function At(n){return $t.test(n)&&Pt.test(n)}s(At,"uri");var Me=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function xt(n){return Me.lastIndex=0,Me.test(n)}s(xt,"byte");var It=-(2**31),Dt=2**31-1;function Mt(n){return Number.isInteger(n)&&n<=Dt&&n>=It}s(Mt,"validateInt32");function Et(n){return Number.isInteger(n)}s(Et,"validateInt64");function Ee(){return!0}s(Ee,"validateNumber");var Ot=/[^\\]\\Z/;function Rt(n){if(Ot.test(n))return!1;try{return new RegExp(n),!0}catch{return!1}}s(Rt,"regex")});var qe=M(R=>{"use strict";Object.defineProperty(R,"__esModule",{value:!0});R.formatLimitDefinition=void 0;var zt=X(),w=Q(),x=w.operators,V={formatMaximum:{okStr:"<=",ok:x.LTE,fail:x.GT},formatMinimum:{okStr:">=",ok:x.GTE,fail:x.LT},formatExclusiveMaximum:{okStr:"<",ok:x.LT,fail:x.GTE},formatExclusiveMinimum:{okStr:">",ok:x.GT,fail:x.LTE}},jt={message:s(({keyword:n,schemaCode:e})=>(0,w.str)`should be ${V[n].okStr} ${e}`,"message"),params:s(({keyword:n,schemaCode:e})=>(0,w._)`{comparison: ${V[n].okStr}, limit: ${e}}`,"params")};R.formatLimitDefinition={keyword:Object.keys(V),type:"string",schemaType:"string",$data:!0,error:jt,code(n){let{gen:e,data:t,schemaCode:r,keyword:a,it:o}=n,{opts:i,self:u}=o;if(!i.validateFormats)return;let f=new zt.KeywordCxt(o,u.RULES.all.format.definition,"format");f.$data?g():m();function g(){let c=e.scopeValue("formats",{ref:u.formats,code:i.code.formats}),y=e.const("fmt",(0,w._)`${c}[${f.schemaCode}]`);n.fail$data((0,w.or)((0,w._)`typeof ${y} != "object"`,(0,w._)`${y} instanceof RegExp`,(0,w._)`typeof ${y}.compare != "function"`,v(y)))}s(g,"validate$DataFormat");function m(){let c=f.schema,y=u.formats[c];if(!y||y===!0)return;if(typeof y!="object"||y instanceof RegExp||typeof y.compare!="function")throw new Error(`"${a}": format "${c}" does not define "compare" function`);let h=e.scopeValue("formats",{key:c,ref:y,code:i.code.formats?(0,w._)`${i.code.formats}${(0,w.getProperty)(c)}`:void 0});n.fail$data(v(h))}s(m,"validateFormat");function v(c){return(0,w._)`${c}.compare(${t}, ${r}) ${V[a].fail} 0`}s(v,"compareCode")},dependencies:["format"]};var Nt=s(n=>(n.addKeyword(R.formatLimitDefinition),n),"formatLimitPlugin");R.default=Nt});var He=M((Z,Fe)=>{"use strict";Object.defineProperty(Z,"__esModule",{value:!0});var z=Ne(),qt=qe(),se=Q(),Ze=new se.Name("fullFormats"),Zt=new se.Name("fastFormats"),oe=s((n,e={keywords:!0})=>{if(Array.isArray(e))return Ce(n,e,z.fullFormats,Ze),n;let[t,r]=e.mode==="fast"?[z.fastFormats,Zt]:[z.fullFormats,Ze],a=e.formats||z.formatNames;return Ce(n,a,t,r),e.keywords&&(0,qt.default)(n),n},"formatsPlugin");oe.get=(n,e="full")=>{let r=(e==="fast"?z.fastFormats:z.fullFormats)[n];if(!r)throw new Error(`Unknown format "${n}"`);return r};function Ce(n,e,t,r){var a,o;(a=(o=n.opts.code).formats)!==null&&a!==void 0||(o.formats=(0,se._)`require("ajv-formats/dist/formats").${r}`);for(let i of e)n.addFormat(i,t[i])}s(Ce,"addFormats");Fe.exports=Z=oe;Object.defineProperty(Z,"__esModule",{value:!0});Z.default=oe});function F(n){return!!n._zod}s(F,"isZ4Schema");function H(n,e){return F(n)?U(n,e):n.safeParse(e)}s(H,"safeParse");function Te(n){if(!n)return;let e;if(F(n)?e=n._zod?.def?.shape:e=n.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}s(Te,"getObjectShape");function we(n){if(F(n)){let o=n._zod?.def;if(o){if(o.value!==void 0)return o.value;if(Array.isArray(o.values)&&o.values.length>0)return o.values[0]}}let t=n._def;if(t){if(t.value!==void 0)return t.value;if(Array.isArray(t.values)&&t.values.length>0)return t.values[0]}let r=n.value;if(r!==void 0)return r}s(we,"getLiteralValue");function A(n){return n==="completed"||n==="failed"||n==="cancelled"}s(A,"isTerminal");var Wr=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function B(n){let t=Te(n)?.method;if(!t)throw new Error("Schema is missing a method literal");let r=we(t);if(typeof r!="string")throw new Error("Schema method literal must be a string");return r}s(B,"getMethodLiteral");function G(n,e){let t=H(n,e);if(!t.success)throw t.error;return t.data}s(G,"parseWithCompat");var ut=6e4,Se=class{static{s(this,"Protocol")}constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(fe,t=>{this._oncancel(t)}),this.setNotificationHandler(me,t=>{this._onprogress(t)}),this.setRequestHandler(le,t=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(he,async(t,r)=>{let a=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!a)throw new d(l.InvalidParams,"Failed to retrieve task: Task not found");return{...a}}),this.setRequestHandler(ye,async(t,r)=>{let a=s(async()=>{let o=t.params.taskId;if(!await this._taskStore.getTask(o,r.sessionId))throw new d(l.InvalidParams,`Task not found: ${o}`);if(this._taskMessageQueue){let u;for(;u=await this._taskMessageQueue.dequeue(o,r.sessionId);){if(u.type==="response"||u.type==="error"){let f=u.message,g=f.id,m=this._requestResolvers.get(g);if(m)if(this._requestResolvers.delete(g),u.type==="response")m(f);else{let v=f,c=new d(v.error.code,v.error.message,v.error.data);m(c)}else{let v=u.type==="response"?"Response":"Error";this._onerror(new Error(`${v} handler missing for request ${g}`))}continue}await this._transport?.send(u.message,{relatedRequestId:r.requestId})}}let i=await this._taskStore.getTask(o,r.sessionId);if(!i)throw new d(l.InvalidParams,`Task not found: ${o}`);if(!A(i.status))return await this._waitForTaskUpdate(o,r.signal,r.sessionId),await a();if(A(i.status)){let u=await this._taskStore.getTaskResult(o,r.sessionId);return this._clearTaskQueue(o,r.sessionId),{...u,_meta:{...u._meta,[D]:{taskId:o}}}}return await a()},"handleTaskResult");return await a()}),this.setRequestHandler(_e,async(t,r)=>{try{let{tasks:a,nextCursor:o}=await this._taskStore.listTasks(t.params?.cursor,r.sessionId);return{tasks:a,nextCursor:o,_meta:{}}}catch(a){throw new d(l.InvalidParams,`Failed to list tasks: ${a instanceof Error?a.message:String(a)}`)}}),this.setRequestHandler(ve,async(t,r)=>{try{let a=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!a)throw new d(l.InvalidParams,`Task not found: ${t.params.taskId}`);if(A(a.status))throw new d(l.InvalidParams,`Cannot cancel task in terminal status: ${a.status}`);await this._taskStore.updateTaskStatus(t.params.taskId,"cancelled","Client cancelled task execution.",r.sessionId),this._clearTaskQueue(t.params.taskId,r.sessionId);let o=await this._taskStore.getTask(t.params.taskId,r.sessionId);if(!o)throw new d(l.InvalidParams,`Task not found after cancellation: ${t.params.taskId}`);return{_meta:{},...o}}catch(a){throw a instanceof d?a:new d(l.InvalidRequest,`Failed to cancel task: ${a instanceof Error?a.message:String(a)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,t,r,a,o=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(a,t),startTime:Date.now(),timeout:t,maxTotalTimeout:r,resetTimeoutOnProgress:o,onTimeout:a})}_resetTimeout(e){let t=this._timeoutInfo.get(e);if(!t)return!1;let r=Date.now()-t.startTime;if(t.maxTotalTimeout&&r>=t.maxTotalTimeout)throw this._timeoutInfo.delete(e),d.fromError(l.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:t.maxTotalTimeout,totalElapsed:r});return clearTimeout(t.timeoutId),t.timeoutId=setTimeout(t.onTimeout,t.timeout),!0}_cleanupTimeout(e){let t=this._timeoutInfo.get(e);t&&(clearTimeout(t.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let t=this.transport?.onclose;this._transport.onclose=()=>{t?.(),this._onclose()};let r=this.transport?.onerror;this._transport.onerror=o=>{r?.(o),this._onerror(o)};let a=this._transport?.onmessage;this._transport.onmessage=(o,i)=>{a?.(o,i),N(o)||ce(o)?this._onresponse(o):J(o)?this._onrequest(o,i):de(o)?this._onnotification(o):this._onerror(new Error(`Unknown message type: ${JSON.stringify(o)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let r of this._timeoutInfo.values())clearTimeout(r.timeoutId);this._timeoutInfo.clear();for(let r of this._requestHandlerAbortControllers.values())r.abort();this._requestHandlerAbortControllers.clear();let t=d.fromError(l.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let r of e.values())r(t)}_onerror(e){this.onerror?.(e)}_onnotification(e){let t=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;t!==void 0&&Promise.resolve().then(()=>t(e)).catch(r=>this._onerror(new Error(`Uncaught error in notification handler: ${r}`)))}_onrequest(e,t){let r=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,a=this._transport,o=e.params?._meta?.[D]?.taskId,i=a?.sessionId,u=this._taskStore,f=!0,g;if(o&&u&&this._taskMessageQueue&&i!==void 0&&(f=!1,g=(async()=>{if(!await u.getTask(o,i))throw new d(l.InvalidParams,`Task not found: ${o}`);f=!0})()),r===void 0){let h={jsonrpc:"2.0",id:e.id,error:{code:l.MethodNotFound,message:"Method not found"}};if(o&&g){let _={type:"error",message:h,timestamp:Date.now()};g.then(()=>this._enqueueTaskMessage(o,_,i),()=>a?.send(h)).catch(j=>this._onerror(new Error(`Failed to send an error response: ${j}`)))}else o&&this._taskMessageQueue?this._enqueueTaskMessage(o,{type:"error",message:h,timestamp:Date.now()},a?.sessionId).catch(_=>this._onerror(new Error(`Failed to enqueue error response: ${_}`))):a?.send(h).catch(_=>this._onerror(new Error(`Failed to send an error response: ${_}`)));return}let m=new AbortController;this._requestHandlerAbortControllers.set(e.id,m);let v=ue(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,a?.sessionId):void 0,y={signal:m.signal,sessionId:a?.sessionId,_meta:e.params?._meta,sendNotification:s(async h=>{if(m.signal.aborted)return;let _={relatedRequestId:e.id};o&&(_.relatedTask={taskId:o}),await this.notification(h,_)},"sendNotification"),sendRequest:s(async(h,_,j)=>{if(m.signal.aborted)throw new d(l.ConnectionClosed,"Request was cancelled");let I={...j,relatedRequestId:e.id};o&&!I.relatedTask&&(I.relatedTask={taskId:o});let k=I.relatedTask?.taskId??o;return k&&c&&await c.updateTaskStatus(k,"input_required"),await this.request(h,_,I)},"sendRequest"),authInfo:t?.authInfo,requestId:e.id,requestInfo:t?.requestInfo,taskId:o,taskStore:c,taskRequestedTtl:v?.ttl,closeSSEStream:t?.closeSSEStream,closeStandaloneSSEStream:t?.closeStandaloneSSEStream};(g??Promise.resolve()).then(()=>{if(g&&m.signal.aborted)throw new d(l.ConnectionClosed,"Request was cancelled");v&&this.assertTaskHandlerCapability(e.method)}).then(()=>r(e,y)).then(async h=>{if(m.signal.aborted)return;let _={result:h,jsonrpc:"2.0",id:e.id};o&&this._taskMessageQueue?await this._enqueueTaskMessage(o,{type:"response",message:_,timestamp:Date.now()},a?.sessionId):await a?.send(_)},async h=>{if(m.signal.aborted)return;let _={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(h.code)?h.code:l.InternalError,message:h.message??"Internal error",...h.data!==void 0&&{data:h.data}}};o&&this._taskMessageQueue&&f?await this._enqueueTaskMessage(o,{type:"error",message:_,timestamp:Date.now()},a?.sessionId):await a?.send(_)}).catch(h=>this._onerror(new Error(`Failed to send response: ${h}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===m&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:t,...r}=e.params,a=Number(t),o=this._progressHandlers.get(a);if(!o){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(a),u=this._timeoutInfo.get(a);if(u&&i&&u.resetTimeoutOnProgress)try{this._resetTimeout(a)}catch(f){this._responseHandlers.delete(a),this._progressHandlers.delete(a),this._cleanupTimeout(a),i(f);return}o(r)}_onresponse(e){let t=Number(e.id),r=this._requestResolvers.get(t);if(r){if(this._requestResolvers.delete(t),N(e))r(e);else{let i=new d(e.error.code,e.error.message,e.error.data);r(i)}return}let a=this._responseHandlers.get(t);if(a===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(t),this._cleanupTimeout(t);let o=!1;if(N(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let u=i.task;typeof u.taskId=="string"&&(o=!0,this._taskProgressTokens.set(u.taskId,t))}}if(o||this._progressHandlers.delete(t),N(e))a(e);else{let i=d.fromError(e.error.code,e.error.message,e.error.data);a(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,t,r){let{task:a}=r??{};if(!a){try{yield{type:"result",result:await this.request(e,t,r)}}catch(i){yield{type:"error",error:i instanceof d?i:new d(l.InternalError,String(i))}}return}let o;try{let i=await this.request(e,pe,r);if(i.task)o=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new d(l.InternalError,"Task creation did not return a task");for(;;){let u=await this.getTask({taskId:o},r);if(yield{type:"taskStatus",task:u},A(u.status)){u.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:o},t,r)}:u.status==="failed"?yield{type:"error",error:new d(l.InternalError,`Task ${o} failed`)}:u.status==="cancelled"&&(yield{type:"error",error:new d(l.InternalError,`Task ${o} was cancelled`)});return}if(u.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:o},t,r)};return}let f=u.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(g=>setTimeout(g,f)),r?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof d?i:new d(l.InternalError,String(i))}}}request(e,t,r){let{relatedRequestId:a,resumptionToken:o,onresumptiontoken:i,task:u,relatedTask:f}=r??{};return new Promise((g,m)=>{let v=s(k=>{m(k)},"earlyReject");if(!this._transport){v(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),u&&this.assertTaskCapability(e.method)}catch(k){v(k);return}r?.signal?.throwIfAborted();let c=this._requestMessageId++,y={...e,jsonrpc:"2.0",id:c};r?.onprogress&&(this._progressHandlers.set(c,r.onprogress),y.params={...e.params,_meta:{...e.params?._meta||{},progressToken:c}}),u&&(y.params={...y.params,task:u}),f&&(y.params={...y.params,_meta:{...y.params?._meta||{},[D]:f}});let h=s(k=>{this._responseHandlers.delete(c),this._progressHandlers.delete(c),this._cleanupTimeout(c),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:c,reason:String(k)}},{relatedRequestId:a,resumptionToken:o,onresumptiontoken:i}).catch(C=>this._onerror(new Error(`Failed to send cancellation: ${C}`)));let T=k instanceof d?k:new d(l.RequestTimeout,String(k));m(T)},"cancel");this._responseHandlers.set(c,k=>{if(!r?.signal?.aborted){if(k instanceof Error)return m(k);try{let T=H(t,k.result);T.success?g(T.data):m(T.error)}catch(T){m(T)}}}),r?.signal?.addEventListener("abort",()=>{h(r?.signal?.reason)});let _=r?.timeout??ut,j=s(()=>h(d.fromError(l.RequestTimeout,"Request timed out",{timeout:_})),"timeoutHandler");this._setupTimeout(c,_,r?.maxTotalTimeout,j,r?.resetTimeoutOnProgress??!1);let I=f?.taskId;if(I){let k=s(T=>{let C=this._responseHandlers.get(c);C?C(T):this._onerror(new Error(`Response handler missing for side-channeled request ${c}`))},"responseResolver");this._requestResolvers.set(c,k),this._enqueueTaskMessage(I,{type:"request",message:y,timestamp:Date.now()}).catch(T=>{this._cleanupTimeout(c),m(T)})}else this._transport.send(y,{relatedRequestId:a,resumptionToken:o,onresumptiontoken:i}).catch(k=>{this._cleanupTimeout(c),m(k)})})}async getTask(e,t){return this.request({method:"tasks/get",params:e},ge,t)}async getTaskResult(e,t,r){return this.request({method:"tasks/result",params:e},t,r)}async listTasks(e,t){return this.request({method:"tasks/list",params:e},ke,t)}async cancelTask(e,t){return this.request({method:"tasks/cancel",params:e},be,t)}async notification(e,t){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let r=t?.relatedTask?.taskId;if(r){let u={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[D]:t.relatedTask}}};await this._enqueueTaskMessage(r,{type:"notification",message:u,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!t?.relatedRequestId&&!t?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let u={...e,jsonrpc:"2.0"};t?.relatedTask&&(u={...u,params:{...u.params,_meta:{...u.params?._meta||{},[D]:t.relatedTask}}}),this._transport?.send(u,t).catch(f=>this._onerror(f))});return}let i={...e,jsonrpc:"2.0"};t?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[D]:t.relatedTask}}}),await this._transport.send(i,t)}setRequestHandler(e,t){let r=B(e);this.assertRequestHandlerCapability(r),this._requestHandlers.set(r,(a,o)=>{let i=G(e,a);return Promise.resolve(t(i,o))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,t){let r=B(e);this._notificationHandlers.set(r,a=>{let o=G(e,a);return Promise.resolve(t(o))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let t=this._taskProgressTokens.get(e);t!==void 0&&(this._progressHandlers.delete(t),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,t,r){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let a=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,t,r??this._transport?.sessionId,a)}async _clearTaskQueue(e,t){if(this._taskMessageQueue){let r=await this._taskMessageQueue.dequeueAll(e,t);for(let a of r)if(a.type==="request"&&J(a.message)){let o=a.message.id,i=this._requestResolvers.get(o);i?(i(new d(l.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(o)):this._onerror(new Error(`Resolver missing for request ${o} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,t,r){let a=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e,r);o?.pollInterval&&(a=o.pollInterval)}catch{}return new Promise((o,i)=>{if(t.aborted){i(new d(l.InvalidRequest,"Request cancelled"));return}let u=setTimeout(o,a);t.addEventListener("abort",()=>{clearTimeout(u),i(new d(l.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,t){let r=this._taskStore;if(!r)throw new Error("No task store configured");return{createTask:s(async a=>{if(!e)throw new Error("No request provided");return await r.createTask(a,e.id,{method:e.method,params:e.params},t)},"createTask"),getTask:s(async a=>{let o=await r.getTask(a,t);if(!o)throw new d(l.InvalidParams,"Failed to retrieve task: Task not found");return o},"getTask"),storeTaskResult:s(async(a,o,i)=>{await r.storeTaskResult(a,o,i,t);let u=await r.getTask(a,t);if(u){let f=K.parse({method:"notifications/tasks/status",params:u});await this.notification(f),A(u.status)&&this._cleanupTaskProgressHandler(a)}},"storeTaskResult"),getTaskResult:s(a=>r.getTaskResult(a,t),"getTaskResult"),updateTaskStatus:s(async(a,o,i)=>{let u=await r.getTask(a,t);if(!u)throw new d(l.InvalidParams,`Task "${a}" not found - it may have been cleaned up`);if(A(u.status))throw new d(l.InvalidParams,`Cannot update task "${a}" from terminal status "${u.status}" to "${o}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await r.updateTaskStatus(a,o,i,t);let f=await r.getTask(a,t);if(f){let g=K.parse({method:"notifications/tasks/status",params:f});await this.notification(g),A(f.status)&&this._cleanupTaskProgressHandler(a)}},"updateTaskStatus"),listTasks:s(a=>r.listTasks(a,t),"listTasks")}}};function $e(n){return n!==null&&typeof n=="object"&&!Array.isArray(n)}s($e,"isPlainObject");function ko(n,e){let t={...n};for(let r in e){let a=r,o=e[a];if(o===void 0)continue;let i=t[a];$e(i)&&$e(o)?t[a]={...i,...o}:t[a]=o}return t}s(ko,"mergeCapabilities");var Ve=ie(X(),1),Ue=ie(He(),1);function Ct(){let n=new Ve.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Ue.default)(n),n}s(Ct,"createDefaultAjvInstance");var Le=class{static{s(this,"AjvJsonSchemaValidator")}constructor(e){this._ajv=e??Ct()}getValidator(e){let t="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return r=>t(r)?{valid:!0,data:r,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(t.errors)}}};function Eo(n,e,t){if(!n)throw new Error(`${t} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!n.tools?.call)throw new Error(`${t} does not support task creation for tools/call (required for ${e})`);break;default:break}}s(Eo,"assertToolsCallTaskCapability");function Oo(n,e,t){if(!n)throw new Error(`${t} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!n.sampling?.createMessage)throw new Error(`${t} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!n.elicitation?.create)throw new Error(`${t} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}s(Oo,"assertClientRequestTaskCapability");export{H as a,Te as b,we as c,Se as d,ko as e,Le as f,Eo as g,Oo as h};
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{Ib as P,Lb as h,Mb as E}from"./chunk-ABF3W2MO.js";import{c as u,n as f}from"./chunk-VVNV4NNW.js";import{A as d}from"./chunk-PF56N7ZY.js";import{a as c}from"./chunk-FTQLQJQV.js";var S=d.object({id:u,runIds:d.array(u).min(2).max(100)}).strict();function j(r){return async s=>{let i=S.parse(s),l=await r.selectedProfile();if(!l)throw new Error("Select a Profile before comparing its evaluation runs.");let a=[];for(let e of i.runIds){let t=await r.store.getProfileEvaluationRun(e);if(!t||f(t.profileRef)!==f(l.ref))throw new Error(`Profile evaluation run ${e} is unavailable in the selected Profile.`);a.push({manifest:t.manifest,result:t.metric})}let o=await r.store.getProfileEvaluationComparison(i.id),n=P({id:i.id,members:a,createdAt:o?.createdAt??new Date().toISOString()});return r.store.saveProfileEvaluationComparison(l.ref,n)}}c(j,"createProfileEvaluationComparisonService");import{promises as m}from"node:fs";import v from"node:path";var y=d.object({id:u,evidenceKind:d.enum(["run","suite","comparison"]),evidenceId:u}).strict();function w(r){return v.join(r,"evals","reports")}c(w,"reportDirectory");async function R(r){let s=await m.lstat(r).catch(i=>{if(i.code==="ENOENT")return null;throw i});if(s&&(!s.isDirectory()||s.isSymbolicLink()))throw new Error("Profile evaluation report directory must be a regular directory.");s||await m.mkdir(r)}c(R,"ensureRegularDirectory");async function k(r){let s,i;if(r.evidenceKind==="run")s=[r.evidenceId],i="";else if(r.evidenceKind==="suite"){let o=await r.store.getProfileEvaluationSuiteRun(r.evidenceId);if(!o||o.profileId!==r.profileRef.profileId)throw new Error("Profile evaluation suite is unavailable.");s=o.members.map(n=>n.runManifest.id),i=o.contentHash}else{let o=await r.store.getProfileEvaluationComparison(r.evidenceId);if(!o)throw new Error("Profile evaluation comparison is unavailable.");s=o.members.map(n=>n.runManifest.id),i=o.contentHash}let l=await Promise.all(s.map(o=>r.store.getProfileEvaluationRun(o)));if(l.some(o=>!o||f(o.profileRef)!==f(r.profileRef)))throw new Error("Profile evaluation report is missing authorized run evidence.");let a=l;if(r.evidenceKind==="run"&&(i=a[0].contentHash),r.evidenceKind!=="run"){let o=r.evidenceKind==="suite"?(await r.store.getProfileEvaluationSuiteRun(r.evidenceId)).members.map(n=>n.runHash):(await r.store.getProfileEvaluationComparison(r.evidenceId)).members.map(n=>n.metricResultHash);for(let[n,e]of a.entries())if(r.evidenceKind==="suite"&&o[n]!==e.contentHash||r.evidenceKind==="comparison"&&o[n]!==e.metric.contentHash)throw new Error("Profile evaluation report evidence differs from retained member runs.")}return{runs:a,primary:{kind:r.evidenceKind,id:r.evidenceId,contentHash:i}}}c(k,"loadRuns");async function H(r){let s=y.parse(r.request),{runs:i,primary:l}=await k({store:r.store,profileRef:r.profileRef,evidenceKind:s.evidenceKind,evidenceId:s.evidenceId}),a=c(e=>[...new Map(e.map(t=>[f(t),t])).values()],"unique"),o=a(i.map(e=>f(e.manifest.metricPolicy))),n=i.map(e=>e.metric.value).filter(e=>e!==null);return h({schemaVersion:"openpond.profileEvaluationReport.v1",id:s.id,createdAt:new Date().toISOString(),testedSources:a(i.map(e=>({profileId:e.manifest.profileEvaluation.profileId,sourceRevision:e.manifest.profileEvaluation.sourceRevision,harnessRelease:e.manifest.profileEvaluation.harnessRelease}))),tasksetReleases:a(i.map(e=>e.manifest.tasksetRelease)),metricPolicyHashes:o,modelConfigurationHashes:a(i.map(e=>e.manifest.policy.kind==="model"?e.manifest.policy.configurationHash:f(e.manifest.policy))),evidence:[l,...i.filter(e=>l.kind!=="run"||e.manifest.id!==l.id).map(e=>({kind:"run",id:e.manifest.id,contentHash:e.contentHash}))],summary:{totalChecks:i.length,passedChecks:i.filter(e=>e.passed).length,failedChecks:i.filter(e=>!e.passed&&e.metric.value!==null).length,unscoredChecks:i.filter(e=>!e.passed&&e.metric.value===null).length,meanScore:o.length===1&&n.length===i.length?n.reduce((e,t)=>e+t,0)/n.length:null}})}c(H,"buildProfileEvaluationReport");function q(r){return{list:c(async()=>{let l=await r.selectedProfile();if(!l)return[];let a=w(l.sourcePath),o=await m.lstat(a).catch(t=>{if(t.code==="ENOENT")return null;throw t});if(!o)return[];if(!o.isDirectory()||o.isSymbolicLink())throw new Error("Profile evaluation report directory is unsafe.");let n=await m.readdir(a,{withFileTypes:!0});return(await Promise.all(n.filter(t=>t.name.endsWith(".json")).map(async t=>{if(!t.isFile()||t.isSymbolicLink())throw new Error("Profile evaluation report must be a regular file.");let p=E(JSON.parse(await m.readFile(v.join(a,t.name),"utf8")));if(`${p.id}.json`!==t.name||p.testedSources.some(g=>g.profileId!==l.ref.profileId))throw new Error("Profile evaluation report differs from its source location.");return p}))).sort((t,p)=>p.createdAt.localeCompare(t.createdAt))},"list"),save:c(async l=>{let a=await r.selectedProfile();if(!a?.gitBacked)throw new Error("Select a Git-backed Profile before saving an evaluation report.");let o=await H({store:r.store,profileRef:a.ref,request:l}),n=v.join(a.sourcePath,"evals");await R(n);let e=w(a.sourcePath);return await R(e),await m.writeFile(v.join(e,`${o.id}.json`),`${JSON.stringify(o,null,2)}
2
+ import{Ib as P,Lb as h,Mb as E}from"./chunk-QAFXQHHG.js";import{c as u,n as f}from"./chunk-RCT3O3HQ.js";import{A as d}from"./chunk-X2J2P5ZT.js";import{a as c}from"./chunk-FTQLQJQV.js";var S=d.object({id:u,runIds:d.array(u).min(2).max(100)}).strict();function j(r){return async s=>{let i=S.parse(s),l=await r.selectedProfile();if(!l)throw new Error("Select a Profile before comparing its evaluation runs.");let a=[];for(let e of i.runIds){let t=await r.store.getProfileEvaluationRun(e);if(!t||f(t.profileRef)!==f(l.ref))throw new Error(`Profile evaluation run ${e} is unavailable in the selected Profile.`);a.push({manifest:t.manifest,result:t.metric})}let o=await r.store.getProfileEvaluationComparison(i.id),n=P({id:i.id,members:a,createdAt:o?.createdAt??new Date().toISOString()});return r.store.saveProfileEvaluationComparison(l.ref,n)}}c(j,"createProfileEvaluationComparisonService");import{promises as m}from"node:fs";import v from"node:path";var y=d.object({id:u,evidenceKind:d.enum(["run","suite","comparison"]),evidenceId:u}).strict();function w(r){return v.join(r,"evals","reports")}c(w,"reportDirectory");async function R(r){let s=await m.lstat(r).catch(i=>{if(i.code==="ENOENT")return null;throw i});if(s&&(!s.isDirectory()||s.isSymbolicLink()))throw new Error("Profile evaluation report directory must be a regular directory.");s||await m.mkdir(r)}c(R,"ensureRegularDirectory");async function k(r){let s,i;if(r.evidenceKind==="run")s=[r.evidenceId],i="";else if(r.evidenceKind==="suite"){let o=await r.store.getProfileEvaluationSuiteRun(r.evidenceId);if(!o||o.profileId!==r.profileRef.profileId)throw new Error("Profile evaluation suite is unavailable.");s=o.members.map(n=>n.runManifest.id),i=o.contentHash}else{let o=await r.store.getProfileEvaluationComparison(r.evidenceId);if(!o)throw new Error("Profile evaluation comparison is unavailable.");s=o.members.map(n=>n.runManifest.id),i=o.contentHash}let l=await Promise.all(s.map(o=>r.store.getProfileEvaluationRun(o)));if(l.some(o=>!o||f(o.profileRef)!==f(r.profileRef)))throw new Error("Profile evaluation report is missing authorized run evidence.");let a=l;if(r.evidenceKind==="run"&&(i=a[0].contentHash),r.evidenceKind!=="run"){let o=r.evidenceKind==="suite"?(await r.store.getProfileEvaluationSuiteRun(r.evidenceId)).members.map(n=>n.runHash):(await r.store.getProfileEvaluationComparison(r.evidenceId)).members.map(n=>n.metricResultHash);for(let[n,e]of a.entries())if(r.evidenceKind==="suite"&&o[n]!==e.contentHash||r.evidenceKind==="comparison"&&o[n]!==e.metric.contentHash)throw new Error("Profile evaluation report evidence differs from retained member runs.")}return{runs:a,primary:{kind:r.evidenceKind,id:r.evidenceId,contentHash:i}}}c(k,"loadRuns");async function H(r){let s=y.parse(r.request),{runs:i,primary:l}=await k({store:r.store,profileRef:r.profileRef,evidenceKind:s.evidenceKind,evidenceId:s.evidenceId}),a=c(e=>[...new Map(e.map(t=>[f(t),t])).values()],"unique"),o=a(i.map(e=>f(e.manifest.metricPolicy))),n=i.map(e=>e.metric.value).filter(e=>e!==null);return h({schemaVersion:"openpond.profileEvaluationReport.v1",id:s.id,createdAt:new Date().toISOString(),testedSources:a(i.map(e=>({profileId:e.manifest.profileEvaluation.profileId,sourceRevision:e.manifest.profileEvaluation.sourceRevision,harnessRelease:e.manifest.profileEvaluation.harnessRelease}))),tasksetReleases:a(i.map(e=>e.manifest.tasksetRelease)),metricPolicyHashes:o,modelConfigurationHashes:a(i.map(e=>e.manifest.policy.kind==="model"?e.manifest.policy.configurationHash:f(e.manifest.policy))),evidence:[l,...i.filter(e=>l.kind!=="run"||e.manifest.id!==l.id).map(e=>({kind:"run",id:e.manifest.id,contentHash:e.contentHash}))],summary:{totalChecks:i.length,passedChecks:i.filter(e=>e.passed).length,failedChecks:i.filter(e=>!e.passed&&e.metric.value!==null).length,unscoredChecks:i.filter(e=>!e.passed&&e.metric.value===null).length,meanScore:o.length===1&&n.length===i.length?n.reduce((e,t)=>e+t,0)/n.length:null}})}c(H,"buildProfileEvaluationReport");function q(r){return{list:c(async()=>{let l=await r.selectedProfile();if(!l)return[];let a=w(l.sourcePath),o=await m.lstat(a).catch(t=>{if(t.code==="ENOENT")return null;throw t});if(!o)return[];if(!o.isDirectory()||o.isSymbolicLink())throw new Error("Profile evaluation report directory is unsafe.");let n=await m.readdir(a,{withFileTypes:!0});return(await Promise.all(n.filter(t=>t.name.endsWith(".json")).map(async t=>{if(!t.isFile()||t.isSymbolicLink())throw new Error("Profile evaluation report must be a regular file.");let p=E(JSON.parse(await m.readFile(v.join(a,t.name),"utf8")));if(`${p.id}.json`!==t.name||p.testedSources.some(g=>g.profileId!==l.ref.profileId))throw new Error("Profile evaluation report differs from its source location.");return p}))).sort((t,p)=>p.createdAt.localeCompare(t.createdAt))},"list"),save:c(async l=>{let a=await r.selectedProfile();if(!a?.gitBacked)throw new Error("Select a Git-backed Profile before saving an evaluation report.");let o=await H({store:r.store,profileRef:a.ref,request:l}),n=v.join(a.sourcePath,"evals");await R(n);let e=w(a.sourcePath);return await R(e),await m.writeFile(v.join(e,`${o.id}.json`),`${JSON.stringify(o,null,2)}
3
3
  `,{flag:"wx"}),o},"save")}}c(q,"createProfileEvaluationReportService");export{j as a,H as b,q as c};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{v as r}from"./chunk-MVPKU72J.js";import{qb as o}from"./chunk-QAFXQHHG.js";import{l as t}from"./chunk-ZY32SZ2P.js";import{g as a}from"./chunk-RCT3O3HQ.js";import{A as e}from"./chunk-X2J2P5ZT.js";var s=e.object({profileRef:r,manifest:o,metric:t,gradeRefs:e.array(a),receiptRefs:e.array(a),passRate:e.number().min(0).max(1),passed:e.boolean(),completedAt:e.string().datetime(),contentHash:e.string().regex(/^[a-f0-9]{64}$/)}).strict();export{s as a};
@@ -0,0 +1,4 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{j as i}from"./chunk-A77DLBR4.js";import{a as f}from"./chunk-FTQLQJQV.js";var n=10*1024*1024,s=class{static{f(this,"ReadBuffer")}constructor(e){this._maxBufferSize=e?.maxBufferSize??n}append(e){if((this._buffer?.length??0)+e.length>this._maxBufferSize)throw this.clear(),new Error(`ReadBuffer exceeded maximum size of ${this._maxBufferSize} bytes`);this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
3
+ `);if(e===-1)return null;let t=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),u(t)}clear(){this._buffer=void 0}};function u(r){return i.parse(JSON.parse(r))}f(u,"deserializeMessage");function o(r){return JSON.stringify(r)+`
4
+ `}f(o,"serializeMessage");export{s as a,o as b};