openpond 0.2.61 → 0.2.63

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 (549) hide show
  1. package/README.md +2 -0
  2. package/dist/app-server.d.ts +4713 -477
  3. package/dist/app-server.js +1 -1
  4. package/dist/chunks/{acp-FUAWCKBH.js → acp-H3MJCPHX.js} +1 -1
  5. package/dist/chunks/{acp-agent-XBSJ27KI.js → acp-agent-DWA7272M.js} +1 -1
  6. package/dist/chunks/actions-command-IIYOO4LL.js +2 -0
  7. package/dist/chunks/{app-layer-4BFMOMKM.js → app-layer-K7H2WJ56.js} +1 -1
  8. package/dist/chunks/app-server-connected-apps-RM5E2VWF.js +2 -0
  9. package/dist/chunks/{app-server-evaluations-HAAYVEXB.js → app-server-evaluations-XGMGS67X.js} +1 -1
  10. package/dist/chunks/app-server-harness-services-BHD6S5II.js +2 -0
  11. package/dist/chunks/app-server-runtime-LFIL6F7D.js +2 -0
  12. package/dist/chunks/apps-QKAHJGQ4.js +2 -0
  13. package/dist/chunks/chunk-25XXZS3E.js +2 -0
  14. package/dist/chunks/chunk-27JGS3KB.js +12 -0
  15. package/dist/chunks/{chunk-KK626T3Z.js → chunk-2EPR4HLF.js} +1 -1
  16. package/dist/chunks/{chunk-HN2ZK6EV.js → chunk-2HAWOMZK.js} +1 -1
  17. package/dist/chunks/chunk-2LJCJOJ7.js +2 -0
  18. package/dist/chunks/{chunk-BDCTN4PU.js → chunk-2V4LPUBH.js} +1 -1
  19. package/dist/chunks/{chunk-CN5OXQ7A.js → chunk-3YXYBYWK.js} +1 -1
  20. package/dist/chunks/{chunk-LHENAWLH.js → chunk-42V4NV2F.js} +1 -1
  21. package/dist/chunks/{chunk-DW3GJRY3.js → chunk-4FNCBA3Y.js} +1 -1
  22. package/dist/chunks/{chunk-TXBIZDXG.js → chunk-4L6DU6Z2.js} +1 -1
  23. package/dist/chunks/{chunk-BFKYRQMA.js → chunk-4N4EH3RJ.js} +1 -1
  24. package/dist/chunks/{chunk-MLTKB5G3.js → chunk-4SZ3HKHU.js} +1 -1
  25. package/dist/chunks/{chunk-SCCYSPQ5.js → chunk-4ZBOYWQ3.js} +1 -1
  26. package/dist/chunks/chunk-5EP2DZLJ.js +2 -0
  27. package/dist/chunks/chunk-5FU5RLML.js +2 -0
  28. package/dist/chunks/{chunk-TH6Y4K5Z.js → chunk-5MHYGMJG.js} +1 -1
  29. package/dist/chunks/chunk-6EBCS57F.js +2 -0
  30. package/dist/chunks/chunk-6RS4NAOY.js +2 -0
  31. package/dist/chunks/chunk-6XSSM4WT.js +3 -0
  32. package/dist/chunks/{chunk-NVHZRKXB.js → chunk-7HRLWPPZ.js} +1 -1
  33. package/dist/chunks/chunk-7O6Z3VOZ.js +2 -0
  34. package/dist/chunks/{chunk-BQUWZRWU.js → chunk-7WYL2IDD.js} +1 -1
  35. package/dist/chunks/chunk-7YLXGILH.js +2 -0
  36. package/dist/chunks/chunk-7ZLXFKRI.js +2 -0
  37. package/dist/chunks/{chunk-M6JRS5PA.js → chunk-ABF3W2MO.js} +1 -1
  38. package/dist/chunks/{chunk-TTN63EAM.js → chunk-AH26AQN7.js} +1 -1
  39. package/dist/chunks/chunk-AHOBCBVZ.js +2 -0
  40. package/dist/chunks/chunk-AZ7BL5FL.js +2 -0
  41. package/dist/chunks/{chunk-3DVWJCOA.js → chunk-B4RKHHF7.js} +1 -1
  42. package/dist/chunks/chunk-B5R53U74.js +2 -0
  43. package/dist/chunks/chunk-BKEDG3A4.js +22 -0
  44. package/dist/chunks/{chunk-CO3OJFPU.js → chunk-BPZOABMC.js} +1 -1
  45. package/dist/chunks/{chunk-5VPU7OS7.js → chunk-BSPFY3Y5.js} +1 -1
  46. package/dist/chunks/{chunk-U4HZD2GM.js → chunk-BU27SLZP.js} +2 -2
  47. package/dist/chunks/chunk-C2AXMKK4.js +2 -0
  48. package/dist/chunks/{chunk-SIV5P6JO.js → chunk-C2LAEGOW.js} +2 -2
  49. package/dist/chunks/{chunk-ORLJJGZZ.js → chunk-CZ5R4JXZ.js} +1 -1
  50. package/dist/chunks/{chunk-D4JZALZ4.js → chunk-DABBHWSF.js} +1 -1
  51. package/dist/chunks/{chunk-ROE24PN5.js → chunk-DLANLLKH.js} +1 -1
  52. package/dist/chunks/{chunk-57RY3LSR.js → chunk-DQI5TE6A.js} +2 -2
  53. package/dist/chunks/chunk-DTTFUANI.js +12 -0
  54. package/dist/chunks/{chunk-VBW2X42G.js → chunk-DUL6DXOI.js} +1 -1
  55. package/dist/chunks/{chunk-OQUKSRU3.js → chunk-ELX7VRSU.js} +1 -1
  56. package/dist/chunks/chunk-ERL2M773.js +3 -0
  57. package/dist/chunks/chunk-ERT32RZA.js +86 -0
  58. package/dist/chunks/{chunk-RPOD6I64.js → chunk-EZRUWIP6.js} +1 -1
  59. package/dist/chunks/{chunk-MCIIGQT7.js → chunk-F6UQ6PPK.js} +1 -1
  60. package/dist/chunks/chunk-F7QTIHXX.js +2 -0
  61. package/dist/chunks/chunk-FAKDGLZQ.js +8 -0
  62. package/dist/chunks/{chunk-BWY4D3BN.js → chunk-FVRII5XO.js} +1 -1
  63. package/dist/chunks/{chunk-GEXKTGLY.js → chunk-FYYYECHE.js} +50 -48
  64. package/dist/chunks/chunk-G32BO6M5.js +4 -0
  65. package/dist/chunks/{chunk-TSAW2QVU.js → chunk-G6OR5NB6.js} +1 -1
  66. package/dist/chunks/{chunk-65SM7Y2G.js → chunk-GGJUWIGR.js} +1 -1
  67. package/dist/chunks/{chunk-Q66LWQGF.js → chunk-GPL2Z65R.js} +1 -1
  68. package/dist/chunks/{chunk-LNRFRAV5.js → chunk-GS6ZUSIN.js} +2 -2
  69. package/dist/chunks/{chunk-OFVUN4KI.js → chunk-GVARQXYI.js} +1 -1
  70. package/dist/chunks/chunk-GXCUH2VV.js +17 -0
  71. package/dist/chunks/{chunk-IUGK6BBY.js → chunk-GXZCMO6S.js} +1 -1
  72. package/dist/chunks/{chunk-CLFYRN46.js → chunk-H6C4MAUN.js} +1 -1
  73. package/dist/chunks/{chunk-SGK4GR44.js → chunk-HFJUXKT5.js} +1 -1
  74. package/dist/chunks/{chunk-I3W27VK4.js → chunk-HUCBKXTU.js} +1 -1
  75. package/dist/chunks/{chunk-P4XM7LUT.js → chunk-IHB5GTOJ.js} +2 -2
  76. package/dist/chunks/{chunk-U447MS3Y.js → chunk-IWWXIUAQ.js} +1 -1
  77. package/dist/chunks/chunk-J572ANHX.js +13 -0
  78. package/dist/chunks/{chunk-CGAL7IHZ.js → chunk-J7ZTPXRQ.js} +1 -1
  79. package/dist/chunks/chunk-JCLTFDVW.js +2 -0
  80. package/dist/chunks/{chunk-25RDE7DV.js → chunk-JEISPWWM.js} +1 -1
  81. package/dist/chunks/{chunk-ELYRVTTG.js → chunk-JORRZ4BB.js} +1 -1
  82. package/dist/chunks/{chunk-H2AUR7OT.js → chunk-JQRMDFF3.js} +1 -1
  83. package/dist/chunks/chunk-JSQRLLN6.js +2 -0
  84. package/dist/chunks/chunk-KCOTDUGW.js +2 -0
  85. package/dist/chunks/{chunk-NK4JKB7C.js → chunk-KHTAAVC2.js} +1 -1
  86. package/dist/chunks/{chunk-CM5USMXN.js → chunk-KOKX7PBS.js} +1 -1
  87. package/dist/chunks/{chunk-3ZWLRBYZ.js → chunk-KUPJNBWG.js} +1 -1
  88. package/dist/chunks/{chunk-MHYI7ATG.js → chunk-LK2K3SPM.js} +2 -2
  89. package/dist/chunks/{chunk-FJ3HMHT6.js → chunk-LKKMLBOH.js} +1 -1
  90. package/dist/chunks/{chunk-BNZTJPK7.js → chunk-LSZJ5M3X.js} +1 -1
  91. package/dist/chunks/chunk-M3FLEZ4E.js +4 -0
  92. package/dist/chunks/{chunk-4LZLO4OW.js → chunk-M3SCON53.js} +1 -1
  93. package/dist/chunks/{chunk-VPDG2V2R.js → chunk-MEGKXGW3.js} +1 -1
  94. package/dist/chunks/{chunk-TYHCBVQT.js → chunk-MILEWROZ.js} +1 -1
  95. package/dist/chunks/chunk-MPNJ2BB4.js +2 -0
  96. package/dist/chunks/{chunk-VFLSBDNZ.js → chunk-N33D7KCW.js} +1 -1
  97. package/dist/chunks/chunk-N42HT64M.js +2 -0
  98. package/dist/chunks/{chunk-L3GA2CQI.js → chunk-N4VHLJBZ.js} +1 -1
  99. package/dist/chunks/chunk-NEJLJ2XY.js +2 -0
  100. package/dist/chunks/chunk-NG2L6D7G.js +2 -0
  101. package/dist/chunks/{chunk-7EAWLYYB.js → chunk-NLYZ5K7U.js} +2 -2
  102. package/dist/chunks/{chunk-B47JMAVW.js → chunk-NT7N6KLE.js} +1 -1
  103. package/dist/chunks/{chunk-6MWT6BVU.js → chunk-NWQL6FNF.js} +1 -1
  104. package/dist/chunks/{chunk-PAZDQRYU.js → chunk-NZTCH6K5.js} +1 -1
  105. package/dist/chunks/{chunk-CQF6QZEL.js → chunk-OG33QAG6.js} +1 -1
  106. package/dist/chunks/chunk-OTUBJV6C.js +6 -0
  107. package/dist/chunks/{chunk-TMMFF6DO.js → chunk-PBTXLQAU.js} +1 -1
  108. package/dist/chunks/chunk-Q34IF4PW.js +2 -0
  109. package/dist/chunks/{chunk-I3X6M6ZO.js → chunk-QJ6KUVAR.js} +1 -1
  110. package/dist/chunks/{chunk-SID4X3YN.js → chunk-QU4UE73E.js} +1 -1
  111. package/dist/chunks/{chunk-I7JCARVH.js → chunk-R6VJDOQM.js} +3 -3
  112. package/dist/chunks/{chunk-6RVF2J47.js → chunk-R6WMY6AH.js} +1 -1
  113. package/dist/chunks/{chunk-ZUNG6YDO.js → chunk-RDSVU6F6.js} +1 -1
  114. package/dist/chunks/{chunk-R4PDSOB4.js → chunk-RFMME46Z.js} +1 -1
  115. package/dist/chunks/{chunk-GQUS7MCH.js → chunk-RZUCVF2Q.js} +1 -1
  116. package/dist/chunks/chunk-SFKZITAG.js +9 -0
  117. package/dist/chunks/{chunk-MF35MALN.js → chunk-SHJY5RLU.js} +1 -1
  118. package/dist/chunks/chunk-SI5W5LBV.js +2 -0
  119. package/dist/chunks/chunk-SO42ZB5K.js +2 -0
  120. package/dist/chunks/{chunk-TNHDD3LO.js → chunk-SXMR6E2W.js} +1 -1
  121. package/dist/chunks/{chunk-OMICIPPY.js → chunk-T6JN4PND.js} +1 -1
  122. package/dist/chunks/{chunk-ZISYLRH6.js → chunk-TCOTXCV6.js} +1 -1
  123. package/dist/chunks/{chunk-QCSLEMZF.js → chunk-U2K7QJCG.js} +1 -1
  124. package/dist/chunks/{chunk-ISIXFK6U.js → chunk-UH4JSSRL.js} +28 -28
  125. package/dist/chunks/chunk-UPWJSNL5.js +2 -0
  126. package/dist/chunks/chunk-URNMC46H.js +157 -0
  127. package/dist/chunks/{chunk-OJFDI7VM.js → chunk-UTNGEMW5.js} +1 -1
  128. package/dist/chunks/{chunk-WFVOG5PU.js → chunk-V7KR74NO.js} +1 -1
  129. package/dist/chunks/{chunk-QDBYLJGH.js → chunk-VHXDWAEH.js} +1 -1
  130. package/dist/chunks/{chunk-VZXZ6CHS.js → chunk-W2TICQ62.js} +1 -1
  131. package/dist/chunks/{chunk-QRJPLZF7.js → chunk-W5W4IODW.js} +1 -1
  132. package/dist/chunks/chunk-WP2L2NY2.js +2 -0
  133. package/dist/chunks/chunk-WSOUMXH3.js +24 -0
  134. package/dist/chunks/chunk-WWQNMC7C.js +6 -0
  135. package/dist/chunks/chunk-XMHIQ3SK.js +5 -0
  136. package/dist/chunks/{chunk-5MTN6KXV.js → chunk-XNOMIWEY.js} +1 -1
  137. package/dist/chunks/{chunk-T4LLJC5N.js → chunk-XOB6FKQV.js} +1 -1
  138. package/dist/chunks/chunk-Y766IN7Y.js +2 -0
  139. package/dist/chunks/chunk-YCZZ62C2.js +2 -0
  140. package/dist/chunks/chunk-YM4PSVFW.js +4 -0
  141. package/dist/chunks/chunk-YNQWJWIC.js +10 -0
  142. package/dist/chunks/{chunk-LBBXVOVR.js → chunk-Z3BWCFLV.js} +1 -1
  143. package/dist/chunks/{chunk-WRQEYW3V.js → chunk-ZG6353RM.js} +1 -1
  144. package/dist/chunks/{chunk-PE7UKJXK.js → chunk-ZPTKR3GB.js} +1 -1
  145. package/dist/chunks/{chunk-2VXL6AU3.js → chunk-ZYVHOVKL.js} +1 -1
  146. package/dist/chunks/chunk-ZZHXQCNB.js +22 -0
  147. package/dist/chunks/cli-PSXMIJTF.js +2 -0
  148. package/dist/chunks/{configuration-command-ONGI2BJD.js → configuration-command-XYKMXIWF.js} +1 -1
  149. package/dist/chunks/connected-app-executor-6G2LA3PQ.js +2 -0
  150. package/dist/chunks/connected-evidence-IRXYN6YD.js +2 -0
  151. package/dist/chunks/{connected-starting-assets-OXLT7S4O.js → connected-starting-assets-JONPTII6.js} +1 -1
  152. package/dist/chunks/{connection-HJWE6SEW.js → connection-XMAAGMXJ.js} +1 -1
  153. package/dist/chunks/{continual-CJUZM5ZQ.js → continual-Z7MO2PF6.js} +1 -1
  154. package/dist/chunks/core-commands-WWN7X3XC.js +2 -0
  155. package/dist/chunks/dataset-preparation-authoring-F3OZIQSP.js +4 -0
  156. package/dist/chunks/datasets-2PC2HP7N.js +2 -0
  157. package/dist/chunks/desktop-test-VU6AFAMO.js +3 -0
  158. package/dist/chunks/dist-47AYOIH6.js +2 -0
  159. package/dist/chunks/{dist-X64FC6NA.js → dist-HSC43RG4.js} +1 -1
  160. package/dist/chunks/{dist-DCSLPBO2.js → dist-MXBEBM4D.js} +1 -1
  161. package/dist/chunks/evaluation-coordination-UOWZHHC5.js +2 -0
  162. package/dist/chunks/experiment-improvements-EB2CV5RA.js +2 -0
  163. package/dist/chunks/experiments-SZQYR6MH.js +2 -0
  164. package/dist/chunks/experiments-signal-2KJCP25D.js +2 -0
  165. package/dist/chunks/{extension-C33NUFDL.js → extension-ZM6NI5O5.js} +1 -1
  166. package/dist/chunks/{help-M2VQGPVC.js → help-7HXFWIKS.js} +1 -1
  167. package/dist/chunks/host-profile-evaluation-tools-Y2LQ4WQN.js +2 -0
  168. package/dist/chunks/host-profile-external-dataset-FRIGXOO7.js +2 -0
  169. package/dist/chunks/hosted-app-server-composition-PGKQNDW6.js +2 -0
  170. package/dist/chunks/hosted-experiment-improvement-UXC542SZ.js +3 -0
  171. package/dist/chunks/hosted-harness-runtime-6PEI7F2U.js +2 -0
  172. package/dist/chunks/hosted-profile-candidate-HM44BIUX.js +3 -0
  173. package/dist/chunks/hosted-profile-compiler-UAZ4PHYE.js +2 -0
  174. package/dist/chunks/hosted-profile-evaluation-control-EUL57FAB.js +2 -0
  175. package/dist/chunks/hosted-profile-evaluation-inspection-7USY75Z4.js +3 -0
  176. package/dist/chunks/{hosted-profile-evaluation-preparation-ZAOGDQXO.js → hosted-profile-evaluation-preparation-2LSMZQNA.js} +1 -1
  177. package/dist/chunks/{hosted-tasksets-CVUP7MS6.js → hosted-tasksets-WGXGXJ7E.js} +1 -1
  178. package/dist/chunks/human-review-M26UKGJL.js +2 -0
  179. package/dist/chunks/{import-WLLUIDS6.js → import-6SI4BEKS.js} +2 -2
  180. package/dist/chunks/learning-HM3NWOV5.js +2 -0
  181. package/dist/chunks/local-harness-improvement-runtime-QGWFWNSR.js +2 -0
  182. package/dist/chunks/local-harness-taskset-review-KS4WPMN6.js +2 -0
  183. package/dist/chunks/model-projects-YUAMBQTO.js +2 -0
  184. package/dist/chunks/opchat-AG4CWVY4.js +3 -0
  185. package/dist/chunks/opchat-bounded-chat-IQMP5IIO.js +2 -0
  186. package/dist/chunks/organizations-KDKX77XZ.js +2 -0
  187. package/dist/chunks/{profile-JRS3JNRC.js → profile-O5HL5DTQ.js} +1 -1
  188. package/dist/chunks/project-action-payload-QA24HYGF.js +2 -0
  189. package/dist/chunks/project-agent-XBOOM5TS.js +2 -0
  190. package/dist/chunks/published-experiment-source-GZGN354O.js +2 -0
  191. package/dist/chunks/refiner-profile-service-BJMOYKTC.js +2 -0
  192. package/dist/chunks/{runtime-CBJF5GMB.js → runtime-XBA744HJ.js} +2 -2
  193. package/dist/chunks/sandbox-command-5ECGS7DG.js +2 -0
  194. package/dist/chunks/{sandbox-template-FTANKQIA.js → sandbox-template-27U3FQN7.js} +1 -1
  195. package/dist/chunks/saved-work-KUNVTJ7O.js +2 -0
  196. package/dist/chunks/{send-turn-5UB7ZBJV.js → send-turn-FIPWOXWV.js} +1 -1
  197. package/dist/chunks/src-BLWX6DRG.js +424 -0
  198. package/dist/chunks/{src-4YZF6L6H.js → src-PU7QTFO5.js} +1 -1
  199. package/dist/chunks/standalone-experiment-turn-owner-XIE46VNH.js +2 -0
  200. package/dist/chunks/store-chat-resources-YOEJ2BI6.js +2 -0
  201. package/dist/chunks/{store-continual-support-reviews-GWI2FRII.js → store-continual-support-reviews-FOMYYS25.js} +1 -1
  202. package/dist/chunks/{store-conversation-serving-637AHKBP.js → store-conversation-serving-K324SQTO.js} +1 -1
  203. package/dist/chunks/{store-create-improve-ZG653Z63.js → store-create-improve-3LQMIYAP.js} +1 -1
  204. package/dist/chunks/{store-datasets-IW6F2QZM.js → store-datasets-3KSX7RSO.js} +1 -1
  205. package/dist/chunks/store-evaluation-results-LHCCNNE6.js +7 -0
  206. package/dist/chunks/{store-harness-evaluation-review-settings-I2R3HPO3.js → store-harness-evaluation-review-settings-AAN7KKJ5.js} +1 -1
  207. package/dist/chunks/{store-harness-refinement-candidates-SUT45FQX.js → store-harness-refinement-candidates-3PHL3BUY.js} +1 -1
  208. package/dist/chunks/store-harness-workspaces-ZHNCNWVI.js +2 -0
  209. package/dist/chunks/store-human-review-QJY3ZPPF.js +7 -0
  210. package/dist/chunks/store-learned-preference-migration-validation-X32SRBOM.js +2 -0
  211. package/dist/chunks/{store-learning-MFS4DGQR.js → store-learning-DW3QLQXU.js} +1 -1
  212. package/dist/chunks/{store-learning-credentials-BECWEG2Y.js → store-learning-credentials-67QNTPA7.js} +1 -1
  213. package/dist/chunks/{store-local-experiments-A2UWYPVQ.js → store-local-experiments-QTVHJAEP.js} +1 -1
  214. package/dist/chunks/store-model-batch-review-PBYQZJJJ.js +2 -0
  215. package/dist/chunks/store-model-configuration-3SU73CMS.js +3 -0
  216. package/dist/chunks/store-model-project-preparation-TFCG2F2F.js +2 -0
  217. package/dist/chunks/store-ponder-history-WDLMXBIJ.js +2 -0
  218. package/dist/chunks/store-ponder-hosted-DX6E2BVW.js +4 -0
  219. package/dist/chunks/{store-preference-comparison-HTOXLWKF.js → store-preference-comparison-DWV5XSMY.js} +1 -1
  220. package/dist/chunks/{store-schedules-QVWT7AEB.js → store-schedules-2KUY4T6M.js} +1 -1
  221. package/dist/chunks/{store-sidebar-file-bookmarks-G5Z6NZWL.js → store-sidebar-file-bookmarks-A4XCS7RM.js} +1 -1
  222. package/dist/chunks/{store-sidebar-preferences-27FFMUWU.js → store-sidebar-preferences-V2PKRXUZ.js} +1 -1
  223. package/dist/chunks/{store-subagents-PK7ZWLPR.js → store-subagents-UGVEFA6M.js} +1 -1
  224. package/dist/chunks/store-task-inbox-QABI4ZAH.js +33 -0
  225. package/dist/chunks/{store-task-inventory-IG6HGWSQ.js → store-task-inventory-GEQIZELY.js} +1 -1
  226. package/dist/chunks/store-taskset-drafts-GXABQR5G.js +9 -0
  227. package/dist/chunks/{store-training-NQRRPKEZ.js → store-training-CQV7PL3V.js} +1 -1
  228. package/dist/chunks/{store-training-jobs-F6Y2ZTXP.js → store-training-jobs-XKN6K66J.js} +18 -10
  229. package/dist/chunks/{store-training-models-NRSLSBEW.js → store-training-models-Q7DTTR4S.js} +1 -1
  230. package/dist/chunks/{store-usage-GFHQYT34.js → store-usage-XGAX7NLB.js} +1 -1
  231. package/dist/chunks/{taskset-NYLUYX6K.js → taskset-ARKJQKYQ.js} +1 -1
  232. package/dist/chunks/taskset-packages-X4K65DTW.js +2 -0
  233. package/dist/chunks/taskset-packages-XK7FSD45.js +2 -0
  234. package/dist/chunks/{teams-bot-FMAEDGSD.js → teams-bot-UTQAJA6H.js} +1 -1
  235. package/dist/chunks/training-3IWW4256.js +2 -0
  236. package/dist/chunks/{training-UBX6E7SK.js → training-RVIESURJ.js} +1 -1
  237. package/dist/chunks/training-error-2EWDOQ4G.js +2 -0
  238. package/dist/chunks/training-hosted-PFJHYTEU.js +2 -0
  239. package/dist/chunks/training-hosted-checkpoint-evaluation-JJPP7KFW.js +2 -0
  240. package/dist/chunks/training-hosted-feedback-5B2KJGOT.js +2 -0
  241. package/dist/chunks/training-hosted-learning-Y7NHRY4V.js +2 -0
  242. package/dist/chunks/training-hosted-report-UVGTPDOK.js +2 -0
  243. package/dist/chunks/training-hosted-serving-QAV7ZGGV.js +2 -0
  244. package/dist/chunks/training-hosted-serving-report-OX4A5OKB.js +2 -0
  245. package/dist/chunks/training-hosted-workers-LST4ZUXN.js +2 -0
  246. package/dist/chunks/training-model-start-ROLS3E4V.js +2 -0
  247. package/dist/chunks/training-project-preparation-XWGRY5ME.js +3 -0
  248. package/dist/chunks/{web-search-Q4OQVUNH.js → web-search-7FBUBZ66.js} +1 -1
  249. package/dist/chunks/{workspaces-XREEVSTS.js → workspaces-G3CMY7ZA.js} +1 -1
  250. package/dist/cli.js +2 -2
  251. package/dist/hosted-chat.d.ts +28 -0
  252. package/dist/index.js +1 -1
  253. package/dist/sandbox/url.d.ts +3 -1
  254. package/dist/skills/LICENSE +21 -0
  255. package/dist/skills/manifest.json +168 -0
  256. package/dist/skills/openpond-agent-authoring/SKILL.md +9 -3
  257. package/dist/skills/openpond-agent-authoring/references/profile-layout.md +1 -1
  258. package/dist/skills/openpond-agent-authoring/references/validation-and-repair.md +2 -2
  259. package/dist/skills/openpond-cli/SKILL.md +24 -7
  260. package/dist/skills/openpond-cli/references/compact-resource-tables.md +3 -3
  261. package/dist/skills/openpond-cli/references/diagnose-and-improve.md +4 -2
  262. package/dist/skills/openpond-cli/references/experiments-and-training.md +156 -11
  263. package/dist/skills/openpond-refiner-authoring/SKILL.md +4 -0
  264. package/dist/skills/openpond-skill-authoring/SKILL.md +5 -1
  265. package/dist/skills/openpond-taskset-authoring/SKILL.md +5 -4
  266. package/dist/skills/openpond-taskset-authoring/artifact.json +7 -7
  267. package/dist/skills/openpond-taskset-authoring/references/failure-diagnosis.md +52 -1
  268. package/dist/web/assets/App-DY2R8Z6r.js +53 -0
  269. package/dist/web/assets/App-DpFKLxuA.css +1 -0
  270. package/dist/web/assets/AppDialog-8Y0FYalT.js +1 -0
  271. package/dist/web/assets/AppTerminalPanel-YcnBD5DF.js +2 -0
  272. package/dist/web/assets/{AppToastContext-BB_2hRfw.js → AppToastContext-BiQbbVxq.js} +1 -1
  273. package/dist/web/assets/AppsView-Dtte4h6e.js +1 -0
  274. package/dist/web/assets/{AttachmentTypeIcon-DOAsVQjt.js → AttachmentTypeIcon-DgADV7dn.js} +1 -1
  275. package/dist/web/assets/BrowserSidebar-BUqDvEv9.js +1 -0
  276. package/dist/web/assets/{CartesianChart-DO76yfJb.js → CartesianChart-J4ChOjvG.js} +1 -1
  277. package/dist/web/assets/ChatTimelineEntry-DC93wlDa.js +8 -0
  278. package/dist/web/assets/ChatTimelineEntry-DztFb85D.css +1 -0
  279. package/dist/web/assets/{CollaborationTabs-DNoknVMD.js → CollaborationTabs-CFCpk2Ck.js} +1 -1
  280. package/dist/web/assets/CommandMenu-EPPjB14H.js +1 -0
  281. package/dist/web/assets/CommunityView-Okydjpqm.js +1 -0
  282. package/dist/web/assets/ComposerAttachments-RXCiE88M.js +2 -0
  283. package/dist/web/assets/ComposerCreateImproveStrip-CSngc8-V.js +1 -0
  284. package/dist/web/assets/ConversationImportsSettings-DS73kyfj.js +1 -0
  285. package/dist/web/assets/FilePagePreview-Qc4B0vue.js +2 -0
  286. package/dist/web/assets/GetStartedView-DGFPQ1We.js +1 -0
  287. package/dist/web/assets/GettingStartedDialog-DFBYQdHz.js +1 -0
  288. package/dist/web/assets/GettingStartedDialog-EsH-8Diz.css +1 -0
  289. package/dist/web/assets/{HostedModelLearningReview-B0rbIVvn.js → HostedModelLearningReview-BDu3FlcU.js} +1 -1
  290. package/dist/web/assets/HostedModelLearningSettings-CHaTHwC8.js +1 -0
  291. package/dist/web/assets/HtmlVisual-C7GlEVfH.css +1 -0
  292. package/dist/web/assets/HtmlVisual-D9Mh7xds.js +81 -0
  293. package/dist/web/assets/LabModelVersionDetailPage-DgY7lAu5.js +1 -0
  294. package/dist/web/assets/LabSkillSidebar-BwtlThO7.js +1 -0
  295. package/dist/web/assets/LabsRoute-BV7ZJGEw.js +101 -0
  296. package/dist/web/assets/MainChatThread-pzHKd_YN.js +2 -0
  297. package/dist/web/assets/MainPane-6OlLiKKb.js +10 -0
  298. package/dist/web/assets/MainPane-Dje-hfUM.css +1 -0
  299. package/dist/web/assets/NativeSetupTerminal-3eR9D_R3.css +1 -0
  300. package/dist/web/assets/NativeSetupTerminal-CPDChcMi.js +2 -0
  301. package/dist/web/assets/NativeSkillSidebar-BEJvt5_H.js +1 -0
  302. package/dist/web/assets/NewProjectDialog-CjrjgkTN.js +1 -0
  303. package/dist/web/assets/OutputsPage-jzx93QQ3.js +1 -0
  304. package/dist/web/assets/{PageChrome-BBnWAENV.js → PageChrome-C1M13qG2.js} +1 -1
  305. package/dist/web/assets/ProjectsPage-DZrjlMp2.js +1 -0
  306. package/dist/web/assets/RightChatPanelStack-BsxJg9sy.js +1 -0
  307. package/dist/web/assets/RightSidebarHomePanel-CCVQ9LMB.js +1 -0
  308. package/dist/web/assets/ScheduledWorkPage-Cw1ja2GF.js +1 -0
  309. package/dist/web/assets/{SettingsView-Y8f98GSE.css → SettingsView-Cc0376pY.css} +1 -1
  310. package/dist/web/assets/SettingsView-CckoIki3.js +5 -0
  311. package/dist/web/assets/TasksetDraftEditorPrimitives-ByC8bDjp.js +1 -0
  312. package/dist/web/assets/TeamChatView-OprnSKLF.js +1 -0
  313. package/dist/web/assets/TerminalOverlay-d7A2F9Lx.js +16 -0
  314. package/dist/web/assets/TrainingCreationPanel-Cyn6R6I6.js +1 -0
  315. package/dist/web/assets/{TrainingDraftPanel-HznyNCJ4.js → TrainingDraftPanel-Mpb5e7t5.js} +1 -1
  316. package/dist/web/assets/TrainingRunLineage-PXzWR65d.css +1 -0
  317. package/dist/web/assets/TrainingRunLineage-VcKz7dIR.js +1 -0
  318. package/dist/web/assets/{UsageSettingsSection-C3oZ1UEP.js → UsageSettingsSection-FhYymrfc.js} +2 -2
  319. package/dist/web/assets/WorkSidebarPanel-u87uptH0.js +1 -0
  320. package/dist/web/assets/WorkspaceDiffPanel-B5rlW7bA.js +11 -0
  321. package/dist/web/assets/WorkspaceEnvironmentMenu-C8y3537a.js +35 -0
  322. package/dist/web/assets/WorkspaceFileLocation-LrEWj4UK.js +1 -0
  323. package/dist/web/assets/WorkspaceGitDialogs-NRIMXnkS.js +1 -0
  324. package/dist/web/assets/{WorkspaceMonacoEditor-DfsL1WIi.js → WorkspaceMonacoEditor-CvDGjKAL.js} +3 -3
  325. package/dist/web/assets/WorkspacePdfPreview-BZ0BbnHv.js +2 -0
  326. package/dist/web/assets/{WorkspacePresentationPreview-WuS_B45u.js → WorkspacePresentationPreview-DJrjrvT0.js} +1 -1
  327. package/dist/web/assets/app-models-CUA9XB9U.js +1 -0
  328. package/dist/web/assets/bot-6OhUEmkE.js +1 -0
  329. package/dist/web/assets/browser-sidebar-links-ZyYiYBBd.js +1 -0
  330. package/dist/web/assets/chat-resources-CI8KFVO5.js +1 -0
  331. package/dist/web/assets/{chevron-down-Bnma8EMP.js → chevron-down-jmVA1BIf.js} +1 -1
  332. package/dist/web/assets/chevron-right-BYmDQ7ti.js +1 -0
  333. package/dist/web/assets/chevron-up-CstyLXH3.js +1 -0
  334. package/dist/web/assets/{chunk-GAIDBPFY-BLuHpurI.js → chunk-ONGOAEY6-C__DQmRT.js} +5 -5
  335. package/dist/web/assets/{chunk-24N6A6SF-BUjzKvRC.js → chunk-SQBYHWZU-DumrB9SB.js} +1 -1
  336. package/dist/web/assets/{client-choice-storage-BuNdhYSV.js → client-choice-storage-BdQ_YDuk.js} +1 -1
  337. package/dist/web/assets/{cloud-upload-DOftANif.js → cloud-upload-Ck1ufAr8.js} +1 -1
  338. package/dist/web/assets/connected-app-mentions-D3wRZLwI.js +1 -0
  339. package/dist/web/assets/contracts-BLiqJxBv.js +1 -0
  340. package/dist/web/assets/copy-CPkbMfXt.js +1 -0
  341. package/dist/web/assets/{createLucideIcon-C4b2afqG.js → createLucideIcon-CXQny8HU.js} +1 -1
  342. package/dist/web/assets/{cssMode-0Hn7tCrE.js → cssMode-CYxYl_om.js} +1 -1
  343. package/dist/web/assets/external-link-CDKOLG_v.js +1 -0
  344. package/dist/web/assets/{folder-open-wJwCoIDs.js → folder-open-CEtOb_lK.js} +1 -1
  345. package/dist/web/assets/{folder-plus-DnTN6mcP.js → folder-plus-CVMYZs3e.js} +1 -1
  346. package/dist/web/assets/{git-commit-horizontal-98y7PP6G.js → git-commit-horizontal-DDyhPjxS.js} +1 -1
  347. package/dist/web/assets/{htmlMode-JO_QluNH.js → htmlMode-DoY4V_j0.js} +1 -1
  348. package/dist/web/assets/icons-D7jkCa2d.js +1 -0
  349. package/dist/web/assets/{image-C7HVlg3X.js → image-B-PjDSwU.js} +1 -1
  350. package/dist/web/assets/{index-BsPUniZy.js → index-D9WbJMSq.js} +2 -2
  351. package/dist/web/assets/index-g7UqJhnX.css +1 -0
  352. package/dist/web/assets/{info-BLWDShaz.js → info-CCnw-K3b.js} +1 -1
  353. package/dist/web/assets/intake-contracts-BW0Y0C2R.js +1 -0
  354. package/dist/web/assets/{jsonMode-BfTXJted.js → jsonMode-CeOpZdPj.js} +1 -1
  355. package/dist/web/assets/loader-circle-CPaJeTDy.js +1 -0
  356. package/dist/web/assets/{lspLanguageFeatures-68cAgnuv.js → lspLanguageFeatures-DAbgLCqZ.js} +1 -1
  357. package/dist/web/assets/{maximize-2-DUWvLap6.js → maximize-2-BZX38cpr.js} +1 -1
  358. package/dist/web/assets/message-square-CvgSecgD.js +1 -0
  359. package/dist/web/assets/{monaco.contribution-_3aU1TTb.js → monaco.contribution-CF2JDhi4.js} +2 -2
  360. package/dist/web/assets/{monaco.contribution-CWeY6ia1.js → monaco.contribution-cbDqt48m.js} +2 -2
  361. package/dist/web/assets/{monaco.contribution-h8U8HXFT.js → monaco.contribution-m2ze2EsL.js} +2 -2
  362. package/dist/web/assets/{monaco.contribution-DOiiDDen.js → monaco.contribution-yeyow_-Q.js} +2 -2
  363. package/dist/web/assets/{monitor-B6OuAu13.js → monitor-By0s4hxb.js} +1 -1
  364. package/dist/web/assets/{paperclip-DSHxP9CY.js → paperclip-BJ2QgJLa.js} +1 -1
  365. package/dist/web/assets/{pdf-RXlFwNte.js → pdf-C4x-1jjP.js} +1 -1
  366. package/dist/web/assets/pdf.worker.min-BrEVksTu.js +1 -0
  367. package/dist/web/assets/play-D_SuGDBM.js +1 -0
  368. package/dist/web/assets/plus-yw95Iaj8.js +1 -0
  369. package/dist/web/assets/{presentation-C9WnPDVr.js → presentation-I86G1Gd9.js} +1 -1
  370. package/dist/web/assets/profile-agent-labels-Duh96b8x.js +1 -0
  371. package/dist/web/assets/{python-BQXo7wMt.js → python-CqFTPj8r.js} +1 -1
  372. package/dist/web/assets/{refresh-cw-NXOER_CD.js → refresh-cw-Dga35Eay.js} +1 -1
  373. package/dist/web/assets/requests-BCbaFiqV.js +1 -0
  374. package/dist/web/assets/{reward-checks-5AOStF27.js → reward-checks-Bcq9ETCA.js} +1 -1
  375. package/dist/web/assets/{save-BxXc21N6.js → save-BLKjYtzR.js} +1 -1
  376. package/dist/web/assets/settings-D7C-Auyi.js +21 -0
  377. package/dist/web/assets/settings-lists-DMKA1lCN.js +5 -0
  378. package/dist/web/assets/square-BY5lG2Ol.js +1 -0
  379. package/dist/web/assets/square-terminal-B-n7vUex.js +1 -0
  380. package/dist/web/assets/submit-issue-command-B7Hrt2tU.js +3 -0
  381. package/dist/web/assets/{toggleHighContrast-Di1cRuQ4.js → toggleHighContrast-BhmBE5XE.js} +1 -1
  382. package/dist/web/assets/training-QrdkRQZQ.js +2 -0
  383. package/dist/web/assets/{training-model-data-CmVo80ZR.js → training-model-data-DB-jg6L_.js} +12 -12
  384. package/dist/web/assets/{tsMode-PxisJRYB.js → tsMode-BSWEII2p.js} +1 -1
  385. package/dist/web/assets/ui-theme.generated-D-mc26qt.js +144 -0
  386. package/dist/web/assets/{upload-NXasN1wU.js → upload-C4MPhQn8.js} +1 -1
  387. package/dist/web/assets/{useAccountSettings-Dqqt1vUY.js → useAccountSettings-9oqWdRLs.js} +1 -1
  388. package/dist/web/assets/useAgentInventory-isO79ui9.js +1 -0
  389. package/dist/web/assets/{useLocalAgentSchedules-Cc0M_qax.js → useLocalAgentSchedules-CZX6PxoK.js} +1 -1
  390. package/dist/web/assets/{useQuery-ByaRC9SK.js → useQuery-BD0Uexmh.js} +1 -1
  391. package/dist/web/assets/{wifi-off-aVJ3AvT_.js → wifi-off-Cloe0WuQ.js} +1 -1
  392. package/dist/web/assets/{workers-u92Boudu.js → workers-BXagz5eg.js} +1 -1
  393. package/dist/web/assets/x-Dqpel42h.js +1 -0
  394. package/dist/web/assets/{yaml-BxQUS0ew.js → yaml-sBdvVbCc.js} +1 -1
  395. package/dist/web/index.html +12 -3
  396. package/docs/command-reference.md +49 -5
  397. package/package.json +6 -2
  398. package/dist/chunks/actions-command-LOHNQUWP.js +0 -2
  399. package/dist/chunks/app-server-connected-apps-Q2VWWJNX.js +0 -2
  400. package/dist/chunks/app-server-harness-services-2PSZBT7U.js +0 -2
  401. package/dist/chunks/app-server-runtime-B6BAJA6L.js +0 -2
  402. package/dist/chunks/apps-7PIBF32Q.js +0 -2
  403. package/dist/chunks/chunk-3TYCIYW6.js +0 -17
  404. package/dist/chunks/chunk-4GZ2FPB5.js +0 -2
  405. package/dist/chunks/chunk-4M3YW3EQ.js +0 -13
  406. package/dist/chunks/chunk-4N3UF3U5.js +0 -2
  407. package/dist/chunks/chunk-4P3X2RXA.js +0 -2
  408. package/dist/chunks/chunk-4RHM4WN2.js +0 -2
  409. package/dist/chunks/chunk-6DCXAXVD.js +0 -22
  410. package/dist/chunks/chunk-AWPYTDH4.js +0 -4
  411. package/dist/chunks/chunk-BLKTUFGB.js +0 -2
  412. package/dist/chunks/chunk-BN5AVRUG.js +0 -2
  413. package/dist/chunks/chunk-D5ADDBS5.js +0 -2
  414. package/dist/chunks/chunk-DGPGOBYZ.js +0 -5
  415. package/dist/chunks/chunk-E3EKBPCB.js +0 -2
  416. package/dist/chunks/chunk-E67M5WGY.js +0 -2
  417. package/dist/chunks/chunk-EIIGTADO.js +0 -2
  418. package/dist/chunks/chunk-F5JDBDYL.js +0 -2
  419. package/dist/chunks/chunk-FWIPHEVA.js +0 -12
  420. package/dist/chunks/chunk-GLVR74PX.js +0 -2
  421. package/dist/chunks/chunk-HZLV773Y.js +0 -22
  422. package/dist/chunks/chunk-JEVA7YQL.js +0 -3
  423. package/dist/chunks/chunk-KC7I6E6W.js +0 -2
  424. package/dist/chunks/chunk-M4ZRCRJM.js +0 -10
  425. package/dist/chunks/chunk-N663LL27.js +0 -2
  426. package/dist/chunks/chunk-NR5VASQB.js +0 -2
  427. package/dist/chunks/chunk-OJSK4NSW.js +0 -151
  428. package/dist/chunks/chunk-OZ6LRNRE.js +0 -2
  429. package/dist/chunks/chunk-Q324ZA5M.js +0 -2
  430. package/dist/chunks/chunk-UBCLPZSQ.js +0 -4
  431. package/dist/chunks/chunk-UJBEWIR3.js +0 -8
  432. package/dist/chunks/chunk-V67IFV26.js +0 -86
  433. package/dist/chunks/chunk-VSUHJ46L.js +0 -18
  434. package/dist/chunks/chunk-VWJ5IYQP.js +0 -2
  435. package/dist/chunks/chunk-X3WEQL3O.js +0 -2
  436. package/dist/chunks/chunk-XK7SPL63.js +0 -2
  437. package/dist/chunks/chunk-XLULTQLZ.js +0 -12
  438. package/dist/chunks/chunk-YR5ID2SS.js +0 -2
  439. package/dist/chunks/chunk-ZBBVRYU3.js +0 -6
  440. package/dist/chunks/chunk-ZHFH2TZN.js +0 -2
  441. package/dist/chunks/chunk-ZZWAQBA2.js +0 -2
  442. package/dist/chunks/cli-WC45SI7E.js +0 -2
  443. package/dist/chunks/connected-app-executor-TZJB25UZ.js +0 -2
  444. package/dist/chunks/connected-evidence-4J3YXU4O.js +0 -2
  445. package/dist/chunks/core-commands-JGXU6B4C.js +0 -2
  446. package/dist/chunks/dataset-preparation-authoring-DFGJBMVF.js +0 -4
  447. package/dist/chunks/datasets-MNHZAZIB.js +0 -2
  448. package/dist/chunks/desktop-test-P23MHAIG.js +0 -3
  449. package/dist/chunks/dist-IIFTZWNR.js +0 -2
  450. package/dist/chunks/evaluation-coordination-6NQEH5WU.js +0 -2
  451. package/dist/chunks/experiment-improvements-M27Z5OF4.js +0 -2
  452. package/dist/chunks/experiments-IWSCFDBB.js +0 -2
  453. package/dist/chunks/experiments-signal-R3NNH7WR.js +0 -2
  454. package/dist/chunks/host-profile-evaluation-tools-EFB2YIK2.js +0 -2
  455. package/dist/chunks/host-profile-external-dataset-KSNREH3Q.js +0 -2
  456. package/dist/chunks/hosted-app-server-composition-VV545TYL.js +0 -2
  457. package/dist/chunks/hosted-experiment-improvement-NYLADI7S.js +0 -3
  458. package/dist/chunks/hosted-harness-runtime-Z54E5MD7.js +0 -2
  459. package/dist/chunks/hosted-profile-candidate-37ZFY2LH.js +0 -3
  460. package/dist/chunks/hosted-profile-compiler-SW2RWTDZ.js +0 -2
  461. package/dist/chunks/hosted-profile-evaluation-control-UQBMML6K.js +0 -2
  462. package/dist/chunks/hosted-profile-evaluation-inspection-YASS4T6L.js +0 -3
  463. package/dist/chunks/human-review-IJETDOWB.js +0 -2
  464. package/dist/chunks/learning-KVLTMRLD.js +0 -2
  465. package/dist/chunks/local-harness-improvement-runtime-KB4OP3SM.js +0 -2
  466. package/dist/chunks/local-harness-taskset-review-SUDEUGUU.js +0 -2
  467. package/dist/chunks/model-projects-AVBQDNYG.js +0 -2
  468. package/dist/chunks/opchat-KSOJEL4W.js +0 -3
  469. package/dist/chunks/organizations-DJRJWC5I.js +0 -2
  470. package/dist/chunks/project-action-payload-SQ5BSQHY.js +0 -2
  471. package/dist/chunks/project-agent-2KNJFNZI.js +0 -2
  472. package/dist/chunks/published-experiment-source-LFYHKFAO.js +0 -2
  473. package/dist/chunks/refiner-profile-service-UWI4NAZ3.js +0 -2
  474. package/dist/chunks/sandbox-command-IIGTPYN3.js +0 -2
  475. package/dist/chunks/saved-work-QA46KCME.js +0 -2
  476. package/dist/chunks/src-E7NWAN5B.js +0 -420
  477. package/dist/chunks/standalone-experiment-turn-owner-SQJ5HXDZ.js +0 -2
  478. package/dist/chunks/store-chat-resources-CGW7PDCG.js +0 -2
  479. package/dist/chunks/store-evaluation-results-V5J6L4NV.js +0 -7
  480. package/dist/chunks/store-harness-workspaces-HHMM6GNK.js +0 -2
  481. package/dist/chunks/store-human-review-V5H4QDHR.js +0 -7
  482. package/dist/chunks/store-learned-preference-migration-validation-KOCW5NOZ.js +0 -2
  483. package/dist/chunks/store-model-batch-review-KMYPYWJR.js +0 -2
  484. package/dist/chunks/store-model-configuration-UXNC4PGY.js +0 -3
  485. package/dist/chunks/store-task-inbox-LNDCZOYE.js +0 -33
  486. package/dist/chunks/store-taskset-drafts-TA6X245D.js +0 -9
  487. package/dist/chunks/taskset-packages-I7I5KBFP.js +0 -2
  488. package/dist/chunks/training-error-AYOGHHL2.js +0 -2
  489. package/dist/chunks/training-hosted-4R4QTSAN.js +0 -2
  490. package/dist/chunks/training-hosted-report-UQVK6FTG.js +0 -2
  491. package/dist/chunks/training-hosted-workers-KI767T4Y.js +0 -2
  492. package/dist/skills/openpond-desktop-harness/SKILL.md +0 -113
  493. package/dist/skills/openpond-desktop-harness/agents/openai.yaml +0 -4
  494. package/dist/web/assets/App-Df7uYQGj.css +0 -1
  495. package/dist/web/assets/App-Yy3l2sdD.js +0 -56
  496. package/dist/web/assets/AppTerminalPanel-Dqr6VS3I.js +0 -2
  497. package/dist/web/assets/AppsView-27Fl_-49.js +0 -1
  498. package/dist/web/assets/BrowserSidebar-bnI3sSZO.js +0 -1
  499. package/dist/web/assets/ChatTimelineEntry-IKzZsHoI.js +0 -1
  500. package/dist/web/assets/CommandMenu-CBY2AJxV.js +0 -1
  501. package/dist/web/assets/CommunityView-CFKM7FTY.js +0 -1
  502. package/dist/web/assets/ComposerAttachments-BdjBddKf.js +0 -2
  503. package/dist/web/assets/ComposerCreateImproveStrip-ViJ5E0We.js +0 -1
  504. package/dist/web/assets/ConversationImportsSettings-xLl-7G9R.js +0 -1
  505. package/dist/web/assets/FilePagePreview-CTHuPzJt.js +0 -2
  506. package/dist/web/assets/GetStartedView-DvV_RMgM.js +0 -1
  507. package/dist/web/assets/GettingStartedDialog-B1jFmfgd.js +0 -1
  508. package/dist/web/assets/GettingStartedDialog-C73Bdcz2.css +0 -1
  509. package/dist/web/assets/HostedModelLearningSettings-DzAiutjq.js +0 -1
  510. package/dist/web/assets/LabModelVersionDetailPage-CF8FkRUY.js +0 -1
  511. package/dist/web/assets/LabSkillSidebar-gjbl9Nlv.js +0 -1
  512. package/dist/web/assets/LabsRoute-DOnw39du.js +0 -101
  513. package/dist/web/assets/MainChatThread-BUKup-JB.js +0 -2
  514. package/dist/web/assets/MainPane-BpE7AKXu.js +0 -92
  515. package/dist/web/assets/MainPane-CuBUBA9F.css +0 -1
  516. package/dist/web/assets/NativeSkillSidebar-Br5Lk6iU.js +0 -1
  517. package/dist/web/assets/NewProjectDialog-DyuKPOvF.js +0 -1
  518. package/dist/web/assets/OutputsPage-Dl63CVrw.js +0 -1
  519. package/dist/web/assets/ProjectsPage-BNF1TiyR.js +0 -1
  520. package/dist/web/assets/RightChatPanelStack-CxVAAbp-.js +0 -1
  521. package/dist/web/assets/RightSidebarHomePanel-D46ktZg-.js +0 -1
  522. package/dist/web/assets/ScheduledWorkPage-Cp0Hf-hs.js +0 -1
  523. package/dist/web/assets/SettingsView-BT57Q5Wx.js +0 -5
  524. package/dist/web/assets/TeamChatView-BmxTJ9E5.js +0 -1
  525. package/dist/web/assets/TerminalOverlay-D-Yq8av_.js +0 -16
  526. package/dist/web/assets/TrainingCreationPanel-CwfNPj_G.js +0 -1
  527. package/dist/web/assets/TrainingMetricWorkbench-BmzHLwIP.js +0 -1
  528. package/dist/web/assets/WorkSidebarPanel-myTA9tsh.js +0 -1
  529. package/dist/web/assets/WorkspaceDiffPanel-D0dzFgzW.js +0 -11
  530. package/dist/web/assets/WorkspaceEnvironmentMenu-AUzME1eX.js +0 -35
  531. package/dist/web/assets/WorkspaceFileLocation-Ai8Tz2Mz.js +0 -1
  532. package/dist/web/assets/WorkspaceGitDialogs-D-UCCckC.js +0 -1
  533. package/dist/web/assets/app-models-BviS9b7U.js +0 -1
  534. package/dist/web/assets/browser-sidebar-links-ujSvTf5h.js +0 -1
  535. package/dist/web/assets/chat-resources-CItQ4mZD.js +0 -1
  536. package/dist/web/assets/chevron-right-Cxv_xBz5.js +0 -1
  537. package/dist/web/assets/contracts-BHTOD1nd.js +0 -1
  538. package/dist/web/assets/git-dialogs-C631EFyO.css +0 -1
  539. package/dist/web/assets/icons-kaq6k88m.js +0 -1
  540. package/dist/web/assets/index-DUMDOdB2.css +0 -1
  541. package/dist/web/assets/play-BPPQoqMl.js +0 -1
  542. package/dist/web/assets/plus-D18vYzHF.js +0 -1
  543. package/dist/web/assets/settings-BKmRueaw.js +0 -21
  544. package/dist/web/assets/settings-lists-DMNPkGYk.js +0 -5
  545. package/dist/web/assets/square-Da8RuqW4.js +0 -1
  546. package/dist/web/assets/training-managed-adapter-81RrdT1k.js +0 -1
  547. package/dist/web/assets/ui-theme.generated-R0MY_Jy0.js +0 -136
  548. package/dist/web/assets/useAgentInventory-BV4CUWzJ.js +0 -1
  549. /package/dist/chunks/{chunk-GLDYJM7O.js → chunk-T4QXKU5Y.js} +0 -0
