openpond 0.2.69 → 0.2.71

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 (397) hide show
  1. package/dist/api/client-context.d.ts +4 -0
  2. package/dist/app-server.js +1 -1
  3. package/dist/chunks/{account-context-V3KLSNKS.js → account-context-LEZDNYMR.js} +1 -1
  4. package/dist/chunks/{acp-ER6CUXG2.js → acp-VWPJ2EL4.js} +1 -1
  5. package/dist/chunks/{acp-agent-AYJ5RPVF.js → acp-agent-OZHZMQ6R.js} +1 -1
  6. package/dist/chunks/{actions-command-BBUS3HDK.js → actions-command-AXGXBU75.js} +1 -1
  7. package/dist/chunks/{app-layer-JCEWGUDH.js → app-layer-OHPIYEOJ.js} +1 -1
  8. package/dist/chunks/{app-server-connected-apps-ILXBFD3S.js → app-server-connected-apps-NH4667QJ.js} +1 -1
  9. package/dist/chunks/{app-server-evaluations-RRLYWLPK.js → app-server-evaluations-Y5UEF2Y7.js} +1 -1
  10. package/dist/chunks/{app-server-harness-services-XXM336NU.js → app-server-harness-services-GUHAIIPS.js} +1 -1
  11. package/dist/chunks/app-server-runtime-CH5STRJP.js +2 -0
  12. package/dist/chunks/apps-DNLT6P4J.js +2 -0
  13. package/dist/chunks/{chunk-MOXIGLN2.js → chunk-23YW5PAQ.js} +1 -1
  14. package/dist/chunks/{chunk-ZDEIVUUI.js → chunk-27OJ2OLP.js} +1 -1
  15. package/dist/chunks/{chunk-RY46UPBO.js → chunk-2ACX7IW5.js} +1 -1
  16. package/dist/chunks/{chunk-NSSZ2ZIU.js → chunk-2EAZB2MW.js} +1 -1
  17. package/dist/chunks/{chunk-DRLP7GIU.js → chunk-2GEZ3ZY7.js} +1 -1
  18. package/dist/chunks/{chunk-PAYFJHPO.js → chunk-2PVW2XFF.js} +1 -1
  19. package/dist/chunks/{chunk-Y2WNZWT2.js → chunk-2Q6FTL4C.js} +1 -1
  20. package/dist/chunks/{chunk-KP2MYTP5.js → chunk-2QHB5P2K.js} +1 -1
  21. package/dist/chunks/{chunk-FNGZ4UDZ.js → chunk-33UVQ7DU.js} +1 -1
  22. package/dist/chunks/{chunk-M4ZHFDRJ.js → chunk-3JVZ7OCQ.js} +1 -1
  23. package/dist/chunks/{chunk-4BUM6JEC.js → chunk-3JYPUOK4.js} +1 -1
  24. package/dist/chunks/{chunk-DXJC3QW7.js → chunk-3VT2PPKW.js} +1 -1
  25. package/dist/chunks/{chunk-Z33RVGP6.js → chunk-5LKEVB2P.js} +1 -1
  26. package/dist/chunks/{chunk-P4QM63L3.js → chunk-5ZBDHIIE.js} +1 -1
  27. package/dist/chunks/{chunk-WD4KAKEX.js → chunk-64EDQ7UV.js} +1 -1
  28. package/dist/chunks/{chunk-UMAVVMXL.js → chunk-6BTX66SV.js} +1 -1
  29. package/dist/chunks/{chunk-KU4TPDPH.js → chunk-6LAGMWJE.js} +1 -1
  30. package/dist/chunks/{chunk-65FJWWXG.js → chunk-6YR5IYHH.js} +1 -1
  31. package/dist/chunks/{chunk-AUO5DCEU.js → chunk-73COPJ32.js} +1 -1
  32. package/dist/chunks/{chunk-KDER7R45.js → chunk-7PDF2UX2.js} +1 -1
  33. package/dist/chunks/{chunk-SO4GMSNP.js → chunk-7SOHV5BH.js} +1 -1
  34. package/dist/chunks/{chunk-XOPHFUUY.js → chunk-ASMQTMQB.js} +1 -1
  35. package/dist/chunks/{chunk-ESYPMD7Q.js → chunk-AT3ZYNX4.js} +1 -1
  36. package/dist/chunks/{chunk-NMMHXYDJ.js → chunk-AVEHWUML.js} +1 -1
  37. package/dist/chunks/{chunk-M4A7G4S5.js → chunk-B7SCVTE6.js} +1 -1
  38. package/dist/chunks/{chunk-7EQLW2KM.js → chunk-BLNEHU62.js} +1 -1
  39. package/dist/chunks/{chunk-DKOVZ6R2.js → chunk-BQNU4HZW.js} +1 -1
  40. package/dist/chunks/{chunk-UANH7U3Y.js → chunk-BTEBZYK3.js} +1 -1
  41. package/dist/chunks/{chunk-BU6MW65V.js → chunk-BYVE4TMU.js} +1 -1
  42. package/dist/chunks/{chunk-PNPV2LDE.js → chunk-BZS2PA4O.js} +1 -1
  43. package/dist/chunks/{chunk-AFYYIJ6K.js → chunk-C7NQPICU.js} +1 -1
  44. package/dist/chunks/{chunk-K7KBFM2T.js → chunk-CBD554GZ.js} +1 -1
  45. package/dist/chunks/{chunk-GYYJ47GX.js → chunk-CWE2N3JI.js} +1 -1
  46. package/dist/chunks/{chunk-ZYLLPRPU.js → chunk-CX4T7I47.js} +1 -1
  47. package/dist/chunks/{chunk-AQUZCWM3.js → chunk-D2V2Y3FB.js} +1 -1
  48. package/dist/chunks/chunk-DFZTRMTL.js +2 -0
  49. package/dist/chunks/{chunk-2PXKSAG6.js → chunk-DLOJG7LP.js} +1 -1
  50. package/dist/chunks/{chunk-5G7BQAUA.js → chunk-DNNWMOMG.js} +1 -1
  51. package/dist/chunks/{chunk-M5X7XKXY.js → chunk-DNRC6TPJ.js} +7 -7
  52. package/dist/chunks/{chunk-HKVFU3B3.js → chunk-DUR32LJG.js} +1 -1
  53. package/dist/chunks/{chunk-XT4CSKHM.js → chunk-E57PUTV2.js} +1 -1
  54. package/dist/chunks/{chunk-4N4EH3RJ.js → chunk-EJOV6Z6F.js} +1 -1
  55. package/dist/chunks/{chunk-OUJ63LMU.js → chunk-ER2VONWQ.js} +1 -1
  56. package/dist/chunks/{chunk-PSY6IRJE.js → chunk-ESOIZG2G.js} +4 -4
  57. package/dist/chunks/{chunk-WNXUSELC.js → chunk-EXAJ2B4I.js} +1 -1
  58. package/dist/chunks/{chunk-CCZ276IA.js → chunk-F2EUZG2W.js} +1 -1
  59. package/dist/chunks/{chunk-VJR2GNRY.js → chunk-FVMTQSVW.js} +1 -1
  60. package/dist/chunks/{chunk-YI6ME6PU.js → chunk-GG6PM7TB.js} +1 -1
  61. package/dist/chunks/{chunk-DDOIPTOM.js → chunk-GMA365GI.js} +1 -1
  62. package/dist/chunks/{chunk-JVMSN7LH.js → chunk-GR4MJJCE.js} +1 -1
  63. package/dist/chunks/{chunk-TB5P3FWM.js → chunk-GUWNSMGH.js} +1 -1
  64. package/dist/chunks/{chunk-AYOMVI7J.js → chunk-HIMG7S5E.js} +1 -1
  65. package/dist/chunks/{chunk-2LJCJOJ7.js → chunk-HLJJAOI2.js} +1 -1
  66. package/dist/chunks/{chunk-AFH462DO.js → chunk-HT6ILPD6.js} +1 -1
  67. package/dist/chunks/{chunk-3Z4VM2LF.js → chunk-HUMNLSCV.js} +1 -1
  68. package/dist/chunks/{chunk-NZDLL6JN.js → chunk-HYUTDZ3N.js} +1 -1
  69. package/dist/chunks/{chunk-XYZV3FKD.js → chunk-I6KTJ3GH.js} +1 -1
  70. package/dist/chunks/{chunk-WZ35ICTE.js → chunk-IFMWAOBR.js} +1 -1
  71. package/dist/chunks/{chunk-R2FYCJL6.js → chunk-IJJ7FYZE.js} +1 -1
  72. package/dist/chunks/{chunk-XHACK2KR.js → chunk-IUYGQO2K.js} +1 -1
  73. package/dist/chunks/{chunk-55YD4UTW.js → chunk-IV2HEX3I.js} +1 -1
  74. package/dist/chunks/chunk-J7X72QUY.js +2 -0
  75. package/dist/chunks/{chunk-U7X5ZLAL.js → chunk-JCHLDNCX.js} +1 -1
  76. package/dist/chunks/chunk-JF7WWLNW.js +2 -0
  77. package/dist/chunks/{chunk-7PKDJHT6.js → chunk-JH4RACOB.js} +1 -1
  78. package/dist/chunks/{chunk-65WRWLUD.js → chunk-JVEIK4RH.js} +1 -1
  79. package/dist/chunks/{chunk-Z5CQXPIS.js → chunk-K3WM4NEC.js} +1 -1
  80. package/dist/chunks/{chunk-EGP6DF34.js → chunk-KASHK2U5.js} +2 -2
  81. package/dist/chunks/{chunk-JEMECEQH.js → chunk-KHDCMVEJ.js} +1 -1
  82. package/dist/chunks/{chunk-BDZDWHBJ.js → chunk-KURL76NW.js} +1 -1
  83. package/dist/chunks/{chunk-7OFD6TFD.js → chunk-LMLGEOKV.js} +1 -1
  84. package/dist/chunks/{chunk-QUNQM2E3.js → chunk-MPEK4ZNY.js} +1 -1
  85. package/dist/chunks/chunk-MZKCW6CB.js +2 -0
  86. package/dist/chunks/{chunk-SDHG6CKU.js → chunk-NDNSLCPE.js} +1 -1
  87. package/dist/chunks/chunk-NK2L5HA2.js +2 -0
  88. package/dist/chunks/{chunk-WCNPGKST.js → chunk-O4YHISU2.js} +1 -1
  89. package/dist/chunks/{chunk-RCQYEHHD.js → chunk-O5ZOW474.js} +1 -1
  90. package/dist/chunks/{chunk-IIT66347.js → chunk-OEAKX5TS.js} +1 -1
  91. package/dist/chunks/{chunk-LSKMALD6.js → chunk-OFV26C2U.js} +2 -2
  92. package/dist/chunks/{chunk-IO5DZUKL.js → chunk-OI4DAZ4U.js} +1 -1
  93. package/dist/chunks/{chunk-Q73RKX7I.js → chunk-OIIE5GUK.js} +1 -1
  94. package/dist/chunks/{chunk-R6I623SZ.js → chunk-OKPV6MBX.js} +6 -6
  95. package/dist/chunks/{chunk-N5EAVX4G.js → chunk-OOKHHOIU.js} +1 -1
  96. package/dist/chunks/{chunk-MIFVX5PK.js → chunk-OQ4RWCYI.js} +1 -1
  97. package/dist/chunks/{chunk-RCRZXHAI.js → chunk-OTG77H7U.js} +1 -1
  98. package/dist/chunks/{chunk-7OKZCJHS.js → chunk-OXRN2257.js} +1 -1
  99. package/dist/chunks/{chunk-4KNPCJR4.js → chunk-PJJSQ4ZI.js} +1 -1
  100. package/dist/chunks/{chunk-7RSQOC5M.js → chunk-PXQZOVSV.js} +2 -2
  101. package/dist/chunks/chunk-QKGNAYSC.js +2 -0
  102. package/dist/chunks/{chunk-R4EEGWXB.js → chunk-QN4CFJQC.js} +1 -1
  103. package/dist/chunks/{chunk-V24VHT76.js → chunk-REGKOCDO.js} +1 -1
  104. package/dist/chunks/chunk-RJY4EI46.js +2 -0
  105. package/dist/chunks/{chunk-E2JB5OCO.js → chunk-RP4DPUN2.js} +1 -1
  106. package/dist/chunks/{chunk-QLGP2OAQ.js → chunk-SNBFWBJI.js} +1 -1
  107. package/dist/chunks/{chunk-G4FRBT7G.js → chunk-SRJTQS2D.js} +3 -3
  108. package/dist/chunks/{chunk-XY7HFXLH.js → chunk-SVLVIYH2.js} +1 -1
  109. package/dist/chunks/{chunk-NW6WGGSL.js → chunk-TCTBCAI6.js} +1 -1
  110. package/dist/chunks/{chunk-7NCM6GBN.js → chunk-TOWY6Y23.js} +1 -1
  111. package/dist/chunks/{chunk-VWWKWYSQ.js → chunk-TWLPZHH7.js} +1 -1
  112. package/dist/chunks/{chunk-Y4I6CFZJ.js → chunk-UGDBMRCT.js} +1 -1
  113. package/dist/chunks/{chunk-JQOVC35K.js → chunk-UKTPX2EE.js} +1 -1
  114. package/dist/chunks/{chunk-CO23RRN7.js → chunk-UMRQKE3W.js} +1 -1
  115. package/dist/chunks/{chunk-B66QCXH2.js → chunk-USKCFST5.js} +1 -1
  116. package/dist/chunks/{chunk-3A2Y7UK3.js → chunk-USTDWGR4.js} +1 -1
  117. package/dist/chunks/{chunk-EWDDDHJN.js → chunk-UZNRH6I3.js} +1 -1
  118. package/dist/chunks/{chunk-CIZI6Z7D.js → chunk-VMW23TIZ.js} +1 -1
  119. package/dist/chunks/{chunk-22RLEU3Q.js → chunk-VND53FAU.js} +1 -1
  120. package/dist/chunks/{chunk-4G3GTEVS.js → chunk-VSQPWLAG.js} +1 -1
  121. package/dist/chunks/{chunk-KCLMA2IH.js → chunk-VV4K5YPD.js} +1 -1
  122. package/dist/chunks/{chunk-7RJOCGQ6.js → chunk-WAUFXZ5B.js} +1 -1
  123. package/dist/chunks/{chunk-HG2YFMVU.js → chunk-WXG3G2O6.js} +1 -1
  124. package/dist/chunks/{chunk-PACLKDTN.js → chunk-XBAB3HMA.js} +1 -1
  125. package/dist/chunks/chunk-XJU47QS2.js +2 -0
  126. package/dist/chunks/{chunk-WGQ3FMRF.js → chunk-XKDOPNQ5.js} +1 -1
  127. package/dist/chunks/{chunk-EYTTZ5H4.js → chunk-XLZMSD5K.js} +1 -1
  128. package/dist/chunks/{chunk-Q7FBVLLB.js → chunk-XNPTLJ5Z.js} +1 -1
  129. package/dist/chunks/{chunk-ZIQJDTQB.js → chunk-XTT3K3TR.js} +1 -1
  130. package/dist/chunks/{chunk-Q7P34B2O.js → chunk-YFHQRDNQ.js} +1 -1
  131. package/dist/chunks/{chunk-UGFSAG4U.js → chunk-YG3HITOU.js} +1 -1
  132. package/dist/chunks/{chunk-DWF3FCY4.js → chunk-Z5R4OSGC.js} +1 -1
  133. package/dist/chunks/{chunk-JT5YQ52I.js → chunk-Z6HWSTEP.js} +1 -1
  134. package/dist/chunks/{chunk-4PUOWSDE.js → chunk-ZEOYNUHL.js} +1 -1
  135. package/dist/chunks/{chunk-2TGHZXJE.js → chunk-ZG3DBXQG.js} +1 -1
  136. package/dist/chunks/{chunk-4KTGYHCE.js → chunk-ZMRP2A7K.js} +1 -1
  137. package/dist/chunks/cli-5JARGJOD.js +2 -0
  138. package/dist/chunks/{command-LNOVZQSK.js → command-AI3SMEAH.js} +11 -11
  139. package/dist/chunks/{configuration-command-C3QBDFND.js → configuration-command-NPA46ZOT.js} +1 -1
  140. package/dist/chunks/connected-app-executor-DLC23O43.js +2 -0
  141. package/dist/chunks/connected-evidence-TVORI55Q.js +2 -0
  142. package/dist/chunks/{connected-starting-assets-5LAJ7CZY.js → connected-starting-assets-WGGBWH4K.js} +1 -1
  143. package/dist/chunks/{continual-FVOLGGOE.js → continual-UHQI2EQD.js} +1 -1
  144. package/dist/chunks/core-commands-QNZUBKOC.js +2 -0
  145. package/dist/chunks/{dataset-preparation-authoring-UUYFWWCT.js → dataset-preparation-authoring-OBMJLGA4.js} +1 -1
  146. package/dist/chunks/datasets-USJLJOEQ.js +2 -0
  147. package/dist/chunks/desktop-test-IYHAOR47.js +3 -0
  148. package/dist/chunks/{dist-2MKJC6HN.js → dist-C5XFRP53.js} +1 -1
  149. package/dist/chunks/evaluation-coordination-UJENK4WQ.js +2 -0
  150. package/dist/chunks/experiment-improvements-6GJMKIER.js +2 -0
  151. package/dist/chunks/experiments-FZHILSC6.js +2 -0
  152. package/dist/chunks/experiments-signal-E32CWBS4.js +2 -0
  153. package/dist/chunks/{help-PLQJOP4P.js → help-32DLAPJR.js} +1 -1
  154. package/dist/chunks/host-profile-evaluation-tools-QAV2UGSB.js +2 -0
  155. package/dist/chunks/{host-profile-external-dataset-KSEPXY2S.js → host-profile-external-dataset-C6ZPMTX6.js} +1 -1
  156. package/dist/chunks/{hosted-app-server-composition-GZES7QXJ.js → hosted-app-server-composition-5DVBKNV3.js} +1 -1
  157. package/dist/chunks/{hosted-experiment-improvement-VG2WE7XZ.js → hosted-experiment-improvement-YQ24C54D.js} +1 -1
  158. package/dist/chunks/hosted-harness-runtime-KLIORGWV.js +2 -0
  159. package/dist/chunks/{hosted-profile-candidate-PTGQLPZO.js → hosted-profile-candidate-RCWFLOVJ.js} +1 -1
  160. package/dist/chunks/{hosted-profile-compiler-FS5R6CHJ.js → hosted-profile-compiler-UDG4BCEW.js} +1 -1
  161. package/dist/chunks/{hosted-profile-evaluation-control-UUEZEMXU.js → hosted-profile-evaluation-control-4R3L4FTK.js} +1 -1
  162. package/dist/chunks/{hosted-profile-evaluation-inspection-4F7OEF4T.js → hosted-profile-evaluation-inspection-NA4SSY7N.js} +1 -1
  163. package/dist/chunks/{hosted-profile-evaluation-preparation-LIJJZDHQ.js → hosted-profile-evaluation-preparation-B4BW6JTB.js} +1 -1
  164. package/dist/chunks/{hosted-tasksets-V24IBVJX.js → hosted-tasksets-IUK3VWSL.js} +1 -1
  165. package/dist/chunks/human-review-D6QCZLYN.js +2 -0
  166. package/dist/chunks/{import-SI24Z7EF.js → import-UCG75PN5.js} +1 -1
  167. package/dist/chunks/{learning-Y3UKNUGE.js → learning-3XDYMYBE.js} +1 -1
  168. package/dist/chunks/learning-OR4CYV4B.js +2 -0
  169. package/dist/chunks/local-harness-improvement-runtime-GZBMBZB2.js +2 -0
  170. package/dist/chunks/local-harness-taskset-review-YVP2ZQJG.js +2 -0
  171. package/dist/chunks/{model-projects-6YWVD2TS.js → model-projects-POZRHXTF.js} +1 -1
  172. package/dist/chunks/opchat-APJUUTT7.js +3 -0
  173. package/dist/chunks/opchat-bounded-chat-PBUSUAY2.js +2 -0
  174. package/dist/chunks/organizations-WK6EZ6L3.js +2 -0
  175. package/dist/chunks/{profile-TD5U3INY.js → profile-BQMS7ALQ.js} +1 -1
  176. package/dist/chunks/project-action-payload-CGV77JSA.js +2 -0
  177. package/dist/chunks/project-agent-XVFYTEUQ.js +2 -0
  178. package/dist/chunks/{published-experiment-source-SDXUVPE7.js → published-experiment-source-2CYFIRBL.js} +1 -1
  179. package/dist/chunks/{refiner-profile-service-56VYLZQJ.js → refiner-profile-service-OLJHA4DI.js} +1 -1
  180. package/dist/chunks/{runtime-Q7JUJO4D.js → runtime-32KYSVZR.js} +1 -1
  181. package/dist/chunks/sandbox-command-OY3VZXGG.js +2 -0
  182. package/dist/chunks/{sandbox-template-GOY7QQUY.js → sandbox-template-YOOSJ4FK.js} +1 -1
  183. package/dist/chunks/saved-work-L4KNWLZB.js +2 -0
  184. package/dist/chunks/setup-EU6CMRXQ.js +2 -0
  185. package/dist/chunks/{src-C3ZUESMK.js → src-3DJR7OAH.js} +1 -1
  186. package/dist/chunks/{src-MT4B43TD.js → src-HYOTHMRX.js} +111 -113
  187. package/dist/chunks/{standalone-experiment-turn-owner-TW5MTWIO.js → standalone-experiment-turn-owner-UYPA6XHW.js} +1 -1
  188. package/dist/chunks/{store-chat-resources-IRHBW2EC.js → store-chat-resources-HISLEZZM.js} +1 -1
  189. package/dist/chunks/{store-continual-support-reviews-3KK42L4I.js → store-continual-support-reviews-ORWHS57V.js} +1 -1
  190. package/dist/chunks/{store-conversation-serving-IVURK52V.js → store-conversation-serving-5UGYKEGJ.js} +1 -1
  191. package/dist/chunks/{store-create-improve-UTCLBXF2.js → store-create-improve-APLPTVYQ.js} +1 -1
  192. package/dist/chunks/{store-datasets-4AQOVAQY.js → store-datasets-HDW6IYBL.js} +1 -1
  193. package/dist/chunks/{store-evaluation-results-PK2P3IMH.js → store-evaluation-results-KB2UDCF3.js} +1 -1
  194. package/dist/chunks/{store-harness-workspaces-YEXB4IRV.js → store-harness-workspaces-TKX5PZWP.js} +1 -1
  195. package/dist/chunks/{store-human-review-O4BVHP25.js → store-human-review-IURNTX3C.js} +1 -1
  196. package/dist/chunks/{store-learned-preference-migration-validation-44SVX6YB.js → store-learned-preference-migration-validation-TH2LKQWV.js} +1 -1
  197. package/dist/chunks/{store-learning-SIUQIY5C.js → store-learning-WLUW2PWE.js} +1 -1
  198. package/dist/chunks/{store-learning-credentials-BUHR7SN6.js → store-learning-credentials-FDKCEDHK.js} +1 -1
  199. package/dist/chunks/{store-local-experiments-BHVTKPPE.js → store-local-experiments-M4V5RLHJ.js} +1 -1
  200. package/dist/chunks/{store-model-batch-review-RVAYUVK2.js → store-model-batch-review-DDZLWVTG.js} +1 -1
  201. package/dist/chunks/{store-model-configuration-6L3OYXF4.js → store-model-configuration-ATOFA5OH.js} +1 -1
  202. package/dist/chunks/{store-model-project-preparation-AAEKCF6V.js → store-model-project-preparation-ZRSCQEQR.js} +1 -1
  203. package/dist/chunks/{store-modification-recordings-LCPK6K2T.js → store-modification-recordings-YJIDUPVJ.js} +1 -1
  204. package/dist/chunks/{store-preference-comparison-5YVIQNVB.js → store-preference-comparison-JKURBESE.js} +1 -1
  205. package/dist/chunks/{store-task-inbox-L6IQTY26.js → store-task-inbox-L53OT6ZC.js} +1 -1
  206. package/dist/chunks/{store-task-inventory-QWS2C656.js → store-task-inventory-R2JJGAHW.js} +1 -1
  207. package/dist/chunks/{store-taskset-drafts-FRFL6ITK.js → store-taskset-drafts-FPNJPFPO.js} +1 -1
  208. package/dist/chunks/{store-training-FYXZU2FE.js → store-training-DIBW7OMP.js} +1 -1
  209. package/dist/chunks/{store-training-jobs-3N3VKPIY.js → store-training-jobs-K7I4SXWW.js} +1 -1
  210. package/dist/chunks/{store-training-models-VOFVGPZR.js → store-training-models-LCSB37YY.js} +1 -1
  211. package/dist/chunks/{taskset-UDDLFYKV.js → taskset-XI5SJBJL.js} +1 -1
  212. package/dist/chunks/{taskset-packages-WMG5DUBN.js → taskset-packages-FUQWNTSB.js} +1 -1
  213. package/dist/chunks/{taskset-packages-T6B6HYKZ.js → taskset-packages-GM6IUOTY.js} +1 -1
  214. package/dist/chunks/{teams-bot-YCUTDDDC.js → teams-bot-CYC5TR64.js} +1 -1
  215. package/dist/chunks/{tool-learning-ZQ6NSJ5K.js → tool-learning-52QZIJIR.js} +1 -1
  216. package/dist/chunks/{training-5UMT45UL.js → training-GDLLLXSV.js} +1 -1
  217. package/dist/chunks/training-RL7UUBER.js +2 -0
  218. package/dist/chunks/training-UJ62NOJJ.js +2 -0
  219. package/dist/chunks/training-hardware-MR4FUC4U.js +3 -0
  220. package/dist/chunks/training-hosted-V5CHG3M3.js +2 -0
  221. package/dist/chunks/{training-hosted-alphaedit-HSMRDJTD.js → training-hosted-alphaedit-R5PVATV4.js} +1 -1
  222. package/dist/chunks/{training-hosted-decision-7JALOU6O.js → training-hosted-decision-WNK5DE3M.js} +1 -1
  223. package/dist/chunks/{training-hosted-engram-SXO75MFG.js → training-hosted-engram-ZQDOKXAV.js} +1 -1
  224. package/dist/chunks/{training-hosted-learning-E2N32YU5.js → training-hosted-learning-UEBGSSNC.js} +1 -1
  225. package/dist/chunks/{training-hosted-modification-comparison-TXFDJFTG.js → training-hosted-modification-comparison-KKI5CKOH.js} +1 -1
  226. package/dist/chunks/{training-hosted-neuron-training-J42WK4EH.js → training-hosted-neuron-training-CFWEDRSR.js} +1 -1
  227. package/dist/chunks/{training-hosted-serving-report-BAEABGJH.js → training-hosted-serving-report-N4NF5AVW.js} +1 -1
  228. package/dist/chunks/{training-hosted-steering-T556BUBG.js → training-hosted-steering-4MDUQ2YV.js} +1 -1
  229. package/dist/chunks/{training-model-start-P3PXDWNT.js → training-model-start-NOA6TYQK.js} +1 -1
  230. package/dist/chunks/{web-search-ZEKJHZW4.js → web-search-FTVNZ7PH.js} +1 -1
  231. package/dist/cli.js +2 -2
  232. package/dist/index.js +1 -1
  233. package/dist/skills/manifest.json +3 -3
  234. package/dist/skills/openpond-cli/references/experiments-and-training.md +19 -0
  235. package/dist/web/assets/App-L7RV4D0A.js +54 -0
  236. package/dist/web/assets/{AppDialog-CxjDHVk9.js → AppDialog-B2V84J7f.js} +1 -1
  237. package/dist/web/assets/{AppTerminalPanel-CKJIVpKa.js → AppTerminalPanel-DfYpUDKT.js} +2 -2
  238. package/dist/web/assets/{AppToastContext-EpiT1dHs.js → AppToastContext-DuiPouLz.js} +1 -1
  239. package/dist/web/assets/{AppsView-BsMyPX_3.js → AppsView-B20RHDCy.js} +1 -1
  240. package/dist/web/assets/{AttachmentTypeIcon-BXvZy5gB.js → AttachmentTypeIcon-l-GRNxaz.js} +1 -1
  241. package/dist/web/assets/{BrowserSidebar-BIIV4aq4.js → BrowserSidebar-Ce0ToS2O.js} +1 -1
  242. package/dist/web/assets/{CartesianChart-brqLBqnF.js → CartesianChart-CtfMRAfp.js} +1 -1
  243. package/dist/web/assets/{ChatTimelineEntry-CwZbn16X.js → ChatTimelineEntry-DzcucW20.js} +1 -1
  244. package/dist/web/assets/{CollaborationTabs-BU4uc4tZ.js → CollaborationTabs-BpmKjNAC.js} +1 -1
  245. package/dist/web/assets/{CommandMenu-DkWpXR55.js → CommandMenu-JXsoxijv.js} +1 -1
  246. package/dist/web/assets/{CommunityView-CsSxJZGn.js → CommunityView-ggdn8pcH.js} +1 -1
  247. package/dist/web/assets/{ComposerAttachments-BdJGCYzI.js → ComposerAttachments-BMmALUs_.js} +1 -1
  248. package/dist/web/assets/{ComposerCreateImproveStrip-CWy0j1vv.js → ComposerCreateImproveStrip-DcM1bkfu.js} +1 -1
  249. package/dist/web/assets/{ConversationImportsSettings-DCmiakbZ.js → ConversationImportsSettings-BKNeARHI.js} +1 -1
  250. package/dist/web/assets/{DatasetReviewImport-DEnF_pGu.js → DatasetReviewImport-DyFOE0Q0.js} +1 -1
  251. package/dist/web/assets/{ExperimentTrainingDataWorkspace-WhwQ0QBi.js → ExperimentTrainingDataWorkspace-CfOyoMrq.js} +2 -2
  252. package/dist/web/assets/{FilePagePreview-BRhhz99q.js → FilePagePreview-B7bWObJN.js} +2 -2
  253. package/dist/web/assets/{GetStartedView-CLVD-qEi.js → GetStartedView-BYbFl93M.js} +1 -1
  254. package/dist/web/assets/{GettingStartedDialog-CMxaAMg-.js → GettingStartedDialog-UgreDozV.js} +1 -1
  255. package/dist/web/assets/{HostedModelLearningReview-Cn-j-rDo.js → HostedModelLearningReview-C_kng2U_.js} +1 -1
  256. package/dist/web/assets/HostedModelLearningSettings-aesD_ifF.js +1 -0
  257. package/dist/web/assets/{HtmlVisual-D5y2WG9L.js → HtmlVisual-nvl1x-jh.js} +1 -1
  258. package/dist/web/assets/{LabModelVersionDetailPage-BxRmYD6h.js → LabModelVersionDetailPage-DrdoNvI-.js} +1 -1
  259. package/dist/web/assets/{LabModelWorkspace-u2Ulm_z4.js → LabModelWorkspace-CHlhzG3q.js} +1 -1
  260. package/dist/web/assets/{LabSkillSidebar-C7IceJTJ.js → LabSkillSidebar-CqHeZzoj.js} +1 -1
  261. package/dist/web/assets/{LabsRoute-CbztQaEf.js → LabsRoute-DzEbPpMK.js} +4 -4
  262. package/dist/web/assets/{LearningBatchesPage-CJqgZNvM.js → LearningBatchesPage-A2dFQW2j.js} +1 -1
  263. package/dist/web/assets/{MainChatThread-DNMfrrRq.js → MainChatThread-BSvKu4e5.js} +2 -2
  264. package/dist/web/assets/{MainPane-CQQxSDPS.js → MainPane-DiWIAxMj.js} +6 -6
  265. package/dist/web/assets/{ModelProjectPageHeader-Dge19aE1.js → ModelProjectPageHeader-lu6iRXHK.js} +1 -1
  266. package/dist/web/assets/{NativeSetupTerminal-D4JnbpyD.js → NativeSetupTerminal-kZ-nFPE8.js} +2 -2
  267. package/dist/web/assets/{NativeSkillSidebar-Jzx1BeKV.js → NativeSkillSidebar-DkkD1uH2.js} +1 -1
  268. package/dist/web/assets/{NewProjectDialog-DcnGzEd9.js → NewProjectDialog-Dg8dMEpc.js} +1 -1
  269. package/dist/web/assets/{OutputsPage-Cmk15Vt_.js → OutputsPage-Dz190U9t.js} +1 -1
  270. package/dist/web/assets/{PageChrome-Cz_fCqtn.js → PageChrome-Bncv-ps0.js} +1 -1
  271. package/dist/web/assets/{ProjectsPage-BZ3Eo3Mz.js → ProjectsPage-DVkYvLtd.js} +1 -1
  272. package/dist/web/assets/{RightChatPanelStack-C6H2vU9N.js → RightChatPanelStack-CP4leenI.js} +1 -1
  273. package/dist/web/assets/RightSidebarHomePanel-C0etQXpt.js +1 -0
  274. package/dist/web/assets/{ScheduledWorkPage-CAkSwM0T.js → ScheduledWorkPage-DI0mgt82.js} +1 -1
  275. package/dist/web/assets/{SettingsView-DvQXGw3_.js → SettingsView-cCtkr089.js} +3 -3
  276. package/dist/web/assets/{TasksetDraftEditorPrimitives-JuU1k8vr.js → TasksetDraftEditorPrimitives-DCQTuswJ.js} +1 -1
  277. package/dist/web/assets/{TeamChatView-DmHjr8W9.js → TeamChatView-BBEomfQ7.js} +1 -1
  278. package/dist/web/assets/{TerminalOverlay-DlaM9d8F.js → TerminalOverlay-Dj5NUDMp.js} +1 -1
  279. package/dist/web/assets/{TrainingCreationPanel-ClpylNsr.js → TrainingCreationPanel-Ds4PLfsd.js} +1 -1
  280. package/dist/web/assets/{TrainingDraftPanel-6tH2xSDj.js → TrainingDraftPanel-BAuh_BF3.js} +1 -1
  281. package/dist/web/assets/{UsageSettingsSection-CzDqxOYM.js → UsageSettingsSection-DbzeatcW.js} +1 -1
  282. package/dist/web/assets/WorkSidebarPanel-BaNuXoZc.js +1 -0
  283. package/dist/web/assets/{WorkspaceDiffPanel-B4e0lyF7.js → WorkspaceDiffPanel-xk-ve1MO.js} +3 -3
  284. package/dist/web/assets/{WorkspaceEnvironmentMenu-D01ZkZZF.js → WorkspaceEnvironmentMenu-D8GSuoYz.js} +1 -1
  285. package/dist/web/assets/{WorkspaceFileLocation-C5s_njZb.js → WorkspaceFileLocation-Dl8M2ZKN.js} +1 -1
  286. package/dist/web/assets/{WorkspaceGitDialogs-DjPZ6KIh.js → WorkspaceGitDialogs-9BhLjYx4.js} +1 -1
  287. package/dist/web/assets/{WorkspaceMonacoEditor-CC4sfOiU.js → WorkspaceMonacoEditor-DYPuC7pj.js} +3 -3
  288. package/dist/web/assets/{WorkspacePdfPreview-vszQqFa4.js → WorkspacePdfPreview-B7BI9tLR.js} +2 -2
  289. package/dist/web/assets/{WorkspacePresentationPreview-DQTvhaRD.js → WorkspacePresentationPreview-sP7JUT7m.js} +1 -1
  290. package/dist/web/assets/{bot-Doyx3T4j.js → bot-D7M8ZtE6.js} +1 -1
  291. package/dist/web/assets/{chat-resources-Beh5lB36.js → chat-resources-DhKAnljP.js} +1 -1
  292. package/dist/web/assets/chevron-down-BAEcJitl.js +1 -0
  293. package/dist/web/assets/chevron-right-3G9s2cQ9.js +1 -0
  294. package/dist/web/assets/chevron-up-DTYF52H1.js +1 -0
  295. package/dist/web/assets/{chunk-C3TS766N-ppRhs95p.js → chunk-C3TS766N-DENE60SE.js} +1 -1
  296. package/dist/web/assets/{client-choice-storage-DitqKiIT.js → client-choice-storage-DYZsrVr9.js} +1 -1
  297. package/dist/web/assets/{client-DwZ92xtu.js → client-gy7zrd7a.js} +1 -1
  298. package/dist/web/assets/{cloud-upload-HdzNTgr2.js → cloud-upload-De-XSMUr.js} +1 -1
  299. package/dist/web/assets/{copy-DTQhoBNg.js → copy-DEK20zbZ.js} +1 -1
  300. package/dist/web/assets/{cssMode-BRTtfXxU.js → cssMode-Dau-Fhqf.js} +1 -1
  301. package/dist/web/assets/{external-link-H1629UU6.js → external-link-DwDry0Fb.js} +1 -1
  302. package/dist/web/assets/{folder-open-CAGdWOrr.js → folder-open-DOb4AjV6.js} +1 -1
  303. package/dist/web/assets/{folder-plus-C14cs2mE.js → folder-plus-BAouDaXv.js} +1 -1
  304. package/dist/web/assets/{git-commit-horizontal-DFUfuVvF.js → git-commit-horizontal-DZbHXcai.js} +1 -1
  305. package/dist/web/assets/{htmlMode-BVaCcL76.js → htmlMode-DlNEe6hu.js} +1 -1
  306. package/dist/web/assets/{icons-Bk2b68aC.js → icons-OQhKVrDc.js} +1 -1
  307. package/dist/web/assets/{image-0DPVY6Ev.js → image-BkYJDChH.js} +1 -1
  308. package/dist/web/assets/{index-B6XX_0h3.js → index-M_h2Ok4V.js} +2 -2
  309. package/dist/web/assets/{info-C8b_tafZ.js → info-Mj5lp4Ic.js} +1 -1
  310. package/dist/web/assets/{jsonMode-BCKKQmmV.js → jsonMode-CyOEyonV.js} +1 -1
  311. package/dist/web/assets/loader-circle-DXVtGvuV.js +1 -0
  312. package/dist/web/assets/{lspLanguageFeatures-DozmNUOx.js → lspLanguageFeatures-DAYPzatg.js} +1 -1
  313. package/dist/web/assets/{maximize-2-CByk9-zN.js → maximize-2-BwFXSX6b.js} +1 -1
  314. package/dist/web/assets/{message-square-C889vRqm.js → message-square-C2nqfNLn.js} +1 -1
  315. package/dist/web/assets/{monaco.contribution-BITdsRbn.js → monaco.contribution-BZcNCJER.js} +2 -2
  316. package/dist/web/assets/{monaco.contribution-DxAV1oS5.js → monaco.contribution-BZkfRhss.js} +2 -2
  317. package/dist/web/assets/{monaco.contribution-BqA-XZ44.js → monaco.contribution-D7_X8TXe.js} +2 -2
  318. package/dist/web/assets/{monaco.contribution-B9q6qbbo.js → monaco.contribution-KyLdVay7.js} +2 -2
  319. package/dist/web/assets/{monitor-BtxlcLuI.js → monitor-B0Qj5Wea.js} +1 -1
  320. package/dist/web/assets/{paperclip-BeIdaspf.js → paperclip-CmrRruxi.js} +1 -1
  321. package/dist/web/assets/{pdf-perlzwEB.js → pdf-BM-9_48p.js} +1 -1
  322. package/dist/web/assets/play-CkACZ6Zo.js +1 -0
  323. package/dist/web/assets/plus-CB258e62.js +1 -0
  324. package/dist/web/assets/{presentation-0bzvu6_u.js → presentation-BYxhoSIo.js} +1 -1
  325. package/dist/web/assets/{python-B9hOnkOI.js → python-B3Mj03I5.js} +1 -1
  326. package/dist/web/assets/{refresh-cw-D61-Ozk3.js → refresh-cw-CwEmO71D.js} +1 -1
  327. package/dist/web/assets/{save-iEMNZoPe.js → save-S--FOuce.js} +1 -1
  328. package/dist/web/assets/{settings-lists-C84qxFmP.js → settings-lists-ChqDppMP.js} +1 -1
  329. package/dist/web/assets/square-BmPfHjGU.js +1 -0
  330. package/dist/web/assets/{square-terminal-Djpzo2Qs.js → square-terminal-CawpQtCi.js} +1 -1
  331. package/dist/web/assets/{submit-issue-command-HfKzyxg5.js → submit-issue-command-CFitxxmO.js} +1 -1
  332. package/dist/web/assets/{toggleHighContrast-ClsXu39R.js → toggleHighContrast-D-cMCvXx.js} +1 -1
  333. package/dist/web/assets/training-CzbWtx75.js +1 -0
  334. package/dist/web/assets/{training-model-data-CIysl8wH.js → training-model-data-G-D64935.js} +1 -1
  335. package/dist/web/assets/{tsMode-nbmaMc-D.js → tsMode-9kzS1ijG.js} +1 -1
  336. package/dist/web/assets/{upload-C6ug8RD-.js → upload-CtYsSYrM.js} +1 -1
  337. package/dist/web/assets/{useAccountSettings-Dr9h4Qz_.js → useAccountSettings-DYYa6puz.js} +1 -1
  338. package/dist/web/assets/{useAgentInventory-ByCk2JAv.js → useAgentInventory-c5B_Tszj.js} +1 -1
  339. package/dist/web/assets/{useChatContextSelection-C0eMm2g6.js → useChatContextSelection-DOISZpTz.js} +1 -1
  340. package/dist/web/assets/{useLocalAgentSchedules-Do0y_leJ.js → useLocalAgentSchedules-QJ8RsMKm.js} +1 -1
  341. package/dist/web/assets/{useQuery-D2MQ7e5U.js → useQuery-DuTGOe2b.js} +1 -1
  342. package/dist/web/assets/{wifi-off-Dr-CapyW.js → wifi-off-BOfP4Vmg.js} +1 -1
  343. package/dist/web/assets/{workers-DKvM2NdM.js → workers-BwGpyrdj.js} +1 -1
  344. package/dist/web/assets/x-5_iy6IDd.js +1 -0
  345. package/dist/web/assets/{yaml-C02vq4ar.js → yaml-BU4IWV_7.js} +1 -1
  346. package/dist/web/index.html +1 -1
  347. package/docs/command-reference.md +1 -0
  348. package/package.json +1 -1
  349. package/dist/chunks/app-server-runtime-43MCH5SY.js +0 -2
  350. package/dist/chunks/apps-VNFGMQFG.js +0 -2
  351. package/dist/chunks/chunk-6D3FI2XT.js +0 -2
  352. package/dist/chunks/chunk-APKXXAUF.js +0 -2
  353. package/dist/chunks/chunk-JCLTFDVW.js +0 -2
  354. package/dist/chunks/chunk-KTIBXRWQ.js +0 -2
  355. package/dist/chunks/chunk-VEBW7NKD.js +0 -2
  356. package/dist/chunks/chunk-YDZBX4XQ.js +0 -2
  357. package/dist/chunks/cli-R7TAP6Z2.js +0 -2
  358. package/dist/chunks/connected-app-executor-LAEAQUJS.js +0 -2
  359. package/dist/chunks/connected-evidence-VKY6O2JW.js +0 -2
  360. package/dist/chunks/core-commands-5TNBVR72.js +0 -2
  361. package/dist/chunks/datasets-BIDZJYDC.js +0 -2
  362. package/dist/chunks/desktop-test-BY2MS3UL.js +0 -3
  363. package/dist/chunks/evaluation-coordination-FXB4DXZA.js +0 -2
  364. package/dist/chunks/experiment-improvements-JPDLKZXD.js +0 -2
  365. package/dist/chunks/experiments-IEN7RXLX.js +0 -2
  366. package/dist/chunks/experiments-signal-L32D36NH.js +0 -2
  367. package/dist/chunks/host-profile-evaluation-tools-UF4ATIUF.js +0 -2
  368. package/dist/chunks/hosted-harness-runtime-MMTLCL23.js +0 -2
  369. package/dist/chunks/human-review-6V6EMNVN.js +0 -2
  370. package/dist/chunks/learning-LAXMGWSQ.js +0 -2
  371. package/dist/chunks/local-harness-improvement-runtime-3YJQRYXC.js +0 -2
  372. package/dist/chunks/local-harness-taskset-review-XQHQ6JCR.js +0 -2
  373. package/dist/chunks/opchat-SV67HVMX.js +0 -3
  374. package/dist/chunks/opchat-bounded-chat-KLMIYSZZ.js +0 -2
  375. package/dist/chunks/organizations-OZZFX7RG.js +0 -2
  376. package/dist/chunks/project-action-payload-TK6G4VMC.js +0 -2
  377. package/dist/chunks/project-agent-FFXPNXCO.js +0 -2
  378. package/dist/chunks/sandbox-command-4BCUDAED.js +0 -2
  379. package/dist/chunks/saved-work-M6PUHKCC.js +0 -2
  380. package/dist/chunks/setup-RMZ2BHLM.js +0 -2
  381. package/dist/chunks/training-5NT2YB2L.js +0 -2
  382. package/dist/chunks/training-UY6KRG4M.js +0 -2
  383. package/dist/chunks/training-hardware-UWQCRDMV.js +0 -3
  384. package/dist/chunks/training-hosted-CKSDRVL6.js +0 -2
  385. package/dist/web/assets/App-CCuh99JW.js +0 -54
  386. package/dist/web/assets/HostedModelLearningSettings-VNBvf38S.js +0 -1
  387. package/dist/web/assets/RightSidebarHomePanel-BfMMVkM1.js +0 -1
  388. package/dist/web/assets/WorkSidebarPanel-CY-AHZ4-.js +0 -1
  389. package/dist/web/assets/chevron-down-DX1hzujj.js +0 -1
  390. package/dist/web/assets/chevron-right-DHN0y3KC.js +0 -1
  391. package/dist/web/assets/chevron-up-_QrW88NF.js +0 -1
  392. package/dist/web/assets/loader-circle-y-SSPwpk.js +0 -1
  393. package/dist/web/assets/play-CHXXdkuO.js +0 -1
  394. package/dist/web/assets/plus-DFFWjhPw.js +0 -1
  395. package/dist/web/assets/square-BE_4JMR3.js +0 -1
  396. package/dist/web/assets/training-DWfghwfZ.js +0 -1
  397. package/dist/web/assets/x-Jx2jlP9u.js +0 -1
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{b as a,c as b}from"./chunk-CX4T7I47.js";import"./chunk-XLZMSD5K.js";import"./chunk-SVLVIYH2.js";import"./chunk-6I5AUTVO.js";import"./chunk-BQNU4HZW.js";import"./chunk-AFKFN25T.js";import"./chunk-G4747MOW.js";import"./chunk-KCJVFLBB.js";import"./chunk-OFJPOTES.js";import"./chunk-WXG3G2O6.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-OXRN2257.js";import"./chunk-UTIELP6F.js";import"./chunk-TOWY6Y23.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-LZPCA6DH.js";import"./chunk-L3KS6MOV.js";import"./chunk-7J2NMUTK.js";import"./chunk-NK2L5HA2.js";import"./chunk-W45RKGM6.js";import"./chunk-73COPJ32.js";import"./chunk-UGDBMRCT.js";import"./chunk-EDYCSW22.js";import"./chunk-Z6HWSTEP.js";import"./chunk-XGY4OQLC.js";import"./chunk-2PVW2XFF.js";import"./chunk-64EDQ7UV.js";import"./chunk-DLOJG7LP.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-JXLDEYRW.js";import"./chunk-GR4MJJCE.js";import"./chunk-GG6PM7TB.js";import"./chunk-2GEZ3ZY7.js";import"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{a as loadHostedHarnessRuntime,b as loadHostedHarnessRuntimeForSession};
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a,e as F}from"./chunk-ZDEIVUUI.js";import{a as h}from"./chunk-TPOAAJKA.js";import{a as D}from"./chunk-65FJWWXG.js";import{j as I,m as M,n as O}from"./chunk-DKOVZ6R2.js";import"./chunk-AFKFN25T.js";import"./chunk-G4747MOW.js";import"./chunk-KCJVFLBB.js";import{z as w}from"./chunk-OFJPOTES.js";import"./chunk-HG2YFMVU.js";import"./chunk-OQPJ7FJF.js";import{a as A}from"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-7OKZCJHS.js";import"./chunk-UTIELP6F.js";import"./chunk-7NCM6GBN.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-LZPCA6DH.js";import"./chunk-L3KS6MOV.js";import"./chunk-7J2NMUTK.js";import"./chunk-VEBW7NKD.js";import"./chunk-W45RKGM6.js";import"./chunk-AUO5DCEU.js";import"./chunk-Y4I6CFZJ.js";import"./chunk-EDYCSW22.js";import"./chunk-JT5YQ52I.js";import"./chunk-XGY4OQLC.js";import"./chunk-PAYFJHPO.js";import"./chunk-WD4KAKEX.js";import"./chunk-2PXKSAG6.js";import"./chunk-ULTV6INR.js";import"./chunk-WGQ3FMRF.js";import"./chunk-JXLDEYRW.js";import"./chunk-JVMSN7LH.js";import"./chunk-YI6ME6PU.js";import"./chunk-DRLP7GIU.js";import"./chunk-BU6MW65V.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-DXJC3QW7.js";import"./chunk-P4QM63L3.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-4PUOWSDE.js";import"./chunk-ZY32SZ2P.js";import{u as R}from"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{l as C,m as v}from"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import{A as c}from"./chunk-X2J2P5ZT.js";import{a as f}from"./chunk-FTQLQJQV.js";import{promises as m}from"node:fs";import n from"node:path";var $=c.object({action:c.enum(["stage","readback","rollback"]),repoPath:c.string(),outputDir:c.string(),exportFile:c.string(),commit:c.string().regex(/^[a-f0-9]{40}$/).optional(),expectedExecutableSourceHash:c.string().regex(/^[a-f0-9]{64}$/).optional()}).strict();async function z(l){let e=$.parse(l);if(!n.isAbsolute(e.repoPath)||!n.isAbsolute(e.outputDir)||!/^[a-zA-Z0-9_-]+\.json$/.test(e.exportFile))throw new Error("Hosted candidate private IPC is not contained.");let g=n.join(e.outputDir,e.exportFile),H=await m.lstat(g);if(!H.isFile()||H.isSymbolicLink()||H.size>8*1024*1024)throw new Error("Hosted candidate export exceeds its private IPC bound.");let t=D(JSON.parse(await m.readFile(g,"utf8"))),u=await w({repoPath:e.repoPath,profileId:t.profileRef.profileId});if(u.error||!u.sourcePath)throw new Error("Actual hosted Profile source is unavailable.");if(e.action!=="readback"){let o=!1;try{await a(e.repoPath,["symbolic-ref","-q","HEAD"]),o=!0}catch{}if(o||await a(e.repoPath,["rev-parse","HEAD"])!==(e.action==="rollback"?e.commit:t.expectedCommit)||await a(e.repoPath,["status","--porcelain","--untracked-files=all"]))throw new Error("Candidate staging requires a clean detached exact original source worktree.")}let x=f(async o=>I({storeDir:e.outputDir,workspaceId:t.compiler.workspaceId,name:t.compiler.name,profile:await w({repoPath:e.repoPath,profileId:t.profileRef.profileId}),sourceRevision:o,repositoryId:t.compiler.repositoryId}),"compile");if(e.action==="readback"){if(!e.commit||await a(e.repoPath,["rev-parse","HEAD"])!==e.commit)throw new Error("Hosted Profile readback is not the committed source.");let o=await x(e.commit),i=h(o);if(i.profileGitHead!==e.commit||i.contentHash!==(e.expectedExecutableSourceHash??t.executableSourceHash)||i.protectedClosureHash!==t.protectedClosureHash)throw new Error("Hosted active executable differs from the actual tested candidate.");let s=await O({storeDir:e.outputDir,workspaceId:t.compiler.workspaceId,compiled:o,createdAt:t.createdAt});return{commit:e.commit,activeRelease:{id:s.harnessRelease.id,contentHash:s.harnessRelease.contentHash},executableSourceHash:i.contentHash,protectedClosureHash:i.protectedClosureHash}}if(e.action==="rollback"){if(!e.commit)throw new Error("Rollback requires the exact accepted commit.");await a(e.repoPath,["-c","core.hooksPath=/dev/null","revert","--no-commit",e.commit])}let p=await x(t.expectedCommit);if(p.harnessRelease.contentHash!==t.baseRelease.contentHash||p.harnessRelease.id!==t.baseRelease.id)throw new Error("Hosted original source differs from the owner-attested baseline release.");if(e.action==="stage"){let o=Buffer.from(t.sourceManifest.base64,"base64");if(o.toString("base64")!==t.sourceManifest.base64||o.length!==t.sourceManifest.sizeBytes||v(o)!==t.sourceManifest.contentHash)throw new Error("Candidate source manifest byte identity differs.");let i=A.parse(JSON.parse(o.toString("utf8"))),s=n.join(e.outputDir,"candidate-source");await m.mkdir(s,{recursive:!0}),await m.writeFile(n.join(s,"harness.json"),C(i));let _=R(t.policySource),j=new Map(p.sourceFiles.filter(r=>r.asset.visibility!=="policy").map(r=>[r.path,r]));for(let r of i.files){let k=r.visibility==="policy"?_.get(r.path):j.get(r.path)?.bytes;if(!k)throw new Error("The hosted source cannot hydrate the exact protected candidate closure.");let y=n.join(s,r.path);if(n.relative(s,y).startsWith(".."))throw new Error("Candidate release path escapes private staging.");await m.mkdir(n.dirname(y),{recursive:!0}),await m.writeFile(y,k)}let P=await M({workspaceId:t.compiler.workspaceId,sourceDir:s}),S=h(P);if(P.harnessRelease.contentHash!==t.policySource.harnessRelease.contentHash||S.contentHash!==t.executableSourceHash||S.protectedClosureHash!==t.protectedClosureHash)throw new Error("Owner-attested candidate differs from independently compiled hosted source.");await F({source:u.sourcePath,state:{component:t.component},base:p,candidate:P,profile:u})}await a(e.repoPath,["add","--all"]),await a(e.repoPath,["-c","core.hooksPath=/dev/null","-c","commit.gpgSign=false","commit","-m",`${e.action==="rollback"?"Roll back":"Adopt"} owner-tested candidate ${t.candidateId}`],{GIT_AUTHOR_NAME:"OpenPond",GIT_AUTHOR_EMAIL:"profile-candidate@openpond.local",GIT_COMMITTER_NAME:"OpenPond",GIT_COMMITTER_EMAIL:"profile-candidate@openpond.local"});let E=await a(e.repoPath,["rev-parse","HEAD"]),T=await w({repoPath:e.repoPath,profileId:t.profileRef.profileId}),b=await I({storeDir:e.outputDir,workspaceId:t.compiler.workspaceId,name:t.compiler.name,profile:T,sourceRevision:E,repositoryId:t.compiler.repositoryId}),d=h(b);if(e.action==="stage"&&(d.contentHash!==t.executableSourceHash||d.protectedClosureHash!==t.protectedClosureHash)||e.action==="rollback"&&(d.contentHash!==h(p).contentHash||d.protectedClosureHash!==h(p).protectedClosureHash))throw new Error("Staged actual source differs from its exact tested executable graph.");return{commit:E,activeRelease:{id:b.harnessRelease.id,contentHash:b.harnessRelease.contentHash},executableSourceHash:d.contentHash,protectedClosureHash:d.protectedClosureHash}}f(z,"hostedProfileCandidate");async function Q(l){if(l.length!==1||l[0].length>16e3||!/^[a-zA-Z0-9_-]+$/.test(l[0]))throw new Error("Hosted candidate IPC argument is invalid.");process.stdout.write(`${JSON.stringify(await z(JSON.parse(Buffer.from(l[0],"base64url").toString("utf8"))))}
2
+ import{a,e as F}from"./chunk-27OJ2OLP.js";import{a as h}from"./chunk-TPOAAJKA.js";import{a as D}from"./chunk-6YR5IYHH.js";import{j as I,m as M,n as O}from"./chunk-BQNU4HZW.js";import"./chunk-AFKFN25T.js";import"./chunk-G4747MOW.js";import"./chunk-KCJVFLBB.js";import{z as w}from"./chunk-OFJPOTES.js";import"./chunk-WXG3G2O6.js";import"./chunk-OQPJ7FJF.js";import{a as A}from"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-OXRN2257.js";import"./chunk-UTIELP6F.js";import"./chunk-TOWY6Y23.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-LZPCA6DH.js";import"./chunk-L3KS6MOV.js";import"./chunk-7J2NMUTK.js";import"./chunk-NK2L5HA2.js";import"./chunk-W45RKGM6.js";import"./chunk-73COPJ32.js";import"./chunk-UGDBMRCT.js";import"./chunk-EDYCSW22.js";import"./chunk-Z6HWSTEP.js";import"./chunk-XGY4OQLC.js";import"./chunk-2PVW2XFF.js";import"./chunk-64EDQ7UV.js";import"./chunk-DLOJG7LP.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-JXLDEYRW.js";import"./chunk-GR4MJJCE.js";import"./chunk-GG6PM7TB.js";import"./chunk-2GEZ3ZY7.js";import"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import{u as R}from"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{l as C,m as v}from"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import{A as c}from"./chunk-X2J2P5ZT.js";import{a as f}from"./chunk-FTQLQJQV.js";import{promises as m}from"node:fs";import n from"node:path";var $=c.object({action:c.enum(["stage","readback","rollback"]),repoPath:c.string(),outputDir:c.string(),exportFile:c.string(),commit:c.string().regex(/^[a-f0-9]{40}$/).optional(),expectedExecutableSourceHash:c.string().regex(/^[a-f0-9]{64}$/).optional()}).strict();async function z(l){let e=$.parse(l);if(!n.isAbsolute(e.repoPath)||!n.isAbsolute(e.outputDir)||!/^[a-zA-Z0-9_-]+\.json$/.test(e.exportFile))throw new Error("Hosted candidate private IPC is not contained.");let g=n.join(e.outputDir,e.exportFile),H=await m.lstat(g);if(!H.isFile()||H.isSymbolicLink()||H.size>8*1024*1024)throw new Error("Hosted candidate export exceeds its private IPC bound.");let t=D(JSON.parse(await m.readFile(g,"utf8"))),u=await w({repoPath:e.repoPath,profileId:t.profileRef.profileId});if(u.error||!u.sourcePath)throw new Error("Actual hosted Profile source is unavailable.");if(e.action!=="readback"){let o=!1;try{await a(e.repoPath,["symbolic-ref","-q","HEAD"]),o=!0}catch{}if(o||await a(e.repoPath,["rev-parse","HEAD"])!==(e.action==="rollback"?e.commit:t.expectedCommit)||await a(e.repoPath,["status","--porcelain","--untracked-files=all"]))throw new Error("Candidate staging requires a clean detached exact original source worktree.")}let x=f(async o=>I({storeDir:e.outputDir,workspaceId:t.compiler.workspaceId,name:t.compiler.name,profile:await w({repoPath:e.repoPath,profileId:t.profileRef.profileId}),sourceRevision:o,repositoryId:t.compiler.repositoryId}),"compile");if(e.action==="readback"){if(!e.commit||await a(e.repoPath,["rev-parse","HEAD"])!==e.commit)throw new Error("Hosted Profile readback is not the committed source.");let o=await x(e.commit),i=h(o);if(i.profileGitHead!==e.commit||i.contentHash!==(e.expectedExecutableSourceHash??t.executableSourceHash)||i.protectedClosureHash!==t.protectedClosureHash)throw new Error("Hosted active executable differs from the actual tested candidate.");let s=await O({storeDir:e.outputDir,workspaceId:t.compiler.workspaceId,compiled:o,createdAt:t.createdAt});return{commit:e.commit,activeRelease:{id:s.harnessRelease.id,contentHash:s.harnessRelease.contentHash},executableSourceHash:i.contentHash,protectedClosureHash:i.protectedClosureHash}}if(e.action==="rollback"){if(!e.commit)throw new Error("Rollback requires the exact accepted commit.");await a(e.repoPath,["-c","core.hooksPath=/dev/null","revert","--no-commit",e.commit])}let p=await x(t.expectedCommit);if(p.harnessRelease.contentHash!==t.baseRelease.contentHash||p.harnessRelease.id!==t.baseRelease.id)throw new Error("Hosted original source differs from the owner-attested baseline release.");if(e.action==="stage"){let o=Buffer.from(t.sourceManifest.base64,"base64");if(o.toString("base64")!==t.sourceManifest.base64||o.length!==t.sourceManifest.sizeBytes||v(o)!==t.sourceManifest.contentHash)throw new Error("Candidate source manifest byte identity differs.");let i=A.parse(JSON.parse(o.toString("utf8"))),s=n.join(e.outputDir,"candidate-source");await m.mkdir(s,{recursive:!0}),await m.writeFile(n.join(s,"harness.json"),C(i));let _=R(t.policySource),j=new Map(p.sourceFiles.filter(r=>r.asset.visibility!=="policy").map(r=>[r.path,r]));for(let r of i.files){let k=r.visibility==="policy"?_.get(r.path):j.get(r.path)?.bytes;if(!k)throw new Error("The hosted source cannot hydrate the exact protected candidate closure.");let y=n.join(s,r.path);if(n.relative(s,y).startsWith(".."))throw new Error("Candidate release path escapes private staging.");await m.mkdir(n.dirname(y),{recursive:!0}),await m.writeFile(y,k)}let P=await M({workspaceId:t.compiler.workspaceId,sourceDir:s}),S=h(P);if(P.harnessRelease.contentHash!==t.policySource.harnessRelease.contentHash||S.contentHash!==t.executableSourceHash||S.protectedClosureHash!==t.protectedClosureHash)throw new Error("Owner-attested candidate differs from independently compiled hosted source.");await F({source:u.sourcePath,state:{component:t.component},base:p,candidate:P,profile:u})}await a(e.repoPath,["add","--all"]),await a(e.repoPath,["-c","core.hooksPath=/dev/null","-c","commit.gpgSign=false","commit","-m",`${e.action==="rollback"?"Roll back":"Adopt"} owner-tested candidate ${t.candidateId}`],{GIT_AUTHOR_NAME:"OpenPond",GIT_AUTHOR_EMAIL:"profile-candidate@openpond.local",GIT_COMMITTER_NAME:"OpenPond",GIT_COMMITTER_EMAIL:"profile-candidate@openpond.local"});let E=await a(e.repoPath,["rev-parse","HEAD"]),T=await w({repoPath:e.repoPath,profileId:t.profileRef.profileId}),b=await I({storeDir:e.outputDir,workspaceId:t.compiler.workspaceId,name:t.compiler.name,profile:T,sourceRevision:E,repositoryId:t.compiler.repositoryId}),d=h(b);if(e.action==="stage"&&(d.contentHash!==t.executableSourceHash||d.protectedClosureHash!==t.protectedClosureHash)||e.action==="rollback"&&(d.contentHash!==h(p).contentHash||d.protectedClosureHash!==h(p).protectedClosureHash))throw new Error("Staged actual source differs from its exact tested executable graph.");return{commit:E,activeRelease:{id:b.harnessRelease.id,contentHash:b.harnessRelease.contentHash},executableSourceHash:d.contentHash,protectedClosureHash:d.protectedClosureHash}}f(z,"hostedProfileCandidate");async function Q(l){if(l.length!==1||l[0].length>16e3||!/^[a-zA-Z0-9_-]+$/.test(l[0]))throw new Error("Hosted candidate IPC argument is invalid.");process.stdout.write(`${JSON.stringify(await z(JSON.parse(Buffer.from(l[0],"base64url").toString("utf8"))))}
3
3
  `)}f(Q,"runHostedProfileCandidateCli");export{z as hostedProfileCandidate,Q as runHostedProfileCandidateCli};
@@ -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}from"./chunk-EGP6DF34.js";import"./chunk-DKOVZ6R2.js";import"./chunk-AFKFN25T.js";import"./chunk-G4747MOW.js";import"./chunk-KCJVFLBB.js";import"./chunk-OFJPOTES.js";import"./chunk-BL3CZWWD.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-LZPCA6DH.js";import"./chunk-L3KS6MOV.js";import"./chunk-XGY4OQLC.js";import"./chunk-WD4KAKEX.js";import"./chunk-2PXKSAG6.js";import"./chunk-ULTV6INR.js";import"./chunk-WGQ3FMRF.js";import"./chunk-BU6MW65V.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-DXJC3QW7.js";import"./chunk-P4QM63L3.js";import"./chunk-MTP3B2SU.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-4PUOWSDE.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-GY7YSD6J.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{a as compileHostedProfileRelease,b as runHostedProfileCompilerCli,c as runHostedProfileEvaluationCli,d as runHostedProfileInspectionCli};
2
+ import{a,b,c,d}from"./chunk-KASHK2U5.js";import"./chunk-BQNU4HZW.js";import"./chunk-AFKFN25T.js";import"./chunk-G4747MOW.js";import"./chunk-KCJVFLBB.js";import"./chunk-OFJPOTES.js";import"./chunk-BL3CZWWD.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-LZPCA6DH.js";import"./chunk-L3KS6MOV.js";import"./chunk-XGY4OQLC.js";import"./chunk-64EDQ7UV.js";import"./chunk-DLOJG7LP.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-GY7YSD6J.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{a as compileHostedProfileRelease,b as runHostedProfileCompilerCli,c as runHostedProfileEvaluationCli,d as runHostedProfileInspectionCli};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as m,b as c}from"./chunk-EFP75UEX.js";import{a as l}from"./chunk-KDER7R45.js";import{v as f}from"./chunk-HG2YFMVU.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-7OKZCJHS.js";import"./chunk-UTIELP6F.js";import"./chunk-7NCM6GBN.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-7J2NMUTK.js";import"./chunk-VEBW7NKD.js";import"./chunk-W45RKGM6.js";import"./chunk-AUO5DCEU.js";import"./chunk-Y4I6CFZJ.js";import"./chunk-EDYCSW22.js";import"./chunk-JT5YQ52I.js";import"./chunk-XGY4OQLC.js";import"./chunk-PAYFJHPO.js";import"./chunk-WD4KAKEX.js";import"./chunk-2PXKSAG6.js";import"./chunk-ULTV6INR.js";import"./chunk-WGQ3FMRF.js";import"./chunk-JXLDEYRW.js";import"./chunk-JVMSN7LH.js";import"./chunk-YI6ME6PU.js";import"./chunk-DRLP7GIU.js";import"./chunk-BU6MW65V.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-DXJC3QW7.js";import"./chunk-P4QM63L3.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import{Hb as s,Ob as u}from"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-4PUOWSDE.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{o as t}from"./chunk-RCT3O3HQ.js";import"./chunk-ZFJWA4JK.js";import{A as n}from"./chunk-X2J2P5ZT.js";import{a as i}from"./chunk-FTQLQJQV.js";var v=n.object({profileRef:f,sourceRevision:n.string().min(1),action:n.enum(["compare","report"]),request:n.unknown(),runs:n.array(l).max(1e4),comparisons:n.array(s).max(1e4),suiteRuns:n.array(u).max(1e4)}).strict();async function h(p){let o=v.parse(p);for(let e of[...o.runs,...o.comparisons,...o.suiteRuns])t(e,"Hosted evaluation evidence");let a={getProfileEvaluationRun:i(async e=>o.runs.find(r=>r.manifest.id===e)??null,"getProfileEvaluationRun"),getProfileEvaluationComparison:i(async e=>o.comparisons.find(r=>r.id===e)??null,"getProfileEvaluationComparison"),getProfileEvaluationSuiteRun:i(async e=>o.suiteRuns.find(r=>r.id===e)??null,"getProfileEvaluationSuiteRun"),saveProfileEvaluationComparison:i(async(e,r)=>r,"saveProfileEvaluationComparison")};return o.action==="compare"?m({store:a,selectedProfile:i(async()=>({ref:o.profileRef,sourceRevision:o.sourceRevision}),"selectedProfile")})(o.request):c({store:a,profileRef:o.profileRef,request:o.request})}i(h,"controlHostedProfileEvaluation");export{h as controlHostedProfileEvaluation};
2
+ import{a as m,b as c}from"./chunk-EFP75UEX.js";import{a as l}from"./chunk-7PDF2UX2.js";import{v as f}from"./chunk-WXG3G2O6.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-OXRN2257.js";import"./chunk-UTIELP6F.js";import"./chunk-TOWY6Y23.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-7J2NMUTK.js";import"./chunk-NK2L5HA2.js";import"./chunk-W45RKGM6.js";import"./chunk-73COPJ32.js";import"./chunk-UGDBMRCT.js";import"./chunk-EDYCSW22.js";import"./chunk-Z6HWSTEP.js";import"./chunk-XGY4OQLC.js";import"./chunk-2PVW2XFF.js";import"./chunk-64EDQ7UV.js";import"./chunk-DLOJG7LP.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-JXLDEYRW.js";import"./chunk-GR4MJJCE.js";import"./chunk-GG6PM7TB.js";import"./chunk-2GEZ3ZY7.js";import"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import{Hb as s,Ob as u}from"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{o as t}from"./chunk-RCT3O3HQ.js";import"./chunk-ZFJWA4JK.js";import{A as n}from"./chunk-X2J2P5ZT.js";import{a as i}from"./chunk-FTQLQJQV.js";var v=n.object({profileRef:f,sourceRevision:n.string().min(1),action:n.enum(["compare","report"]),request:n.unknown(),runs:n.array(l).max(1e4),comparisons:n.array(s).max(1e4),suiteRuns:n.array(u).max(1e4)}).strict();async function h(p){let o=v.parse(p);for(let e of[...o.runs,...o.comparisons,...o.suiteRuns])t(e,"Hosted evaluation evidence");let a={getProfileEvaluationRun:i(async e=>o.runs.find(r=>r.manifest.id===e)??null,"getProfileEvaluationRun"),getProfileEvaluationComparison:i(async e=>o.comparisons.find(r=>r.id===e)??null,"getProfileEvaluationComparison"),getProfileEvaluationSuiteRun:i(async e=>o.suiteRuns.find(r=>r.id===e)??null,"getProfileEvaluationSuiteRun"),saveProfileEvaluationComparison:i(async(e,r)=>r,"saveProfileEvaluationComparison")};return o.action==="compare"?m({store:a,selectedProfile:i(async()=>({ref:o.profileRef,sourceRevision:o.sourceRevision}),"selectedProfile")})(o.request):c({store:a,profileRef:o.profileRef,request:o.request})}i(h,"controlHostedProfileEvaluation");export{h as controlHostedProfileEvaluation};
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{b as R,c as P}from"./chunk-PACLKDTN.js";import{a as E}from"./chunk-KDER7R45.js";import"./chunk-JQOVC35K.js";import{a as h,v,w as S,x as w}from"./chunk-HG2YFMVU.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import{b as y}from"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-7OKZCJHS.js";import"./chunk-UTIELP6F.js";import"./chunk-7NCM6GBN.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-7J2NMUTK.js";import"./chunk-VEBW7NKD.js";import"./chunk-W45RKGM6.js";import"./chunk-AUO5DCEU.js";import"./chunk-Y4I6CFZJ.js";import"./chunk-EDYCSW22.js";import"./chunk-JT5YQ52I.js";import"./chunk-XGY4OQLC.js";import"./chunk-PAYFJHPO.js";import"./chunk-WD4KAKEX.js";import"./chunk-2PXKSAG6.js";import"./chunk-ULTV6INR.js";import"./chunk-WGQ3FMRF.js";import"./chunk-JXLDEYRW.js";import"./chunk-JVMSN7LH.js";import"./chunk-YI6ME6PU.js";import"./chunk-DRLP7GIU.js";import"./chunk-BU6MW65V.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-DXJC3QW7.js";import"./chunk-P4QM63L3.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import{f as g}from"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-4PUOWSDE.js";import{Ka as m}from"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-ZFJWA4JK.js";import{A as s}from"./chunk-X2J2P5ZT.js";import{a as n}from"./chunk-FTQLQJQV.js";var I=s.object({profileRef:v,inspection:R,run:E.nullable(),receipts:s.array(g).max(1e4),grades:s.array(m).max(1e4),sessions:s.array(S).max(1e4),turns:s.array(w).max(1e4),events:s.array(h).max(1e4),usage:s.array(y).max(1e4)}).strict();async function x(c){let t=I.parse(c),o=n((e,i)=>{let f=new Map;for(let p of e){let d=i(p);if(f.has(d))throw new Error("Hosted evaluation inspection has duplicate evidence identities.");f.set(d,p)}return f},"map"),r=o(t.receipts,e=>e.id),u=o(t.grades,e=>e.contentHash),l=o(t.sessions,e=>e.id),a=o(t.turns,e=>e.id);return P({profileRef:t.profileRef,...t.inspection,store:{getProfileEvaluationRun:n(async e=>t.run?.manifest.id===e?t.run:null,"getProfileEvaluationRun"),getProfileEvaluationReceipt:n(async e=>r.get(e)??null,"getProfileEvaluationReceipt"),getProfileEvaluationGrade:n(async e=>u.get(e)??null,"getProfileEvaluationGrade"),getSession:n(async e=>l.get(e)??null,"getSession"),getTurn:n(async e=>a.get(e)??null,"getTurn"),runtimeEventsForTurn:n(async e=>t.events.filter(i=>i.turnId===e),"runtimeEventsForTurn"),listModelUsageRecords:n(async e=>t.usage.filter(i=>(!e?.sessionId||i.sessionId===e.sessionId)&&(!e?.turnId||i.turnId===e.turnId)),"listModelUsageRecords")}})}n(x,"inspectHostedProfileEvaluation");async function B(c){if(c.length!==0)throw new Error("Hosted evaluation inspection uses bounded standard input.");let t=[],o=0;for await(let l of process.stdin){let a=Buffer.from(l);if(o+=a.length,o>32*1024*1024)throw new Error("Hosted evaluation inspection input is too large.");t.push(a)}let r=JSON.parse(Buffer.concat(t).toString("utf8")),u=r.action==="compare"||r.action==="report"?await(await import("./hosted-profile-evaluation-control-UUEZEMXU.js")).controlHostedProfileEvaluation(r):await x(r);process.stdout.write(`${JSON.stringify(u)}
2
+ import{b as R,c as P}from"./chunk-XBAB3HMA.js";import{a as E}from"./chunk-7PDF2UX2.js";import"./chunk-UKTPX2EE.js";import{a as h,v,w as S,x as w}from"./chunk-WXG3G2O6.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import{b as y}from"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-OXRN2257.js";import"./chunk-UTIELP6F.js";import"./chunk-TOWY6Y23.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-7J2NMUTK.js";import"./chunk-NK2L5HA2.js";import"./chunk-W45RKGM6.js";import"./chunk-73COPJ32.js";import"./chunk-UGDBMRCT.js";import"./chunk-EDYCSW22.js";import"./chunk-Z6HWSTEP.js";import"./chunk-XGY4OQLC.js";import"./chunk-2PVW2XFF.js";import"./chunk-64EDQ7UV.js";import"./chunk-DLOJG7LP.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-JXLDEYRW.js";import"./chunk-GR4MJJCE.js";import"./chunk-GG6PM7TB.js";import"./chunk-2GEZ3ZY7.js";import"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import{f as g}from"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import{Ka as m}from"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-ZFJWA4JK.js";import{A as s}from"./chunk-X2J2P5ZT.js";import{a as n}from"./chunk-FTQLQJQV.js";var I=s.object({profileRef:v,inspection:R,run:E.nullable(),receipts:s.array(g).max(1e4),grades:s.array(m).max(1e4),sessions:s.array(S).max(1e4),turns:s.array(w).max(1e4),events:s.array(h).max(1e4),usage:s.array(y).max(1e4)}).strict();async function x(c){let t=I.parse(c),o=n((e,i)=>{let f=new Map;for(let p of e){let d=i(p);if(f.has(d))throw new Error("Hosted evaluation inspection has duplicate evidence identities.");f.set(d,p)}return f},"map"),r=o(t.receipts,e=>e.id),u=o(t.grades,e=>e.contentHash),l=o(t.sessions,e=>e.id),a=o(t.turns,e=>e.id);return P({profileRef:t.profileRef,...t.inspection,store:{getProfileEvaluationRun:n(async e=>t.run?.manifest.id===e?t.run:null,"getProfileEvaluationRun"),getProfileEvaluationReceipt:n(async e=>r.get(e)??null,"getProfileEvaluationReceipt"),getProfileEvaluationGrade:n(async e=>u.get(e)??null,"getProfileEvaluationGrade"),getSession:n(async e=>l.get(e)??null,"getSession"),getTurn:n(async e=>a.get(e)??null,"getTurn"),runtimeEventsForTurn:n(async e=>t.events.filter(i=>i.turnId===e),"runtimeEventsForTurn"),listModelUsageRecords:n(async e=>t.usage.filter(i=>(!e?.sessionId||i.sessionId===e.sessionId)&&(!e?.turnId||i.turnId===e.turnId)),"listModelUsageRecords")}})}n(x,"inspectHostedProfileEvaluation");async function B(c){if(c.length!==0)throw new Error("Hosted evaluation inspection uses bounded standard input.");let t=[],o=0;for await(let l of process.stdin){let a=Buffer.from(l);if(o+=a.length,o>32*1024*1024)throw new Error("Hosted evaluation inspection input is too large.");t.push(a)}let r=JSON.parse(Buffer.concat(t).toString("utf8")),u=r.action==="compare"||r.action==="report"?await(await import("./hosted-profile-evaluation-control-4R3L4FTK.js")).controlHostedProfileEvaluation(r):await x(r);process.stdout.write(`${JSON.stringify(u)}
3
3
  `)}n(B,"runHostedProfileInspectionCli");export{x as inspectHostedProfileEvaluation,B as runHostedProfileInspectionCli};
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as V}from"./chunk-EGP6DF34.js";import{b as x,p as j,q as D}from"./chunk-OUJ63LMU.js";import{b as E}from"./chunk-ZIQJDTQB.js";import"./chunk-S7A2OGL2.js";import"./chunk-3Z4VM2LF.js";import"./chunk-EICS777E.js";import"./chunk-FEAKTSRS.js";import{a as I}from"./chunk-TPOAAJKA.js";import"./chunk-RCQYEHHD.js";import"./chunk-SDO4FC4Q.js";import"./chunk-IR3YJWPW.js";import"./chunk-SDHG6CKU.js";import"./chunk-XHACK2KR.js";import"./chunk-W45RKGM6.js";import"./chunk-WCNPGKST.js";import"./chunk-AFH462DO.js";import"./chunk-UANH7U3Y.js";import"./chunk-CIZI6Z7D.js";import"./chunk-VFH5C6D2.js";import"./chunk-EYTTZ5H4.js";import"./chunk-XY7HFXLH.js";import"./chunk-6I5AUTVO.js";import{m as C}from"./chunk-DKOVZ6R2.js";import"./chunk-U7X5ZLAL.js";import"./chunk-AFKFN25T.js";import{a as b}from"./chunk-G4747MOW.js";import"./chunk-KCJVFLBB.js";import"./chunk-OFJPOTES.js";import"./chunk-HG2YFMVU.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-7OKZCJHS.js";import"./chunk-UTIELP6F.js";import"./chunk-7NCM6GBN.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-LZPCA6DH.js";import"./chunk-L3KS6MOV.js";import"./chunk-7J2NMUTK.js";import"./chunk-VEBW7NKD.js";import"./chunk-W45RKGM6.js";import{j as m}from"./chunk-AUO5DCEU.js";import"./chunk-Y4I6CFZJ.js";import"./chunk-EDYCSW22.js";import"./chunk-JT5YQ52I.js";import"./chunk-XGY4OQLC.js";import"./chunk-PAYFJHPO.js";import"./chunk-WD4KAKEX.js";import"./chunk-2PXKSAG6.js";import"./chunk-ULTV6INR.js";import"./chunk-WGQ3FMRF.js";import"./chunk-JXLDEYRW.js";import"./chunk-JVMSN7LH.js";import"./chunk-YI6ME6PU.js";import"./chunk-DRLP7GIU.js";import{ja as S}from"./chunk-BU6MW65V.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-DXJC3QW7.js";import"./chunk-P4QM63L3.js";import"./chunk-MTP3B2SU.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-4PUOWSDE.js";import{f as y,i as H}from"./chunk-ZY32SZ2P.js";import{e as P,i as R}from"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{n as d}from"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as s}from"./chunk-FTQLQJQV.js";import{readFile as h,realpath as z,lstat as T}from"node:fs/promises";import l from"node:path";var B=e.object({compile:e.object({repoPath:e.string(),profileId:e.string(),repositoryId:e.string(),sourceRevision:e.string(),workspaceId:e.string(),outputDir:e.string()}).strict(),externalDatasetPackage:e.string().regex(/^external-dataset-[a-f0-9-]+\.json$/).optional(),sourceCandidate:H.optional(),action:e.enum(["catalog","prepare"]),request:e.unknown().optional()}).strict();async function G(t){let o=await V(t.compile);if(t.sourceCandidate){let a=await C({workspaceId:typeof o.agentSnapshot.metadata.workspaceId=="string"?o.agentSnapshot.metadata.workspaceId:o.workspaceId,sourceDir:l.join(o.bundlePath,"source")});if(d(t.sourceCandidate.harnessRelease)!==d({id:o.harnessRelease.id,contentHash:o.harnessRelease.contentHash})||I(a).protectedClosureHash!==t.sourceCandidate.protectedClosureHash)throw new Error("Private candidate source differs from its actual frozen compiled release.")}let g={release:b.parse({schemaVersion:"openpond.localHarnessReleaseRecord.v1",workspaceId:o.workspaceId,sourceRevision:o.sourceRevision,agentSnapshot:P.parse(o.agentSnapshot),harnessRelease:R.parse(o.harnessRelease),bundlePath:o.bundlePath,createdAt:new Date().toISOString()})},p={source:"openpond_git",profileId:t.compile.profileId,repositoryId:t.compile.repositoryId},f=t.compile.sourceRevision,c={id:o.harnessRelease.id,contentHash:o.harnessRelease.contentHash},w=s(async a=>E({...a,runtime:g}),"loadCatalog"),q=await w({ref:p,sourceRevision:f,harnessRelease:c}),k=l.join(o.bundlePath,"source"),v=o.harnessRelease.files.some(a=>a.path==="workflows/catalog.json")?await(async()=>{let a=y({agentSnapshot:o.agentSnapshot,harnessRelease:o.harnessRelease,catalogBytes:await h(l.join(k,"workflows/catalog.json")),actionBytes:await h(l.join(k,"workflows/actions.json"))});return a.catalog.workflows.map(r=>({workflow:r,binding:{schemaVersion:"openpond.profileWorkflowBinding.v1",profileId:p.profileId,sourceRevision:f,harnessRelease:c,catalogHash:a.catalogHash,workflowId:r.id}}))})():[],A={profileRef:p,sourceRevision:f,harnessRelease:c,workflows:v};if(t.action==="catalog")return{...q,workflows:v};let u=t.externalDatasetPackage?await(async()=>{let a=await z(t.compile.outputDir),r=l.join(a,t.externalDatasetPackage),i=await T(r);if(!i.isFile()||i.isSymbolicLink()||i.size>32*1024*1024||await z(r)!==r)throw new Error("External Dataset cache is outside its bounded verifier storage.");let n=e.object({packageValue:e.unknown(),graders:e.array(e.object({id:e.string(),version:e.string(),contentHash:e.string(),feedbackKey:e.string(),release:e.object({id:e.string(),revision:e.union([e.string(),e.number()]),contentHash:e.string()}).strict().nullable()}).strict()).max(100)}).strict().parse(JSON.parse(await h(r,"utf8")));return{packageValue:S(n.packageValue),graders:n.graders}})():null;return j({privateGradingPreflight:s(a=>D(a,!1),"privateGradingPreflight"),sourceCandidate:t.sourceCandidate,resolveExternalDataset:u?async a=>{let r=m({binding:a,...u}),i=d(o.harnessRelease.files.filter(n=>n.visibility!=="policy").map(n=>({path:n.path,asset:n})));if(a.protectedProfileClosureHash!==i)throw new Error("The selected Profile's protected evaluator closure changed.");return{binding:a,packageValue:r,authorize:s(async()=>{m({binding:a,...u})},"authorize")}}:void 0,loadCatalog:w,selectedWorkflows:s(async()=>A,"selectedWorkflows"),placement:"remote",boundedWorkComputeAvailable:!0,loadTasksetPackage:s(async a=>{let r=await x({runtime:g,definition:a,harnessRelease:c});if(!r)throw new Error("Hosted evaluation Taskset is absent from its published Profile release.");return r},"loadTasksetPackage"),modelConfigurationHash:s(async(a,r)=>{if(a.providerId!=="openpond"||!r.hostModelConfigurationHash)throw new Error("Hosted evaluation preparation requires a trusted model configuration receipt.");return r.hostModelConfigurationHash},"modelConfigurationHash")})(t.request)}s(G,"prepareHostedProfileEvaluation");async function ae(t){if(t.length!==1||t[0].length>48e3||!/^[A-Za-z0-9_-]+$/.test(t[0]))throw new Error("Hosted Profile evaluation preparation argument is invalid.");let o=B.parse(JSON.parse(Buffer.from(t[0],"base64url").toString("utf8")));process.stdout.write(`${JSON.stringify(await G(o))}
2
+ import{a as V}from"./chunk-KASHK2U5.js";import{b as x,p as j,q as D}from"./chunk-ER2VONWQ.js";import{b as E}from"./chunk-XTT3K3TR.js";import"./chunk-S7A2OGL2.js";import"./chunk-HUMNLSCV.js";import"./chunk-EICS777E.js";import"./chunk-FEAKTSRS.js";import{a as I}from"./chunk-TPOAAJKA.js";import"./chunk-O5ZOW474.js";import"./chunk-SDO4FC4Q.js";import"./chunk-IR3YJWPW.js";import"./chunk-NDNSLCPE.js";import"./chunk-IUYGQO2K.js";import"./chunk-W45RKGM6.js";import"./chunk-O4YHISU2.js";import"./chunk-HT6ILPD6.js";import"./chunk-BTEBZYK3.js";import"./chunk-VMW23TIZ.js";import"./chunk-VFH5C6D2.js";import"./chunk-XLZMSD5K.js";import"./chunk-SVLVIYH2.js";import"./chunk-6I5AUTVO.js";import{m as C}from"./chunk-BQNU4HZW.js";import"./chunk-JCHLDNCX.js";import"./chunk-AFKFN25T.js";import{a as b}from"./chunk-G4747MOW.js";import"./chunk-KCJVFLBB.js";import"./chunk-OFJPOTES.js";import"./chunk-WXG3G2O6.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-OXRN2257.js";import"./chunk-UTIELP6F.js";import"./chunk-TOWY6Y23.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-LZPCA6DH.js";import"./chunk-L3KS6MOV.js";import"./chunk-7J2NMUTK.js";import"./chunk-NK2L5HA2.js";import"./chunk-W45RKGM6.js";import{j as m}from"./chunk-73COPJ32.js";import"./chunk-UGDBMRCT.js";import"./chunk-EDYCSW22.js";import"./chunk-Z6HWSTEP.js";import"./chunk-XGY4OQLC.js";import"./chunk-2PVW2XFF.js";import"./chunk-64EDQ7UV.js";import"./chunk-DLOJG7LP.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-JXLDEYRW.js";import"./chunk-GR4MJJCE.js";import"./chunk-GG6PM7TB.js";import"./chunk-2GEZ3ZY7.js";import{ja as S}from"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import{f as y,i as H}from"./chunk-ZY32SZ2P.js";import{e as P,i as R}from"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{n as d}from"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as s}from"./chunk-FTQLQJQV.js";import{readFile as h,realpath as z,lstat as T}from"node:fs/promises";import l from"node:path";var B=e.object({compile:e.object({repoPath:e.string(),profileId:e.string(),repositoryId:e.string(),sourceRevision:e.string(),workspaceId:e.string(),outputDir:e.string()}).strict(),externalDatasetPackage:e.string().regex(/^external-dataset-[a-f0-9-]+\.json$/).optional(),sourceCandidate:H.optional(),action:e.enum(["catalog","prepare"]),request:e.unknown().optional()}).strict();async function G(t){let o=await V(t.compile);if(t.sourceCandidate){let a=await C({workspaceId:typeof o.agentSnapshot.metadata.workspaceId=="string"?o.agentSnapshot.metadata.workspaceId:o.workspaceId,sourceDir:l.join(o.bundlePath,"source")});if(d(t.sourceCandidate.harnessRelease)!==d({id:o.harnessRelease.id,contentHash:o.harnessRelease.contentHash})||I(a).protectedClosureHash!==t.sourceCandidate.protectedClosureHash)throw new Error("Private candidate source differs from its actual frozen compiled release.")}let g={release:b.parse({schemaVersion:"openpond.localHarnessReleaseRecord.v1",workspaceId:o.workspaceId,sourceRevision:o.sourceRevision,agentSnapshot:P.parse(o.agentSnapshot),harnessRelease:R.parse(o.harnessRelease),bundlePath:o.bundlePath,createdAt:new Date().toISOString()})},p={source:"openpond_git",profileId:t.compile.profileId,repositoryId:t.compile.repositoryId},f=t.compile.sourceRevision,c={id:o.harnessRelease.id,contentHash:o.harnessRelease.contentHash},w=s(async a=>E({...a,runtime:g}),"loadCatalog"),q=await w({ref:p,sourceRevision:f,harnessRelease:c}),k=l.join(o.bundlePath,"source"),v=o.harnessRelease.files.some(a=>a.path==="workflows/catalog.json")?await(async()=>{let a=y({agentSnapshot:o.agentSnapshot,harnessRelease:o.harnessRelease,catalogBytes:await h(l.join(k,"workflows/catalog.json")),actionBytes:await h(l.join(k,"workflows/actions.json"))});return a.catalog.workflows.map(r=>({workflow:r,binding:{schemaVersion:"openpond.profileWorkflowBinding.v1",profileId:p.profileId,sourceRevision:f,harnessRelease:c,catalogHash:a.catalogHash,workflowId:r.id}}))})():[],A={profileRef:p,sourceRevision:f,harnessRelease:c,workflows:v};if(t.action==="catalog")return{...q,workflows:v};let u=t.externalDatasetPackage?await(async()=>{let a=await z(t.compile.outputDir),r=l.join(a,t.externalDatasetPackage),i=await T(r);if(!i.isFile()||i.isSymbolicLink()||i.size>32*1024*1024||await z(r)!==r)throw new Error("External Dataset cache is outside its bounded verifier storage.");let n=e.object({packageValue:e.unknown(),graders:e.array(e.object({id:e.string(),version:e.string(),contentHash:e.string(),feedbackKey:e.string(),release:e.object({id:e.string(),revision:e.union([e.string(),e.number()]),contentHash:e.string()}).strict().nullable()}).strict()).max(100)}).strict().parse(JSON.parse(await h(r,"utf8")));return{packageValue:S(n.packageValue),graders:n.graders}})():null;return j({privateGradingPreflight:s(a=>D(a,!1),"privateGradingPreflight"),sourceCandidate:t.sourceCandidate,resolveExternalDataset:u?async a=>{let r=m({binding:a,...u}),i=d(o.harnessRelease.files.filter(n=>n.visibility!=="policy").map(n=>({path:n.path,asset:n})));if(a.protectedProfileClosureHash!==i)throw new Error("The selected Profile's protected evaluator closure changed.");return{binding:a,packageValue:r,authorize:s(async()=>{m({binding:a,...u})},"authorize")}}:void 0,loadCatalog:w,selectedWorkflows:s(async()=>A,"selectedWorkflows"),placement:"remote",boundedWorkComputeAvailable:!0,loadTasksetPackage:s(async a=>{let r=await x({runtime:g,definition:a,harnessRelease:c});if(!r)throw new Error("Hosted evaluation Taskset is absent from its published Profile release.");return r},"loadTasksetPackage"),modelConfigurationHash:s(async(a,r)=>{if(a.providerId!=="openpond"||!r.hostModelConfigurationHash)throw new Error("Hosted evaluation preparation requires a trusted model configuration receipt.");return r.hostModelConfigurationHash},"modelConfigurationHash")})(t.request)}s(G,"prepareHostedProfileEvaluation");async function ae(t){if(t.length!==1||t[0].length>48e3||!/^[A-Za-z0-9_-]+$/.test(t[0]))throw new Error("Hosted Profile evaluation preparation argument is invalid.");let o=B.parse(JSON.parse(Buffer.from(t[0],"base64url").toString("utf8")));process.stdout.write(`${JSON.stringify(await G(o))}
3
3
  `)}s(ae,"runHostedProfileEvaluationCli");export{G as prepareHostedProfileEvaluation,ae as runHostedProfileEvaluationCli};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{m as h}from"./chunk-M5X7XKXY.js";import"./chunk-65FJWWXG.js";import"./chunk-SYUKES6H.js";import"./chunk-N5EAVX4G.js";import"./chunk-U7X5ZLAL.js";import"./chunk-RY46UPBO.js";import"./chunk-OQPJ7FJF.js";import"./chunk-7NCM6GBN.js";import"./chunk-AUO5DCEU.js";import"./chunk-Y4I6CFZJ.js";import"./chunk-UGFSAG4U.js";import"./chunk-ULTV6INR.js";import"./chunk-WGQ3FMRF.js";import"./chunk-JVMSN7LH.js";import"./chunk-YI6ME6PU.js";import"./chunk-DRLP7GIU.js";import"./chunk-BU6MW65V.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-DXJC3QW7.js";import"./chunk-P4QM63L3.js";import"./chunk-MTP3B2SU.js";import"./chunk-UN2LKLGV.js";import"./chunk-2LJCJOJ7.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-4PUOWSDE.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-4N4EH3RJ.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-JCLTFDVW.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import{a as r}from"./chunk-FTQLQJQV.js";import{createHash as p}from"node:crypto";import{setTimeout as b}from"node:timers/promises";async function T(e){if(e.signal.throwIfAborted(),!e.turnId.trim()||!e.callId.trim())throw new Error("Hosted Taskset actions require their originating turn and tool call.");let s=y(e.session.metadata?.hostConversationId),l=y(e.session.metadata?.hostSandboxId);if(e.session.workspaceKind!=="sandbox"||!l||e.session.workspaceId!==l||!s)throw new Error("Hosted Taskset actions require the bound Work workspace.");if(e.action==="answer_questions")throw new Error("Hosted Taskset authoring has no separate question queue. Revise with the complete buildSpecification.");if(e.action==="revise"&&!e.payload.buildSpecification)throw new Error("Hosted Taskset revisions require the complete buildSpecification.");let g=I(e.payload.sourceReferenceIds??e.payload.sourceIds),u=k({action:e.action,clientRequestId:w(e),creationId:e.payload.creationId,tasksetId:e.payload.tasksetId,objective:e.payload.objective,buildIntent:e.payload.buildIntent,buildSpecification:e.payload.buildSpecification,sourceReferenceIds:g,methodHint:e.payload.methodHint,approved:e.payload.approved,split:e.payload.split,taskLimit:e.payload.taskLimit,attemptsPerTask:e.payload.attemptsPerTask,maximumSpendUsd:e.payload.maximumSpendUsd,message:e.payload.message,answers:e.payload.answers}),f=e.request??h,n=["audit_graders","calibrate_judges","baseline","readiness"].includes(e.action),o=n?AbortSignal.any([e.signal,AbortSignal.timeout(900*1e3)]):e.signal,c=null;try{for(;;){o.throwIfAborted();let a=await f({path:"/hosted-tasksets/actions",method:"POST",body:u,signal:o,...n?{timeoutMs:3e4}:{}});o.throwIfAborted();let t=a.result;if(!n||!t||typeof t!="object"||Array.isArray(t)||!("schemaVersion"in t)||t.schemaVersion!=="openpond.hostedTasksetOperation.v1")return a;let m="status"in t?t.status:null,i="id"in t?t.id:null,d="retryAfterMs"in t?t.retryAfterMs:null;if(m!=="queued"&&m!=="running"||typeof i!="string"||!i||typeof d!="number"||!Number.isFinite(d)||d<1)throw new Error("Hosted Taskset check returned an invalid operation status.");if(c!==null&&c!==i)throw new Error("Hosted Taskset check operation identity changed while polling.");c=i,await b(Math.min(d,5e3),void 0,{signal:o})}}catch(a){throw n&&o.aborted&&(await f({path:"/hosted-tasksets/actions",method:"POST",body:{...u,cancelCheck:!0},timeoutMs:1e4,signal:AbortSignal.timeout(1e4)}).catch(()=>{}),o.throwIfAborted()),a}}r(T,"executeHostedTasksetAction");function w(e){let s=p("sha256").update(JSON.stringify([e.session.id,e.turnId,e.callId])).digest("hex").slice(0,32);return`${e.session.id}:${s}`.slice(0,191)}r(w,"actionRequestId");function k(e){return Object.fromEntries(Object.entries(e).filter(([,s])=>s!==void 0))}r(k,"compact");function y(e){return typeof e=="string"&&e.trim()?e.trim():null}r(y,"stringValue");function I(e){return Array.isArray(e)&&e.every(s=>typeof s=="string")?e:void 0}r(I,"stringArray");export{T as executeHostedTasksetAction};
2
+ import{m as h}from"./chunk-DNRC6TPJ.js";import"./chunk-6YR5IYHH.js";import"./chunk-SYUKES6H.js";import"./chunk-OOKHHOIU.js";import"./chunk-JCHLDNCX.js";import"./chunk-2ACX7IW5.js";import"./chunk-OQPJ7FJF.js";import"./chunk-TOWY6Y23.js";import"./chunk-73COPJ32.js";import"./chunk-UGDBMRCT.js";import"./chunk-YG3HITOU.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-GR4MJJCE.js";import"./chunk-GG6PM7TB.js";import"./chunk-2GEZ3ZY7.js";import"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-UN2LKLGV.js";import"./chunk-HLJJAOI2.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-EJOV6Z6F.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-MZKCW6CB.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import{a as r}from"./chunk-FTQLQJQV.js";import{createHash as p}from"node:crypto";import{setTimeout as b}from"node:timers/promises";async function T(e){if(e.signal.throwIfAborted(),!e.turnId.trim()||!e.callId.trim())throw new Error("Hosted Taskset actions require their originating turn and tool call.");let s=y(e.session.metadata?.hostConversationId),l=y(e.session.metadata?.hostSandboxId);if(e.session.workspaceKind!=="sandbox"||!l||e.session.workspaceId!==l||!s)throw new Error("Hosted Taskset actions require the bound Work workspace.");if(e.action==="answer_questions")throw new Error("Hosted Taskset authoring has no separate question queue. Revise with the complete buildSpecification.");if(e.action==="revise"&&!e.payload.buildSpecification)throw new Error("Hosted Taskset revisions require the complete buildSpecification.");let g=I(e.payload.sourceReferenceIds??e.payload.sourceIds),u=k({action:e.action,clientRequestId:w(e),creationId:e.payload.creationId,tasksetId:e.payload.tasksetId,objective:e.payload.objective,buildIntent:e.payload.buildIntent,buildSpecification:e.payload.buildSpecification,sourceReferenceIds:g,methodHint:e.payload.methodHint,approved:e.payload.approved,split:e.payload.split,taskLimit:e.payload.taskLimit,attemptsPerTask:e.payload.attemptsPerTask,maximumSpendUsd:e.payload.maximumSpendUsd,message:e.payload.message,answers:e.payload.answers}),f=e.request??h,n=["audit_graders","calibrate_judges","baseline","readiness"].includes(e.action),o=n?AbortSignal.any([e.signal,AbortSignal.timeout(900*1e3)]):e.signal,c=null;try{for(;;){o.throwIfAborted();let a=await f({path:"/hosted-tasksets/actions",method:"POST",body:u,signal:o,...n?{timeoutMs:3e4}:{}});o.throwIfAborted();let t=a.result;if(!n||!t||typeof t!="object"||Array.isArray(t)||!("schemaVersion"in t)||t.schemaVersion!=="openpond.hostedTasksetOperation.v1")return a;let m="status"in t?t.status:null,i="id"in t?t.id:null,d="retryAfterMs"in t?t.retryAfterMs:null;if(m!=="queued"&&m!=="running"||typeof i!="string"||!i||typeof d!="number"||!Number.isFinite(d)||d<1)throw new Error("Hosted Taskset check returned an invalid operation status.");if(c!==null&&c!==i)throw new Error("Hosted Taskset check operation identity changed while polling.");c=i,await b(Math.min(d,5e3),void 0,{signal:o})}}catch(a){throw n&&o.aborted&&(await f({path:"/hosted-tasksets/actions",method:"POST",body:{...u,cancelCheck:!0},timeoutMs:1e4,signal:AbortSignal.timeout(1e4)}).catch(()=>{}),o.throwIfAborted()),a}}r(T,"executeHostedTasksetAction");function w(e){let s=p("sha256").update(JSON.stringify([e.session.id,e.turnId,e.callId])).digest("hex").slice(0,32);return`${e.session.id}:${s}`.slice(0,191)}r(w,"actionRequestId");function k(e){return Object.fromEntries(Object.entries(e).filter(([,s])=>s!==void 0))}r(k,"compact");function y(e){return typeof e=="string"&&e.trim()?e.trim():null}r(y,"stringValue");function I(e){return Array.isArray(e)&&e.every(s=>typeof s=="string")?e:void 0}r(I,"stringArray");export{T as executeHostedTasksetAction};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import"./chunk-HYUTDZ3N.js";import{c as S}from"./chunk-RFQD6B44.js";import{a as x,d as y}from"./chunk-QN4CFJQC.js";import"./chunk-VND53FAU.js";import"./chunk-OKPV6MBX.js";import"./chunk-XRKFTPHD.js";import"./chunk-KHDCMVEJ.js";import{p as q}from"./chunk-K3WM4NEC.js";import"./chunk-BLNEHU62.js";import"./chunk-BT5YNE5U.js";import{d as E}from"./chunk-RPM4FDRX.js";import"./chunk-DFZTRMTL.js";import"./chunk-2QHB5P2K.js";import"./chunk-BZS2PA4O.js";import"./chunk-VSQPWLAG.js";import"./chunk-6LAGMWJE.js";import"./chunk-IV2HEX3I.js";import"./chunk-C7NQPICU.js";import"./chunk-J256AEEE.js";import"./chunk-J7X72QUY.js";import"./chunk-UN2LKLGV.js";import"./chunk-HLJJAOI2.js";import"./chunk-AMC4Z7G4.js";import{a as R}from"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import{K as g,L as b,U as p,V as I}from"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import{a as f}from"./chunk-JF7WWLNW.js";import{c as h,f as v}from"./chunk-BSHAIAXY.js";import"./chunk-XWPC3AN4.js";import{c as n}from"./chunk-3M53YXEI.js";import{b as w}from"./chunk-GLUWATL5.js";import"./chunk-MZKCW6CB.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{n as u}from"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-TBODQT4W.js";import"./chunk-5HPZGLOL.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import{a as m}from"./chunk-FTQLQJQV.js";import{readFile as L,stat as U}from"node:fs/promises";async function J(r,l){let[i,a]=l,o=n(r,"team"),H=r.local===!0||r.local==="true";if(!o||!i||l.length>2)throw new Error("usage: human-review <read|inbox|inspect|results|request> [id] --team <id> [--input-file <path>] [--local --server-url <loopback-origin>]");let t;if(i==="request"){let e=n(r,"inputFile");if(a||!e||(await U(e)).size>1048576)throw new Error("Request requires a bounded --input-file with exact scoped pins, revision and stable operationId for mutations.");if(t=p.parse(JSON.parse(await L(e,"utf8"))),t.scope!==o)throw new Error("Input belongs to another workspace.")}else if(i==="inbox"){if(a)throw new Error("Inbox does not accept an assignment id.");t=p.parse({endpoint:"inbox",scope:o,view:n(r,"view")||"mine",status:n(r,"status")||"active",limit:Number(n(r,"limit")||100),...n(r,"project")?{projectId:n(r,"project")}:{},...n(r,"afterId")?{afterId:n(r,"afterId")}:{}})}else{if(!a)throw new Error(`${i} requires an exact assignment or execution id.`);t=p.parse(i==="read"?{endpoint:"get",scope:o,id:a,...n(r,"revision")?{revision:Number(n(r,"revision"))}:{}}:i==="inspect"?{endpoint:"inspect",scope:o,id:a,...n(r,"slot")?{slot:Number(n(r,"slot"))}:{},...n(r,"afterId")?{afterId:n(r,"afterId")}:{}}:i==="results"?{endpoint:"results",scope:o,executionId:a}:{endpoint:i,scope:o,id:a})}let s;if(H){let e=new URL(n(r,"serverUrl")||x);if(e.protocol!=="http:"||!["localhost","127.0.0.1","[::1]"].includes(e.hostname)||e.username||e.password||e.search||e.hash||e.pathname!=="/")throw new Error("Local Human review requires an HTTP loopback server origin.");let c=await y(e.origin),d=await c(new URL("/v1/human-review?location=local",e),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(t),redirect:"error",signal:AbortSignal.timeout(3e4)}),A=await N(d);if(s=JSON.parse(A),!d.ok)throw new Error(typeof s.error=="string"?s.error:`Local Human request failed (${d.status}).`)}else{let e=await E();s=await new q({scope:o,fetch:f,apiKey:await S(e,v(e)),baseUrl:h(r)??e.apiBaseUrl??w}).request(t,AbortSignal.timeout(3e4))}if(t.endpoint==="get"||t.endpoint==="command"){let e=g.parse(s),c=t.endpoint==="get"?t.id:t.command.id;if(e.id!==c||e.scope!==o)throw new Error("Review response differs from the requested identity.")}if(t.endpoint==="inbox"&&b.parse(s).items.some(c=>c.scope!==o||t.projectId&&c.projectId!==t.projectId))throw new Error("Inbox response differs from the requested scope.");if(t.endpoint==="inspect"&&I.parse(s).some(e=>e.reviewId!==t.id))throw new Error("Inspection response differs from the selected assignment.");if(t.endpoint==="results"){let e=R.parse(s),{contentHash:c,...d}=e;if(e.executionId!==t.executionId||u(d)!==c||t.selection!==void 0&&u(e.selection)!==u(t.selection))throw new Error("Result response differs from the selected execution or retained review revisions.")}console.log(JSON.stringify(s,null,2))}m(J,"runHumanReviewCommand");async function N(r){let l=r.body?.getReader();if(!l)throw new Error("Review response is unavailable.");let i=[],a=0;try{for(;;){let o=await l.read();if(o.done)break;if(a+=o.value.byteLength,a>8388608)throw new Error("Review response exceeds its bounded transport.");i.push(o.value)}}finally{await l.cancel(),l.releaseLock()}return Buffer.concat(i).toString("utf8")}m(N,"boundedResponse");export{J as runHumanReviewCommand};
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{A as z,a as ue,b as $,c as pe,d as fe,g as me,h as he,i as L,j as we,k as ge,l as ye,m as ve,n as be,o as H,p as N,q as Ie,r as Se,s as Ce,t as V,u as O,v as Q,w as Ee,x as M,y as xe,z as Re}from"./chunk-OTXGAKFH.js";import{k as Y}from"./chunk-NZDLL6JN.js";import{a as Ne}from"./chunk-RFQD6B44.js";import"./chunk-22RLEU3Q.js";import"./chunk-R6I623SZ.js";import"./chunk-XRKFTPHD.js";import"./chunk-JFXINDOQ.js";import"./chunk-JEMECEQH.js";import{k as Ue,l as Ae,m as J}from"./chunk-Z5CQXPIS.js";import"./chunk-7EQLW2KM.js";import"./chunk-BT5YNE5U.js";import{d as F,g as $e}from"./chunk-RPM4FDRX.js";import"./chunk-KTIBXRWQ.js";import"./chunk-KP2MYTP5.js";import"./chunk-PNPV2LDE.js";import"./chunk-4G3GTEVS.js";import"./chunk-KU4TPDPH.js";import"./chunk-55YD4UTW.js";import"./chunk-AFYYIJ6K.js";import"./chunk-J256AEEE.js";import"./chunk-UN2LKLGV.js";import"./chunk-2LJCJOJ7.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-4PUOWSDE.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import{c as le,f as de}from"./chunk-BSHAIAXY.js";import"./chunk-XWPC3AN4.js";import{c as u,f as y}from"./chunk-3M53YXEI.js";import{b as ce}from"./chunk-GLUWATL5.js";import"./chunk-JCLTFDVW.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{m as ae,n as x}from"./chunk-RCT3O3HQ.js";import{a as _,f as ie}from"./chunk-UGOK7VTC.js";import"./chunk-TBODQT4W.js";import"./chunk-5HPZGLOL.js";import"./chunk-ZFJWA4JK.js";import{A as g}from"./chunk-X2J2P5ZT.js";import{a as d}from"./chunk-FTQLQJQV.js";import{createInterface as Le}from"node:readline/promises";import{join as so,resolve as Me}from"node:path";import{homedir as io}from"node:os";import{createHash as Te,generateKeyPairSync as Fe,createPublicKey as Ye,diffieHellman as Ge,createDecipheriv as We}from"node:crypto";import{spawn as Ve}from"node:child_process";var Oe=d(e=>Te("sha256").update(e).digest("hex"),"hash"),Qe=g.object({publicKey:g.string().max(200),iv:g.string().max(100),tag:g.string().max(100),ciphertext:g.string().max(1e4)}).strict();async function X(e,t,o){let r=await fetch(`${e}${t}`,{method:"POST",redirect:"error",signal:AbortSignal.timeout(15e3),headers:{"Content-Type":"application/json"},body:JSON.stringify(o)}),n=await r.text();if(n.length>16384)throw new Error("Authorization response exceeded its limit.");if(!r.ok)throw Object.assign(new Error(`Browser sign-in failed (${r.status}).`),{status:r.status});return JSON.parse(n)}d(X,"post");function Xe(e){let t=process.platform==="darwin"?"open":process.platform==="win32"?"rundll32":"xdg-open",o=process.platform==="win32"?["url.dll,FileProtocolHandler",e]:[e],r=Ve(t,o,{stdio:"ignore",detached:!0});r.on("error",()=>{}),r.unref()}d(Xe,"openBrowser");async function ke(e,t){let o=await F(),r=le(t)||o.apiBaseUrl||ce,n=u(t,"baseUrl")||de(o),i=new URL(n),c=new URL(r);for(let h of[i,c])if(h.protocol!=="https:"&&!(h.protocol==="http:"&&["localhost","127.0.0.1"].includes(h.hostname))||h.username||h.password||h.search||h.hash)throw new Error("Sign-in requires a clean HTTPS origin or local development origin.");let s=`import-${Oe([i.origin,e.machineId,e.instanceId].join(":")).slice(0,24)}`,a=Fe("x25519"),f=a.publicKey.export({format:"der",type:"spki"}).toString("base64"),l=g.object({deviceCode:g.string(),userCode:g.string(),expiresAt:g.string().datetime(),intervalSeconds:g.number().min(2).max(10)}).strict().parse(await X(i.origin,"/api/cli/import/device",{publicKey:f,machineId:e.machineId,sourceInstanceId:e.instanceId,sourceLabel:$[e.source],sourceRoot:e.root,...u(t,"team")?{requestedTeamId:u(t,"team")}:{}})),w=`${i.origin}/console/connections/authorize?code=${encodeURIComponent(l.userCode)}`;for(console.log(`OpenPond sign-in code: ${l.userCode}
2
+ import{A as z,a as ue,b as $,c as pe,d as fe,g as me,h as he,i as L,j as we,k as ge,l as ye,m as ve,n as be,o as H,p as N,q as Ie,r as Se,s as Ce,t as V,u as O,v as Q,w as Ee,x as M,y as xe,z as Re}from"./chunk-OTXGAKFH.js";import{k as Y}from"./chunk-HYUTDZ3N.js";import{a as Ne}from"./chunk-RFQD6B44.js";import"./chunk-VND53FAU.js";import"./chunk-OKPV6MBX.js";import"./chunk-XRKFTPHD.js";import"./chunk-JFXINDOQ.js";import"./chunk-KHDCMVEJ.js";import{k as Ue,l as Ae,m as J}from"./chunk-K3WM4NEC.js";import"./chunk-BLNEHU62.js";import"./chunk-BT5YNE5U.js";import{d as F,g as $e}from"./chunk-RPM4FDRX.js";import"./chunk-DFZTRMTL.js";import"./chunk-2QHB5P2K.js";import"./chunk-BZS2PA4O.js";import"./chunk-VSQPWLAG.js";import"./chunk-6LAGMWJE.js";import"./chunk-IV2HEX3I.js";import"./chunk-C7NQPICU.js";import"./chunk-J256AEEE.js";import"./chunk-J7X72QUY.js";import"./chunk-UN2LKLGV.js";import"./chunk-HLJJAOI2.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import{c as le,f as de}from"./chunk-BSHAIAXY.js";import"./chunk-XWPC3AN4.js";import{c as u,f as y}from"./chunk-3M53YXEI.js";import{b as ce}from"./chunk-GLUWATL5.js";import"./chunk-MZKCW6CB.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import{m as ae,n as x}from"./chunk-RCT3O3HQ.js";import{a as _,f as ie}from"./chunk-UGOK7VTC.js";import"./chunk-TBODQT4W.js";import"./chunk-5HPZGLOL.js";import"./chunk-ZFJWA4JK.js";import{A as g}from"./chunk-X2J2P5ZT.js";import{a as d}from"./chunk-FTQLQJQV.js";import{createInterface as Le}from"node:readline/promises";import{join as so,resolve as Me}from"node:path";import{homedir as io}from"node:os";import{createHash as Te,generateKeyPairSync as Fe,createPublicKey as Ye,diffieHellman as Ge,createDecipheriv as We}from"node:crypto";import{spawn as Ve}from"node:child_process";var Oe=d(e=>Te("sha256").update(e).digest("hex"),"hash"),Qe=g.object({publicKey:g.string().max(200),iv:g.string().max(100),tag:g.string().max(100),ciphertext:g.string().max(1e4)}).strict();async function X(e,t,o){let r=await fetch(`${e}${t}`,{method:"POST",redirect:"error",signal:AbortSignal.timeout(15e3),headers:{"Content-Type":"application/json"},body:JSON.stringify(o)}),n=await r.text();if(n.length>16384)throw new Error("Authorization response exceeded its limit.");if(!r.ok)throw Object.assign(new Error(`Browser sign-in failed (${r.status}).`),{status:r.status});return JSON.parse(n)}d(X,"post");function Xe(e){let t=process.platform==="darwin"?"open":process.platform==="win32"?"rundll32":"xdg-open",o=process.platform==="win32"?["url.dll,FileProtocolHandler",e]:[e],r=Ve(t,o,{stdio:"ignore",detached:!0});r.on("error",()=>{}),r.unref()}d(Xe,"openBrowser");async function ke(e,t){let o=await F(),r=le(t)||o.apiBaseUrl||ce,n=u(t,"baseUrl")||de(o),i=new URL(n),c=new URL(r);for(let h of[i,c])if(h.protocol!=="https:"&&!(h.protocol==="http:"&&["localhost","127.0.0.1"].includes(h.hostname))||h.username||h.password||h.search||h.hash)throw new Error("Sign-in requires a clean HTTPS origin or local development origin.");let s=`import-${Oe([i.origin,e.machineId,e.instanceId].join(":")).slice(0,24)}`,a=Fe("x25519"),f=a.publicKey.export({format:"der",type:"spki"}).toString("base64"),l=g.object({deviceCode:g.string(),userCode:g.string(),expiresAt:g.string().datetime(),intervalSeconds:g.number().min(2).max(10)}).strict().parse(await X(i.origin,"/api/cli/import/device",{publicKey:f,machineId:e.machineId,sourceInstanceId:e.instanceId,sourceLabel:$[e.source],sourceRoot:e.root,...u(t,"team")?{requestedTeamId:u(t,"team")}:{}})),w=`${i.origin}/console/connections/authorize?code=${encodeURIComponent(l.userCode)}`;for(console.log(`OpenPond sign-in code: ${l.userCode}
3
3
  ${w}`),Xe(w);Date.now()<Date.parse(l.expiresAt);){await new Promise(R=>setTimeout(R,l.intervalSeconds*1e3));let h;try{h=await X(i.origin,"/api/cli/import/token",{deviceCode:l.deviceCode})}catch(R){if(Number(R.status)===429)continue;throw R}let b=g.object({state:g.enum(["pending","approved","denied","consumed"]),envelope:Qe.nullable().optional()}).strict().parse(h);if(b.state==="denied"||b.state==="consumed")throw new Error("Browser sign-in was declined or already consumed. Start the connection again.");if(b.state!=="approved"||!b.envelope)continue;let m=b.envelope,p=Ye({key:Buffer.from(m.publicKey,"base64"),format:"der",type:"spki"});if(p.asymmetricKeyType!=="x25519")throw new Error("Invalid sign-in encryption key.");let C=Te("sha256").update(Ge({privateKey:a.privateKey,publicKey:p})).digest(),v=We("aes-256-gcm",C,Buffer.from(m.iv,"base64"));v.setAAD(Buffer.from(Oe(l.deviceCode))),v.setAuthTag(Buffer.from(m.tag,"base64"));let S=g.object({apiKey:g.string().min(1),teamId:g.string().min(1),expiresAt:g.string().datetime()}).strict().parse(JSON.parse(Buffer.concat([v.update(Buffer.from(m.ciphertext,"base64")),v.final()]).toString("utf8")));if(u(t,"team")&&S.teamId!==u(t,"team"))throw new Error("Browser approved a different workspace.");return await $e({handle:s,apiKey:S.apiKey,baseUrl:i.origin,apiBaseUrl:c.origin,setActive:!1}),await X(i.origin,"/api/cli/import/token",{deviceCode:l.deviceCode,acknowledge:!0}),{apiKey:S.apiKey,teamId:S.teamId,baseUrl:c.origin,account:s,accountBaseUrl:i.origin}}throw new Error("Browser sign-in expired. Start the connection again.")}d(ke,"authorizeImporter");import{homedir as Ze}from"node:os";import{join as eo}from"node:path";import{zstdCompressSync as oo}from"node:zlib";function je(e,t,o){if(t.connectionId!==e.id||!t.boundaryIds.length||new Set(t.boundaryIds).size!==t.boundaryIds.length)throw Object.assign(new Error("Retained source selection differs from its connection."),{status:400});if(o.issues.length)throw Object.assign(new Error("Retained source normalization failed."),{status:400});let r=o.sessions.find(n=>JSON.stringify([e.source.instanceId,n.sessionId,n.branchId])===t.sessionKey);if(!r||t.boundaryIds.some(n=>{let i=r.boundaries.find(s=>s.id===n),c=i?r.events[i.start]?.occurredAt:null;return!i||i.projection!=="turn"||i.terminal==="unknown"||!c||!Number.isFinite(Date.parse(c))||e.since!==null&&Date.parse(c)<Date.parse(e.since)}))throw Object.assign(new Error("Retained source boundaries changed; inspect the connection before resuming."),{status:400});return{...t,contentHash:r.contentHash,operationId:r.contentHash===t.contentHash?t.operationId:`sync-${x([t.operationId,"source-normalization",r.contentHash]).slice(0,48)}`}}d(je,"refreshRetainedAdmission");async function k(e){let t=await _(e.credentialHome??eo(Ze(),".openpond"),()=>F({account:e.account,baseUrl:e.accountBaseUrl})),o=e.account?t.apiKey:Ne(t);if(!o)throw Object.assign(new Error("This source is disconnected. Reconnect it with OpenPond Importer to authorize collection."),{status:401});let r={apiKey:o,baseUrl:e.apiBaseUrl,teamId:e.teamId};return{evidence:new Ae(r),sync:new J(r)}}d(k,"collectorClients");var Z=null;async function ee(e,t,o){let r=AbortSignal.any([AbortSignal.timeout(6e4),...t?[t]:[]]);try{return await o(r)}catch(n){let i=n&&typeof n=="object"&&"status"in n?n.status:void 0;throw Object.assign(new Error(`Conversation import ${e} failed: ${n instanceof Error?n.message:String(n)}`,{cause:n}),typeof i=="number"?{status:i}:{})}}d(ee,"admissionStep");var Be={async publishCoverage(e,t,o){let{sync:r}=await k(e);await r.publishCoverage({id:e.id,expectedRevision:e.revision,manifest:t},AbortSignal.any([AbortSignal.timeout(6e4),...o?[o]:[]]))},async heartbeat(e,t,o){let{sync:r}=await k(e),n=await r.heartbeat({id:e.id,expectedRevision:e.revision,...t},AbortSignal.any([AbortSignal.timeout(6e4),...o?[o]:[]]));return{revision:n.revision,state:n.state,destinations:ge(e,n),requestedSyncRevision:n.requestedSyncRevision,completedSyncRevision:n.completedSyncRevision}},async admit(e,t,o){let{evidence:r,sync:n}=await k(e),i=x([e.id,e.revision,e.apiBaseUrl,e.teamId,e.account,e.credentialHome,e.projectId,e.source.instanceId,t.branchLeafId,t.files]);if(Z?.key!==i){let m=Buffer.from(JSON.stringify(t.files.map(C=>({path:C.path,encoding:"zstd",base64:oo(Buffer.from(C.text)).toString("base64")})))),p=ue({source:e.source.source,files:t.files,acquisition:{machineId:e.source.machineId,sourceInstanceId:e.source.instanceId},...t.branchLeafId?{branchLeafId:t.branchLeafId}:{}});Z={key:i,bytes:m,upload:{hash:ae(m),parts:Math.ceil(m.length/2e5)},nextPart:0,normalized:p}}let c=Z,s=je(e,t,c.normalized),a=c.upload;for(;c.nextPart<a.parts;){let m=c.nextPart,p=Math.min(4,a.parts-m),C=await Promise.allSettled(Array.from({length:p},(R,j)=>{let B=m+j;return ee(`upload part ${B+1}/${a.parts}`,o,K=>r.uploadPart({...a,index:B,base64:c.bytes.subarray(B*2e5,(B+1)*2e5).toString("base64")},K))})),v=C.findIndex(R=>R.status==="rejected");c.nextPart+=v<0?p:v;let S=C[v];if(S?.status==="rejected")throw S.reason}let f={upload:a,source:e.source.source,...t.branchLeafId?{branchLeafId:t.branchLeafId}:{},destination:{kind:"existing",projectId:e.projectId},acquisition:{machineId:e.source.machineId,sourceInstanceId:e.source.instanceId}},l=c.preview??=await ee("preview",o,m=>r.preview(f,m));if(l.issues.length)throw Object.assign(new Error("Source schema was rejected; inspect the connection before resuming."),{status:400});let w=l.sessions.find(m=>m.sessionHash===s.contentHash);if(!w||t.boundaryIds.some(m=>!w.boundaries.some(p=>p.id===m&&p.projection==="turn"&&p.terminal!=="unknown")))throw Object.assign(new Error("Server preview differs from the retained source boundaries."),{status:400});let h={...f,operationId:s.operationId,previewHash:l.previewHash,selection:[{sessionHash:w.sessionHash,boundaryIds:t.boundaryIds}]},b=Ue.parse(await ee("commit",o,m=>n.commit({connectionId:e.id,expectedRevision:e.revision,request:h},m)));if(b.state!=="completed"||b.operationId!==s.operationId||b.requestHash!==x(h)||b.projectId!==e.projectId)throw new Error("Admission did not acknowledge this retained operation.")}};function G(e){if(e.everyMinute!==void 0)throw new Error("Every-minute imports are no longer supported. Use --continual --hourly or a slower schedule.");let t=y(e.continual),o=["daily","weekly","hourly"].filter(a=>y(e[a]));e.cron!==void 0&&o.push("cron");let r=e.at!==void 0||e.on!==void 0;if(!t&&(o.length||r))throw new Error("Add --continual to enable recurring imports. Without it, imports run once.");if(!t)return null;if(o.length>1)throw new Error("Choose one cadence: --daily, --weekly, --hourly, or --cron.");if(e.off!==void 0)throw new Error("Choose --continual or --off, not both.");let n=o[0]??"daily";if(["cron","hourly"].includes(n)){if(r)throw new Error("--at and --on are for daily/weekly imports; use a cron expression for other times.");return n==="cron"?be({frequency:"cron",expression:u(e,"cron")}):{frequency:"hourly"}}if(n!=="weekly"&&e.on!==void 0)throw new Error("--on selects a weekday and requires --weekly.");let i=ve(e.at===void 0?"00:00":u(e,"at"));if(n==="daily")return{frequency:"daily",time:i};let c=e.on===void 0?"mon":u(e,"on").toLowerCase(),s=ye.findIndex(a=>a===c);if(s<0)throw new Error("Use --on sun|mon|tue|wed|thu|fri|sat (default: mon).");return{frequency:"weekly",time:i,day:s}}d(G,"importSchedule");import{setTimeout as to}from"node:timers/promises";async function Pe(e){console.log("Importing saved conversations. Ctrl+C cancels this run; queued work is retained.");let t=0;try{for(;!e.signal.aborted;){let n=(await O(e.directory)).connections.filter(s=>!e.connectionId||s.id===e.connectionId).find(s=>s.run?.state==="running"),i=n?.run,c=n&&i?`${n.source}: ${i.phase} \xB7 ${i.processed}/${i.discovered} conversations checked \xB7 ${i.uploaded} turns uploaded \xB7 ${n.queued} queued`:"Starting import\u2026";process.stdout.clearLine(0),process.stdout.cursorTo(0),process.stdout.write(`${["|","/","-","\\"][t++%4]} ${c}`);try{await to(500,void 0,{signal:e.signal})}catch{if(!e.signal.aborted)throw new Error("Import progress interrupted.")}}}finally{process.stdout.clearLine(0),process.stdout.cursorTo(0)}}d(Pe,"monitorImport");async function P(e){let t=new AbortController,o=d(()=>t.abort(new Error("Import cancelled.")),"stop");process.once("SIGINT",o),process.once("SIGTERM",o);let r=new AbortController,n=!!process.stdin.isTTY&&!!process.stdout.isTTY&&!e.json,i;try{let s=Ce({directory:e.directory,signal:t.signal,until:e.until,...e.connectionId?{connectionIds:[e.connectionId]}:{},...e.retainedStart?{}:{trigger:e.scheduled?"scheduled":"manual"},transport:Be}).finally(()=>r.abort());await Promise.all([s,n?Pe({directory:e.directory,connectionId:e.connectionId,signal:r.signal}):Promise.resolve()]),i=await O(e.directory)}finally{r.abort(),process.off("SIGINT",o),process.off("SIGTERM",o)}let c=i.connections.filter(s=>!e.connectionId||s.id===e.connectionId);if(e.json)console.log(JSON.stringify(i,null,2));else for(let s of c){let a=s.run;a&&console.log(`${s.source}: ${a.state}. ${a.processed} conversations checked, ${a.uploaded} turns uploaded, ${s.queued} queued.${a.error?` ${a.error}`:""}`),console.log(s.schedule?`Continual imports: ${H(s.schedule)} (${i.timezone}). Next: ${s.nextRunAt??"source paused"}.`:"Automatic sync is off. Run openpond import sync to import again.")}return t.signal.aborted?process.exitCode=130:c.some(s=>s.run?.state==="failed")&&(process.exitCode=1),i}d(P,"runImportJob");import{readFile as no}from"node:fs/promises";async function oe(e){let t=await no(e);if(t.byteLength>1024*1024)throw new Error("Conversation selection exceeds 1 MiB.");return me.parse(JSON.parse(t.toString("utf8")))}d(oe,"readUploadSelection");async function qe(e,t){let o=await L(e.source,await oe(t));return{...e,since:null,selectedSessionKeys:[...o.sessionKeys].sort()}}d(qe,"applyUploadSelection");function W(e){return{directory:e,executable:process.execPath,args:[...process.execArgv,process.argv[1]],environment:{...process.env.OPENPOND_HOME?{OPENPOND_HOME:process.env.OPENPOND_HOME}:{},...process.env.ELECTRON_RUN_AS_NODE==="1"?{ELECTRON_RUN_AS_NODE:"1"}:{}}}}d(W,"collectorSetup");async function He(e,t,o,r){let n=d(c=>console.log(JSON.stringify(c,null,2)),"print"),i=y(r.json);if(t==="status")return n(await O(e)),!0;if(t==="conversations"){if(!o)throw new Error("Use openpond import conversations <connection-id> [--query <text>] [--range day|week|all] [--offset <number>].");let c=await N.open(e);try{let s=c.connections().find(a=>a.id===o);if(!s)throw new Error("Select a retained connection from import status.");n({sourceInstanceId:s.source.instanceId,...we(s,await he(s.source),{query:u(r,"query"),range:u(r,"range")||"all",offset:Number(u(r,"offset")||"0")})})}finally{c.close()}return!0}if(t==="coverage"){if(!o)throw new Error("Use openpond import coverage <connection-id>.");let c=await N.open(e);try{if(!c.connections().some(a=>a.id===o))throw new Error("Select a retained connection from import status.");let s=c.coverage.manifest(o);if(!s)throw new Error("This connection has no retained source coverage. Run import sync first.");n({manifest:s,summary:c.coverage.summary(o)})}finally{c.close()}return!0}if(t==="cancel")return n(await Q(e,"stop")),!0;if(t==="schedule"){if(!o)throw new Error("Use openpond import schedule <connection-id> --continual [--daily|--weekly|--hourly|--cron <expression>] or --off.");let c=G(r),s=y(r.off);if(!c&&!s)throw new Error("Choose --continual [--daily|--weekly|--hourly|--cron <expression>] or --off.");return n(await M(W(e),o,c)),!0}if(t==="sync"){let c=await O(e);if(o&&!c.connections.some(a=>a.id===o&&a.state==="active"))throw new Error("Select an active connection from import status; resume or reconnect it first.");if(!c.connections.some(a=>a.state==="active"))throw new Error("No active sources. Connect or resume a source first.");let s=u(r,"selectionFile");if(s){if(!o)throw new Error("Select a connection ID when uploading chosen conversations.");if(c.running)throw new Error("Wait for the running import or cancel it before selecting more conversations.");let a=await N.open(e);try{let f=a.connections().find(w=>w.id===o);if(!f)throw new Error("The selected connection is unavailable.");let l=await qe(f,s);if(f.since!==null){let{sync:w}=await k(f),h=await w.register({id:f.id,source:f.source.source,machineId:f.source.machineId,sourceInstanceId:f.source.instanceId,sourceLabel:$[f.source.source],sourceRoot:f.source.root,destination:{kind:"existing",projectId:f.projectId},since:null,keepSyncing:f.keepSyncing,expectedRevision:f.revision});l={...l,revision:h.revision,state:h.state,requestedSyncRevision:h.requestedSyncRevision,completedSyncRevision:h.completedSyncRevision}}a.put(l)}finally{a.close()}}else if(!c.connections.some(a=>a.state==="active"&&(!o||a.id===o)&&a.selectedConversations!==0))throw new Error("Choose conversations first with --selection-file <path>.");return await P({directory:e,connectionId:o,json:i,until:u(r,"until")||void 0}),!0}if(t!=="service")return!1;if(o==="status")n(await O(e));else if(o==="stop")n(await Q(e,"stop"));else if(o==="uninstall")n(await xe(e));else if(o==="install")n(await Ee(W(e)));else if(o==="start")await P({directory:e,json:i});else if(o==="run")await P({directory:e,json:i,scheduled:y(r.scheduled),retainedStart:!y(r.scheduled)});else throw new Error("usage: openpond import service <install|start|stop|status|run|uninstall>");return!0}d(He,"runImporterControl");async function te(e,t){let o=await N.open(e),r;try{r=o.connections().find(n=>n.id===t)}finally{o.close()}if(!r)throw new Error("Select a retained connection from openpond import status.");if(r.source.machineId!==await z(e))throw new Error("This connection belongs to another machine. Use explicit Connect setup.");if(!r.accountBaseUrl)throw new Error("The original sign-in destination is unavailable. Use explicit Connect setup.");return r}d(te,"retainedReconnect");function Ke(e,t){if(!t?.available||!t.capabilities.history||t.source!==e.source.source||t.machineId!==e.source.machineId||t.instanceId!==e.source.instanceId||t.root!==e.source.root)throw new Error("The retained source is unavailable or its identity changed. Restore its original location or use explicit Connect setup.")}d(Ke,"assertReconnectSource");async function De(e,t){let o=await te(e,t.id),r=d(n=>({...n,destinations:void 0,requestedSyncRevision:n.requestedSyncRevision??0,completedSyncRevision:n.completedSyncRevision??0}),"scope");if(x(r(o))!==x(r(t)))throw new Error("The connection changed during sign-in. Reconnect again after reviewing its current scope.")}d(De,"assertReconnectUnchanged");import{createInterface as ro}from"node:readline/promises";async function _e(e,t,o,r){let n=u(r,"session");if(!o||!n)throw new Error("Use openpond import branches <connection-id> --session <native-session-id>.");let i=await Ie(e,o,n);if(t==="branches"){console.log(JSON.stringify(i,null,2));return}let c=process.stdin.isTTY&&process.stdout.isTTY&&!y(r.json),s=u(r,"leaf"),a=u(r,"revision");if(!s&&c){i.branches.forEach((w,h)=>console.log(`${h+1}. ${w.title||w.leafId} (${w.messages} messages; ${w.updatedAt||"date unavailable"})`));let l=ro({input:process.stdin,output:process.stdout});try{s=i.branches[Number(await l.question("Choose the branch to sync: "))-1]?.leafId??"",a=i.revision}finally{l.close()}}if(!s||!a)throw new Error("Supply --leaf and --revision from import branches, or choose interactively. No branch was selected.");if(!i.branches.some(l=>l.leafId===s)||a!==i.revision)throw new Error("Branch selection is stale or invalid. Run import branches again.");if(!y(r.yes)&&(!c||!await Y("Sync only this branch and its unambiguous future continuation for this conversation? Other branches stay excluded.",!1)))throw new Error("Branch selection was not approved.");let f=await Se(e,o,n,{leafId:s,revision:a});console.log(JSON.stringify({...f,next:`openpond import resume ${o}`},null,2))}d(_e,"runImporterBranchCommand");async function $t(e,t){let[o="connect",r]=t,n=Me(u(e,"collectorDir")||Re()),i=y(e.json),c=d(I=>console.log(JSON.stringify(I,null,2)),"print"),s=G(e),a=y(e.upload),f=u(e,"selectionFile");if(a&&!["connect","reconnect"].includes(o))throw new Error("Use --upload with import connect or reconnect; import sync is already an explicit upload.");if(f&&!["connect","reconnect","sync"].includes(o))throw new Error("Use --selection-file with connect, reconnect, or sync.");if(f&&o!=="sync"&&!a)throw new Error("Use --upload to confirm the selected initial upload.");if(s&&!a&&o==="connect")throw new Error("Select an initial upload with --upload before enabling continual imports.");if(e.until&&o!=="sync")throw new Error("Use --until with import sync to select a fixed event-time cutoff.");if(s&&!["connect","reconnect","schedule"].includes(o))throw new Error("Use --continual with import connect, reconnect, or schedule.");if(y(e.off)&&o!=="schedule")throw new Error("Use import schedule <connection-id> --off to disable recurring imports.");if(o==="branches"||o==="branch"){await _e(n,o,r,e);return}if(await He(n,o,r,e))return;if(["pause","resume","disconnect"].includes(o)){let I=await N.open(n),U;try{U=I.connections().find(Je=>Je.id===r)}finally{I.close()}if(!U)throw new Error("Select a connection id from openpond import status.");let{sync:A}=await k(U),q=await A.control({id:U.id,expectedRevision:U.revision,action:o});await V(n,{...U,revision:q.revision,state:q.state}),c(q);return}let l=o==="reconnect"?await te(n,r):null;l&&(e={...e,source:l.source.source,sourcePath:l.source.root,project:l.projectId,connection:l.id,team:l.teamId,apiBaseUrl:l.apiBaseUrl,baseUrl:l.accountBaseUrl});let w=u(e,"source");if(w&&!(w in $))throw new Error("Choose a supported native source name.");let h=await z(n),b=await pe({machineId:h,...w&&u(e,"sourcePath")?{locations:{[w]:Me(u(e,"sourcePath"))}}:{}});if(o==="discover"){c(b);return}if(o!=="connect"&&o!=="reconnect")throw new Error("usage: openpond import <connect|reconnect|discover|status|conversations|coverage|sync|schedule|cancel|pause|resume|disconnect|branches|branch|service>");let m=b.filter(I=>I.source===w),p=m.length===1?m[0]:void 0,C=process.stdin.isTTY&&process.stdout.isTTY&&!i;if(l&&Ke(l,p),!p&&C){let I=m.length>1?m:b.filter(A=>A.available);I.forEach((A,q)=>console.log(`${q+1}. ${$[A.source]} ${A.root}${A.capabilities.history?"":` (${A.reason})`}`));let U=Le({input:process.stdin,output:process.stdout});try{p=I[Number(await U.question("Choose a source: "))-1]}finally{U.close()}}if(!p?.capabilities.history)throw new Error(p?.reason??(m.length>1?"Multiple source instances found. Select the exact --source-path or use interactive setup.":"Select --source and optionally --source-path."));let v=u(e,"range")||"week";if(a&&!l&&C&&!e.range){let I=Le({input:process.stdin,output:process.stdout});try{v=(await I.question("Initial history: day, week, or all [default: week]: ")).trim()||"week"}finally{I.close()}}if(!["day","week","all"].includes(v))throw new Error("--range must be day, week or all.");let S=f?null:l?l.since:v==="all"?null:new Date(Date.now()-(v==="day"?1:7)*864e5).toISOString(),R=l?S?`since ${S}`:"all":v==="week"?`last week${e.range?"":" (default)"}`:v==="day"?"last day":"all",j=f?await L(p,await oe(f)):null,B=j?j.sessionKeys:l?l.selectedSessionKeys:a?void 0:[],K=await fe(p,{since:S??void 0,limit:100});i||console.log(`Found ${K.items.length}${K.nextCursor?"+":""} sessions in ${p.root}. Initial history: ${R}.`),i||console.log(a?s?`Continual imports: ${H(s)} local time. Continual learning is unchanged.`:"One-time import. Continual imports default to off; existing schedules are unchanged.":"Connect only. No conversations will be uploaded. Choose conversations with import sync --selection-file when ready.");let D=u(e,"project");if(!y(e.yes)&&(!C||!await Y(`Connect this source to ${D||"your personal Imported conversations Project"}${a?` and upload ${j?`${j.sessionKeys.length} selected conversations`:"the selected history window"}`:" without uploading history"}${s?` and enable continual imports ${H(s)} local time`:""}?`,!0)))throw new Error("Connection was not approved. No history was uploaded.");let ne=l?l.credentialHome??so(io(),".openpond"):ie(),T=await _(ne,()=>ke(p,e)),re=new J(T),se=u(e,"connection")||`sync-${x([T.baseUrl,T.teamId,p.instanceId,D||"default"]).slice(0,40)}`;l&&await De(n,l);let ze=(await re.list()).items.find(I=>I.id===se),E=await re.register({id:se,source:p.source,machineId:h,sourceInstanceId:p.instanceId,sourceLabel:$[p.source],sourceRoot:p.root,destination:D?{kind:"existing",projectId:D}:{kind:"new",name:"Imported conversations"},since:S,keepSyncing:!1,expectedRevision:ze?.revision??0});await V(n,{id:E.id,teamId:T.teamId,apiBaseUrl:T.baseUrl,account:T.account,accountBaseUrl:T.accountBaseUrl,credentialHome:ne,source:p,projectId:E.projectId,revision:E.revision,requestedSyncRevision:E.requestedSyncRevision,completedSyncRevision:E.completedSyncRevision,since:S,selectedSessionKeys:B,keepSyncing:!1,state:E.state}),s&&await M(W(n),E.id,s),a?await P({directory:n,connectionId:E.id,json:i}):i?c({connectionId:E.id,uploaded:!1}):console.log(`Connected ${E.id}. Choose conversations to upload when ready.`)}d($t,"runImportCommand");export{$t as runImportCommand};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{$ as aa,$a as ab,$b as ac,A as B,Aa as Ba,Ab as Bb,B as C,Ba as Ca,Bb as Cb,C as D,Ca as Da,Cb as Db,D as E,Da as Ea,Db as Eb,E as F,Ea as Fa,Eb as Fb,F as G,Fa as Ga,Fb as Gb,G as H,Ga as Ha,Gb as Hb,H as I,Ha as Ia,Hb as Ib,I as J,Ia as Ja,Ib as Jb,J as K,Ja as Ka,Jb as Kb,K as L,Ka as La,Kb as Lb,L as M,La as Ma,Lb as Mb,M as N,Ma as Na,Mb as Nb,N as O,Na as Oa,Nb as Ob,O as P,Oa as Pa,Ob as Pb,P as Q,Pa as Qa,Pb as Qb,Q as R,Qa as Ra,Qb as Rb,R as S,Ra as Sa,Rb as Sb,S as T,Sa as Ta,Sb as Tb,T as U,Ta as Ua,Tb as Ub,U as V,Ua as Va,Ub as Vb,V as W,Va as Wa,Vb as Wb,W as X,Wa as Xa,Wb as Xb,X as Y,Xa as Ya,Xb as Yb,Y as Z,Ya as Za,Yb as Zb,Z as _,Za as _a,Zb as _b,_ as $,_a as $a,_b as $b,a,aa as ba,ab as bb,ac as bc,b as c,ba as ca,bb as cb,bc as cc,c as d,ca as da,cb as db,cc as dc,d as e,da as ea,db as eb,dc as ec,e as f,ea as fa,eb as fb,ec as fc,f as g,fa as ga,fb as gb,fc as gc,g as h,ga as ha,gb as hb,gc as hc,h as i,ha as ia,hb as ib,hc as ic,i as j,ia as ja,ib as jb,ic as jc,j as k,ja as ka,jb as kb,jc as kc,k as l,ka as la,kb as lb,kc as lc,l as m,la as ma,lb as mb,lc as mc,m as n,ma as na,mb as nb,mc as nc,n as o,na as oa,nb as ob,nc as oc,o as p,oa as pa,ob as pb,oc as pc,p as q,pa as qa,pb as qb,pc as qc,q as r,qa as ra,qb as rb,qc as rc,r as s,ra as sa,rb as sb,rc as sc,s as t,sa as ta,sb as tb,sc as tc,t as u,ta as ua,tb as ub,tc as uc,u as v,ua as va,ub as vb,uc as vc,v as w,va as wa,vb as wb,vc as wc,w as x,wa as xa,wb as xb,wc as xc,x as y,xa as ya,xb as yb,xc as yc,y as z,ya as za,yb as zb,z as A,za as Aa,zb as Ab}from"./chunk-4PUOWSDE.js";import{Aa as b}from"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-RCT3O3HQ.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{kc as AcceptanceAttemptSchema,cc as AcceptanceCheckSchema,ic as AcceptanceGroupManifestContentSchema,jc as AcceptanceGroupManifestSchema,lc as AcceptanceGroupSnapshotContentSchema,mc as AcceptanceGroupSnapshotSchema,gc as AcceptanceMeasurementSchema,dc as AcceptancePlanContentSchema,ec as AcceptancePlanSchema,Fa as ApplyTaskCorrectionCommandSchema,Ma as ArchiveAuthoringDraftCommandSchema,qa as AuthoringDraftContentSchema,sa as AuthoringDraftFinalizationSchema,pa as AuthoringDraftInputSchema,ra as AuthoringDraftSchema,oa as AuthoringTargetKindSchema,d as BoundJudgeResponseSchema,Sa as CancelLearningIterationCommandSchema,Ra as CancelLearningIterationReservationCommandSchema,Oa as CancelRewardCheckCommandSchema,Ka as CancelTaskGradeCommandSchema,na as CombinedRewardAuthoringFieldsSchema,xc as CorrectionMetricObservationSchema,yc as CorrectionMetricSummarySchema,wc as CorrectionOpportunitySchema,tc as CorrectionVerificationCheckSchema,uc as CorrectionVerificationPlanContentSchema,vc as CorrectionVerificationPlanSchema,ab as DEFAULT_REWARD_VERIFIER_SOURCE,Aa as ImportTaskIntakeCommandSchema,f as JudgeCallReservationSchema,H as LearningAcceptedParentSchema,$b as LearningCandidateDecisionObservationSchema,ga as LearningChainSchema,Eb as LearningCommandRequestSchema,Ua as LearningCommandSchema,pb as LearningConflictError,ia as LearningConsumptionSchema,a as LearningContinuationModeOverrideSchema,s as LearningDatasetOriginSchema,b as LearningDomainError,ha as LearningEligibilityCountsSchema,Wa as LearningIterationAdmissionSchema,Ya as LearningIterationDispatchSchema,Za as LearningIterationObservationSchema,ja as LearningIterationReservationSchema,J as LearningIterationSchema,I as LearningIterationStatusSchema,Xa as LearningIterationSubmissionDeferralSchema,Va as LearningIterationSubmissionSchema,fa as LearningIterationTriggerSchema,l as LearningJsonObjectSchema,n as LearningJsonPointerSchema,Hb as LearningOperationResultSchema,F as LearningPolicyContentSchema,xb as LearningPolicyInspectionResultSchema,G as LearningPolicySchema,Fb as LearningReadRequestSchema,ob as LearningResourceKindSchema,L as LearningResourceSchema,r as LearningReviewOriginSchema,m as LearningRevisionRefSchema,$a as LearningScheduleFireSchema,_a as LearningScheduleSchema,t as LearningSourceContentSchema,u as LearningSourceSchema,Bb as LearningTaskQueueInspectionSchema,Q as LearningTextAssetContentSchema,R as LearningTextAssetSchema,Sb as MAX_REWARD_CALIBRATION_CLOSURE_BYTES,i as NightlyScheduleSchema,Pa as PublishCheckedRewardCommandSchema,Ba as PublishLearningResourceCommandSchema,Ca as PublishLearningResourcesCommandSchema,Na as QueueRewardCheckCommandSchema,Ha as QueueTaskGradeCommandSchema,Qa as ReserveLearningIterationCommandSchema,Ga as ResolveTaskFeedbackCommandSchema,Ta as RetryLearningIterationDispatchCommandSchema,Ia as ReviewTaskEvidenceCommandSchema,la as RewardAuthoringFieldsSchema,Tb as RewardCalibrationClosureSchema,ib as RewardCheckRunSchema,gb as RewardCheckRuntimeSchema,ka as RewardFixtureAuthoringFieldsSchema,hb as RewardFixtureCheckResultSchema,fb as RewardFixtureSchema,La as SaveAuthoringDraftCommandSchema,Ja as SealTaskBatchCommandSchema,Da as SubmitTaskExampleCommandSchema,Ea as SubmitTaskFeedbackCommandSchema,ta as TASK_INTAKE_LIMITS,B as TaskAdmissionDecisionContentSchema,C as TaskAdmissionDecisionSchema,D as TaskBatchContentSchema,ca as TaskBatchPackageMetadataSchema,E as TaskBatchSchema,o as TaskDefinitionContentSchema,p as TaskDefinitionSchema,w as TaskEvidenceContentSchema,Gb as TaskEvidenceInspectionResultSchema,x as TaskEvidenceSchema,v as TaskExampleSubmissionSchema,A as TaskFeedbackSchema,z as TaskFeedbackSubmissionSchema,ma as TaskFormatAuthoringFieldsSchema,K as TaskGradeRunSchema,va as TaskIntakeFileSchema,ua as TaskIntakeFormatSchema,xa as TaskIntakePreviewSchema,wa as TaskIntakeRecordSchema,y as TaskRatingSchema,q as TaskSourceMappingSchema,c as TrainingHandoffOriginSchema,sc as acceptanceGroupVerdict,rc as assertAcceptanceBaselineReuse,pc as assertAcceptanceGroupSnapshot,qc as assertAcceptanceGroupUpdate,_ as assertAdmissionDecision,$ as assertGradeIdentity,P as assertLearningContentHash,Db as assertLearningRequestJson,Ab as assertRewardCalibration,eb as authoringNumber,k as coalesceNightlyOccurrences,bb as compileRewardAuthoring,kb as compileRewardCheck,jb as compileRewardFixtures,da as compileTaskBatch,nc as createAcceptanceGroupManifest,oc as createAcceptanceGroupSnapshot,fc as createAcceptancePlan,e as createBoundModelJudgeRunner,h as createBudgetedJudgeExecutor,Rb as createBudgetedRewardFixtureExecutor,Lb as createBuiltinTaskGradeExecutor,Qb as createIsolatedRewardFixtureExecutor,_b as createLearningIterationWorker,bc as createLearningScheduleWorker,Kb as createLearningService,S as createLearningTextAsset,Vb as createRewardCalibrationClosure,Ob as createRewardCheckJudgeBudgetStore,Yb as createRewardCheckWorker,Pb as createTaskGradeJudgeBudgetStore,Mb as createTaskGradeWorker,Ib as decodeTaskIntakeText,Zb as deferLearningIterationSubmission,hc as evaluateAcceptancePlan,lb as executeRewardFixture,Wb as exportRewardCalibrationClosure,yb as inspectLearningPolicy,Cb as inspectLearningTaskQueue,U as inspectTaskEvidence,za as intakeDate,ya as intakeId,g as judgeCommittedSpend,sb as learningEvidenceId,tb as learningOperationId,M as learningRef,nb as learningResourceSchemas,vb as learningScheduleId,W as mapTaskSourceRecord,mb as matchRewardFixture,j as nextNightlyOccurrence,db as parseRewardAuthoringObject,Jb as previewTaskIntake,zb as qualifyRewardCheck,X as readTaskJsonPointer,ac as reconcileLearningCandidateDecision,rb as requireLearningRelease,qb as requireLearningResource,ub as resolveLearningTrainingParent,cb as rewardAuthoringFields,Xb as rewardCalibrationClosureAsset,Nb as rewardFixtureFromRating,N as sameLearningRef,O as sealLearningContent,ba as sealTaskBatch,wb as synchronizeLearningSchedule,Z as taskAttemptEvidence,ea as taskBatchPackageMetadata,aa as taskFamilyReservations,Y as taskRecordFromEvidence,V as validateSourceSubmission,T as verifyLearningTextAsset,Ub as verifyRewardCalibrationClosure};
2
+ import{$ as aa,$a as ab,$b as ac,A as B,Aa as Ba,Ab as Bb,B as C,Ba as Ca,Bb as Cb,C as D,Ca as Da,Cb as Db,D as E,Da as Ea,Db as Eb,E as F,Ea as Fa,Eb as Fb,F as G,Fa as Ga,Fb as Gb,G as H,Ga as Ha,Gb as Hb,H as I,Ha as Ia,Hb as Ib,I as J,Ia as Ja,Ib as Jb,J as K,Ja as Ka,Jb as Kb,K as L,Ka as La,Kb as Lb,L as M,La as Ma,Lb as Mb,M as N,Ma as Na,Mb as Nb,N as O,Na as Oa,Nb as Ob,O as P,Oa as Pa,Ob as Pb,P as Q,Pa as Qa,Pb as Qb,Q as R,Qa as Ra,Qb as Rb,R as S,Ra as Sa,Rb as Sb,S as T,Sa as Ta,Sb as Tb,T as U,Ta as Ua,Tb as Ub,U as V,Ua as Va,Ub as Vb,V as W,Va as Wa,Vb as Wb,W as X,Wa as Xa,Wb as Xb,X as Y,Xa as Ya,Xb as Yb,Y as Z,Ya as Za,Yb as Zb,Z as _,Za as _a,Zb as _b,_ as $,_a as $a,_b as $b,a,aa as ba,ab as bb,ac as bc,b as c,ba as ca,bb as cb,bc as cc,c as d,ca as da,cb as db,cc as dc,d as e,da as ea,db as eb,dc as ec,e as f,ea as fa,eb as fb,ec as fc,f as g,fa as ga,fb as gb,fc as gc,g as h,ga as ha,gb as hb,gc as hc,h as i,ha as ia,hb as ib,hc as ic,i as j,ia as ja,ib as jb,ic as jc,j as k,ja as ka,jb as kb,jc as kc,k as l,ka as la,kb as lb,kc as lc,l as m,la as ma,lb as mb,lc as mc,m as n,ma as na,mb as nb,mc as nc,n as o,na as oa,nb as ob,nc as oc,o as p,oa as pa,ob as pb,oc as pc,p as q,pa as qa,pb as qb,pc as qc,q as r,qa as ra,qb as rb,qc as rc,r as s,ra as sa,rb as sb,rc as sc,s as t,sa as ta,sb as tb,sc as tc,t as u,ta as ua,tb as ub,tc as uc,u as v,ua as va,ub as vb,uc as vc,v as w,va as wa,vb as wb,vc as wc,w as x,wa as xa,wb as xb,wc as xc,x as y,xa as ya,xb as yb,xc as yc,y as z,ya as za,yb as zb,z as A,za as Aa,zb as Ab}from"./chunk-ZEOYNUHL.js";import{Aa as b}from"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-RCT3O3HQ.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{kc as AcceptanceAttemptSchema,cc as AcceptanceCheckSchema,ic as AcceptanceGroupManifestContentSchema,jc as AcceptanceGroupManifestSchema,lc as AcceptanceGroupSnapshotContentSchema,mc as AcceptanceGroupSnapshotSchema,gc as AcceptanceMeasurementSchema,dc as AcceptancePlanContentSchema,ec as AcceptancePlanSchema,Fa as ApplyTaskCorrectionCommandSchema,Ma as ArchiveAuthoringDraftCommandSchema,qa as AuthoringDraftContentSchema,sa as AuthoringDraftFinalizationSchema,pa as AuthoringDraftInputSchema,ra as AuthoringDraftSchema,oa as AuthoringTargetKindSchema,d as BoundJudgeResponseSchema,Sa as CancelLearningIterationCommandSchema,Ra as CancelLearningIterationReservationCommandSchema,Oa as CancelRewardCheckCommandSchema,Ka as CancelTaskGradeCommandSchema,na as CombinedRewardAuthoringFieldsSchema,xc as CorrectionMetricObservationSchema,yc as CorrectionMetricSummarySchema,wc as CorrectionOpportunitySchema,tc as CorrectionVerificationCheckSchema,uc as CorrectionVerificationPlanContentSchema,vc as CorrectionVerificationPlanSchema,ab as DEFAULT_REWARD_VERIFIER_SOURCE,Aa as ImportTaskIntakeCommandSchema,f as JudgeCallReservationSchema,H as LearningAcceptedParentSchema,$b as LearningCandidateDecisionObservationSchema,ga as LearningChainSchema,Eb as LearningCommandRequestSchema,Ua as LearningCommandSchema,pb as LearningConflictError,ia as LearningConsumptionSchema,a as LearningContinuationModeOverrideSchema,s as LearningDatasetOriginSchema,b as LearningDomainError,ha as LearningEligibilityCountsSchema,Wa as LearningIterationAdmissionSchema,Ya as LearningIterationDispatchSchema,Za as LearningIterationObservationSchema,ja as LearningIterationReservationSchema,J as LearningIterationSchema,I as LearningIterationStatusSchema,Xa as LearningIterationSubmissionDeferralSchema,Va as LearningIterationSubmissionSchema,fa as LearningIterationTriggerSchema,l as LearningJsonObjectSchema,n as LearningJsonPointerSchema,Hb as LearningOperationResultSchema,F as LearningPolicyContentSchema,xb as LearningPolicyInspectionResultSchema,G as LearningPolicySchema,Fb as LearningReadRequestSchema,ob as LearningResourceKindSchema,L as LearningResourceSchema,r as LearningReviewOriginSchema,m as LearningRevisionRefSchema,$a as LearningScheduleFireSchema,_a as LearningScheduleSchema,t as LearningSourceContentSchema,u as LearningSourceSchema,Bb as LearningTaskQueueInspectionSchema,Q as LearningTextAssetContentSchema,R as LearningTextAssetSchema,Sb as MAX_REWARD_CALIBRATION_CLOSURE_BYTES,i as NightlyScheduleSchema,Pa as PublishCheckedRewardCommandSchema,Ba as PublishLearningResourceCommandSchema,Ca as PublishLearningResourcesCommandSchema,Na as QueueRewardCheckCommandSchema,Ha as QueueTaskGradeCommandSchema,Qa as ReserveLearningIterationCommandSchema,Ga as ResolveTaskFeedbackCommandSchema,Ta as RetryLearningIterationDispatchCommandSchema,Ia as ReviewTaskEvidenceCommandSchema,la as RewardAuthoringFieldsSchema,Tb as RewardCalibrationClosureSchema,ib as RewardCheckRunSchema,gb as RewardCheckRuntimeSchema,ka as RewardFixtureAuthoringFieldsSchema,hb as RewardFixtureCheckResultSchema,fb as RewardFixtureSchema,La as SaveAuthoringDraftCommandSchema,Ja as SealTaskBatchCommandSchema,Da as SubmitTaskExampleCommandSchema,Ea as SubmitTaskFeedbackCommandSchema,ta as TASK_INTAKE_LIMITS,B as TaskAdmissionDecisionContentSchema,C as TaskAdmissionDecisionSchema,D as TaskBatchContentSchema,ca as TaskBatchPackageMetadataSchema,E as TaskBatchSchema,o as TaskDefinitionContentSchema,p as TaskDefinitionSchema,w as TaskEvidenceContentSchema,Gb as TaskEvidenceInspectionResultSchema,x as TaskEvidenceSchema,v as TaskExampleSubmissionSchema,A as TaskFeedbackSchema,z as TaskFeedbackSubmissionSchema,ma as TaskFormatAuthoringFieldsSchema,K as TaskGradeRunSchema,va as TaskIntakeFileSchema,ua as TaskIntakeFormatSchema,xa as TaskIntakePreviewSchema,wa as TaskIntakeRecordSchema,y as TaskRatingSchema,q as TaskSourceMappingSchema,c as TrainingHandoffOriginSchema,sc as acceptanceGroupVerdict,rc as assertAcceptanceBaselineReuse,pc as assertAcceptanceGroupSnapshot,qc as assertAcceptanceGroupUpdate,_ as assertAdmissionDecision,$ as assertGradeIdentity,P as assertLearningContentHash,Db as assertLearningRequestJson,Ab as assertRewardCalibration,eb as authoringNumber,k as coalesceNightlyOccurrences,bb as compileRewardAuthoring,kb as compileRewardCheck,jb as compileRewardFixtures,da as compileTaskBatch,nc as createAcceptanceGroupManifest,oc as createAcceptanceGroupSnapshot,fc as createAcceptancePlan,e as createBoundModelJudgeRunner,h as createBudgetedJudgeExecutor,Rb as createBudgetedRewardFixtureExecutor,Lb as createBuiltinTaskGradeExecutor,Qb as createIsolatedRewardFixtureExecutor,_b as createLearningIterationWorker,bc as createLearningScheduleWorker,Kb as createLearningService,S as createLearningTextAsset,Vb as createRewardCalibrationClosure,Ob as createRewardCheckJudgeBudgetStore,Yb as createRewardCheckWorker,Pb as createTaskGradeJudgeBudgetStore,Mb as createTaskGradeWorker,Ib as decodeTaskIntakeText,Zb as deferLearningIterationSubmission,hc as evaluateAcceptancePlan,lb as executeRewardFixture,Wb as exportRewardCalibrationClosure,yb as inspectLearningPolicy,Cb as inspectLearningTaskQueue,U as inspectTaskEvidence,za as intakeDate,ya as intakeId,g as judgeCommittedSpend,sb as learningEvidenceId,tb as learningOperationId,M as learningRef,nb as learningResourceSchemas,vb as learningScheduleId,W as mapTaskSourceRecord,mb as matchRewardFixture,j as nextNightlyOccurrence,db as parseRewardAuthoringObject,Jb as previewTaskIntake,zb as qualifyRewardCheck,X as readTaskJsonPointer,ac as reconcileLearningCandidateDecision,rb as requireLearningRelease,qb as requireLearningResource,ub as resolveLearningTrainingParent,cb as rewardAuthoringFields,Xb as rewardCalibrationClosureAsset,Nb as rewardFixtureFromRating,N as sameLearningRef,O as sealLearningContent,ba as sealTaskBatch,wb as synchronizeLearningSchedule,Z as taskAttemptEvidence,ea as taskBatchPackageMetadata,aa as taskFamilyReservations,Y as taskRecordFromEvidence,V as validateSourceSubmission,T as verifyLearningTextAsset,Ub as verifyRewardCalibrationClosure};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a as p,b}from"./chunk-2QHB5P2K.js";import"./chunk-BZS2PA4O.js";import{Cb as w,Ta as h,nb as f}from"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import{a as d}from"./chunk-HIMG7S5E.js";import"./chunk-REGKOCDO.js";import{a as g}from"./chunk-JF7WWLNW.js";import"./chunk-BSHAIAXY.js";import"./chunk-XWPC3AN4.js";import{c as t}from"./chunk-3M53YXEI.js";import"./chunk-EJOV6Z6F.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-GLUWATL5.js";import"./chunk-MZKCW6CB.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-TBODQT4W.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import{a as l}from"./chunk-FTQLQJQV.js";import{readFile as k}from"node:fs/promises";async function v(e,u){let[r,m,a]=u;if(!r||!["get","list","command","publish-batch"].includes(r)||u.length>3)throw new Error("Use learning <get|list> <kind> [id] or learning <command|publish-batch> --input-file <path>, with --team-id.");let{context:S,baseUrl:L,teamId:I}=await d(e),o=new b({baseUrl:L,apiKey:S.token,scope:I,fetch:l((i,n)=>g(i,{...n,signal:n?.signal?AbortSignal.any([n.signal,AbortSignal.timeout(6e4)]):AbortSignal.timeout(6e4)}),"fetch")}),s;if(r==="get"||r==="list"){let i=f.parse(m);if(r==="get"){if(!a)throw new Error("Select a learning resource ID.");let n=t(e,"revision");s=await o.get(i,a,n?Number(n):void 0)}else{if(a)throw new Error("List accepts a resource kind, with --after-id for pagination.");s=await o.list(i,{limit:Number(t(e,"limit")||"30"),...t(e,"afterId")?{afterId:t(e,"afterId")}:{},...t(e,"parentId")?{parentId:t(e,"parentId")}:{},...t(e,"status")?{status:t(e,"status")}:{}})}}else{if(m||a)throw new Error("This action takes --input-file rather than positional resource identifiers.");let i=t(e,"inputFile");if(!i)throw new Error("Select --input-file <absolute-json-path>.");let n=await k(i);if(n.byteLength>16777216)throw new Error("Learning input exceeds 16 MiB.");let c=JSON.parse(n.toString("utf8"));w(c),s=r==="command"?await o.command(h.parse(c)):await o.publishBatch(p.parse(c))}console.log(JSON.stringify(s,null,2))}l(v,"runLearningCommand");export{v as runLearningCommand};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a}from"./chunk-OQ4RWCYI.js";import"./chunk-WLQEONBF.js";import"./chunk-USTDWGR4.js";import"./chunk-D2V2Y3FB.js";import"./chunk-IZ6DLEVY.js";import"./chunk-SVLVIYH2.js";import"./chunk-BQNU4HZW.js";import"./chunk-AFKFN25T.js";import"./chunk-G4747MOW.js";import"./chunk-KCJVFLBB.js";import"./chunk-VJYOKU3C.js";import"./chunk-SSJV3VX7.js";import"./chunk-7KWD2I6W.js";import"./chunk-OFJPOTES.js";import"./chunk-U7D6Q744.js";import"./chunk-WXG3G2O6.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-OXRN2257.js";import"./chunk-UTIELP6F.js";import"./chunk-TOWY6Y23.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-LZPCA6DH.js";import"./chunk-L3KS6MOV.js";import"./chunk-7J2NMUTK.js";import"./chunk-NK2L5HA2.js";import"./chunk-W45RKGM6.js";import"./chunk-73COPJ32.js";import"./chunk-UGDBMRCT.js";import"./chunk-SSHE6B7Z.js";import"./chunk-EDYCSW22.js";import"./chunk-Z6HWSTEP.js";import"./chunk-XGY4OQLC.js";import"./chunk-2PVW2XFF.js";import"./chunk-64EDQ7UV.js";import"./chunk-DLOJG7LP.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-JXLDEYRW.js";import"./chunk-GR4MJJCE.js";import"./chunk-GG6PM7TB.js";import"./chunk-2GEZ3ZY7.js";import"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{a as createLocalHarnessImprovementRuntime};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{i as a,j as b}from"./chunk-ZG3DBXQG.js";import"./chunk-OEAKX5TS.js";import"./chunk-UMRQKE3W.js";import"./chunk-S7A2OGL2.js";import"./chunk-HUMNLSCV.js";import"./chunk-XVDFJ3ZF.js";import"./chunk-FEAKTSRS.js";import"./chunk-O5ZOW474.js";import"./chunk-SDO4FC4Q.js";import"./chunk-IR3YJWPW.js";import"./chunk-NDNSLCPE.js";import"./chunk-CWE2N3JI.js";import"./chunk-O4YHISU2.js";import"./chunk-QKGNAYSC.js";import"./chunk-HT6ILPD6.js";import"./chunk-VMW23TIZ.js";import"./chunk-5LKEVB2P.js";import"./chunk-23YW5PAQ.js";import"./chunk-AN525SPP.js";import"./chunk-IZ6DLEVY.js";import"./chunk-SYUKES6H.js";import"./chunk-6I5AUTVO.js";import"./chunk-SSJV3VX7.js";import"./chunk-7KWD2I6W.js";import"./chunk-2ACX7IW5.js";import"./chunk-OFJPOTES.js";import"./chunk-PLROXHG2.js";import"./chunk-YU3C6U5V.js";import"./chunk-KVTBX2UP.js";import"./chunk-U7D6Q744.js";import"./chunk-WXG3G2O6.js";import"./chunk-OQPJ7FJF.js";import"./chunk-BL3CZWWD.js";import"./chunk-FYWQWKVS.js";import"./chunk-GD3RCUDH.js";import"./chunk-OXRN2257.js";import"./chunk-UTIELP6F.js";import"./chunk-TOWY6Y23.js";import"./chunk-4V73I4OL.js";import"./chunk-LE75SVEL.js";import"./chunk-6ESBAHWK.js";import"./chunk-L3KS6MOV.js";import"./chunk-7J2NMUTK.js";import"./chunk-NK2L5HA2.js";import"./chunk-W45RKGM6.js";import"./chunk-73COPJ32.js";import"./chunk-UGDBMRCT.js";import"./chunk-SSHE6B7Z.js";import"./chunk-EDYCSW22.js";import"./chunk-Z6HWSTEP.js";import"./chunk-XGY4OQLC.js";import"./chunk-2PVW2XFF.js";import"./chunk-64EDQ7UV.js";import"./chunk-DLOJG7LP.js";import"./chunk-ULTV6INR.js";import"./chunk-XKDOPNQ5.js";import"./chunk-JXLDEYRW.js";import"./chunk-GR4MJJCE.js";import"./chunk-GG6PM7TB.js";import"./chunk-2GEZ3ZY7.js";import"./chunk-BYVE4TMU.js";import"./chunk-LVXL7T5O.js";import"./chunk-HIQPGYVH.js";import"./chunk-3VT2PPKW.js";import"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-EJOV6Z6F.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-MZKCW6CB.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{a as createLocalHarnessTasksetReviewControl,b as runLocalHarnessEvaluationBaseline};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import"./chunk-7J2NMUTK.js";import{A as i,B as j,C as k,D as l,E as m,F as n,G as o,H as p,I as q,J as r,K as s,L as t,M as u,N as v,O as w,P as x,Q as y,R as z,S as A,T as B,U as C,V as D,c as a,g as b,h as c,w as e,x as f,y as g,z as h}from"./chunk-DXJC3QW7.js";import{a as d}from"./chunk-P4QM63L3.js";import"./chunk-MTP3B2SU.js";import"./chunk-4PUOWSDE.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-RCT3O3HQ.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{A as HostedModelProjectDetailSchema,n as HostedModelProjectLinkSchema,y as HostedModelProjectSummarySchema,x as HostedModelProjectSyncSchema,m as HostedModelProjectTrainingSetupSchema,c as MODEL_PROJECT_API_RESPONSE_MAX_BYTES,b as MODEL_PROJECT_SYNC_MAX_BYTES,d as ModelInitialLearningSchema,k as ModelProfileEvaluationSelectionSchema,j as ModelProfileSourceSelectionSchema,B as ModelProjectApiErrorSchema,t as ModelProjectBaseModelCandidateSchema,g as ModelProjectBaseModelSchema,s as ModelProjectConfigurationCheckSchema,q as ModelProjectEditableSchema,e as ModelProjectImmutableRefSchema,i as ModelProjectRecipeDocumentSchema,z as ModelProjectResourceSummarySchema,r as ModelProjectSaveRequestSchema,p as ModelProjectSchema,o as ModelProjectTasksetSyncSchema,h as ModelProjectTrainingMethodSchema,l as ModelProjectTrainingSetupSchema,f as ModelProjectVersionedRefSchema,a as OPENPOND_MODEL_PROJECT_MEDIA_TYPE,C as OpenPondModelProjectApiError,w as createModelProjectSaveRequest,D as createModelProjectsClient,u as modelProjectConfigurationHash,v as parseModelProjectSaveRequest};
2
+ import"./chunk-7J2NMUTK.js";import{A as i,B as j,C as k,D as l,E as m,F as n,G as o,H as p,I as q,J as r,K as s,L as t,M as u,N as v,O as w,P as x,Q as y,R as z,S as A,T as B,U as C,V as D,c as a,g as b,h as c,w as e,x as f,y as g,z as h}from"./chunk-3VT2PPKW.js";import{a as d}from"./chunk-5ZBDHIIE.js";import"./chunk-MTP3B2SU.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import"./chunk-RCT3O3HQ.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import"./chunk-FTQLQJQV.js";export{A as HostedModelProjectDetailSchema,n as HostedModelProjectLinkSchema,y as HostedModelProjectSummarySchema,x as HostedModelProjectSyncSchema,m as HostedModelProjectTrainingSetupSchema,c as MODEL_PROJECT_API_RESPONSE_MAX_BYTES,b as MODEL_PROJECT_SYNC_MAX_BYTES,d as ModelInitialLearningSchema,k as ModelProfileEvaluationSelectionSchema,j as ModelProfileSourceSelectionSchema,B as ModelProjectApiErrorSchema,t as ModelProjectBaseModelCandidateSchema,g as ModelProjectBaseModelSchema,s as ModelProjectConfigurationCheckSchema,q as ModelProjectEditableSchema,e as ModelProjectImmutableRefSchema,i as ModelProjectRecipeDocumentSchema,z as ModelProjectResourceSummarySchema,r as ModelProjectSaveRequestSchema,p as ModelProjectSchema,o as ModelProjectTasksetSyncSchema,h as ModelProjectTrainingMethodSchema,l as ModelProjectTrainingSetupSchema,f as ModelProjectVersionedRefSchema,a as OPENPOND_MODEL_PROJECT_MEDIA_TYPE,C as OpenPondModelProjectApiError,w as createModelProjectSaveRequest,D as createModelProjectsClient,u as modelProjectConfigurationHash,v as parseModelProjectSaveRequest};
@@ -0,0 +1,3 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import"./chunk-T4QXKU5Y.js";import"./chunk-HYUTDZ3N.js";import{c as h}from"./chunk-RFQD6B44.js";import"./chunk-VND53FAU.js";import"./chunk-OKPV6MBX.js";import"./chunk-XRKFTPHD.js";import{a as k}from"./chunk-Q34IF4PW.js";import{a as d,c as w,d as B}from"./chunk-6XSSM4WT.js";import"./chunk-KHDCMVEJ.js";import"./chunk-K3WM4NEC.js";import"./chunk-BLNEHU62.js";import"./chunk-BT5YNE5U.js";import{d as f}from"./chunk-RPM4FDRX.js";import"./chunk-DFZTRMTL.js";import"./chunk-2QHB5P2K.js";import"./chunk-BZS2PA4O.js";import"./chunk-VSQPWLAG.js";import"./chunk-6LAGMWJE.js";import"./chunk-IV2HEX3I.js";import"./chunk-C7NQPICU.js";import"./chunk-J256AEEE.js";import"./chunk-J7X72QUY.js";import"./chunk-UN2LKLGV.js";import"./chunk-HLJJAOI2.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import{c as u,d as m,f as g}from"./chunk-BSHAIAXY.js";import"./chunk-XWPC3AN4.js";import{f as p}from"./chunk-3M53YXEI.js";import"./chunk-GLUWATL5.js";import"./chunk-MZKCW6CB.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-TBODQT4W.js";import"./chunk-5HPZGLOL.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import{a as i}from"./chunk-FTQLQJQV.js";import{randomUUID as U}from"node:crypto";async function T(t,r){let e=r[0]||"smoke";if(e==="chat"){if(r.length!==1)throw new Error("opchat chat accepts options, not positional arguments.");await(await import("./opchat-bounded-chat-PBUSUAY2.js")).runBoundedOpChat(t);return}let o=await f(),s=await h(o,g(o)),l=C(o,t);if(e==="provider-catalog"||e==="providers-catalog"||e==="catalog"){let n=await y({apiBaseUrl:l,token:s});console.log(JSON.stringify(n,null,2));return}if(e==="models"||e==="model-list"){let n=await w({apiBaseUrl:l,token:s});console.log(JSON.stringify(n,null,2));return}if(e==="model"||e==="model-get"){let n=r[1]||a(t,"model");if(!n)throw new Error("usage: opchat model <model>");let c=await B({apiBaseUrl:l,token:s,model:n});console.log(JSON.stringify(c,null,2));return}if(e==="smoke"){let n=await k({apiBaseUrl:l,token:s,defaultModel:a(t,"model")||void 0,compatibilityModel:a(t,"compatibilityModel")||a(t,"compatModel")||void 0,skipStream:p(t.skipStream),skipTool:p(t.skipTool),log:i(c=>console.log(c),"log")});p(t.json)&&console.log(JSON.stringify(n,null,2));return}throw new Error(`usage: opchat <provider-catalog|models|model|smoke> [--opchat-api-base-url <url>]
3
+ opchat chat --model <id> --message <text> --team-id <id> --max-output-tokens <n> --request-id <id> --timeout-sec <1..600> --max-spend <usd> [--stream] (one bounded request; JSON receipt after completion)`)}i(T,"runOpChatCommand");async function y(t){let r=t.apiBaseUrl.trim().replace(/\/+$/,"");if(!r)throw new Error("OpChat API base URL is required.");let e=t.token.trim();if(!e)throw new Error("OpenPond API key is required.");let o=await fetch(`${r}/provider-catalog`,{method:"GET",headers:{Authorization:`Bearer ${e}`,Accept:"application/json","Content-Type":"application/json","x-openpond-client":"openpond-cli","x-openpond-request-id":U()}});if(!o.ok)throw new Error(`Hosted provider catalog failed: ${o.status} ${await A(o)}`);return o.json()}i(y,"getOpChatProviderCatalog");async function A(t){let r=await t.text().catch(()=>"");if(!r)return t.statusText||`HTTP ${t.status}`;try{let e=JSON.parse(r);if(typeof e.message=="string")return e.message;if(typeof e.error=="string")return e.error;if(e.error&&typeof e.error=="object"&&!Array.isArray(e.error)){let o=e.error;return[o.code,o.message].filter(Boolean).join(": ")||r}return r}catch{return r}}i(A,"readResponseError");function C(t,r){let e=a(r,"opchatApiBaseUrl")||a(r,"opchatApiBaseurl")||a(r,"opChatApiBaseUrl")||a(r,"opChatApiBaseurl")||a(r,"opchatApiUrl")||a(r,"opChatApiUrl");return e?d({opChatApiBaseUrl:e}):d({apiBaseUrl:u(r)||t.apiBaseUrl,chatApiBaseUrl:m(r)||t.chatApiBaseUrl})}i(C,"resolveOpChatCliBaseUrl");function a(t,r){let e=t[r];return typeof e=="string"?e.trim():""}i(a,"optionString");export{T as runOpChatCommand};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import"./chunk-T4QXKU5Y.js";import"./chunk-HYUTDZ3N.js";import"./chunk-RFQD6B44.js";import{a as Z}from"./chunk-AZ7BL5FL.js";import"./chunk-VND53FAU.js";import"./chunk-OKPV6MBX.js";import"./chunk-XRKFTPHD.js";import{a as D,d as X,i as J,j as Y}from"./chunk-6XSSM4WT.js";import"./chunk-KHDCMVEJ.js";import"./chunk-K3WM4NEC.js";import"./chunk-BLNEHU62.js";import"./chunk-BT5YNE5U.js";import"./chunk-RPM4FDRX.js";import"./chunk-DFZTRMTL.js";import"./chunk-2QHB5P2K.js";import"./chunk-BZS2PA4O.js";import"./chunk-VSQPWLAG.js";import"./chunk-6LAGMWJE.js";import"./chunk-IV2HEX3I.js";import"./chunk-C7NQPICU.js";import"./chunk-J256AEEE.js";import"./chunk-J7X72QUY.js";import"./chunk-UN2LKLGV.js";import"./chunk-HLJJAOI2.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import{a as j}from"./chunk-REGKOCDO.js";import{c as $,d as z}from"./chunk-BSHAIAXY.js";import"./chunk-XWPC3AN4.js";import{c as A,f as H}from"./chunk-3M53YXEI.js";import"./chunk-EJOV6Z6F.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-GLUWATL5.js";import"./chunk-MZKCW6CB.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import{M as L}from"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-TBODQT4W.js";import"./chunk-5HPZGLOL.js";import"./chunk-ZFJWA4JK.js";import{A as s}from"./chunk-X2J2P5ZT.js";import{a as p}from"./chunk-FTQLQJQV.js";import{createHash as ne}from"node:crypto";var ee=new Set(["Error","TypeError","SyntaxError","AbortError","TimeoutError","SocketError","HeadersTimeoutError","BodyTimeoutError","ConnectTimeoutError"]),te=new Set(["UND_ERR_SOCKET","UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT","UND_ERR_ABORTED","UND_ERR_DESTROYED","UND_ERR_CLOSED","UND_ERR_RESPONSE_STATUS_CODE","ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT","ENOTFOUND","EAI_AGAIN","ABORT_ERR"]);function K(n){let o=[],e=new Set,a=n;for(;a&&typeof a=="object"&&o.length<3&&!e.has(a);){e.add(a);let d=a;o.push({name:typeof d.name=="string"&&ee.has(d.name)?d.name:"unrecognized",code:d.code===void 0?null:typeof d.code=="string"&&te.has(d.code)?d.code:"unrecognized"}),a=d.cause}return o}p(K,"boundedTransportError");function V(){let n=null,o=null,e=null,a=null,d=null,M=null,l=0,y=0,m=0,S=0,c=0,i=0,E=null;return{observe:p(t=>{t.type==="request"&&(n=performance.now()-t.elapsedMs),t.type==="headers"&&(o=t),t.type==="bytes"&&(l=Math.max(l,t.elapsedMs-(a??o?.elapsedMs??0)),e??=t.elapsedMs,a=t.elapsedMs,y=Math.min(Number.MAX_SAFE_INTEGER,y+t.byteLength),m=Math.min(Number.MAX_SAFE_INTEGER,m+1)),t.type==="data"&&(S=Math.min(Number.MAX_SAFE_INTEGER,S+1),d=t.elapsedMs,t.errorFrame&&(i=Math.min(Number.MAX_SAFE_INTEGER,i+1))),t.type==="comment"&&(c=Math.min(Number.MAX_SAFE_INTEGER,c+1),M=t.elapsedMs),t.type==="done"&&(E=t.elapsedMs)},"observe"),snapshot:p(()=>{let t=n===null?null:Math.round(performance.now()-n);return{phase:n===null?"not_started":o?E!==null?"done":i>0?"error_frame":"response_body":"before_headers",elapsedMs:t,response:o===null?null:{status:o.status,headersAtMs:o.elapsedMs,eventStream:o.eventStream,noCache:o.noCache,noTransform:o.noTransform,bufferingDisabled:o.bufferingDisabled},bytes:y,readChunks:m,dataFrames:S,commentFrames:c,errorFrames:i,firstByteAtMs:e,lastByteAtMs:a,lastDataAtMs:d,lastCommentAtMs:M,doneAtMs:E,maxByteGapMs:l,silentForMs:t===null||o===null?null:Math.max(0,t-(a??o.elapsedMs))}},"snapshot")}}p(V,"createStreamDiagnostics");var O=s.coerce.number().int().positive().safe(),oe=s.object({model:s.string().trim().min(1).max(512),message:s.string().trim().min(1).max(131072),teamId:s.string().regex(/^[A-Za-z0-9_-]{3,191}$/),requestId:s.string().regex(/^[A-Za-z0-9._:-]{1,200}$/),maxOutputTokens:O,timeoutSec:O.max(600),maxSpend:s.coerce.number().finite().positive()}),q=s.number().finite().nonnegative(),re=s.object({id:s.string(),context_window:O,output_limit:O,metadata:s.object({billing:s.object({pricing:s.object({version:s.string().trim().min(1),source:s.string().trim().min(1),effectiveAt:s.string().refine(n=>Number.isFinite(Date.parse(n))),inputUsdPerMillionTokens:q,cachedInputUsdPerMillionTokens:q,outputUsdPerMillionTokens:q}).passthrough()})})});async function ge(n,o={}){let e=oe.parse({...n,message:A(n,"message")||A(n,"prompt")}),a=H(n.stream),d=n.effort===void 0?void 0:L.parse(n.effort),M=o.emit??(u=>console.log(JSON.stringify(u,null,2))),l=new AbortController,y=new Date().toISOString(),m=!1,S=null,c=null,i=null,E="",_=null,C=null,t=V(),x=null,B=p(u=>l.abort(new Error(`OpChat cancelled by ${u}.`)),"abort"),P=p(()=>B("SIGINT"),"interrupt"),v=p(()=>B("SIGTERM"),"terminate"),W=setTimeout(()=>l.abort(new DOMException("OpChat deadline reached.","TimeoutError")),e.timeoutSec*1e3);process.once("SIGINT",P),process.once("SIGTERM",v);let F=p((u,r)=>{let b=u==="completed"&&i&&i.estimated!==!0&&[i.prompt_tokens??i.input_tokens,i.completion_tokens??i.output_tokens].every(w=>typeof w=="number"&&Number.isSafeInteger(w)&&w>=0);return{schemaVersion:"openpond.boundedOpChatReceipt.v1",status:u,requestId:e.requestId,model:e.model,teamId:e.teamId,automaticRetry:!1,transport:a?"sse":"json",...a?{streamDiagnostics:t.snapshot()}:{},...x?{errorCauses:x}:{},startedAt:y,completedAt:new Date().toISOString(),apiOrigin:C,maxOutputTokens:e.maxOutputTokens,timeoutSec:e.timeoutSec,maximumSpendUsd:e.maxSpend,quote:S,dispatchAttempted:m,completion:c,usage:i,text:E,finishReason:_,accounting:{state:m?b?"usage_recorded":"unknown":"not_dispatched",chargedUsd:m?null:0,requiresLedgerReconciliation:m,cleanupConfirmed:!m},...r?{error:r}:{}}},"receipt");try{let u=await(o.account??j)(A(n,"account"));if(!u.token)throw new Error("Sign in to an OpenPond account before using OpChat.");let r=new URL(D({opChatApiBaseUrl:u.chatApiBaseUrl,env:{}})),b=[A(n,"opchatApiBaseUrl"),A(n,"opchatApiUrl"),z(n),$(n)].filter(g=>!!g);for(let g of b){let f=new URL(g);if(f.origin!==r.origin||f.username||f.password||f.search||f.hash)throw new Error("The OpChat API URL must match the signed-in account's chat origin.")}if(r.username||r.password||r.search||r.hash)throw new Error("The signed-in account has an invalid OpChat URL.");let w=D({opChatApiBaseUrl:b[0]??r.href,env:{}});C=r.origin,l.signal.throwIfAborted();let U=await X({apiBaseUrl:w,token:u.token,teamId:e.teamId,model:e.model,signal:AbortSignal.any([l.signal,AbortSignal.timeout(3e4)])}),Q=new Date().toISOString(),R=re.parse(U);if(R.id!==e.model)throw new Error("The catalog returned a different model identity.");if(e.maxOutputTokens>R.output_limit)throw new Error("The requested output limit exceeds the model's current limit.");let I=R.metadata.billing.pricing,N=Math.ceil(R.context_window*Math.max(I.inputUsdPerMillionTokens,I.cachedInputUsdPerMillionTokens)+e.maxOutputTokens*I.outputUsdPerMillionTokens);if(!Number.isSafeInteger(N)||N<=0)throw new Error("The model does not publish an enforceable positive request ceiling.");let k=N/1e6;if(S={kind:"worst_case_request_reservation",observedAt:Q,contextWindow:R.context_window,outputLimit:R.output_limit,pricing:I,maximumRequestCostUsd:k,predictedSpend:!1,catalog:U,catalogSha256:ne("sha256").update(JSON.stringify(U)).digest("hex")},k>e.maxSpend)throw new Error(`The current worst-case request reservation $${k} exceeds --max-spend $${e.maxSpend}.`);l.signal.throwIfAborted();let G={apiBaseUrl:w,token:u.token,teamId:e.teamId,model:e.model,requestId:e.requestId,reasoningEffort:d,maxTokens:e.maxOutputTokens,signal:l.signal,messages:[{role:"user",content:e.message}],...a?{onStreamDiagnostic:t.observe}:{}};if(m=!0,a){let g=null,f;for await(let h of Y(G)){l.signal.throwIfAborted();let T=h.raw&&typeof h.raw=="object"?h.raw:{};if(typeof T.id!="string"||!T.id||T.model!==e.model||T.request_id!==e.requestId||g!==null&&T.id!==g)throw new Error("The stream does not match the admitted completion, model and request identity.");if(g=T.id,typeof T.created=="number"&&(f=T.created),h.type==="text_delta"&&(E+=h.text),h.type==="usage"&&(i=h.usage),h.type==="finish"&&(_=h.finishReason),h.type==="tool_call_delta")throw new Error("The bounded OpChat request did not admit tool calls.")}if(!g||!_)throw new Error("The stream ended without a terminal completion receipt.");c={id:g,model:e.model,request_id:e.requestId,object:"chat.completion",assembledFromStream:!0,...f===void 0?{}:{created:f},choices:[{index:0,message:{role:"assistant",content:E},finish_reason:_}],...i===null?{}:{usage:i}}}else c=await J(G),i=c.usage??null,E=c.choices?.[0]?.message?.content??"",_=c.choices?.[0]?.finish_reason??null;if(!c.id||c.model!==e.model||c.request_id!==e.requestId)throw new Error("The completion does not match the admitted model and request identity.");if(l.signal.throwIfAborted(),!_)throw new Error("The response ended without a terminal completion receipt.");M(F("completed"))}catch(u){let r=l.signal.aborted?l.signal.reason:u;x=K(r);let b=r instanceof Error?r.message:String(r),w=l.signal.aborted?r instanceof Error&&r.name==="TimeoutError"?"timed_out":"cancelled":m?"failed":"rejected";throw M(F(w,b)),new Z(b)}finally{clearTimeout(W),process.removeListener("SIGINT",P),process.removeListener("SIGTERM",v)}}p(ge,"runBoundedOpChat");export{ge as runBoundedOpChat};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{m as M}from"./chunk-HYUTDZ3N.js";import"./chunk-RFQD6B44.js";import"./chunk-VND53FAU.js";import"./chunk-OKPV6MBX.js";import"./chunk-XRKFTPHD.js";import"./chunk-KHDCMVEJ.js";import"./chunk-K3WM4NEC.js";import"./chunk-BLNEHU62.js";import"./chunk-BT5YNE5U.js";import"./chunk-RPM4FDRX.js";import"./chunk-DFZTRMTL.js";import"./chunk-2QHB5P2K.js";import"./chunk-BZS2PA4O.js";import"./chunk-VSQPWLAG.js";import"./chunk-6LAGMWJE.js";import"./chunk-IV2HEX3I.js";import"./chunk-C7NQPICU.js";import"./chunk-J256AEEE.js";import"./chunk-J7X72QUY.js";import"./chunk-UN2LKLGV.js";import"./chunk-HLJJAOI2.js";import"./chunk-AMC4Z7G4.js";import"./chunk-LK77GI6M.js";import"./chunk-HVM2GUM3.js";import"./chunk-I6VMRQF4.js";import"./chunk-D6L6UNUQ.js";import"./chunk-AJXWJLZA.js";import"./chunk-OKKNDQJF.js";import"./chunk-ZEOYNUHL.js";import"./chunk-ZY32SZ2P.js";import"./chunk-OTDDXEQ6.js";import"./chunk-ECOH24MC.js";import{b as x}from"./chunk-REGKOCDO.js";import"./chunk-BSHAIAXY.js";import"./chunk-XWPC3AN4.js";import{a as _,f as O,h as k,i as S}from"./chunk-3M53YXEI.js";import"./chunk-EJOV6Z6F.js";import"./chunk-GY7YSD6J.js";import"./chunk-KUE46HTH.js";import"./chunk-GLUWATL5.js";import"./chunk-MZKCW6CB.js";import"./chunk-6FA3GG5B.js";import"./chunk-SV7ZBEK2.js";import"./chunk-2MEOUS24.js";import"./chunk-HNQPEOJD.js";import"./chunk-RCT3O3HQ.js";import"./chunk-UGOK7VTC.js";import"./chunk-TBODQT4W.js";import"./chunk-5HPZGLOL.js";import"./chunk-ZFJWA4JK.js";import"./chunk-X2J2P5ZT.js";import{a as i}from"./chunk-FTQLQJQV.js";import{createHash as j,randomBytes as L}from"node:crypto";import{createServer as B}from"node:http";function D(e){return[e.slug,`team=${e.teamId}`,`role=${e.role}`,`status=${e.status}`,e.displayName].join(" ")}i(D,"formatOrganizationLine");function H(e){return[e.email??e.userId,`user=${e.userId}`,`role=${e.role}`,e.createdAt].join(" ")}i(H,"formatOrganizationMemberLine");function W(e){return e?[e.slug,`team=${e.teamId}`,`status=${e.status}`,`tools=${e.toolset.join(",")||"-"}`,e.resourceUrl].join(" "):"no mcp server configured"}i(W,"formatOrganizationMcpServerLine");var F=["estimate.read","estimate.write","estimate.execute","artifacts.read","artifacts.write"];function b(e){let t=e.trim().replace(/\/$/,"");if(!t)throw new Error("MCP resource URL must be non-empty");return new URL(t).toString().replace(/\/$/,"")}i(b,"normalizeMcpResourceUrl");function R(e,t){let r=typeof t.resourceUrl=="string"&&t.resourceUrl.trim()?t.resourceUrl.trim():typeof t.url=="string"&&t.url.trim()?t.url.trim():"";if(r)return b(r);if(!e?.resourceUrl)throw new Error("organization does not have an MCP server; run organizations mcp-generate first");return b(e.resourceUrl)}i(R,"resolveMcpProbeResourceUrl");function v(e,t){let r=typeof t.origin=="string"&&t.origin.trim()?t.origin.trim():"";return r?b(r):new URL(e).origin}i(v,"resolveMcpProbeOrigin");function U(e=32){return L(e).toString("base64url")}i(U,"randomOauthToken");function G(e){return j("sha256").update(e).digest("base64url")}i(G,"buildMcpOauthPkceChallenge");function V(e){let t=typeof e.scope=="string"&&e.scope.trim()?e.scope:typeof e.scopes=="string"&&e.scopes.trim()?e.scopes:"";if(!t)return[...F];let r=t.split(/[,\s]+/g).map(o=>o.trim()).filter(Boolean);if(r.length===0)throw new Error("scope must include at least one OAuth scope");return r}i(V,"parseMcpOAuthScopes");function q(e){let t=typeof e.clientId=="string"&&e.clientId.trim()?e.clientId.trim():"openpond-code-mcp-proof";if(t==="true")throw new Error("client-id must be a non-empty value");return t}i(q,"resolveMcpOAuthClientId");function Y(e){let t=k(e.timeoutSeconds,"timeout-seconds")??k(e.timeout,"timeout")??180;if(t<=0)throw new Error("timeout must be greater than zero");return t*1e3}i(Y,"resolveMcpOAuthTimeoutMs");function Z(e){let t=k(e.callbackPort,"callback-port")??0;if(t<0||t>65535)throw new Error("callback-port must be between 0 and 65535");return t}i(Z,"resolveMcpOAuthCallbackPort");function E(e){return new Promise((t,r)=>{e.close(o=>{o?r(o):t()})})}i(E,"closeServer");async function K(e){let t=!1,r=null,o=null,s=null,n=new Promise((u,l)=>{o=u,s=l}),a=i((u,l,g,m,p)=>{if(t){u.writeHead(204).end();return}t=!0,u.writeHead(l,{"cache-control":"no-store","content-type":"text/html; charset=utf-8"}),u.end(g),r&&clearTimeout(r),m?o?.(m):s?.(p??new Error("oauth_callback_failed"))},"settle"),c=B((u,l)=>{let g=u.headers.host??"127.0.0.1",m=new URL(u.url??"/",`http://${g}`);if(m.pathname!=="/callback"){l.writeHead(404,{"content-type":"text/plain; charset=utf-8"}),l.end("Not found");return}let p=m.searchParams.get("state")??"",f=m.searchParams.get("error")??"",w=m.searchParams.get("code")??"";if(p!==e.expectedState){a(l,400,"<!doctype html><title>OpenPond OAuth failed</title><p>State mismatch. Return to the terminal and retry.</p>",void 0,new Error("oauth_state_mismatch"));return}if(f){a(l,400,"<!doctype html><title>OpenPond OAuth denied</title><p>Authorization was not completed. Return to the terminal.</p>",void 0,new Error(`oauth_authorization_failed:${f}`));return}if(!w){a(l,400,"<!doctype html><title>OpenPond OAuth failed</title><p>Missing authorization code. Return to the terminal and retry.</p>",void 0,new Error("oauth_code_missing"));return}a(l,200,"<!doctype html><title>OpenPond OAuth complete</title><p>Authorization complete. You can return to the terminal.</p>",{code:w,state:p})});await new Promise((u,l)=>{let g=i(p=>{c.off("listening",m),l(p)},"onError"),m=i(()=>{c.off("error",g),u()},"onListening");c.once("error",g),c.once("listening",m),c.listen(e.port,"127.0.0.1")});let d=c.address();if(!d||typeof d.port!="number")throw await E(c),new Error("oauth_callback_listener_failed");return r=setTimeout(()=>{t||(t=!0,s?.(new Error("oauth_callback_timeout")))},e.timeoutMs),{close:i(async()=>{r&&clearTimeout(r),await E(c).catch(()=>{})},"close"),redirectUri:`http://127.0.0.1:${d.port}/callback`,waitForCallback:i(()=>n,"waitForCallback")}}i(K,"startMcpOAuthCallbackListener");function Q(e){x(e)}i(Q,"openUrlWithSystemBrowser");function X(e){let t=new URL(e.authorizationEndpoint);return t.searchParams.set("response_type","code"),t.searchParams.set("client_id",e.clientId),t.searchParams.set("redirect_uri",e.redirectUri),t.searchParams.set("code_challenge",e.codeChallenge),t.searchParams.set("code_challenge_method","S256"),t.searchParams.set("resource",e.resourceUrl),t.searchParams.set("scope",e.scopes.join(" ")),t.searchParams.set("state",e.state),t.toString()}i(X,"buildMcpOAuthAuthorizeUrl");async function ee(e){let t=new URLSearchParams;t.set("grant_type","authorization_code"),t.set("client_id",e.clientId),t.set("redirect_uri",e.redirectUri),t.set("code",e.code),t.set("code_verifier",e.codeVerifier);let r=await fetch(`${e.origin}/oauth/token`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:t}),o=await N(r);if(!r.ok)throw new Error(`oauth_token_exchange_failed:${r.status}:${JSON.stringify(o)}`);if(!o||typeof o!="object"||Array.isArray(o))throw new Error("oauth_token_exchange_invalid_response");let s=o;if(typeof s.access_token!="string"||!s.access_token.trim())throw new Error("oauth_token_exchange_missing_access_token");return{access_token:s.access_token,...typeof s.expires_in=="number"?{expires_in:s.expires_in}:{},...typeof s.refresh_token=="string"?{refresh_token:s.refresh_token}:{},...typeof s.scope=="string"?{scope:s.scope}:{},...typeof s.token_type=="string"?{token_type:s.token_type}:{}}}i(ee,"exchangeMcpOAuthAuthorizationCode");async function N(e){let t=await e.text().catch(()=>"");if(!t)return null;let r=t.trim();if((e.headers.get("content-type")??"").toLowerCase().includes("application/json")||r.startsWith("{")||r.startsWith("["))try{return JSON.parse(r)}catch{return t}return t}i(N,"readMcpProbeBody");async function P(e,t={}){let r=await fetch(e,t);return{url:e,status:r.status,ok:r.ok,headers:{contentType:r.headers.get("content-type"),location:r.headers.get("location"),wwwAuthenticate:r.headers.get("www-authenticate")},body:await N(r)}}i(P,"fetchMcpProbe");function te(e,t,r){return r?{jsonrpc:"2.0",id:e,method:t,params:r}:{jsonrpc:"2.0",id:e,method:t}}i(te,"buildMcpJsonRpcRequest");function T(e){let t=typeof e.arguments=="string"&&e.arguments.trim()?e.arguments:typeof e.args=="string"&&e.args.trim()?e.args:"";if(!t)return{};let r=_(t,"arguments");if(!r||typeof r!="object"||Array.isArray(r))throw new Error("arguments must be a JSON object");return r}i(T,"parseMcpToolArguments");async function z(e){let t={"content-type":"application/json"};return e.accessToken&&(t.authorization=`Bearer ${e.accessToken}`),P(e.resourceUrl,{method:"POST",headers:t,body:JSON.stringify(te(e.id,e.method,e.params))})}i(z,"postMcpJsonRpcProbe");async function A(e){let t=b(e.resourceUrl),r=b(e.origin),o=`${t}/.well-known/oauth-protected-resource`,s=`${r}/.well-known/oauth-authorization-server`,[n,a,c,d,u,l,g]=await Promise.all([P(o),P(s),P(t),z({resourceUrl:t,id:1,method:"initialize"}),z({resourceUrl:t,id:2,method:"tools/list"}),z({resourceUrl:t,id:3,method:"tools/call",params:{name:e.toolName,arguments:e.toolArguments}}),e.accessToken?z({resourceUrl:t,id:4,method:"tools/call",params:{name:e.toolName,arguments:e.toolArguments},accessToken:e.accessToken}):Promise.resolve(null)]);return{resourceUrl:t,origin:r,protectedResource:n,authorizationServer:a,directGetChallenge:c,initialize:d,toolsList:u,unauthenticatedToolCall:l,...g?{authenticatedToolCall:g}:{}}}i(A,"probeOrganizationMcp");function re(e){let t=typeof e=="string"?e.trim():"";if(t==="owner"||t==="admin"||t==="member")return t;throw new Error("role must be owner, admin, or member")}i(re,"parseOrganizationRole");function ne(e){let t=typeof e.displayName=="string"&&e.displayName.trim()?e.displayName.trim():typeof e.name=="string"&&e.name.trim()?e.name.trim():"";if(!t)throw new Error("usage: organizations create --name <name> [--slug <slug>]");return{displayName:t,...typeof e.slug=="string"&&e.slug.trim()?{slug:e.slug.trim()}:{},...typeof e.primaryContactEmail=="string"&&e.primaryContactEmail.trim()?{primaryContactEmail:e.primaryContactEmail.trim()}:{},...typeof e.customDomain=="string"&&e.customDomain.trim()?{customDomain:e.customDomain.trim()}:{}}}i(ne,"buildOrganizationCreateInput");function oe(e){let t={},r=typeof e.displayName=="string"&&e.displayName.trim()?e.displayName.trim():typeof e.name=="string"&&e.name.trim()?e.name.trim():"";if(r&&(t.displayName=r),typeof e.slug=="string"&&e.slug.trim()&&(t.slug=e.slug.trim()),typeof e.primaryContactEmail=="string"&&(t.primaryContactEmail=e.primaryContactEmail.trim()||null),typeof e.customDomain=="string"&&(t.customDomain=e.customDomain.trim()||null),typeof e.status=="string"&&e.status.trim()){let o=e.status.trim();if(o!=="active"&&o!=="disabled"&&o!=="archived")throw new Error("status must be active, disabled, or archived");t.status=o}if(Object.keys(t).length===0)throw new Error("organizations update requires at least one changed field");return t}i(oe,"buildOrganizationUpdateInput");function ie(e){let t=typeof e.email=="string"?e.email.trim():"";if(!t)throw new Error("usage: organizations member-upsert <slug> --email <email> --role <role>");return{email:t,role:re(e.role)}}i(ie,"buildOrganizationMemberInput");function ae(e){return{...typeof e.origin=="string"&&e.origin.trim()?{origin:e.origin.trim()}:{},...typeof e.toolset=="string"&&e.toolset.trim()?{toolset:S(e.toolset)}:{}}}i(ae,"buildOrganizationMcpGenerateInput");async function ge(e,t){let r=t[0]||"list",o=await M(e),s=O(e.json);if(r==="list"){let n=await o.listOrganizations();if(s){console.log(JSON.stringify({organizations:n},null,2));return}if(n.length===0){console.log("no organizations found");return}for(let a of n)console.log(D(a));return}if(r==="create"){let n=await o.createOrganization(ne(e));console.log(JSON.stringify({organization:n},null,2));return}if(r==="get"){let n=t[1];if(!n)throw new Error("usage: organizations get <slug>");let a=await o.getOrganization(n);console.log(JSON.stringify({organization:a},null,2));return}if(r==="update"){let n=t[1];if(!n)throw new Error("usage: organizations update <slug> [--name <name>]");let a=await o.updateOrganization(n,oe(e));console.log(JSON.stringify({organization:a},null,2));return}if(r==="members"||r==="member-list"){let n=t[1];if(!n)throw new Error("usage: organizations members <slug>");let a=await o.listOrganizationMembers(n);if(s){console.log(JSON.stringify({members:a},null,2));return}if(a.length===0){console.log("no organization members found");return}for(let c of a)console.log(H(c));return}if(r==="member-upsert"||r==="member-add"){let n=t[1];if(!n)throw new Error("usage: organizations member-upsert <slug> --email <email> --role <role>");let a=await o.upsertOrganizationMember(n,ie(e));console.log(JSON.stringify({member:a},null,2));return}if(r==="mcp-get"||r==="mcp-server"){let n=t[1];if(!n)throw new Error("usage: organizations mcp-get <slug>");let a=await o.getOrganizationMcpServer(n);if(s){console.log(JSON.stringify({mcpServer:a},null,2));return}console.log(W(a));return}if(r==="mcp-generate"){let n=t[1];if(!n)throw new Error("usage: organizations mcp-generate <slug> [--origin <url>]");let a=await o.generateOrganizationMcpServer(n,ae(e));console.log(JSON.stringify({mcpServer:a},null,2));return}if(r==="mcp-probe"||r==="mcp-inspect"){let n=t[1];if(!n)throw new Error("usage: organizations mcp-probe <slug> [--origin <url>] [--tool <name>] [--arguments <json>] [--access-token <token>]");let a=await o.getOrganizationMcpServer(n),c=R(a,e),d=v(c,e),u=typeof e.tool=="string"&&e.tool.trim()?e.tool.trim():typeof e.toolName=="string"&&e.toolName.trim()?e.toolName.trim():"estimate_search_history",l=T(e),g=typeof e.accessToken=="string"&&e.accessToken.trim()?e.accessToken.trim():"",m=await A({resourceUrl:c,origin:d,toolName:u,toolArguments:l,...g?{accessToken:g}:{}});console.log(JSON.stringify({mcpServer:a,probe:m},null,2));return}if(r==="mcp-authorize"||r==="mcp-oauth"){let n=t[1];if(!n)throw new Error("usage: organizations mcp-authorize <slug> [--origin <url>] [--scope <csv|space>] [--tool <name>] [--arguments <json>] [--open]");let a=await o.getOrganizationMcpServer(n),c=R(a,e),d=v(c,e),u=q(e),l=V(e),g=U(18),m=U(48),p=G(m),f=await K({expectedState:g,port:Z(e),timeoutMs:Y(e)}),w=X({authorizationEndpoint:`${d}/oauth/authorize`,clientId:u,codeChallenge:p,redirectUri:f.redirectUri,resourceUrl:c,scopes:l,state:g});if(console.error("Open this URL to authorize the organization MCP connection:"),console.error(w),console.error(`Waiting for OAuth callback on ${f.redirectUri}`),O(e.open))try{Q(w)}catch(y){console.error(`Unable to open a browser automatically: ${y instanceof Error?y.message:String(y)}`)}try{let y=await f.waitForCallback(),h=await ee({clientId:u,code:y.code,codeVerifier:m,origin:d,redirectUri:f.redirectUri}),C=typeof e.tool=="string"&&e.tool.trim()?e.tool.trim():typeof e.toolName=="string"&&e.toolName.trim()?e.toolName.trim():"estimate_search_history",I=T(e),$=await A({accessToken:h.access_token,origin:d,resourceUrl:c,toolArguments:I,toolName:C}),J=O(e.printToken);console.log(JSON.stringify({mcpServer:a,oauth:{accessTokenReceived:!0,clientId:u,expiresIn:h.expires_in??null,refreshTokenReceived:!!h.refresh_token,scope:h.scope??l.join(" "),tokenType:h.token_type??"Bearer",...J?{accessToken:h.access_token,refreshToken:h.refresh_token??null}:{}},probe:$},null,2))}finally{await f.close()}return}if(r==="mcp-rotate"||r==="mcp-disable"||r==="mcp-enable"){let n=t[1];if(!n)throw new Error(`usage: organizations ${r} <slug>`);let a=r==="mcp-rotate"?await o.rotateOrganizationMcpServer(n):r==="mcp-disable"?await o.disableOrganizationMcpServer(n):await o.enableOrganizationMcpServer(n);console.log(JSON.stringify({mcpServer:a},null,2));return}throw new Error("usage: organizations <list|create|get|update|members|member-upsert|mcp-get|mcp-generate|mcp-probe|mcp-authorize|mcp-rotate|mcp-disable|mcp-enable> [args]")}i(ge,"runOrganizationsCommand");export{F as DEFAULT_MCP_AUTHORIZE_SCOPES,te as buildMcpJsonRpcRequest,X as buildMcpOAuthAuthorizeUrl,G as buildMcpOauthPkceChallenge,ne as buildOrganizationCreateInput,ae as buildOrganizationMcpGenerateInput,ie as buildOrganizationMemberInput,oe as buildOrganizationUpdateInput,E as closeServer,ee as exchangeMcpOAuthAuthorizationCode,P as fetchMcpProbe,D as formatOrganizationLine,W as formatOrganizationMcpServerLine,H as formatOrganizationMemberLine,b as normalizeMcpResourceUrl,Q as openUrlWithSystemBrowser,V as parseMcpOAuthScopes,T as parseMcpToolArguments,re as parseOrganizationRole,z as postMcpJsonRpcProbe,A as probeOrganizationMcp,U as randomOauthToken,N as readMcpProbeBody,Z as resolveMcpOAuthCallbackPort,q as resolveMcpOAuthClientId,Y as resolveMcpOAuthTimeoutMs,v as resolveMcpProbeOrigin,R as resolveMcpProbeResourceUrl,ge as runOrganizationsCommand,K as startMcpOAuthCallbackListener};