openpond 0.2.55 → 0.2.56

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 (399) hide show
  1. package/dist/app-server.d.ts +10545 -10254
  2. package/dist/app-server.js +1 -1
  3. package/dist/chunks/actions-command-QU4H53OG.js +2 -0
  4. package/dist/chunks/{app-layer-Y2UERCPY.js → app-layer-NSTE5HIT.js} +1 -1
  5. package/dist/chunks/app-server-connected-apps-JHGWLBXT.js +2 -0
  6. package/dist/chunks/app-server-evaluations-GJPFWIDA.js +2 -0
  7. package/dist/chunks/app-server-harness-services-IH4G6POY.js +2 -0
  8. package/dist/chunks/app-server-runtime-DVKOZ5B6.js +2 -0
  9. package/dist/chunks/apps-BKTOR4F7.js +2 -0
  10. package/dist/chunks/chunk-25MBPJVY.js +2 -0
  11. package/dist/chunks/chunk-2D4Y3HNW.js +2 -0
  12. package/dist/chunks/chunk-2IHO4GDJ.js +2 -0
  13. package/dist/chunks/chunk-2QUCCP6Z.js +2 -0
  14. package/dist/chunks/chunk-3K4VVB7S.js +6 -0
  15. package/dist/chunks/chunk-3QIB5FXI.js +10 -0
  16. package/dist/chunks/chunk-3RCRSMWZ.js +17 -0
  17. package/dist/chunks/chunk-3VUATFZD.js +2 -0
  18. package/dist/chunks/chunk-3Z47M3YY.js +2 -0
  19. package/dist/chunks/{chunk-UA5DA5I2.js → chunk-4D7HWVWD.js} +1 -1
  20. package/dist/chunks/chunk-4EPSHPZL.js +2 -0
  21. package/dist/chunks/chunk-4NESNOK5.js +2 -0
  22. package/dist/chunks/chunk-523TE4BI.js +2 -0
  23. package/dist/chunks/{chunk-B7QDZPNX.js → chunk-5MCNZCVQ.js} +1 -1
  24. package/dist/chunks/{chunk-DLVPSCTB.js → chunk-6QSSIT62.js} +1 -1
  25. package/dist/chunks/chunk-6ZFPQYHG.js +2 -0
  26. package/dist/chunks/chunk-74IIXVAE.js +2 -0
  27. package/dist/chunks/chunk-74ZXXBGN.js +6 -0
  28. package/dist/chunks/chunk-773TH7FN.js +2 -0
  29. package/dist/chunks/chunk-7E6T7GP5.js +2 -0
  30. package/dist/chunks/chunk-7ED24PP6.js +2 -0
  31. package/dist/chunks/chunk-7HPDGZOR.js +86 -0
  32. package/dist/chunks/chunk-7KWD2I6W.js +2 -0
  33. package/dist/chunks/chunk-7PXZ4X4P.js +2 -0
  34. package/dist/chunks/chunk-A6USMRWK.js +2 -0
  35. package/dist/chunks/chunk-ABD5M2D2.js +2 -0
  36. package/dist/chunks/chunk-ACYFMLWG.js +10 -0
  37. package/dist/chunks/chunk-AN525SPP.js +6 -0
  38. package/dist/chunks/chunk-APB2STJK.js +2 -0
  39. package/dist/chunks/chunk-AY64VY4E.js +2 -0
  40. package/dist/chunks/{chunk-G6JMQGX7.js → chunk-B7RFL4N2.js} +1 -1
  41. package/dist/chunks/chunk-BLXEAZCQ.js +12 -0
  42. package/dist/chunks/chunk-D74JEERO.js +5 -0
  43. package/dist/chunks/{chunk-U2YMBCX7.js → chunk-DARVPBZ4.js} +1 -1
  44. package/dist/chunks/chunk-DBK66CJP.js +8 -0
  45. package/dist/chunks/chunk-DDMZSZFL.js +1 -0
  46. package/dist/chunks/chunk-DIO5CB6U.js +2 -0
  47. package/dist/chunks/chunk-DMFUEUAZ.js +5 -0
  48. package/dist/chunks/chunk-DMVD2RFZ.js +2 -0
  49. package/dist/chunks/chunk-DUURYZOI.js +2 -0
  50. package/dist/chunks/chunk-DZUAT3TP.js +1 -0
  51. package/dist/chunks/chunk-EIEZHFIW.js +6 -0
  52. package/dist/chunks/chunk-EIRYMSEG.js +19 -0
  53. package/dist/chunks/{chunk-R27YGT77.js → chunk-EKM2D7JU.js} +1 -1
  54. package/dist/chunks/chunk-EQFGBL3O.js +2 -0
  55. package/dist/chunks/chunk-EYPCBBMS.js +2 -0
  56. package/dist/chunks/chunk-F4KOGISR.js +10 -0
  57. package/dist/chunks/chunk-F74GBN6K.js +2 -0
  58. package/dist/chunks/chunk-FEAKTSRS.js +2 -0
  59. package/dist/chunks/chunk-FFRFSDBM.js +2 -0
  60. package/dist/chunks/chunk-FTEOCCPB.js +23 -0
  61. package/dist/chunks/chunk-FUOEIDMA.js +8 -0
  62. package/dist/chunks/{chunk-BQAF5P7K.js → chunk-FV2R5RUN.js} +2 -2
  63. package/dist/chunks/chunk-FWIPHEVA.js +12 -0
  64. package/dist/chunks/chunk-FY5KHLMW.js +2 -0
  65. package/dist/chunks/chunk-G3RXYI2L.js +6 -0
  66. package/dist/chunks/chunk-GJ2ZJFDD.js +2 -0
  67. package/dist/chunks/chunk-GLDYJM7O.js +1 -0
  68. package/dist/chunks/chunk-GPVCOEUH.js +2 -0
  69. package/dist/chunks/chunk-GW766ZSO.js +5 -0
  70. package/dist/chunks/chunk-GWCHDF2C.js +4 -0
  71. package/dist/chunks/chunk-GZ7M5XBP.js +2 -0
  72. package/dist/chunks/chunk-H6IW2R22.js +140 -0
  73. package/dist/chunks/chunk-HCYX6RHP.js +2 -0
  74. package/dist/chunks/chunk-HDL5YSAA.js +2 -0
  75. package/dist/chunks/chunk-HIOKCIL7.js +2 -0
  76. package/dist/chunks/{chunk-IODUCRBA.js → chunk-HY3GOBFJ.js} +1 -1
  77. package/dist/chunks/chunk-HZEIRHEB.js +2 -0
  78. package/dist/chunks/chunk-I2NXNMRZ.js +2 -0
  79. package/dist/chunks/chunk-I7AQMAQI.js +33 -0
  80. package/dist/chunks/chunk-IZ6DLEVY.js +2 -0
  81. package/dist/chunks/chunk-J2TWKFML.js +1871 -0
  82. package/dist/chunks/chunk-JDEEWOD7.js +2 -0
  83. package/dist/chunks/chunk-JFXWI3EN.js +6 -0
  84. package/dist/chunks/chunk-JYKRR7E5.js +5 -0
  85. package/dist/chunks/chunk-KCJVFLBB.js +2 -0
  86. package/dist/chunks/{chunk-5CMKGD43.js → chunk-KG325WTN.js} +1 -1
  87. package/dist/chunks/chunk-KUERKVEU.js +3 -0
  88. package/dist/chunks/chunk-KVTBX2UP.js +2 -0
  89. package/dist/chunks/chunk-L3KS6MOV.js +2 -0
  90. package/dist/chunks/chunk-L6K7ERG5.js +2 -0
  91. package/dist/chunks/{chunk-MH3LHSGX.js → chunk-LQQNBVEB.js} +1 -1
  92. package/dist/chunks/{chunk-BTI4N7YO.js → chunk-M4JWQSV7.js} +1 -1
  93. package/dist/chunks/chunk-MQULU465.js +2 -0
  94. package/dist/chunks/chunk-N4FFQPLR.js +2 -0
  95. package/dist/chunks/chunk-N73MU2C3.js +2 -0
  96. package/dist/chunks/chunk-NHQ36THU.js +3 -0
  97. package/dist/chunks/chunk-O6ULLQJ6.js +2 -0
  98. package/dist/chunks/chunk-O72BSKSO.js +2 -0
  99. package/dist/chunks/chunk-OGDADQGH.js +143 -0
  100. package/dist/chunks/chunk-OIUTWU6K.js +2 -0
  101. package/dist/chunks/chunk-OLLLZVHF.js +2 -0
  102. package/dist/chunks/chunk-OPNRWESL.js +3 -0
  103. package/dist/chunks/chunk-OQKJGTTO.js +4 -0
  104. package/dist/chunks/chunk-OQPJ7FJF.js +9 -0
  105. package/dist/chunks/{chunk-TERVLCRG.js → chunk-OS3LO5J3.js} +1 -1
  106. package/dist/chunks/chunk-OUVIWDL2.js +2 -0
  107. package/dist/chunks/chunk-PCSIOUHF.js +7 -0
  108. package/dist/chunks/chunk-PF5R6CMP.js +21 -0
  109. package/dist/chunks/chunk-PPAPVGJP.js +3 -0
  110. package/dist/chunks/chunk-PRGBLQVH.js +2 -0
  111. package/dist/chunks/chunk-PSGGOZFM.js +2 -0
  112. package/dist/chunks/chunk-PUZQU66L.js +2 -0
  113. package/dist/chunks/{chunk-NOTXPD2T.js → chunk-Q2QL6UWN.js} +1 -1
  114. package/dist/chunks/chunk-Q4TBTRIG.js +2 -0
  115. package/dist/chunks/chunk-Q5LEXXJG.js +16 -0
  116. package/dist/chunks/chunk-QDC4OW3S.js +2 -0
  117. package/dist/chunks/chunk-QEFHOJFE.js +7 -0
  118. package/dist/chunks/chunk-QHWGQ3A4.js +5 -0
  119. package/dist/chunks/chunk-QIKWJ2AA.js +11 -0
  120. package/dist/chunks/chunk-QNG27G3T.js +6 -0
  121. package/dist/chunks/chunk-QOGJAQDO.js +3 -0
  122. package/dist/chunks/chunk-QOTVNQDI.js +4 -0
  123. package/dist/chunks/{chunk-NNIRIUSY.js → chunk-RAXOSUSW.js} +1 -1
  124. package/dist/chunks/chunk-RNIAFXMB.js +50 -0
  125. package/dist/chunks/{chunk-SHQOIROR.js → chunk-S5ESN275.js} +3 -3
  126. package/dist/chunks/chunk-SDAUS5PY.js +2 -0
  127. package/dist/chunks/chunk-SDXFLO7J.js +5 -0
  128. package/dist/chunks/chunk-SH5CBAFC.js +2 -0
  129. package/dist/chunks/chunk-SWUEFLOH.js +2 -0
  130. package/dist/chunks/chunk-SYUKES6H.js +3 -0
  131. package/dist/chunks/chunk-T5AACNJI.js +2 -0
  132. package/dist/chunks/chunk-TRQQNFMO.js +4 -0
  133. package/dist/chunks/chunk-TVQAPBLZ.js +2 -0
  134. package/dist/chunks/chunk-UCPGRPWY.js +2 -0
  135. package/dist/chunks/chunk-UGL7WF3W.js +2 -0
  136. package/dist/chunks/chunk-UHFZHBGW.js +2 -0
  137. package/dist/chunks/{chunk-C6D4WAYN.js → chunk-UKMA4R6X.js} +2 -2
  138. package/dist/chunks/{chunk-4WEUCGJ3.js → chunk-VRIEKBBH.js} +1 -1
  139. package/dist/chunks/chunk-VYLGI3IH.js +13 -0
  140. package/dist/chunks/chunk-W45RKGM6.js +1 -0
  141. package/dist/chunks/chunk-WJ43MJ3F.js +2 -0
  142. package/dist/chunks/chunk-WMKYHXVM.js +3 -0
  143. package/dist/chunks/chunk-WN3V6KDN.js +3 -0
  144. package/dist/chunks/chunk-X4OSOOSU.js +3 -0
  145. package/dist/chunks/chunk-XDQMGUWL.js +2 -0
  146. package/dist/chunks/chunk-XTFPDQMH.js +3 -0
  147. package/dist/chunks/chunk-XVDFJ3ZF.js +2 -0
  148. package/dist/chunks/chunk-XW6HGSIT.js +8 -0
  149. package/dist/chunks/chunk-XXYGGNVM.js +2 -0
  150. package/dist/chunks/chunk-Y4OWBBDD.js +184 -0
  151. package/dist/chunks/chunk-YBT2NB32.js +2 -0
  152. package/dist/chunks/chunk-YCJO3YVD.js +10 -0
  153. package/dist/chunks/{chunk-QRAKXZOC.js → chunk-YOBN7KTF.js} +6 -6
  154. package/dist/chunks/chunk-YOQRYNLP.js +2 -0
  155. package/dist/chunks/chunk-YY7LEQGP.js +2 -0
  156. package/dist/chunks/chunk-Z4Z5UOZM.js +22 -0
  157. package/dist/chunks/chunk-Z54O534A.js +3 -0
  158. package/dist/chunks/chunk-ZCHXGRRU.js +2 -0
  159. package/dist/chunks/chunk-ZFSHBFG5.js +40 -0
  160. package/dist/chunks/chunk-ZGTOK7ZK.js +12 -0
  161. package/dist/chunks/{chunk-Q7AXHFZV.js → chunk-ZRDGQDZL.js} +1 -1
  162. package/dist/chunks/chunk-ZUJ3XUCP.js +2 -0
  163. package/dist/chunks/chunk-ZZWAQBA2.js +2 -0
  164. package/dist/chunks/cli-X25RSO2X.js +2 -0
  165. package/dist/chunks/configuration-command-6C5UO7GE.js +2 -0
  166. package/dist/chunks/connected-app-executor-IVLGQP65.js +2 -0
  167. package/dist/chunks/connected-evidence-GH2ATNEX.js +2 -0
  168. package/dist/chunks/connection-HTF6CC7M.js +2 -0
  169. package/dist/chunks/{continual-TTGJ6YTR.js → continual-6CQAMTTR.js} +3 -3
  170. package/dist/chunks/core-commands-A2DGGIPS.js +2 -0
  171. package/dist/chunks/datasets-7BNMVJOY.js +2 -0
  172. package/dist/chunks/desktop-test-3CUHVLXV.js +3 -0
  173. package/dist/chunks/dist-OMGUJYPD.js +2 -0
  174. package/dist/chunks/dist-VYC5VMQB.js +2 -0
  175. package/dist/chunks/{dist-FAJX2UBW.js → dist-ZVJPJLXR.js} +1 -1
  176. package/dist/chunks/enclave-QS4BUNDU.js +2 -0
  177. package/dist/chunks/evaluation-coordination-XEF5L7KZ.js +2 -0
  178. package/dist/chunks/experiment-improvements-KRX2DP27.js +2 -0
  179. package/dist/chunks/experiments-DFGQYA4O.js +2 -0
  180. package/dist/chunks/experiments-VFQGE4HC.js +2 -0
  181. package/dist/chunks/{extension-DWMY6D2R.js → extension-XKXXOP5N.js} +1 -1
  182. package/dist/chunks/{help-A72QDRNG.js → help-S7THC6IE.js} +1 -1
  183. package/dist/chunks/host-profile-evaluation-tools-JJQWJUBT.js +2 -0
  184. package/dist/chunks/host-profile-external-dataset-K3ICDHIP.js +2 -0
  185. package/dist/chunks/hosted-app-server-composition-BCOO5ANF.js +2 -0
  186. package/dist/chunks/hosted-experiment-improvement-NFSVS5TU.js +3 -0
  187. package/dist/chunks/hosted-harness-runtime-723S5ZSH.js +2 -0
  188. package/dist/chunks/hosted-profile-candidate-2S5LFUWD.js +3 -0
  189. package/dist/chunks/hosted-profile-compiler-2DQIFSXW.js +2 -0
  190. package/dist/chunks/hosted-profile-evaluation-control-76BTRTYD.js +2 -0
  191. package/dist/chunks/hosted-profile-evaluation-inspection-V6Z3A5XJ.js +3 -0
  192. package/dist/chunks/hosted-profile-evaluation-preparation-IDJYREW3.js +3 -0
  193. package/dist/chunks/hosted-tasksets-ANAE2PIW.js +2 -0
  194. package/dist/chunks/human-review-WR777ODH.js +2 -0
  195. package/dist/chunks/import-MLZUHITH.js +4 -0
  196. package/dist/chunks/learning-ACEVFL5M.js +2 -0
  197. package/dist/chunks/local-harness-improvement-runtime-JIQ6ZVDW.js +2 -0
  198. package/dist/chunks/local-harness-taskset-review-XVYTGAGK.js +2 -0
  199. package/dist/chunks/local-scope-HVF2GZ5W.js +2 -0
  200. package/dist/chunks/model-projects-QPO22JPA.js +2 -0
  201. package/dist/chunks/opchat-T4QTNEIY.js +3 -0
  202. package/dist/chunks/organizations-75L5DZDV.js +2 -0
  203. package/dist/chunks/{profile-NOZ6TVXL.js → profile-TFZMUEDR.js} +1 -1
  204. package/dist/chunks/profile-training-source-6GOT7AHM.js +2 -0
  205. package/dist/chunks/project-action-payload-7VGL7OER.js +2 -0
  206. package/dist/chunks/project-agent-6RRO233B.js +2 -0
  207. package/dist/chunks/published-experiment-source-DZFENAQA.js +2 -0
  208. package/dist/chunks/refiner-profile-service-UUIWFJVT.js +2 -0
  209. package/dist/chunks/runtime-A7OZXM43.js +6 -0
  210. package/dist/chunks/sandbox-command-IU5XFTJP.js +2 -0
  211. package/dist/chunks/{sandbox-template-LKGBDVJ4.js → sandbox-template-C4V6T36U.js} +1 -1
  212. package/dist/chunks/saved-work-6BMBFP43.js +2 -0
  213. package/dist/chunks/send-turn-XTAIS2JN.js +2 -0
  214. package/dist/chunks/src-CJM6HY5Y.js +326 -0
  215. package/dist/chunks/{src-ZWJ5IO7A.js → src-LMC3K6LH.js} +1 -1
  216. package/dist/chunks/standalone-experiment-turn-owner-JCY5LL5R.js +2 -0
  217. package/dist/chunks/store-chat-workflows-S72HZXQR.js +18 -0
  218. package/dist/chunks/store-continual-support-reviews-HHA6NX7K.js +7 -0
  219. package/dist/chunks/store-conversation-serving-KPC62UEY.js +2 -0
  220. package/dist/chunks/store-create-improve-QV54XIZW.js +40 -0
  221. package/dist/chunks/store-datasets-RXJ33SUN.js +86 -0
  222. package/dist/chunks/store-evaluation-results-3F3P527G.js +7 -0
  223. package/dist/chunks/store-harness-evaluation-review-settings-I2R3HPO3.js +29 -0
  224. package/dist/chunks/store-harness-memory-VINCZ4GK.js +17 -0
  225. package/dist/chunks/store-harness-refinement-candidates-EA5KFQPH.js +21 -0
  226. package/dist/chunks/store-harness-workspaces-XUM4Z66X.js +2 -0
  227. package/dist/chunks/store-human-review-RAH7WMIP.js +7 -0
  228. package/dist/chunks/store-learned-preference-migration-validation-4CI2IRUF.js +2 -0
  229. package/dist/chunks/store-learning-WLG6KFIO.js +2 -0
  230. package/dist/chunks/store-learning-credentials-WZQJ4HPJ.js +2 -0
  231. package/dist/chunks/store-local-experiments-5LUJR7GI.js +97 -0
  232. package/dist/chunks/store-model-batch-review-YEGX327M.js +2 -0
  233. package/dist/chunks/store-model-configuration-5ZURQATB.js +3 -0
  234. package/dist/chunks/store-preference-comparison-LV32MHVL.js +6 -0
  235. package/dist/chunks/store-schedules-VGTEQVKH.js +53 -0
  236. package/dist/chunks/store-sidebar-file-bookmarks-VB5GTLFY.js +18 -0
  237. package/dist/chunks/store-sidebar-preferences-GWIOG2NH.js +16 -0
  238. package/dist/chunks/store-subagents-T7R2Z6TB.js +67 -0
  239. package/dist/chunks/store-task-inbox-JJTBW76C.js +33 -0
  240. package/dist/chunks/store-task-inventory-OB3F2APC.js +10 -0
  241. package/dist/chunks/store-taskset-drafts-EKQWWFYQ.js +9 -0
  242. package/dist/chunks/store-training-G6YLFSIR.js +70 -0
  243. package/dist/chunks/store-training-jobs-RC46YBF6.js +19 -0
  244. package/dist/chunks/store-training-models-6BA43IPP.js +49 -0
  245. package/dist/chunks/store-usage-IE2U2FD3.js +63 -0
  246. package/dist/chunks/store-work-evidence-QQDKM5AQ.js +8 -0
  247. package/dist/chunks/taskset-EQRFQBYM.js +2 -0
  248. package/dist/chunks/taskset-packages-XC6HEE3K.js +2 -0
  249. package/dist/chunks/{teams-bot-H7XT23XB.js → teams-bot-EAPGPTHZ.js} +1 -1
  250. package/dist/chunks/training-UF6RPI4T.js +2 -0
  251. package/dist/chunks/web-search-CZ3NCLPY.js +2 -0
  252. package/dist/chunks/workspaces-EKKE5NAC.js +2 -0
  253. package/dist/cli.js +1 -1
  254. package/dist/index.js +1 -1
  255. package/dist/web/assets/{App-CTlAPuCY.css → App-CaRMZoxo.css} +1 -1
  256. package/dist/web/assets/App-s-CJswyt.js +154 -0
  257. package/dist/web/assets/{AppDialog-CPHTPqrx.js → AppDialog-t2Fx5tK3.js} +1 -1
  258. package/dist/web/assets/{AppTerminalPanel-BVj5Tj93.js → AppTerminalPanel-Dj1Y32oI.js} +2 -2
  259. package/dist/web/assets/{AppsView-O69zEBY3.js → AppsView-BYE5EBDJ.js} +1 -1
  260. package/dist/web/assets/{BrowserSidebar-Pr_Kpe8p.js → BrowserSidebar-jhWi4rVm.js} +1 -1
  261. package/dist/web/assets/{CartesianChart-JPqo6YOf.js → CartesianChart-C1DIx0Ia.js} +1 -1
  262. package/dist/web/assets/{CollaborationTabs-CAJcQFn2.js → CollaborationTabs-Bdr-HmOL.js} +1 -1
  263. package/dist/web/assets/{CommandMenu-B-w53n9A.js → CommandMenu-Ux2yOHAc.js} +1 -1
  264. package/dist/web/assets/{CommunityView-DbZKK8_P.js → CommunityView-DPEeVKFn.js} +1 -1
  265. package/dist/web/assets/{ComposerCreateImproveStrip-3_083PF4.js → ComposerCreateImproveStrip-CEgh4OtN.js} +1 -1
  266. package/dist/web/assets/{GetStartedView-D7JGm_6c.js → GetStartedView-CFHP0AaI.js} +1 -1
  267. package/dist/web/assets/{HostedModelLearningReview-DwgMfZ7_.js → HostedModelLearningReview-D8BGTPVN.js} +1 -1
  268. package/dist/web/assets/{HostedModelLearningSettings-JRfQadRl.js → HostedModelLearningSettings-JS1S7vNO.js} +1 -1
  269. package/dist/web/assets/{LabModelVersionDetailPage-BUYflJY_.js → LabModelVersionDetailPage-Dx5Q3xV2.js} +1 -1
  270. package/dist/web/assets/{LabSkillSidebar-BBiqk7Rf.js → LabSkillSidebar-BxffN-pN.js} +1 -1
  271. package/dist/web/assets/{LabsRoute-Ci6vUnSd.js → LabsRoute-CyYF8-dw.js} +4 -4
  272. package/dist/web/assets/{MainChatThread-BQK3oI2N.js → MainChatThread-DZpcFRFl.js} +2 -2
  273. package/dist/web/assets/MainPane-5DTtwVCk.js +65 -0
  274. package/dist/web/assets/MainPane-BIM_UJ3q.css +1 -0
  275. package/dist/web/assets/{MarkdownText-DOdOVFXL.js → MarkdownText-BR4V6lNO.js} +21 -21
  276. package/dist/web/assets/{NativeSkillSidebar-CRI_ri8z.js → NativeSkillSidebar-DU9IEgIO.js} +1 -1
  277. package/dist/web/assets/{NewExperienceSwitcher-DhYtfE68.js → NewExperienceSwitcher-mIy6FzCj.js} +1 -1
  278. package/dist/web/assets/{NewProjectDialog-D8sy1gOz.js → NewProjectDialog-RfTZTHxl.js} +1 -1
  279. package/dist/web/assets/{OutputsPage-CbWgrhXA.js → OutputsPage-Cr1Spf7S.js} +1 -1
  280. package/dist/web/assets/{ProjectsPage-DLB67lyA.js → ProjectsPage-CE6QUB-b.js} +1 -1
  281. package/dist/web/assets/{RightChatPanelStack-ozSKnDyX.js → RightChatPanelStack-T6VRWuHo.js} +1 -1
  282. package/dist/web/assets/RightSidebarHomePanel-CK0rP3WT.js +1 -0
  283. package/dist/web/assets/{ScheduledWorkPage-Cafv_QnR.js → ScheduledWorkPage-vOrYv8pp.js} +1 -1
  284. package/dist/web/assets/SettingsView-DCKVrfjj.js +5 -0
  285. package/dist/web/assets/SettingsView-Dulr_xlq.css +1 -0
  286. package/dist/web/assets/{TeamChatView-vIrmXOY_.js → TeamChatView-Bwrjr-vk.js} +2 -2
  287. package/dist/web/assets/{TerminalOverlay-CAmF__Dq.js → TerminalOverlay-DhPoKZAq.js} +1 -1
  288. package/dist/web/assets/TrainingCreationPanel-BXHfohNm.js +1 -0
  289. package/dist/web/assets/{TrainingDraftPanel-D7XZePAk.js → TrainingDraftPanel-C9cRX5qf.js} +1 -1
  290. package/dist/web/assets/{UsageSettingsSection-CYTmp7PG.js → UsageSettingsSection-CrdcSGeW.js} +1 -1
  291. package/dist/web/assets/WorkSidebarPanel-DSSikNFQ.js +1 -0
  292. package/dist/web/assets/{WorkspaceDiffPanel-DQGoIjH9.js → WorkspaceDiffPanel-BAFo0CPN.js} +6 -6
  293. package/dist/web/assets/{WorkspaceEnvironmentMenu-c1pHDskn.js → WorkspaceEnvironmentMenu-BVHAhwnJ.js} +1 -1
  294. package/dist/web/assets/WorkspaceGitDialogs-CwVoiDQ2.js +1 -0
  295. package/dist/web/assets/{WorkspaceMonacoEditor-BCKzvSj2.js → WorkspaceMonacoEditor-TxLyhzNp.js} +3 -3
  296. package/dist/web/assets/{arrow-up-right-CP4hZdrJ.js → arrow-up-right-C9aE8Mfz.js} +1 -1
  297. package/dist/web/assets/{chunk-NOJECMB7-Bhcms-w5.js → chunk-P3BRSSRD-DUGfuKA8.js} +1 -1
  298. package/dist/web/assets/{clipboard-BgrXorn-.js → clipboard-Dk158Qp4.js} +1 -1
  299. package/dist/web/assets/{cloud-upload-B_zYztb6.js → cloud-upload-k9eqBsHr.js} +1 -1
  300. package/dist/web/assets/{cssMode-DanjGgA8.js → cssMode-CO35ARZp.js} +1 -1
  301. package/dist/web/assets/{folder-open-CdVKbtGq.js → folder-open-sYgceW_f.js} +1 -1
  302. package/dist/web/assets/{folder-plus-Cc5KElB6.js → folder-plus-CS0R49m9.js} +1 -1
  303. package/dist/web/assets/{git-commit-horizontal-CjGIIgRi.js → git-commit-horizontal-DrGxH2h4.js} +1 -1
  304. package/dist/web/assets/{htmlMode-DRGDF_UL.js → htmlMode-REMmzdfq.js} +1 -1
  305. package/dist/web/assets/index-3iPNbbER.css +1 -0
  306. package/dist/web/assets/{index-BE-wXZ5R.js → index-C8aCGagb.js} +2 -2
  307. package/dist/web/assets/{info-BLj0RvhA.js → info-DLdbiUrh.js} +1 -1
  308. package/dist/web/assets/{jsonMode-CCu0j2GD.js → jsonMode-KEdMfkIf.js} +1 -1
  309. package/dist/web/assets/{lspLanguageFeatures-s_Lhm7P6.js → lspLanguageFeatures-5KZwEoxW.js} +1 -1
  310. package/dist/web/assets/{minimize-2-Cyg_zD9z.js → minimize-2-CqcI4zcM.js} +1 -1
  311. package/dist/web/assets/{monaco.contribution-CY7mRgOB.js → monaco.contribution-BJGj65F9.js} +2 -2
  312. package/dist/web/assets/{monaco.contribution-CAzXvYkn.js → monaco.contribution-Cly9Wt7L.js} +2 -2
  313. package/dist/web/assets/{monaco.contribution-mUPNK9ra.js → monaco.contribution-DO10L0zW.js} +2 -2
  314. package/dist/web/assets/{monaco.contribution-aUeLcBEg.js → monaco.contribution-omszXBEj.js} +2 -2
  315. package/dist/web/assets/{monitor-DZvOs_wC.js → monitor-BFVCcbxp.js} +1 -1
  316. package/dist/web/assets/{play-BJPzemuY.js → play-C469pVZq.js} +1 -1
  317. package/dist/web/assets/{python-B_qnnVaG.js → python-Dw0YcVy9.js} +1 -1
  318. package/dist/web/assets/{save-BDy9tA3E.js → save-CtSjPydi.js} +1 -1
  319. package/dist/web/assets/{square-Cb2c5td4.js → square-BuImvLhT.js} +1 -1
  320. package/dist/web/assets/{toggleHighContrast-MhO1JLyR.js → toggleHighContrast-DjCO9lIP.js} +1 -1
  321. package/dist/web/assets/{tsMode-DfBXJb9V.js → tsMode-BAOnxKd6.js} +1 -1
  322. package/dist/web/assets/{upload-D56kThRh.js → upload-2JkFZo3h.js} +1 -1
  323. package/dist/web/assets/{useLocalAgentSchedules-DMnGfswi.js → useLocalAgentSchedules-BNqAisfS.js} +1 -1
  324. package/dist/web/assets/useProviderSettings-C4L4wDoh.js +5 -0
  325. package/dist/web/assets/{useProviderSettings-Bw-csWbH.css → useProviderSettings-CmL_BaxP.css} +1 -1
  326. package/dist/web/assets/{useSessionTurnCache-ClAY8gze.js → useSessionTurnCache-BHU2-Jmz.js} +1 -1
  327. package/dist/web/assets/{wifi-off-C9lWJmVm.js → wifi-off-CpOAH62M.js} +1 -1
  328. package/dist/web/assets/{workers-BYzrH8by.js → workers-0QvlA2T5.js} +1 -1
  329. package/dist/web/assets/{yaml-D3T8UkT3.js → yaml-BK3qxo7D.js} +1 -1
  330. package/dist/web/index.html +2 -2
  331. package/package.json +1 -1
  332. package/dist/chunks/actions-command-WTFZA7LF.js +0 -2
  333. package/dist/chunks/app-server-runtime-2RM3N4I6.js +0 -2
  334. package/dist/chunks/apps-KDNWYO3G.js +0 -2
  335. package/dist/chunks/chunk-2DFR7PJ4.js +0 -2460
  336. package/dist/chunks/chunk-4CRM2ADK.js +0 -2
  337. package/dist/chunks/chunk-55G6B54U.js +0 -6
  338. package/dist/chunks/chunk-73G5UYBB.js +0 -12
  339. package/dist/chunks/chunk-ARQEJOEK.js +0 -33
  340. package/dist/chunks/chunk-CGBI2VYJ.js +0 -2
  341. package/dist/chunks/chunk-GGIG3XU7.js +0 -3
  342. package/dist/chunks/chunk-JIMU3KDA.js +0 -24
  343. package/dist/chunks/chunk-JUJSA7KI.js +0 -22
  344. package/dist/chunks/chunk-K5SBVO3B.js +0 -195
  345. package/dist/chunks/chunk-KD3QVRIJ.js +0 -21
  346. package/dist/chunks/chunk-L4235TRQ.js +0 -140
  347. package/dist/chunks/chunk-MVF3F5QS.js +0 -2
  348. package/dist/chunks/chunk-OULAKUIN.js +0 -2
  349. package/dist/chunks/chunk-OWNLDB2O.js +0 -2
  350. package/dist/chunks/chunk-QDHMP5FS.js +0 -2
  351. package/dist/chunks/chunk-QKD5OMDI.js +0 -2
  352. package/dist/chunks/chunk-R2BSIRYL.js +0 -3
  353. package/dist/chunks/chunk-STDMBJOQ.js +0 -9
  354. package/dist/chunks/chunk-T4QGDQHP.js +0 -4
  355. package/dist/chunks/chunk-USMZT5FZ.js +0 -18
  356. package/dist/chunks/chunk-VJEZPDBS.js +0 -5
  357. package/dist/chunks/chunk-WDFLCNRC.js +0 -8
  358. package/dist/chunks/chunk-WZYRAR7X.js +0 -16
  359. package/dist/chunks/chunk-YDT7L3VZ.js +0 -24
  360. package/dist/chunks/chunk-YUPBAWBJ.js +0 -554
  361. package/dist/chunks/cli-465VC2WP.js +0 -2
  362. package/dist/chunks/configuration-command-LAAP2EXT.js +0 -2
  363. package/dist/chunks/connected-evidence-XM626247.js +0 -2
  364. package/dist/chunks/core-commands-W7EK552V.js +0 -2
  365. package/dist/chunks/datasets-QJWYTTQL.js +0 -2
  366. package/dist/chunks/desktop-test-3B2D34NF.js +0 -3
  367. package/dist/chunks/dist-HUAE2KFZ.js +0 -2
  368. package/dist/chunks/evaluation-coordination-2MONR4AX.js +0 -2
  369. package/dist/chunks/experiment-improvements-WVQ5FK46.js +0 -2
  370. package/dist/chunks/experiments-S5UQ32QB.js +0 -2
  371. package/dist/chunks/hosted-experiment-improvement-2OWOQLHC.js +0 -3
  372. package/dist/chunks/hosted-harness-runtime-TGFMAV7W.js +0 -2
  373. package/dist/chunks/hosted-profile-candidate-WQSI6HZO.js +0 -3
  374. package/dist/chunks/hosted-profile-compiler-Z2A4TEA6.js +0 -2
  375. package/dist/chunks/hosted-profile-evaluation-control-FKGARUEE.js +0 -2
  376. package/dist/chunks/hosted-profile-evaluation-inspection-QOY2JKV4.js +0 -3
  377. package/dist/chunks/hosted-profile-evaluation-preparation-WVP6CALP.js +0 -3
  378. package/dist/chunks/human-review-TGHQKXFZ.js +0 -2
  379. package/dist/chunks/import-4UE5XNSG.js +0 -4
  380. package/dist/chunks/learning-R2XBMMEM.js +0 -2
  381. package/dist/chunks/opchat-WULL6CUP.js +0 -3
  382. package/dist/chunks/organizations-I37HISVX.js +0 -2
  383. package/dist/chunks/project-agent-T6XKC54C.js +0 -2
  384. package/dist/chunks/sandbox-command-STB47FRY.js +0 -2
  385. package/dist/chunks/src-T3KWWCAH.js +0 -322
  386. package/dist/chunks/taskset-RNYDR4GS.js +0 -2
  387. package/dist/chunks/training-M6FAPRSJ.js +0 -2
  388. package/dist/chunks/workspaces-MFZ3OO6O.js +0 -2
  389. package/dist/web/assets/App-CLFfy_Av.js +0 -154
  390. package/dist/web/assets/MainPane-D3ojiN-p.js +0 -18
  391. package/dist/web/assets/MainPane-DOWsSew1.css +0 -1
  392. package/dist/web/assets/RightSidebarHomePanel-CKs3OwhD.js +0 -1
  393. package/dist/web/assets/SettingsView-BnANbPLS.css +0 -1
  394. package/dist/web/assets/SettingsView-T1vYDPjh.js +0 -5
  395. package/dist/web/assets/TrainingCreationPanel-D75K0yk5.js +0 -1
  396. package/dist/web/assets/WorkSidebarPanel-CODMjVHY.js +0 -1
  397. package/dist/web/assets/WorkspaceGitDialogs-DrVtapQQ.js +0 -1
  398. package/dist/web/assets/index-B5re-RJy.css +0 -1
  399. package/dist/web/assets/useProviderSettings-Bv5B9eNk.js +0 -5