@@ -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";function b(n){return n!==null&&typeof n=="object"&&!Array.isArray(n)?n:{}}c(b,"record");function _(n){return typeof n=="number"&&Number.isFinite(n)?n:null}c(_,"finite");function d(n){let t=_(n);return t!==null&&t>=0?t:null}c(d,"nonnegative");function l(n){let t=n.filter(u=>u!==null).sort((u,a)=>u-a),r=t.length?t.reduce((u,a)=>u+a,0):null,o=c(u=>t.length?t[Math.max(0,Math.ceil(t.length*u)-1)]:null,"quantile");return{observations:t.length,missing:n.length-t.length,total:r,mean:r===null?null:r/t.length,min:t[0]??null,max:t.at(-1)??null,p50:o(.5),p95:o(.95)}}c(l,"statistics");function U(n,t){return Object.fromEntries(t.map(r=>[r,l(n.map(o=>d(o[r])))]))}c(U,"timingStatistics");function J(n,t){return Object.fromEntries(t.map(r=>{let{total:o,...u}=l(n.map(a=>d(a[r])));return[r,u]}))}c(J,"distributionStatistics");function W(n){if(!n.length)return null;let t=n.reduce((r,o)=>r+o,0)/n.length;return Math.sqrt(n.reduce((r,o)=>r+(o-t)**2,0)/n.length)}c(W,"populationStd");function v(n){return typeof n=="string"&&/^[a-zA-Z0-9_.:-]{1,200}$/.test(n)?n:null}c(v,"code");function z(n){let t=new Map;for(let r of n)r!==null&&t.set(r,(t.get(r)??0)+1);return Object.fromEntries([...t].sort(([r],[o])=>r.localeCompare(o)))}c(z,"counts");var X=["commandTotalSeconds","requestPreparationSeconds","vllmRequestSeconds","vllmQueueSeconds","vllmPrefillSeconds","vllmDecodeSeconds","vllmTimeToFirstTokenSeconds","vllmInferenceSeconds","tokenizationSeconds","workerQueueSeconds","workerBatchWaitSeconds"],Y=["inputPreparationSeconds","parameterHashSeconds","residentLoadSeconds","oldAndReferenceForwardSeconds","optimizerForwardBackwardSeconds","postUpdateForwardSeconds","checkpointSaveSeconds","adapterSerializationSeconds","adapterCompositionSeconds","serializedAdapterVerificationSeconds","optimizerStateSerializationSeconds","deferredDiagnosticsSerializationSeconds","totalTrainStepSeconds"];function oe(n){let{job:t,outputs:r}=n,o=n.servingEvidence;if(o&&(o.jobId!==t.id||o.teamId!==t.teamId))throw new Error("Hosted serving report evidence belongs to a different job or workspace.");if(o&&Object.values(t.rolloutProgress).some(e=>e!==0))throw new Error("Hosted serving report cannot contain training progress.");let u=o?.cleanupComplete===null||!o?r.receipt?.cleanupComplete??null:o.cleanupComplete&&r.receipt?.cleanupComplete!==!1,a=n.recoverySourceJob,K=a?.state==="succeeded"&&a.phase==="completed"&&a.rolloutProgress.groupsCompleted>0&&a.rolloutProgress.groupsCompleted<a.rolloutProgress.groupsTarget&&a.rolloutProgress.groupsTarget===t.rolloutProgress.groupsTarget;if(t.recovery&&(!a||a.id!==t.recovery.sourceJobId||a.teamId!==t.teamId||!a.completedAt||!["failed","cancelled"].includes(a.state)&&!K||a.rolloutProgress.groupsCompleted!==t.recovery.completedGroups||a.rolloutProgress.optimizerUpdatesApplied+a.rolloutProgress.optimizerUpdatesSkipped!==t.recovery.completedGroups))throw new Error("Hosted recovery report requires the unchanged terminal source run's progress.");let w=t.recovery&&a?a.rolloutProgress:{groupsCompleted:0,optimizerUpdatesApplied:0,optimizerUpdatesSkipped:0},S={groupsCompleted:t.rolloutProgress.groupsCompleted-w.groupsCompleted,groupsTarget:t.rolloutProgress.groupsTarget-w.groupsCompleted,optimizerUpdatesApplied:t.rolloutProgress.optimizerUpdatesApplied-w.optimizerUpdatesApplied,optimizerUpdatesSkipped:t.rolloutProgress.optimizerUpdatesSkipped-w.optimizerUpdatesSkipped};if(Object.values(S).some(e=>e<0))throw new Error("Hosted recovery source progress exceeds the recovered run's progress.");if(n.events.length>1e5)throw new Error("Hosted report exceeds 100,000 events.");if(n.events.some(e=>e.jobId!==t.id)||r.outputs.some(e=>e.jobId!==t.id)||r.receipt&&(r.receipt.jobId!==t.id||r.receipt.teamId!==t.teamId))throw new Error("Hosted report evidence belongs to a different job or workspace.");let C=new Map;for(let e of n.events){let i=C.get(e.id);if(i&&i.sequence===e.sequence&&JSON.stringify(i)!==JSON.stringify(e))throw new Error("Hosted report contains conflicting event snapshots.");(!i||e.sequence>=i.sequence)&&C.set(e.id,e)}let f=[...C.values()],g=f.filter(e=>e.data.metricKind==="rollout_trajectory"),m=g.filter(e=>e.data.rewardEligible===!0),T=g.filter(e=>e.data.rewardEligible===!1),y=m.filter(e=>_(e.data.reward)!==null),P=f.filter(e=>e.data.metricKind==="inference_command"),h=f.filter(e=>e.data.metricKind==="policy_optimization"),R=f.filter(e=>e.type==="optimizer_skipped_no_signal"),D=f.filter(e=>e.data.metricKind==="gpu_allocation"),V=f.filter(e=>e.data.metricKind==="physical_gpu_worker"),N=[],s=c((e,i)=>N.push({code:e,message:i}),"add");t.recovery&&s("checkpoint_recovery_reuses_progress","Cumulative progress includes the source run; throughput and per-update cost use only this execution's new updates.");let H=n.versionBeforeRead===t.version;H||s("job_changed_during_read","The job changed during these reads; rerun for a stable snapshot."),!g.length&&!o&&s("no_recorded_trajectories","No trajectory evidence is present; this report cannot assess model quality or learning."),T.length&&s("ineligible_trajectories","Infrastructure-ineligible trajectories are excluded from reward statistics."),m.length!==y.length&&s("eligible_rewards_pending","Some eligible trajectories have no finite grade yet."),R.length&&s("no_signal_groups","Recorded groups produced zero standardized advantage and skipped optimization; inspect reward/task quality before increasing the budget.");let O=t.executionMode==="qualification";O&&s("qualification_only","This run collects original-model evidence; optimizer updates were not requested."),o&&s("serving_only","This run serves an existing checkpoint; optimizer work and model publication were not requested."),o?.executionMode==="frozen_evaluation"&&t.terminalReason==="checkpoint_evaluation_complete"?s("checkpoint_evaluation_complete","The frozen evaluation finished and entered its ordinary cancellation/cleanup lifecycle."):t.terminalReason&&s("terminal_reason_present","The job has a terminal reason; inspect official status/logs for its details."),!r.receipt&&o?.cleanupAttestation?s("public_execution_receipt_unavailable","Native custody is reported from the owner attestation; no public final execution receipt or reconciled invoice is available."):r.receipt||s("execution_receipt_unavailable","No final execution receipt is available; cleanup and reconciled execution evidence remain unverified here."),u===!1&&s("cleanup_incomplete","Recorded cleanup evidence does not attest completed cleanup.");let x=new Map;for(let e of m){let i=v(e.data.rolloutGroupId);if(!i)continue;let p=x.get(i)??[];p.push(e),x.set(i,p)}let L=[...x].map(([e,i])=>{let p=i.map(A=>_(A.data.reward)).filter(A=>A!==null),G=W(p);return{groupId:e,recordedEligible:i.length,recordedScored:p.length,rewardMean:l(p).mean,rewardStd:G,allRecordedRewardsEqual:p.length>=2&&G===0,optimizerSkippedNoSignal:R.some(A=>A.data.rolloutGroupId===e)}}),j=new Set(y.flatMap(e=>Object.entries(b(e.data.rewardComponents)).filter(([i,p])=>v(i)&&_(p)!==null).map(([i])=>i))),Q=Object.fromEntries([...j].sort().map(e=>[e,l(y.map(i=>_(b(i.data.rewardComponents)[e])))]));y.length&&![...j].some(e=>e!=="reward")?s("per_grader_reward_breakdown_unavailable","Eligible aggregate rewards are recorded, but no separate finite numeric component fields are present. Per-grader coverage and scores are unavailable; missing breakdowns are not zero grades."):j.size&&s("reward_component_binding_unverified","Reward components summarize finite numeric event fields only. The reward field is aggregate; other fields are not established as individual grader scores without matching the frozen grader binding.");let E=P.map(e=>b(e.data.timings)),Z=h.map(e=>b(e.data.timings));P.length&&E.some(e=>d(e.vllmRequestSeconds)===null)&&s("inference_timing_incomplete","Some inference commands lack request timing; missing measurements are not zero durations."),h.length<S.optimizerUpdatesApplied&&s("optimizer_event_coverage_incomplete","Fewer optimizer events were returned than applied updates; report evidence may be incomplete."),R.length<S.optimizerUpdatesSkipped&&s("no_signal_event_coverage_incomplete","Fewer no-signal events were returned than skipped updates; group details may be incomplete.");let B=Date.parse(t.completedAt??n.generatedAt);if(!Number.isFinite(B)||!Number.isFinite(Date.parse(n.generatedAt)))throw new Error("Hosted report timestamp is invalid.");let k=Math.max(0,(B-Date.parse(t.createdAt))/1e3),I=c(e=>k>0?e*3600/k:null,"hourlyRate"),q=l(g.map(e=>d(e.data.outputTokens))),M=new Map;for(let e of D.sort((i,p)=>i.sequence-p.sequence)){let i=v(e.data.allocationId);i&&M.set(i,e)}let F=new Map;for(let e of V.sort((i,p)=>i.sequence-p.sequence)){let i=v(e.data.physicalWorkerId);i&&F.set(i,e)}let $=t.completedAt!==null;return{schemaVersion:"openpond.trainingRunReport.v1",generatedAt:n.generatedAt,job:{id:t.id,teamId:t.teamId,submissionHash:t.submissionHash,kind:t.kind,executionMode:o?.executionMode??(O?"qualification":"training"),state:t.state,phase:t.phase,version:t.version,terminalReasonPresent:t.terminalReason!==null,createdAt:t.createdAt,completedAt:t.completedAt,...t.recovery?{recovery:t.recovery}:{},...o?{serving:o.source}:{}},evidence:{jobRevisionStableDuringRead:H,versionBeforeRead:n.versionBeforeRead,versionAfterRead:t.version,readModel:"independent_authenticated_reads_not_an_atomic_snapshot",returnedEvents:n.events.length,uniqueEvents:f.length,scope:o?"public_events_and_authenticated_native_serving_metadata":"returned_public_event_snapshot",terminal:$,...o?{nativeServingJobVersion:o.nativeJobVersion}:{},recoverySourceJobVersion:t.recovery?a.version:null,completeness:"Only recorded events are summarized; absent instrumentation is not proof of no work."},progress:{...t.rolloutProgress,currentExecution:S,inherited:{groupsCompleted:w.groupsCompleted,optimizerUpdatesApplied:w.optimizerUpdatesApplied,optimizerUpdatesSkipped:w.optimizerUpdatesSkipped}},wall:{elapsedSeconds:k,inferenceCommands:P.length,optimizerEvents:h.length},throughput:{recordedTrajectoriesPerWallHour:I(g.length),recordedEligibleTrajectoriesPerWallHour:I(m.length),appliedUpdatesPerWallHour:I(S.optimizerUpdatesApplied),recordedOutputTokensPerWallSecond:k>0&&q.total!==null?q.total/k:null,note:"Execution throughput includes startup, waits and cleanup, and excludes inherited updates; this is not engine decode tokens/second."},trajectories:{recorded:g.length,eligible:m.length,ineligible:T.length,eligibilityUnknown:g.length-m.length-T.length,scoredEligible:y.length,pendingEligibleGrades:m.length-y.length,inputTokens:l(g.map(e=>d(e.data.inputTokens))),outputTokens:q,eligibleRewards:l(m.map(e=>_(e.data.reward))),rewardComponents:Q,terminalClasses:z(g.map(e=>v(e.data.terminalClass))),ineligibleTerminalClasses:z(T.map(e=>v(e.data.terminalClass))),groups:L,groupCoverageNote:"Within-group statistics cover recorded eligible scores only; equal partial scores do not establish a completed no-signal group."},failures:{commandErrorCodes:z(f.map(e=>v(e.data.errorCode))),outboxErrorCodes:z(f.map(e=>v(e.data.lastErrorCode))),providerFailureCodes:z([...F.values()].map(e=>v(e.data.failureCode)))},learning:{noSignalGroupsRecorded:R.length,samplingLogprobMae:l(h.map(e=>d(e.data.samplingLogprobMae))),entropy:l(h.map(e=>d(e.data.entropy))),gradientNorm:l(h.map(e=>d(e.data.gradientNorm))),behaviorPolicyKlPreUpdate:l(h.map(e=>d(e.data.behaviorPolicyKlPreUpdate))),baseOrReferenceKl:l(h.map(e=>d(e.data.kl)))},timings:{environmentSeconds:U(g.map(e=>b(e.data.executionTiming)),["initializationSeconds","policySeconds","environmentSeconds","cleanupSeconds","totalRolloutSeconds"]),toolCalls:l(g.map(e=>d(b(e.data.executionTiming).toolCalls))),toolFailures:l(g.map(e=>d(b(e.data.executionTiming).toolFailures))),inferenceSeconds:U(E,X),optimizerSeconds:U(Z,Y),cachedPromptTokens:l(E.map(e=>d(e.vllmCachedPromptTokens))),note:"Totals are sums of recorded work. Nested timings and concurrent requests overlap; do not sum these into wall time or infer idle time from them."},gpuActivity:{inference:J(E,["gpuActivitySampleCount","gpuUtilizationMeanPercent","gpuUtilizationMaxPercent","gpuMemoryBusUtilizationMeanPercent","gpuActivityWindowSeconds","gpuActivityObservedSpanSeconds","gpuInterRequestGapSeconds","gpuInterRequestSampleCount","gpuInterRequestUtilizationMeanPercent"]),optimizer:J(h.map(e=>b(e.data.hardware)),["gpuActivitySampleCount","gpuUtilizationMeanPercent","gpuUtilizationMaxPercent","gpuMemoryBusUtilizationMeanPercent","gpuActivityWindowSeconds","gpuActivityObservedSpanSeconds"]),note:"Device-wide one-second samples can include other co-resident work. Between-request activity is worker-wide, not attributed tool or idle time. Per-window statistics are not time-weighted whole-job utilization; short windows may have no samples."},costs:{accountingBasis:"job_accrued_meter_not_final_provider_invoice",jobAccruedSpendUsd:t.accruedSpendUsd,executionReceiptSpendUsd:r.receipt?.spendUsd??null,perRecordedEligibleTrajectoryUsd:m.length?t.accruedSpendUsd/m.length:null,perAppliedUpdateUsd:S.optimizerUpdatesApplied?t.accruedSpendUsd/S.optimizerUpdatesApplied:null,allocationGpuUsd:l([...M.values()].map(e=>d(e.data.accruedGpuUsd))),allocationGpuSeconds:l([...M.values()].map(e=>d(e.data.accruedGpuSeconds))),physicalInvoiceTotalUsd:null,note:"Job, receipt and allocation amounts are overlapping accounting views, not additive charges. Physical startup/idle/storage and provider settlement are not established by this report."},cleanup:{executionReceiptAvailable:r.receipt!==null,complete:u,...o?{nativeAttestationAvailable:o.cleanupAttestation!==null,nativeCustody:o.cleanupAttestation}:{}},findings:N}}c(oe,"buildHostedTrainingReport");export{oe as buildHostedTrainingReport};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{A as e}from"./chunk-PF56N7ZY.js";import{a as g}from"./chunk-FTQLQJQV.js";var m=e.object({baseProfileId:e.string().trim().min(1).max(191)}).strict(),h=e.object({poolId:e.string().trim().min(1).max(191),reason:e.string().trim().min(3).max(512)}).strict(),l=e.object({id:e.string().min(1),baseProfileId:e.string().min(1),provider:e.string().min(1),state:e.string().min(1),workersMin:e.number().int().nonnegative(),workersMax:e.number().int().nonnegative()}).passthrough();async function b(r){let d="/v1/model-adapters/serving-pools",n,t,s;if(r.action==="hosted-serving-pools"){if(r.target)throw new Error("hosted-serving-pools does not accept an identifier.")}else if(r.action==="hosted-base-serving-prepare"){if(!r.confirmed)throw new Error("Preparing serving capacity requires --yes. Inference is a separate operation.");let o=m.parse(await r.readInput());s=o.baseProfileId,n=JSON.stringify(o)}else if(r.action==="hosted-serving-pool-retire"){if(!r.confirmed)throw new Error("Retiring serving capacity requires --yes.");let{poolId:o,reason:f}=h.parse(await r.readInput());t=o,d+=`/${encodeURIComponent(o)}/retire`,n=JSON.stringify({reason:f})}else throw new Error(`Unknown serving operation: ${r.action}`);let i=new Headers(r.headers);i.set("accept","application/json"),n&&i.set("content-type","application/json");let a=await r.request(new URL(d,r.baseUrl),{method:n?"POST":"GET",headers:i,body:n});if(!a.ok)throw new Error(`Hosted serving request failed (${a.status}). Inspect hosted-serving-pools before retrying a capacity change.`);let p=await a.json();if(!n)return e.object({pools:e.array(l)}).parse(p);let c=e.object({pool:l}).parse(p);if(t&&c.pool.id!==t||s&&c.pool.baseProfileId!==s)throw new Error("Serving response identity mismatch. Inspect hosted-serving-pools before retrying.");return c}g(b,"runHostedServingCommand");export{b as runHostedServingCommand};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a}from"./chunk-SO42ZB5K.js";import"./chunk-PF56N7ZY.js";import"./chunk-FTQLQJQV.js";export{a as parseHostedServingReportEvidence};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{A as r}from"./chunk-PF56N7ZY.js";import{a as l}from"./chunk-FTQLQJQV.js";var c=r.object({workerId:r.string().min(1).max(191),expectedControlRevision:r.string().regex(/^[a-f0-9]{64}$/),idempotencyKey:r.string().min(1).max(191),jobId:r.string().min(1).max(191).optional(),maximumStorageUsd:r.number().positive().max(10).optional(),warmIdleDeadlineAt:r.iso.datetime({offset:!0}).optional(),maximumIdleUsd:r.number().positive().max(10).optional(),sessionId:r.string().min(1).max(191).optional(),sessionDeadlineAt:r.iso.datetime({offset:!0}).optional(),maximumSessionUsd:r.number().positive().max(30).optional(),idleGraceSeconds:r.number().int().min(120).max(28800).optional(),preservePhysicalUntilDeadline:r.boolean().optional()}).strict().refine(e=>e.preservePhysicalUntilDeadline===!0||e.idleGraceSeconds===void 0||e.idleGraceSeconds<=10800,{path:["idleGraceSeconds"],message:"Ordinary session idle grace cannot exceed three hours."});async function u(e){let t="/v1/managed-rl/physical-workers",s;if(e.action==="hosted-workers"){if(e.target)throw new Error("hosted-workers does not accept an identifier.")}else if(e.action==="hosted-worker"){if(!e.target)throw new Error("hosted-worker requires a physical worker ID.");t+=`/${encodeURIComponent(e.target)}`}else{let o=e.action.replace("hosted-worker-","");if(!["stop","resume","retire","warm-idle","retain-session"].includes(o))throw new Error(`Unknown physical worker action: ${o}`);if(!e.confirmed)throw new Error("Worker lifecycle changes require --yes.");let{workerId:m,...n}=c.parse(await e.readInput());if(n.preservePhysicalUntilDeadline!==void 0&&o!=="retain-session")throw new Error("Physical preservation is available only on retain-session with a fixed deadline and budget.");if(o==="stop"&&!n.maximumStorageUsd)throw new Error("Stopping requires maximumStorageUsd for bounded retained storage.");if(o==="resume"&&!n.jobId)throw new Error("Resuming requires an admitted queued jobId with its own compute budget.");if(o==="warm-idle"&&(!n.warmIdleDeadlineAt||!n.maximumIdleUsd))throw new Error("Warm idle requires warmIdleDeadlineAt and maximumIdleUsd; the server caps retention at three hours.");if(o==="retain-session"&&(!n.sessionId||!n.sessionDeadlineAt||!n.maximumSessionUsd||!n.idleGraceSeconds))throw new Error("Session retention requires sessionId, sessionDeadlineAt, maximumSessionUsd, and idleGraceSeconds; its deadline and active-plus-idle execution budget cannot be renewed; reserve cleanup costs separately.");t+=`/${encodeURIComponent(m)}/control`,s=JSON.stringify({...n,action:o})}let a=new Headers(e.headers);a.set("accept","application/json"),s&&a.set("content-type","application/json");let d=await e.request(new URL(t,e.baseUrl),{method:s?"POST":"GET",headers:a,body:s}),i=await d.json();if(!d.ok){let o=i&&typeof i=="object"&&"error"in i&&typeof i.error=="string"?i.error:"worker_request_failed";throw new Error(`Physical worker request failed (${d.status}): ${o}. Read hosted-worker before retrying a lifecycle mutation.`)}return i}l(u,"runHostedWorkerCommand");export{u as runHostedWorkerCommand};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{c as a,f as d,g as b}from"./chunk-3M53YXEI.js";import"./chunk-N42HT64M.js";import{a as g}from"./chunk-NG2L6D7G.js";import"./chunk-ABF3W2MO.js";import"./chunk-RV7PUSI2.js";import"./chunk-KCV5VN4X.js";import"./chunk-OE22TAXP.js";import{O as v}from"./chunk-J572ANHX.js";import"./chunk-PBZCXPPC.js";import"./chunk-NJLULBTM.js";import"./chunk-VVNV4NNW.js";import"./chunk-PF56N7ZY.js";import{a as u}from"./chunk-FTQLQJQV.js";import{randomUUID as x}from"node:crypto";import{createInterface as h}from"node:readline/promises";function $(i){let e=a(i,"gpuType"),s=a(i,"availabilityId"),p=a(i,"gpuPlacementObjective");if(e||s){if(!e||!s||p)throw new Error("Choose --gpu-type with --availability-id, or --gpu-placement-objective.");return g.parse({mode:"manual",gpuType:e,availabilityId:s})}return p?g.parse({mode:"automatic",objective:p}):void 0}u($,"trainingGpuChoice");async function O(i){let{options:e,client:s,teamId:p}=i,f=a(e,"batchId");if(!f)throw new Error("training start --team-id requires --batch-id <sealed-approved-batch-id>.");let y=process.stdin.isTTY&&process.stdout.isTTY&&!d(e.json),m=d(e.yes);if(!m&&!y)throw new Error("Noninteractive training start requires --yes and an explicitly approved --max-spend or saved budget.");for(let r of["manifest","comparisonSeriesEntry","retentionDays","exportApproved"])if(e[r]!==void 0)throw new Error(`Hosted saved-Model starts use the retained configuration; ${r} is not a run override.`);let[{project:o},w]=await Promise.all([i.models.get(i.modelId),i.learning.get("batch",f)]),c=$(e)??o.trainingSetup.managedGpuSelection,t=b(e.maxSpend,"max-spend")??o.trainingSetup.preferredMaximumSpendUsd;if(y&&!m){let r=h({input:process.stdin,output:process.stdout});try{let l=await r.question(`Maximum budget in USD${t===null?"":` [${t}]`}: `);l.trim()&&(t=Number(l.trim()))}finally{r.close()}}if(t===null||!Number.isFinite(t)||t<=0||t>1e6)throw new Error("Choose an explicit positive --max-spend or save a positive Model budget before starting.");let n=await s.prepareRun({schemaVersion:"openpond.trainingPreparationRequest.v1",teamId:p,operationId:a(e,"operationId")||x(),projectId:a(e,"projectId")||null,configuration:{id:o.id,expectedRevision:o.revision,expectedEtag:o.etag},batch:v(w),name:a(e,"name")||o.name,maximumSpendUsd:t,...c?{gpuSelection:c}:{}});if(d(e.json)||console.log(`Retained preparation: ${n.plan.id}`),d(e.json)||(console.log(`Prepared run: ${n.plan.id}; approved maximum $${t}.`),console.log(`Model: ${o.name}@${n.plan.source.modelProject.revision}; batch: ${n.plan.request.batch.id}@${n.plan.request.batch.revision}.`),console.log(`GPU choice: ${c?.mode==="manual"?`${c.gpuType} / ${c.availabilityId}`:`Automatic (${c?.objective??o.trainingSetup.managedGpuPlacementObjective})`}.`)),!m){let r=h({input:process.stdin,output:process.stdout});try{let l=await r.question(`Start this exact prepared run with a $${t} maximum? [y/N] `);if(!["y","yes"].includes(l.trim().toLowerCase()))throw new Error(`Training was not started. Preparation ${n.plan.id} is retained for review or cancellation.`)}finally{r.close()}}return{preparation:await s.startPreparation(n.plan.id,{teamId:p,planHash:n.plan.contentHash,expectedRevision:n.revision})}}u(O,"startHostedModel");export{O as startHostedModel,$ as trainingGpuChoice};
@@ -0,0 +1,3 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{c as l,f as i}from"./chunk-3M53YXEI.js";import{a as p}from"./chunk-FTQLQJQV.js";import{readFile as d,stat as u,writeFile as m}from"node:fs/promises";import c from"node:path";async function h(f,a,r){let o=i(r.apply);if(o&&i(r.dryRun))throw new Error("Choose --apply or --dry-run.");let s=await u(a);if(!s.isFile()||s.size>64*1024*1024)throw new Error("Provide a project preparation JSON file of at most 64 MiB.");let g=JSON.parse(await d(a,"utf8")),e=await f.prepareLocalModelProject(g,o),t=l(r,"output");if(t&&await m(c.resolve(t),`${JSON.stringify(e,null,2)}
3
+ `,{flag:"wx",mode:384}),i(r.json))console.log(JSON.stringify(e,null,2));else{let n=e;console.log(o?`Saved Model Project ${n.project?.id} from preparation ${n.preparationHash}.`:`Prepared project receipt ${n.contentHash}. No project or resources were saved. Training readiness and execution remain separate.`),t?console.log(`Wrote ${c.resolve(t)}.`):o||console.log(JSON.stringify(e,null,2))}}p(h,"runProjectPreparation");export{h as runProjectPreparation};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a,b,c,d,e}from"./chunk-CGAL7IHZ.js";import"./chunk-ZBBVRYU3.js";import"./chunk-BFKYRQMA.js";import"./chunk-SGK4GR44.js";import"./chunk-5ZBLCWEJ.js";import"./chunk-YR5ID2SS.js";import"./chunk-6FA3GG5B.js";import"./chunk-KK626T3Z.js";import"./chunk-6DCXAXVD.js";import"./chunk-OE22TAXP.js";import"./chunk-UGOK7VTC.js";import"./chunk-VVNV4NNW.js";import"./chunk-PF56N7ZY.js";import"./chunk-FTQLQJQV.js";export{a as createHostedWebSearchExecutor,b as createWebSearchExecutorFromEnv,d as normalizeSearchApiUrl,e as normalizeWebSearchRequest,c as resolveWebSearchEndpoint};
2
+ import{a,b,c,d,e}from"./chunk-J7ZTPXRQ.js";import"./chunk-WWQNMC7C.js";import"./chunk-4N4EH3RJ.js";import"./chunk-HFJUXKT5.js";import"./chunk-5ZBLCWEJ.js";import"./chunk-JCLTFDVW.js";import"./chunk-6FA3GG5B.js";import"./chunk-2EPR4HLF.js";import"./chunk-BKEDG3A4.js";import"./chunk-OE22TAXP.js";import"./chunk-UGOK7VTC.js";import"./chunk-VVNV4NNW.js";import"./chunk-PF56N7ZY.js";import"./chunk-FTQLQJQV.js";export{a as createHostedWebSearchExecutor,b as createWebSearchExecutorFromEnv,d as normalizeSearchApiUrl,e as normalizeWebSearchRequest,c as resolveWebSearchEndpoint};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as F,b as G,c as H,d as I,e as J,f as K,g as L,h as M,i as N,j as O,k as P,l as Q,m as R,n as S,o as T}from"./chunk-ROE24PN5.js";import{A,B,C,D,E,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-YU3C6U5V.js";import"./chunk-FJ3HMHT6.js";import"./chunk-FTQLQJQV.js";export{a as MACOS_GIT_MISSING_DEVELOPER_TOOLS_ERROR,C as appWorkspacePaths,B as assertSafeBranchName,d as checkWorkspaceGitAvailability,S as checkoutBranch,T as checkoutBranchAtPath,G as clearWorkspaceDiffCacheForTests,D as cloneWorkspace,Q as createAndCheckoutBranch,R as createAndCheckoutBranchAtPath,A as expectedRemoteUrl,t as isGeneratedWorkspacePath,i as isGitRepo,c as isMacOSGitDeveloperToolsMissing,u as isVisibleGitWorkspaceFile,r as isWorkspaceDirectory,E as lastFetchAt,z as listPlainWorkspaceFiles,J as loadGitCommitDiffAtPath,H as loadWorkspaceDiff,I as loadWorkspaceDiffAtPath,K as loadWorkspaceFile,N as loadWorkspaceFileAtPath,L as loadWorkspaceImageFile,M as loadWorkspaceImageFileAtPath,O as loadWorkspaceState,P as loadWorkspaceStateAtPath,n as localVideoContentType,F as mapWorkspaceDiffEntriesWithConcurrency,s as normalizeWorkspaceFilePath,w as parseBranchStatusLine,x as parseNumstat,v as parseStatusLine,h as pathExists,p as readLocalImageFile,q as readLocalVideoFile,l as readWorkspaceDocumentPreview,k as readWorkspaceFile,o as readWorkspaceImageFile,g as redactRemoteUrl,b as runWorkspaceCommand,f as sourceFromRemote,e as startMacOSCommandLineToolsInstall,j as truncatePatch,y as uniqueSortedPaths,m as workspaceImageContentType};
2
+ import{a as F,b as G,c as H,d as I,e as J,f as K,g as L,h as M,i as N,j as O,k as P,l as Q,m as R,n as S,o as T}from"./chunk-DLANLLKH.js";import{A,B,C,D,E,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-YU3C6U5V.js";import"./chunk-LKKMLBOH.js";import"./chunk-FTQLQJQV.js";export{a as MACOS_GIT_MISSING_DEVELOPER_TOOLS_ERROR,C as appWorkspacePaths,B as assertSafeBranchName,d as checkWorkspaceGitAvailability,S as checkoutBranch,T as checkoutBranchAtPath,G as clearWorkspaceDiffCacheForTests,D as cloneWorkspace,Q as createAndCheckoutBranch,R as createAndCheckoutBranchAtPath,A as expectedRemoteUrl,t as isGeneratedWorkspacePath,i as isGitRepo,c as isMacOSGitDeveloperToolsMissing,u as isVisibleGitWorkspaceFile,r as isWorkspaceDirectory,E as lastFetchAt,z as listPlainWorkspaceFiles,J as loadGitCommitDiffAtPath,H as loadWorkspaceDiff,I as loadWorkspaceDiffAtPath,K as loadWorkspaceFile,N as loadWorkspaceFileAtPath,L as loadWorkspaceImageFile,M as loadWorkspaceImageFileAtPath,O as loadWorkspaceState,P as loadWorkspaceStateAtPath,n as localVideoContentType,F as mapWorkspaceDiffEntriesWithConcurrency,s as normalizeWorkspaceFilePath,w as parseBranchStatusLine,x as parseNumstat,v as parseStatusLine,h as pathExists,p as readLocalImageFile,q as readLocalVideoFile,l as readWorkspaceDocumentPreview,k as readWorkspaceFile,o as readWorkspaceImageFile,g as redactRemoteUrl,b as runWorkspaceCommand,f as sourceFromRemote,e as startMacOSCommandLineToolsInstall,j as truncatePatch,y as uniqueSortedPaths,m as workspaceImageContentType};
package/dist/cli.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
3
- import{b as d}from"./chunks/chunk-HN2ZK6EV.js";import{g as u}from"./chunks/chunk-UJBEWIR3.js";import{a as c}from"./chunks/chunk-XRKFTPHD.js";import{a as m,b as l}from"./chunks/chunk-BSHAIAXY.js";import"./chunks/chunk-XWPC3AN4.js";import{f as a}from"./chunks/chunk-3M53YXEI.js";import"./chunks/chunk-GLUWATL5.js";import{a as s}from"./chunks/chunk-FTQLQJQV.js";function f(e){return!e.command&&a(e.options.version)?"version":a(e.options.checkUpdate)?"check-update":!e.command&&a(e.options.help)?"help":!e.command&&a(e.options.tui)?"tui":e.command?"command":"ui"}s(f,"resolveCliTopLevelAction");async function C(e=process.argv.slice(2)){if(await w(e))return;let{command:i,options:o,rest:t}=d(e);typeof o.home=="string"&&(process.env.OPENPOND_HOME=(await import("./chunks/dist-X64FC6NA.js")).resolveOpenPondHome({home:o.home}));let r=f({command:i,options:o});if(r==="version"){console.log(c());return}if(r==="check-update"){await(await import("./chunks/core-commands-JGXU6B4C.js")).runCheckUpdate();return}if(r==="help"){(await import("./chunks/help-M2VQGPVC.js")).printHelp();return}let n=m(o),p=l(o);if(n&&(process.env.OPENPOND_ACCOUNT=n),p&&(process.env.OPENPOND_BASE_URL=p),r==="tui"){await(await import("./chunks/app-layer-4BFMOMKM.js")).runOpenPondTerminalCommand(o,t);return}if(r==="ui"){await(await import("./chunks/app-layer-4BFMOMKM.js")).runOpenPondServerCommand("web",o,t);return}await u({command:i,options:o,rest:t})||((await import("./chunks/help-M2VQGPVC.js")).printHelp(),process.exit(1))}s(C,"runOpenPondCli");async function w(e){if(e[0]==="__dataset-preparation-authoring")return await(await import("./chunks/dataset-preparation-authoring-DFGJBMVF.js")).runDatasetPreparationAuthoringCli(e.slice(1)),!0;if(e[0]==="__inspect-hosted-profile-evaluation")return await(await import("./chunks/hosted-profile-compiler-SW2RWTDZ.js")).runHostedProfileInspectionCli(e.slice(1)),!0;if(e[0]==="__prepare-hosted-profile-evaluation")return await(await import("./chunks/hosted-profile-compiler-SW2RWTDZ.js")).runHostedProfileEvaluationCli(e.slice(1)),!0;if(e[0]==="__hosted-experiment-improvement")return await(await import("./chunks/hosted-experiment-improvement-NYLADI7S.js")).runHostedExperimentImprovementCli(e.slice(1)),!0;if(e[0]==="__compile-hosted-profile-candidate")return await(await import("./chunks/hosted-profile-candidate-37ZFY2LH.js")).runHostedProfileCandidateCli(e.slice(1)),!0;if(e[0]==="__compile-hosted-profile")return await(await import("./chunks/hosted-profile-compiler-SW2RWTDZ.js")).runHostedProfileCompilerCli(e.slice(1)),!0;if(e[0]==="__app-server"){process.argv=[process.execPath,"openpond-app-server",...e.slice(1)];let[{createOpenPondAppServer:i},{runOpenPondAppServerCli:o}]=await Promise.all([import("./chunks/app-server-runtime-B6BAJA6L.js"),import("./chunks/cli-WC45SI7E.js")]);return await o(i),!0}if(e[0]==="__server"){process.argv=[process.execPath,"openpond-server",...e.slice(1)];let[{createOpenPondServer:i},{runOpenPondServerCli:o}]=await Promise.all([import("./chunks/src-E7NWAN5B.js"),import("./chunks/cli-WC45SI7E.js")]),{createOpenPondAppServer:t}=await import("./chunks/app-server-runtime-B6BAJA6L.js");return await o({createOpenPondServer:i,createOpenPondAppServer:t}),!0}return e[0]==="__terminal"?(await(await import("./chunks/src-4YZF6L6H.js")).runOpenPondTerminalCli(e.slice(1)),!0):!1}s(w,"runEmbeddedCompanion");C().catch(async e=>{let i=e instanceof Error?e.message:String(e),o=e.issue,t=(await import("./chunks/training-error-AYOGHHL2.js")).trainingCliError(e);if(process.argv.includes("--json")&&!(e instanceof Error&&e.name==="OpenPondChildProcessExitError"))console.log(JSON.stringify({error:o??t??{code:"CLI_ERROR",message:i}}));else if(o&&typeof o=="object"){let n=o;console.error(`${n.code}: ${n.message}
3
+ import{a as d}from"./chunks/chunk-AZ7BL5FL.js";import{b as f}from"./chunks/chunk-2HAWOMZK.js";import{g as u}from"./chunks/chunk-SFKZITAG.js";import{a as c}from"./chunks/chunk-XRKFTPHD.js";import{a as m,b as l}from"./chunks/chunk-BSHAIAXY.js";import"./chunks/chunk-XWPC3AN4.js";import{f as a}from"./chunks/chunk-3M53YXEI.js";import"./chunks/chunk-GLUWATL5.js";import{a as s}from"./chunks/chunk-FTQLQJQV.js";function C(e){return!e.command&&a(e.options.version)?"version":a(e.options.checkUpdate)?"check-update":!e.command&&a(e.options.help)?"help":!e.command&&a(e.options.tui)?"tui":e.command?"command":"ui"}s(C,"resolveCliTopLevelAction");async function w(e=process.argv.slice(2)){if(await P(e))return;let{command:i,options:o,rest:t}=f(e);typeof o.home=="string"&&(process.env.OPENPOND_HOME=(await import("./chunks/dist-HSC43RG4.js")).resolveOpenPondHome({home:o.home}));let r=C({command:i,options:o});if(r==="version"){console.log(c());return}if(r==="check-update"){await(await import("./chunks/core-commands-WWN7X3XC.js")).runCheckUpdate();return}if(r==="help"){(await import("./chunks/help-7HXFWIKS.js")).printHelp();return}let n=m(o),p=l(o);if(n&&(process.env.OPENPOND_ACCOUNT=n),p&&(process.env.OPENPOND_BASE_URL=p),r==="tui"){await(await import("./chunks/app-layer-K7H2WJ56.js")).runOpenPondTerminalCommand(o,t);return}if(r==="ui"){await(await import("./chunks/app-layer-K7H2WJ56.js")).runOpenPondServerCommand("web",o,t);return}await u({command:i,options:o,rest:t})||((await import("./chunks/help-7HXFWIKS.js")).printHelp(),process.exit(1))}s(w,"runOpenPondCli");async function P(e){if(e[0]==="__dataset-preparation-authoring")return await(await import("./chunks/dataset-preparation-authoring-F3OZIQSP.js")).runDatasetPreparationAuthoringCli(e.slice(1)),!0;if(e[0]==="__inspect-hosted-profile-evaluation")return await(await import("./chunks/hosted-profile-compiler-UAZ4PHYE.js")).runHostedProfileInspectionCli(e.slice(1)),!0;if(e[0]==="__prepare-hosted-profile-evaluation")return await(await import("./chunks/hosted-profile-compiler-UAZ4PHYE.js")).runHostedProfileEvaluationCli(e.slice(1)),!0;if(e[0]==="__hosted-experiment-improvement")return await(await import("./chunks/hosted-experiment-improvement-UXC542SZ.js")).runHostedExperimentImprovementCli(e.slice(1)),!0;if(e[0]==="__compile-hosted-profile-candidate")return await(await import("./chunks/hosted-profile-candidate-HM44BIUX.js")).runHostedProfileCandidateCli(e.slice(1)),!0;if(e[0]==="__compile-hosted-profile")return await(await import("./chunks/hosted-profile-compiler-UAZ4PHYE.js")).runHostedProfileCompilerCli(e.slice(1)),!0;if(e[0]==="__app-server"){process.argv=[process.execPath,"openpond-app-server",...e.slice(1)];let[{createOpenPondAppServer:i},{runOpenPondAppServerCli:o}]=await Promise.all([import("./chunks/app-server-runtime-LFIL6F7D.js"),import("./chunks/cli-PSXMIJTF.js")]);return await o(i),!0}if(e[0]==="__server"){process.argv=[process.execPath,"openpond-server",...e.slice(1)];let[{createOpenPondServer:i},{runOpenPondServerCli:o}]=await Promise.all([import("./chunks/src-BLWX6DRG.js"),import("./chunks/cli-PSXMIJTF.js")]),{createOpenPondAppServer:t}=await import("./chunks/app-server-runtime-LFIL6F7D.js");return await o({createOpenPondServer:i,createOpenPondAppServer:t}),!0}return e[0]==="__terminal"?(await(await import("./chunks/src-PU7QTFO5.js")).runOpenPondTerminalCli(e.slice(1)),!0):!1}s(P,"runEmbeddedCompanion");w().catch(async e=>{if(e instanceof d){process.exitCode=e.exitCode;return}let i=e instanceof Error?e.message:String(e),o=e.issue,t=(await import("./chunks/training-error-2EWDOQ4G.js")).trainingCliError(e);if(process.argv.includes("--json")&&!(e instanceof Error&&e.name==="OpenPondChildProcessExitError"))console.log(JSON.stringify({error:o??t??{code:"CLI_ERROR",message:i}}));else if(o&&typeof o=="object"){let n=o;console.error(`${n.code}: ${n.message}
4
4
  ${n.path}
5
- ${n.action}`)}else console.error(t?`${t.code}: ${i}`:i);let r=typeof e.exitCode=="number"?e.exitCode:1;process.exit(r)});export{C as runOpenPondCli};
5
+ ${n.action}`)}else console.error(t?`${t.code}: ${i}`:i);let r=typeof e.exitCode=="number"?e.exitCode:1;process.exit(r)});export{w as runOpenPondCli};
@@ -138,9 +138,34 @@ export type HostedChatStreamDelta = {
138
138
  finishReason: string | null;
139
139
  raw: unknown;
140
140
  };
141
+ /** Transport metadata only: never headers, SSE contents or request credentials. */
142
+ type HostedChatStreamDiagnosticDetails = {
143
+ type: "request";
144
+ } | {
145
+ type: "headers";
146
+ status: number;
147
+ eventStream: boolean;
148
+ noCache: boolean;
149
+ noTransform: boolean;
150
+ bufferingDisabled: boolean;
151
+ } | {
152
+ type: "bytes";
153
+ byteLength: number;
154
+ } | {
155
+ type: "comment";
156
+ } | {
157
+ type: "data";
158
+ errorFrame: boolean;
159
+ } | {
160
+ type: "done";
161
+ };
162
+ export type HostedChatStreamDiagnostic = HostedChatStreamDiagnosticDetails & {
163
+ elapsedMs: number;
164
+ };
141
165
  export type HostedChatRequestOptions = {
142
166
  apiBaseUrl: string;
143
167
  token: string;
168
+ teamId?: string;
144
169
  model: string;
145
170
  messages: HostedChatMessage[];
146
171
  requestId?: string;
@@ -152,10 +177,12 @@ export type HostedChatRequestOptions = {
152
177
  toolChoice?: HostedChatToolChoice;
153
178
  tool_choice?: HostedChatToolChoice;
154
179
  metadata?: Record<string, unknown>;
180
+ onStreamDiagnostic?: (event: HostedChatStreamDiagnostic) => void;
155
181
  };
156
182
  export type HostedModelsRequestOptions = {
157
183
  apiBaseUrl: string;
158
184
  token: string;
185
+ teamId?: string;
159
186
  signal?: AbortSignal;
160
187
  };
161
188
  export type HostedModelRequestOptions = HostedModelsRequestOptions & {
@@ -181,3 +208,4 @@ export declare function getOpChatProvider(options: HostedProviderRequestOptions)
181
208
  export declare const listHostedProviders: typeof listOpChatProviders;
182
209
  export declare function sendHostedChatTurn(options: HostedChatRequestOptions): Promise<HostedChatCompletion>;
183
210
  export declare function streamHostedChatTurn(options: HostedChatRequestOptions): AsyncGenerator<HostedChatStreamDelta, void, unknown>;
211
+ export {};
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as ze,b as de,c as Je}from"./chunks/chunk-22UARBPW.js";import{a as fe,b as $e,c as ge,d as ye,e as Ve,f as Re,g as Ae,h as Ye,i as Ce,j as Oe,k as Qe}from"./chunks/chunk-JEVA7YQL.js";import"./chunks/chunk-X37KMV27.js";import{A as zt,B as Jt,C as $t,D as Vt,E as Yt,F as Qt,G as Xt,H as Zt,I as en,J as tn,K as nn,L as on,b as Ot,c as St,d as Tt,e as Pt,f as wt,g as Et,h as xt,i as bt,j as Lt,k as Bt,l as Dt,m as It,n as vt,o as Ut,p as Mt,q as _t,r as Ht,s as Nt,t as qt,u as kt,v as Kt,w as Ft,x as Gt,y as jt,z as Wt}from"./chunks/chunk-OMICIPPY.js";import"./chunks/chunk-25RDE7DV.js";import{$ as Ct,A as z,B as J,C as $,D as V,E as Y,F as Q,G as X,H as Z,I as ee,J as te,K as ne,L as oe,M as se,N as re,O as ae,P as je,Q as le,U as We,V as pe,W as ie,X as ce,Y as ue,Z as me,_ as he,a as qe,b as ke,c as E,d as x,e as b,f as L,g as B,h as D,i as I,j as v,k as Ke,l as U,n as Fe,o as M,p as _,q as H,r as N,s as q,t as Ge,u as k,v as K,w as F,x as G,y as j,z as W}from"./chunks/chunk-TYHCBVQT.js";import"./chunks/chunk-VSUHJ46L.js";import{a as Rt,b as At}from"./chunks/chunk-FWIPHEVA.js";import"./chunks/chunk-BT5YNE5U.js";import{a as be,b as Le,c as Be,d as De,e as Ie,f as ve,g as Ue,h as Me,i as _e}from"./chunks/chunk-OJFDI7VM.js";import"./chunks/chunk-QCSLEMZF.js";import"./chunks/chunk-4RHM4WN2.js";import"./chunks/chunk-BLKTUFGB.js";import{a as P,b as w,c as He,d as Ne}from"./chunks/chunk-GLUWATL5.js";import"./chunks/chunk-OSVGNONV.js";import"./chunks/chunk-YBNKGA5C.js";import{a as yt}from"./chunks/chunk-ZZWAQBA2.js";import"./chunks/chunk-LAOLJDVB.js";import"./chunks/chunk-UWHIU24L.js";import"./chunks/chunk-LV3CQ72P.js";import"./chunks/chunk-YR5ID2SS.js";import"./chunks/chunk-M6JRS5PA.js";import"./chunks/chunk-KCV5VN4X.js";import"./chunks/chunk-RV7PUSI2.js";import"./chunks/chunk-3A7HZJNE.js";import{a as sn,b as rn,c as an,d as ln,e as pn,f as cn,g as un,h as mn,i as hn,j as dn,k as fn,l as gn,m as yn,n as Rn,o as An,p as Cn,q as On,r as Sn,s as Tn,t as Pn,u as wn}from"./chunks/chunk-ERJV5BMC.js";import"./chunks/chunk-6FA3GG5B.js";import"./chunks/chunk-KK626T3Z.js";import"./chunks/chunk-6DCXAXVD.js";import"./chunks/chunk-OE22TAXP.js";import"./chunks/chunk-UGOK7VTC.js";import"./chunks/chunk-4M3YW3EQ.js";import"./chunks/chunk-PBZCXPPC.js";import"./chunks/chunk-NJLULBTM.js";import"./chunks/chunk-VVNV4NNW.js";import"./chunks/chunk-PF56N7ZY.js";import{a as s}from"./chunks/chunk-FTQLQJQV.js";function Xe(t,e=14){if(t.length<e+1)return null;let r=0,o=0;for(let l=1;l<=e;l+=1){let m=t[l]-t[l-1];m>=0?r+=m:o-=m}let a=r/e,i=o/e;for(let l=e+1;l<t.length;l+=1){let m=t[l]-t[l-1],d=m>0?m:0,n=m<0?-m:0;a=(a*(e-1)+d)/e,i=(i*(e-1)+n)/e}return i===0?100:100-100/(1+a/i)}s(Xe,"computeRsi");function T(t,e){if(t.length<e)return[];let r=[],o=0;for(let a=0;a<t.length;a+=1)o+=t[a],a>=e&&(o-=t[a-e]),a>=e-1&&r.push(o/e);return r}s(T,"computeSmaSeries");function Ze(t,e){let r=T(t,e);return r.length>0?r[r.length-1]:null}s(Ze,"computeSma");function A(t,e){if(t.length<e)return[];let r=2/(e+1),a=t.slice(0,e).reduce((p,l)=>p+l,0)/e,i=[a];for(let p=e;p<t.length;p+=1)a=t[p]*r+a*(1-r),i.push(a);return i}s(A,"computeEmaSeries");function et(t,e){let r=A(t,e);return r.length>0?r[r.length-1]:null}s(et,"computeEma");function tt(t){let e=A(t,12),r=A(t,26);if(e.length===0||r.length===0)return null;let o=e.length-r.length,a=r.map((m,d)=>e[d+o]-m),i=A(a,9);if(i.length===0)return null;let p=a[a.length-1],l=i[i.length-1];return{macd:p,signalLine:l,histogram:p-l}}s(tt,"computeMacd");function nt(t,e,r,o){if(t.length<o)return null;let a=e==="ema"?A(t,r):T(t,r),i=e==="ema"?A(t,o):T(t,o);if(a.length===0||i.length===0)return null;let p=a.length-i.length;if(p<0)return null;let l=i.length-1,m=a[l+p],d=i[l],n=l-1,c=n>=0?a[n+p]:null,u=n>=0?i[n]:null,h="neutral";return c!=null&&u!=null?c<=u&&m>d?h="bullish-cross":c>=u&&m<d?h="bearish-cross":m>d?h="bullish":m<d&&(h="bearish"):m>d?h="bullish":m<d&&(h="bearish"),{fast:m,slow:d,signal:h}}s(nt,"computeMaCross");function ot(t,e=20,r=2){if(t.length<e)return null;let o=t.slice(-e),a=o.reduce((l,m)=>l+m,0)/e,i=o.reduce((l,m)=>l+Math.pow(m-a,2),0)/e,p=Math.sqrt(i);return{middle:a,upper:a+r*p,lower:a-r*p}}s(ot,"computeBollinger");function st(t,e=24){if(t.length<2)return null;let r=t[t.length-1],o=Math.max(0,t.length-1-e),a=t[o];if(a===0)return null;let i=(r-a)/a*100;return{previous:a,percent:i}}s(st,"computePriceChange");function rt(t,e=14){if(t.length<e+1)return null;let r=[];for(let i=1;i<t.length;i+=1){let p=t[i],l=t[i-1],m=p.high-p.low,d=Math.abs(p.high-l.close),n=Math.abs(p.low-l.close);r.push(Math.max(m,d,n))}return r.length<e?null:r.slice(-e).reduce((i,p)=>i+p,0)/e}s(rt,"computeAtr");function Te(t){return t.replace(/\/$/,"")}s(Te,"resolveUrl");function at(t){let e=process.env.OPENPOND_BASE_URL,r=t.baseUrl||e||P;return Te(r.trim())}s(at,"resolveBaseUrl");function lt(t){let e=process.env.OPENPOND_API_URL,r=t.apiUrl||e||w;return Te(r.trim())}s(lt,"resolveApiUrl");function pt(t,e){return fe({apiBaseUrl:e,opChatApiBaseUrl:t.opChatApiUrl,chatApiBaseUrl:t.chatApiUrl})}s(pt,"resolveChatApiUrl");function it(t,e){let r=process.env.OPENPOND_TOOL_URL,o=t.toolUrl||r||e;return Te(o.trim())}s(it,"resolveToolUrl");function ct(t){let e=t.apiKey?.trim();if(e)return e;let r=process.env.OPENPOND_API_KEY?.trim();if(r)return r;throw new Error("OPENPOND_API_KEY is required")}s(ct,"resolveApiKey");function ut(t){let e=t.split("/").filter(Boolean);if(e.length!==2)throw new Error("expected <handle>/<repo>");return{handle:e[0],repo:e[1]}}s(ut,"parseHandleRepo");function Pe(t){return(t||"").trim().toLowerCase()}s(Pe,"normalizeRepoName");function mt(t){if(!t||typeof t!="object")return{name:"unknown",raw:t};let e=t,r=e.profile||e.function,o=typeof e.name=="string"?e.name:typeof r?.name=="string"?r.name:"unknown",a=typeof e.description=="string"?e.description:typeof r?.description=="string"?r.description:void 0;return{name:o,description:a,raw:t}}s(mt,"normalizeToolSummary");function ht(t){if(!t)return[];if(Array.isArray(t.toolsJson))return t.toolsJson;if(t.metadataJson&&typeof t.metadataJson=="object"){let e=t.metadataJson.tools;if(Array.isArray(e))return e}return[]}s(ht,"extractDeploymentTools");async function O(t){let{handle:e,repo:r}=ut(t.target),o=await Se({apiBase:t.apiBase,apiKey:t.apiKey,useCache:t.useCache,cacheTtlMs:t.cacheTtlMs,forceRefresh:t.forceRefresh}),a=Pe(r),i=o.find(p=>p.handle&&p.handle!==e?!1:[p.repo,p.gitRepo,p.id].map(Pe).includes(a));if(!i)throw new Error(`app not found for ${e}/${r}`);return{app:i,handle:e,repo:r}}s(O,"resolveAppTarget");async function Se(t){if(t.useCache&&!t.forceRefresh){let r=await ce({apiBase:t.apiBase,apiKey:t.apiKey,ttlMs:t.cacheTtlMs});if(r)return r}let e=await v(t.apiBase,t.apiKey);return t.useCache&&await ue({apiBase:t.apiBase,apiKey:t.apiKey,apps:e}),e}s(Se,"fetchAppsWithCache");async function we(t){if(t.useCache&&!t.forceRefresh){let o=await me({apiBase:t.apiBase,apiKey:t.apiKey,ttlMs:t.cacheTtlMs});if(o)return o}let e=await k(t.apiBase,t.apiKey),r=Array.isArray(e.tools)?e.tools:[];return t.useCache&&await he({apiBase:t.apiBase,apiKey:t.apiKey,tools:r}),r}s(we,"fetchToolsWithCache");function dt(t){if(!t)return"POST";let e=t.toUpperCase();switch(e){case"GET":case"POST":case"PUT":case"DELETE":return e;default:throw new Error("method must be GET, POST, PUT, or DELETE")}}s(dt,"normalizeMethod");async function ft(t,e){let r,o,a;return await de(t,{...e,onConversationId:s(i=>{r=i,e?.onConversationId?.(i)},"onConversationId"),onItems:s(i=>{for(let p of i){let l=p;!o&&typeof l.appId=="string"&&(o=l.appId,e?.onAppId?.(l.appId)),!a&&typeof l.deploymentId=="string"&&(a=l.deploymentId,e?.onDeploymentId?.(l.deploymentId))}e?.onItems?.(i)},"onItems")}),{conversationId:r,appId:o,deploymentId:a}}s(ft,"consumeAgentCreateStream");function vn(t){let e=ct(t),r=at(t),o=lt(t),a=pt(t,o),i=it(t,r),p=t.cacheTtlMs??ie,l=t.useCache!==!1,m=s(async()=>{l&&await Promise.all([Se({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:!0}),we({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:!0})])},"refreshCache"),d=s(async(n,c)=>(await D(o,e,n,{branch:c}))?.id??null,"resolveLatestDeploymentId");return{baseUrl:r,apiUrl:o,chatApiUrl:a,toolUrl:i,apiKey:e,account:{get:s(async()=>se(o,e),"get"),health:s(async()=>re(o,e),"health")},chat:{providers:s(async()=>Re({apiBaseUrl:a,token:e}),"providers"),provider:s(async n=>Ae({apiBaseUrl:a,token:e,provider:n}),"provider"),models:s(async()=>ge({apiBaseUrl:a,token:e}),"models"),model:s(async n=>ye({apiBaseUrl:a,token:e,model:n}),"model"),send:s(async n=>Ce({...n,apiBaseUrl:a,token:e}),"send"),stream:s(n=>Oe({...n,apiBaseUrl:a,token:e}),"stream")},tool:{list:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.deploymentId||await d(u.id,c?.branch);if(!h)return{app:u,deploymentId:null,tools:[]};let g=await I(o,e,h),y=ht(g).map(mt);return{app:u,deploymentId:h,tools:y}},"list"),run:s(async(n,c,u)=>{let{app:h}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:u?.forceRefresh}),g=u?.deploymentId||await d(h.id,u?.branch);if(!g)throw new Error("no deployments found");let f=dt(u?.method);return pe(i,e,{appId:h.id,deploymentId:g,toolName:c,method:f,body:u?.body,headers:u?.headers})},"run")},deploy:{watch:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.deploymentId||await d(u.id,c?.branch);if(!h)throw new Error("no deployments found");let g=c?.intervalMs??5e3,f=c?.timeoutMs??240*1e3,y=[],S=new Set,Ee=Date.now(),R=null;for(;Date.now()-Ee<f;){let xe=await L(o,e,h);for(let C of xe)S.has(C.id)||(S.add(C.id),y.push(C),c?.onLog?.(C));if(R=(await B(o,e,h)).status??null,c?.onStatus?.(R),R==="failed")return{deploymentId:h,status:R,logs:y};if(R==="running"||R==="deployed")return{deploymentId:h,status:R,logs:y};await new Promise(C=>setTimeout(C,g))}return{deploymentId:h,status:"timeout",logs:y}},"watch")},template:{status:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh});return M(o,e,u.id)},"status"),branches:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh});return _(o,e,u.id)},"branches"),update:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.environment==="preview"?"preview":"production";return H(o,e,u.id,{environment:h})},"update")},opentool:{recipesList:s(async(n={})=>F(o,e,n),"recipesList"),recipesSearch:s(async n=>G(o,e,n),"recipesSearch"),recipeGet:s(async n=>j(o,e,n),"recipeGet"),rulesGet:s(async n=>W(o,e,n),"rulesGet")},apps:{list:s(async n=>{let c=await Se({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:n?.forceRefresh});return n?.handle?c.filter(u=>u.handle===n.handle):c},"list"),tools:s(async n=>we({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:n?.forceRefresh}),"tools"),performance:s(async n=>ne(o,e,{appId:n?.appId}),"performance"),summary:s(async n=>oe(o,e,n.appId),"summary"),schedules:s(async n=>K(o,e,n.appId),"schedules"),schedulesStart:s(async n=>{let{appId:c,...u}=n;return z(o,e,c,u)},"schedulesStart"),schedulesStop:s(async n=>J(o,e,n.appId),"schedulesStop"),schedulesStopCurrent:s(async()=>$(o,e),"schedulesStopCurrent"),scheduleRunNow:s(async n=>V(o,e,n),"scheduleRunNow"),scheduleDelete:s(async n=>Y(o,e,n.appId,n.scheduleId),"scheduleDelete"),scheduleExecutionLogs:s(async n=>Q(o,e,n.scheduleId,{limit:n.limit}),"scheduleExecutionLogs"),scheduleExecutionLog:s(async n=>Z(o,e,n.runId),"scheduleExecutionLog"),deploymentScheduleExecutionLogs:s(async n=>X(o,e,n.deploymentId,{limit:n.limit}),"deploymentScheduleExecutionLogs"),executionTimeline:s(async n=>ee(o,e,n.appId,{limit:n.limit}),"executionTimeline"),assistantRun:s(async n=>ae(o,e,n),"assistantRun"),agentCreate:s(async(n,c)=>{let{refreshCache:u,...h}=n,g={...h,streamDeployLogs:h.streamDeployLogs??!0},f=await te(o,e,g);if(!f.ok){let S=await f.text().catch(()=>"");throw new Error(`agent create failed: ${f.status} ${S}`)}let y=await ft(f,c);if(l&&u!==!1)try{await m()}catch{}return y},"agentCreate"),toolsExecute:s(async n=>le(o,e,n),"toolsExecute"),deploy:s(async n=>E(o,e,n.appId,{environment:n.environment,commitSha:n.commitSha,branch:n.branch}),"deploy"),startApp:s(async n=>{let{appId:c,...u}=n;return b(o,e,c,u)},"startApp"),promotePreview:s(async n=>{let{appId:c,...u}=n;return x(o,e,c,u)},"promotePreview"),envGet:s(async n=>q(o,e,n.appId),"envGet"),envSet:s(async n=>N(o,e,n.appId,{envVars:n.envVars}),"envSet")},repo:{create:s(async n=>{let{refreshCache:c,...u}=n,h=await U(o,e,u);if(l&&c!==!1)try{await m()}catch{}return h},"create")},cache:{refresh:m}}}s(vn,"createClient");export{ie as DEFAULT_CACHE_TTL_MS,It as DEFAULT_LOCAL_PROFILE,w as DEFAULT_OPENPOND_API_BASE_URL,Ne as DEFAULT_OPENPOND_CHAT_API_BASE_URL,He as DEFAULT_OPENPOND_OPCHAT_API_BASE_URL,P as DEFAULT_OPENPOND_WEB_BASE_URL,vt as DEFAULT_PROFILE_AGENT,an as OPENPOND_MANIFEST_FILE_NAME,Ot as OpenPondProfileSetupRequiredError,Rt as OpenPondSandboxClient,Dt as PROFILE_MANIFEST,Bt as PROFILE_REPO_MANIFEST,Ct as SANDBOX_RUNTIME_PROFILE_IDS,ln as SANDBOX_TEMPLATE_BUILD_PLAN_FILE_NAME,pn as SANDBOX_TEMPLATE_BUILD_PLAN_KIND,rn as SANDBOX_TEMPLATE_PREVIEW_PORT_MAX,sn as SANDBOX_TEMPLATE_PREVIEW_PORT_MIN,cn as SandboxTemplateManifestSchema,un as SandboxTemplateValidationDiagnosticSchema,qe as apiFetch,Tt as assertOpenPondProfileActionReady,St as buildOpenPondProfileSetupGate,re as checkOpenPondApiHealth,wt as collectProfileSourceUploadEntries,tn as commitActiveProfileChanges,ke as commitFiles,rt as computeAtr,ot as computeBollinger,et as computeEma,A as computeEmaSeries,nt as computeMaCross,tt as computeMacd,st as computePriceChange,Xe as computeRsi,Ze as computeSma,T as computeSmaSeries,ft as consumeAgentCreateStream,de as consumeStream,te as createAgentFromPrompt,vn as createClient,Fe as createHeadlessApps,Ke as createLocalProject,At as createOpenPondSandboxClient,U as createRepo,_t as defaultLocalProfileRepoPath,gn as defineSandboxTemplate,Y as deleteOrArchiveSchedule,E as deployApp,H as deployLatestTemplate,Ht as emptyProfileState,pe as executeHostedTool,le as executeUserTool,Ge as fetchToolManifest,Pt as formatOpenPondProfileSetupRequirement,fn as formatSandboxTemplateDiagnostics,Je as formatStreamItem,q as getAppEnvironment,ee as getAppExecutionTimeline,oe as getAppRuntimeSummary,ce as getCachedApps,me as getCachedTools,be as getConfigPath,I as getDeploymentDetail,L as getDeploymentLogs,B as getDeploymentStatus,D as getLatestDeploymentForApp,ye as getOpChatModel,Ae as getOpChatProvider,se as getOpenPondAccount,j as getOpenToolRecipe,W as getOpenToolRules,Z as getScheduleExecutionLog,M as getTemplateStatus,ne as getUserPerformance,xt as hostedPublishStatusFromPayload,Lt as hostedRunStatusFromRunSummary,bt as hostedRunSummaryFromPayload,Et as hostedSourceCheckStatusFromPayload,Nt as initLocalProfileRepo,Vt as inspectOpenPondProfileSource,Ft as installAgentPackageIntoActiveProfile,K as listAppSchedules,v as listApps,Ie as listConfiguredProfiles,X as listDeploymentScheduleExecutionLogs,Ve as listHostedModels,Ye as listHostedProviders,ge as listOpChatModels,Re as listOpChatProviders,F as listOpenToolRecipes,Q as listScheduleExecutionLogs,_ as listTemplateBranches,k as listUserTools,De as loadConfig,Be as loadGlobalConfig,qt as loadLocalProfileRepo,Wt as loadOpenPondProfileLibrary,Gt as loadOpenPondProfileState,zt as loadOpenPondProfileStateForRef,Yt as loadOpenPondProfileStateFromSource,Mt as mergeActiveLocalProfileConfig,Ut as mergeProfileRepoManifestEntry,ze as normalizeDataFrames,yt as normalizeSandboxApiUrl,jt as openPondProfileRef,dn as parseSandboxTemplateYaml,je as postAgentDigest,on as prepareAgentSdkRuntimePackage,x as promotePreviewToProduction,kt as registerLocalProfileRepo,$t as removeOpenPondProfile,Kt as renameActiveProfileAgent,Qt as requireActiveLocalProfile,$e as resolveHostedChatApiBaseUrl,fe as resolveOpChatApiBaseUrl,We as resolveWorkerBaseUrl,Zt as runAgentSdkProjectCommand,ae as runAssistantMode,Qe as runOpChatSmoke,en as runProfileCheck,Xt as runProfileSdkCommand,V as runScheduleNow,Sn as sandboxTemplateBuildMetadata,Tn as sandboxTemplateBuildPlan,Rn as sandboxTemplateDurableVolume,On as sandboxTemplateExecutableEntries,Cn as sandboxTemplateFileInput,wn as sandboxTemplateJsonSchema,An as sandboxTemplatePreviewPort,yn as sandboxTemplateResources,Pn as sandboxTemplateScaffoldFiles,Me as saveConfig,_e as saveGlobalConfig,Ue as saveProfileApiKey,nn as saveProfilePushStatus,G as searchOpenToolRecipes,Jt as selectOpenPondProfile,Ce as sendHostedChatTurn,ve as setActiveProfile,ue as setCachedApps,he as setCachedTools,b as startAppLifecycle,z as startAppSchedules,J as stopAppSchedules,$ as stopCurrentAppSchedules,Oe as streamHostedChatTurn,N as updateAppEnvironment,Le as updateGlobalConfig,hn as validateSandboxTemplateManifest,mn as validateSandboxTemplateYaml};
2
+ import{a as Qe}from"./chunks/chunk-Q34IF4PW.js";import{a as fe,b as $e,c as ge,d as ye,e as Ve,f as Re,g as Ae,h as Ye,i as Ce,j as Oe}from"./chunks/chunk-6XSSM4WT.js";import{a as ze,b as de,c as Je}from"./chunks/chunk-22UARBPW.js";import"./chunks/chunk-X37KMV27.js";import{A as zt,B as Jt,C as $t,D as Vt,E as Yt,F as Qt,G as Xt,H as Zt,I as en,J as tn,K as nn,L as on,b as Ot,c as St,d as Tt,e as Pt,f as wt,g as Et,h as xt,i as bt,j as Lt,k as Bt,l as Dt,m as It,n as vt,o as Ut,p as Mt,q as _t,r as Ht,s as Nt,t as qt,u as kt,v as Kt,w as Ft,x as Gt,y as jt,z as Wt}from"./chunks/chunk-T6JN4PND.js";import"./chunks/chunk-JEISPWWM.js";import{$ as Ct,A as z,B as J,C as $,D as V,E as Y,F as Q,G as X,H as Z,I as ee,J as te,K as ne,L as oe,M as se,N as re,O as ae,P as je,Q as le,U as We,V as pe,W as ie,X as ce,Y as ue,Z as me,_ as he,a as qe,b as ke,c as E,d as x,e as b,f as L,g as B,h as D,i as I,j as v,k as Ke,l as U,n as Fe,o as M,p as _,q as H,r as N,s as q,t as Ge,u as k,v as K,w as F,x as G,y as j,z as W}from"./chunks/chunk-MILEWROZ.js";import"./chunks/chunk-OTUBJV6C.js";import{a as Rt,b as At}from"./chunks/chunk-27JGS3KB.js";import"./chunks/chunk-BT5YNE5U.js";import{a as be,b as Le,c as Be,d as De,e as Ie,f as ve,g as Ue,h as Me,i as _e}from"./chunks/chunk-UTNGEMW5.js";import"./chunks/chunk-U2K7QJCG.js";import"./chunks/chunk-WSOUMXH3.js";import"./chunks/chunk-N42HT64M.js";import"./chunks/chunk-NG2L6D7G.js";import{a as P,b as w,c as He,d as Ne}from"./chunks/chunk-GLUWATL5.js";import"./chunks/chunk-OSVGNONV.js";import{a as yt}from"./chunks/chunk-2LJCJOJ7.js";import"./chunks/chunk-YBNKGA5C.js";import"./chunks/chunk-LAOLJDVB.js";import"./chunks/chunk-UWHIU24L.js";import"./chunks/chunk-JCLTFDVW.js";import"./chunks/chunk-LV3CQ72P.js";import"./chunks/chunk-ABF3W2MO.js";import"./chunks/chunk-RV7PUSI2.js";import"./chunks/chunk-KCV5VN4X.js";import"./chunks/chunk-3A7HZJNE.js";import{a as sn,b as rn,c as an,d as ln,e as pn,f as cn,g as un,h as mn,i as hn,j as dn,k as fn,l as gn,m as yn,n as Rn,o as An,p as Cn,q as On,r as Sn,s as Tn,t as Pn,u as wn}from"./chunks/chunk-ERJV5BMC.js";import"./chunks/chunk-6FA3GG5B.js";import"./chunks/chunk-2EPR4HLF.js";import"./chunks/chunk-BKEDG3A4.js";import"./chunks/chunk-OE22TAXP.js";import"./chunks/chunk-UGOK7VTC.js";import"./chunks/chunk-J572ANHX.js";import"./chunks/chunk-PBZCXPPC.js";import"./chunks/chunk-NJLULBTM.js";import"./chunks/chunk-VVNV4NNW.js";import"./chunks/chunk-PF56N7ZY.js";import{a as s}from"./chunks/chunk-FTQLQJQV.js";function Xe(t,e=14){if(t.length<e+1)return null;let r=0,o=0;for(let l=1;l<=e;l+=1){let m=t[l]-t[l-1];m>=0?r+=m:o-=m}let a=r/e,i=o/e;for(let l=e+1;l<t.length;l+=1){let m=t[l]-t[l-1],d=m>0?m:0,n=m<0?-m:0;a=(a*(e-1)+d)/e,i=(i*(e-1)+n)/e}return i===0?100:100-100/(1+a/i)}s(Xe,"computeRsi");function T(t,e){if(t.length<e)return[];let r=[],o=0;for(let a=0;a<t.length;a+=1)o+=t[a],a>=e&&(o-=t[a-e]),a>=e-1&&r.push(o/e);return r}s(T,"computeSmaSeries");function Ze(t,e){let r=T(t,e);return r.length>0?r[r.length-1]:null}s(Ze,"computeSma");function A(t,e){if(t.length<e)return[];let r=2/(e+1),a=t.slice(0,e).reduce((p,l)=>p+l,0)/e,i=[a];for(let p=e;p<t.length;p+=1)a=t[p]*r+a*(1-r),i.push(a);return i}s(A,"computeEmaSeries");function et(t,e){let r=A(t,e);return r.length>0?r[r.length-1]:null}s(et,"computeEma");function tt(t){let e=A(t,12),r=A(t,26);if(e.length===0||r.length===0)return null;let o=e.length-r.length,a=r.map((m,d)=>e[d+o]-m),i=A(a,9);if(i.length===0)return null;let p=a[a.length-1],l=i[i.length-1];return{macd:p,signalLine:l,histogram:p-l}}s(tt,"computeMacd");function nt(t,e,r,o){if(t.length<o)return null;let a=e==="ema"?A(t,r):T(t,r),i=e==="ema"?A(t,o):T(t,o);if(a.length===0||i.length===0)return null;let p=a.length-i.length;if(p<0)return null;let l=i.length-1,m=a[l+p],d=i[l],n=l-1,c=n>=0?a[n+p]:null,u=n>=0?i[n]:null,h="neutral";return c!=null&&u!=null?c<=u&&m>d?h="bullish-cross":c>=u&&m<d?h="bearish-cross":m>d?h="bullish":m<d&&(h="bearish"):m>d?h="bullish":m<d&&(h="bearish"),{fast:m,slow:d,signal:h}}s(nt,"computeMaCross");function ot(t,e=20,r=2){if(t.length<e)return null;let o=t.slice(-e),a=o.reduce((l,m)=>l+m,0)/e,i=o.reduce((l,m)=>l+Math.pow(m-a,2),0)/e,p=Math.sqrt(i);return{middle:a,upper:a+r*p,lower:a-r*p}}s(ot,"computeBollinger");function st(t,e=24){if(t.length<2)return null;let r=t[t.length-1],o=Math.max(0,t.length-1-e),a=t[o];if(a===0)return null;let i=(r-a)/a*100;return{previous:a,percent:i}}s(st,"computePriceChange");function rt(t,e=14){if(t.length<e+1)return null;let r=[];for(let i=1;i<t.length;i+=1){let p=t[i],l=t[i-1],m=p.high-p.low,d=Math.abs(p.high-l.close),n=Math.abs(p.low-l.close);r.push(Math.max(m,d,n))}return r.length<e?null:r.slice(-e).reduce((i,p)=>i+p,0)/e}s(rt,"computeAtr");function Te(t){return t.replace(/\/$/,"")}s(Te,"resolveUrl");function at(t){let e=process.env.OPENPOND_BASE_URL,r=t.baseUrl||e||P;return Te(r.trim())}s(at,"resolveBaseUrl");function lt(t){let e=process.env.OPENPOND_API_URL,r=t.apiUrl||e||w;return Te(r.trim())}s(lt,"resolveApiUrl");function pt(t,e){return fe({apiBaseUrl:e,opChatApiBaseUrl:t.opChatApiUrl,chatApiBaseUrl:t.chatApiUrl})}s(pt,"resolveChatApiUrl");function it(t,e){let r=process.env.OPENPOND_TOOL_URL,o=t.toolUrl||r||e;return Te(o.trim())}s(it,"resolveToolUrl");function ct(t){let e=t.apiKey?.trim();if(e)return e;let r=process.env.OPENPOND_API_KEY?.trim();if(r)return r;throw new Error("OPENPOND_API_KEY is required")}s(ct,"resolveApiKey");function ut(t){let e=t.split("/").filter(Boolean);if(e.length!==2)throw new Error("expected <handle>/<repo>");return{handle:e[0],repo:e[1]}}s(ut,"parseHandleRepo");function Pe(t){return(t||"").trim().toLowerCase()}s(Pe,"normalizeRepoName");function mt(t){if(!t||typeof t!="object")return{name:"unknown",raw:t};let e=t,r=e.profile||e.function,o=typeof e.name=="string"?e.name:typeof r?.name=="string"?r.name:"unknown",a=typeof e.description=="string"?e.description:typeof r?.description=="string"?r.description:void 0;return{name:o,description:a,raw:t}}s(mt,"normalizeToolSummary");function ht(t){if(!t)return[];if(Array.isArray(t.toolsJson))return t.toolsJson;if(t.metadataJson&&typeof t.metadataJson=="object"){let e=t.metadataJson.tools;if(Array.isArray(e))return e}return[]}s(ht,"extractDeploymentTools");async function O(t){let{handle:e,repo:r}=ut(t.target),o=await Se({apiBase:t.apiBase,apiKey:t.apiKey,useCache:t.useCache,cacheTtlMs:t.cacheTtlMs,forceRefresh:t.forceRefresh}),a=Pe(r),i=o.find(p=>p.handle&&p.handle!==e?!1:[p.repo,p.gitRepo,p.id].map(Pe).includes(a));if(!i)throw new Error(`app not found for ${e}/${r}`);return{app:i,handle:e,repo:r}}s(O,"resolveAppTarget");async function Se(t){if(t.useCache&&!t.forceRefresh){let r=await ce({apiBase:t.apiBase,apiKey:t.apiKey,ttlMs:t.cacheTtlMs});if(r)return r}let e=await v(t.apiBase,t.apiKey);return t.useCache&&await ue({apiBase:t.apiBase,apiKey:t.apiKey,apps:e}),e}s(Se,"fetchAppsWithCache");async function we(t){if(t.useCache&&!t.forceRefresh){let o=await me({apiBase:t.apiBase,apiKey:t.apiKey,ttlMs:t.cacheTtlMs});if(o)return o}let e=await k(t.apiBase,t.apiKey),r=Array.isArray(e.tools)?e.tools:[];return t.useCache&&await he({apiBase:t.apiBase,apiKey:t.apiKey,tools:r}),r}s(we,"fetchToolsWithCache");function dt(t){if(!t)return"POST";let e=t.toUpperCase();switch(e){case"GET":case"POST":case"PUT":case"DELETE":return e;default:throw new Error("method must be GET, POST, PUT, or DELETE")}}s(dt,"normalizeMethod");async function ft(t,e){let r,o,a;return await de(t,{...e,onConversationId:s(i=>{r=i,e?.onConversationId?.(i)},"onConversationId"),onItems:s(i=>{for(let p of i){let l=p;!o&&typeof l.appId=="string"&&(o=l.appId,e?.onAppId?.(l.appId)),!a&&typeof l.deploymentId=="string"&&(a=l.deploymentId,e?.onDeploymentId?.(l.deploymentId))}e?.onItems?.(i)},"onItems")}),{conversationId:r,appId:o,deploymentId:a}}s(ft,"consumeAgentCreateStream");function vn(t){let e=ct(t),r=at(t),o=lt(t),a=pt(t,o),i=it(t,r),p=t.cacheTtlMs??ie,l=t.useCache!==!1,m=s(async()=>{l&&await Promise.all([Se({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:!0}),we({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:!0})])},"refreshCache"),d=s(async(n,c)=>(await D(o,e,n,{branch:c}))?.id??null,"resolveLatestDeploymentId");return{baseUrl:r,apiUrl:o,chatApiUrl:a,toolUrl:i,apiKey:e,account:{get:s(async()=>se(o,e),"get"),health:s(async()=>re(o,e),"health")},chat:{providers:s(async()=>Re({apiBaseUrl:a,token:e}),"providers"),provider:s(async n=>Ae({apiBaseUrl:a,token:e,provider:n}),"provider"),models:s(async()=>ge({apiBaseUrl:a,token:e}),"models"),model:s(async n=>ye({apiBaseUrl:a,token:e,model:n}),"model"),send:s(async n=>Ce({...n,apiBaseUrl:a,token:e}),"send"),stream:s(n=>Oe({...n,apiBaseUrl:a,token:e}),"stream")},tool:{list:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.deploymentId||await d(u.id,c?.branch);if(!h)return{app:u,deploymentId:null,tools:[]};let g=await I(o,e,h),y=ht(g).map(mt);return{app:u,deploymentId:h,tools:y}},"list"),run:s(async(n,c,u)=>{let{app:h}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:u?.forceRefresh}),g=u?.deploymentId||await d(h.id,u?.branch);if(!g)throw new Error("no deployments found");let f=dt(u?.method);return pe(i,e,{appId:h.id,deploymentId:g,toolName:c,method:f,body:u?.body,headers:u?.headers})},"run")},deploy:{watch:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.deploymentId||await d(u.id,c?.branch);if(!h)throw new Error("no deployments found");let g=c?.intervalMs??5e3,f=c?.timeoutMs??240*1e3,y=[],S=new Set,Ee=Date.now(),R=null;for(;Date.now()-Ee<f;){let xe=await L(o,e,h);for(let C of xe)S.has(C.id)||(S.add(C.id),y.push(C),c?.onLog?.(C));if(R=(await B(o,e,h)).status??null,c?.onStatus?.(R),R==="failed")return{deploymentId:h,status:R,logs:y};if(R==="running"||R==="deployed")return{deploymentId:h,status:R,logs:y};await new Promise(C=>setTimeout(C,g))}return{deploymentId:h,status:"timeout",logs:y}},"watch")},template:{status:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh});return M(o,e,u.id)},"status"),branches:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh});return _(o,e,u.id)},"branches"),update:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.environment==="preview"?"preview":"production";return H(o,e,u.id,{environment:h})},"update")},opentool:{recipesList:s(async(n={})=>F(o,e,n),"recipesList"),recipesSearch:s(async n=>G(o,e,n),"recipesSearch"),recipeGet:s(async n=>j(o,e,n),"recipeGet"),rulesGet:s(async n=>W(o,e,n),"rulesGet")},apps:{list:s(async n=>{let c=await Se({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:n?.forceRefresh});return n?.handle?c.filter(u=>u.handle===n.handle):c},"list"),tools:s(async n=>we({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:n?.forceRefresh}),"tools"),performance:s(async n=>ne(o,e,{appId:n?.appId}),"performance"),summary:s(async n=>oe(o,e,n.appId),"summary"),schedules:s(async n=>K(o,e,n.appId),"schedules"),schedulesStart:s(async n=>{let{appId:c,...u}=n;return z(o,e,c,u)},"schedulesStart"),schedulesStop:s(async n=>J(o,e,n.appId),"schedulesStop"),schedulesStopCurrent:s(async()=>$(o,e),"schedulesStopCurrent"),scheduleRunNow:s(async n=>V(o,e,n),"scheduleRunNow"),scheduleDelete:s(async n=>Y(o,e,n.appId,n.scheduleId),"scheduleDelete"),scheduleExecutionLogs:s(async n=>Q(o,e,n.scheduleId,{limit:n.limit}),"scheduleExecutionLogs"),scheduleExecutionLog:s(async n=>Z(o,e,n.runId),"scheduleExecutionLog"),deploymentScheduleExecutionLogs:s(async n=>X(o,e,n.deploymentId,{limit:n.limit}),"deploymentScheduleExecutionLogs"),executionTimeline:s(async n=>ee(o,e,n.appId,{limit:n.limit}),"executionTimeline"),assistantRun:s(async n=>ae(o,e,n),"assistantRun"),agentCreate:s(async(n,c)=>{let{refreshCache:u,...h}=n,g={...h,streamDeployLogs:h.streamDeployLogs??!0},f=await te(o,e,g);if(!f.ok){let S=await f.text().catch(()=>"");throw new Error(`agent create failed: ${f.status} ${S}`)}let y=await ft(f,c);if(l&&u!==!1)try{await m()}catch{}return y},"agentCreate"),toolsExecute:s(async n=>le(o,e,n),"toolsExecute"),deploy:s(async n=>E(o,e,n.appId,{environment:n.environment,commitSha:n.commitSha,branch:n.branch}),"deploy"),startApp:s(async n=>{let{appId:c,...u}=n;return b(o,e,c,u)},"startApp"),promotePreview:s(async n=>{let{appId:c,...u}=n;return x(o,e,c,u)},"promotePreview"),envGet:s(async n=>q(o,e,n.appId),"envGet"),envSet:s(async n=>N(o,e,n.appId,{envVars:n.envVars}),"envSet")},repo:{create:s(async n=>{let{refreshCache:c,...u}=n,h=await U(o,e,u);if(l&&c!==!1)try{await m()}catch{}return h},"create")},cache:{refresh:m}}}s(vn,"createClient");export{ie as DEFAULT_CACHE_TTL_MS,It as DEFAULT_LOCAL_PROFILE,w as DEFAULT_OPENPOND_API_BASE_URL,Ne as DEFAULT_OPENPOND_CHAT_API_BASE_URL,He as DEFAULT_OPENPOND_OPCHAT_API_BASE_URL,P as DEFAULT_OPENPOND_WEB_BASE_URL,vt as DEFAULT_PROFILE_AGENT,an as OPENPOND_MANIFEST_FILE_NAME,Ot as OpenPondProfileSetupRequiredError,Rt as OpenPondSandboxClient,Dt as PROFILE_MANIFEST,Bt as PROFILE_REPO_MANIFEST,Ct as SANDBOX_RUNTIME_PROFILE_IDS,ln as SANDBOX_TEMPLATE_BUILD_PLAN_FILE_NAME,pn as SANDBOX_TEMPLATE_BUILD_PLAN_KIND,rn as SANDBOX_TEMPLATE_PREVIEW_PORT_MAX,sn as SANDBOX_TEMPLATE_PREVIEW_PORT_MIN,cn as SandboxTemplateManifestSchema,un as SandboxTemplateValidationDiagnosticSchema,qe as apiFetch,Tt as assertOpenPondProfileActionReady,St as buildOpenPondProfileSetupGate,re as checkOpenPondApiHealth,wt as collectProfileSourceUploadEntries,tn as commitActiveProfileChanges,ke as commitFiles,rt as computeAtr,ot as computeBollinger,et as computeEma,A as computeEmaSeries,nt as computeMaCross,tt as computeMacd,st as computePriceChange,Xe as computeRsi,Ze as computeSma,T as computeSmaSeries,ft as consumeAgentCreateStream,de as consumeStream,te as createAgentFromPrompt,vn as createClient,Fe as createHeadlessApps,Ke as createLocalProject,At as createOpenPondSandboxClient,U as createRepo,_t as defaultLocalProfileRepoPath,gn as defineSandboxTemplate,Y as deleteOrArchiveSchedule,E as deployApp,H as deployLatestTemplate,Ht as emptyProfileState,pe as executeHostedTool,le as executeUserTool,Ge as fetchToolManifest,Pt as formatOpenPondProfileSetupRequirement,fn as formatSandboxTemplateDiagnostics,Je as formatStreamItem,q as getAppEnvironment,ee as getAppExecutionTimeline,oe as getAppRuntimeSummary,ce as getCachedApps,me as getCachedTools,be as getConfigPath,I as getDeploymentDetail,L as getDeploymentLogs,B as getDeploymentStatus,D as getLatestDeploymentForApp,ye as getOpChatModel,Ae as getOpChatProvider,se as getOpenPondAccount,j as getOpenToolRecipe,W as getOpenToolRules,Z as getScheduleExecutionLog,M as getTemplateStatus,ne as getUserPerformance,xt as hostedPublishStatusFromPayload,Lt as hostedRunStatusFromRunSummary,bt as hostedRunSummaryFromPayload,Et as hostedSourceCheckStatusFromPayload,Nt as initLocalProfileRepo,Vt as inspectOpenPondProfileSource,Ft as installAgentPackageIntoActiveProfile,K as listAppSchedules,v as listApps,Ie as listConfiguredProfiles,X as listDeploymentScheduleExecutionLogs,Ve as listHostedModels,Ye as listHostedProviders,ge as listOpChatModels,Re as listOpChatProviders,F as listOpenToolRecipes,Q as listScheduleExecutionLogs,_ as listTemplateBranches,k as listUserTools,De as loadConfig,Be as loadGlobalConfig,qt as loadLocalProfileRepo,Wt as loadOpenPondProfileLibrary,Gt as loadOpenPondProfileState,zt as loadOpenPondProfileStateForRef,Yt as loadOpenPondProfileStateFromSource,Mt as mergeActiveLocalProfileConfig,Ut as mergeProfileRepoManifestEntry,ze as normalizeDataFrames,yt as normalizeSandboxApiUrl,jt as openPondProfileRef,dn as parseSandboxTemplateYaml,je as postAgentDigest,on as prepareAgentSdkRuntimePackage,x as promotePreviewToProduction,kt as registerLocalProfileRepo,$t as removeOpenPondProfile,Kt as renameActiveProfileAgent,Qt as requireActiveLocalProfile,$e as resolveHostedChatApiBaseUrl,fe as resolveOpChatApiBaseUrl,We as resolveWorkerBaseUrl,Zt as runAgentSdkProjectCommand,ae as runAssistantMode,Qe as runOpChatSmoke,en as runProfileCheck,Xt as runProfileSdkCommand,V as runScheduleNow,Sn as sandboxTemplateBuildMetadata,Tn as sandboxTemplateBuildPlan,Rn as sandboxTemplateDurableVolume,On as sandboxTemplateExecutableEntries,Cn as sandboxTemplateFileInput,wn as sandboxTemplateJsonSchema,An as sandboxTemplatePreviewPort,yn as sandboxTemplateResources,Pn as sandboxTemplateScaffoldFiles,Me as saveConfig,_e as saveGlobalConfig,Ue as saveProfileApiKey,nn as saveProfilePushStatus,G as searchOpenToolRecipes,Jt as selectOpenPondProfile,Ce as sendHostedChatTurn,ve as setActiveProfile,ue as setCachedApps,he as setCachedTools,b as startAppLifecycle,z as startAppSchedules,J as stopAppSchedules,$ as stopCurrentAppSchedules,Oe as streamHostedChatTurn,N as updateAppEnvironment,Le as updateGlobalConfig,hn as validateSandboxTemplateManifest,mn as validateSandboxTemplateYaml};
@@ -1,2 +1,4 @@
1
- export declare function normalizeSandboxApiUrl(baseUrlOrApiUrl: string): string;
1
+ export declare function normalizeSandboxApiUrl(baseUrlOrApiUrl: string, options?: {
2
+ apiBaseUrl?: string;
3
+ }): string;
2
4
  export declare function apiRootUrlFromSandboxApiUrl(sandboxApiUrl: string): string;
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 OpenPond contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,168 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "license": "MIT",
4
+ "sourceRepository": "https://github.com/openpond/openpond",
5
+ "sourceDirectory": "apps/cli/skills",
6
+ "skills": [
7
+ {
8
+ "name": "openpond-cli",
9
+ "externalSupport": "CLI operations"
10
+ },
11
+ {
12
+ "name": "openpond-taskset-authoring",
13
+ "externalSupport": "CLI authoring and evaluation workflows"
14
+ },
15
+ {
16
+ "name": "openpond-agent-authoring",
17
+ "externalSupport": "CLI and Agent SDK source authoring"
18
+ },
19
+ {
20
+ "name": "openpond-skill-authoring",
21
+ "externalSupport": "Profile source authoring and packaged validation"
22
+ },
23
+ {
24
+ "name": "openpond-refiner-authoring",
25
+ "externalSupport": "Review Profile drafts; inspection and activation require Desktop tools"
26
+ }
27
+ ],
28
+ "package": "openpond",
29
+ "version": "0.2.63",
30
+ "sourceFiles": [
31
+ {
32
+ "path": "openpond-cli/SKILL.md",
33
+ "bytes": 4432,
34
+ "sha256": "30955d527bd8ef8001bf38b23ba0eb9ca63c886ef6a210edc99d518240c5e4f8"
35
+ },
36
+ {
37
+ "path": "openpond-cli/references/compact-resource-tables.md",
38
+ "bytes": 2953,
39
+ "sha256": "45e634f5636a27ecd165d5ff141b286851cb7fe69830b603fb9406e86c39220f"
40
+ },
41
+ {
42
+ "path": "openpond-cli/references/diagnose-and-improve.md",
43
+ "bytes": 3575,
44
+ "sha256": "c31f3f59576020f76c469c27c4ed85e18ae9b63a95ae6dd69b60c681529f9285"
45
+ },
46
+ {
47
+ "path": "openpond-cli/references/experiments-and-training.md",
48
+ "bytes": 27234,
49
+ "sha256": "cad7ddd3d9b8121fc7143e238698f75ce1a546784e234055bd2e3614b7696555"
50
+ },
51
+ {
52
+ "path": "openpond-taskset-authoring/SKILL.md",
53
+ "bytes": 7002,
54
+ "sha256": "3d3f1dc0520b9d276fc1d6b363c604b7b47c10685e1bcc3554977c6bad5b4b03"
55
+ },
56
+ {
57
+ "path": "openpond-taskset-authoring/artifact.json",
58
+ "bytes": 60044,
59
+ "sha256": "c38d055d389ddd57b62ef33e69ed1981c979644c3b229ea8c63219682b6065cf"
60
+ },
61
+ {
62
+ "path": "openpond-taskset-authoring/references/benchmarking.md",
63
+ "bytes": 1679,
64
+ "sha256": "10d7c02eb5fb9fc529fdd028bc033467acfca988df0ea1738e5077bf3ac077d6"
65
+ },
66
+ {
67
+ "path": "openpond-taskset-authoring/references/data-quality.md",
68
+ "bytes": 4273,
69
+ "sha256": "fe7745cef7f165b13e4542612477a6ee767025ec155aba3dbca9a6bf4a6e19bc"
70
+ },
71
+ {
72
+ "path": "openpond-taskset-authoring/references/failure-diagnosis.md",
73
+ "bytes": 6543,
74
+ "sha256": "1125b13de9a9d7bfb09c453333ef8857d5da03c376365ad4522bf07ffe62866d"
75
+ },
76
+ {
77
+ "path": "openpond-taskset-authoring/references/graders-and-rewards.md",
78
+ "bytes": 3602,
79
+ "sha256": "8f8adaee003d2ceabdd080bf6da642ca0a088109af1a8eb5ad922ec2d1406b3f"
80
+ },
81
+ {
82
+ "path": "openpond-taskset-authoring/references/method-selection.md",
83
+ "bytes": 1121,
84
+ "sha256": "13d6862ef01101ecb08435927a54eb6078eaa1f995ec097c75d075230e4f7623"
85
+ },
86
+ {
87
+ "path": "openpond-taskset-authoring/references/privacy-and-provenance.md",
88
+ "bytes": 819,
89
+ "sha256": "9d84220cf93037984ac871a5e7a7382368d6071f6a5a1d9d6fe529052891aafd"
90
+ },
91
+ {
92
+ "path": "openpond-taskset-authoring/references/task-design.md",
93
+ "bytes": 3520,
94
+ "sha256": "e64cd195f170e21e7ec7edf6439d3f50e27d26dcb5aebde567afdf7385ad2143"
95
+ },
96
+ {
97
+ "path": "openpond-agent-authoring/SKILL.md",
98
+ "bytes": 4405,
99
+ "sha256": "1b3bc0a62984e2244bfe78f64597bf0079049a151027955476a12007378a249c"
100
+ },
101
+ {
102
+ "path": "openpond-agent-authoring/references/action-and-chat-design.md",
103
+ "bytes": 925,
104
+ "sha256": "9fd3e430fd30102a83fc54c4e0a7a2f2fdeceec3df160553fad484509b22a699"
105
+ },
106
+ {
107
+ "path": "openpond-agent-authoring/references/integrations-and-setup.md",
108
+ "bytes": 829,
109
+ "sha256": "626fb1fb5896f93989f898a03161f3f0a72dbaf5ba48dff69be7ab04a58644ec"
110
+ },
111
+ {
112
+ "path": "openpond-agent-authoring/references/profile-layout.md",
113
+ "bytes": 1639,
114
+ "sha256": "783cf758610836a64c0f4c2320822f921c1f35faee0fde5570ae8e3f4d99fcf4"
115
+ },
116
+ {
117
+ "path": "openpond-agent-authoring/references/validation-and-repair.md",
118
+ "bytes": 1009,
119
+ "sha256": "d159e7fc3428b249f0609aab70749239a69a901a5c246e4da6a898d322cd84f9"
120
+ },
121
+ {
122
+ "path": "openpond-skill-authoring/SKILL.md",
123
+ "bytes": 3883,
124
+ "sha256": "8f4406e60b5961ac7f6abd994488c6e1534b05cb2a512eac8e7f862b5bca3466"
125
+ },
126
+ {
127
+ "path": "openpond-skill-authoring/references/copying-and-adaptation.md",
128
+ "bytes": 1220,
129
+ "sha256": "451aead982ec59ff57cfebc9c5fcba605559eae4e32f8e4ff33e0598ea9c23ad"
130
+ },
131
+ {
132
+ "path": "openpond-skill-authoring/references/skill-package-layout.md",
133
+ "bytes": 1355,
134
+ "sha256": "6fa67cc153972b74cb66cdb11435f6405f892c3ecd01a29a34576d9fbb1596c9"
135
+ },
136
+ {
137
+ "path": "openpond-skill-authoring/references/validation-and-repair.md",
138
+ "bytes": 1022,
139
+ "sha256": "a2914e7b15601f6dcdcd0bed03fd8be1bc0b561a156f2d53229d2f00b3a3587f"
140
+ },
141
+ {
142
+ "path": "openpond-skill-authoring/scripts/validate-skill.mjs",
143
+ "bytes": 4124,
144
+ "sha256": "5d5d5f816e64d361925c26db55426acdfa9c15e22853582e142cfb4f765255b0"
145
+ },
146
+ {
147
+ "path": "openpond-refiner-authoring/SKILL.md",
148
+ "bytes": 2751,
149
+ "sha256": "0e8b1881a31b6abc44811227851fb6caa55d25579981140ccc8846074834f120"
150
+ },
151
+ {
152
+ "path": "openpond-refiner-authoring/references/core-boundary.md",
153
+ "bytes": 502,
154
+ "sha256": "5ac2d6d6909b51ce819504673be896f43f032f8bd157e759b5604cf271695f99"
155
+ },
156
+ {
157
+ "path": "openpond-refiner-authoring/references/review-profile.md",
158
+ "bytes": 588,
159
+ "sha256": "56d648abea06b4eea6c9e13b04e4d1e2aa34efac3ffcf54f61edf61678b2015f"
160
+ },
161
+ {
162
+ "path": "openpond-refiner-authoring/references/validation-and-activation.md",
163
+ "bytes": 574,
164
+ "sha256": "a11fca1c4f7a84ccec05d83f6f48b865b72a2ec3852e17d30cf135717ee854f8"
165
+ }
166
+ ],
167
+ "licenseSha256": "4ff2b3e5998939bb3bca9a324012e79e2ba6f74d1887993e8b93c2e2b8597db7"
168
+ }
@@ -7,16 +7,22 @@ description: Create, improve, review, or repair source-backed OpenPond Profile A
7
7
 
8
8
  Create durable Agent source through a normal model turn. Do not create a Goal, Create/Improve run, plan/candidate lifecycle, worktree, or Apply step.
9
9
 
10
+ ## Execution interface
11
+
12
+ Inside OpenPond, use the Profile and Agent tools named below. In an external coding agent, first inspect `openpond profile current --json` and use its selected `sourcePath` as the Profile root. If no editable source is selected, request the intended source location or use `openpond profile load --path <repository>` only within the user's setup scope. Do not guess an app-data path.
13
+
14
+ Map `agent_inspect`, `agent_build`, `agent_validate`, `agent_eval`, and `agent_traces` to `openpond agent inspect|build|validate|eval|traces --cwd <agent-package> --json`. Run inspect, build, validate, then eval in order for the final check; there is no `openpond agent check` command. Read the installed command help and the package's SDK configuration before executing evals or actions; provider-backed behavior needs the user's execution scope and budget. `openpond profile catalog --json` refreshes the source view. Ordinary clarification uses the client's question mechanism.
15
+
10
16
  ## Workflow
11
17
 
12
- 1. Call `get_profile` first. Use only its selected, editable Profile root and the exact target Agent ID carried by the authoring intent.
18
+ 1. Resolve the selected Profile through the execution interface above (`get_profile` in OpenPond). Use only its selected, editable Profile root and the exact target Agent ID carried by the authoring intent.
13
19
  2. Inspect nearby Agent packages and the target Agent when improving one. Read relevant Profile settings and registration before editing.