@@ -0,0 +1,19 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{b as I,f as $}from"./chunk-6QSSIT62.js";import{a as ve}from"./chunk-L3KS6MOV.js";import{E as ke,F as Re}from"./chunk-I7AQMAQI.js";import{f as U}from"./chunk-H7IWJN7L.js";import{a as s}from"./chunk-FTQLQJQV.js";import{createRequire as at}from"node:module";import{createHash as Qe,randomUUID as et}from"node:crypto";import{spawn as uo}from"node:child_process";import{existsSync as S}from"node:fs";import{cp as fo,mkdir as x,readFile as st,readdir as it,rename as Pe,rm as we,symlink as po,writeFile as z}from"node:fs/promises";import u from"node:path";function ne(e=null){return{actionCount:0,generatedAt:null,manifestPath:null,registryPath:null,stale:!0,error:e}}s(ne,"emptyProfileCatalogState");function re(e=null){return{skillCount:0,generatedAt:null,stale:!0,error:e}}s(re,"emptyProfileSkillCatalogState");function ae(){return{status:"ready",requirementCount:0,blockingCount:0,optionalMissingCount:0,readyCount:0,requirements:[],blockingRequirements:[]}}s(ae,"emptyProfileSetupGate");function K(){return{changedAgents:[],newAgents:[],deletedAgents:[],changedSkills:[],changedActions:[],changedExtensions:[],setupChanges:[],envRequirementChanges:[],files:[]}}s(K,"emptyProfileDiffSummary");function se(e=null){return{state:e?"error":"none",message:e??"No active OpenPond profile.",agentCount:0,actionCount:0,defaultAction:null,checkFresh:!1,checkStaleReason:e??"No active profile.",localHead:null,hostedHead:null}}s(se,"emptyProfileSummary");import{existsSync as G}from"node:fs";import{readFile as It,stat as kt}from"node:fs/promises";import V from"node:path";var be=".openpond/agent-manifest.json",Ee=".openpond/action-registry.json",Rt=".openpond/source-upload-metadata.json",vt=".openpond/agent-package-origin.json";async function _e(e){return Me({agentId:"default",sourcePath:e,preferred:!0})}s(_e,"loadProfileActionCatalog");async function $e(e){if(e.length===0)return{catalog:{actionCount:0,generatedAt:null,manifestPath:null,registryPath:null,stale:!1,error:null},actionCatalog:[],sourceSetupRequirements:[]};let t=[...e.filter(c=>c.preferred),...e.filter(c=>!c.preferred)],o=await Promise.all(t.map(Me)),n=new Map,r=[];for(let c of o)for(let l of c.actionCatalog){let d=n.has(l.id)?`${l.agentId??"agent"}.${l.sourceActionId??l.id}`:l.id,p=d===l.id?l:{...l,id:d};n.set(d,p),r.push(p)}let a=Et(o.map(c=>c.catalog.generatedAt)),i=o.map(c=>c.catalog.error).filter(Boolean);return{catalog:{actionCount:r.length,generatedAt:a,manifestPath:o.find(c=>c.catalog.manifestPath)?.catalog.manifestPath??null,registryPath:o.find(c=>c.catalog.registryPath)?.catalog.registryPath??null,stale:o.some(c=>c.catalog.stale),error:i.length>0?i.join("; "):null},actionCatalog:r,sourceSetupRequirements:o.flatMap(c=>c.sourceSetupRequirements)}}s($e,"loadProfileActionCatalogForSources");async function Me(e){let t=e.sourcePath,o=V.join(t,be),n=V.join(t,Ee),r=V.join(t,Rt),a=V.join(t,vt);try{let i=await X(o),c=await X(n),l=await X(r),d=y(await X(a)),p=y(y(i)?.inputSchemas),h=Oe(y(l)?.setupRequirements)??[],v=xt(h),A=new Map;for(let g of[...ie(y(i)?.actionCatalog),...ie(y(c)?.actions),...ie(y(i)?.actions)]){let j=m(g.id)??m(g.name);if(!j)continue;let C=A.get(j),At=Ot({sourceRequirementsByAction:v,actionId:j,actionName:m(g.name)}),St=_t(Oe(g.setupRequirements)??C?.setupRequirements??[],At),Ct={id:j,agentId:e.agentId,sourcePath:t,sourceActionId:j,name:m(g.name)??C?.name??j,label:m(g.label)??C?.label??Tt(j),description:m(g.description)??C?.description??null,visibility:m(g.visibility)??C?.visibility??"default",inputSchema:qt(g.inputSchema,p)??C?.inputSchema??null,outputSchema:je(g.outputSchema)??C?.outputSchema??null,approvalPolicy:y(g.approvalPolicy)??C?.approvalPolicy??null,artifactPolicy:y(g.artifactPolicy)??C?.artifactPolicy??null,setupRequirements:St,mcp:y(g.mcp)??C?.mcp??null,schedulePolicy:y(g.schedulePolicy)??C?.schedulePolicy??null,trace:bt(y(g.trace)??C?.trace??null,d),implementation:y(g.implementation)??C?.implementation??null,invokesModel:typeof g.invokesModel=="boolean"?g.invokesModel:C?.invokesModel};A.set(j,Ct)}let M=Array.from(A.values()).filter(g=>g.visibility!=="internal"&&g.visibility!=="debug"),L=[...i?[]:[be],...c?[]:[Ee]],_=await jt([o,n]);return{catalog:{actionCount:M.length,generatedAt:_,manifestPath:G(o)?o:null,registryPath:G(n)?n:null,stale:L.length>0,error:L.length>0?Mt(e,L):null},actionCatalog:M,sourceSetupRequirements:h}}catch(i){return{catalog:{actionCount:0,generatedAt:null,manifestPath:G(o)?o:null,registryPath:G(n)?n:null,stale:!0,error:i instanceof Error?i.message:String(i)},actionCatalog:[],sourceSetupRequirements:[]}}}s(Me,"loadProfileActionCatalogSource");function bt(e,t){if(!t)return e;let o=m(t.versionId),n=m(t.digest);return!o||!n?e:{...e??{},agentVersionId:o,agentPackageDigest:n,validationReceiptIds:xe(t.validationReceiptIds),evalReceiptIds:xe(t.evalReceiptIds)}}s(bt,"mergeAgentPackageTrace");function xe(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"&&t.trim().length>0):[]}s(xe,"stringArray");function Et(e){let t=0;for(let o of e){if(!o)continue;let n=Date.parse(o);Number.isFinite(n)&&(t=Math.max(t,n))}return t>0?new Date(t).toISOString():null}s(Et,"latestIso");function xt(e){let t=new Map;for(let o of e){let n=[m(o.actionId),m(o.sourceActionId),m(o.actionName)].filter(r=>!!r);for(let r of n){let a=t.get(r)??[];a.push(o),t.set(r,a)}}return t}s(xt,"sourceSetupRequirementsByAction");function Ot(e){return[...e.sourceRequirementsByAction.get(e.actionId)??[],...e.actionName&&e.actionName!==e.actionId?e.sourceRequirementsByAction.get(e.actionName)??[]:[]].map(o=>({...o,source:"source_upload_metadata"}))}s(Ot,"setupRequirementsForActionSource");function _t(e,t){if(t.length===0)return e;let o=[],n=new Set;for(let r of[...e,...t]){let a=$t(r);n.has(a)||(n.add(a),o.push(r))}return o}s(_t,"mergeSetupRequirements");function $t(e){return[m(e.actionId)??m(e.sourceActionId)??m(e.actionName)??"",m(e.kind)??m(e.type)??"",m(e.name)??m(e.key)??m(e.provider)??m(e.tool)??m(e.command)??m(e.packageName)??m(e.path)??m(e.repo)??m(e.url)??m(e.id)??""].join(":")}s($t,"setupRequirementIdentity");function Mt(e,t){return[`Profile agent ${e.agentId} at ${e.sourcePath} is missing SDK catalog artifact(s): ${t.join(", ")}.`,"Run `openpond profile check --kind all` after source materialization so each enabled profile agent has inspect/build artifacts."].join(" ")}s(Mt,"missingSourceArtifactsMessage");async function X(e){return G(e)?JSON.parse(await It(e,"utf8")):null}s(X,"readJsonIfExists");async function jt(e){let t=0;for(let o of e){if(!G(o))continue;let n=await kt(o);t=Math.max(t,n.mtimeMs)}return t>0?new Date(t).toISOString():null}s(jt,"latestMtime");function y(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}s(y,"asRecord");function ie(e){return Array.isArray(e)?e.filter(t=>!!y(t)):[]}s(ie,"records");function Oe(e){return Array.isArray(e)?e.filter(t=>!!y(t)):null}s(Oe,"recordArray");function m(e){return typeof e=="string"&&e.trim()?e.trim():null}s(m,"text");function je(e){return m(e)??y(e)}s(je,"schemaValue");function qt(e,t){let o=je(e);return typeof o!="string"?o:y(t?.[o])??o}s(qt,"resolvedSchemaValue");function Tt(e){let t=e.replace(/[._-]+/g," ").trim();return t?t.replace(/\b\w/g,o=>o.toUpperCase()):e}s(Tt,"titleFromActionId");var Y=class extends Error{static{s(this,"OpenPondProfileSetupRequiredError")}code="agent_source_setup_required";details;constructor(t,o){let n=o.blockingRequirements.map(r=>r.label);super(["agent_source_setup_required",`Profile action ${t} has unresolved required setup.`,n.length?`Missing setup: ${n.join(", ")}`:""].filter(Boolean).join(`
3
+ `)),this.name="OpenPondProfileSetupRequiredError",this.details={error:"agent_source_setup_required",actionId:t,setupGate:o,missing:n,blockingSetupRequirements:o.blockingRequirements,setupRequirements:o.requirements}}};function Z(e){let t=new Map;for(let i of e.sourceSetupRequirements??[]){let c=Ft(i);if(e.actionId&&c&&c!==e.actionId&&P(i.actionName)!==e.actionId&&P(i.sourceActionId)!==e.actionId)continue;let l=qe({record:i,source:"source_upload_metadata",actionId:c});l&&t.set(l.ref,l)}for(let i of e.actionCatalog)if(!(e.actionId&&i.id!==e.actionId&&i.name!==e.actionId))for(let c of i.setupRequirements??[]){let l=qe({record:c,source:"action_catalog",actionId:i.id});l&&t.set(l.ref,l)}let o=Array.from(t.values()),n=o.filter(i=>i.blocking),r=o.filter(i=>!i.required&&!ce(i.status)).length,a=o.filter(i=>ce(i.status)).length;return{status:Lt(n),requirementCount:o.length,blockingCount:n.length,optionalMissingCount:r,readyCount:a,requirements:o,blockingRequirements:n}}s(Z,"buildOpenPondProfileSetupGate");function le(e,t){if(t.blockingRequirements.length>0)throw new Y(e,t)}s(le,"assertOpenPondProfileActionReady");function Nt(e){let t=e.actionId?`${e.actionId}: `:"",o=e.required?"required":"optional";return`${t}${e.label} (${o}, ${e.status})`}s(Nt,"formatOpenPondProfileSetupRequirement");function qe(e){let t=e.source==="action_catalog"&&P(e.record.source)==="source_upload_metadata"?"source_upload_metadata":e.source,o=P(e.record.kind)??P(e.record.type),n=P(e.record.label)??P(e.record.name)??P(e.record.key)??P(e.record.provider)??P(e.record.tool)??P(e.record.command)??P(e.record.packageName)??P(e.record.path)??P(e.record.repo)??P(e.record.url)??P(e.record.id)??o??"setup requirement",r=e.record.required!==!1,a=Ht(e.record);return{ref:[t,e.actionId??"source",o??"requirement",n].join(":"),source:t,actionId:e.actionId,kind:o,label:n,status:a,required:r,blocking:r&&!ce(a)}}s(qe,"setupRequirementFromRecord");function Ft(e){return P(e.actionId)??P(e.sourceActionId)??P(e.actionName)}s(Ft,"setupRequirementActionId");function Ht(e){let t=P(e.status)??P(e.state);return t?t==="satisfied"||t==="connected"||t==="provided"?"ready":t:typeof e.satisfied=="boolean"?e.satisfied?"ready":"setup_required":typeof e.ready=="boolean"&&e.ready?"ready":"setup_required"}s(Ht,"setupStatus");function Lt(e){return e.length===0?"ready":e.some(t=>["blocked","unsupported","unsupported_dependency","stale"].includes(t.status))?"blocked":"setup_required"}s(Lt,"gateStatus");function ce(e){return e==="ready"||e==="disabled"}s(ce,"isReadyStatus");function P(e){return typeof e=="string"&&e.trim()?e.trim():null}s(P,"text");import{spawn as Ut}from"node:child_process";import{randomUUID as Gt}from"node:crypto";import{existsSync as ue}from"node:fs";import{readFile as Bt,rm as Dt,writeFile as Fe}from"node:fs/promises";import Q from"node:path";var He=["**/node_modules/","**/.bun/","**/.env","**/.env.*","**/.openpond/traces/","**/.openpond/vendor/","**/.openpond/eval-results.json","**/.openpond/artifact-index.json","**/.openpond/source-upload-cache.json",""].join(`
4
+ `);async function Le(e){if(!ue(Q.join(e,".git"))){let a=await k(e,["init","-b","main"]);if(a.code!==0)throw new Error(T("git init",a))}let t=Q.join(e,".gitignore");if(ue(t)?await zt(t):await Fe(t,He,"utf8"),await Wt(e))return;let o=await N(e);if(!o.dirty&&o.files.length===0)return;let n=await k(e,["add","-A"]);if(n.code!==0)throw new Error(T("git add",n));let r=await k(e,["commit","-m","Initialize OpenPond profile"],{env:{...process.env,GIT_AUTHOR_NAME:process.env.GIT_AUTHOR_NAME||"OpenPond",GIT_AUTHOR_EMAIL:process.env.GIT_AUTHOR_EMAIL||"openpond@example.invalid",GIT_COMMITTER_NAME:process.env.GIT_COMMITTER_NAME||"OpenPond",GIT_COMMITTER_EMAIL:process.env.GIT_COMMITTER_EMAIL||"openpond@example.invalid"}});if(r.code!==0&&!/nothing to commit/i.test(r.stdout+r.stderr))throw new Error(T("git commit",r))}s(Le,"ensureProfileGitRepo");async function zt(e){let t=await Bt(e,"utf8").catch(()=>""),o=He.split(/\r?\n/).map(r=>r.trim()).filter(Boolean).filter(r=>!t.split(/\r?\n/).some(a=>a.trim()===r));if(o.length===0)return;let n=t.endsWith(`
5
+ `)||t.length===0?"":`
6
+ `;await Fe(e,`${t}${n}${o.join(`
7
+ `)}
8
+ `,"utf8")}s(zt,"ensureProfileGitignoreRules");async function N(e){if(!ue(Q.join(e,".git")))return{isRepo:!1,branch:null,head:null,shortHead:null,dirty:!1,upstream:null,ahead:null,behind:null,remoteUrl:null,files:[],error:null};let t=await k(e,["rev-parse","--is-inside-work-tree"]);if(t.code!==0||t.stdout.trim()!=="true")return{isRepo:!1,branch:null,head:null,shortHead:null,dirty:!1,upstream:null,ahead:null,behind:null,remoteUrl:null,files:[],error:t.stderr.trim()||t.stdout.trim()||"not a Git work tree"};let[o,n,r,a,i]=await Promise.all([D(e,["branch","--show-current"]),D(e,["rev-parse","HEAD"]),k(e,["status","--porcelain=v1","-uall"]),D(e,["rev-parse","--abbrev-ref","--symbolic-full-name","@{u}"]),D(e,["remote","get-url","origin"])]),c=r.code===0?Vt(r.stdout):[],l=a?await Kt(e):{ahead:null,behind:null},d=n||null;return{isRepo:!0,branch:o||null,head:d,shortHead:d?d.slice(0,12):null,dirty:c.length>0,upstream:a,ahead:l.ahead,behind:l.behind,remoteUrl:i,files:c,error:r.code===0?null:T("git status",r)}}s(N,"loadProfileGitState");async function Ue(e,t){let o=await N(e);if(!o.isRepo)throw new Error(o.error??"Active OpenPond profile source is not a Git repo.");if(!o.dirty)return{committed:!1,stdout:"",stderr:"",state:o};let n=await k(e,["add","-A"]);if(n.code!==0)throw new Error(T("git add",n));let r=await k(e,["commit","-m",t]);if(r.code!==0)throw new Error(T("git commit",r));return{committed:!0,stdout:r.stdout,stderr:r.stderr,state:await N(e)}}s(Ue,"commitProfileChanges");async function Ge(e){return D(e,["rev-parse","HEAD"])}s(Ge,"profileGitHead");async function tn(e){let t=await N(e.repoPath);if(!t.isRepo)throw new Error(t.error??"Active OpenPond profile source is not a Git repo.");let o=e.baseCommit??t.head;if(!o)throw new Error("A Profile benchmark requires an admitted Git commit.");let r=`refs/openpond/benchmarks/${Jt(e.runId)}`,a=await D(e.repoPath,["rev-parse","--verify",r]);if(a)return{ref:r,commit:a,baseCommit:o,paths:e.files.map(d=>Te(d.path)).sort()};let i=e.files.map(d=>({...d,path:Te(d.path)})).sort((d,p)=>d.path.localeCompare(p.path));if(!i.length)throw new Error("A Profile benchmark commit requires at least one file.");if(new Set(i.map(d=>d.path)).size!==i.length)throw new Error("A Profile benchmark commit cannot contain duplicate paths.");let c=Q.join(e.repoPath,".git",`openpond-benchmark-index-${Gt()}`),l={...process.env,GIT_INDEX_FILE:c,GIT_AUTHOR_NAME:process.env.GIT_AUTHOR_NAME||"OpenPond",GIT_AUTHOR_EMAIL:process.env.GIT_AUTHOR_EMAIL||"openpond@example.invalid",GIT_COMMITTER_NAME:process.env.GIT_COMMITTER_NAME||"OpenPond",GIT_COMMITTER_EMAIL:process.env.GIT_COMMITTER_EMAIL||"openpond@example.invalid"};try{await B(e.repoPath,["read-tree",o],"git read-tree",{env:l});for(let h of i){let v=await B(e.repoPath,["hash-object","-w","--stdin"],`git hash-object ${h.path}`,{env:l,input:h.contents});await B(e.repoPath,["update-index","--add","--cacheinfo",`100644,${v.stdout.trim()},${h.path}`],`git update-index ${h.path}`,{env:l})}let d=await B(e.repoPath,["write-tree"],"git write-tree",{env:l}),p=await B(e.repoPath,["commit-tree",d.stdout.trim(),"-p",o,"-m",e.message??`Preserve OpenPond benchmark ${e.runId}`],"git commit-tree",{env:l});return await B(e.repoPath,["update-ref",r,p.stdout.trim()],"git update-ref",{env:l}),{ref:r,commit:p.stdout.trim(),baseCommit:o,paths:i.map(h=>h.path)}}finally{await Dt(c,{force:!0}).catch(()=>{})}}s(tn,"commitProfileBenchmarkRef");function Jt(e){let t=e.trim().replace(/[^A-Za-z0-9._-]+/g,"-");if(!t||t==="."||t==="..")throw new Error("Benchmark run id cannot form a safe Git ref.");return t}s(Jt,"safeGitSegment");function Te(e){let t=e.trim().replaceAll("\\","/");if(!t||t.startsWith("/")||t.split("/").some(o=>!o||o==="."||o==="..")||t.includes("\0"))throw new Error(`Unsafe benchmark Git path: ${e}`);return t}s(Te,"safeGitPath");async function Wt(e){return(await k(e,["rev-parse","--verify","HEAD"])).code===0}s(Wt,"hasGitHead");async function Kt(e){let t=await k(e,["rev-list","--left-right","--count","@{u}...HEAD"]);if(t.code!==0)return{ahead:null,behind:null};let[o,n]=t.stdout.trim().split(/\s+/),r=o?Number.parseInt(o,10):Number.NaN,a=n?Number.parseInt(n,10):Number.NaN;return{ahead:Number.isFinite(a)?a:null,behind:Number.isFinite(r)?r:null}}s(Kt,"loadAheadBehind");async function D(e,t){let o=await k(e,t);return o.code!==0?null:o.stdout.trim()||null}s(D,"gitText");function Vt(e){return e.split(/\r?\n/).map(t=>t.trimEnd()).filter(Boolean).map(t=>{let o=t[0]??" ",n=t[1]??" ",r=`${o}${n}`.trim()||"changed",a=t.slice(3),i=a.split(" -> "),c=o===" "?null:o,l=n===" "?null:n,d=i.length===2?i[1]:a,p=i.length===2?i[0]:null;return{path:Ne(d),originalPath:p?Ne(p):null,indexStatus:c,worktreeStatus:l,status:r,category:Xt(c,l)}})}s(Vt,"parsePorcelainStatus");function Xt(e,t){return e==="?"&&t==="?"?"untracked":e==="R"||t==="R"?"renamed":e==="A"||t==="A"?"added":e==="D"||t==="D"?"deleted":e==="M"||t==="M"?"modified":"changed"}s(Xt,"gitChangeCategory");function Ne(e){let t=e.trim();if(!t.startsWith('"')||!t.endsWith('"'))return t;try{return JSON.parse(t)}catch{return t.slice(1,-1)}}s(Ne,"unquoteGitPath");function T(e,t){return t.stderr.trim()||t.stdout.trim()||`${e} failed with exit code ${t.code??"unknown"}`}s(T,"gitFailureMessage");async function k(e,t,o={}){return new Promise((n,r)=>{let a=Ut("git",t,{cwd:e,env:o.env,stdio:"pipe"}),i="",c="";a.stdout?.on("data",l=>{i+=String(l)}),a.stderr?.on("data",l=>{c+=String(l)}),a.on("error",r),a.on("close",l=>{n({code:l,stdout:i,stderr:c})}),o.input!==void 0?a.stdin?.end(o.input):a.stdin?.end()})}s(k,"runGitCommand");async function B(e,t,o,n={}){let r=await k(e,t,n);if(r.code!==0)throw new Error(T(o,r));return r}s(B,"requireGitSuccess");import{stat as eo}from"node:fs/promises";import pe from"node:path";import{createHash as de}from"node:crypto";import{readFile as Yt}from"node:fs/promises";import Zt from"node:path";var Be=".openpond/source-upload-cache.json",De="openpond.source-upload-cache.v1";async function ze(e){try{let o=(await ke(U(),"source-upload.v1",Ke(e)))?.payload;if(!o)return new Map;if(o.schema!==De||!o.entries)return new Map;let n=new Map;for(let[r,a]of Object.entries(o.entries))!Qt(a)||r!==fe(a)||n.set(r,a);return n}catch{return new Map}}s(ze,"readSourceUploadCache");async function Je(e,t){let o=await Yt(e.absolutePath),n=de("sha256").update(o).digest("hex"),r=fe({...e,sha256:n}),a=t.get(r);return a&&a.sha256===n&&de("sha256").update(Buffer.from(a.contentsBase64,"base64")).digest("hex")===n?{file:e,entry:{path:e.path,type:"file",contentsBase64:a.contentsBase64},sha256:a.sha256}:{file:e,entry:{path:e.path,type:"file",contentsBase64:o.toString("base64")},sha256:n}}s(Je,"materializeSourceUploadFile");async function We(e,t){let o={};for(let n of t){let r={path:n.file.path,size:n.file.size,mtimeMs:n.file.mtimeMs,ctimeMs:n.file.ctimeMs,sha256:n.sha256,contentsBase64:n.entry.contentsBase64};o[fe(r)]=r}await Re(U(),"source-upload.v1",Ke(e),{schema:De,generatedAt:new Date().toISOString(),entries:o})}s(We,"writeSourceUploadCache");function fe(e){return`${e.path}\0${e.sha256}`}s(fe,"cacheKeyForFile");function Qt(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.path=="string"&&typeof t.size=="number"&&typeof t.mtimeMs=="number"&&typeof t.ctimeMs=="number"&&typeof t.sha256=="string"&&typeof t.contentsBase64=="string"}s(Qt,"isCacheEntry");function Ke(e){return de("sha256").update(Zt.resolve(e)).digest("hex")}s(Ke,"sourceScope");var me=1500,Ye=8*1024*1024,he=100*1024*1024,ge=8,to={maxFiles:me,maxFileBytes:Ye,maxTotalBytes:he,concurrency:ge},oo={mode:"single_json_payload",chunkingSupported:!1};async function no(e){let t=await k(e,["ls-files","-z"]);if(t.code!==0)throw new Error(t.stderr.trim()||t.stdout.trim()||"git ls-files failed for profile source upload");let o=t.stdout.split("\0").map(l=>l.trim()).filter(Boolean).filter(l=>{let d=l.replace(/\\/g,"/");return Xe(d)&&!ro(d)}).sort();if(o.length===0)throw new Error("No committed profile source files found to upload.");if(o.length>me)throw new Error(`Too many profile source files to upload: ${o.length} > ${me}`);let n=(await Ve(o,ge,async l=>{let d=pe.resolve(e,l),p=pe.relative(e,d).replace(/\\/g,"/");if(!Xe(p))throw new Error(`Profile source path escapes repo: ${l}`);let h=await eo(d);if(!h.isFile())return null;if(h.size>Ye)throw new Error(`Profile source file is too large: ${l} (${h.size} bytes)`);return{path:p,absolutePath:d,size:h.size,mtimeMs:Math.trunc(h.mtimeMs),ctimeMs:Math.trunc(h.ctimeMs)}})).filter(l=>l!==null),r=0;for(let l of n)if(r+=l.size,r>he)throw new Error(`Profile source upload is too large: ${r} > ${he}`);let a=await ze(e),i=await Ve(n,ge,async l=>Je(l,a));await We(e,i).catch(()=>{});let c=i.map(l=>l.entry);return{entries:c,fileCount:c.length,totalBytes:r,limits:to,transport:oo}}s(no,"collectProfileSourceUploadEntries");async function Ve(e,t,o){let n=new Array(e.length),r=0,a=Math.max(1,Math.min(t,e.length));return await Promise.all(Array.from({length:a},async()=>{for(;r<e.length;){let i=r;r+=1,n[i]=await o(e[i],i)}})),n}s(Ve,"mapWithConcurrency");function Xe(e){return e.length>0&&!e.includes("\0")&&!pe.isAbsolute(e)&&!e.split(/[\\/]+/).some(t=>!t||t==="."||t==="..")}s(Xe,"isSafeProfileSourcePath");function ro(e){return e.split(/[\\/]+/).some((t,o,n)=>{let r=t.toLowerCase();if(r===".git"||r==="node_modules"||r===".bun"||r===".env"||r.startsWith(".env.")||e.replace(/\\/g,"/")===Be)return!0;if(r!==".openpond")return!1;let a=n[o+1]?.toLowerCase();return a==="goals"||a==="traces"||a==="vendor"||a==="eval-results.json"||a==="artifact-index.json"})}s(ro,"shouldSkipProfileSourcePath");function ao(e){let t=w(e.checkResult),o=w(t?.deployPlan)??w(e.deployPlan),n=w(o?.source),r=w(o?.checks),a=w(t?.sourceCheckStatus);return{status:e.status,agentId:e.agentId,deployPlanStatus:f(o?.status),canRun:Ze(o?.canRun),canDeploy:Ze(o?.canDeploy),sourceRef:f(n?.sourceRef),sourceCommitSha:f(n?.sourceCommitSha),manifestHash:f(n?.manifestHash),manifestPath:f(n?.manifestPath),setupCommands:R(r?.setupCommands),validationCommands:R(r?.validationCommands),requiredChecks:R(r?.requiredChecks),evalNames:R(r?.evalNames),blockedReasons:R(o?.blockedReasons),staleReasons:R(o?.staleReasons),runtimeId:f(a?.latestRuntimeId),sandboxId:f(a?.latestSandboxId),traceArtifactRefs:R(a?.traceArtifactRefs),evalResultArtifactRefs:R(a?.evalResultArtifactRefs),validatorArtifactRefs:R(a?.validatorArtifactRefs),checkedAt:e.checkedAt??new Date().toISOString(),error:e.error??null}}s(ao,"hostedSourceCheckStatusFromPayload");function so(e){let t=w(e.publishResult),o=w(t?.activeManifestSnapshot)??w(t?.manifestSnapshot)??w(t?.snapshot);return{status:e.status??"published",agentId:e.agentId,snapshotId:f(o?.id),sourceRef:f(o?.sourceRef),sourceCommitSha:f(o?.sourceCommitSha),manifestHash:f(o?.manifestHash),manifestPath:f(o?.manifestPath),buildStatus:f(o?.buildStatus),validationStatus:f(o?.validationStatus),evalStatus:f(o?.evalStatus),publishedAt:f(t?.publishedAt)??f(o?.publishedAt),error:e.error??null}}s(so,"hostedPublishStatusFromPayload");function io(e){let t=w(e.runResult),o=w(t?.run),n=w(o?.runtimeSource),r=w(o?.metadata),a=w(r?.sourceSummary),i=w(r?.setupGate),c=w(r?.responseSummary),l=w(r?.traceSummary),d=w(r?.evalSummary);return{status:f(o?.status)??(e.error?"failed":"running"),agentId:f(o?.agentId)??e.agentId,runId:f(o?.id),runtimeId:f(o?.runtimeId),sandboxId:f(o?.sandboxId),sourceRef:f(n?.sourceRef)??f(a?.sourceRef)??f(r?.sourceRef),sourceCommitSha:f(n?.sourceCommitSha)??f(a?.sourceCommitSha)??f(r?.hostedHead),manifestHash:f(n?.manifestHash)??f(a?.manifestHash),setupGateStatus:f(i?.status),setupRequirementRefs:lo(i),artifactRefs:R(c?.artifactRefs),traceArtifactRefs:R(l?.artifactRefs),evalArtifactRefs:R(d?.artifactRefs),startedAt:f(o?.createdAt),completedAt:f(o?.completedAt),error:e.error??null}}s(io,"hostedRunSummaryFromPayload");function co(e){return e?.status?e.status==="succeeded"||e.status==="passed"?"passed":e.status==="failed"||e.status==="cancelled"?"failed":"running":"not_started"}s(co,"hostedRunStatusFromRunSummary");function lo(e){return e?(Array.isArray(e.requirements)?e.requirements:Array.isArray(e.blockingRequirements)?e.blockingRequirements:[]).map(o=>{let n=w(o);return f(n?.ref)??f(n?.id)??f(n?.label)}).filter(o=>!!o):[]}s(lo,"setupRequirementRefs");function w(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}s(w,"record");function f(e){return typeof e=="string"&&e.trim()?e.trim():null}s(f,"text");function Ze(e){return typeof e=="boolean"?e:null}s(Ze,"booleanValue");function R(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"&&t.trim().length>0):[]}s(R,"textArray");var F="openpond-profile.json",mo="settings/profile.yaml",ct="default",O="default";function ho(e,t){let o=e?.defaultAgent??O,n=e?.enabledAgents&&e.enabledAgents.length>0?e.enabledAgents:[o];return{...e??{},path:t,defaultAgent:o,enabledAgents:n}}s(ho,"mergeProfileRepoManifestEntry");function te(e,t,o){let n=b(e);if(e){let c=n.findIndex(d=>u.resolve(d.repoPath)===u.resolve(e.repoPath)&&d.profile===e.profile),l={source:n[c]?.source??"local",repositoryId:n[c]?.repositoryId??u.resolve(e.repoPath),repoPath:u.resolve(e.repoPath),profile:e.profile,...e.lastCheck?{lastCheck:e.lastCheck}:{},...e.lastPush?{lastPush:e.lastPush}:{}};c>=0?n[c]=l:n.push(l)}let r=n.findIndex(c=>u.resolve(c.repoPath)===u.resolve(t)&&c.profile===o),a=r>=0?n[r]:{source:"local",repositoryId:u.resolve(t),repoPath:u.resolve(t),profile:o};return r<0&&n.push(a),{repoPath:u.resolve(t),profile:o,mode:"local",profiles:n,...a.lastCheck?{lastCheck:a.lastCheck}:{},...a.lastPush?{lastPush:a.lastPush}:{}}}s(te,"mergeActiveLocalProfileConfig");function b(e){if(!e)return[];let t=e.profiles?.map(o=>({...o}))??[];return t.some(o=>u.resolve(o.repoPath)===u.resolve(e.repoPath)&&o.profile===e.profile)||t.push({source:"local",repositoryId:u.resolve(e.repoPath),repoPath:u.resolve(e.repoPath),profile:e.profile,...e.lastCheck?{lastCheck:e.lastCheck}:{},...e.lastPush?{lastPush:e.lastPush}:{}}),t}s(b,"profileConfigEntries");var go=at(import.meta.url);function Po(){return u.join(U(),"library","profiles","default-repo")}s(Po,"defaultLocalProfileRepoPath");function lt(e=null){return{mode:"none",repoPath:null,activeProfile:null,sourcePath:null,manifestPath:null,agents:[],skills:[],evals:[],git:null,catalog:ne(e),skillCatalog:re(e),actionCatalog:[],sourceSetupRequirements:[],setupGate:ae(),diff:K(),hosted:null,summary:se(e),lastCheck:null,error:e}}s(lt,"emptyProfileState");async function Mn(e={}){let t=u.resolve(e.repoPath??Po()),o=Ce(e.profile),n=u.join("profiles",o),r=u.join(t,n),a=e.template??"blank-agent",i=a==="blank-profile";await x(t,{recursive:!0});let c=S(u.join(t,F)),l=await H(t).catch(()=>$o(o,n));if(i&&c&&l.profiles[o])throw new Error(`Profile "${o}" already exists in ${t}.`);l.defaultProfile=l.defaultProfile||o,l.profiles[o]=ho(l.profiles[o],n),i&&(l.profiles[o].enabledAgents=[]),i?await x(r,{recursive:!0}):await So(r,a,!!e.force),await ft(r),await Co(t,r,o,{includeDefaultAgent:!i}),await ee(t,l),await Le(t);let d=(await I()).openpondProfile;return await $({openpondProfile:te(d,t,o)}),q()}s(Mn,"initLocalProfileRepo");async function jn(e,t,o){let n=u.resolve(e),r=await H(n),a=Ce(t??r.defaultProfile);Ie(r,n,a);let i=(await I()).openpondProfile,c=te(i,n,a);return ut(c,n,a,o),await $({openpondProfile:c}),q()}s(jn,"loadLocalProfileRepo");async function qn(e,t,o){let n=u.resolve(e),r=await H(n),a=Ce(t??r.defaultProfile);Ie(r,n,a);let i=(await I()).openpondProfile,c=te(i,n,a);return ut(c,n,a,o),i&&(c.repoPath=i.repoPath,c.profile=i.profile,c.lastCheck=i.lastCheck,c.lastPush=i.lastPush),await $({openpondProfile:c}),yo(ye({repoPath:n,profile:a,source:o?.source,repositoryId:o?.repositoryId}))}s(qn,"registerLocalProfileRepo");function ut(e,t,o,n){n&&(e.profiles=b(e).map(r=>u.resolve(r.repoPath)===t&&r.profile===o?{...r,source:n.source,repositoryId:n.repositoryId}:r))}s(ut,"applyProfileIdentity");async function Tn(e,t){let o=e.trim(),n=_o(t);if(!o)throw new Error("Agent ID is required.");let a=(await I()).openpondProfile;if(!a)throw new Error("No active local Profile.");let i=await H(a.repoPath),c=i.profiles[a.profile];if(!c)throw new Error(`Profile "${a.profile}" was not found.`);let l=c.defaultAgent??O;if(!(c.enabledAgents??[l]).includes(o))throw new Error(`Agent "${o}" was not found in Profile "${a.profile}".`);let p={...c.agentNames??{}};return n===o?delete p[o]:p[o]=n,Object.keys(p).length?c.agentNames=p:delete c.agentNames,await ee(a.repoPath,i),q()}s(Tn,"renameActiveProfileAgent");async function Nn(e){let t=e.agentPackage;if(Mo(t),!/^[a-z0-9][a-z0-9._-]{0,190}$/.test(t.agentId))throw new Error("Agent package ID is not safe for a local Profile.");let o=await oe(),n=o.state.sourcePath;await ft(n);let r=u.join(n,"agents");await x(r,{recursive:!0});let a=u.join(r,t.agentId),i=S(a);if(i&&e.overwrite!==!0)throw new Error(`Agent "${t.agentId}" already exists. Confirm replacement to install this version.`);let c=u.join(r,`.${t.agentId}.${et()}.installing`),l=u.join(r,`.${t.agentId}.${et()}.backup`),d=await H(o.config.repoPath),p=JSON.stringify(d),h=!1,v=!1;try{await jo(c,t),i&&(await Pe(a,l),h=!0),await Pe(c,a),v=!0;let A=d.profiles[o.config.profile];if(!A)throw new Error(`Profile "${o.config.profile}" was not found.`);let M=new Set(A.enabledAgents??[]);M.add(t.agentId),A.enabledAgents=[...M],A.defaultAgent||(A.defaultAgent=t.agentId),A.agentNames={...A.agentNames??{},[t.agentId]:t.title},await ee(o.config.repoPath,d),h&&await we(l,{recursive:!0,force:!0})}catch(A){throw await we(c,{recursive:!0,force:!0}),v&&await we(a,{recursive:!0,force:!0}),h&&S(l)&&await Pe(l,a),JSON.stringify(d)!==p&&await ee(o.config.repoPath,JSON.parse(p)).catch(()=>{}),A}return{state:await q(),agentId:t.agentId,versionId:t.versionId,digest:t.digest}}s(Nn,"installAgentPackageIntoActiveProfile");async function q(){let t=(await I()).openpondProfile;return t?J(t):lt()}s(q,"loadOpenPondProfileState");function ye(e){return{source:e.source??"local",repositoryId:e.repositoryId?.trim()||u.resolve(e.repoPath),profileId:e.profile}}s(ye,"openPondProfileRef");async function wo(){let e=(await I()).openpondProfile;if(!e)return{lastUsed:null,profiles:[]};let t=b(e),o=await Promise.all(t.map(async n=>{let r=await J({repoPath:n.repoPath,profile:n.profile,mode:"local",...n.lastCheck?{lastCheck:n.lastCheck}:{},...n.lastPush?{lastPush:n.lastPush}:{}});return{ref:ye(n),name:n.profile,repoPath:n.repoPath,sourcePath:r.sourcePath,state:r}}));return{lastUsed:ye({repoPath:e.repoPath,profile:e.profile,source:b(e).find(n=>u.resolve(n.repoPath)===u.resolve(e.repoPath)&&n.profile===e.profile)?.source,repositoryId:b(e).find(n=>u.resolve(n.repoPath)===u.resolve(e.repoPath)&&n.profile===e.profile)?.repositoryId}),profiles:o}}s(wo,"loadOpenPondProfileLibrary");async function yo(e){if(!e)return q();let t=(await I()).openpondProfile,o=b(t).find(n=>n.source===e.source&&n.repositoryId===e.repositoryId&&n.profile===e.profileId);return o?J({repoPath:o.repoPath,profile:o.profile,mode:"local",...o.lastCheck?{lastCheck:o.lastCheck}:{},...o.lastPush?{lastPush:o.lastPush}:{}}):lt(`Profile "${e.profileId}" is not installed on this device.`)}s(yo,"loadOpenPondProfileStateForRef");async function Fn(e){let t=(await I()).openpondProfile,o=b(t).find(n=>n.source===e.source&&n.repositoryId===e.repositoryId&&n.profile===e.profileId);if(!o)throw new Error(`Profile "${e.profileId}" is not installed on this device.`);return await $({openpondProfile:te(t,o.repoPath,o.profile)}),q()}s(Fn,"selectOpenPondProfile");async function Hn(e){let t=(await I()).openpondProfile;if(!t)return{lastUsed:null,profiles:[]};let o=b(t).filter(a=>a.source!==e.source||a.repositoryId!==e.repositoryId||a.profile!==e.profileId);if(o.length===0)return await $({openpondProfile:null}),{lastUsed:null,profiles:[]};let r=u.resolve(t.repoPath)===u.resolve(b(t).find(a=>a.source===e.source&&a.repositoryId===e.repositoryId&&a.profile===e.profileId)?.repoPath??"")&&t.profile===e.profileId?o[0]:o.find(a=>u.resolve(a.repoPath)===u.resolve(t.repoPath)&&a.profile===t.profile)??o[0];return await $({openpondProfile:{repoPath:r.repoPath,profile:r.profile,mode:"local",profiles:o,...r.lastCheck?{lastCheck:r.lastCheck}:{},...r.lastPush?{lastPush:r.lastPush}:{}}}),wo()}s(Hn,"removeOpenPondProfile");async function Ln(e,t){return J({mode:"local",repoPath:e,profile:t})}s(Ln,"inspectOpenPondProfileSource");async function J(e){try{let t=await H(e.repoPath),o=Ie(t,e.repoPath,e.profile),n=await ko(t,e.profile),r=mt({manifest:t,profile:e.profile,profileSourcePath:o,agents:n}),[a,i,c,l]=await Promise.all([N(e.repoPath),$e(r),ve(o),Ro(o,r)]),d=ot(e),p=xo(a,e.profile),h=Z({actionCatalog:i.actionCatalog,sourceSetupRequirements:i.sourceSetupRequirements}),v=vo({agents:n,actionCatalog:i.actionCatalog,catalog:i.catalog,diff:p,git:a,hosted:d,lastCheck:e.lastCheck??null,error:null});return{mode:"local",repoPath:e.repoPath,activeProfile:e.profile,sourcePath:o,manifestPath:u.join(e.repoPath,F),agents:n,skills:c.skills,evals:l,git:a,catalog:i.catalog,skillCatalog:c.skillCatalog,actionCatalog:i.actionCatalog,sourceSetupRequirements:i.sourceSetupRequirements,setupGate:h,diff:p,hosted:d,summary:v,lastCheck:e.lastCheck??null,error:null}}catch(t){let o=await N(e.repoPath).catch(()=>null),n=t instanceof Error?t.message:String(t);return{mode:"local",repoPath:e.repoPath,activeProfile:e.profile,sourcePath:null,manifestPath:u.join(e.repoPath,F),agents:[],skills:[],evals:[],git:o,catalog:ne(n),skillCatalog:re(n),actionCatalog:[],sourceSetupRequirements:[],setupGate:ae(),diff:K(),hosted:ot(e),summary:se(n),lastCheck:e.lastCheck??null,error:n}}}s(J,"loadOpenPondProfileStateForConfig");async function Un(e){return J({repoPath:u.resolve(e.repoPath),profile:e.profileId,mode:"local"})}s(Un,"loadOpenPondProfileStateFromSource");async function oe(){let e=(await I()).openpondProfile;if(!e)throw new Error("No active OpenPond profile. Run `openpond init` or `openpond profile load --path <dir>`.");let t=await q();if(t.error)throw new Error(t.error);if(!t.sourcePath)throw new Error("Active OpenPond profile has no source path.");return{config:e,state:t}}s(oe,"requireActiveLocalProfile");async function Gn(e){let t=await oe(),o=e.command==="run"?e.args??[]:[],n=e.command==="run"?t.state.actionCatalog.find(c=>c.id===o[0]):null,r=u.resolve(e.cwd??n?.sourcePath??t.state.sourcePath),a=e.command==="run"?tt(r,e.args??[],n?.sourceActionId??null):null;if(e.command==="run"&&a){let c=a[0],l=u.resolve(t.state.sourcePath)===r?{actionCatalog:t.state.actionCatalog,sourceSetupRequirements:t.state.sourceSetupRequirements}:await _e(r);le(c,Z({actionCatalog:l.actionCatalog,sourceSetupRequirements:l.sourceSetupRequirements,actionId:c}))}let i=await dt({command:e.command,args:e.command==="run"?a??tt(r,e.args??[]):e.args,cwd:r,inherit:e.inherit,throwOnFailure:!1});if((e.command==="inspect"||e.command==="build"||e.command==="validate"||e.command==="eval")&&await Se(e.command,i.code),i.code!==0){let c=i.stderr.trim()||i.stdout.trim();throw new Error(c||`${e.command} failed with exit code ${i.code??"unknown"}`)}return i}s(Gn,"runProfileSdkCommand");async function dt(e){let t=u.resolve(e.cwd),o=To(),n=e.command==="run"?[...o.args,e.command,...e.args??[]]:[...o.args,e.command,"--cwd",t,...e.args??[]],r=await wt(o.command,n,{cwd:t,inherit:e.inherit,timeoutMs:e.timeoutMs,maxOutputBytes:e.maxOutputBytes});if(e.throwOnFailure!==!1&&r.code!==0){let a=yt(r,e.command);throw new Error(a||`${e.command} failed with exit code ${r.code??"unknown"}`)}return r}s(dt,"runAgentSdkProjectCommand");function tt(e,t,o=null){let[n,...r]=t;if(!n||n.startsWith("--"))throw new Error("run requires an action name");return[o??n,"--cwd",e,...r]}s(tt,"runCommandArgs");async function Bn(e){let t=!e||e==="all"?["inspect","build","validate","eval"]:[e],o=await oe(),n=await H(o.config.repoPath),r=mt({manifest:n,profile:o.config.profile,profileSourcePath:o.state.sourcePath,agents:o.state.agents});if(r.length===0){if(t.some(a=>a!=="inspect"&&a!=="build"&&a!=="validate"&&a!=="eval"))throw new Error("check kind must be one of inspect, build, validate, eval, all");await Se("validate",0);return}for(let a of t){if(a!=="inspect"&&a!=="build"&&a!=="validate"&&a!=="eval")throw new Error("check kind must be one of inspect, build, validate, eval, all");for(let i of r)await Ao({command:a,source:i,profileSourcePath:o.state.sourcePath,sourceCount:r.length})}}s(Bn,"runProfileCheck");async function Ao(e){let t=e.command==="inspect"||e.command==="validate"||e.command==="eval"?["--json"]:[];if(e.sourceCount>1){let n=u.relative(e.profileSourcePath,e.source.sourcePath)||".";console.log(`
9
+ [profile:${e.source.agentId}] ${e.command} ${n}`)}let o=await dt({command:e.command,args:t,cwd:e.source.sourcePath,inherit:!1,throwOnFailure:!1});if(o.stdout.trim()&&console.log(o.stdout.trim()),o.stderr.trim()&&console.error(o.stderr.trim()),await Se(e.command,o.code),o.code!==0){let n=yt(o,e.command);throw new Error([`Profile check failed for enabled agent ${e.source.agentId} at ${e.source.sourcePath}.`,n||`${e.command} failed with exit code ${o.code??"unknown"}`].join(`
10
+ `))}}s(Ao,"runProfileCheckForSource");async function Dn(e){let t=await oe();if(!t.state.repoPath)throw new Error("Active OpenPond profile has no repo path.");let o=await Ue(t.state.repoPath,e?.trim()||`Update OpenPond profile ${t.state.activeProfile??ct}`);return{committed:o.committed,stdout:o.stdout,stderr:o.stderr,state:await q()}}s(Dn,"commitActiveProfileChanges");async function zn(e){let t=(await I()).openpondProfile;if(!t)return;let o=b(t).map(n=>u.resolve(n.repoPath)===u.resolve(t.repoPath)&&n.profile===t.profile?{...n,lastPush:e}:n);await $({openpondProfile:{...t,lastPush:e,profiles:o}})}s(zn,"saveProfilePushStatus");async function Se(e,t){let o=(await I()).openpondProfile;if(!o)return;let n=await Ge(o.repoPath).catch(()=>null),r={command:e,status:t===0?"passed":"failed",checkedAt:new Date().toISOString(),exitCode:t,sourceHead:n},a=b(o).map(i=>u.resolve(i.repoPath)===u.resolve(o.repoPath)&&i.profile===o.profile?{...i,lastCheck:r}:i);await $({openpondProfile:{...o,lastCheck:r,profiles:a}})}s(Se,"saveProfileCheckStatus");async function So(e,t,o){if(await x(e,{recursive:!0}),(await it(e)).length>0&&!o)return;let r=W(),a=u.join(r,"templates",t);if(!S(a))throw new Error(`Unknown agent template "${t}".`);await fo(a,e,{recursive:!0,force:o,errorOnExist:!1}),await Io(e,r)}s(So,"ensureProfileSource");async function Co(e,t,o,n={}){if(await x(u.join(e,"profiles"),{recursive:!0}),n.includeDefaultAgent===!1)return;for(let i of["agents","skills","workflows","actions","extensions","prompts","goals","evals","settings","traces"])await x(u.join(t,i),{recursive:!0});let r=u.join(t,mo);S(r)||await z(r,["schema: openpond.profile.v1",`profile: ${o}`,"agents:",` - id: ${O}`," path: agent/agent.ts"," enabled: true",""].join(`
11
+ `),"utf8");let a=u.join(t,"openpond.lock");S(a)||await z(a,`# OpenPond profile lockfile placeholder
12
+ `,"utf8")}s(Co,"ensureProfileScaffoldFiles");async function Io(e,t){let o=u.join(e,"package.json"),n=await st(o,"utf8"),r=JSON.parse(n);r.dependencies={...r.dependencies??{},"openpond-agent-sdk":`file:${t}`},await z(o,`${JSON.stringify(r,null,2)}
13
+ `,"utf8")}s(Io,"rewriteTemplateSdkDependency");async function ft(e){if(!S(u.join(e,"package.json")))return;let t=W();await pt(t);let o=u.join(e,"node_modules"),n=u.join(o,"openpond-agent-sdk");await x(o,{recursive:!0}),S(n)||await po(t,n,"dir")}s(ft,"ensureProfileDependencies");async function pt(e){if(S(u.join(e,"dist","cli.js"))&&S(u.join(e,"dist","primitives","index.js")))return;let t=u.join(e,"scripts","build.ts");if(!S(t))throw new Error(`Resolved openpond-agent-sdk at ${e}, but built SDK files are missing.`);let o=await wt(process.execPath,[Pt(e),t],{cwd:e});if(o.code!==0){let n=o.stderr.trim()||o.stdout.trim();throw new Error(n||`openpond-agent-sdk build failed with exit code ${o.code??"unknown"}`)}}s(pt,"ensureAgentSdkBuilt");async function ko(e,t){let o=e.profiles[t];if(!o)return[];let n=o.defaultAgent??O,r=new Set(o.enabledAgents??[n]);return Array.from(r).map(a=>({id:a,name:o.agentNames?.[a]?.trim()||a,path:a===O?"agent/agent.ts":`agents/${a}`,enabled:!0}))}s(ko,"listProfileAgents");function mt(e){let t=e.manifest.profiles[e.profile]?.defaultAgent??O;return e.agents.map(o=>({agentId:o.id,sourcePath:o.id===O?e.profileSourcePath:u.join(e.profileSourcePath,"agents",o.id),preferred:o.id===t}))}s(mt,"profileCatalogSources");async function Ro(e,t){let o=new Map,n=[{root:u.join(e,"evals"),agentId:null},...t.flatMap(r=>[{root:u.join(r.sourcePath,"agent","evals"),agentId:r.agentId},{root:u.join(r.sourcePath,"evals"),agentId:r.agentId}])];for(let r of n)for(let a of await ht(r.root)){let i=u.relative(e,a).split(u.sep).join("/");o.has(i)||o.set(i,{id:i,name:u.basename(a).replace(/\.eval\.[^.]+$/i,"").replace(/\.[^.]+$/i,""),path:i,agentId:r.agentId,sourcePath:a})}return[...o.values()].sort((r,a)=>r.name.localeCompare(a.name)||r.path.localeCompare(a.path))}s(Ro,"loadProfileEvals");async function ht(e){if(!S(e))return[];let t=[];for(let o of await it(e,{withFileTypes:!0})){let n=u.join(e,o.name);o.isDirectory()?t.push(...await ht(n)):o.isFile()&&/\.eval\.(?:[cm]?[jt]sx?)$/i.test(o.name)&&t.push(n)}return t}s(ht,"listEvalSourceFiles");function ot(e){let t=e.lastPush;return t?{teamId:t.teamId??null,projectId:t.projectId??null,sourceRef:t.sourceRef??null,sourceCommitSha:t.hostedHead??null,lastPushedAt:t.pushedAt,lastPushedLocalHead:t.localHead??null,lastPushedHostedHead:t.hostedHead??null,promotionStatus:t.promotionStatus??null,hostedRunStatus:t.hostedRunStatus??null,hostedRunAgentId:t.hostedRunAgentId??null,hostedRunId:t.hostedRunId??null,hostedRunAt:t.hostedRunAt??null,hostedSourceMaterialization:t.hostedSourceMaterialization??null,hostedSourceCheck:t.hostedSourceCheck??null,hostedPublish:t.hostedPublish??null,hostedRun:t.hostedRun??null}:null}s(ot,"hostedBindingFromConfig");function vo(e){let t=e.actionCatalog.find(r=>r.id==="chat")?.id??e.actionCatalog.find(r=>r.name==="chat")?.id??e.actionCatalog.find(r=>r.id.endsWith(".chat"))?.id??null,o=!!(!e.catalog.stale&&!e.git.dirty&&e.git.head&&(e.agents.length===0||e.lastCheck?.status==="passed"&&e.lastCheck.sourceHead===e.git.head)),n=e.agents.length===0&&!e.catalog.stale&&!e.git.dirty?null:bo({catalog:e.catalog,git:e.git,lastCheck:e.lastCheck});return e.error?{state:"error",message:e.error,agentCount:e.agents.length,actionCount:e.actionCatalog.length,defaultAction:t,checkFresh:o,checkStaleReason:n,localHead:e.git.head,hostedHead:e.hosted?.sourceCommitSha??null}:e.git.isRepo?e.git.head?e.git.dirty?{state:"dirty",message:Eo(e.diff),agentCount:e.agents.length,actionCount:e.actionCatalog.length,defaultAction:t,checkFresh:o,checkStaleReason:n,localHead:e.git.head,hostedHead:e.hosted?.sourceCommitSha??null}:{state:"ready",message:e.catalog.stale?"Profile source is clean; action catalog needs inspect/build.":"Profile source is clean.",agentCount:e.agents.length,actionCount:e.actionCatalog.length,defaultAction:t,checkFresh:o,checkStaleReason:n,localHead:e.git.head,hostedHead:e.hosted?.sourceCommitSha??null}:{state:"pending_commit",message:"Profile source is ready for its first commit.",agentCount:e.agents.length,actionCount:e.actionCatalog.length,defaultAction:t,checkFresh:!1,checkStaleReason:"Profile source has no committed head.",localHead:null,hostedHead:e.hosted?.sourceCommitSha??null}:{state:"error",message:"Profile source is not Git-backed.",agentCount:e.agents.length,actionCount:e.actionCatalog.length,defaultAction:t,checkFresh:!1,checkStaleReason:"Profile source is not Git-backed.",localHead:null,hostedHead:e.hosted?.sourceCommitSha??null}}s(vo,"summarizeProfileState");function bo(e){return e.catalog.error?`Catalog error: ${e.catalog.error}`:e.catalog.stale?"Action catalog artifacts are missing or stale.":e.lastCheck?e.lastCheck.status!=="passed"?`Last ${e.lastCheck.command} check failed.`:e.lastCheck.sourceHead?e.git.head&&e.lastCheck.sourceHead!==e.git.head?"Profile source changed since the last check.":e.git.dirty?"Profile has uncommitted source changes.":null:"Last check did not record a source head.":"Profile checks have not run."}s(bo,"profileCheckStaleReason");function Eo(e){let t=[];return e.changedAgents.length>0&&t.push(`${e.changedAgents.length} changed agent(s)`),e.newAgents.length>0&&t.push(`${e.newAgents.length} new agent(s)`),e.deletedAgents.length>0&&t.push(`${e.deletedAgents.length} deleted agent(s)`),e.changedSkills.length>0&&t.push(`${e.changedSkills.length} changed skill(s)`),e.changedActions.length>0&&t.push(`${e.changedActions.length} changed action(s)`),e.changedExtensions.length>0&&t.push(`${e.changedExtensions.length} changed extension(s)`),e.setupChanges.length>0&&t.push(`${e.setupChanges.length} setup change(s)`),e.envRequirementChanges.length>0&&t.push(`${e.envRequirementChanges.length} env requirement change(s)`),t.length>0?`Profile has ${t.join(", ")}.`:"Profile has uncommitted source changes."}s(Eo,"profileDirtyMessage");function xo(e,t){let o=K();o.files=e.files;let n=`profiles/${t}/`;for(let r of e.files){let a=r.path.replace(/\\/g,"/");if(a===F||a===".gitignore"){E(o.setupChanges,a);continue}if(!a.startsWith(n))continue;let i=a.slice(n.length);Oo(o,r,i)}return o}s(xo,"summarizeProfileDiff");function Oo(e,t,o){let n=o.split("/")[0]??"";if(n==="agent")nt(e,O,t.category);else if(n==="agents"){let r=o.split("/")[1];r&&nt(e,r,t.category)}else n==="skills"?E(e.changedSkills,o.split("/")[1]??o):n==="actions"?E(e.changedActions,o.split("/")[1]??o):n==="extensions"?E(e.changedExtensions,o.split("/")[1]??o):(n==="settings"||o==="package.json"||o==="openpond.yaml"||o==="openpond.lock")&&E(e.setupChanges,o);o.toLowerCase().includes("env")&&E(e.envRequirementChanges,o),o.startsWith(".openpond/")&&E(e.changedActions,"catalog")}s(Oo,"classifyProfileFileChange");function nt(e,t,o){if(o==="added"||o==="untracked"){E(e.newAgents,t);return}if(o==="deleted"){E(e.deletedAgents,t);return}E(e.changedAgents,t)}s(nt,"addAgentChange");function E(e,t){!t||e.includes(t)||e.push(t)}s(E,"addUnique");function Ce(e){let t=e?.trim();if(!t)return ct;if(!/^[a-zA-Z0-9._-]+$/.test(t))throw new Error("profile name may only contain letters, numbers, dots, underscores, and hyphens");return t}s(Ce,"normalizeProfileName");function _o(e){let t=e.trim().replace(/\s+/g," ");if(!t)throw new Error("Agent name is required.");if(t.length>80)throw new Error("Agent name must be 80 characters or fewer.");if(/[\u0000-\u001f\u007f]/.test(t))throw new Error("Agent name cannot contain control characters.");return t}s(_o,"normalizeAgentDisplayName");function $o(e,t){return{schema:"openpond.profileRepo.v1",defaultProfile:e,profiles:{[e]:{path:t,defaultAgent:O,enabledAgents:[O]}}}}s($o,"defaultProfileManifest");async function H(e){let t=u.join(e,F),o=await st(t,"utf8"),n=JSON.parse(o);if(n.schema!=="openpond.profileRepo.v1"||!n.profiles||typeof n.profiles!="object")throw new Error(`${t} is not an OpenPond profile repo manifest.`);return n}s(H,"readProfileManifest");async function ee(e,t){await z(u.join(e,F),`${JSON.stringify(t,null,2)}
14
+ `,"utf8")}s(ee,"writeProfileManifest");function Ie(e,t,o){let n=e.profiles[o];if(!n)throw new Error(`Profile "${o}" was not found in ${u.join(t,F)}.`);let r=u.resolve(t,n.path);if(!S(r))throw new Error(`Profile source path does not exist: ${r}`);return r}s(Ie,"profileSourcePath");function Mo(e){let t=0,o=new Set;for(let c of e.source.files){let l=gt(c.path);if(o.has(l))throw new Error(`Agent package contains duplicate source path ${l}.`);o.add(l);let d=Buffer.from(c.contentsBase64,"base64");if(d.byteLength!==c.sizeBytes||Qe("sha256").update(d).digest("hex")!==c.sha256)throw new Error(`Agent package source checksum failed for ${l}.`);t+=d.byteLength}if(t!==e.source.totalSizeBytes)throw new Error("Agent package source size does not match its manifest.");let{digest:n,versionId:r,...a}=e,i=Qe("sha256").update(qo(a)).digest("hex");if(i!==e.digest||e.versionId!==`agent-${i.slice(0,20)}`)throw new Error("Agent package content digest does not match its version.")}s(Mo,"verifyAgentPackageIntegrity");async function jo(e,t){await x(e,{recursive:!0,mode:448});for(let n of t.source.files){let r=gt(n.path),a=u.resolve(e,r);if(!a.startsWith(`${u.resolve(e)}${u.sep}`))throw new Error("Agent package source path escapes its install root.");await x(u.dirname(a),{recursive:!0,mode:448});let i=Buffer.from(n.contentsBase64,"base64");if(r==="package.json"){let c=JSON.parse(i.toString("utf8"));c.dependencies={...c.dependencies??{},"openpond-agent-sdk":`file:${W()}`},i=Buffer.from(`${JSON.stringify(c,null,2)}
15
+ `,"utf8")}await z(a,i,{mode:384,flag:"wx"})}let o=u.join(e,".openpond","agent-package-origin.json");await x(u.dirname(o),{recursive:!0,mode:448}),await z(o,`${JSON.stringify({schema:"openpond.agent-package-origin.v1",agentId:t.agentId,versionId:t.versionId,digest:t.digest,validationReceiptIds:t.receipts.filter(n=>n.kind==="sdk_validation").map(n=>n.id),evalReceiptIds:t.receipts.filter(n=>n.kind==="sdk_eval").map(n=>n.id)},null,2)}
16
+ `,{mode:384,flag:"wx"})}s(jo,"materializeAgentPackage");function gt(e){let t=e.trim().replaceAll("\\","/"),o=u.posix.normalize(t);if(!o||o==="."||o===".."||o.startsWith("/")||o.startsWith("../")||o.split("/").some(n=>n===".."))throw new Error(`Agent package contains an invalid source path: ${e}.`);return o}s(gt,"normalizeAgentPackagePath");function qo(e){return JSON.stringify(Ae(e))}s(qo,"stableAgentPackageJson");function Ae(e){return Array.isArray(e)?e.map(Ae):!e||typeof e!="object"?e:Object.fromEntries(Object.entries(e).sort(([t],[o])=>t.localeCompare(o)).map(([t,o])=>[t,Ae(o)]))}s(Ae,"sortAgentPackageJson");function W(){let e=go.resolve("openpond-agent-sdk/package.json");return u.dirname(e)}s(W,"resolveAgentSdkRoot");async function Jn(){let e=W();return await pt(e),e}s(Jn,"prepareAgentSdkRuntimePackage");function To(){let e=W(),t=u.join(e,"dist","cli.js");if(S(t))return{command:process.execPath,args:[t]};let o=u.join(e,"src","cli.ts");if(S(o))return{command:process.execPath,args:[Pt(e),o]};throw new Error(`openpond-agent CLI was not found under ${e}`)}s(To,"resolveAgentSdkCliLaunch");function Pt(e){return at(u.join(e,"package.json")).resolve("tsx/cli")}s(Pt,"resolveTsxCli");async function wt(e,t,o={}){return new Promise((n,r)=>{let a=uo(e,t,{cwd:o.cwd,stdio:o.inherit?"inherit":"pipe"}),i="",c="",l=!1,d=!1,p=!1,h=o.timeoutMs??600*1e3,v=o.maxOutputBytes??2*1024*1024,A=h>0?setTimeout(()=>{p=!0,a.kill("SIGTERM")},h):null,M=h>0?setTimeout(()=>{p&&a.exitCode===null&&a.kill("SIGKILL")},h+5e3):null;o.inherit||(a.stdout?.on("data",_=>{let g=rt(i,String(_),v,l);i=g.text,l=g.truncated}),a.stderr?.on("data",_=>{let g=rt(c,String(_),v,d);c=g.text,d=g.truncated}));let L=s(()=>{A&&clearTimeout(A),M&&clearTimeout(M)},"clearTimers");a.on("error",_=>{L(),r(_)}),a.on("close",_=>{L(),n({code:_,stdout:i,stderr:c,timedOut:p,stdoutTruncated:l,stderrTruncated:d})})})}s(wt,"spawnCommand");function rt(e,t,o,n){if(n)return{text:e,truncated:!0};let r=`${e}${t}`;return Buffer.byteLength(r,"utf8")<=o?{text:r,truncated:!1}:{text:`${Buffer.from(r).subarray(0,Math.max(0,o)).toString("utf8")}
17
+ [truncated after ${o} bytes]
18
+ `,truncated:!0}}s(rt,"appendBoundedOutput");function yt(e,t){let o=e.stderr.trim()||e.stdout.trim(),n=[e.timedOut?`${t} timed out`:"",e.stdoutTruncated?"stdout truncated":"",e.stderrTruncated?"stderr truncated":""].filter(Boolean);return[o,...n].filter(Boolean).join(`
19
+ `)}s(yt,"commandFailureDetail");export{Z as a,Nt as b,tn as c,ze as d,Je as e,We as f,no as g,ao as h,so as i,io as j,co as k,Po as l,lt as m,Mn as n,jn as o,qn as p,Tn as q,Nn as r,q as s,ye as t,wo as u,yo as v,Fn as w,Hn as x,Ln as y,Un as z,Gn as A,dt as B,Bn as C,Dn as D,zn as E,Jn as F};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{E as u,F as h}from"./chunk-ARQEJOEK.js";import{f as c}from"./chunk-H7IWJN7L.js";import{a as s}from"./chunk-FTQLQJQV.js";import{createHash as i}from"node:crypto";import{readFile as m}from"node:fs/promises";import y from"node:path";var U=".openpond/source-upload-cache.json",d="openpond.source-upload-cache.v1";async function E(e){try{let a=(await u(c(),"source-upload.v1",l(e)))?.payload;if(!a)return new Map;if(a.schema!==d||!a.entries)return new Map;let t=new Map;for(let[o,n]of Object.entries(a.entries))!f(n)||o!==p(n)||t.set(o,n);return t}catch{return new Map}}s(E,"readSourceUploadCache");async function b(e,r){let a=await m(e.absolutePath),t=i("sha256").update(a).digest("hex"),o=p({...e,sha256:t}),n=r.get(o);return n&&n.sha256===t&&i("sha256").update(Buffer.from(n.contentsBase64,"base64")).digest("hex")===t?{file:e,entry:{path:e.path,type:"file",contentsBase64:n.contentsBase64},sha256:n.sha256}:{file:e,entry:{path:e.path,type:"file",contentsBase64:a.toString("base64")},sha256:t}}s(b,"materializeSourceUploadFile");async function A(e,r){let a={};for(let t of r){let o={path:t.file.path,size:t.file.size,mtimeMs:t.file.mtimeMs,ctimeMs:t.file.ctimeMs,sha256:t.sha256,contentsBase64:t.entry.contentsBase64};a[p(o)]=o}await h(c(),"source-upload.v1",l(e),{schema:d,generatedAt:new Date().toISOString(),entries:a})}s(A,"writeSourceUploadCache");function p(e){return`${e.path}\0${e.sha256}`}s(p,"cacheKeyForFile");function f(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let r=e;return typeof r.path=="string"&&typeof r.size=="number"&&typeof r.mtimeMs=="number"&&typeof r.ctimeMs=="number"&&typeof r.sha256=="string"&&typeof r.contentsBase64=="string"}s(f,"isCacheEntry");function l(e){return i("sha256").update(y.resolve(e)).digest("hex")}s(l,"sourceScope");export{U as a,E as b,b as c,A as d};
2
+ import{E as u,F as h}from"./chunk-I7AQMAQI.js";import{f as c}from"./chunk-H7IWJN7L.js";import{a as s}from"./chunk-FTQLQJQV.js";import{createHash as i}from"node:crypto";import{readFile as m}from"node:fs/promises";import y from"node:path";var U=".openpond/source-upload-cache.json",d="openpond.source-upload-cache.v1";async function E(e){try{let a=(await u(c(),"source-upload.v1",l(e)))?.payload;if(!a)return new Map;if(a.schema!==d||!a.entries)return new Map;let t=new Map;for(let[o,n]of Object.entries(a.entries))!f(n)||o!==p(n)||t.set(o,n);return t}catch{return new Map}}s(E,"readSourceUploadCache");async function b(e,r){let a=await m(e.absolutePath),t=i("sha256").update(a).digest("hex"),o=p({...e,sha256:t}),n=r.get(o);return n&&n.sha256===t&&i("sha256").update(Buffer.from(n.contentsBase64,"base64")).digest("hex")===t?{file:e,entry:{path:e.path,type:"file",contentsBase64:n.contentsBase64},sha256:n.sha256}:{file:e,entry:{path:e.path,type:"file",contentsBase64:a.toString("base64")},sha256:t}}s(b,"materializeSourceUploadFile");async function A(e,r){let a={};for(let t of r){let o={path:t.file.path,size:t.file.size,mtimeMs:t.file.mtimeMs,ctimeMs:t.file.ctimeMs,sha256:t.sha256,contentsBase64:t.entry.contentsBase64};a[p(o)]=o}await h(c(),"source-upload.v1",l(e),{schema:d,generatedAt:new Date().toISOString(),entries:a})}s(A,"writeSourceUploadCache");function p(e){return`${e.path}\0${e.sha256}`}s(p,"cacheKeyForFile");function f(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let r=e;return typeof r.path=="string"&&typeof r.size=="number"&&typeof r.mtimeMs=="number"&&typeof r.ctimeMs=="number"&&typeof r.sha256=="string"&&typeof r.contentsBase64=="string"}s(f,"isCacheEntry");function l(e){return i("sha256").update(y.resolve(e)).digest("hex")}s(l,"sourceScope");export{U as a,E as b,b as c,A as d};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{d as r}from"./chunk-GZ7M5XBP.js";import{b as e}from"./chunk-ES2ISFJC.js";import{a as t}from"./chunk-FTQLQJQV.js";var a=e.string().trim().min(1).max(200),y=e.object({receiptId:a,taskId:a,seed:e.string(),request:r}).strict(),n=class extends Error{constructor(m,o,c=409){super(o);this.code=m;this.status=c}code;status;static{t(this,"LocalExperimentError")}};export{n as a};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a as j}from"./chunk-4EPSHPZL.js";import{j as y}from"./chunk-25MBPJVY.js";import{e as i,l as s}from"./chunk-WN3V6KDN.js";import{c as H,d as w,f as k}from"./chunk-YBT2NB32.js";import{Cb as I,Db as E,Ta as v,Ua as g,ub as f,zb as h}from"./chunk-ACYFMLWG.js";import{b as e}from"./chunk-ES2ISFJC.js";import{a as m}from"./chunk-FTQLQJQV.js";var A=e.object({sourcePass:i,graders:j.shape.graders,mappings:j.shape.mappings,maximumCostUsd:e.number().finite().positive().max(1e4)}).strict(),C=e.object({externalDatasetBinding:v,scoring:A.optional(),modelId:e.string().min(1).max(300),maximumCostUsd:e.number().finite().positive().max(1e4)}).strict(),R=e.object({source:e.enum(["local","github","openpond_git"]),repositoryId:e.string().trim().min(1),profileId:e.string().trim().min(1)}).strict(),n=e.string().min(1).max(240),c=e.string().regex(/^[a-f0-9]{64}$/),x=e.object({schemaVersion:e.literal("openpond.experimentImprovement.v1"),id:n,operationId:n,requestHash:c,actorId:n,teamId:n,projectId:n.nullable(),ownerWorkspaceId:n,ownerRevision:e.number().int().nonnegative(),ownerSourceRevision:e.string().min(1).max(500),baseRelease:i,profileRef:R,baseProfileSourceRevision:e.string().min(1).max(500),evidence:e.object({manifest:f,result:h}).strict(),component:e.object({kind:e.enum(["skill","workflow","agent","instruction"]),path:e.string().min(1).max(2e3),workflowId:n.optional()}).strict(),mode:e.enum(["manual","llm_assisted"]),status:e.enum(["draft","authoring_queued","authoring","frozen","testing","ready_for_review","adopting","accepted","rolled_back","declined","failed","cancelled"]),revision:e.number().int().positive(),limits:e.object({maximumCostUsd:e.number().finite().positive(),maximumAuthoringSteps:e.number().int().min(1).max(500),maximumDurationMs:e.number().int().min(1e3).max(864e5)}).strict(),authoringSteps:e.number().int().nonnegative().max(500),work:e.object({sessionId:n,turnId:n,revision:e.number().int().positive(),startedAt:e.string().datetime()}).strict().nullable(),frozen:e.object({release:i,sourceRevision:e.string().min(1).max(500),profileSourceRevision:e.string().min(1).max(500),authoringHash:c,partitionHash:c,executableSourceHash:c,protectedClosureHash:c,candidateRevision:e.number().int().positive(),diff:e.array(e.object({path:e.string(),before:c.nullable(),after:c.nullable()}).strict()).max(1e4)}).strict().nullable(),test:e.object({recipe:C,recipeHash:e.string().regex(/^[a-f0-9]{64}$/),baselineOperationId:e.string(),candidateOperationId:e.string(),cancelRequestedAt:e.string().datetime().nullable(),dispatching:e.object({kind:e.enum(["baseline","candidate"]),token:n,pid:e.number().int().positive(),processStart:e.string().nullable(),startedAt:e.string().datetime()}).strict().nullable()}).strict().nullable(),comparison:e.object({baseline:e.object({manifest:f,result:h}).strict(),candidate:e.object({manifest:f,result:h}).strict(),frozenHash:c,humanProjection:w.optional()}).strict().nullable(),adoptionIntent:e.object({operationId:n,expectedOwnerRevision:e.number().int().nonnegative(),frozenHash:c,humanProjection:w.optional()}).strict().nullable(),acceptance:i.nullable(),rollback:i.nullable(),error:e.string().max(2e3).nullable(),createdAt:e.string().datetime(),updatedAt:e.string().datetime(),contentHash:c}).strict();function D(r){let t=x.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Improvement state integrity failed.");if(I(t.evidence),t.evidence.manifest.teamId!==t.teamId||t.evidence.result.status!=="completed"||!t.evidence.result.cases.some(o=>o.status==="completed"))throw new Error("Improvement requires usable completed owner evidence.");if(t.test&&(s(t.test.recipe)!==t.test.recipeHash||g(t.test.recipe.externalDatasetBinding).profileId!==t.profileRef.profileId))throw new Error("The test recipe changed its exact selected Profile.");if(t.comparison?.humanProjection){let o=k(t.comparison.humanProjection);if(o.teamId!==t.teamId||o.projectId!==t.projectId||s(o.baseline)!==s(t.comparison.baseline)||s(o.candidate)!==s(t.comparison.candidate))throw new Error("Human comparison projection differs from its exact owner evidence.")}if(t.comparison&&(I(t.comparison.baseline),I(t.comparison.candidate),!t.frozen||t.comparison.frozenHash!==s(t.frozen)||!E(t.comparison.baseline,t.comparison.candidate).comparable))throw new Error("Improvement comparison is not bound to a comparable frozen candidate.");if(t.status==="ready_for_review"&&(!t.frozen||!t.comparison))throw new Error("Improvement is missing qualification.");if(t.status==="adopting"&&(!t.adoptionIntent||!t.frozen||t.adoptionIntent.frozenHash!==s(t.frozen)))throw new Error("Improvement adoption intent is not bound to its tested revision.");if(t.status==="accepted"&&(!t.acceptance||!t.comparison||!t.frozen))throw new Error("Improvement acceptance is missing its exact qualification receipt.");if(t.status==="rolled_back"&&(!t.acceptance||!t.rollback))throw new Error("Profile rollback is missing its durable owner receipt.");return t}m(D,"verifyExperimentImprovementState");function X(r){return D({...r,contentHash:s(r)})}m(X,"sealExperimentImprovementState");var Y=e.object({states:e.array(x).max(50),nextCursor:n.nullable()}).strict(),T=e.object({operationId:n,ownerWorkspaceId:n,expectedOwnerRevision:e.number().int().nonnegative(),baseRelease:i,profileRef:R,profileSourceRevision:e.string().min(1).max(500),projectId:n.nullable(),evidence:i,component:x.shape.component,mode:x.shape.mode,limits:x.shape.limits}).strict(),Z=e.discriminatedUnion("operation",[e.object({operation:e.literal("list"),limit:e.number().int().min(1).max(50).default(30),cursor:n.optional()}).strict(),e.object({operation:e.literal("options"),evidence:i}).strict(),e.object({operation:e.literal("start"),request:T}).strict(),e.object({operation:e.enum(["read","humanComparisonOptions"]),id:n}).strict(),e.object({operation:e.literal("instructions"),id:n}).strict(),e.object({operation:e.literal("edit"),id:n,revision:e.number().int().positive(),expectedFileHash:c,text:e.string().max(25e4)}).strict(),e.object({operation:e.literal("mode"),id:n,revision:e.number().int().positive(),mode:e.enum(["manual","llm_assisted"])}).strict(),e.object({operation:e.literal("author"),id:n,revision:e.number().int().positive(),modelId:n,prompt:e.string().min(1).max(2e4)}).strict(),e.object({operation:e.enum(["freeze","finishAuthoring","useCandidate","discard","cancel","rollback"]),id:n,revision:e.number().int().positive()}).strict(),e.object({operation:e.literal("test"),id:n,revision:e.number().int().positive(),recipe:C}).strict(),e.object({operation:e.literal("compare"),id:n,revision:e.number().int().positive(),baseline:i,candidate:i,humanSelections:H.optional()}).strict()]),S=e.object({teamId:n,evidence:i,scoring:A.optional(),profiles:e.array(e.object({id:c,name:e.string(),profileRef:R,ownerWorkspaceId:n,ownerRevision:e.number().int().nonnegative(),baseRelease:i,profileSourceRevision:e.string(),components:e.array(e.object({kind:e.enum(["skill","instruction","agent","workflow"]),path:e.string(),agentId:e.string().optional(),workflowId:e.string().optional(),label:e.string(),binding:v}).strict()).max(500)}).strict()).max(100)}).strict(),O=e.object({candidateId:n,actorId:n,teamId:n,projectId:n.nullable(),candidateRevision:e.number().int().positive(),recipeHash:c,baseline:e.object({manifest:f,result:h}).strict(),candidate:e.object({manifest:f,result:h}).strict(),contentHash:c}).strict();function U(r){let t=O.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Accepted Human discovery integrity failed.");for(let o of[t.baseline,t.candidate])if(I(o),o.manifest.teamId!==t.teamId||o.manifest.lineage?.humanProjection)throw new Error("Discovery must retain original owner evidence.");return t}m(U,"verifyExperimentImprovementHumanOptions");function ee(r,t){if(!r.test||r.test.cancelRequestedAt)throw new Error("The paired test is unavailable.");let l={candidateId:r.id,actorId:r.actorId,teamId:r.teamId,projectId:r.projectId,candidateRevision:r.revision,recipeHash:r.test.recipeHash,...t};return U({...l,contentHash:s(l)})}m(ee,"sealExperimentImprovementHumanOptions");var a=e.string().trim().min(1).max(240),d=e.string().regex(/^[a-f0-9]{64}$/),_=e.object({schemaVersion:e.literal("openpond.advancedRefinerEvaluation.v1"),operationId:a,actorId:a,teamId:a,projectId:a.nullable(),mode:e.enum(["review_quality","downstream_adaptation"]),profileRef:e.object({source:e.enum(["local","github","openpond_git"]),repositoryId:a,profileId:a}).strict(),sourceRevision:e.string().min(1).max(500),baselineRelease:i,refinerRelease:i,evidence:i,externalDatasetBinding:v,adaptationDatasetBinding:v,privateClosureHash:d,adaptationTaskIds:e.array(a).min(1).max(1e4),holdoutTaskIds:e.array(a).min(1).max(1e4),adaptationSplit:e.enum(["train","validation","test","frozen_eval"]),holdoutSplit:e.enum(["train","validation","test","frozen_eval"]),environmentPolicy:e.discriminatedUnion("kind",[e.object({kind:e.literal("resettable"),environmentHash:d}).strict(),e.object({kind:e.literal("frozen_observations"),environmentHash:d}).strict()]),maximumCostUsd:e.number().finite().positive().max(1e4),maximumDurationMs:e.number().int().min(1e3).max(864e5),maximumModelSteps:e.number().int().min(1).max(1e3),contentHash:d}).strict();function M(r){let t=_.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Advanced Refiner evaluation admission changed.");let o=g(t.externalDatasetBinding);if(o.profileId!==t.profileRef.profileId||o.protectedProfileClosureHash!==t.privateClosureHash)throw new Error("Advanced evaluation changed its Profile or protected evaluator closure.");if(t.adaptationSplit===t.holdoutSplit||new Set([...t.adaptationTaskIds,...t.holdoutTaskIds]).size!==t.adaptationTaskIds.length+t.holdoutTaskIds.length)throw new Error("Adaptation and private holdout must be disjoint ordered cases.");let p=g(t.adaptationDatasetBinding);if(p.profileId!==o.profileId||p.packageHash!==o.packageHash||s(p.dataset)!==s(o.dataset)||s(p.target)!==s(o.target)||p.protectedProfileClosureHash!==o.protectedProfileClosureHash)throw new Error("This native advanced adapter needs separate adaptation and holdout recipes from the same exact released package and target.");if(p.split!==t.adaptationSplit||o.split!==t.holdoutSplit)throw new Error("Advanced split policies differ from their exact admitted recipes.");let q=new Set(o.population.map(u=>u.taskId)),z=new Set(p.population.map(u=>u.taskId));if(t.holdoutTaskIds.some(u=>!q.has(u))||t.adaptationTaskIds.some(u=>!z.has(u)))throw new Error("Advanced evaluation selected cases outside its exact Dataset recipe.");return t}m(M,"verifyAdvancedRefinerEvaluationPin");function ce(r){return M({...r,contentHash:s(r)})}m(ce,"sealAdvancedRefinerEvaluationPin");var B=e.object({pin:_,modelId:a,profileId:a,model:y,seed:e.number().int(),reasoningEffort:e.enum(["none","off","low","medium","high","xhigh","max"]).nullable()}).strict(),V=e.discriminatedUnion("operation",[e.object({operation:e.literal("start"),request:B}).strict(),e.object({operation:e.enum(["read","cancel","resume"]),id:a}).strict(),e.object({operation:e.literal("list")}).strict()]),W=e.object({taskId:a,sourceCaseHash:d,reviewSessionId:a,reviewTurnId:a,inputHarness:i,trigger:i,decision:e.enum(["no_action","route_deterministically","queue_refiner"]),outcome:i.nullable(),proposal:i.nullable(),validations:e.array(i).max(100),grade:e.object({id:a,contentHash:d,score:e.number().min(0).max(1).nullable(),passed:e.boolean(),failureClass:e.string().nullable()}).strict(),resetComplete:e.boolean()}).strict(),$=e.object({schemaVersion:e.literal("openpond.advancedRefinerReviewReceipt.v1"),id:a,runId:a,pinHash:d,ownerActorId:a,teamId:a,privateClosureHash:d,refinerRelease:i,cases:e.array(W).min(1).max(1e4),reviewScore:e.number().min(0).max(1).nullable(),completedCases:e.number().int().nonnegative(),noActionCases:e.number().int().nonnegative(),routedCases:e.number().int().nonnegative(),proposalCases:e.number().int().nonnegative(),costUsd:e.number().finite().nonnegative().nullable(),cleanupComplete:e.boolean(),createdAt:e.string().datetime(),contentHash:d}).strict();function de(r){return $.parse({...r,contentHash:s(r)})}m(de,"sealAdvancedRefinerReviewReceipt");var P=S.shape.profiles.element,me=S.extend({profiles:e.array(P.extend({components:e.array(P.shape.components.element.extend({adaptationSplits:e.array(e.object({split:e.enum(["train","validation","test","frozen_eval"]),taskIds:e.array(a)})),environmentHash:d,resettable:e.boolean(),reviewQuality:e.boolean()}))})),refinerReleases:e.array(i),activeRefiner:i.nullable(),models:e.array(e.object({id:a,profileId:a,name:e.string(),location:e.enum(["local","hosted"])}))}),L=e.object({operation:e.literal("prepare"),evidence:i,profileOptionId:a,componentLabel:a,mode:e.enum(["review_quality","downstream_adaptation"]),adaptationSplit:e.enum(["train","validation","test","frozen_eval"]),operationId:a,refinerRelease:i,maximumCostUsd:e.number().positive(),maximumDurationMs:e.number().int().positive(),maximumModelSteps:e.number().int().positive()}).strict(),le=e.union([V,L,e.object({operation:e.literal("options"),evidence:i}).strict()]),pe=e.object({modelRequests:e.number().int().nonnegative(),knownSpendUsd:e.number().nonnegative(),totalSpendUsd:e.number().nonnegative().nullable(),heldUsd:e.number().nonnegative(),uncertainRequests:e.number().int().nonnegative()}).strict();export{C as a,x as b,D as c,X as d,Y as e,T as f,Z as g,S as h,U as i,ee as j,_ as k,M as l,ce as m,B as n,V as o,W as p,$ as q,de as r,L as s,pe as t};
@@ -0,0 +1,10 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a as W}from"./chunk-UCPGRPWY.js";import{b as M}from"./chunk-773TH7FN.js";import{d as j,e as B}from"./chunk-FUOEIDMA.js";import{db as _,mb as N}from"./chunk-ACYFMLWG.js";import{r as A,t as C,u as I,v as O,w as T}from"./chunk-TVQAPBLZ.js";import{m as i}from"./chunk-KGNCKIFP.js";import{b as d}from"./chunk-ES2ISFJC.js";import{a as h}from"./chunk-FTQLQJQV.js";var L="harness_read_file",J=d.object({path:d.string().min(1).max(2e3),offset:d.number().int().nonnegative().default(0),length:d.number().int().positive().max(65536).default(16384)}).strict(),U={type:"function",function:{name:L,description:"Read a byte range from a policy-visible file in the selected immutable Harness release. Paths are relative to that release; private files are unavailable.",parameters:{type:"object",properties:{path:{type:"string"},offset:{type:"integer",minimum:0},length:{type:"integer",minimum:1,maximum:65536}},required:["path"],additionalProperties:!1}}};function $(e){let c=typeof e.sourcePackage=="object"&&e.sourcePackage!==null&&"schemaVersion"in e.sourcePackage&&e.sourcePackage.schemaVersion==="openpond.harnessPolicySourcePackage.v1",n=c?C(e.sourcePackage,e.expectedRelease):O(e.sourcePackage,e.expectedRelease),a=c?I(n):T(n),{agentSnapshot:t,harnessRelease:m}=n,u=h(r=>{let o=a.get(r);if(!o)throw new Error(`Released Harness source is missing: ${r}`);try{return new TextDecoder("utf-8",{fatal:!0}).decode(o)}catch{throw new Error(`Released Harness instruction source is not UTF-8: ${r}`)}},"text");if(!d.object({runtimeProtocol:d.literal("openpond.agent-runtime.v1")}).strict().safeParse(JSON.parse(u(m.program.path))).success||m.metadata.runtimeProtocol!=="openpond.agent-runtime.v1")throw new Error("Released Harness program requires a different execution adapter.");if(t.agents.length)throw new Error("This Harness runtime does not execute released subagent programs.");let s=d.union([d.object({dependencies:d.record(d.string(),d.string())}).strict(),d.object({source:d.literal("openpond.profile"),profileId:d.string().min(1),profileGitHead:d.string().nullable(),dependenciesResolved:d.literal(!1)}).strict()]).parse(JSON.parse(u(t.dependencyLock.path))),g="dependencies"in s?s.dependencies:{};for(let[r,o]of Object.entries(g))if(e.dependencies?.[r]!==o)throw new Error(`Released Harness dependency is unavailable: ${r}@${o}`);let b=[];for(let r of t.capabilityRequirements){let o=e.capabilities?.find(p=>p.id===r.id);if(!(o&&r.scopes.every(p=>o.scopes.includes(p)))){if(r.required)throw new Error(`Released Harness capability is unavailable: ${r.id}`);b.push(r.id)}}if(e.tools.some(r=>r.name===L))throw new Error("Harness source reader conflicts with a runtime tool.");for(let r of[...t.toolDeclarations,...m.tools]){let o=e.tools.find(p=>p.name===r.name);if(!o||i(o.inputSchema)!==r.inputSchemaHash||i(r.inputSchema)!==r.inputSchemaHash)throw new Error(`Released Harness tool is unavailable or has a different schema: ${r.name}`)}let S=m.files.filter(r=>r.visibility==="policy"&&r.path!==m.program.path&&r.path!==t.dependencyLock.path),R=t.instructions.map(r=>`Released instruction (${r.path}):
3
+ ${u(r.path)}`),v=t.skills.map(r=>`Released Skill (${r.path}):
4
+ ${u(r.path)}`),E=[e.baseSystemPrompt,...R,v.length?"Apply the following released Skills when relevant to the task. Read their referenced resources from the selected release with harness_read_file.":"",...v,S.length?`Selected Harness files (paths relative to the release):
5
+ ${S.map(r=>r.path).join(`
6
+ `)}`:""].filter(Boolean).join(`
7
+
8
+ `);if(!Number.isSafeInteger(e.maxContextCharacters)||e.maxContextCharacters<=0||E.length>e.maxContextCharacters)throw new Error("Released Harness context exceeds the runtime's admitted context limit.");let H=new Map(S.map(r=>[r.path,r])),l=S.length?[U]:[],x={schemaVersion:"openpond.harnessSourceRuntimeReceipt.v1",runtimeId:e.runtimeId,harnessRelease:{id:m.id,contentHash:m.contentHash},sourcePackageHash:n.contentHash,systemPromptHash:i(E),instructionAssets:t.instructions.map(r=>({path:r.path,contentHash:r.contentHash})),skillAssets:t.skills.map(r=>({path:r.path,contentHash:r.contentHash})),readableAssets:S.map(r=>({path:r.path,contentHash:r.contentHash})),toolContractHash:i([...e.tools.map(r=>r.definition),...l]),omittedCapabilities:b};return{systemPrompt:E,tools:l,receipt:{...x,contentHash:i(x)},readFile(r){let o=J.parse(r),p=H.get(o.path);if(!p)throw new Error("Harness source file is not policy-visible in the selected release.");let y=a.get(o.path);if(o.offset>y.length)throw new Error("Harness source read offset exceeds the file size.");let w=Math.min(y.length,o.offset+o.length),P=y.subarray(o.offset,w),k,q="utf8";try{k=new TextDecoder("utf-8",{fatal:!0}).decode(P)}catch{q="base64",k=btoa(Array.from(P,V=>String.fromCharCode(V)).join(""))}return{path:p.path,contentHash:p.contentHash,mediaType:p.mediaType,sizeBytes:p.sizeBytes,offset:o.offset,nextOffset:w,eof:w===y.length,encoding:q,content:k}}}}h($,"createHarnessSourceRuntime");import{readFile as G}from"node:fs/promises";import z from"node:path";async function F(e){let c=_.parse(e.source),n;if(e.authorizeWorkspace){let s=await e.store.getHarnessReleaseRecord(c.harnessRelease.contentHash),g=s&&await e.store.getHarnessWorkspace(s.workspaceId);if(!s||!g||s.harnessRelease.id!==c.harnessRelease.id)throw new Error("The selected immutable Harness has no persisted owning workspace.");await e.authorizeWorkspace(c,g),n=await B({workspace:g,release:s})}else n=await j(e.store,c.harnessRelease);if(!n)throw new Error("The selected immutable Harness is unavailable.");let a=n.release;if(i(c.agentSnapshot)!==i({id:a.agentSnapshot.id,contentHash:a.agentSnapshot.contentHash}))throw new Error("The selected Harness differs from its admitted Agent snapshot.");let t=z.join(a.bundlePath,"source"),m=new Map;for(let s of a.harnessRelease.files)m.set(s.path,await G(z.join(t,...s.path.split("/"))));let u=A({agentSnapshot:a.agentSnapshot,harnessRelease:a.harnessRelease,files:m});if(u.contentHash!==c.sourcePackageHash)throw new Error("The selected Harness source bytes differ from the admitted package.");let f=W(a);return $({sourcePackage:u,expectedRelease:c.harnessRelease,baseSystemPrompt:"",runtimeId:"openpond.native-standalone-experiment.v1",tools:f.map(s=>({name:s.name,inputSchema:s.inputSchema,definition:{type:"function",function:{name:s.name,description:s.description,parameters:s.inputSchema}}})),maxContextCharacters:262144}),{runtime:n,sourcePackage:u}}h(F,"resolveStandaloneExperimentSource");function D(e){if(!e.turn.completedAt)throw new Error("Native Experiment receipt requires a settled turn.");let c=Buffer.byteLength(e.output,"utf8")>e.maxOutputBytes,n=e.cancelled?"cancelled":e.timedOut?"timed_out":e.turn.status==="interrupted"?"cancelled":e.turn.status==="completed"&&!c?"completed":"policy_failure",a=n==="completed"?null:c?"Native Harness output exceeded its admitted byte limit.":n==="timed_out"?"Native Harness case timed out.":n==="cancelled"?"Native Harness case was cancelled.":"Native Harness case failed; inspect its retained turn evidence.",t={schemaVersion:"openpond.nativeHarnessExperimentAttempt.v1",taskId:e.request.taskId,status:n,output:n==="completed"?e.output:null,error:a,messages:[{role:"user",text:JSON.stringify({instructions:e.request.instructions,input:e.request.input,policyVisibleContext:e.request.policyVisibleContext})},...n==="completed"?[{role:"assistant",text:e.output,toolCalls:[]}]:[]],collected:n==="completed",environmentCleanupComplete:!0,snapshot:null,native:{sessionId:e.turn.sessionId,turnId:e.turn.id,source:e.source,admissionHash:e.request.admissionHash,modelConfigurationHash:e.request.model.configurationHash,traceHash:e.traceHash,runtimeEventRefs:e.runtimeEventRefs,startedAt:e.turn.startedAt,completedAt:e.turn.completedAt,outputHash:i(e.output),partialOutputAvailable:n!=="completed"&&e.output.length>0}};return N(t)}h(D,"sealStandaloneExperimentReceipt");function Se(e){let c=new Map;async function n(t,m){let u=t.metadata?.standaloneExperiment;if(u===void 0)return null;let f=c.get(t.id);if(!f||i(u)!==i(f.binding)||t.currentProfile||t.profileComponentBinding||t.profileWorkflowBinding||m.sessionId!==t.id||m.profileSnapshot)throw new Error("Standalone Experiment turn has no matching active execution owner.");return f.stream}h(n,"resolveSessionModelStream");async function a(t){if(!Number.isSafeInteger(t.maxOutputBytes)||t.maxOutputBytes<1||t.maxOutputBytes>8388608)throw new Error("Native Experiment requires a bounded positive output limit.");if(!t.request.harness||i(t.request.harness)!==i(t.source))throw new Error("Native Experiment source differs from its admitted case.");if(t.request.environment.kind!=="text")throw new Error("Standalone native Harness execution requires a compatible text Dataset.");if(t.request.model.messages.length)throw new Error("Standalone Harness cases use released instructions; additional raw prompt messages are not qualified.");t.signal.throwIfAborted();let{runtime:m}=await F({store:e.store,source:t.source,authorizeWorkspace:e.authorizeWorkspace}),u={executionId:t.executionId,caseId:t.request.id,admissionHash:t.request.admissionHash,source:t.source,modelConfigurationHash:t.request.model.configurationHash},f={providerId:t.request.model.providerId,modelId:t.request.model.modelId},s=await e.createSession({provider:f.providerId,modelRef:f,currentProfile:null,hiddenFromDefaultSidebar:!0,metadata:{standaloneExperiment:u}});if(s.currentProfile||s.profileComponentBinding||s.profileWorkflowBinding)throw new Error("Standalone Experiment session acquired an unrelated Profile.");await M({store:e.store,runId:s.id,workspace:m.workspace,harnessRelease:t.source.harnessRelease,admittedAt:s.createdAt});let g=AbortSignal.any([t.signal,AbortSignal.timeout(t.request.timeoutMs)]),b=h(async function*(H){if(H.model!==f.modelId)throw new Error("Native Experiment requested a different model.");for await(let l of t.stream({...H,maxTokens:t.request.model.maxOutputTokens,temperature:t.request.model.temperature,topP:t.request.model.topP,signal:H.signal?AbortSignal.any([g,H.signal]):g}))yield l},"stream");c.set(s.id,{binding:u,stream:b});let S,R=h(()=>{S??=e.interruptSessionTurn(s.id,"Standalone Experiment case cancelled or timed out."),S.catch(()=>{})},"onAbort");g.addEventListener("abort",R,{once:!0});let v=!1,E=!1;try{g.throwIfAborted();let H=[t.request.instructions,JSON.stringify({input:t.request.input,policyVisibleContext:t.request.policyVisibleContext})].filter(Boolean).join(`
9
+
10
+ `);v=!0;let l=await e.sendTurn(s.id,{prompt:H,modelRef:f,approvalPolicy:"on-request"});if(S&&await S,!l.completedAt||l.status==="in_progress")throw new Error("Native Experiment turn did not settle.");if(E=!0,l.profileSnapshot||!l.harnessSnapshot||i(l.harnessSnapshot.harnessRelease)!==i(t.source.harnessRelease)||i(l.modelRef)!==i(f))throw new Error("Native Experiment turn differs from its admitted model or standalone Harness.");let x=await e.store.runtimeEventsForTurn(l.id);if(x.some(w=>w.sessionId!==s.id||w.turnId!==l.id))throw new Error("Native Experiment trace contains evidence from another case.");let r=x.filter(w=>w.name==="assistant.delta"&&typeof w.output=="string").map(w=>w.output).join(""),o=i(x),p=K(x),y=D({request:t.request,source:t.source,turn:l,output:r,traceHash:o,runtimeEventRefs:p,cancelled:t.signal.aborted,timedOut:g.aborted&&!t.signal.aborted,maxOutputBytes:t.maxOutputBytes});return{sessionId:s.id,turn:l,output:y.output,traceHash:o,runtimeEventRefs:p,cleanupComplete:!0,attempt:y}}catch(H){if(v&&!E){let l=await(S??e.interruptSessionTurn(s.id,"Standalone Experiment execution failed."));if(l.status==="in_progress"||!l.completedAt)throw new Error("Standalone Experiment cleanup remains unconfirmed.",{cause:H})}throw H}finally{g.removeEventListener("abort",R),c.delete(s.id)}}return h(a,"execute"),{execute:a,resolveSessionModelStream:n}}h(Se,"createStandaloneExperimentTurnOwner");function K(e){let c=-1;for(let a=e.length-1;a>=0;a--)if(e[a]?.name.endsWith(".delta")){c=a;break}let n=e.flatMap((a,t)=>a.name.endsWith(".delta")&&t!==c?[]:[a.id]);if(n.length>1e4)throw new Error("Native Experiment trace exceeds its evidence-reference limit.");return n}h(K,"retainedEventRefs");export{L as a,$ as b,F as c,Se as d};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{c as m}from"./chunk-IR3YJWPW.js";import{l as c}from"./chunk-ACYFMLWG.js";import{a as o}from"./chunk-FTQLQJQV.js";async function h(e){let a=l(await e),[n,u,{QuickJSWASMModule:s}]=await Promise.all([a.importModuleLoader().then(l),a.importFFI(),import("./module-ES6BEMUI-ZVL3F6NW.js").then(l)]),t=await n();t.type="sync";let i=new u(t);return new s(t,i)}o(h,"newQuickJSWASMModuleFromVariant");function l(e){return e&&"default"in e&&e.default?e.default&&"default"in e.default&&e.default.default?e.default.default:e.default:e}o(l,"smartUnwrap");var d=class extends Error{static{o(this,"JavaScriptIsolateExecutionError")}constructor(a){super(a),this.name="JavaScriptIsolateExecutionError"}};async function K(e){L(e),e.signal?.throwIfAborted();let a=o(t=>new Error(`${e.errorPrefix}_${t}`),"error"),n=Date.now()+e.timeoutMs,{default:u}=await import("./dist-SKYG5LZO.js");e.signal?.throwIfAborted();let s=await h(u);e.signal?.throwIfAborted();try{return m.withScope(t=>{let i=t.manage(s.newRuntime());i.setMemoryLimit(33554432),i.setMaxStackSize(262144),i.setInterruptHandler(()=>Date.now()>=n||e.signal?.aborted===!0);let r=t.manage(i.newContext());e.deterministic&&t.manage(r.unwrapResult(r.evalCode("globalThis.Date = undefined; Math.random = () => { throw new Error('environment_random_requires_explicit_seed'); };")));let g=t.manage(r.unwrapResult(r.evalCode("JSON.stringify"))),p=t.manage(r.unwrapResult(r.evalCode(`JSON.parse(${JSON.stringify(JSON.stringify(e.value))})`))),v=t.manage(r.unwrapResult(r.evalCode(e.source,`${e.errorPrefix}.mjs`,{type:"module"}))),x=t.manage(y(r,v,n,e.signal,a)),w=t.manage(r.getProp(x,e.exportName));if(r.typeof(w)!=="function")throw a("function_export_missing");let J=t.manage(r.unwrapResult(r.callFunction(w,r.undefined,p))),k=t.manage(y(r,J,n,e.signal,a)),f=t.manage(r.unwrapResult(r.callFunction(g,r.undefined,k)));if(r.typeof(f)!=="string")throw a("result_not_json");let S=r.getString(f);if(new TextEncoder().encode(S).byteLength>e.maxResultBytes)throw a("result_too_large");if(e.signal?.throwIfAborted(),Date.now()>=n)throw a("timeout");let M=JSON.parse(S);return c(M,e.maxResultBytes),M})}catch(t){throw e.signal?.throwIfAborted(),new d(t instanceof Error?t.message:"JavaScript execution failed.")}}o(K,"executeJavaScriptIsolate");function L(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`);c(e.value,4194304)}o(L,"validateJavaScriptIsolateInput");function y(e,a,n,u,s){for(;;){if(u?.throwIfAborted(),Date.now()>=n)throw s("timeout");let t=e.getPromiseState(a);if(t.type==="fulfilled")return t.notAPromise?t.value.dup():t.value;if(t.type==="rejected")return e.unwrapResult(t);if(e.runtime.executePendingJobs(1).unwrap()===0)throw s("unresolved_promise")}}o(y,"settle");export{d as a,K as b,L as c};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a as c}from"./chunk-FTQLQJQV.js";import{spawn as E}from"node:child_process";import{realpath as f}from"node:fs/promises";import o from"node:path";function B(h){return c(async function(t){if(!t.command.trim()||t.command.length>2e4)throw new Error("Candidate command is empty or exceeds its bounded size.");if(t.stdin!==void 0&&Buffer.byteLength(t.stdin)>1e6)throw new Error("Candidate command input exceeds its bounded size.");t.signal?.throwIfAborted();let s=await h.authorize(t);if(s.candidateId!==t.candidateId||s.sessionId!==t.sessionId||s.turnId!==t.turnId||s.candidateRevision!==t.expectedRevision||!s.ownerId)throw new Error("Candidate command admission differs from its durable owner/session/turn/revision.");let a=await f(s.sourceRoot),x=t.cwd?await f(t.cwd):a,l=o.relative(a,x);if(l.startsWith("..")||o.isAbsolute(l))throw new Error("Candidate command cwd escapes its isolated source.");let P=Math.min(Math.max(t.timeoutMs??12e4,1),18e4),g=Math.min(Math.max(t.maxOutputBytes??25e4,1),1e6),b=s.layout==="work"?"/workspace":"/workspace/work",m=["--unshare-all","--die-with-parent","--new-session","--clearenv","--ro-bind","/usr","/usr","--ro-bind","/lib","/lib","--ro-bind","/lib64","/lib64","--symlink","usr/bin","/bin","--symlink","usr/sbin","/sbin","--proc","/proc","--dev","/dev","--tmpfs","/tmp","--dir","/tmp/home","--dir","/runtime","--dir","/workspace","--ro-bind",a,b,"--ro-bind",process.execPath,"/runtime/node","--setenv","HOME","/tmp/home","--setenv","PATH","/runtime:/usr/bin:/bin","--setenv","TMPDIR","/tmp","--setenv","LANG","C.UTF-8","--chdir",`${b}${l?`/${l.split(o.sep).join("/")}`:s.layout==="work"?"/work":""}`];for(let[d,r]of[[s.writablePaths,"--bind"],[s.protectedPaths??[],"--ro-bind"]])for(let e of d){if(o.isAbsolute(e)||e.split(/[\\/]/).includes(".."))throw new Error("Candidate mount path escapes its admitted source.");let u=await f(o.resolve(a,e)),i=o.relative(a,u);if(i.startsWith("..")||o.isAbsolute(i))throw new Error("Candidate mount symlink escapes its admitted source.");m.push(r,u,`${b}${i?`/${i.split(o.sep).join("/")}`:""}`)}s.layout==="profile_case"&&m.push("--symlink","work/inputs","/workspace/inputs","--symlink","work/outputs","/workspace/outputs");for(let d of s.runtimeMounts??[]){let r=o.posix.normalize(d.destination),e=await f(d.source);if(!r.startsWith("/runtime/")&&r!=="/workspace/node_modules"||r==="/runtime/node"||r.includes("\0")||e===a||e.startsWith(`${a}${o.sep}`))throw new Error("Candidate runtime mount must be a separate server-owned public runtime bundle.");m.push("--ro-bind",e,r)}return m.push("--","/bin/sh","-lc",t.command),new Promise((d,r)=>{let e=E(h.bwrapPath??"/usr/bin/bwrap",m,{detached:!0,stdio:[t.stdin===void 0?"ignore":"pipe","pipe","pipe"],env:{PATH:"/usr/bin:/bin"}});t.stdin!==void 0&&e.stdin&&(e.stdin.on("error",()=>{}),e.stdin.end(t.stdin));let u={stdout:[],stderr:[]},i={stdout:0,stderr:0},p={stdout:!1,stderr:!1},y=!1,w=c(()=>{try{e.pid&&process.kill(-e.pid,"SIGKILL")}catch{e.kill("SIGKILL")}},"kill"),I=c(()=>w(),"abort"),R=setTimeout(()=>{y=!0,w()},P);t.signal?.addEventListener("abort",I,{once:!0});for(let n of["stdout","stderr"])e[n].on("data",k=>{let C=Math.max(0,g-i[n]);C&&u[n].push(k.subarray(0,C)),i[n]+=k.byteLength,i[n]>g&&(p[n]=!0)});let v=c(()=>{clearTimeout(R),t.signal?.removeEventListener("abort",I)},"clean");e.once("error",n=>{v(),r(new Error(`Candidate filesystem confinement is unavailable: ${n.message}`))}),e.once("close",n=>{v(),t.signal?.aborted?r(t.signal.reason):d({code:n,stdout:Buffer.concat(u.stdout).toString("utf8"),stderr:Buffer.concat(u.stderr).toString("utf8"),timedOut:y,stdoutTruncated:p.stdout,stderrTruncated:p.stderr})}),t.signal?.aborted&&w()})},"execute")}c(B,"createCandidateCommandExecutor");export{B as a};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{b as o,c as t}from"./chunk-KGNCKIFP.js";import{b as e}from"./chunk-ES2ISFJC.js";import{a}from"./chunk-FTQLQJQV.js";var d=e.object({provider:o,model:o,revision:e.string().trim().min(1).max(500).nullable().default(null),artifactHash:t.nullable().default(null),tokenizerRevision:e.string().trim().min(1).max(500).nullable().default(null),chatTemplateHash:t.nullable().default(null)}).strict(),l=["openpond","codex","claude-code","grok-build","opencode","anthropic","openai","xai","google","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible"],n=e.templateLiteral(["acp:",e.string().regex(/^[a-z0-9][a-z0-9-]{0,100}$/)]),i=e.union([e.enum(l),n]);function p(r){return/^acp:[a-z0-9][a-z0-9-]{0,100}$/.test(r)}a(p,"isRegisteredAcpProvider");var s=e.object({providerId:i,modelId:e.string().trim().min(1).max(300)});export{d as a,l as b,n as c,i as d,p as e,s as f};
@@ -0,0 +1,23 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{A as ee,C as te,D as ae,E as $,G as se,H as re,I as ne,J as oe,L as ie,aa as B,d as N,e as v,g as K,i as G,ia as A,ja as ce,l as Y,la as H,ua as _,wa as de,xa as le,y as Z,z as Q}from"./chunk-25MBPJVY.js";import{j as k,k as R,l as m}from"./chunk-WN3V6KDN.js";import{F as J,G as X,u as M}from"./chunk-523TE4BI.js";import{N as P}from"./chunk-VYLGI3IH.js";import{l as D,z as W}from"./chunk-ACYFMLWG.js";import{b as r}from"./chunk-ES2ISFJC.js";import{a as c}from"./chunk-FTQLQJQV.js";var T=r.string().trim().min(1).max(500),je=r.string().regex(/^[a-f0-9]{64}$/),b=r.object({id:T,revision:r.number().int().positive(),contentHash:je}).strict(),F=r.object({schemaVersion:r.literal("openpond.hostedTasksetSummary.v1"),id:T,teamId:T,release:b,name:r.string().min(1).max(500),description:r.string().max(2e4),taskCount:r.number().int().nonnegative(),buildIntent:r.string().min(1).max(100),methodHint:r.string().min(1).max(100).nullable(),packageBytes:r.number().int().nonnegative().nullable(),storedBytes:r.number().int().nonnegative().nullable(),createdAt:r.string().datetime({offset:!0})}).strict(),Pe=r.object({afterId:r.string().trim().min(1).max(2e3).optional(),limit:r.number().int().min(1).max(100).default(30),modelProjectId:T.optional(),projectId:T.optional(),search:r.string().trim().max(100).optional(),sort:r.enum(["id","name","updated"]).default("id")}).strict(),Re=r.object({items:r.array(F).max(100),nextCursor:r.string().trim().min(1).max(2e3).nullable()}).strict(),Ae=r.object({code:r.string().min(1),message:r.string().min(1)}).strict(),w=class extends Error{static{c(this,"OpenPondTasksetCatalogError")}constructor(a,e,t){super(t),this.status=a,this.code=e,this.name="OpenPondTasksetCatalogError"}status;code},et=class{static{c(this,"OpenPondTasksetCatalogClient")}#e;constructor(a){if(!a.apiKey.trim()||!a.teamId.trim())throw new Error("Taskset API key and workspace are required.");let e=new URL(a.baseUrl);if(!["http:","https:"].includes(e.protocol)||e.username||e.password||e.search||e.hash)throw new Error("Taskset base URL must be an HTTP(S) endpoint without credentials, query, or fragment.");this.#e={...a,baseUrl:e.toString().replace(/\/+$/,"")}}async list(a={},e={}){let t=Pe.parse(a),s=new URLSearchParams({limit:String(t.limit)});t.afterId&&s.set("afterId",t.afterId),t.modelProjectId&&s.set("modelProjectId",t.modelProjectId),t.projectId&&s.set("projectId",t.projectId),t.search!==void 0&&s.set("search",t.search),s.set("sort",t.sort);let n=Re.parse(await this.#t(`?${s}`,e.signal));if(n.items.length>t.limit||new Set(n.items.map(o=>o.id)).size!==n.items.length||n.items.some(o=>o.teamId!==this.#e.teamId))throw new w(502,"catalog_scope_mismatch","Taskset inventory did not match the requested workspace or page size.");return n}async get(a,e={}){let t=T.parse(a),s=F.parse(await this.#t(`/${encodeURIComponent(t)}`,e.signal));if(s.id!==t||s.teamId!==this.#e.teamId)throw new w(502,"catalog_identity_mismatch","Taskset metadata did not match the requested identity.");return s}async resolve(a,e={}){let t=b.parse(a),s=F.parse(await this.#t(`/releases/${encodeURIComponent(t.id)}/${t.revision}/${t.contentHash}`,e.signal));if(s.teamId!==this.#e.teamId||s.release.id!==t.id||s.release.revision!==t.revision||s.release.contentHash!==t.contentHash)throw new w(502,"catalog_release_mismatch","Taskset metadata did not match the requested immutable release.");return s}async#t(a,e){let t=await(this.#e.fetch??globalThis.fetch)(`${this.#e.baseUrl}/v1/taskset-catalog${a}`,{headers:{Authorization:`Bearer ${this.#e.apiKey}`,"X-OpenPond-Team-Id":this.#e.teamId,Accept:"application/json"},signal:e,redirect:"error"}),s=t.body?.getReader();if(!s)throw new w(t.status,"empty_response","Taskset catalog response was empty.");let n=new TextDecoder,o=0,i="";try{for(;;){let l=await s.read();if(l.done)break;if(o+=l.value.byteLength,o>4194304)throw new w(t.status,"response_too_large","Taskset catalog response exceeded 4 MiB.");i+=n.decode(l.value,{stream:!0})}i+=n.decode()}finally{await s.cancel(),s.releaseLock()}let d=JSON.parse(i);if(!t.ok){let l=Ae.safeParse(d);throw new w(t.status,l.success?l.data.code:"invalid_error_response",l.success?l.data.message:`Taskset catalog request failed (${t.status}).`)}return d}};var f=r.string().trim().min(1).max(500),S=r.string().regex(/^[a-f0-9]{64}$/),He=J.pick({portableProjectId:!0,name:!0,objective:!0,defaultBaseModel:!0,defaultDestinationId:!0,sourceRevision:!0,sourceUpdatedAt:!0}).extend({trainingSetup:M.omit({tasksetRef:!0,rewardBindingRef:!0,tasksetRelease:!0})}).strict(),_e=r.object({schemaVersion:r.literal("openpond.tasksetPackagePublication.v1"),operationId:f,modelProjectId:f,expectedProjectEtag:S.nullable(),name:r.string().trim().min(1).max(200),description:r.string().max(5e3),buildIntent:r.enum(["demonstrations","preferences","verifiable_reward","rubric","discovery"]),methodHint:r.enum(["sft","dpo","grpo","ppo"]).nullable(),package:A,modelConfiguration:He.optional(),evaluationPackage:A.optional(),selection:r.enum(["select","attach"]).optional()}).strict().refine(a=>a.selection!=="attach"||a.modelConfiguration===void 0,"Attachment-only publication cannot replace Model configuration.").refine(a=>!a.evaluationPackage||a.modelConfiguration!==void 0&&a.modelConfiguration.trainingSetup.evaluationTasksetRef!=null&&m(a.modelConfiguration.trainingSetup.evaluationTasksetRef)===m(P(a.evaluationPackage.taskset)),"Evaluation package must match the selected immutable evaluation in Model configuration."),Ee=r.object({schemaVersion:r.literal("openpond.tasksetPackageReceipt.v1"),teamId:f,modelProjectId:f,operationId:f,taskset:b,packageHash:S,hostedTasksetId:f,projectEtag:S,project:X.optional(),selection:r.enum(["select","attach"]).optional(),evaluation:r.object({taskset:b,packageHash:S,hostedTasksetId:f}).strict().optional()}).strict(),Ce=r.object({schemaVersion:r.literal("openpond.tasksetPackageReadback.v1"),teamId:f,modelProjectId:f,package:A}).strict(),De=r.object({schemaVersion:r.literal("openpond.tasksetReleasePackageReadback.v1"),teamId:f,release:b,package:A}).strict(),p=class extends Error{static{c(this,"OpenPondTasksetPackageError")}constructor(a,e,t){super(t),this.status=a,this.code=e,this.name="OpenPondTasksetPackageError"}status;code},mt=class{static{c(this,"OpenPondTasksetPackageClient")}#e;constructor(a){let e=new URL(a.baseUrl);if(!["http:","https:"].includes(e.protocol)||e.username||e.password||e.search||e.hash||!a.apiKey.trim()||!a.teamId.trim())throw new Error("Taskset package client requires a clean HTTP(S) endpoint and workspace credentials.");this.#e={...a,baseUrl:e.toString().replace(/\/+$/,"")}}async publish(a,e={}){let t=_e.parse(a);H(t.package),t.evaluationPackage&&H(t.evaluationPackage);let s=Ee.parse(await this.#t("","POST",t,e.signal)),n=t.package.taskset;if(s.teamId!==this.#e.teamId||s.modelProjectId!==t.modelProjectId||s.operationId!==t.operationId||s.packageHash!==t.package.contentHash||s.taskset.id!==n.id||s.taskset.revision!==n.revision||s.taskset.contentHash!==n.contentHash)throw new p(502,"package_receipt_mismatch","Taskset publication receipt did not match the requested package and owner.");if(t.selection!==void 0&&s.selection!==t.selection)throw new p(502,"package_receipt_mismatch","Taskset publication did not retain its selection mode.");if(t.evaluationPackage&&(!s.evaluation||s.evaluation.packageHash!==t.evaluationPackage.contentHash||m(s.evaluation.taskset)!==m(P(t.evaluationPackage.taskset))))throw new p(502,"package_receipt_mismatch","Taskset publication did not retain the complete selected evaluation package.");if(t.selection==="attach"&&s.projectEtag!==t.expectedProjectEtag)throw new p(502,"package_receipt_mismatch","Attaching a historical Taskset changed the Model configuration.");if(t.modelConfiguration){let o=t.modelConfiguration,i=s.project,d=ce(t.package),l=M.parse({...o.trainingSetup,tasksetRef:P(n),rewardBindingRef:d?P(d):null,tasksetRelease:null});if(!i||i.teamId!==this.#e.teamId||i.etag!==s.projectEtag||![i.id,i.portableProjectId].includes(t.modelProjectId)||i.portableProjectId!==o.portableProjectId||i.name!==o.name||i.objective!==o.objective||i.sourceRevision!==o.sourceRevision||Date.parse(i.sourceUpdatedAt)!==Date.parse(o.sourceUpdatedAt)||m(i.defaultBaseModel)!==m(o.defaultBaseModel)||i.defaultDestinationId!==o.defaultDestinationId||m(i.trainingSetup)!==m(l))throw new p(502,"package_receipt_mismatch","Taskset publication did not retain the requested Model configuration.")}return s}async getByRelease(a,e={}){let t=b.parse(a),s=e.expectedPackageHash===void 0?void 0:S.parse(e.expectedPackageHash),n=De.parse(await this.#t(`/releases/${encodeURIComponent(t.id)}/${t.revision}/${t.contentHash}/package`,"GET",void 0,e.signal)),o=H(n.package),i={id:o.taskset.id,revision:o.taskset.revision,contentHash:o.taskset.contentHash};if(n.teamId!==this.#e.teamId||m(n.release)!==m(t)||m(i)!==m(t)||s!==void 0&&o.contentHash!==s)throw new p(502,"package_readback_mismatch","Independent Dataset package differs from the requested workspace or exact release.");return o}async get(a,e,t={}){let s=f.parse(a),n=b.parse(e),o=t.expectedPackageHash===void 0?void 0:S.parse(t.expectedPackageHash),i=Ce.parse(await this.#t(`/${encodeURIComponent(s)}/${encodeURIComponent(n.id)}/${n.revision}/${n.contentHash}`,"GET",void 0,t.signal)),d=i.package.taskset;if(i.teamId!==this.#e.teamId||i.modelProjectId!==s||d.id!==n.id||d.revision!==n.revision||d.contentHash!==n.contentHash)throw new p(502,"package_readback_mismatch","Taskset package did not match the requested release and owner.");if(o!==void 0&&i.package.contentHash!==o)throw new p(502,"package_readback_mismatch","Taskset package did not match the saved publication receipt.");return H(i.package)}async#t(a,e,t,s){let n=t===void 0?void 0:JSON.stringify(t);if(n&&new TextEncoder().encode(n).byteLength>B)throw new p(413,"package_too_large","Taskset publication exceeds the 64 MiB envelope.");let o=await(this.#e.fetch??globalThis.fetch)(`${this.#e.baseUrl}/v1/taskset-packages${a}`,{method:e,headers:{Authorization:`Bearer ${this.#e.apiKey}`,"X-OpenPond-Team-Id":this.#e.teamId,Accept:"application/json",...n?{"Content-Type":"application/json"}:{}},body:n,signal:s,redirect:"error"}),i=o.body?.getReader();if(!i)throw new p(o.status,"empty_response","Taskset package response was empty.");let d=new TextDecoder("utf-8",{fatal:!0}),l=0,x="";try{for(;;){let h=await i.read();if(h.done)break;if(l+=h.value.byteLength,l>B)throw new p(413,"package_too_large","Taskset response exceeds the 64 MiB envelope.");x+=d.decode(h.value,{stream:!0})}x+=d.decode()}finally{await i.cancel(),i.releaseLock()}let j=JSON.parse(x);if(!o.ok){let h=r.object({code:r.string(),message:r.string()}).safeParse(j);throw new p(o.status,h.success?h.data.code:"package_request_failed",h.success?h.data.message:`Taskset package request failed (${o.status}).`)}return j}};var y=r.string().trim().min(1).max(240),me=r.string().trim().min(1),Me=r.string().trim().min(8).max(256),$e=r.string().trim().regex(/^[A-Za-z_$][A-Za-z0-9_$]*$/),Be=r.record(r.string(),r.unknown()).default({});function ue(a){let e=a.trim().replaceAll("\\","/");return!e||e.startsWith("/")||e==="."||e===".."?!1:!e.split("/").some(t=>!t||t==="."||t==="..")}c(ue,"safeRelativeFilePath");var Fe=$.extend({sourceRefs:r.array(y).max(100).default([])}),Oe=r.enum(["draft","validating","needs_review","published"]),qe=r.object({enabled:r.boolean(),candidateCount:r.number().int().min(2).max(4),minimumSamples:r.number().int().min(1).max(1e4).default(100),allowTies:r.boolean(),allowRejectAll:r.boolean(),rubric:r.string().trim().max(5e4),criteria:r.array(r.object({id:y,label:r.string().trim().min(1).max(500),description:r.string().trim().max(1e4),weight:r.number().nonnegative().max(1e3)})).max(100)}),Ve=r.object({mode:r.enum(["text","structured_json","artifacts"]),jsonSchema:r.record(r.string(),r.unknown()).nullable(),renderer:r.object({module:r.string().trim().min(1).max(1e3).refine(ue,"Renderer modules must use a safe relative path."),exportName:$e,configRef:r.string().trim().min(1).max(1e3).refine(ue,"Renderer configuration must use a safe relative path.").nullable().default(null)}).nullable()}).superRefine((a,e)=>{a.mode==="structured_json"&&!a.jsonSchema&&e.addIssue({code:"custom",message:"Structured JSON output requires a JSON Schema.",path:["jsonSchema"]}),a.mode==="text"&&a.renderer&&e.addIssue({code:"custom",message:"Text output cannot configure an artifact renderer.",path:["renderer"]})}),I=r.object({schemaVersion:r.literal("openpond.tasksetDraft.v1"),id:y,revision:r.number().int().positive(),profileId:y,modelScope:r.object({modelId:y,expectedModelRevision:r.number().int().positive(),source:N.optional()}).strict().nullable().default(null),name:r.string().trim().max(500),objective:r.string().trim().max(2e4),purpose:Z.default("general"),benchmark:Q.nullable().default(null),preferenceComparison:ee.nullable().default(null),status:Oe,sourceRefs:r.array(te).max(1e5).default([]),datasetArtifact:Y.nullable().optional(),policy:ae,environment:re,output:Ve.default({mode:"text",jsonSchema:null,renderer:null}),capabilities:ne,metrics:W,review:qe,tasks:r.array(Fe).max(1e6).default([]),graders:r.array(oe).max(1e3).default([]),graderFixtures:r.array(ie).max(1e5).default([]),learningSignals:se,publishedTasksetRef:r.object({id:y,revision:r.number().int().positive(),contentHash:Me}).nullable(),createdAt:me,updatedAt:me,metadata:Be}).superRefine((a,e)=>{a.purpose==="benchmark"&&!a.benchmark&&e.addIssue({code:"custom",message:"Benchmark drafts require an immutable benchmark binding.",path:["benchmark"]}),a.purpose!=="benchmark"&&a.benchmark&&e.addIssue({code:"custom",message:"Only benchmark drafts may carry a benchmark binding.",path:["benchmark"]}),a.datasetArtifact&&a.tasks.length>0&&e.addIssue({code:"custom",message:"Artifact-backed drafts may not duplicate canonical rows inline.",path:["tasks"]}),a.status==="published"&&!a.publishedTasksetRef&&e.addIssue({code:"custom",message:"Published drafts require an immutable Taskset reference.",path:["publishedTasksetRef"]})}),fe=6e6,ge=new Set(["taskset.json","capabilities.json","data/tasks.jsonl","tasks/tasks.jsonl","graders/graders.json","fixtures/grader-fixtures.json","metrics/policy.json","assets/manifest.json","environment/contract.json","environment/taskset.ts","rubrics/preference-review.md","comparisons/policy.json"]);function O(a){let e=v.parse(a);return!ge.has(e)&&!e.startsWith("source-artifacts/")}c(O,"isWritableTasksetDraftFilePath");function ke(a){return ge.has(v.parse(a))}c(ke,"isManagedTasksetDraftFilePath");function ze(a,e){let t=O(a);if(e.byteLength>fe)throw new Error("Taskset draft file content is invalid or exceeds 6 MB.");let s;try{let n=new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0}).decode(e);s=/[\u0000-\u0008\u000e-\u001f]/.test(n)?pe(e):{encoding:"utf8",data:n}}catch{s=pe(e)}return{path:a,writable:t,content:s,sizeBytes:e.byteLength,contentHash:R(e)}}c(ze,"createTasksetDraftFile");function Ue(a){let e=K.parse(a),t;try{if(e.encoding==="utf8")t=new TextEncoder().encode(e.data);else{let s=atob(e.data);if(btoa(s)!==e.data)throw new Error("Noncanonical base64");t=Uint8Array.from(s,n=>n.charCodeAt(0))}}catch{throw new Error("Taskset draft file content is invalid or exceeds 6 MB.")}if(t.byteLength>fe)throw new Error("Taskset draft file content is invalid or exceeds 6 MB.");return t}c(Ue,"decodeTasksetDraftFileContent");function pe(a){let e="";for(let t=0;t<a.length;t+=8192)e+=String.fromCharCode(...a.subarray(t,t+8192));return{encoding:"base64",data:btoa(e)}}c(pe,"base64Content");function Le(a){let e=[];a.output.renderer&&e.push({relativePath:a.output.renderer.module,source:`export async function ${a.output.renderer.exportName}(output: unknown) {
3
+ // Return artifact paths or bytes derived from the model's structured output.
4
+ return output;
5
+ }
6
+ `});for(let t of a.graders)t.kind==="custom_verifier"&&e.push({relativePath:t.module,source:`export async function ${t.exportName}(input: { output: unknown; task: unknown }) {
7
+ return { passed: false, score: 0, feedback: "Implement this verifier." };
8
+ }
9
+ `});a.metrics.customAggregator&&e.push({relativePath:a.metrics.customAggregator.module,source:`export function ${a.metrics.customAggregator.exportName}(scores: number[]) {
10
+ return scores.length ? scores.reduce((sum, score) => sum + score, 0) / scores.length : 0;
11
+ }
12
+ `});for(let t of e)v.parse(t.relativePath);return e}c(Le,"configuredTasksetDraftFiles");function be(a){let e=I.parse(a);return new Map([["taskset.json",k(e)],["tasks/tasks.jsonl",Ne(e.tasks)],["graders/graders.json",k(e.graders)],["fixtures/grader-fixtures.json",k(e.graderFixtures)],["metrics/policy.json",k(e.metrics)],["assets/manifest.json",k(e.tasks.flatMap(t=>t.assets??[]))],["environment/contract.json",k(e.environment)],["rubrics/preference-review.md",We(e)],["comparisons/policy.json",k(e.review)]])}c(be,"renderTasksetDraftManifests");function We(a){let e=a.review.criteria.length?`
13
+
14
+ ## Criteria
15
+
16
+ ${a.review.criteria.map(t=>`- **${t.label}** (${t.weight}): ${t.description}`).join(`
17
+ `)}`:"";return`# Preference review rubric
18
+
19
+ ${a.review.rubric}${e}
20
+ `}c(We,"rubricMarkdown");function Ne(a){return a.length?`${a.map(e=>JSON.stringify(e)).join(`
21
+ `)}
22
+ `:""}c(Ne,"jsonLines");var E=64*1024*1024,ve=r.string().regex(/^[a-f0-9]{64}$/),we=r.object({path:v,contentHash:ve,sizeBytes:r.number().int().nonnegative().max(E),base64:r.string().max(E)}).strict(),Te=r.object({schemaVersion:r.literal("openpond.tasksetDraftWorkspace.v1"),draft:I,files:r.array(we).max(1e4)}).strict(),Ke=Te.extend({contentHash:ve}).strict();function Se(a){D(a,E);let e=Te.parse(a);return e.files.sort((t,s)=>t.path<s.path?-1:t.path>s.path?1:0),C({...e,contentHash:m(e)})}c(Se,"createTasksetDraftWorkspace");function C(a){D(a,E);let e=Ke.parse(a),{contentHash:t,...s}=e;if(m(s)!==t)throw new Error("Taskset draft workspace differs from its retained bytes.");let n=null,o=new Set;for(let i of e.files){if(ke(i.path))throw new Error("Managed Taskset files are represented by the draft document.");if(n!==null&&n>=i.path)throw new Error("Taskset draft file paths must be unique and sorted.");let d=i.path.split("/");for(let l=1;l<d.length;l++)if(o.has(d.slice(0,l).join("/")))throw new Error("A Taskset draft file occupies another file's directory.");Ie(i),o.add(i.path),n=i.path}return e}c(C,"validateTasksetDraftWorkspace");function It(a,e){let t=C(a);v.parse(e);let s=t.files.find(i=>i.path===e),n=ke(e)?be(t.draft).get(e):void 0;if(!s&&n===void 0)throw new Error("Taskset draft file does not exist.");let o=ze(e,s?Ie(s):new TextEncoder().encode(n));return{draftRevision:t.draft.revision,file:{...o,writable:o.writable&&t.draft.status!=="published"}}}c(It,"readTasksetDraftWorkspaceFile");function xt(a){let e=C(a),t=e.files.map(s=>({path:s.path,sizeBytes:s.sizeBytes,writable:e.draft.status!=="published"&&O(s.path)}));for(let[s,n]of be(e.draft))t.push({path:s,sizeBytes:new TextEncoder().encode(n).byteLength,writable:!1});return{draftRevision:e.draft.revision,files:t.sort((s,n)=>s.path<n.path?-1:s.path>n.path?1:0)}}c(xt,"listTasksetDraftWorkspaceFiles");function jt(a){let e=ye(a.workspace,a.expectedDraftRevision),t=I.parse(a.draft),s=e.draft;if(t.id!==s.id||t.profileId!==s.profileId||m(t.modelScope)!==m(s.modelScope))throw new Error("Taskset draft Model ownership cannot change.");if(t.revision!==s.revision||t.status!==s.status||t.createdAt!==s.createdAt||m(t.publishedTasksetRef)!==m(s.publishedTasksetRef))throw new Error("Taskset draft lifecycle fields cannot change through form edits.");let n=[...e.files];for(let d of Le(t))if(!n.some(l=>l.path===d.relativePath)){let l=new TextEncoder().encode(d.source);n.push({path:d.relativePath,contentHash:R(l),sizeBytes:l.byteLength,base64:xe(l)})}let o=t.metrics.customAggregator,i=o?n.find(d=>d.path===o.module):void 0;return Se({schemaVersion:e.schemaVersion,files:n,draft:{...t,revision:s.revision+1,status:"draft",updatedAt:a.now,...o&&i?{metrics:{...t.metrics,customAggregator:{...o,contentHash:i.contentHash}}}:{}}})}c(jt,"saveTasksetDraftWorkspaceDocument");function Pt(a){let e=G.parse(a.mutation),t=ye(a.workspace,e.expectedDraftRevision);if(t.draft.id!==e.draftId)throw new Error("Taskset draft file belongs to another draft.");if(!O(e.path))throw new Error("This file is managed by the Taskset forms or retained source history.");let s=t.files.find(o=>o.path===e.path);if((s?.contentHash??null)!==e.expectedFileHash)throw new Error("Taskset draft file changed. Reload it before saving.");if(!s&&e.content===null)throw new Error("Taskset draft file does not exist.");let n=t.files.filter(o=>o.path!==e.path);if(e.content!==null){let o=Ue(e.content);n.push({path:e.path,contentHash:R(o),sizeBytes:o.byteLength,base64:xe(o)})}return Se({schemaVersion:t.schemaVersion,files:n,draft:{...t.draft,revision:t.draft.revision+1,status:"draft",updatedAt:a.now}})}c(Pt,"saveTasksetDraftWorkspaceFile");function ye(a,e){let t=C(a);if(t.draft.status==="published")throw new Error("Published Taskset drafts are immutable.");if(t.draft.revision!==e)throw new Error("Taskset draft changed. Reload before saving.");return t}c(ye,"editableWorkspace");function Ie(a){let e=we.parse(a),t;try{t=atob(e.base64)}catch{throw new Error("Taskset draft file contains invalid base64.")}if(btoa(t)!==e.base64)throw new Error("Taskset draft file contains noncanonical base64.");let s=Uint8Array.from(t,n=>n.charCodeAt(0));if(s.byteLength!==e.sizeBytes||R(s)!==e.contentHash)throw new Error("Taskset draft file differs from its retained bytes.");return s}c(Ie,"decodeTasksetDraftWorkspaceFile");function xe(a){let e="";for(let t=0;t<a.length;t+=8192)e+=String.fromCharCode(...a.subarray(t,t+8192));return btoa(e)}c(xe,"base64");var he=class extends Error{static{c(this,"TasksetDraftPublishError")}issues;constructor(a){super(a.map(e=>e.message).join(`
23
+ `)),this.name="TasksetDraftPublishError",this.issues=a}};function Rt(a){let e=a.now??new Date().toISOString(),t=a.id?.trim()||`taskset-draft-${globalThis.crypto.randomUUID()}`;return I.parse({schemaVersion:"openpond.tasksetDraft.v1",id:t,revision:1,profileId:a.profileId,modelScope:a.modelScope??null,name:a.name?.trim()??"",objective:"",purpose:"general",benchmark:null,preferenceComparison:null,status:"draft",sourceRefs:[],datasetArtifact:null,policy:{policyVisibleFields:["input"],privilegedFields:["expectedOutput"],hiddenGraderRefs:[],connectedAppScopes:[]},environment:{protocolVersion:"openpond.taskEnvironment.v1",kind:"chat",entrypoint:"openpond-chat-v1",stateful:!1,deterministicSeeds:!0,toolNames:[],lifecycle:["create","reset","step","grade","cleanup"],defaultTimeoutMs:12e4,networkPolicy:"none",resources:[],metadata:{}},output:{mode:"text",jsonSchema:null,renderer:null},capabilities:{schemaVersion:"openpond.tasksetCapabilities.v1",taskKind:"chat",supportedSignals:["demonstration","preference","correction","feedback","reward","label"],compatibleMethods:["none"],rewardKinds:["none"],requiresTools:!1,requiresState:!1,requiresPrivilegedGrading:!0,environmentPlacements:["local","remote","colocated"],exportable:!0,portabilityBlockers:[]},metrics:{schemaVersion:"openpond.tasksetMetricPolicy.v1",primaryMetric:"score",aggregation:"mean_score",missingReward:"zero",customAggregator:null},review:{enabled:!1,candidateCount:2,minimumSamples:100,allowTies:!0,allowRejectAll:!0,rubric:"",criteria:[]},tasks:[],graders:[],graderFixtures:[],learningSignals:{demonstrations:[],preferences:[],corrections:[],feedback:[],rewards:[],labels:[]},publishedTasksetRef:null,createdAt:e,updatedAt:e,metadata:{}})}c(Rt,"createTasksetDraft");function Ge(a){let e=[];a.name.trim()||e.push({code:"name_missing",message:"Name is required.",path:"name"}),a.objective.trim()||e.push({code:"objective_missing",message:"Objective is required.",path:"objective"}),!a.datasetArtifact&&a.tasks.length===0&&e.push({code:"tasks_missing",message:"Add at least one task or Dataset artifact.",path:"tasks"});let t=new Set(a.sourceRefs.map(s=>s.id));for(let s of a.tasks)for(let n of s.sourceRefs)t.has(n)||e.push({code:"task_source_missing",message:`Task ${s.id} references missing source ${n}.`,path:`tasks.${s.id}.sourceRefs`});return e}c(Ge,"draftPublishIssues");function At(a,e=new Date().toISOString()){let t=_.parse(a);return I.parse({schemaVersion:"openpond.tasksetDraft.v1",id:`${t.id}-draft`,revision:1,profileId:t.profileId,name:t.name,objective:t.objective,purpose:t.purpose,benchmark:t.benchmark,preferenceComparison:t.preferenceComparison,status:"draft",sourceRefs:t.sourceRefs,datasetArtifact:t.datasetArtifact??null,policy:t.policy,environment:t.environment,output:Ye(t.metadata),capabilities:t.capabilities,metrics:t.metrics??{schemaVersion:"openpond.tasksetMetricPolicy.v1",primaryMetric:"score",aggregation:"mean_score",missingReward:"zero",customAggregator:null},review:{enabled:!!t.preferenceComparison,candidateCount:2,minimumSamples:100,allowTies:!0,allowRejectAll:!0,rubric:"",criteria:[]},tasks:t.tasks,graders:t.graders,graderFixtures:t.graderFixtures,learningSignals:t.learningSignals,publishedTasksetRef:{id:t.id,revision:t.revision,contentHash:t.contentHash},createdAt:e,updatedAt:e,metadata:{...t.metadata,importedFromTaskset:{id:t.id,revision:t.revision,contentHash:t.contentHash}}})}c(At,"tasksetDraftFromTaskset");function Ht(a){let e=I.parse(a.draft),t=a.now??new Date().toISOString(),s=Ge(e);if(s.length)throw new he(s);let n=e.modelScope?.source;if(n&&a.tasksetId&&a.tasksetId!==n.tasksetId)throw new Error("Taskset draft publication differs from its prepared identity.");let o=n?.tasksetId||a.tasksetId?.trim()||e.publishedTasksetRef?.id||e.id.replace(/-draft$/,""),i=n?.tasksetRevision??(e.publishedTasksetRef?.id===o?e.publishedTasksetRef.revision+1:1),d=e.sourceRefs.length?e.sourceRefs:[Je(e,o,t)],l=d[0].id,x=e.tasks.map(u=>$.parse({...u,sourceRefs:u.sourceRefs.length?u.sourceRefs:[l],metadata:{exampleOrigin:"expert_authored",...u.metadata}})),j=e.capabilities.compatibleMethods.find(u=>u!=="none"&&u!=="retrieval")??null,h=Xe(e),q=e.graders.filter(u=>u.rewardEligible&&u.weight>0&&u.kind!=="human"),V=j===null&&h==="verifiable_reward"&&q.length>0,g=j??(V?"grpo":null),z=_.parse({schemaVersion:"openpond.taskset.v1",id:o,revision:i,profileId:e.profileId,profileRelease:null,createImproveRunId:null,name:e.name,objective:e.objective,purpose:e.purpose,benchmark:e.benchmark,preferenceComparison:e.preferenceComparison,status:"needs_review",sourceRefs:d,datasetArtifact:e.datasetArtifact??null,policy:e.policy,environment:e.environment,capabilities:V?{...e.capabilities,compatibleMethods:["grpo"],rewardKinds:[...new Set(q.map(u=>u.kind==="model_judge"?"model_judge":"deterministic"))]}:e.capabilities,metrics:e.metrics,tasks:x,graders:e.graders,graderFixtures:e.graderFixtures,learningSignals:e.learningSignals,authoringProvenance:{schemaVersion:"openpond.taskAuthoringProvenance.v1",model:null,modelConfig:{},skillHash:m("openpond-taskset-draft-authoring-v1"),promptTemplateVersion:"taskset-draft-v1",buildIntent:h,buildSpecification:null,evidenceHashes:d.map(u=>u.sourceHash),tasksetSdkVersion:"draft-v1",sourceCommit:null,repairHistory:[],createdAt:t},readiness:null,contentHash:"00000000",createdAt:i===1?e.createdAt:t,updatedAt:t,metadata:{...e.metadata,...n?{modelTasksetAuthoring:n.lineage}:{},tasksetReviewPolicy:e.review,tasksetOutputContract:e.output,...a.sourcePackageHash?{sourcePackageHash:a.sourcePackageHash}:{},...g?{trainingMethod:g}:{},diagnosis:{schemaVersion:"openpond.capabilityDiagnosis.v1",summary:e.objective,stableBehavior:[e.objective],changingKnowledge:[],requiredContext:[],requiredTools:e.environment.toolNames,intervention:g==="dpo"?"preference":g==="grpo"||g==="ppo"?"grpo_rft":g==="sft"?"sft":"no_training",trainingEligible:g!==null,rationale:g?[`The author selected ${g.toUpperCase()} compatibility.`]:["The Taskset is currently configured for evaluation only."],confidence:1}}}),U=_.parse({...z,contentHash:le(z)}),L=de(U,{purpose:"publication"}).issues.filter(u=>u.severity==="error");if(L.length)throw new he(L.map(u=>({code:u.code,message:u.message,path:u.path})));return U}c(Ht,"publishTasksetDraft");function Je(a,e,t){let s=m({draftId:a.id,draftRevision:a.revision,tasks:a.tasks});return{schemaVersion:"openpond.generatedDatasetSource.v1",kind:"generated",id:`source-${e}`,profileId:a.profileId,title:`${a.name} manual authoring`,sourceHash:s,occurredAt:t,licensingStatus:"approved",secretScanStatus:"passed",piiScanStatus:"passed",generatorId:"openpond-taskset-draft",generatorVersion:"1",seed:0,generatorHash:s,metadata:{draftId:a.id,draftRevision:a.revision}}}c(Je,"generatedDraftSource");function Xe(a){return a.metadata.buildIntent==="discovery"||!a.graders.length&&!a.learningSignals.preferences.length&&!a.learningSignals.rewards.length&&!a.learningSignals.labels.length?"discovery":a.learningSignals.preferences.length?"preferences":a.learningSignals.rewards.length?"verifiable_reward":a.learningSignals.labels.length?"rubric":!a.capabilities.compatibleMethods.some(e=>e!=="none"&&e!=="retrieval")&&a.graders.some(e=>e.rewardEligible&&e.weight>0&&e.kind!=="human")?"verifiable_reward":"demonstrations"}c(Xe,"buildIntentForDraft");function Ye(a){let e=a.tasksetOutputContract;return e&&typeof e=="object"&&!Array.isArray(e)?e:{mode:"text",jsonSchema:null,renderer:null}}c(Ye,"tasksetOutputContract");export{b as a,et as b,He as c,_e as d,Ee as e,Ce as f,De as g,p as h,mt as i,Oe as j,I as k,fe as l,O as m,ke as n,ze as o,Ue as p,Le as q,be as r,E as s,Ke as t,Se as u,C as v,It as w,xt as x,jt as y,Pt as z,Ie as A,Rt as B,At as C,Ht as D};
@@ -0,0 +1,8 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{d as v}from"./chunk-NHQ36THU.js";import{h as b,i as E}from"./chunk-QNG27G3T.js";import{b as S}from"./chunk-L3KS6MOV.js";import{l as u,n as f}from"./chunk-KGNCKIFP.js";import{a as p}from"./chunk-FTQLQJQV.js";var c="desktop-personal",L="personal-default";async function K(s){let a=await s.store.getSelectedHarnessWorkspace({ownerKind:"personal",ownerId:c});if(a&&a.metadata.selectionEligible!==!1)return await v({store:s.store,storeDir:s.storeDir,workspaceId:a.id}),H(s.store,a.id,a.currentChannel.release?.contentHash??null);let t=(await s.store.listHarnessWorkspaces({ownerKind:"personal",ownerId:c})).find(o=>o.metadata.selectionEligible!==!1);if(t)return await s.store.selectHarnessWorkspace({ownerKind:"personal",ownerId:c,workspaceId:t.id,updatedAt:(s.now??(()=>new Date().toISOString()))()}),H(s.store,t.id,t.currentChannel.release?.contentHash??null);let r=await s.loadProfileState(),n=r.mode==="local"&&r.sourcePath&&!r.error?await E({store:s.store,storeDir:s.storeDir,id:L,ownerId:c,name:r.activeProfile?.trim()||"Personal Harness",profile:r,now:s.now}):await b({store:s.store,storeDir:s.storeDir,id:L,ownerId:c,name:"Personal Harness",now:s.now});return await s.store.selectHarnessWorkspace({ownerKind:"personal",ownerId:c,workspaceId:n.workspace.id,updatedAt:(s.now??(()=>new Date().toISOString()))()}),n.release}p(K,"ensureSelectedLocalHarnessWorkspace");async function W(s){let a=await s.getSelectedHarnessWorkspace({ownerKind:"personal",ownerId:c});return a?H(s,a.id,a.currentChannel.release?.contentHash??null):null}p(W,"resolveSelectedLocalHarnessRelease");async function H(s,a,t){if(!t)throw new Error(`Selected Harness workspace ${a} has no current release.`);let r=await s.getHarnessReleaseRecord(t);if(!r||r.workspaceId!==a)throw new Error(`Selected Harness workspace ${a} points to a missing release ${t}.`);return f(r.agentSnapshot,"Selected Agent snapshot"),f(r.harnessRelease,"Selected Harness release"),r}p(H,"requireCurrentRelease");import{promises as I}from"node:fs";import i from"node:path";async function J(s,a){if(a){let n=await s.getHarnessReleaseRecord(a.contentHash);if(!n||n.harnessRelease.id!==a.id)throw new Error("The selected immutable Harness release is unavailable.");let o=await s.getHarnessWorkspace(n.workspaceId);if(!o||o.ownerScope.kind!=="personal"||o.ownerScope.id!==c)throw new Error("The selected Harness release is not available to this local owner.");return f(n.agentSnapshot,"Selected Agent snapshot"),f(n.harnessRelease,"Selected Harness release"),A({workspace:o,release:n})}let t=await W(s);if(!t)return null;let r=await s.getSelectedHarnessWorkspace({ownerKind:"personal",ownerId:c});if(!r||r.id!==t.workspaceId)throw new Error("Selected Harness workspace changed while its release was being admitted.");return A({workspace:r,release:t})}p(J,"loadSelectedLocalHarnessRuntime");async function A(s){let{workspace:a,release:t}=s;if(t.workspaceId!==a.id)throw new Error("Harness release does not belong to the requested workspace.");let r=i.join(t.bundlePath,"source");await Promise.all(t.harnessRelease.files.map(e=>x(r,e.path,e.contentHash)));let n=await Promise.all(t.agentSnapshot.instructions.map(async e=>({path:e.path,content:await g(r,e.path,e.contentHash)}))),o=[],m=new Map;for(let e of t.agentSnapshot.skills){let l=await g(r,e.path,e.contentHash),d=S(l);if(!d.name||!d.description||d.messages.length>0)throw new Error(`Released Harness Skill ${e.path} is invalid: ${d.messages.join(" ")||"missing name or description"}`);if(m.has(d.name))throw new Error(`Released Harness has duplicate Skill ${d.name}.`);let k=`${i.posix.dirname(e.path)}/`,P=t.harnessRelease.files.filter(h=>h.visibility==="policy"&&h.path.startsWith(k)&&h.path!==e.path).map(h=>h.path.slice(k.length)).sort(),y={name:d.name,description:d.description,path:e.path,scope:"profile",enabled:!0,sourcePath:r,charCount:l.length,sourceHash:e.contentHash,validationStatus:"valid",validationMessages:[],resourceFiles:P};o.push(y),m.set(y.name,async()=>{let h=await g(r,e.path,e.contentHash),w=S(h);if(!w.name||!w.description||w.messages.length>0)throw new Error(`Released Harness Skill ${e.path} failed validation while loading.`);return{name:w.name,description:w.description,body:w.body,path:e.path,sourceHash:e.contentHash,charCount:h.length,packagePath:i.join(r,...i.posix.dirname(e.path).split("/")),resourceFiles:P}})}o.sort((e,l)=>e.name.localeCompare(l.name));let $={profileSourcePath:r,skills:o,readSkill:m.size>0?async e=>{let l=m.get(e);if(!l)throw new Error(`Released Harness Skill not found: ${e}`);return l()}:null},R=n.sort((e,l)=>e.path.localeCompare(l.path)).map(({path:e,content:l})=>[`Active Harness instruction (${e}):`,l.trim()].join(`
3
+ `)).filter(e=>e.trim().length>0),D=[["Harness capability receipt:",JSON.stringify({harnessRelease:{id:t.harnessRelease.id,contentHash:t.harnessRelease.contentHash},agentSnapshot:{id:t.agentSnapshot.id,contentHash:t.agentSnapshot.contentHash},files:t.harnessRelease.files.filter(e=>e.visibility==="policy").map(e=>({path:e.path,contentHash:e.contentHash})),skills:t.agentSnapshot.skills.map(e=>e.path),agents:t.agentSnapshot.agents.map(e=>e.path),tools:t.agentSnapshot.toolDeclarations.map(e=>e.name),capabilityRequirements:t.agentSnapshot.capabilityRequirements})].join(`
4
+ `),R.length>0?["Active Harness preflight:","Apply the following released instructions when planning work and immediately before every tool call.","Preflight each call: (1) identify any active instruction that matches the planned operation, (2) inspect the exact tool arguments for a forbidden pattern, and (3) rewrite the call before sending it when a pattern matches. Compliance is required even when the prohibited call might still succeed.",...R].join(`
5
+
6
+ `):null].filter(e=>!!e?.trim()).join(`
7
+
8
+ `);return{workspace:a,release:t,instructionContext:D,skillRuntime:$}}p(A,"loadLocalHarnessRuntimeFromRelease");async function g(s,a,t){let r=i.resolve(s,...a.split("/")),n=i.relative(i.resolve(s),r);if(!n||n.startsWith("..")||i.isAbsolute(n))throw new Error(`Released Harness asset escapes its bundle: ${a}`);let o=await I.readFile(r),m=u(o);if(m!==t)throw new Error(`Released Harness asset ${a} is ${m}; expected ${t}.`);return new TextDecoder("utf-8",{fatal:!0}).decode(o)}p(g,"readVerifiedAsset");async function x(s,a,t){let r=i.resolve(s,...a.split("/")),n=i.relative(i.resolve(s),r);if(!n||n.startsWith("..")||i.isAbsolute(n))throw new Error(`Released Harness asset escapes its bundle: ${a}`);let o=u(await I.readFile(r));if(o!==t)throw new Error(`Released Harness asset ${a} is ${o}; expected ${t}.`)}p(x,"verifyAsset");export{c as a,K as b,W as c,J as d,A as e};
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{f as S}from"./chunk-3M53YXEI.js";import{a as o}from"./chunk-FTQLQJQV.js";import{readFileSync as j}from"node:fs";import k from"node:path";function x(){let t=["../../../package.json","../../package.json","../package.json","./package.json","../../../../package.json"];for(let n of t)try{let s=new URL(n,import.meta.url),i=j(s,"utf-8"),r=JSON.parse(i);if(r.name==="openpond"&&typeof r.version=="string")return r.version}catch{}try{let n=j(k.join(k.dirname(process.execPath),"package.json"),"utf-8"),s=JSON.parse(n);if(s.name==="openpond"&&typeof s.version=="string")return s.version}catch{}return"unknown"}o(x,"getInstalledCliVersion");function I(t){let n=/^v?(\d+)\.(\d+)\.(\d+)(?:[-+].*)?$/.exec(t.trim());if(!n)return null;let s=Number.parseInt(n[1],10),i=Number.parseInt(n[2],10),r=Number.parseInt(n[3],10);return!Number.isFinite(s)||!Number.isFinite(i)||!Number.isFinite(r)?null:[s,i,r]}o(I,"parseSemver");function X(t,n){let s=I(t),i=I(n);if(!s||!i)return null;for(let r=0;r<3;r+=1){if(s[r]<i[r])return-1;if(s[r]>i[r])return 1}return 0}o(X,"compareSemver");async function Y(t){let n=new AbortController,s=setTimeout(()=>n.abort(),7e3);try{let i=await fetch(`https://registry.npmjs.org/${encodeURIComponent(t)}/latest`,{signal:n.signal});if(!i.ok){let c=await i.text().catch(()=>"");throw new Error(`npm registry request failed: ${i.status} ${c}`.trim())}let r=await i.json().catch(()=>({}));if(typeof r.version!="string"||r.version.trim().length===0)throw new Error("npm registry payload missing version");return r.version.trim()}finally{clearTimeout(s)}}o(Y,"fetchLatestNpmVersion");var a="boolean",m="integer",l="json",g="number",e="string",P={agent:e,approvalPolicy:e,cwd:e,json:a,maxOutputBytes:m,message:e,messageFile:e,model:e,noServerStart:a,nonInteractive:a,project:e,provider:e,resume:e,sandbox:e,server:e,stdin:a,timeoutSec:m,yes:a},O={access:e,agentId:e,all:a,artifactPaths:e,async:a,authHeader:e,authHeaderValue:e,authToken:e,autoStart:a,baseRef:e,branch:e,budget:g,budgetUsd:g,cleanup:a,cols:m,command:e,content:e,contentBase64:e,contents:e,contentsBase64:e,cpu:g,create:a,description:e,diskGb:g,dockerBuildArgs:l,dockerRegistrySecretRefs:e,dockerfile:e,dockerfileContext:e,dockerfileTarget:e,domain:e,env:e,environment:e,envLiteral:e,envName:e,envRef:e,expectedMppMode:e,expectedVersion:m,failOnUnpreservedChanges:a,ffOnly:a,forceWithLease:a,fork:a,fromPath:e,idempotencyKey:e,idleTimeoutSeconds:m,image:e,imageDigest:e,input:e,inputBase64:e,integrationCapabilities:e,integrationConnection:e,integrationScopes:e,intervalMs:m,json:a,keep:a,label:e,leaseId:e,lifecycleHint:l,manifestPath:e,maxDurationSeconds:m,maxEntries:g,maxResults:g,memoryGb:g,message:e,name:e,noPreview:a,overwrite:a,params:l,path:e,paths:e,payload:l,port:m,preview:a,projectId:e,publish:a,q:e,query:e,rebase:a,recursive:a,registrySecretRef:e,remote:e,replayState:e,repo:e,respondAsync:a,rows:m,runtimeAgentId:e,runtimeBaseBranch:e,runtimeBaseSha:e,runtimeId:e,runtimeProfileId:e,runtimeProjectId:e,runtimePromotionPolicy:e,runtimeWorkspaceRoot:e,sandboxId:e,scope:e,since:m,snapshot:a,snapshotId:e,sourceProjectId:e,sourceRepoUrl:e,sourceSandboxId:e,startPoint:e,status:e,stdin:a,summary:a,tag:e,tags:e,targetId:e,targetType:e,teamId:e,templateName:e,templateVersion:e,templateVisibility:e,timeoutSeconds:m,toPath:e,type:e,useCase:e,validationCommand:e,value:e,version:e,volumeDeleteOnSandboxDelete:a,volumeMountPath:e,volumeName:e,volumeStorageGb:g,workflowMode:e},A={action:e,agentId:e,budget:g,budgetUsd:g,build:e,branch:e,commit:a,commitMessage:e,description:e,dir:e,disableSchedule:e,disableSchedules:e,enableSchedule:e,enableSchedules:e,entrypoint:e,env:l,envRef:e,file:e,force:a,idleTimeoutSeconds:m,inherit:a,input:l,inputFile:e,inputFiles:e,inputJson:l,inputs:l,json:a,keepTokenRemote:a,manifest:e,maxDurationSeconds:m,name:e,noPush:a,noWrite:a,out:e,outDir:e,output:e,outputDir:e,params:l,path:e,plan:e,projectId:e,repo:e,runtimeAgentId:e,runtimeBaseBranch:e,runtimeBaseSha:e,runtimeId:e,runtimeProjectId:e,runtimePromotionPolicy:e,scheduleMode:e,scheduleOverride:l,scheduleOverrides:l,schedules:e,service:e,setRemoteToken:a,setupTimeoutSeconds:m,target:e,teamId:e,timeoutSeconds:m,token:e,workflowMode:e,yes:a},E={branch:e,commitMessage:e,defaultBranch:e,description:e,gitOwner:e,gitRepo:e,internalRepoPath:e,json:a,name:e,path:e,projectId:e,repo:e,sourceCheckDispatch:e,sourceType:e,teamId:e,templateRepoUrl:e},T={agentId:e,agentEdit:l,allowLatestSource:a,allowedActions:e,attachmentsJson:l,baseSha:e,chatMode:e,checkKind:e,conversationId:e,cwd:e,dispatch:e,entrypointName:e,entrypointScope:e,expectedManifestHash:e,evalStatus:e,expectedSourceCommitSha:e,idempotencyKey:e,input:l,inputFile:e,json:a,limit:m,message:e,metadata:l,name:e,path:e,payload:l,projectId:e,prompt:e,provider:e,publishedSnapshotId:e,ref:e,requirePublishedSnapshot:a,requiredEnv:e,requiredIntegrations:e,runtimePromotionPolicy:e,runtimeSourceMode:e,sourceCheckDispatch:e,sourceMode:e,sourceRef:e,status:e,targetProjectId:e,teamId:e,triggerType:e,workflowMode:e};var b={account:"string",apiBaseUrl:"string",apiBaseurl:"string",baseUrl:"string",baseurl:"string",chatApiBaseUrl:"string",chatApiBaseurl:"string",checkUpdate:"boolean",cwd:"string",help:"boolean",home:"string",json:"boolean",profile:"string",sandboxApiUrl:"string",sandboxApiurl:"string",tui:"boolean",version:"boolean"},ae={C:"cwd",f:"force",h:"help",j:"json",v:"version",y:"yes"},B={cwd:"string",input:"json",inputFile:"string",json:"boolean",path:"string"},y=[{name:"import",usage:"openpond import <connect|reconnect|discover|status|sync|pause|resume|disconnect|branches|branch|service> [id] [--source <name>] [--source-path <path>] [--range day|week|all] [--team <id>] [--project <id>] [--session <native-id>] [--leaf <uuid>] [--revision <hash>] [--once] [--yes] [--detach]",optionSchema:{source:"string",sourcePath:"string",range:"string",team:"string",project:"string",session:"string",leaf:"string",revision:"string",once:"boolean",yes:"boolean",detach:"boolean",connection:"string",collectorDir:"string",json:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./import-4UE5XNSG.js")).runImportCommand(t,n),"handler")},{name:"datasets",usage:"openpond datasets <upload|read|list|validate|publish> [folder|id] --team <id> --api-base-url <origin> [--operation-id <id>] [--expected-revision <n>] [--publish] [--project <id>] [--dataset-id <id>]",optionSchema:{team:"string",operationId:"string",expectedRevision:"integer",publish:"boolean",project:"string",datasetId:"string",cursor:"string",workspaceHash:"string",packageHash:"string",json:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./datasets-QJWYTTQL.js")).runDatasetsCommand(t,n),"handler")},{name:"connected-evidence",usage:"openpond connected-evidence <list|collection|recorded-list|recorded|import-receipt|summary|case|unmapped|capture|selection|publish|prepare-recorded|upload-part|preview|commit|set-collection> [id] --team <id> [--input-file <path>] [--project <id>] [--cursor <id>] [--limit <n>]",optionSchema:{team:"string",inputFile:"string",project:"string",cursor:"string",limit:"integer"},handler:o(async({options:t,rest:n})=>(await import("./connected-evidence-XM626247.js")).runConnectedEvidenceCommand(t,n),"handler")},{name:"improve",usage:"openpond improve <list|read|instructions|request> [id] --team <id> --actor <owner-id> [--input-file <path>] [--cursor <id>] [--limit <n>] [--local --server-url <loopback-origin>]",optionSchema:{team:"string",actor:"string",inputFile:"string",cursor:"string",limit:"integer",local:"boolean",serverUrl:"string"},handler:o(async({options:t,rest:n})=>(await import("./experiment-improvements-WVQ5FK46.js")).runExperimentImprovementsCommand(t,n),"handler")},{name:"evaluation-schedules",usage:"openpond evaluation-schedules <list|read|request> [id] --team <id> --actor <id> --local [--server-url <loopback-origin>] [--project <id>] [--input-file <path>] [--cursor <id>] [--limit <n>]",optionSchema:{team:"string",actor:"string",local:"boolean",serverUrl:"string",project:"string",inputFile:"string",cursor:"string",limit:"integer"},handler:o(async({options:t,rest:n})=>(await import("./evaluation-coordination-2MONR4AX.js")).runEvaluationCoordinationCommand("schedule",t,n),"handler")},{name:"evaluate-refiner",usage:"openpond evaluate-refiner <list|read|cancel|resume|request> [id] --team <id> --actor <id> --local [--server-url <loopback-origin>] [--project <id>] [--input-file <path>]",optionSchema:{team:"string",actor:"string",local:"boolean",serverUrl:"string",project:"string",inputFile:"string"},handler:o(async({options:t,rest:n})=>(await import("./evaluation-coordination-2MONR4AX.js")).runEvaluationCoordinationCommand("refiner",t,n),"handler")},{name:"human-review",usage:"openpond human-review <read|inbox|inspect|results|request> [id] --team <id> [--input-file <path>] [--view <mine|team|approval>] [--status <active|history>] [--project <id>] [--revision <n>] [--slot <0|1>] [--after-id <id>] [--limit <n>] [--local --server-url <loopback-origin>]",optionSchema:{team:"string",inputFile:"string",view:"string",status:"string",project:"string",revision:"integer",slot:"integer",afterId:"string",limit:"integer",local:"boolean",serverUrl:"string"},handler:o(async({options:t,rest:n})=>(await import("./human-review-TGHQKXFZ.js")).runHumanReviewCommand(t,n),"handler")},{name:"experiments",usage:"openpond experiments <prepare-harness|run|read|list|status|cancel|duplicate|score|passes|pass|cancel-pass|pass-result|result|compare|case> [id] [candidate-id] --team <id> [--input-file <path>] [--operation-id <id>] [--local --server-url <loopback-origin>] [--receipt-id <id>] [--json]",optionSchema:{team:"string",inputFile:"string",operationId:"string",project:"string",datasetHash:"string",search:"string",status:"string",afterId:"string",limit:"integer",json:"boolean",local:"boolean",serverUrl:"string",receiptId:"string",afterSequence:"integer",revision:"integer",contentHash:"string"},handler:o(async({options:t,rest:n})=>(await import("./experiments-S5UQ32QB.js")).runExperimentsCommand(t,n),"handler")},{name:"home",usage:"openpond home [--home <directory>]",optionSchema:{},handler:o(async()=>console.log((await import("./dist-HUAE2KFZ.js")).resolveOpenPondHome()),"handler")},{name:"config",usage:"openpond config <get|set|unset|path|validate|schema|doctor|migrate|recover|restart-migration|revisions|replace|effective|trust|untrust|export|backup|restore|collect-orphans|clear-cache> [key] [value] [--home <directory>] [--json]",optionSchema:{keyPath:"json",value:"string",file:"string",project:"boolean",revision:"string",expectedRevision:"string",sourceAppHome:"string",sourceConfig:"string",sourceBrowserState:"string",dryRun:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./configuration-command-LAAP2EXT.js")).runConfigurationCommand(t,n),"handler")},{name:"help",usage:"openpond help",optionSchema:{},handler:o(async()=>(await import("./help-A72QDRNG.js")).printHelp(),"handler")},{name:"version",usage:"openpond version",optionSchema:{},handler:o(()=>console.log(x()),"handler")},{name:"check-update",usage:"openpond check-update",optionSchema:{},handler:o(async()=>(await import("./core-commands-W7EK552V.js")).runCheckUpdate(),"handler")},{name:"login",usage:"openpond login [--base-url <url>]",optionSchema:b,handler:o(async({options:t})=>(await import("./core-commands-W7EK552V.js")).runLogin(t),"handler")},{name:"init",usage:"openpond init [--path <dir>] [--profile <name>] [--template <name>] [--force] [--json]",optionSchema:{...b,force:"boolean",path:"string",template:"string"},handler:o(async({options:t})=>(await import("./profile-NOZ6TVXL.js")).runOpenPondInitCommand(t),"handler")},{name:"profile",usage:"openpond profile <current|init|load|check|push|commit|diff|catalog>",optionSchema:{checkKind:"string",conversationId:"string",ensureHosted:"boolean",expectedManifestHash:"string",force:"boolean",hostedCheckKind:"string",hostedRunAgentId:"string",hostedRunConversationId:"string",hostedRunIdempotencyKey:"string",hostedRunInput:"json",hostedRunRetry:"boolean",hostedRunTargetProjectId:"string",hostedSourceDispatch:"string",hostedSourceAgentId:"string",hostedSourceChecks:"boolean",hostedSourceProjectId:"string",json:"boolean",kind:"string",path:"string",publishHostedSource:"boolean",teamId:"string"},handler:o(async({options:t,rest:n})=>(await import("./profile-NOZ6TVXL.js")).runOpenPondProfileCommand(t,n),"handler")},{name:"agents",usage:"openpond agents [--json]",optionSchema:{json:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./profile-NOZ6TVXL.js")).runOpenPondAgentsCommand(t,n),"handler")},{name:"actions",usage:"openpond actions <check|build|run|dev|publish> [action-id] [--cwd DIR] [--input JSON|--input-file PATH]",optionSchema:{apiKey:"string",baseUrl:"string",cwd:"string",input:"string",inputFile:"string",json:"boolean",outputDirectory:"string",sourceDirectory:"string",sourceCommitSha:"string",sourceRef:"string",projectId:"string",teamId:"string",timeoutMs:"integer"},handler:o(async({options:t,rest:n})=>(await import("./actions-command-WTFZA7LF.js")).runProjectActionsCommand(t,n),"handler")},...F(),{name:"extension",usage:"openpond extension <add|preview|list|inspect|update|remove> [owner/repo]",usages:["openpond extension add <owner/repo> [--ref <branch|tag|sha>] [--json]","openpond extension update <owner/repo> [--ref <branch|tag|sha>] [--json]","openpond extension update --all [--json]","openpond extension remove <owner/repo> [--json]"],optionSchema:{all:"boolean",json:"boolean",ref:"string"},handler:o(async({options:t,rest:n})=>(await import("./extension-DWMY6D2R.js")).runOpenPondExtensionCommand(t,n),"handler")},{name:"profiles",usage:"openpond profiles [args]",optionSchema:{json:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./core-commands-W7EK552V.js")).runProfiles(t,n),"handler")},{name:"account",usage:"openpond account",optionSchema:{json:"boolean"},handler:o(async()=>(await import("./core-commands-W7EK552V.js")).runAccount(),"handler")},{name:"health",usage:"openpond health",optionSchema:{json:"boolean"},handler:o(async({options:t})=>(await import("./core-commands-W7EK552V.js")).runHealth(t),"handler")},{name:"app-server",usage:"openpond app-server [--home DIR]",optionSchema:{home:"string"},handler:o(async({options:t,rest:n})=>(await import("./app-layer-Y2UERCPY.js")).runOpenPondServerCommand("app-server",t,n),"handler")},{name:"serve",usage:"openpond serve [args]",optionSchema:{host:"string",hostname:"string",listen:"string",port:"integer"},handler:o(async({options:t,rest:n})=>(await import("./app-layer-Y2UERCPY.js")).runOpenPondServerCommand("serve",t,n),"handler")},{name:"ui",usage:"openpond ui [--no-open] [--hostname HOST] [--port PORT]",optionSchema:{host:"string",hostname:"string",listen:"string",noOpen:"boolean",port:"integer",webRoot:"string"},handler:o(async({options:t,rest:n})=>(await import("./app-layer-Y2UERCPY.js")).runOpenPondServerCommand("web",t,n),"handler")},{name:"tui",aliases:["interactive"],usage:"openpond tui [--provider <id>] [--model <id>] [--project <id>]",optionSchema:{cwd:"string",model:"string",noServerStart:"boolean",project:"string",provider:"string",server:"string"},handler:o(async({options:t,rest:n})=>(await import("./app-layer-Y2UERCPY.js")).runOpenPondTerminalCommand(t,n),"handler")},{name:"chat",usage:"openpond chat (--message-file <path>|--message <text>|--stdin) --non-interactive [--provider <id>] [--model <id>] [--agent <id>] [--project <id>] [--resume <session-id>] [--yes] [--approval-policy <policy>] [--json] [--timeout-sec <n>] [--max-output-bytes <n>] [--sandbox <mode>]",optionSchema:P,handler:o(async({options:t,rest:n})=>(await import("./app-layer-Y2UERCPY.js")).runOpenPondTerminalCommand(t,n),"handler")},{name:"tool",usage:"openpond tool <list|run> <handle>/<repo> [args]",optionSchema:{body:"json",json:"boolean"},handler:K},{name:"backtest",usage:"openpond backtest <run|events|get> <handle>/<repo> [args]",optionSchema:{body:"json",branch:"string",deploymentId:"string",limit:"integer",runId:"string"},handler:$},{name:"deploy",usage:"openpond deploy watch <handle>/<repo> [--branch <branch>]",optionSchema:{branch:"string"},handler:q},{name:"template",usage:"openpond template <status|branches|update> <handle>/<repo> [--env preview|production]",optionSchema:{env:"string"},handler:G},{name:"sandbox-template",usage:"openpond sandbox-template <command> [args]",optionSchema:A,handler:o(async({options:t,rest:n})=>(await import("./sandbox-template-LKGBDVJ4.js")).runSandboxTemplateCommand(t,n),"handler")},{name:"repo",usage:"openpond repo <create|push> [--name <name>] [--path <dir>] [--branch <branch>]",optionSchema:{branch:"string",name:"string",path:"string"},handler:J},{name:"organizations",aliases:["organization"],usage:"openpond organizations <login|list|use|logout|whoami> [args]",optionSchema:{accessToken:"string",arguments:"json",callbackPort:"integer",clientId:"string",customDomain:"string",displayName:"string",email:"string",env:"string",environment:"string",json:"boolean",name:"string",open:"boolean",origin:"string",primaryContactEmail:"string",printToken:"boolean",resourceUrl:"string",role:"string",scope:"string",scopes:"string",slug:"string",status:"string",timeout:"integer",timeoutSeconds:"integer",tool:"string",toolName:"string",toolset:"string",url:"string"},handler:o(async({options:t,rest:n})=>(await import("./organizations-I37HISVX.js")).runOrganizationsCommand(t,n),"handler")},{name:"project",usage:"openpond project <list|create|upsert|get|update|sync|source-upload|archive> [args]",optionSchema:E,handler:o(async({options:t,rest:n})=>(await import("./project-agent-T6XKC54C.js")).runProjectCommand(t,n),"handler")},{name:"agent",usage:"openpond agent <inspect|build|validate|eval|traces|list|create|upsert|get|update|run|run-test|bind-source|source|archive> [args]",usages:["openpond agent run <action> [--cwd <project>] [--input <json>]","openpond agent run <agentId> --team-id <id> [--conversation-id <id>] [--target-project-id <projectId>] [--input <json>]","openpond agent source checks <agentId> --team-id <id> [--check-kind <kind>]","openpond agent source publish <agentId> --team-id <id> [--expected-manifest-hash <hash>]"],optionSchema:T,handler:o(async({options:t,rest:n})=>(await import("./project-agent-T6XKC54C.js")).runAgentCommand(t,n),"handler")},{name:"desktop-test",usage:"openpond desktop-test <run|attach> <scenario...> [--isolated|--attach|--packaged|--none] [--app <path>] [--artifacts-dir <path>] [--json <path>]",optionSchema:{artifactsDir:"string",attach:"boolean",cwd:"string",devtoolsPort:"integer",grep:"string",isolated:"boolean",json:"string",jsonPath:"string",keepHome:"boolean",none:"boolean",server:"string",timeoutMs:"integer",token:"string",tokenFile:"string"},handler:o(async({options:t,rest:n})=>(await import("./desktop-test-3B2D34NF.js")).runDesktopTestCommand(t,n),"handler")},{name:"sandbox",usage:"openpond sandbox <command> [args]",optionSchema:O,handler:o(async({options:t,rest:n})=>(await import("./sandbox-command-STB47FRY.js")).runSandboxCommand(t,n),"handler")},{name:"continual",usage:"openpond continual <init|validate|run|report> [manifest-or-series-id]",usages:["openpond continual init --from <tasks.jsonl> [--output <continual-support.yaml>] [--non-interactive]","openpond continual validate <continual-support.yaml> [--json]","openpond continual run <continual-support.yaml> [--api-base-url <url>] [--json]","openpond continual report <comparison-series-id> [--output <report.json>] [--json]"],optionSchema:{apiBaseUrl:"string",commit:"string",correctionCasesPerFamily:"integer",correctionSelection:"string",description:"string",from:"string",grader:"string",id:"string",json:"boolean",license:"string",name:"string",nonInteractive:"boolean",output:"string",repository:"string",seed:"string",semanticSimilarityThreshold:"number"},handler:o(async({options:t,rest:n})=>(await import("./continual-TTGJ6YTR.js")).runContinualCommand(t,n),"handler")},{name:"training",usage:"openpond training <create-project|start|status|watch|logs|cancel|resume|artifacts|benchmark> <taskset-id|model-run-id|run-id|model-id>",usages:["openpond training create-project <taskset-id> --recipe <path> [--project-id <id>] [--profile <id>] [--name <name>] [--objective <text>] [--destination <id>] [--rollout-placement <local|remote>] [--gpu-placement-objective <fast|balanced|economical>] [--run-preset <preset>] [--max-spend <usd>] [--retention-days <days>] [--json]","openpond training start <model-project-id> [--comparison-series-entry <entry-id>] [--manifest <path>] [--yes] [--export-approved] [--max-spend <usd>] [--retention-days <days>] [--detach] [--json]","openpond training status <run-id> [--json]","openpond training watch <run-id> [--interval-ms <ms>] [--json]","openpond training logs <run-id> [--json]","openpond training cancel <run-id> [--json]","openpond training resume <model-run-id> [--json]","openpond training artifacts <run-id> [--json]","openpond training benchmark <model-id> [--provider <id>] [--model <id>] [--reasoning-effort <level>] [--max-spend <usd>] [--json]"],optionSchema:{apiBaseUrl:"string",comparisonSeriesEntry:"string",detach:"boolean",destination:"string",exportApproved:"boolean",gpuPlacementObjective:"string",intervalMs:"integer",json:"boolean",manifest:"string",maxSpend:"number",model:"string",name:"string",objective:"string",profile:"string",projectId:"string",provider:"string",recipe:"string",reasoningEffort:"string",retentionDays:"integer",rolloutPlacement:"string",runPreset:"string",yes:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./training-M6FAPRSJ.js")).runTrainingCommand(t,n),"handler")},{name:"taskset",usage:"openpond taskset <import|publish|readiness|delete-draft> <package-path|draft-id|taskset-id> [--profile <id>] [--model <id>] [--json]",usages:["openpond taskset import <package-directory|taskset.json> [--profile <id>] [--json]","openpond taskset publish <draft-id> [--model <id>] [--json]","openpond taskset readiness <taskset-id> [--json]","openpond taskset delete-draft <draft-id> [--json]"],optionSchema:{apiBaseUrl:"string",json:"boolean",model:"string",profile:"string"},handler:o(async({options:t,rest:n})=>(await import("./taskset-RNYDR4GS.js")).runTasksetCommand(t,n),"handler")},{name:"opchat",usage:"openpond opchat <command> [args]",optionSchema:{compatModel:"string",compatibilityModel:"string",env:"string",environment:"string",effort:"string",json:"boolean",message:"string",model:"string",opchatApiBaseUrl:"string",opchatApiUrl:"string",prompt:"string",skipStream:"boolean",skipTool:"boolean",stream:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./opchat-WULL6CUP.js")).runOpChatCommand(t,n),"handler")},{name:"teams-bot",usage:"openpond teams-bot <command> [args]",optionSchema:{json:"boolean",teamId:"string"},handler:o(async({options:t,rest:n})=>(await import("./teams-bot-H7XT23XB.js")).runTeamsBotCommand(t,n),"handler")},{name:"apps",usage:"openpond apps <list|code-visibility|tools|deploy|env get|env set|performance|summary|assistant|agent create> [args]",optionSchema:{appId:"string",body:"json",env:"json",json:"boolean",limit:"integer",refresh:"boolean",teamId:"string",watch:"boolean"},handler:V},{name:"opentool",usage:"openpond opentool <init|validate|build> [args]",optionSchema:{},handler:o(async({rest:t})=>(await import("./core-commands-W7EK552V.js")).runOpentool(t),"handler")}],v=new Map;for(let t of y){v.set(t.name,t);for(let n of t.aliases??[])v.set(n,t)}function re(){return y}o(re,"listCliCommandDefinitions");function w(t){return v.get(t)??null}o(w,"getCliCommandDefinition");function ie(t,n){return w(t||"ui")?.optionSchema[n]??b[n]}o(ie,"getCliOptionKind");function se(t){let n=b[t];if(n)return n;for(let s of y){let i=s.optionSchema[t];if(i)return i}}o(se,"getAnyCliOptionKind");async function pe(t){let n=w(t.command);return n?S(t.options.help)?(U(n),!0):(await n.handler(t),!0):!1}o(pe,"runCliCommand");function H(t){let n=["Usage:",` ${t.usage}`,...(t.usages??[]).map(i=>` ${i}`)];t.aliases?.length&&n.push("","Aliases:",` ${t.aliases.join(", ")}`);let s=Object.entries(t.optionSchema).sort(([i],[r])=>i.localeCompare(r));if(s.length>0){n.push("","Options:");for(let[i,r]of s){let c=L(i);n.push(r==="boolean"?` --${c}`:` --${c} <${r}>`)}}return n.join(`
3
- `)}o(H,"formatCliCommandUsage");function U(t){console.log(H(t))}o(U,"printCliCommandUsage");function L(t){return t.replace(/[A-Z]/g,n=>`-${n.toLowerCase()}`)}o(L,"cliOptionName");function F(){return["inspect","build","validate","eval","run"].map(n=>({name:n,usage:`openpond ${n} [args]`,optionSchema:B,handler:o(async({options:s,rest:i})=>(await import("./profile-NOZ6TVXL.js")).runOpenPondProfileSdkAlias(n,s,i),"handler")}))}o(F,"profileSdkAliasDefinitions");async function K({options:t,rest:n}){let{runToolList:s,runToolRun:i}=await import("./core-commands-W7EK552V.js"),r=n[0];if(r==="list"){let c=n[1];if(!c)throw new Error("usage: tool list <handle>/<repo>");await s(t,c);return}if(r==="run"){let c=n[1],d=n[2];if(!c||!d)throw new Error("usage: tool run <handle>/<repo> <tool> [--body <json>]");await i(t,c,d);return}throw new Error("usage: tool <list|run> <handle>/<repo> [args]")}o(K,"runToolCommand");async function $({options:t,rest:n}){let{runBacktestRun:s}=await import("./core-commands-W7EK552V.js"),{runBacktestEvents:i,runBacktestGet:r}=await import("./apps-KDNWYO3G.js"),c=n[0]||"run";if(c==="run"){let d=n[1],f=n[2];if(!d||!f)throw new Error("usage: backtest run <handle>/<repo> <tool> [--body <json>] [--branch <branch>] [--deployment-id <id>]");await s(t,d,f);return}if(c==="events"){let d=n[1];if(!d)throw new Error("usage: backtest events <handle>/<repo> [--run-id <id>] [--limit <n>]");await i(t,d);return}if(c==="get"){let d=n[1];if(!d)throw new Error("usage: backtest get <handle>/<repo> --run-id <id>");await r(t,d);return}throw new Error("usage: backtest <run|events|get> <handle>/<repo> [args]")}o($,"runBacktestCommand");async function q({options:t,rest:n}){let{runDeployWatch:s}=await import("./core-commands-W7EK552V.js");if((n[0]||"watch")!=="watch")throw new Error("usage: deploy watch <handle>/<repo> [--branch <branch>]");let r=n[1];if(!r)throw new Error("usage: deploy watch <handle>/<repo> [--branch <branch>]");await s(t,r)}o(q,"runDeployCommand");async function G({options:t,rest:n}){let{runTemplateBranches:s,runTemplateStatus:i,runTemplateUpdate:r}=await import("./core-commands-W7EK552V.js"),c=n[0]||"status",d=n[1];if(!d)throw new Error("usage: template <status|branches|update> <handle>/<repo> [--env preview|production]");if(c==="status"){await i(t,d);return}if(c==="branches"){await s(t,d);return}if(c==="update"){await r(t,d);return}throw new Error("usage: template <status|branches|update> <handle>/<repo> [--env preview|production]")}o(G,"runTemplateCommand");async function J({options:t,rest:n}){let{runRepoCreate:s,runRepoPush:i}=await import("./core-commands-W7EK552V.js"),r=n[0]||"create";if(r==="create"){await s(t,n.slice(1));return}if(r==="push"){await i(t);return}throw new Error("usage: repo <create|push> [--name <name>] [--path <dir>] [--branch <branch>]")}o(J,"runRepoCommand");async function V({options:t,rest:n}){let{runAppsAgentCreate:s,runAppsAssistant:i,runAppsCodeVisibility:r,runAppsDeploy:c,runAppsEnvGet:d,runAppsEnvSet:f,runAppsList:R,runAppsPerformance:N,runAppsSummary:M,runAppsTools:_,runAppsToolsExecute:D}=await import("./apps-KDNWYO3G.js"),u=n[0];if(u==="list"){await R(t);return}if(u==="code-visibility"){let p=n[1];if(!p)throw new Error("usage: apps code-visibility <handle>/<repo> --visibility public|private");await r(t,p);return}if(u==="tools"){if(n[1]==="execute"){let p=n[2],h=n[3],C=n[4];if(!p||!h||!C)throw new Error("usage: apps tools execute <appId> <deploymentId> <tool> [--body <json>]");await D(t,p,h,C);return}await _();return}if(u==="deploy"){let p=n[1];if(!p)throw new Error("usage: apps deploy <handle>/<repo> [--env preview|production] [--watch]");await c(t,p);return}if(u==="env"&&n[1]==="get"){let p=n[2];if(!p)throw new Error("usage: apps env get <handle>/<repo>");await d(t,p);return}if(u==="env"&&n[1]==="set"){let p=n[2];if(!p)throw new Error("usage: apps env set <handle>/<repo> --env <json>");await f(t,p);return}if(u==="performance"){await N(t);return}if(u==="summary"){let p=n[1];if(!p)throw new Error("usage: apps summary <handle>/<repo>");await M(t,p);return}if(u==="assistant"){let p=n[1],h=n[2];if(p!=="plan"&&p!=="performance"||!h)throw new Error("usage: apps assistant <plan|performance> <handle>/<repo> --prompt <text>");await i(t,p,h,n.slice(3));return}if(u==="agent"&&n[1]==="create"){await s(t,n.slice(2));return}throw new Error("usage: apps <list|code-visibility|tools|deploy|env get|env set|performance|summary|assistant|agent create> [args]")}o(V,"runAppsCommand");export{x as a,X as b,Y as c,b as d,ae as e,re as f,w as g,ie as h,se as i,pe as j,H as k};
2
+ import{f as S}from"./chunk-3M53YXEI.js";import{a as o}from"./chunk-FTQLQJQV.js";import{readFileSync as j}from"node:fs";import k from"node:path";function x(){let t=["../../../package.json","../../package.json","../package.json","./package.json","../../../../package.json"];for(let n of t)try{let s=new URL(n,import.meta.url),i=j(s,"utf-8"),r=JSON.parse(i);if(r.name==="openpond"&&typeof r.version=="string")return r.version}catch{}try{let n=j(k.join(k.dirname(process.execPath),"package.json"),"utf-8"),s=JSON.parse(n);if(s.name==="openpond"&&typeof s.version=="string")return s.version}catch{}return"unknown"}o(x,"getInstalledCliVersion");function I(t){let n=/^v?(\d+)\.(\d+)\.(\d+)(?:[-+].*)?$/.exec(t.trim());if(!n)return null;let s=Number.parseInt(n[1],10),i=Number.parseInt(n[2],10),r=Number.parseInt(n[3],10);return!Number.isFinite(s)||!Number.isFinite(i)||!Number.isFinite(r)?null:[s,i,r]}o(I,"parseSemver");function X(t,n){let s=I(t),i=I(n);if(!s||!i)return null;for(let r=0;r<3;r+=1){if(s[r]<i[r])return-1;if(s[r]>i[r])return 1}return 0}o(X,"compareSemver");async function Y(t){let n=new AbortController,s=setTimeout(()=>n.abort(),7e3);try{let i=await fetch(`https://registry.npmjs.org/${encodeURIComponent(t)}/latest`,{signal:n.signal});if(!i.ok){let c=await i.text().catch(()=>"");throw new Error(`npm registry request failed: ${i.status} ${c}`.trim())}let r=await i.json().catch(()=>({}));if(typeof r.version!="string"||r.version.trim().length===0)throw new Error("npm registry payload missing version");return r.version.trim()}finally{clearTimeout(s)}}o(Y,"fetchLatestNpmVersion");var a="boolean",m="integer",l="json",g="number",e="string",P={agent:e,approvalPolicy:e,cwd:e,json:a,maxOutputBytes:m,message:e,messageFile:e,model:e,noServerStart:a,nonInteractive:a,project:e,provider:e,resume:e,sandbox:e,server:e,stdin:a,timeoutSec:m,yes:a},O={access:e,agentId:e,all:a,artifactPaths:e,async:a,authHeader:e,authHeaderValue:e,authToken:e,autoStart:a,baseRef:e,branch:e,budget:g,budgetUsd:g,cleanup:a,cols:m,command:e,content:e,contentBase64:e,contents:e,contentsBase64:e,cpu:g,create:a,description:e,diskGb:g,dockerBuildArgs:l,dockerRegistrySecretRefs:e,dockerfile:e,dockerfileContext:e,dockerfileTarget:e,domain:e,env:e,environment:e,envLiteral:e,envName:e,envRef:e,expectedMppMode:e,expectedVersion:m,failOnUnpreservedChanges:a,ffOnly:a,forceWithLease:a,fork:a,fromPath:e,idempotencyKey:e,idleTimeoutSeconds:m,image:e,imageDigest:e,input:e,inputBase64:e,integrationCapabilities:e,integrationConnection:e,integrationScopes:e,intervalMs:m,json:a,keep:a,label:e,leaseId:e,lifecycleHint:l,manifestPath:e,maxDurationSeconds:m,maxEntries:g,maxResults:g,memoryGb:g,message:e,name:e,noPreview:a,overwrite:a,params:l,path:e,paths:e,payload:l,port:m,preview:a,projectId:e,publish:a,q:e,query:e,rebase:a,recursive:a,registrySecretRef:e,remote:e,replayState:e,repo:e,respondAsync:a,rows:m,runtimeAgentId:e,runtimeBaseBranch:e,runtimeBaseSha:e,runtimeId:e,runtimeProfileId:e,runtimeProjectId:e,runtimePromotionPolicy:e,runtimeWorkspaceRoot:e,sandboxId:e,scope:e,since:m,snapshot:a,snapshotId:e,sourceProjectId:e,sourceRepoUrl:e,sourceSandboxId:e,startPoint:e,status:e,stdin:a,summary:a,tag:e,tags:e,targetId:e,targetType:e,teamId:e,templateName:e,templateVersion:e,templateVisibility:e,timeoutSeconds:m,toPath:e,type:e,useCase:e,validationCommand:e,value:e,version:e,volumeDeleteOnSandboxDelete:a,volumeMountPath:e,volumeName:e,volumeStorageGb:g,workflowMode:e},A={action:e,agentId:e,budget:g,budgetUsd:g,build:e,branch:e,commit:a,commitMessage:e,description:e,dir:e,disableSchedule:e,disableSchedules:e,enableSchedule:e,enableSchedules:e,entrypoint:e,env:l,envRef:e,file:e,force:a,idleTimeoutSeconds:m,inherit:a,input:l,inputFile:e,inputFiles:e,inputJson:l,inputs:l,json:a,keepTokenRemote:a,manifest:e,maxDurationSeconds:m,name:e,noPush:a,noWrite:a,out:e,outDir:e,output:e,outputDir:e,params:l,path:e,plan:e,projectId:e,repo:e,runtimeAgentId:e,runtimeBaseBranch:e,runtimeBaseSha:e,runtimeId:e,runtimeProjectId:e,runtimePromotionPolicy:e,scheduleMode:e,scheduleOverride:l,scheduleOverrides:l,schedules:e,service:e,setRemoteToken:a,setupTimeoutSeconds:m,target:e,teamId:e,timeoutSeconds:m,token:e,workflowMode:e,yes:a},E={branch:e,commitMessage:e,defaultBranch:e,description:e,gitOwner:e,gitRepo:e,internalRepoPath:e,json:a,name:e,path:e,projectId:e,repo:e,sourceCheckDispatch:e,sourceType:e,teamId:e,templateRepoUrl:e},T={agentId:e,agentEdit:l,allowLatestSource:a,allowedActions:e,attachmentsJson:l,baseSha:e,chatMode:e,checkKind:e,conversationId:e,cwd:e,dispatch:e,entrypointName:e,entrypointScope:e,expectedManifestHash:e,evalStatus:e,expectedSourceCommitSha:e,idempotencyKey:e,input:l,inputFile:e,json:a,limit:m,message:e,metadata:l,name:e,path:e,payload:l,projectId:e,prompt:e,provider:e,publishedSnapshotId:e,ref:e,requirePublishedSnapshot:a,requiredEnv:e,requiredIntegrations:e,runtimePromotionPolicy:e,runtimeSourceMode:e,sourceCheckDispatch:e,sourceMode:e,sourceRef:e,status:e,targetProjectId:e,teamId:e,triggerType:e,workflowMode:e};var b={account:"string",apiBaseUrl:"string",apiBaseurl:"string",baseUrl:"string",baseurl:"string",chatApiBaseUrl:"string",chatApiBaseurl:"string",checkUpdate:"boolean",cwd:"string",help:"boolean",home:"string",json:"boolean",profile:"string",sandboxApiUrl:"string",sandboxApiurl:"string",tui:"boolean",version:"boolean"},ae={C:"cwd",f:"force",h:"help",j:"json",v:"version",y:"yes"},B={cwd:"string",input:"json",inputFile:"string",json:"boolean",path:"string"},y=[{name:"import",usage:"openpond import <connect|reconnect|discover|status|sync|pause|resume|disconnect|branches|branch|service> [id] [--source <name>] [--source-path <path>] [--range day|week|all] [--team <id>] [--project <id>] [--session <native-id>] [--leaf <uuid>] [--revision <hash>] [--once] [--yes] [--detach]",optionSchema:{source:"string",sourcePath:"string",range:"string",team:"string",project:"string",session:"string",leaf:"string",revision:"string",once:"boolean",yes:"boolean",detach:"boolean",connection:"string",collectorDir:"string",json:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./import-MLZUHITH.js")).runImportCommand(t,n),"handler")},{name:"datasets",usage:"openpond datasets <upload|read|list|validate|publish> [folder|id] --team <id> --api-base-url <origin> [--operation-id <id>] [--expected-revision <n>] [--publish] [--project <id>] [--dataset-id <id>]",optionSchema:{team:"string",operationId:"string",expectedRevision:"integer",publish:"boolean",project:"string",datasetId:"string",cursor:"string",workspaceHash:"string",packageHash:"string",json:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./datasets-7BNMVJOY.js")).runDatasetsCommand(t,n),"handler")},{name:"connected-evidence",usage:"openpond connected-evidence <list|collection|recorded-list|recorded|import-receipt|summary|case|unmapped|capture|selection|publish|prepare-recorded|upload-part|preview|commit|set-collection> [id] --team <id> [--input-file <path>] [--project <id>] [--cursor <id>] [--limit <n>]",optionSchema:{team:"string",inputFile:"string",project:"string",cursor:"string",limit:"integer"},handler:o(async({options:t,rest:n})=>(await import("./connected-evidence-GH2ATNEX.js")).runConnectedEvidenceCommand(t,n),"handler")},{name:"improve",usage:"openpond improve <list|read|instructions|request> [id] --team <id> --actor <owner-id> [--input-file <path>] [--cursor <id>] [--limit <n>] [--local --server-url <loopback-origin>]",optionSchema:{team:"string",actor:"string",inputFile:"string",cursor:"string",limit:"integer",local:"boolean",serverUrl:"string"},handler:o(async({options:t,rest:n})=>(await import("./experiment-improvements-KRX2DP27.js")).runExperimentImprovementsCommand(t,n),"handler")},{name:"evaluation-schedules",usage:"openpond evaluation-schedules <list|read|request> [id] --team <id> --actor <id> --local [--server-url <loopback-origin>] [--project <id>] [--input-file <path>] [--cursor <id>] [--limit <n>]",optionSchema:{team:"string",actor:"string",local:"boolean",serverUrl:"string",project:"string",inputFile:"string",cursor:"string",limit:"integer"},handler:o(async({options:t,rest:n})=>(await import("./evaluation-coordination-XEF5L7KZ.js")).runEvaluationCoordinationCommand("schedule",t,n),"handler")},{name:"evaluate-refiner",usage:"openpond evaluate-refiner <list|read|cancel|resume|request> [id] --team <id> --actor <id> --local [--server-url <loopback-origin>] [--project <id>] [--input-file <path>]",optionSchema:{team:"string",actor:"string",local:"boolean",serverUrl:"string",project:"string",inputFile:"string"},handler:o(async({options:t,rest:n})=>(await import("./evaluation-coordination-XEF5L7KZ.js")).runEvaluationCoordinationCommand("refiner",t,n),"handler")},{name:"human-review",usage:"openpond human-review <read|inbox|inspect|results|request> [id] --team <id> [--input-file <path>] [--view <mine|team|approval>] [--status <active|history>] [--project <id>] [--revision <n>] [--slot <0|1>] [--after-id <id>] [--limit <n>] [--local --server-url <loopback-origin>]",optionSchema:{team:"string",inputFile:"string",view:"string",status:"string",project:"string",revision:"integer",slot:"integer",afterId:"string",limit:"integer",local:"boolean",serverUrl:"string"},handler:o(async({options:t,rest:n})=>(await import("./human-review-WR777ODH.js")).runHumanReviewCommand(t,n),"handler")},{name:"experiments",usage:"openpond experiments <prepare-harness|run|read|list|status|cancel|duplicate|score|passes|pass|cancel-pass|pass-result|result|compare|case> [id] [candidate-id] --team <id> [--input-file <path>] [--operation-id <id>] [--local --server-url <loopback-origin>] [--receipt-id <id>] [--json]",optionSchema:{team:"string",inputFile:"string",operationId:"string",project:"string",datasetHash:"string",search:"string",status:"string",afterId:"string",limit:"integer",json:"boolean",local:"boolean",serverUrl:"string",receiptId:"string",afterSequence:"integer",revision:"integer",contentHash:"string"},handler:o(async({options:t,rest:n})=>(await import("./experiments-DFGQYA4O.js")).runExperimentsCommand(t,n),"handler")},{name:"home",usage:"openpond home [--home <directory>]",optionSchema:{},handler:o(async()=>console.log((await import("./dist-VYC5VMQB.js")).resolveOpenPondHome()),"handler")},{name:"config",usage:"openpond config <get|set|unset|path|validate|schema|doctor|migrate|recover|restart-migration|revisions|replace|effective|trust|untrust|export|backup|restore|collect-orphans|clear-cache> [key] [value] [--home <directory>] [--json]",optionSchema:{keyPath:"json",value:"string",file:"string",project:"boolean",revision:"string",expectedRevision:"string",sourceAppHome:"string",sourceConfig:"string",sourceBrowserState:"string",dryRun:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./configuration-command-6C5UO7GE.js")).runConfigurationCommand(t,n),"handler")},{name:"help",usage:"openpond help",optionSchema:{},handler:o(async()=>(await import("./help-S7THC6IE.js")).printHelp(),"handler")},{name:"version",usage:"openpond version",optionSchema:{},handler:o(()=>console.log(x()),"handler")},{name:"check-update",usage:"openpond check-update",optionSchema:{},handler:o(async()=>(await import("./core-commands-A2DGGIPS.js")).runCheckUpdate(),"handler")},{name:"login",usage:"openpond login [--base-url <url>]",optionSchema:b,handler:o(async({options:t})=>(await import("./core-commands-A2DGGIPS.js")).runLogin(t),"handler")},{name:"init",usage:"openpond init [--path <dir>] [--profile <name>] [--template <name>] [--force] [--json]",optionSchema:{...b,force:"boolean",path:"string",template:"string"},handler:o(async({options:t})=>(await import("./profile-TFZMUEDR.js")).runOpenPondInitCommand(t),"handler")},{name:"profile",usage:"openpond profile <current|init|load|check|push|commit|diff|catalog>",optionSchema:{checkKind:"string",conversationId:"string",ensureHosted:"boolean",expectedManifestHash:"string",force:"boolean",hostedCheckKind:"string",hostedRunAgentId:"string",hostedRunConversationId:"string",hostedRunIdempotencyKey:"string",hostedRunInput:"json",hostedRunRetry:"boolean",hostedRunTargetProjectId:"string",hostedSourceDispatch:"string",hostedSourceAgentId:"string",hostedSourceChecks:"boolean",hostedSourceProjectId:"string",json:"boolean",kind:"string",path:"string",publishHostedSource:"boolean",teamId:"string"},handler:o(async({options:t,rest:n})=>(await import("./profile-TFZMUEDR.js")).runOpenPondProfileCommand(t,n),"handler")},{name:"agents",usage:"openpond agents [--json]",optionSchema:{json:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./profile-TFZMUEDR.js")).runOpenPondAgentsCommand(t,n),"handler")},{name:"actions",usage:"openpond actions <check|build|run|dev|publish> [action-id] [--cwd DIR] [--input JSON|--input-file PATH]",optionSchema:{apiKey:"string",baseUrl:"string",cwd:"string",input:"string",inputFile:"string",json:"boolean",outputDirectory:"string",sourceDirectory:"string",sourceCommitSha:"string",sourceRef:"string",projectId:"string",teamId:"string",timeoutMs:"integer"},handler:o(async({options:t,rest:n})=>(await import("./actions-command-QU4H53OG.js")).runProjectActionsCommand(t,n),"handler")},...F(),{name:"extension",usage:"openpond extension <add|preview|list|inspect|update|remove> [owner/repo]",usages:["openpond extension add <owner/repo> [--ref <branch|tag|sha>] [--json]","openpond extension update <owner/repo> [--ref <branch|tag|sha>] [--json]","openpond extension update --all [--json]","openpond extension remove <owner/repo> [--json]"],optionSchema:{all:"boolean",json:"boolean",ref:"string"},handler:o(async({options:t,rest:n})=>(await import("./extension-XKXXOP5N.js")).runOpenPondExtensionCommand(t,n),"handler")},{name:"profiles",usage:"openpond profiles [args]",optionSchema:{json:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./core-commands-A2DGGIPS.js")).runProfiles(t,n),"handler")},{name:"account",usage:"openpond account",optionSchema:{json:"boolean"},handler:o(async()=>(await import("./core-commands-A2DGGIPS.js")).runAccount(),"handler")},{name:"health",usage:"openpond health",optionSchema:{json:"boolean"},handler:o(async({options:t})=>(await import("./core-commands-A2DGGIPS.js")).runHealth(t),"handler")},{name:"app-server",usage:"openpond app-server [--home DIR]",optionSchema:{home:"string"},handler:o(async({options:t,rest:n})=>(await import("./app-layer-NSTE5HIT.js")).runOpenPondServerCommand("app-server",t,n),"handler")},{name:"serve",usage:"openpond serve [args]",optionSchema:{host:"string",hostname:"string",listen:"string",port:"integer"},handler:o(async({options:t,rest:n})=>(await import("./app-layer-NSTE5HIT.js")).runOpenPondServerCommand("serve",t,n),"handler")},{name:"ui",usage:"openpond ui [--no-open] [--hostname HOST] [--port PORT]",optionSchema:{host:"string",hostname:"string",listen:"string",noOpen:"boolean",port:"integer",webRoot:"string"},handler:o(async({options:t,rest:n})=>(await import("./app-layer-NSTE5HIT.js")).runOpenPondServerCommand("web",t,n),"handler")},{name:"tui",aliases:["interactive"],usage:"openpond tui [--provider <id>] [--model <id>] [--project <id>]",optionSchema:{cwd:"string",model:"string",noServerStart:"boolean",project:"string",provider:"string",server:"string"},handler:o(async({options:t,rest:n})=>(await import("./app-layer-NSTE5HIT.js")).runOpenPondTerminalCommand(t,n),"handler")},{name:"chat",usage:"openpond chat (--message-file <path>|--message <text>|--stdin) --non-interactive [--provider <id>] [--model <id>] [--agent <id>] [--project <id>] [--resume <session-id>] [--yes] [--approval-policy <policy>] [--json] [--timeout-sec <n>] [--max-output-bytes <n>] [--sandbox <mode>]",optionSchema:P,handler:o(async({options:t,rest:n})=>(await import("./app-layer-NSTE5HIT.js")).runOpenPondTerminalCommand(t,n),"handler")},{name:"tool",usage:"openpond tool <list|run> <handle>/<repo> [args]",optionSchema:{body:"json",json:"boolean"},handler:K},{name:"backtest",usage:"openpond backtest <run|events|get> <handle>/<repo> [args]",optionSchema:{body:"json",branch:"string",deploymentId:"string",limit:"integer",runId:"string"},handler:$},{name:"deploy",usage:"openpond deploy watch <handle>/<repo> [--branch <branch>]",optionSchema:{branch:"string"},handler:q},{name:"template",usage:"openpond template <status|branches|update> <handle>/<repo> [--env preview|production]",optionSchema:{env:"string"},handler:G},{name:"sandbox-template",usage:"openpond sandbox-template <command> [args]",optionSchema:A,handler:o(async({options:t,rest:n})=>(await import("./sandbox-template-C4V6T36U.js")).runSandboxTemplateCommand(t,n),"handler")},{name:"repo",usage:"openpond repo <create|push> [--name <name>] [--path <dir>] [--branch <branch>]",optionSchema:{branch:"string",name:"string",path:"string"},handler:J},{name:"organizations",aliases:["organization"],usage:"openpond organizations <login|list|use|logout|whoami> [args]",optionSchema:{accessToken:"string",arguments:"json",callbackPort:"integer",clientId:"string",customDomain:"string",displayName:"string",email:"string",env:"string",environment:"string",json:"boolean",name:"string",open:"boolean",origin:"string",primaryContactEmail:"string",printToken:"boolean",resourceUrl:"string",role:"string",scope:"string",scopes:"string",slug:"string",status:"string",timeout:"integer",timeoutSeconds:"integer",tool:"string",toolName:"string",toolset:"string",url:"string"},handler:o(async({options:t,rest:n})=>(await import("./organizations-75L5DZDV.js")).runOrganizationsCommand(t,n),"handler")},{name:"project",usage:"openpond project <list|create|upsert|get|update|sync|source-upload|archive> [args]",optionSchema:E,handler:o(async({options:t,rest:n})=>(await import("./project-agent-6RRO233B.js")).runProjectCommand(t,n),"handler")},{name:"agent",usage:"openpond agent <inspect|build|validate|eval|traces|list|create|upsert|get|update|run|run-test|bind-source|source|archive> [args]",usages:["openpond agent run <action> [--cwd <project>] [--input <json>]","openpond agent run <agentId> --team-id <id> [--conversation-id <id>] [--target-project-id <projectId>] [--input <json>]","openpond agent source checks <agentId> --team-id <id> [--check-kind <kind>]","openpond agent source publish <agentId> --team-id <id> [--expected-manifest-hash <hash>]"],optionSchema:T,handler:o(async({options:t,rest:n})=>(await import("./project-agent-6RRO233B.js")).runAgentCommand(t,n),"handler")},{name:"desktop-test",usage:"openpond desktop-test <run|attach> <scenario...> [--isolated|--attach|--packaged|--none] [--app <path>] [--artifacts-dir <path>] [--json <path>]",optionSchema:{artifactsDir:"string",attach:"boolean",cwd:"string",devtoolsPort:"integer",grep:"string",isolated:"boolean",json:"string",jsonPath:"string",keepHome:"boolean",none:"boolean",server:"string",timeoutMs:"integer",token:"string",tokenFile:"string"},handler:o(async({options:t,rest:n})=>(await import("./desktop-test-3CUHVLXV.js")).runDesktopTestCommand(t,n),"handler")},{name:"sandbox",usage:"openpond sandbox <command> [args]",optionSchema:O,handler:o(async({options:t,rest:n})=>(await import("./sandbox-command-IU5XFTJP.js")).runSandboxCommand(t,n),"handler")},{name:"continual",usage:"openpond continual <init|validate|run|report> [manifest-or-series-id]",usages:["openpond continual init --from <tasks.jsonl> [--output <continual-support.yaml>] [--non-interactive]","openpond continual validate <continual-support.yaml> [--json]","openpond continual run <continual-support.yaml> [--api-base-url <url>] [--json]","openpond continual report <comparison-series-id> [--output <report.json>] [--json]"],optionSchema:{apiBaseUrl:"string",commit:"string",correctionCasesPerFamily:"integer",correctionSelection:"string",description:"string",from:"string",grader:"string",id:"string",json:"boolean",license:"string",name:"string",nonInteractive:"boolean",output:"string",repository:"string",seed:"string",semanticSimilarityThreshold:"number"},handler:o(async({options:t,rest:n})=>(await import("./continual-6CQAMTTR.js")).runContinualCommand(t,n),"handler")},{name:"training",usage:"openpond training <create-project|start|status|watch|logs|cancel|resume|artifacts|benchmark> <taskset-id|model-run-id|run-id|model-id>",usages:["openpond training create-project <taskset-id> --recipe <path> [--project-id <id>] [--profile <id>] [--name <name>] [--objective <text>] [--destination <id>] [--rollout-placement <local|remote>] [--gpu-placement-objective <fast|balanced|economical>] [--run-preset <preset>] [--max-spend <usd>] [--retention-days <days>] [--json]","openpond training start <model-project-id> [--comparison-series-entry <entry-id>] [--manifest <path>] [--yes] [--export-approved] [--max-spend <usd>] [--retention-days <days>] [--detach] [--json]","openpond training status <run-id> [--json]","openpond training watch <run-id> [--interval-ms <ms>] [--json]","openpond training logs <run-id> [--json]","openpond training cancel <run-id> [--json]","openpond training resume <model-run-id> [--json]","openpond training artifacts <run-id> [--json]","openpond training benchmark <model-id> [--provider <id>] [--model <id>] [--reasoning-effort <level>] [--max-spend <usd>] [--json]"],optionSchema:{apiBaseUrl:"string",comparisonSeriesEntry:"string",detach:"boolean",destination:"string",exportApproved:"boolean",gpuPlacementObjective:"string",intervalMs:"integer",json:"boolean",manifest:"string",maxSpend:"number",model:"string",name:"string",objective:"string",profile:"string",projectId:"string",provider:"string",recipe:"string",reasoningEffort:"string",retentionDays:"integer",rolloutPlacement:"string",runPreset:"string",yes:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./training-UF6RPI4T.js")).runTrainingCommand(t,n),"handler")},{name:"taskset",usage:"openpond taskset <import|publish|readiness|delete-draft> <package-path|draft-id|taskset-id> [--profile <id>] [--model <id>] [--json]",usages:["openpond taskset import <package-directory|taskset.json> [--profile <id>] [--json]","openpond taskset publish <draft-id> [--model <id>] [--json]","openpond taskset readiness <taskset-id> [--json]","openpond taskset delete-draft <draft-id> [--json]"],optionSchema:{apiBaseUrl:"string",json:"boolean",model:"string",profile:"string"},handler:o(async({options:t,rest:n})=>(await import("./taskset-EQRFQBYM.js")).runTasksetCommand(t,n),"handler")},{name:"opchat",usage:"openpond opchat <command> [args]",optionSchema:{compatModel:"string",compatibilityModel:"string",env:"string",environment:"string",effort:"string",json:"boolean",message:"string",model:"string",opchatApiBaseUrl:"string",opchatApiUrl:"string",prompt:"string",skipStream:"boolean",skipTool:"boolean",stream:"boolean"},handler:o(async({options:t,rest:n})=>(await import("./opchat-T4QTNEIY.js")).runOpChatCommand(t,n),"handler")},{name:"teams-bot",usage:"openpond teams-bot <command> [args]",optionSchema:{json:"boolean",teamId:"string"},handler:o(async({options:t,rest:n})=>(await import("./teams-bot-EAPGPTHZ.js")).runTeamsBotCommand(t,n),"handler")},{name:"apps",usage:"openpond apps <list|code-visibility|tools|deploy|env get|env set|performance|summary|assistant|agent create> [args]",optionSchema:{appId:"string",body:"json",env:"json",json:"boolean",limit:"integer",refresh:"boolean",teamId:"string",watch:"boolean"},handler:V},{name:"opentool",usage:"openpond opentool <init|validate|build> [args]",optionSchema:{},handler:o(async({rest:t})=>(await import("./core-commands-A2DGGIPS.js")).runOpentool(t),"handler")}],v=new Map;for(let t of y){v.set(t.name,t);for(let n of t.aliases??[])v.set(n,t)}function re(){return y}o(re,"listCliCommandDefinitions");function w(t){return v.get(t)??null}o(w,"getCliCommandDefinition");function ie(t,n){return w(t||"ui")?.optionSchema[n]??b[n]}o(ie,"getCliOptionKind");function se(t){let n=b[t];if(n)return n;for(let s of y){let i=s.optionSchema[t];if(i)return i}}o(se,"getAnyCliOptionKind");async function pe(t){let n=w(t.command);return n?S(t.options.help)?(U(n),!0):(await n.handler(t),!0):!1}o(pe,"runCliCommand");function H(t){let n=["Usage:",` ${t.usage}`,...(t.usages??[]).map(i=>` ${i}`)];t.aliases?.length&&n.push("","Aliases:",` ${t.aliases.join(", ")}`);let s=Object.entries(t.optionSchema).sort(([i],[r])=>i.localeCompare(r));if(s.length>0){n.push("","Options:");for(let[i,r]of s){let c=L(i);n.push(r==="boolean"?` --${c}`:` --${c} <${r}>`)}}return n.join(`
3
+ `)}o(H,"formatCliCommandUsage");function U(t){console.log(H(t))}o(U,"printCliCommandUsage");function L(t){return t.replace(/[A-Z]/g,n=>`-${n.toLowerCase()}`)}o(L,"cliOptionName");function F(){return["inspect","build","validate","eval","run"].map(n=>({name:n,usage:`openpond ${n} [args]`,optionSchema:B,handler:o(async({options:s,rest:i})=>(await import("./profile-TFZMUEDR.js")).runOpenPondProfileSdkAlias(n,s,i),"handler")}))}o(F,"profileSdkAliasDefinitions");async function K({options:t,rest:n}){let{runToolList:s,runToolRun:i}=await import("./core-commands-A2DGGIPS.js"),r=n[0];if(r==="list"){let c=n[1];if(!c)throw new Error("usage: tool list <handle>/<repo>");await s(t,c);return}if(r==="run"){let c=n[1],d=n[2];if(!c||!d)throw new Error("usage: tool run <handle>/<repo> <tool> [--body <json>]");await i(t,c,d);return}throw new Error("usage: tool <list|run> <handle>/<repo> [args]")}o(K,"runToolCommand");async function $({options:t,rest:n}){let{runBacktestRun:s}=await import("./core-commands-A2DGGIPS.js"),{runBacktestEvents:i,runBacktestGet:r}=await import("./apps-BKTOR4F7.js"),c=n[0]||"run";if(c==="run"){let d=n[1],f=n[2];if(!d||!f)throw new Error("usage: backtest run <handle>/<repo> <tool> [--body <json>] [--branch <branch>] [--deployment-id <id>]");await s(t,d,f);return}if(c==="events"){let d=n[1];if(!d)throw new Error("usage: backtest events <handle>/<repo> [--run-id <id>] [--limit <n>]");await i(t,d);return}if(c==="get"){let d=n[1];if(!d)throw new Error("usage: backtest get <handle>/<repo> --run-id <id>");await r(t,d);return}throw new Error("usage: backtest <run|events|get> <handle>/<repo> [args]")}o($,"runBacktestCommand");async function q({options:t,rest:n}){let{runDeployWatch:s}=await import("./core-commands-A2DGGIPS.js");if((n[0]||"watch")!=="watch")throw new Error("usage: deploy watch <handle>/<repo> [--branch <branch>]");let r=n[1];if(!r)throw new Error("usage: deploy watch <handle>/<repo> [--branch <branch>]");await s(t,r)}o(q,"runDeployCommand");async function G({options:t,rest:n}){let{runTemplateBranches:s,runTemplateStatus:i,runTemplateUpdate:r}=await import("./core-commands-A2DGGIPS.js"),c=n[0]||"status",d=n[1];if(!d)throw new Error("usage: template <status|branches|update> <handle>/<repo> [--env preview|production]");if(c==="status"){await i(t,d);return}if(c==="branches"){await s(t,d);return}if(c==="update"){await r(t,d);return}throw new Error("usage: template <status|branches|update> <handle>/<repo> [--env preview|production]")}o(G,"runTemplateCommand");async function J({options:t,rest:n}){let{runRepoCreate:s,runRepoPush:i}=await import("./core-commands-A2DGGIPS.js"),r=n[0]||"create";if(r==="create"){await s(t,n.slice(1));return}if(r==="push"){await i(t);return}throw new Error("usage: repo <create|push> [--name <name>] [--path <dir>] [--branch <branch>]")}o(J,"runRepoCommand");async function V({options:t,rest:n}){let{runAppsAgentCreate:s,runAppsAssistant:i,runAppsCodeVisibility:r,runAppsDeploy:c,runAppsEnvGet:d,runAppsEnvSet:f,runAppsList:R,runAppsPerformance:N,runAppsSummary:M,runAppsTools:_,runAppsToolsExecute:D}=await import("./apps-BKTOR4F7.js"),u=n[0];if(u==="list"){await R(t);return}if(u==="code-visibility"){let p=n[1];if(!p)throw new Error("usage: apps code-visibility <handle>/<repo> --visibility public|private");await r(t,p);return}if(u==="tools"){if(n[1]==="execute"){let p=n[2],h=n[3],C=n[4];if(!p||!h||!C)throw new Error("usage: apps tools execute <appId> <deploymentId> <tool> [--body <json>]");await D(t,p,h,C);return}await _();return}if(u==="deploy"){let p=n[1];if(!p)throw new Error("usage: apps deploy <handle>/<repo> [--env preview|production] [--watch]");await c(t,p);return}if(u==="env"&&n[1]==="get"){let p=n[2];if(!p)throw new Error("usage: apps env get <handle>/<repo>");await d(t,p);return}if(u==="env"&&n[1]==="set"){let p=n[2];if(!p)throw new Error("usage: apps env set <handle>/<repo> --env <json>");await f(t,p);return}if(u==="performance"){await N(t);return}if(u==="summary"){let p=n[1];if(!p)throw new Error("usage: apps summary <handle>/<repo>");await M(t,p);return}if(u==="assistant"){let p=n[1],h=n[2];if(p!=="plan"&&p!=="performance"||!h)throw new Error("usage: apps assistant <plan|performance> <handle>/<repo> --prompt <text>");await i(t,p,h,n.slice(3));return}if(u==="agent"&&n[1]==="create"){await s(t,n.slice(2));return}throw new Error("usage: apps <list|code-visibility|tools|deploy|env get|env set|performance|summary|assistant|agent create> [args]")}o(V,"runAppsCommand");export{x as a,X as b,Y as c,b as d,ae as e,re as f,w as g,ie as h,se as i,pe as j,H as k};