14
20
  3. Ask one focused `ask_user` question only when a missing answer would materially change actions, behavior, integrations, setup, or output contracts.
15
21
  4. Create or edit the Agent SDK package directly beneath the selected Profile, normally `agents/<agent-id>`.
16
22
  5. Preserve unrelated dirty files and other Agents.
17
23
  6. Design the instructions, chat behavior, direct actions, schemas, integrations, setup requirements, evals, and user-facing documentation as one coherent Agent.
18
24
  7. Use `agent_inspect`, `agent_build`, `agent_validate`, `agent_eval`, `agent_run`, and `agent_traces` for SDK behavior. Do not hide SDK execution behind raw shell fragments.
19
- 8. Run `agent_check`. Repair the first failure and rerun until the complete check passes.
25
+ 8. Run `agent_check` in OpenPond, or the four CLI checks above externally. Repair the first failure and rerun until the complete check passes.
20
26
  9. Refresh and inspect the Profile catalog, then report changed files, public actions, check receipts, and any genuine blocker.
21
27
 
22
28
  Read [Profile and Agent layout](references/profile-layout.md) before creating or relocating source. Read [action and chat design](references/action-and-chat-design.md) while defining behavior. Read [integrations and setup](references/integrations-and-setup.md) when the Agent touches external systems. Read [validation and repair](references/validation-and-repair.md) before completion.
@@ -37,4 +43,4 @@ Read [Profile and Agent layout](references/profile-layout.md) before creating or
37
43
  - Never create Goal state, a hidden execution session, a candidate, or plan approval.
38
44
  - `agent_*` tools inspect, run, and validate; they do not own the authoring objective or write the Agent.
39
45
  - Do not weaken validation or evals to make checks pass.
40
- - Do not report success until `agent_check` passes against the active edited source.
46
+ - Do not report success until the supported complete check passes against the active edited source.
@@ -1,6 +1,6 @@
1
1
  # Profile and Agent Layout
2
2
 
3
- `get_profile` owns absolute path authority. Use this reference only for relative structure beneath the returned Profile source.
3
+ `get_profile` in OpenPond, or `openpond profile current --json` externally, owns absolute path authority. Use this reference only for relative structure beneath the returned Profile source.
4
4
 
5
5
  ```text
6
6
  openpond-profile.json
@@ -1,13 +1,13 @@
1
1
  # Validation and Repair
2
2
 
3
- Use the first-class Agent tools rather than raw SDK shell commands:
3
+ Inside OpenPond, use the first-class Agent tools. Externally, use the corresponding `openpond agent <operation> --cwd <agent-package> --json` commands described in the entrypoint:
4
4
 
5
5
  1. `agent_inspect` to confirm discovery, actions, source, and diagnostics.
6
6
  2. `agent_build` to refresh generated artifacts.
7
7
  3. `agent_validate` to enforce SDK contracts.
8
8
  4. `agent_eval` to run deterministic declared evals.
9
9
  5. `agent_run` and `agent_traces` when behavioral proof or failure diagnosis requires them.
10
- 6. `agent_check` as the mandatory final composite receipt.
10
+ 6. `agent_check` as the final composite receipt inside OpenPond; externally retain the successful inspect, build, validate, and eval results.
11
11
 
12
12
  `agent_check` runs inspect, build, validate, and eval in order and stops at the first failure. Repair the source, not the checker. Rerun until every step passes.
13
13
 
@@ -1,21 +1,38 @@
1
1
  ---
2
2
  name: openpond-cli
3
3
  description: Use the OpenPond CLI for datasets, graders, experiments, model training, repos, deployments, and tools.
4
- metadata:
5
- short-description: OpenPond CLI workflows
6
4
  ---
7
5
 
8
6
  # OpenPond CLI
9
7
 
10
8
  Use the official CLI for supported OpenPond operations, reusing its authentication and domain services. Check the installed command help before unfamiliar operations; use structured `--json` output and `--input-file` where supported.
11
9
 
12
- For dataset, grader, experiment, training, or learning-from-logs requests, read [Experiments and training](references/experiments-and-training.md). This guidance owns the conversational flow and useful inline presentation; the app supplies resource attachment and the compact experiment bar.
10
+ For dataset, grader, experiment, training, or learning-from-logs requests, read [Experiments and training](references/experiments-and-training.md). This guidance owns the conversational flow and useful inline presentation; the app supplies resource attachment and the Training picker and resource sidebar.
13
11
 
14
- ## Quick setup
12
+ ## App-scoped execution
13
+
14
+ In OpenPond chat, use the supplied scoped command executor and bundled prefix
15
+ `"$OPENPOND_CLI_NODE" "$OPENPOND_CLI_ENTRY"`. The app supplies its home,
16
+ authentication and resource association. Do not install another CLI, ask for a
17
+ login, or use the provider shell before trying this path. The answering assistant,
18
+ the evaluated model and the training base/checkpoint are separate selections.
19
+
20
+ ## Standalone setup
21
+
22
+ For a terminal outside the app, first check whether the running desktop already
23
+ has an account. Use its configured home with `--home <selected-home>` before diagnosing
24
+ missing authentication. The
25
+ following setup is for a new installation:
15
26
 
16
27
  - Install: `npm i -g openpond` (or `npx --package openpond openpond <cmd>`)
17
- - Auth: run `openpond login` or set `OPENPOND_API_KEY`
18
- - Non-interactive login: `openpond login --api-key opk_...`
28
+ - Check local context: `openpond --home <selected-home> home`, then `openpond --home <selected-home> profiles list`. The account listing reports credential presence, not successful authentication.
29
+ - Verify cloud access only when needed: `openpond --home <selected-home> account`. Use workspace IDs returned by the account or supplied by the Console; do not pick another workspace silently.
30
+ - If credentials are missing in the correct home, run interactive `openpond --home <selected-home> login` in a private terminal, or provide `OPENPOND_API_KEY` through the execution environment. Never put a real key in a prompt, command example, or source file.
31
+ - Local Profile inspection, source authoring, and validation do not require cloud login. Do not force cloud setup for local-only work.
32
+
33
+ External coding agents use their ordinary command/file tools and the installed `openpond` binary; app-only executors, environment prefixes, and resource attachments are available only inside OpenPond. Use `openpond profile current --json` for the selected Profile source, `openpond profile catalog --json` for its contents, and the authoring skill's external interface guidance. Do not invent app tool calls in an external client.
34
+
35
+ The canonical [setup guide](https://openpond.ai/agent-setup.md) covers client installation, updates, removal, and separate verification of skills, CLI, account, and workspace. Do not start inference, evaluations, training, publishing, or deployments as a setup check.
19
36
 
20
37
  ## Common workflows
21
38
 
@@ -48,4 +65,4 @@ Use the CLI to run OpenTool commands via `npx`:
48
65
  ## Config and URLs
49
66
 
50
67
  - Optional env vars: `OPENPOND_BASE_URL`, `OPENPOND_API_URL`, `OPENPOND_TOOL_URL`, `OPENPOND_API_KEY`
51
- - Cache file: `~/.openpond/cache.json` (auto-refreshes on next use)
68
+ - Home: stable defaults to `~/.openpond`; nightly to `~/.openpond-nightly`. `--home` or `OPENPOND_HOME` selects another home. Credentials are managed by the encrypted store; configuration lives in `config.toml` and disposable discovery caches in `cache/cache.sqlite`. Do not inspect or edit credential files directly.
@@ -1,10 +1,10 @@
1
1
  # Compact inline resource presentation
2
2
 
3
- The composer bar is the persistent resource control surface. Use it for dataset rows, graders, saved results and training actions. Inline responses explain the current work; they do not need to duplicate that inventory.
3
+ The composer’s Training picker selects the persistent Experiment or Model context. The right sidebar holds dataset rows, graders, saved results and training actions. Inline responses explain the current work; they do not need to duplicate that inventory.
4
4
 
5
5
  Simple read-only answers normally need prose only. Do not republish resource cards for every dataset or grader read. Creation, edits, completed checks and run results can produce saved receipts; related dataset and grader receipts should share one collapsed inspection entry.
6
6
 
7
- Choose the presentation that helps the request: a short sentence, a small HTML summary card, or a compact table when comparing or choosing records. No mandatory HTML template, fixed tabs or all-resources dashboard. A run-start card can show the run name, a brief state and a relevant supported action while its canonical reference also remains attached to the composer.
7
+ Choose the presentation that helps the request: a short sentence, a small HTML summary card, or a compact table when comparing or choosing records. No mandatory HTML template, fixed tabs or all-resources dashboard. A run-start card can show the run name, a brief state and a relevant supported action while its canonical reference also remains attached to the chat.
8
8
 
9
9
  Keep cards slim: one short header, minimal content, useful working actions, and secondary actions in an overflow menu. Do not expose raw IDs or repeat metadata as badge strips. For saved-record collections, use a simple table rather than stacked cards. If a table needs a title and actions, place them in its first header row, inside the table.
10
10
 
@@ -14,4 +14,4 @@ Only offer actions supported by the host. Dataset Select uses `data-openpond-res
14
14
 
15
15
  Use actual saved values. Do not present unavailable cost as zero, a mean score as pass rate, or a running training job as a completed model. Keep prose brief and avoid repeating the card as a list.
16
16
 
17
- Default to one compact result: dataset name, score or progress, and one relevant action. Do not add a chart plus a table plus a saved-input section for the same result. Show tables only when useful to the requested inspection or selection, with at most five visible body rows and local pagination (Show more) for the rest. Use tight cell padding, short labels and no repeated description beneath the name. Keep IDs, hashes, exact input pins and technical metadata in Details or the supported inspector. Keep primary labels to one or two action words (Run, Train, Improve, Add grader); use familiar icons with accessible labels for expand, download and overflow. The composer owns persistent configuration; do not duplicate it inline.
17
+ Default to one compact result: dataset name, score or progress, and one relevant action. Do not add a chart plus a table plus a saved-input section for the same result. Show tables only when useful to the requested inspection or selection, with at most five visible body rows and local pagination (Show more) for the rest. Use tight cell padding, short labels and no repeated description beneath the name. Keep IDs, hashes, exact input pins and technical metadata in Details or the supported inspector. Keep primary labels to one or two action words (Run, Train, Improve, Add grader); use familiar icons with accessible labels for expand, download and overflow. The resource sidebar owns persistent configuration; do not duplicate it inline.