openpond 0.2.67 → 0.2.69
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.
- package/dist/app-server.d.ts +668 -1
- package/dist/app-server.js +1 -1
- package/dist/chunks/account-context-V3KLSNKS.js +12 -0
- package/dist/chunks/{acp-NASAJV5E.js → acp-ER6CUXG2.js} +1 -1
- package/dist/chunks/{acp-agent-C3CRF6DT.js → acp-agent-AYJ5RPVF.js} +1 -1
- package/dist/chunks/actions-command-BBUS3HDK.js +2 -0
- package/dist/chunks/{app-layer-XIEZ6ALX.js → app-layer-JCEWGUDH.js} +1 -1
- package/dist/chunks/{app-server-connected-apps-IB6M35NS.js → app-server-connected-apps-ILXBFD3S.js} +1 -1
- package/dist/chunks/app-server-evaluations-RRLYWLPK.js +2 -0
- package/dist/chunks/app-server-harness-services-XXM336NU.js +2 -0
- package/dist/chunks/app-server-runtime-43MCH5SY.js +2 -0
- package/dist/chunks/apps-VNFGMQFG.js +2 -0
- package/dist/chunks/{chunk-W3ZILZUL.js → chunk-22RLEU3Q.js} +1 -1
- package/dist/chunks/chunk-2PXKSAG6.js +2 -0
- package/dist/chunks/{chunk-XEU4J4GJ.js → chunk-2TGHZXJE.js} +2 -2
- package/dist/chunks/{chunk-AXO6OHJB.js → chunk-3A2Y7UK3.js} +1 -1
- package/dist/chunks/chunk-3Z4VM2LF.js +4 -0
- package/dist/chunks/{chunk-V3T2OJBZ.js → chunk-4BUM6JEC.js} +2 -2
- package/dist/chunks/chunk-4G3GTEVS.js +23 -0
- package/dist/chunks/{chunk-43QYVOYA.js → chunk-4KNPCJR4.js} +1 -1
- package/dist/chunks/chunk-4KTGYHCE.js +2 -0
- package/dist/chunks/chunk-4PUOWSDE.js +13 -0
- package/dist/chunks/chunk-55YD4UTW.js +2 -0
- package/dist/chunks/chunk-5G7BQAUA.js +2 -0
- package/dist/chunks/chunk-65FJWWXG.js +2 -0
- package/dist/chunks/{chunk-4EZI4KCT.js → chunk-65WRWLUD.js} +1 -1
- package/dist/chunks/chunk-6D3FI2XT.js +2 -0
- package/dist/chunks/chunk-7EQLW2KM.js +12 -0
- package/dist/chunks/{chunk-5TPYBXWM.js → chunk-7NCM6GBN.js} +1 -1
- package/dist/chunks/chunk-7OFD6TFD.js +2 -0
- package/dist/chunks/chunk-7OKZCJHS.js +3 -0
- package/dist/chunks/{chunk-ADOCQA4D.js → chunk-7PKDJHT6.js} +1 -1
- package/dist/chunks/chunk-7RJOCGQ6.js +2 -0
- package/dist/chunks/{chunk-YR5URT73.js → chunk-7RSQOC5M.js} +3 -3
- package/dist/chunks/{chunk-FVK4W27G.js → chunk-AFH462DO.js} +1 -1
- package/dist/chunks/{chunk-GUG2SWRZ.js → chunk-AFKFN25T.js} +1 -1
- package/dist/chunks/chunk-AFYYIJ6K.js +2 -0
- package/dist/chunks/{chunk-U3MVH2YT.js → chunk-APKXXAUF.js} +1 -1
- package/dist/chunks/chunk-AQUZCWM3.js +2 -0
- package/dist/chunks/chunk-AUO5DCEU.js +2 -0
- package/dist/chunks/chunk-AYOMVI7J.js +2 -0
- package/dist/chunks/{chunk-RWRKUO5D.js → chunk-B66QCXH2.js} +1 -1
- package/dist/chunks/chunk-BDZDWHBJ.js +6 -0
- package/dist/chunks/chunk-BU6MW65V.js +10 -0
- package/dist/chunks/{chunk-P6NQYXN6.js → chunk-CCZ276IA.js} +1 -1
- package/dist/chunks/{chunk-YONDU5TN.js → chunk-CIZI6Z7D.js} +1 -1
- package/dist/chunks/{chunk-ATFV2NA4.js → chunk-CO23RRN7.js} +1 -1
- package/dist/chunks/{chunk-QAFXQHHG.js → chunk-D6L6UNUQ.js} +2 -2
- package/dist/chunks/chunk-DDOIPTOM.js +2 -0
- package/dist/chunks/{chunk-CSU7RDA5.js → chunk-DKOVZ6R2.js} +3 -3
- package/dist/chunks/chunk-DRLP7GIU.js +2 -0
- package/dist/chunks/{chunk-XDFXKRTI.js → chunk-DWF3FCY4.js} +1 -1
- package/dist/chunks/chunk-DXJC3QW7.js +2 -0
- package/dist/chunks/{chunk-IDILAYCW.js → chunk-E2JB5OCO.js} +1 -1
- package/dist/chunks/{chunk-GI7LTJV3.js → chunk-EDYCSW22.js} +1 -1
- package/dist/chunks/{chunk-4JYTFEND.js → chunk-EFP75UEX.js} +1 -1
- package/dist/chunks/{chunk-CX7HKSQ4.js → chunk-EGP6DF34.js} +2 -2
- package/dist/chunks/{chunk-D5OFN47Z.js → chunk-ESYPMD7Q.js} +1 -1
- package/dist/chunks/{chunk-36FNNR5N.js → chunk-EWDDDHJN.js} +1 -1
- package/dist/chunks/{chunk-PWKJ5KLZ.js → chunk-EXYSD45J.js} +1 -1
- package/dist/chunks/{chunk-R6VI7MX5.js → chunk-EYTTZ5H4.js} +1 -1
- package/dist/chunks/{chunk-WD6ANOLL.js → chunk-FNGZ4UDZ.js} +1 -1
- package/dist/chunks/{chunk-YKTJPCYZ.js → chunk-G4FRBT7G.js} +4 -4
- package/dist/chunks/{chunk-JFZ6USNQ.js → chunk-G7X73SBG.js} +1 -1
- package/dist/chunks/{chunk-ULJZ7NUF.js → chunk-GY7YSD6J.js} +1 -1
- package/dist/chunks/{chunk-CWAQOFLP.js → chunk-GYYJ47GX.js} +1 -1
- package/dist/chunks/chunk-HG2YFMVU.js +4 -0
- package/dist/chunks/{chunk-YQBL5P6R.js → chunk-HKVFU3B3.js} +1 -1
- package/dist/chunks/{chunk-VEXJV5H5.js → chunk-IIT66347.js} +4 -4
- package/dist/chunks/{chunk-B2K5WQZE.js → chunk-IO5DZUKL.js} +1 -1
- package/dist/chunks/chunk-J256AEEE.js +2 -0
- package/dist/chunks/{chunk-CRDKBFRN.js → chunk-JEMECEQH.js} +1 -1
- package/dist/chunks/{chunk-YMCF5GR2.js → chunk-JQOVC35K.js} +1 -1
- package/dist/chunks/{chunk-6LFTQBXP.js → chunk-JT5YQ52I.js} +1 -1
- package/dist/chunks/chunk-JVMSN7LH.js +2 -0
- package/dist/chunks/{chunk-HORMGT2Q.js → chunk-JXYJQT5Q.js} +1 -1
- package/dist/chunks/{chunk-WDKZMXIU.js → chunk-K7KBFM2T.js} +1 -1
- package/dist/chunks/{chunk-UBTP3QWI.js → chunk-KCLMA2IH.js} +1 -1
- package/dist/chunks/chunk-KDER7R45.js +2 -0
- package/dist/chunks/{chunk-R6MMWEH4.js → chunk-KP2MYTP5.js} +1 -1
- package/dist/chunks/{chunk-TV2LE2BD.js → chunk-KU4TPDPH.js} +2 -2
- package/dist/chunks/{chunk-WJSJXK2N.js → chunk-KUE46HTH.js} +1 -1
- package/dist/chunks/chunk-LSKMALD6.js +161 -0
- package/dist/chunks/chunk-LVXL7T5O.js +2 -0
- package/dist/chunks/{chunk-TSQ2I6XV.js → chunk-M4A7G4S5.js} +2 -2
- package/dist/chunks/{chunk-MX7KV5DA.js → chunk-M4ZHFDRJ.js} +1 -1
- package/dist/chunks/chunk-M5X7XKXY.js +12 -0
- package/dist/chunks/{chunk-XT5WUQGT.js → chunk-MIFVX5PK.js} +1 -1
- package/dist/chunks/{chunk-4VZJQRQI.js → chunk-MOXIGLN2.js} +1 -1
- package/dist/chunks/{chunk-UKSSFB4Q.js → chunk-N5EAVX4G.js} +1 -1
- package/dist/chunks/{chunk-4B7EGNYX.js → chunk-NMMHXYDJ.js} +1 -1
- package/dist/chunks/{chunk-EBOTNBUS.js → chunk-NRYC4NH6.js} +1 -1
- package/dist/chunks/chunk-NSSZ2ZIU.js +2 -0
- package/dist/chunks/chunk-NW6WGGSL.js +2 -0
- package/dist/chunks/{chunk-7P5SH3CI.js → chunk-NZDLL6JN.js} +1 -1
- package/dist/chunks/{chunk-4TTXNVCE.js → chunk-OFJPOTES.js} +1 -1
- package/dist/chunks/chunk-OUJ63LMU.js +2 -0
- package/dist/chunks/{chunk-SD2XDZQW.js → chunk-P4QM63L3.js} +1 -1
- package/dist/chunks/chunk-PACLKDTN.js +2 -0
- package/dist/chunks/{chunk-VPAEFG7X.js → chunk-PAYFJHPO.js} +1 -1
- package/dist/chunks/{chunk-OPTJYDZN.js → chunk-PHZZBXDO.js} +1 -1
- package/dist/chunks/{chunk-HPTEJBP4.js → chunk-PKJHN666.js} +1 -1
- package/dist/chunks/{chunk-HNDAGZCF.js → chunk-PLROXHG2.js} +1 -1
- package/dist/chunks/{chunk-UNE52L3Y.js → chunk-PNPV2LDE.js} +1 -1
- package/dist/chunks/{chunk-2RSGVLZT.js → chunk-PSY6IRJE.js} +8 -8
- package/dist/chunks/{chunk-SVNEPXU3.js → chunk-Q73RKX7I.js} +1 -1
- package/dist/chunks/{chunk-IF5A3XWP.js → chunk-Q7FBVLLB.js} +1 -1
- package/dist/chunks/{chunk-V5AOM5MZ.js → chunk-Q7P34B2O.js} +1 -1
- package/dist/chunks/{chunk-375PADDM.js → chunk-QLGP2OAQ.js} +1 -1
- package/dist/chunks/{chunk-QQLS5FB7.js → chunk-QUNQM2E3.js} +1 -1
- package/dist/chunks/chunk-R2FYCJL6.js +2 -0
- package/dist/chunks/{chunk-6HQUIKC5.js → chunk-R4EEGWXB.js} +1 -1
- package/dist/chunks/chunk-R6I623SZ.js +11 -0
- package/dist/chunks/chunk-RCQYEHHD.js +2 -0
- package/dist/chunks/{chunk-26ID6A5C.js → chunk-RCRZXHAI.js} +1 -1
- package/dist/chunks/{chunk-TGULVWPV.js → chunk-RFQD6B44.js} +1 -1
- package/dist/chunks/{chunk-3WJQ4IGK.js → chunk-RPM4FDRX.js} +1 -1
- package/dist/chunks/{chunk-MCBRB5D6.js → chunk-RY46UPBO.js} +4 -4
- package/dist/chunks/{chunk-K3LS5SK7.js → chunk-SDHG6CKU.js} +1 -1
- package/dist/chunks/{chunk-XKZ4PFMQ.js → chunk-SO4GMSNP.js} +1 -1
- package/dist/chunks/{chunk-O6ZYDHEJ.js → chunk-SSHE6B7Z.js} +1 -1
- package/dist/chunks/{chunk-SH7POUVX.js → chunk-SV7ZBEK2.js} +6 -6
- package/dist/chunks/{chunk-SODAOLAP.js → chunk-TB5P3FWM.js} +1 -1
- package/dist/chunks/{chunk-BJXPQIVD.js → chunk-U7D6Q744.js} +1 -1
- package/dist/chunks/chunk-U7X5ZLAL.js +2 -0
- package/dist/chunks/{chunk-N54CPLVD.js → chunk-UANH7U3Y.js} +1 -1
- package/dist/chunks/{chunk-BUZ7CBJC.js → chunk-UGFSAG4U.js} +1 -1
- package/dist/chunks/chunk-ULTV6INR.js +2 -0
- package/dist/chunks/{chunk-V3ILZQER.js → chunk-UMAVVMXL.js} +7 -7
- package/dist/chunks/chunk-V24VHT76.js +2 -0
- package/dist/chunks/chunk-VEBW7NKD.js +2 -0
- package/dist/chunks/chunk-VJR2GNRY.js +2 -0
- package/dist/chunks/{chunk-JD76ANPN.js → chunk-VJYOKU3C.js} +1 -1
- package/dist/chunks/{chunk-H2XG5N7D.js → chunk-VWWKWYSQ.js} +1 -1
- package/dist/chunks/chunk-WCNPGKST.js +2 -0
- package/dist/chunks/chunk-WD4KAKEX.js +2 -0
- package/dist/chunks/chunk-WGQ3FMRF.js +2 -0
- package/dist/chunks/{chunk-6C3CXME7.js → chunk-WNXUSELC.js} +1 -1
- package/dist/chunks/{chunk-RS526BG7.js → chunk-WZ35ICTE.js} +3 -3
- package/dist/chunks/chunk-XHACK2KR.js +2 -0
- package/dist/chunks/chunk-XOPHFUUY.js +2 -0
- package/dist/chunks/{chunk-ZVMQLIRA.js → chunk-XT4CSKHM.js} +1 -1
- package/dist/chunks/{chunk-KQD36SBJ.js → chunk-XY7HFXLH.js} +1 -1
- package/dist/chunks/{chunk-UXO33ST5.js → chunk-XYZV3FKD.js} +1 -1
- package/dist/chunks/{chunk-GC6RJBRZ.js → chunk-Y2WNZWT2.js} +1 -1
- package/dist/chunks/chunk-Y4I6CFZJ.js +2 -0
- package/dist/chunks/chunk-YDZBX4XQ.js +2 -0
- package/dist/chunks/chunk-YI6ME6PU.js +22 -0
- package/dist/chunks/{chunk-H42UW6IF.js → chunk-YXMYK5P7.js} +1 -1
- package/dist/chunks/{chunk-QFL2VQKX.js → chunk-Z33RVGP6.js} +1 -1
- package/dist/chunks/chunk-Z5CQXPIS.js +6 -0
- package/dist/chunks/{chunk-OY4B7Y3T.js → chunk-ZDEIVUUI.js} +1 -1
- package/dist/chunks/{chunk-XGJG2ZKE.js → chunk-ZIQJDTQB.js} +1 -1
- package/dist/chunks/{chunk-IR2Y2VQY.js → chunk-ZYLLPRPU.js} +1 -1
- package/dist/chunks/cli-R7TAP6Z2.js +2 -0
- package/dist/chunks/{command-NWOZXU57.js → command-LNOVZQSK.js} +3 -3
- package/dist/chunks/{configuration-command-ZEIBQKB3.js → configuration-command-C3QBDFND.js} +1 -1
- package/dist/chunks/connected-app-executor-LAEAQUJS.js +2 -0
- package/dist/chunks/connected-evidence-VKY6O2JW.js +2 -0
- package/dist/chunks/{connected-starting-assets-66Y46ZPM.js → connected-starting-assets-5LAJ7CZY.js} +1 -1
- package/dist/chunks/{connection-GDWPMHPC.js → connection-VMBXW5PD.js} +1 -1
- package/dist/chunks/{continual-TNPTWTKK.js → continual-FVOLGGOE.js} +1 -1
- package/dist/chunks/core-commands-5TNBVR72.js +2 -0
- package/dist/chunks/dataset-preparation-authoring-UUYFWWCT.js +4 -0
- package/dist/chunks/datasets-BIDZJYDC.js +2 -0
- package/dist/chunks/desktop-test-BY2MS3UL.js +3 -0
- package/dist/chunks/dist-2MKJC6HN.js +2 -0
- package/dist/chunks/{dist-GR56E3QK.js → dist-DKE7RJZN.js} +1 -1
- package/dist/chunks/evaluation-coordination-FXB4DXZA.js +2 -0
- package/dist/chunks/experiment-improvements-JPDLKZXD.js +2 -0
- package/dist/chunks/experiments-IEN7RXLX.js +2 -0
- package/dist/chunks/experiments-signal-L32D36NH.js +2 -0
- package/dist/chunks/{extension-UH34ZF7N.js → extension-3EKIT6BB.js} +1 -1
- package/dist/chunks/{help-O53DTZGN.js → help-PLQJOP4P.js} +1 -1
- package/dist/chunks/host-profile-evaluation-tools-UF4ATIUF.js +2 -0
- package/dist/chunks/host-profile-external-dataset-KSEPXY2S.js +2 -0
- package/dist/chunks/hosted-app-server-composition-GZES7QXJ.js +2 -0
- package/dist/chunks/hosted-experiment-improvement-VG2WE7XZ.js +3 -0
- package/dist/chunks/hosted-harness-runtime-MMTLCL23.js +2 -0
- package/dist/chunks/hosted-profile-candidate-PTGQLPZO.js +3 -0
- package/dist/chunks/hosted-profile-compiler-FS5R6CHJ.js +2 -0
- package/dist/chunks/hosted-profile-evaluation-control-UUEZEMXU.js +2 -0
- package/dist/chunks/hosted-profile-evaluation-inspection-4F7OEF4T.js +3 -0
- package/dist/chunks/hosted-profile-evaluation-preparation-LIJJZDHQ.js +3 -0
- package/dist/chunks/hosted-tasksets-V24IBVJX.js +2 -0
- package/dist/chunks/human-review-6V6EMNVN.js +2 -0
- package/dist/chunks/{import-OBAKUJPM.js → import-SI24Z7EF.js} +2 -2
- package/dist/chunks/{learning-CRR6NRPN.js → learning-LAXMGWSQ.js} +1 -1
- package/dist/chunks/learning-Y3UKNUGE.js +2 -0
- package/dist/chunks/local-harness-improvement-runtime-3YJQRYXC.js +2 -0
- package/dist/chunks/local-harness-taskset-review-XQHQ6JCR.js +2 -0
- package/dist/chunks/{model-projects-HP4DELCP.js → model-projects-6YWVD2TS.js} +1 -1
- package/dist/chunks/opchat-SV67HVMX.js +3 -0
- package/dist/chunks/opchat-bounded-chat-KLMIYSZZ.js +2 -0
- package/dist/chunks/organizations-OZZFX7RG.js +2 -0
- package/dist/chunks/{profile-3WZJ65CT.js → profile-TD5U3INY.js} +1 -1
- package/dist/chunks/project-action-payload-TK6G4VMC.js +2 -0
- package/dist/chunks/project-agent-FFXPNXCO.js +2 -0
- package/dist/chunks/published-experiment-source-SDXUVPE7.js +2 -0
- package/dist/chunks/refiner-profile-service-56VYLZQJ.js +2 -0
- package/dist/chunks/{runtime-XP4DEGR3.js → runtime-Q7JUJO4D.js} +2 -2
- package/dist/chunks/sandbox-command-4BCUDAED.js +2 -0
- package/dist/chunks/{sandbox-template-YFMHEMUQ.js → sandbox-template-GOY7QQUY.js} +1 -1
- package/dist/chunks/saved-work-M6PUHKCC.js +2 -0
- package/dist/chunks/{send-turn-D3GTSSHI.js → send-turn-YLY3YNEQ.js} +1 -1
- package/dist/chunks/setup-RMZ2BHLM.js +2 -0
- package/dist/chunks/{src-GQPWOPYA.js → src-C3ZUESMK.js} +1 -1
- package/dist/chunks/src-MT4B43TD.js +424 -0
- package/dist/chunks/standalone-experiment-turn-owner-TW5MTWIO.js +2 -0
- package/dist/chunks/store-chat-resources-IRHBW2EC.js +2 -0
- package/dist/chunks/{store-continual-support-reviews-VVRQO2JK.js → store-continual-support-reviews-3KK42L4I.js} +1 -1
- package/dist/chunks/store-conversation-serving-IVURK52V.js +2 -0
- package/dist/chunks/{store-create-improve-2XI36AET.js → store-create-improve-UTCLBXF2.js} +1 -1
- package/dist/chunks/{store-datasets-UFY422NG.js → store-datasets-4AQOVAQY.js} +1 -1
- package/dist/chunks/store-evaluation-results-PK2P3IMH.js +7 -0
- package/dist/chunks/{store-harness-workspaces-SGUEYDO2.js → store-harness-workspaces-YEXB4IRV.js} +1 -1
- package/dist/chunks/store-human-review-O4BVHP25.js +7 -0
- package/dist/chunks/store-learned-preference-migration-validation-44SVX6YB.js +2 -0
- package/dist/chunks/{store-learning-BFOT4QVT.js → store-learning-SIUQIY5C.js} +1 -1
- package/dist/chunks/{store-learning-credentials-DYTMWQTC.js → store-learning-credentials-BUHR7SN6.js} +1 -1
- package/dist/chunks/store-local-experiments-BHVTKPPE.js +97 -0
- package/dist/chunks/store-model-batch-review-RVAYUVK2.js +2 -0
- package/dist/chunks/{store-model-configuration-NJFWSYSA.js → store-model-configuration-6L3OYXF4.js} +1 -1
- package/dist/chunks/store-model-project-preparation-AAEKCF6V.js +2 -0
- package/dist/chunks/store-modification-recordings-LCPK6K2T.js +9 -0
- package/dist/chunks/{store-preference-comparison-MZAYONCK.js → store-preference-comparison-5YVIQNVB.js} +1 -1
- package/dist/chunks/{store-sidebar-file-bookmarks-J3JEVAYR.js → store-sidebar-file-bookmarks-WLMYDA4E.js} +1 -1
- package/dist/chunks/{store-sidebar-preferences-2JHTFXJK.js → store-sidebar-preferences-AFMYIDWT.js} +1 -1
- package/dist/chunks/{store-subagents-PUBQVWSU.js → store-subagents-KFPVSTRO.js} +1 -1
- package/dist/chunks/{store-task-inbox-3BREANOX.js → store-task-inbox-L6IQTY26.js} +1 -1
- package/dist/chunks/{store-task-inventory-5HRZCDUT.js → store-task-inventory-QWS2C656.js} +1 -1
- package/dist/chunks/store-taskset-drafts-FRFL6ITK.js +9 -0
- package/dist/chunks/{store-training-S3FXWLT6.js → store-training-FYXZU2FE.js} +1 -1
- package/dist/chunks/{store-training-jobs-2LCXPA7G.js → store-training-jobs-3N3VKPIY.js} +1 -1
- package/dist/chunks/{store-training-models-7AMKS7ZW.js → store-training-models-VOFVGPZR.js} +1 -1
- package/dist/chunks/{taskset-PLKWRT4X.js → taskset-UDDLFYKV.js} +1 -1
- package/dist/chunks/taskset-catalog-RZYEBCRQ.js +2 -0
- package/dist/chunks/taskset-packages-T6B6HYKZ.js +2 -0
- package/dist/chunks/taskset-packages-WMG5DUBN.js +2 -0
- package/dist/chunks/{teams-bot-VQXUA7U4.js → teams-bot-YCUTDDDC.js} +1 -1
- package/dist/chunks/tool-learning-ZQ6NSJ5K.js +2 -0
- package/dist/chunks/training-5NT2YB2L.js +2 -0
- package/dist/chunks/training-5UMT45UL.js +2 -0
- package/dist/chunks/training-UY6KRG4M.js +2 -0
- package/dist/chunks/{training-error-LQKCOQDJ.js → training-error-WF463UNZ.js} +1 -1
- package/dist/chunks/{training-hardware-ESXRWUIK.js → training-hardware-UWQCRDMV.js} +1 -1
- package/dist/chunks/training-hosted-CKSDRVL6.js +2 -0
- package/dist/chunks/training-hosted-alphaedit-HSMRDJTD.js +2 -0
- package/dist/chunks/training-hosted-decision-7JALOU6O.js +2 -0
- package/dist/chunks/training-hosted-engram-SXO75MFG.js +2 -0
- package/dist/chunks/{training-hosted-learning-WQ2IP5FP.js → training-hosted-learning-E2N32YU5.js} +1 -1
- package/dist/chunks/training-hosted-modification-comparison-TXFDJFTG.js +2 -0
- package/dist/chunks/training-hosted-neuron-training-J42WK4EH.js +2 -0
- package/dist/chunks/training-hosted-serving-report-BAEABGJH.js +2 -0
- package/dist/chunks/training-hosted-steering-T556BUBG.js +2 -0
- package/dist/chunks/training-model-start-P3PXDWNT.js +2 -0
- package/dist/chunks/web-search-ZEKJHZW4.js +2 -0
- package/dist/chunks/{workspaces-MCS2AQX6.js → workspaces-EK62ANTB.js} +1 -1
- package/dist/cli.js +1 -1
- package/dist/index.js +1 -1
- package/dist/sandbox/runtime-handle.d.ts +3 -5
- package/dist/sandbox/sandbox-instance-client.d.ts +11 -5
- package/dist/sandbox/types/billing.d.ts +140 -6
- package/dist/sandbox/types/io.d.ts +3 -0
- package/dist/sandbox/types/responses.d.ts +11 -1
- package/dist/sandbox/types/snapshots.d.ts +52 -3
- package/dist/sandbox-template/manifest.js +1 -1
- package/dist/skills/manifest.json +3 -3
- package/dist/skills/openpond-cli/references/experiments-and-training.md +461 -1
- package/dist/web/assets/App-CCuh99JW.js +54 -0
- package/dist/web/assets/{AppDialog-BvskhHE9.js → AppDialog-CxjDHVk9.js} +1 -1
- package/dist/web/assets/AppTerminalPanel-CKJIVpKa.js +2 -0
- package/dist/web/assets/{AppToastContext-D2788RqX.js → AppToastContext-EpiT1dHs.js} +1 -1
- package/dist/web/assets/AppsView-BsMyPX_3.js +1 -0
- package/dist/web/assets/{AttachmentTypeIcon-DVluUHuc.js → AttachmentTypeIcon-BXvZy5gB.js} +1 -1
- package/dist/web/assets/BrowserSidebar-BIIV4aq4.js +1 -0
- package/dist/web/assets/{CartesianChart-DdBZ69lI.js → CartesianChart-brqLBqnF.js} +1 -1
- package/dist/web/assets/ChatTimelineEntry-CwZbn16X.js +8 -0
- package/dist/web/assets/{CollaborationTabs-ba6WupeJ.js → CollaborationTabs-BU4uc4tZ.js} +1 -1
- package/dist/web/assets/{CommandMenu-D7wTaEgl.js → CommandMenu-DkWpXR55.js} +1 -1
- package/dist/web/assets/CommunityView-CsSxJZGn.js +1 -0
- package/dist/web/assets/{ComposerAttachments-aO90qXYz.js → ComposerAttachments-BdJGCYzI.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-BPUJBSyS.js → ComposerCreateImproveStrip-CWy0j1vv.js} +1 -1
- package/dist/web/assets/{ConversationImportsSettings-Bo836wKJ.js → ConversationImportsSettings-DCmiakbZ.js} +1 -1
- package/dist/web/assets/DatasetReviewImport-DEnF_pGu.js +1 -0
- package/dist/web/assets/ExperimentTrainingDataWorkspace-WhwQ0QBi.js +2 -0
- package/dist/web/assets/{FilePagePreview-C6wIp6uX.js → FilePagePreview-BRhhz99q.js} +2 -2
- package/dist/web/assets/{GetStartedView-CxMv8q-h.js → GetStartedView-CLVD-qEi.js} +1 -1
- package/dist/web/assets/{GettingStartedDialog-CEb0cS-o.js → GettingStartedDialog-CMxaAMg-.js} +1 -1
- package/dist/web/assets/HostedModelLearningReview-Cn-j-rDo.js +1 -0
- package/dist/web/assets/HostedModelLearningSettings-VNBvf38S.js +1 -0
- package/dist/web/assets/{HtmlVisual-CCuUkYT8.js → HtmlVisual-D5y2WG9L.js} +10 -10
- package/dist/web/assets/LabModelVersionDetailPage-BxRmYD6h.js +1 -0
- package/dist/web/assets/{TrainingRunLineage-PXzWR65d.css → LabModelWorkspace-DOrgCk9Z.css} +1 -1
- package/dist/web/assets/LabModelWorkspace-u2Ulm_z4.js +1 -0
- package/dist/web/assets/{LabSkillSidebar-CFROlATQ.js → LabSkillSidebar-C7IceJTJ.js} +1 -1
- package/dist/web/assets/LabsRoute-C9Y0GU34.css +1 -0
- package/dist/web/assets/LabsRoute-CbztQaEf.js +74 -0
- package/dist/web/assets/LearningBatchesPage-B1NZTBSv.css +1 -0
- package/dist/web/assets/LearningBatchesPage-CJqgZNvM.js +26 -0
- package/dist/web/assets/MainChatThread-DNMfrrRq.js +2 -0
- package/dist/web/assets/{MainPane-BOWkynGB.css → MainPane-BZlNLfTM.css} +1 -1
- package/dist/web/assets/MainPane-CQQxSDPS.js +13 -0
- package/dist/web/assets/ModelProjectPageHeader-Dge19aE1.js +1 -0
- package/dist/web/assets/NativeSetupTerminal-D4JnbpyD.js +2 -0
- package/dist/web/assets/{NativeSkillSidebar-MAJWS4mL.js → NativeSkillSidebar-Jzx1BeKV.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-MQiUBVx3.js → NewProjectDialog-DcnGzEd9.js} +1 -1
- package/dist/web/assets/{OutputsPage-DpF-aRTu.js → OutputsPage-Cmk15Vt_.js} +1 -1
- package/dist/web/assets/{PageChrome-8gH2hyDb.js → PageChrome-Cz_fCqtn.js} +1 -1
- package/dist/web/assets/{ProjectsPage-BQ98oGyu.js → ProjectsPage-BZ3Eo3Mz.js} +1 -1
- package/dist/web/assets/RightChatPanelStack-C6H2vU9N.js +1 -0
- package/dist/web/assets/RightSidebarHomePanel-BfMMVkM1.js +1 -0
- package/dist/web/assets/{ScheduledWorkPage-CGCqZz_H.js → ScheduledWorkPage-CAkSwM0T.js} +1 -1
- package/dist/web/assets/{SettingsView-CqpMFLxy.js → SettingsView-DvQXGw3_.js} +3 -3
- package/dist/web/assets/{TasksetDraftEditorPrimitives-DJvIvzBb.js → TasksetDraftEditorPrimitives-JuU1k8vr.js} +1 -1
- package/dist/web/assets/TeamChatView-DmHjr8W9.js +1 -0
- package/dist/web/assets/{TerminalOverlay-D--M876l.js → TerminalOverlay-DlaM9d8F.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-DDUoHQHU.js → TrainingCreationPanel-ClpylNsr.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-CwLXn3Z7.js → TrainingDraftPanel-6tH2xSDj.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-CGwPregx.js → UsageSettingsSection-CzDqxOYM.js} +2 -2
- package/dist/web/assets/WorkSidebarPanel-CY-AHZ4-.js +1 -0
- package/dist/web/assets/WorkspaceDiffPanel-B4e0lyF7.js +11 -0
- package/dist/web/assets/WorkspaceEnvironmentMenu-D01ZkZZF.js +35 -0
- package/dist/web/assets/{WorkspaceFileLocation-D-ctFM4d.js → WorkspaceFileLocation-C5s_njZb.js} +1 -1
- package/dist/web/assets/{WorkspaceGitDialogs-CQ28j3R7.js → WorkspaceGitDialogs-DjPZ6KIh.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-BrZs6-EW.js → WorkspaceMonacoEditor-CC4sfOiU.js} +3 -3
- package/dist/web/assets/{WorkspacePdfPreview-CU6PSjjN.js → WorkspacePdfPreview-vszQqFa4.js} +2 -2
- package/dist/web/assets/{WorkspacePresentationPreview-IjXVXpIy.js → WorkspacePresentationPreview-DQTvhaRD.js} +1 -1
- package/dist/web/assets/api-client-DJRVOFzS.js +1 -0
- package/dist/web/assets/{app-models-CKXrDTEU.js → app-models-BUdzQbXo.js} +1 -1
- package/dist/web/assets/bot-Doyx3T4j.js +1 -0
- package/dist/web/assets/{browser-sidebar-links-D9v2cyJa.js → browser-sidebar-links-PVPCrsDJ.js} +1 -1
- package/dist/web/assets/chat-resources-Beh5lB36.js +1 -0
- package/dist/web/assets/chevron-down-DX1hzujj.js +1 -0
- package/dist/web/assets/chevron-right-DHN0y3KC.js +1 -0
- package/dist/web/assets/chevron-up-_QrW88NF.js +1 -0
- package/dist/web/assets/{chunk-TLSP5JKG-BrrVo5rJ.js → chunk-3BYFS4RO-ztZjcMmt.js} +1 -1
- package/dist/web/assets/chunk-AG6UJ3DI-D9KZjTYP.js +1 -0
- package/dist/web/assets/chunk-C3TS766N-ppRhs95p.js +1 -0
- package/dist/web/assets/chunk-GCUWJUUM-Dy6oUNJ6.js +9 -0
- package/dist/web/assets/chunk-GS5HEE4M-C0RLeIsy.js +1 -0
- package/dist/web/assets/{chunk-H3JZ3P5T-CzpTARDY.js → chunk-H3JZ3P5T-DolwEJXo.js} +2 -2
- package/dist/web/assets/chunk-Q4RGCEOI-Cr-dg4Nk.js +1 -0
- package/dist/web/assets/client-DwZ92xtu.js +1 -0
- package/dist/web/assets/{client-choice-storage-DUWsS4X0.js → client-choice-storage-DitqKiIT.js} +1 -1
- package/dist/web/assets/cloud-upload-HdzNTgr2.js +1 -0
- package/dist/web/assets/common-BWVSBnpX.js +1 -0
- package/dist/web/assets/copy-DTQhoBNg.js +1 -0
- package/dist/web/assets/create-pipeline-DsZzNkt9.js +1 -0
- package/dist/web/assets/{cssMode-SclUkqPt.js → cssMode-BRTtfXxU.js} +1 -1
- package/dist/web/assets/dataset-workspaces-BTPi71mz.js +1 -0
- package/dist/web/assets/external-link-H1629UU6.js +1 -0
- package/dist/web/assets/folder-open-CAGdWOrr.js +1 -0
- package/dist/web/assets/folder-plus-C14cs2mE.js +1 -0
- package/dist/web/assets/git-commit-horizontal-DFUfuVvF.js +1 -0
- package/dist/web/assets/{htmlMode-X3mQtOeh.js → htmlMode-BVaCcL76.js} +1 -1
- package/dist/web/assets/icons-Bk2b68aC.js +1 -0
- package/dist/web/assets/image-0DPVY6Ev.js +1 -0
- package/dist/web/assets/{index-LXNhSUEL.js → index-B6XX_0h3.js} +2 -2
- package/dist/web/assets/info-C8b_tafZ.js +1 -0
- package/dist/web/assets/{intake-contracts-wCkD2ErR.js → intake-contracts-B8JZKYwb.js} +1 -1
- package/dist/web/assets/{jsonMode-BoKiIdHd.js → jsonMode-BCKKQmmV.js} +1 -1
- package/dist/web/assets/loader-circle-y-SSPwpk.js +1 -0
- package/dist/web/assets/{lspLanguageFeatures-CO2mzpy1.js → lspLanguageFeatures-DozmNUOx.js} +1 -1
- package/dist/web/assets/maximize-2-CByk9-zN.js +1 -0
- package/dist/web/assets/message-square-C889vRqm.js +1 -0
- package/dist/web/assets/{monaco.contribution-wacA5FjV.js → monaco.contribution-B9q6qbbo.js} +2 -2
- package/dist/web/assets/{monaco.contribution-CVe3mWSY.js → monaco.contribution-BITdsRbn.js} +2 -2
- package/dist/web/assets/{monaco.contribution-hrusiaZi.js → monaco.contribution-BqA-XZ44.js} +2 -2
- package/dist/web/assets/{monaco.contribution-C7CAQIKF.js → monaco.contribution-DxAV1oS5.js} +2 -2
- package/dist/web/assets/monitor-BtxlcLuI.js +1 -0
- package/dist/web/assets/paperclip-BeIdaspf.js +1 -0
- package/dist/web/assets/{pdf-Ct3M2mVw.js → pdf-perlzwEB.js} +1 -1
- package/dist/web/assets/play-CHXXdkuO.js +1 -0
- package/dist/web/assets/plus-DFFWjhPw.js +1 -0
- package/dist/web/assets/{ponder-desktop-D-zB6X4L.js → ponder-desktop-Ca-9KggQ.js} +1 -1
- package/dist/web/assets/presentation-0bzvu6_u.js +1 -0
- package/dist/web/assets/{profile-ref-CCxrOCio.js → profile-ref-D8lxL7dW.js} +1 -1
- package/dist/web/assets/{python-C0-pUUAU.js → python-B9hOnkOI.js} +1 -1
- package/dist/web/assets/refresh-cw-D61-Ozk3.js +1 -0
- package/dist/web/assets/{requests-DjSt-duM.js → requests-DmeUYik4.js} +1 -1
- package/dist/web/assets/reward-checks-DJJZYgf8.js +7 -0
- package/dist/web/assets/save-iEMNZoPe.js +1 -0
- package/dist/web/assets/schemas-Brv9Vmnk.js +64 -0
- package/dist/web/assets/settings-BC-bzgk6.js +21 -0
- package/dist/web/assets/settings-lists-C84qxFmP.js +5 -0
- package/dist/web/assets/square-BE_4JMR3.js +1 -0
- package/dist/web/assets/square-terminal-Djpzo2Qs.js +1 -0
- package/dist/web/assets/{submit-issue-command-Gk3RKrY-.js → submit-issue-command-HfKzyxg5.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-BnYUBgZB.js → toggleHighContrast-ClsXu39R.js} +1 -1
- package/dist/web/assets/training-DWfghwfZ.js +1 -0
- package/dist/web/assets/{training-model-data-CxR3xpmK.js → training-model-data-CIysl8wH.js} +4 -4
- package/dist/web/assets/{tsMode-BVNyOY8h.js → tsMode-nbmaMc-D.js} +1 -1
- package/dist/web/assets/upload-C6ug8RD-.js +1 -0
- package/dist/web/assets/{useAccountSettings-4_XfwJQi.js → useAccountSettings-Dr9h4Qz_.js} +1 -1
- package/dist/web/assets/{useAgentInventory-CVuamyT3.js → useAgentInventory-ByCk2JAv.js} +1 -1
- package/dist/web/assets/useChatContextSelection-C0eMm2g6.js +1 -0
- package/dist/web/assets/{useLocalAgentSchedules-CmwN4ohy.js → useLocalAgentSchedules-Do0y_leJ.js} +1 -1
- package/dist/web/assets/useQuery-D2MQ7e5U.js +1 -0
- package/dist/web/assets/wifi-off-Dr-CapyW.js +1 -0
- package/dist/web/assets/work-outputs-D_8TovAK.js +1 -0
- package/dist/web/assets/{workers-CjtQ2aBD.js → workers-DKvM2NdM.js} +1 -1
- package/dist/web/assets/x-Jx2jlP9u.js +1 -0
- package/dist/web/assets/{yaml-N1KUjBZ8.js → yaml-C02vq4ar.js} +1 -1
- package/dist/web/index.html +1 -1
- package/docs/command-reference.md +104 -3
- package/package.json +1 -1
- package/dist/chunks/account-context-TIJOM22A.js +0 -12
- package/dist/chunks/actions-command-BYPLSGZL.js +0 -2
- package/dist/chunks/app-server-evaluations-5YZUFXQ2.js +0 -2
- package/dist/chunks/app-server-harness-services-N5F5QVZI.js +0 -2
- package/dist/chunks/app-server-runtime-HJ2N57DL.js +0 -2
- package/dist/chunks/apps-WJTW64NW.js +0 -2
- package/dist/chunks/chunk-263WS3TB.js +0 -2
- package/dist/chunks/chunk-27JGS3KB.js +0 -12
- package/dist/chunks/chunk-2UZHLO2V.js +0 -23
- package/dist/chunks/chunk-2W22IXHB.js +0 -2
- package/dist/chunks/chunk-46RMTR2Z.js +0 -2
- package/dist/chunks/chunk-4JJ4RYIB.js +0 -6
- package/dist/chunks/chunk-4NN5OLKW.js +0 -161
- package/dist/chunks/chunk-543QHE3D.js +0 -2
- package/dist/chunks/chunk-5QOFUGYQ.js +0 -2
- package/dist/chunks/chunk-5ZNE43XC.js +0 -10
- package/dist/chunks/chunk-6IS5OLI5.js +0 -2
- package/dist/chunks/chunk-7HAGSE7L.js +0 -2
- package/dist/chunks/chunk-AXYAEWWA.js +0 -2
- package/dist/chunks/chunk-B7XJBP4U.js +0 -2
- package/dist/chunks/chunk-BBIA24GD.js +0 -10
- package/dist/chunks/chunk-CJDGLPNX.js +0 -4
- package/dist/chunks/chunk-DAEUVT2I.js +0 -6
- package/dist/chunks/chunk-FCXDPVGJ.js +0 -3
- package/dist/chunks/chunk-FE2ENE3U.js +0 -2
- package/dist/chunks/chunk-H6EUFJJK.js +0 -2
- package/dist/chunks/chunk-IOSBGCRT.js +0 -2
- package/dist/chunks/chunk-IXZ5ZGIL.js +0 -12
- package/dist/chunks/chunk-K6DB5QWG.js +0 -2
- package/dist/chunks/chunk-LI56PPCN.js +0 -2
- package/dist/chunks/chunk-OE2OOWEQ.js +0 -2
- package/dist/chunks/chunk-OYIFH2OM.js +0 -2
- package/dist/chunks/chunk-QOUOU7FE.js +0 -22
- package/dist/chunks/chunk-R5GRESW3.js +0 -2
- package/dist/chunks/chunk-TERKCK4I.js +0 -2
- package/dist/chunks/chunk-TS5HNRZB.js +0 -2
- package/dist/chunks/chunk-V3KEG6MI.js +0 -2
- package/dist/chunks/chunk-WGISITX6.js +0 -4
- package/dist/chunks/chunk-XD4ZIQZ2.js +0 -2
- package/dist/chunks/chunk-XHU4BZQY.js +0 -13
- package/dist/chunks/chunk-ZWEY66RT.js +0 -2
- package/dist/chunks/cli-HV32F7HD.js +0 -2
- package/dist/chunks/connected-app-executor-DFHWNMRM.js +0 -2
- package/dist/chunks/connected-evidence-WOM6N5HO.js +0 -2
- package/dist/chunks/core-commands-GWRHH53F.js +0 -2
- package/dist/chunks/dataset-preparation-authoring-WJ2XEUO7.js +0 -4
- package/dist/chunks/datasets-XIMF54QN.js +0 -2
- package/dist/chunks/desktop-test-HF42V2EP.js +0 -3
- package/dist/chunks/dist-T6ES2TSM.js +0 -2
- package/dist/chunks/evaluation-coordination-WZT6FDMS.js +0 -2
- package/dist/chunks/experiment-improvements-H35VS6XZ.js +0 -2
- package/dist/chunks/experiments-F54C32EE.js +0 -2
- package/dist/chunks/experiments-signal-ONIGTGYR.js +0 -2
- package/dist/chunks/host-profile-evaluation-tools-LMCJ3MDJ.js +0 -2
- package/dist/chunks/host-profile-external-dataset-4HOXANWK.js +0 -2
- package/dist/chunks/hosted-app-server-composition-Y64A2A2B.js +0 -2
- package/dist/chunks/hosted-experiment-improvement-B2V2WIUI.js +0 -3
- package/dist/chunks/hosted-harness-runtime-C7I4KSDK.js +0 -2
- package/dist/chunks/hosted-profile-candidate-CXPVEEYQ.js +0 -3
- package/dist/chunks/hosted-profile-compiler-FGCI2VRW.js +0 -2
- package/dist/chunks/hosted-profile-evaluation-control-INNUYMBD.js +0 -2
- package/dist/chunks/hosted-profile-evaluation-inspection-UPTBRYMS.js +0 -3
- package/dist/chunks/hosted-profile-evaluation-preparation-TIQSVKLQ.js +0 -3
- package/dist/chunks/hosted-tasksets-7VMYOTIO.js +0 -2
- package/dist/chunks/human-review-7XC77NQP.js +0 -2
- package/dist/chunks/learning-3XDGIYUL.js +0 -2
- package/dist/chunks/local-harness-improvement-runtime-UIKQSAMM.js +0 -2
- package/dist/chunks/local-harness-taskset-review-6KJN3EQL.js +0 -2
- package/dist/chunks/opchat-NWYWWIA7.js +0 -3
- package/dist/chunks/opchat-bounded-chat-ICURZM6R.js +0 -2
- package/dist/chunks/organizations-7DBQGCCV.js +0 -2
- package/dist/chunks/project-action-payload-7DRABTHY.js +0 -2
- package/dist/chunks/project-agent-AXJOWXRU.js +0 -2
- package/dist/chunks/published-experiment-source-YBBPLNF2.js +0 -2
- package/dist/chunks/refiner-profile-service-ATEFPF5O.js +0 -2
- package/dist/chunks/sandbox-command-CF2PJCFX.js +0 -2
- package/dist/chunks/saved-work-3OAVRBH3.js +0 -2
- package/dist/chunks/setup-RHIMFI2Y.js +0 -2
- package/dist/chunks/src-V236S6MV.js +0 -424
- package/dist/chunks/standalone-experiment-turn-owner-CDRMGLWW.js +0 -2
- package/dist/chunks/store-chat-resources-P4EKCLSY.js +0 -2
- package/dist/chunks/store-conversation-serving-YFEZYQD3.js +0 -2
- package/dist/chunks/store-evaluation-results-VBH4R2U7.js +0 -7
- package/dist/chunks/store-human-review-RFCVZ3HP.js +0 -7
- package/dist/chunks/store-learned-preference-migration-validation-FNBGGZU6.js +0 -2
- package/dist/chunks/store-local-experiments-XPXGYXNM.js +0 -97
- package/dist/chunks/store-model-batch-review-J2L5JQV2.js +0 -2
- package/dist/chunks/store-model-project-preparation-OCLIFKI2.js +0 -2
- package/dist/chunks/store-taskset-drafts-BNKUVHPA.js +0 -9
- package/dist/chunks/taskset-packages-SXBLYHSP.js +0 -2
- package/dist/chunks/taskset-packages-V5T4V7YN.js +0 -2
- package/dist/chunks/tool-learning-47XQKELE.js +0 -2
- package/dist/chunks/training-7VQNCOGH.js +0 -2
- package/dist/chunks/training-VKLPNCMC.js +0 -2
- package/dist/chunks/training-hosted-NNE6BP6S.js +0 -2
- package/dist/chunks/training-hosted-serving-report-VZ4SMLMG.js +0 -2
- package/dist/chunks/training-model-start-G7YDZ7ZG.js +0 -2
- package/dist/chunks/web-search-56QRZGPR.js +0 -2
- package/dist/web/assets/App-DmEA-Lia.js +0 -53
- package/dist/web/assets/AppTerminalPanel-ScQKJV4z.js +0 -2
- package/dist/web/assets/AppsView-B1uNg9IQ.js +0 -1
- package/dist/web/assets/BrowserSidebar-DfVQoJHn.js +0 -1
- package/dist/web/assets/ChatTimelineEntry-Bbc6HRks.js +0 -8
- package/dist/web/assets/CommunityView-mO58f2B0.js +0 -1
- package/dist/web/assets/HostedModelLearningReview-BQIS7hkd.js +0 -1
- package/dist/web/assets/HostedModelLearningSettings-BQ-YeFMT.js +0 -1
- package/dist/web/assets/LabModelVersionDetailPage-BkHeVbAx.js +0 -1
- package/dist/web/assets/LabsRoute-CE45yAXJ.css +0 -1
- package/dist/web/assets/LabsRoute-YA9YckKj.js +0 -101
- package/dist/web/assets/MainChatThread-DpyPgGKW.js +0 -2
- package/dist/web/assets/MainPane-WOeodByM.js +0 -10
- package/dist/web/assets/NativeSetupTerminal-fmG2c65K.js +0 -2
- package/dist/web/assets/RightChatPanelStack-Bs7A4dLs.js +0 -1
- package/dist/web/assets/RightSidebarHomePanel-C-D4kba2.js +0 -1
- package/dist/web/assets/TeamChatView-DjmIaLO1.js +0 -1
- package/dist/web/assets/TrainingRunLineage-CtYe1KGX.js +0 -1
- package/dist/web/assets/WorkSidebarPanel-C6wWuo7U.js +0 -1
- package/dist/web/assets/WorkspaceDiffPanel-JDOUmrC-.js +0 -11
- package/dist/web/assets/WorkspaceEnvironmentMenu-sfL5LZeB.js +0 -35
- package/dist/web/assets/api-client-Dgz-fOMl.js +0 -1
- package/dist/web/assets/bot-Cd761lRF.js +0 -1
- package/dist/web/assets/chat-resources-BUDXdoG0.js +0 -1
- package/dist/web/assets/chevron-down-DEbd6Ek-.js +0 -1
- package/dist/web/assets/chevron-right-DLYNg_Oq.js +0 -1
- package/dist/web/assets/chevron-up-DFJJccDl.js +0 -1
- package/dist/web/assets/chunk-GHPCQXG5-DKDBSd8H.js +0 -9
- package/dist/web/assets/chunk-GJRXJL6G-luaxRTYI.js +0 -1
- package/dist/web/assets/chunk-JDQVAG3R-C0-rh1aR.js +0 -1
- package/dist/web/assets/chunk-XMVSQIK4-BBU7r_NH.js +0 -1
- package/dist/web/assets/client-BNjO4Xi8.js +0 -1
- package/dist/web/assets/cloud-upload-CoM1FGeB.js +0 -1
- package/dist/web/assets/common-CFsO2ppZ.js +0 -1
- package/dist/web/assets/copy-BGOhV6Pk.js +0 -1
- package/dist/web/assets/create-pipeline-DRR0Qeec.js +0 -1
- package/dist/web/assets/createLucideIcon-Bv-_eGcE.js +0 -1
- package/dist/web/assets/external-link-CVXsNeO3.js +0 -1
- package/dist/web/assets/folder-open-MnOmh19D.js +0 -1
- package/dist/web/assets/folder-plus-BRddLBtO.js +0 -1
- package/dist/web/assets/git-commit-horizontal-Bm4rkXug.js +0 -1
- package/dist/web/assets/icons-CZxmQtZs.js +0 -1
- package/dist/web/assets/image-BViGUAiq.js +0 -1
- package/dist/web/assets/info-DYPIbKKD.js +0 -1
- package/dist/web/assets/loader-circle-JFgFNsP5.js +0 -1
- package/dist/web/assets/maximize-2-DXZCQO0b.js +0 -1
- package/dist/web/assets/message-square-cOCAL8J1.js +0 -1
- package/dist/web/assets/models-route-CWcJuOd0.js +0 -1
- package/dist/web/assets/monitor-B35XSAvn.js +0 -1
- package/dist/web/assets/paperclip-CKgDxioG.js +0 -1
- package/dist/web/assets/play-DzqLr7fM.js +0 -1
- package/dist/web/assets/plus-Ddp1vXnw.js +0 -1
- package/dist/web/assets/presentation-B0S9v7ib.js +0 -1
- package/dist/web/assets/refresh-cw-D45mW-vs.js +0 -1
- package/dist/web/assets/reward-checks-D139zwha.js +0 -7
- package/dist/web/assets/save-Gu4R_82E.js +0 -1
- package/dist/web/assets/schemas-C9IwV7NS.js +0 -64
- package/dist/web/assets/settings-DdonLCIN.js +0 -21
- package/dist/web/assets/settings-lists-CFHFtO0D.js +0 -5
- package/dist/web/assets/square-Dqduqyyu.js +0 -1
- package/dist/web/assets/square-terminal-DS3zwi6X.js +0 -1
- package/dist/web/assets/training-QBuGBGJd.js +0 -2
- package/dist/web/assets/upload-ABSJxuUM.js +0 -1
- package/dist/web/assets/useQuery-CCjwL8VI.js +0 -1
- package/dist/web/assets/wifi-off-DGJH7Pke.js +0 -1
- package/dist/web/assets/work-outputs-CnbRtTLg.js +0 -1
- package/dist/web/assets/x-B-_zJVOZ.js +0 -1
- /package/dist/chunks/{chunk-SFR32TMJ.js → chunk-JXLDEYRW.js} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{a as De,b as te,c as Ee,e as qe,g as Ce,h as G,k as de}from"./chunk-2UZHLO2V.js";import{A as oe,C as O,D as Ie,F as He,H as _e,I as A,J as Be,L as W,M as Me,N as ee,O as S,P as je,X as ce,Z as Ae,_ as J,l as Se,s as ye,t as Pe}from"./chunk-TV2LE2BD.js";import{h as re,k as Te,l as xe}from"./chunk-TERKCK4I.js";import{A as ke,K as v,L as V,M as j,N as ve,P as we,R as D,ca as F,ia as Re,k as $,l as U,o as L,ob as ie,pb as ne,qb as be,s as Q,v as K,y as Z}from"./chunk-XHU4BZQY.js";import{$a as ge,Aa as _,Wa as fe,_a as he,ab as X,bb as Y}from"./chunk-ZY32SZ2P.js";import{m as ue,n as f}from"./chunk-RCT3O3HQ.js";import{A as c}from"./chunk-X2J2P5ZT.js";import{a as b}from"./chunk-FTQLQJQV.js";function Ke(s){let t=S(s.source);if(t.modelResources||t.learningResources)throw new Error("Binding an ordinary Reward requires an ordinary source package.");let a=ee(t);if(!a.trim())throw new Error("Add collection instructions before selecting a saved Reward.");let e=new Map,i=Ie(t);for(let g of i?.assets??[])e.set(g.id,g);let r=new Set([...t.taskset.tasks.flatMap(g=>g.privilegedContextRef?[g.privilegedContextRef]:[]),...[t.environment.actionSchemaRef,t.environment.observationSchemaRef,t.environment.stateSchemaRef].flatMap(g=>g?[g.id]:[])]);for(let g of r){if(e.has(g))continue;let H=t.files.find(q=>q.asset.id===g);if(!H)throw new Error(`Source Taskset context is missing: ${g}.`);let y=new TextDecoder("utf-8",{fatal:!0}).decode(O(H));e.set(g,we.parse(j({schemaVersion:"openpond.learningTextAsset.v1",id:g,revision:1,asset:H.asset,text:y})))}for(let g of s.assets){let H=t.files.find(y=>y.asset.id===g.id);if(H&&j({asset:H.asset}).contentHash!==j({asset:g.asset}).contentHash)throw new Error(`Selected Reward conflicts with a source asset: ${g.id}.`);e.set(g.id,g)}let{policy:p,environment:o,environmentRelease:k,tools:w,capabilities:n,verifierSetRelease:R}=t.taskset,m=t.taskset.metadata.tasksetOutputContract,x=m&&typeof m=="object"&&!Array.isArray(m)&&"mode"in m&&m.mode==="structured_json"?"jsonSchema"in m?m.jsonSchema:null:{type:"object"},l=L.parse(j({schemaVersion:"openpond.taskDefinition.v1",id:`${t.taskset.id}-definition`,revision:1,name:t.taskset.id,description:"",instructions:a,category:"custom",familyNamespace:t.taskset.id,inputSchema:{type:"object"},outputSchema:x,rewardBinding:v(s.rewardBinding),harness:null,execution:{policy:p,environment:o,environmentRelease:k,tools:w,capabilities:n,verifierSetRelease:R}})),I=Se({...s,assets:[...e.values()],source:{taskset:t.taskset,taskDefinition:l,instructionMode:"per_task",executionResources:{environment:t.environment,verifierSet:t.verifierSet},...i?{execution:i.execution}:{}}}),u=new Map(t.files.map(g=>[g.asset.id,g]));for(let g of I.assets){let H="";for(let y of new TextEncoder().encode(g.text))H+=String.fromCharCode(y);u.set(g.id,{asset:g.asset,base64:btoa(H)})}let{taskset:h,executionResources:M,...E}=I;return je({schemaVersion:"openpond.tasksetPackage.v1",taskset:h,...M,modelResources:E,files:[...u.values()]})}b(Ke,"bindOrdinaryModelTasksetReward");var B=c.string().trim().min(1).max(500),N=c.string().regex(/^[a-f0-9]{64}$/),We=Te.pick({portableProjectId:!0,name:!0,objective:!0,defaultBaseModel:!0,defaultDestinationId:!0,sourceRevision:!0,sourceUpdatedAt:!0}).extend({trainingSetup:re.omit({tasksetRef:!0,rewardBindingRef:!0,tasksetRelease:!0})}).strict(),Je=c.object({schemaVersion:c.literal("openpond.tasksetPackagePublication.v1"),operationId:B,modelProjectId:B,expectedProjectEtag:N.nullable(),name:c.string().trim().min(1).max(200),description:c.string().max(5e3),buildIntent:c.enum(["demonstrations","preferences","verifiable_reward","rubric","discovery"]),methodHint:c.enum(["sft","dpo","grpo","ppo"]).nullable(),package:W,modelConfiguration:We.optional(),evaluationPackage:W.optional(),selection:c.enum(["select","attach"]).optional()}).strict().refine(s=>s.selection!=="attach"||s.modelConfiguration===void 0,"Attachment-only publication cannot replace Model configuration.").refine(s=>!s.evaluationPackage||s.modelConfiguration!==void 0&&s.modelConfiguration.trainingSetup.evaluationTasksetRef!=null&&f(s.modelConfiguration.trainingSetup.evaluationTasksetRef)===f(v(s.evaluationPackage.taskset)),"Evaluation package must match the selected immutable evaluation in Model configuration."),Xe=c.object({schemaVersion:c.literal("openpond.tasksetPackageReceipt.v1"),teamId:B,modelProjectId:B,operationId:B,taskset:G,packageHash:N,hostedTasksetId:B,projectEtag:N,project:xe.optional(),selection:c.enum(["select","attach"]).optional(),evaluation:c.object({taskset:G,packageHash:N,hostedTasksetId:B}).strict().optional()}).strict(),Ye=c.object({schemaVersion:c.literal("openpond.tasksetPackageReadback.v1"),teamId:B,modelProjectId:B,package:W}).strict(),Qe=c.object({schemaVersion:c.literal("openpond.tasksetReleasePackageReadback.v1"),teamId:B,release:G,package:W}).strict(),P=class extends Error{constructor(a,e,i){super(i);this.status=a;this.code=e;this.name="OpenPondTasksetPackageError"}status;code;static{b(this,"OpenPondTasksetPackageError")}},$e=class{static{b(this,"OpenPondTasksetPackageClient")}#e;constructor(t){let a=new URL(t.baseUrl);if(!["http:","https:"].includes(a.protocol)||a.username||a.password||a.search||a.hash||!t.apiKey.trim()||!t.teamId.trim())throw new Error("Taskset package client requires a clean HTTP(S) endpoint and workspace credentials.");this.#e={...t,baseUrl:a.toString().replace(/\/+$/,"")}}async publish(t,a={}){let e=Je.parse(t);S(e.package),e.evaluationPackage&&S(e.evaluationPackage);let{evaluationPackage:i,...r}=e,p=i?.contentHash===e.package.contentHash?r:e,o=Xe.parse(await this.#t("","POST",p,a.signal)),k=e.package.taskset;if(o.teamId!==this.#e.teamId||o.modelProjectId!==e.modelProjectId||o.operationId!==e.operationId||o.packageHash!==e.package.contentHash||o.taskset.id!==k.id||o.taskset.revision!==k.revision||o.taskset.contentHash!==k.contentHash)throw new P(502,"package_receipt_mismatch","Taskset publication receipt did not match the requested package and owner.");if(e.selection!==void 0&&o.selection!==e.selection)throw new P(502,"package_receipt_mismatch","Taskset publication did not retain its selection mode.");if(e.evaluationPackage&&(!o.evaluation||o.evaluation.packageHash!==e.evaluationPackage.contentHash||f(o.evaluation.taskset)!==f(v(e.evaluationPackage.taskset))))throw new P(502,"package_receipt_mismatch","Taskset publication did not retain the complete selected evaluation package.");if(e.selection==="attach"&&o.projectEtag!==e.expectedProjectEtag)throw new P(502,"package_receipt_mismatch","Attaching a historical Taskset changed the Model configuration.");if(e.modelConfiguration){let w=e.modelConfiguration,n=o.project,R=Me(e.package),m=re.parse({...w.trainingSetup,tasksetRef:v(k),rewardBindingRef:R?v(R):null,tasksetRelease:null});if(!n||n.teamId!==this.#e.teamId||n.etag!==o.projectEtag||![n.id,n.portableProjectId].includes(e.modelProjectId)||n.portableProjectId!==w.portableProjectId||n.name!==w.name||n.objective!==w.objective||n.sourceRevision!==w.sourceRevision||Date.parse(n.sourceUpdatedAt)!==Date.parse(w.sourceUpdatedAt)||f(n.defaultBaseModel)!==f(w.defaultBaseModel)||n.defaultDestinationId!==w.defaultDestinationId||f(n.trainingSetup)!==f(m))throw new P(502,"package_receipt_mismatch","Taskset publication did not retain the requested Model configuration.")}return o}async getByRelease(t,a={}){let e=G.parse(t),i=a.expectedPackageHash===void 0?void 0:N.parse(a.expectedPackageHash),r=Qe.parse(await this.#t(`/releases/${encodeURIComponent(e.id)}/${e.revision}/${e.contentHash}/package`,"GET",void 0,a.signal)),p=S(r.package),o={id:p.taskset.id,revision:p.taskset.revision,contentHash:p.taskset.contentHash};if(r.teamId!==this.#e.teamId||f(r.release)!==f(e)||f(o)!==f(e)||i!==void 0&&p.contentHash!==i)throw new P(502,"package_readback_mismatch","Independent Dataset package differs from the requested workspace or exact release.");return p}async get(t,a,e={}){let i=B.parse(t),r=G.parse(a),p=e.expectedPackageHash===void 0?void 0:N.parse(e.expectedPackageHash),o=Ye.parse(await this.#t(`/${encodeURIComponent(i)}/${encodeURIComponent(r.id)}/${r.revision}/${r.contentHash}`,"GET",void 0,e.signal)),k=o.package.taskset;if(o.teamId!==this.#e.teamId||o.modelProjectId!==i||k.id!==r.id||k.revision!==r.revision||k.contentHash!==r.contentHash)throw new P(502,"package_readback_mismatch","Taskset package did not match the requested release and owner.");if(p!==void 0&&o.package.contentHash!==p)throw new P(502,"package_readback_mismatch","Taskset package did not match the saved publication receipt.");return S(o.package)}async#t(t,a,e,i){let r=e===void 0?void 0:JSON.stringify(e);if(r&&new TextEncoder().encode(r).byteLength>oe)throw new P(413,"package_too_large","Taskset publication exceeds the 64 MiB envelope.");let p=await(this.#e.fetch??globalThis.fetch)(`${this.#e.baseUrl}/v1/taskset-packages${t}`,{method:a,headers:{Authorization:`Bearer ${this.#e.apiKey}`,"X-OpenPond-Team-Id":this.#e.teamId,Accept:"application/json",...r?{"Content-Type":"application/json"}:{}},body:r,signal:i,redirect:"error"}),o=p.body?.getReader();if(!o)throw new P(p.status,"empty_response","Taskset package response was empty.");let k=new TextDecoder("utf-8",{fatal:!0}),w=0,n="";try{for(;;){let m=await o.read();if(m.done)break;if(w+=m.value.byteLength,w>oe)throw new P(413,"package_too_large","Taskset response exceeds the 64 MiB envelope.");n+=k.decode(m.value,{stream:!0})}n+=k.decode()}finally{await o.cancel(),o.releaseLock()}let R=JSON.parse(n);if(!p.ok){let m=c.object({code:c.string(),message:c.string()}).safeParse(R);throw new P(p.status,m.success?m.data.code:"package_request_failed",m.success?m.data.message:`Taskset package request failed (${p.status}).`)}return R}};var ae=U.shape.id,Le=c.object({schemaVersion:c.literal("openpond.modelBatchReviewInspection.v1"),packageHash:c.string().regex(/^[a-f0-9]{64}$/),definition:L,binding:fe,evidence:c.array(K).min(1).max(1e4),decisions:c.array(ke).min(1).max(1e4)}).strict(),pe=c.object({schemaVersion:c.literal("openpond.modelBatchReviewRequest.v1"),operationId:ae,modelId:ae,expectedModelRevision:c.number().int().positive(),tasksetRef:U,rewardBindingRef:U.nullable(),definition:c.object({name:c.string().trim().min(1).max(500).optional(),instructions:c.string().trim().min(1).max(2e4).optional(),inputSchema:$.optional(),outputSchema:$.optional(),requiredOutputs:L.shape.requiredOutputs}).strict(),examples:c.array(c.object({evidence:U,input:$.optional(),expected:$.nullable().optional(),evaluatorContext:$.nullable().optional(),proposedTarget:$.nullable().optional()}).strict()).max(1e4)}).strict(),Fe=c.object({schemaVersion:c.literal("openpond.modelBatchReviewReceipt.v1"),operationId:ae,modelId:ae,source:Q,evidence:c.array(K).min(1).max(1e4),proposals:c.array(Z).max(1e4)}).strict();function ze(s){let{request:t,package:a}=s,e=a.learningResources;if(!e)throw new _("model_review_batch_required",422);let i=F(a.taskset),r=`model-review-${f([s.scope,t.modelId,t.operationId])}`,p=new Map(t.examples.map(d=>[f(d.evidence),d])),o=new Set(e.evidence.map(d=>f(v(d)))),k=new Map(e.decisions.map(d=>[f(d.evidence),d]));if(p.size!==t.examples.length||t.examples.some(d=>!o.has(f(d.evidence))))throw new _("model_review_evidence_mismatch",409);for(let d of[s.binding,...s.rewards,...s.assets])ve(d);X(s.binding,s.rewards);let w=new Map;for(let d of s.binding.sources){let T=s.rewards.find(Ue=>V(v(Ue),d.reward)),{contentHash:C,...z}=T;w.set(T.contentHash,he({...z,id:`${r}-reward-${T.contentHash}`,revision:1}))}let n=[...w.values()],{contentHash:R,recipeRef:m,...x}=s.binding,l=ge({...x,id:`${r}-binding`,revision:1,sources:s.binding.sources.map(d=>({...d,reward:v(w.get(d.reward.contentHash))}))},n),I=n.flatMap(d=>[...d.assets,..."verifierRef"in d.implementation?[d.implementation.verifierRef]:[],..."rubricRef"in d.implementation?[d.implementation.rubricRef]:[],..."inputContract"in d.implementation?[d.implementation.inputContract]:[]]),u=[...new Map(I.map(d=>{let T=s.assets.find(C=>C.id===d.id);if(!T)throw new _("model_review_reward_asset_missing",422);if(D(T,d),d.visibility==="policy")throw new _("reward_asset_visibility_invalid",422);return[T.id,T]})).values()],{environmentRelease:h,verifierSetRelease:M,...E}=i.definition.execution,{contentHash:g,...H}=i.definition,y=L.parse(j({...H,...t.definition,id:`${r}-definition`,revision:1,rewardBinding:v(l),execution:{...E,policy:{...E.policy,hiddenGraderRefs:Y(l,n).filter(d=>d.privileged).map(d=>d.id)}}})),q=Q.parse(j({schemaVersion:"openpond.learningSource.v1",id:r,revision:1,name:`${y.name} review`,kind:"direct",taskDefinition:v(y),enabled:!0,allowedSplits:[...new Set(e.evidence.map(d=>d.submission.split))],mapping:null,adapterVersion:null,reviewOrigin:{modelId:t.modelId,packageHash:a.contentHash,taskset:v(a.taskset),batch:v(e.batch),rewardBinding:v(s.binding)}})),le=e.evidence.map(d=>{let T=p.get(f(v(d))),C=`review-${d.contentHash}`,z=f({instructions:y.instructions,inputSchema:y.inputSchema,outputSchema:y.outputSchema,requiredOutputs:y.requiredOutputs??[],input:T?.input??d.submission.input})!==f({instructions:i.definition.instructions,inputSchema:i.definition.inputSchema,outputSchema:i.definition.outputSchema,requiredOutputs:i.definition.requiredOutputs??[],input:d.submission.input});return K.parse(j({schemaVersion:"openpond.taskEvidence.v1",id:be(q.id,d.submission.exampleId,C),revision:1,source:v(q),submission:{...d.submission,sourceId:q.id,taskDefinition:v(y),attemptId:C,observedOutput:z?null:d.submission.observedOutput,idempotencyKey:`${r}-${d.contentHash}`,...T?.input===void 0?{}:{input:T.input},...T?.expected===void 0?{}:{expected:T.expected},...T?.evaluatorContext===void 0?{}:{evaluatorContext:T.evaluatorContext}},supersedes:v(d),correctionFeedbackId:null,receivedAt:s.now}))}),Ne=le.flatMap(d=>{let T=p.get(f(d.supersedes)),C=k.get(f(d.supersedes)),z=T?.proposedTarget===void 0?C.approvedTarget:T.proposedTarget;return z===null?[]:[Z.parse({schemaVersion:"openpond.taskFeedbackRecord.v1",id:`feedback-${f([r,d.id])}`,revision:1,submission:{schemaVersion:"openpond.taskFeedback.v1",sourceId:q.id,idempotencyKey:`${r}-${d.id}`,exampleId:d.submission.exampleId,attemptId:d.submission.attemptId,expectedEvidenceHash:d.contentHash,occurredAt:s.now,kind:"target_correction",value:z,note:"Proposed target for the revised task. Grade and review before admission."},status:"pending_review",evidence:v(d),createdAt:s.now,review:null})]});return{source:q,definition:y,binding:l,rewards:n,assets:u,evidence:le,proposals:Ne}}b(ze,"prepareModelBatchReview");var Ve=b(s=>`model-batch-review-${f([s.modelId,s.operationId])}`,"operation");function At(s){let t=S(s);if(!t.learningResources)throw new _("model_review_batch_required",422);let a=F(t.taskset);return Le.parse({schemaVersion:"openpond.modelBatchReviewInspection.v1",packageHash:t.contentHash,definition:a.definition,binding:a.binding,evidence:t.learningResources.evidence,decisions:t.learningResources.decisions})}b(At,"inspectModelBatchPackage");async function Ze(s,t){let a=pe.parse(t),e=await s.operation(Ve(a));if(!e)return null;if(e.requestHash!==f(a))throw new _("learning_idempotency_conflict",409);return Oe(s,a,e.resources)}b(Ze,"findModelBatchReview");async function Dt(s,t){let a=pe.parse(t.request),e=await Ze(s,a);if(e)return e;let i=S(t.package);if(!i.learningResources)throw new _("model_review_batch_required",422);let r=F(i.taskset),p=a.rewardBindingRef,o=!p||V(p,v(r.binding)),k=o?r.binding:await ne(s,"binding",p),w=o?r.rewards:await Promise.all(k.sources.map(l=>ne(s,"reward",l.reward))),n=new Set(w.flatMap(l=>[...l.assets,..."verifierRef"in l.implementation?[l.implementation.verifierRef]:[],..."rubricRef"in l.implementation?[l.implementation.rubricRef]:[],..."inputContract"in l.implementation?[l.implementation.inputContract]:[]]).map(l=>l.id)),R=o?i.learningResources.assets:await Promise.all([...n].map(l=>ie(s,"asset",l,1))),m=ze({...t,request:a,package:i,binding:k,rewards:w,assets:R}),x=[];for(let l of m.assets){let I=await s.get("asset",l.id,1);if(I&&I.contentHash!==l.contentHash)throw new _("model_review_asset_conflict",409);I||await s.put("asset",l,0)}for(let l of m.rewards)await s.put("reward",l,0);await s.put("binding",m.binding,0),await s.put("definition",m.definition,0),await s.put("source",m.source,0,{parentId:a.modelId}),x.push({kind:"source",id:m.source.id,revision:1});for(let l of m.evidence)await s.put("evidence",l,0,{parentId:m.source.id}),x.push({kind:"evidence",id:l.id,revision:1});for(let l of m.proposals)await s.put("feedback",l,0,{parentId:l.evidence.id,status:l.status}),x.push({kind:"feedback",id:l.id,revision:1});return await s.saveOperation(Ve(a),{requestHash:f(a),resources:x}),Oe(s,a,x)}b(Dt,"beginModelBatchReview");async function Oe(s,t,a){let e=await Promise.all(a.map(i=>ie(s,i.kind,i.id,i.revision)));return Fe.parse({schemaVersion:"openpond.modelBatchReviewReceipt.v1",operationId:t.operationId,modelId:t.modelId,source:e.find(i=>i.schemaVersion==="openpond.learningSource.v1"),evidence:e.filter(i=>i.schemaVersion==="openpond.taskEvidence.v1"),proposals:e.filter(i=>i.schemaVersion==="openpond.taskFeedbackRecord.v1")})}b(Oe,"readReceipt");function Ge(s){let t=s.taskset.metadata.ordinaryAuthoring,a=c.record(c.string(),c.array(c.string().min(1)).max(1e5)).parse(t?.judgeCalibrationFixtures??{});return s.taskset.graders.map(e=>{let i={...e,label:e.id,metadata:{portableGrader:e}};if(e.kind==="custom_verifier")return A.parse({...i,module:e.verifierRef.path,exportName:e.exportName??"verify",metadata:{...i.metadata,portableVerifierRef:e.verifierRef}});if(e.kind==="human"||e.kind==="model_judge"){let r=s.files.find(k=>k.asset.id===e.rubricRef.id);if(!r)throw new Error(`Imported rubric is missing: ${e.id}.`);let p=new TextDecoder("utf-8",{fatal:!0}).decode(O(r)),o={...i.metadata,portableRubricRef:e.rubricRef};if(e.kind==="human")return A.parse({...i,rubric:p,metadata:o});if(!e.model)throw new Error(`Imported judge ${e.id} requires its declared model before local preparation.`);return A.parse({...i,rubric:p,metadata:o,judge:e.model,temperature:e.temperature??0,calibrationStatus:"pending",calibrationFixtureRefs:a[e.id]??[]})}return A.parse({...i,kind:e.kind==="artifact"?"file":e.kind,config:e.kind==="artifact"?{...e.config,...e.config.refIncludes===void 0?{}:{pathIncludes:e.config.refIncludes}}:e.config})})}b(Ge,"importedPackageGraders");function se(s,t,a=[]){let e=X(s,t);return Y(s,t).map(i=>{let r=e.find(({source:o})=>o.graderId===i.id).reward,p={...i,label:r.name,metadata:{rewardBinding:v(s)}};if(i.kind==="model_judge"){if(!i.model||i.calibrationStatus!=="passed"||!r.calibrationCheckRef||!r.fixtureSetRef)throw new Error(`Reward ${i.id} needs a retained passing calibration check before preparation.`);let o=a.find(n=>n.id===i.rubricRef.id),k=a.find(n=>n.id===r.fixtureSetRef.id);if(!o||!k)throw new Error(`Reward ${i.id} is missing its immutable rubric or calibration fixtures.`);let w=Re.array().min(1).max(50).parse(JSON.parse(D(k,r.fixtureSetRef)));return A.parse({...p,rubric:D(o,i.rubricRef),judge:i.model,temperature:i.temperature??0,calibrationFixtureRefs:w.map(n=>n.id),metadata:{...p.metadata,portableGrader:i,portableRubricRef:i.rubricRef,calibrationEvidenceHash:r.calibrationCheckRef.contentHash,calibrationCheckRef:r.calibrationCheckRef}})}if(i.kind==="custom_verifier")return A.parse({...p,module:i.verifierRef.path,exportName:i.exportName??"verify",metadata:{...p.metadata,portableVerifierRef:i.verifierRef}});if(i.kind==="human"){let o=a.find(k=>k.id===i.rubricRef.id);if(!o)throw new Error(`Reward ${i.id} is missing its immutable rubric.`);return A.parse({...p,rubric:D(o,i.rubricRef),metadata:{...p.metadata,portableGrader:i,portableRubricRef:i.rubricRef}})}return A.parse({...p,kind:i.kind==="artifact"?"file":i.kind})})}b(se,"projectLearningBatchGraders");function et(s){return`graders/reward-${s}.js`}b(et,"learningVerifierModule");function ta(s){let t=S(s.package),a=t.taskset,e=t.modelResources,i=t.learningResources?F(a):void 0,r=He.parse({schemaVersion:"openpond.uploadedFileDatasetSource.v1",kind:"uploaded_file",id:`package-source-${f({profileId:s.profileId,packageHash:t.contentHash})}`,profileId:s.profileId,title:s.name,sourceHash:t.contentHash,occurredAt:s.createdAt,licensingStatus:"pending",secretScanStatus:"pending",piiScanStatus:"pending",originalFileNames:["taskset-package.json"],mediaTypes:["application/json"],sourceFileHashes:[t.contentHash],totalBytes:new TextEncoder().encode(JSON.stringify(t)).byteLength,parserVersion:"openpond.tasksetPackage.v1",metadata:{}}),p=De({profileId:s.profileId,id:`${a.id}-import`,name:s.name,now:s.createdAt}),o=[];for(let u of a.graders)if(u.kind==="custom_verifier"){let h=e?.assets.find(g=>g.id===u.verifierRef.id),M=t.files.find(g=>g.asset.id===u.verifierRef.id);if(!M)throw new Error(`Imported verifier source is missing: ${u.id}.`);let E=u.verifierRef.path;o.some(g=>g.path===E)||o.push({path:E,role:"verifier",content:h?D(h,u.verifierRef):new TextDecoder("utf-8",{fatal:!0}).decode(O(M))})}let k=a.metadata.ordinaryAuthoring??a.metadata.starterAuthoring,w=Be.array().max(1e5).parse(k?.graderFixtures??[]),n=a.environment.kind==="text"?"chat":a.environment.kind==="custom_program"?"program":a.environment.kind,R=c.record(c.string(),c.record(c.string(),c.string())).parse(a.metadata.workAssetStagingPaths??{}),m=_e.array().max(1e4).parse(a.metadata.environmentResources??[]),x=m.filter(u=>u.visibility==="policy_visible").map(u=>{let h=t.files.filter(M=>M.asset.path===u.path);if(h.length!==1||h[0].asset.visibility!=="policy")throw new Error(`Policy environment resource requires one public package file: ${u.path}.`);return h[0].asset}),l=new Set(x.map(u=>u.id)),I=ce.parse({schemaVersion:"openpond.taskset.v1",id:a.id,revision:a.revision,profileId:s.profileId,profileRelease:null,createImproveRunId:null,name:s.name,objective:ee(t),status:"needs_review",sourceRefs:[r],datasetArtifact:null,policy:a.policy,environment:{...p.environment,kind:n,entrypoint:a.environment.entrypoint,resources:m,stateful:a.environment.stateful,deterministicSeeds:a.environment.deterministicSeeds,toolNames:a.tools.map(u=>u.name),defaultTimeoutMs:a.environment.defaultTimeoutMs,networkPolicy:a.environment.networkPolicy,metadata:{runtimeSourceTasksetId:tt(s.profileId,t.contentHash),portableEnvironment:a.environment,portableTools:a.tools,portableExecutionResources:{environment:t.environment,verifierSet:t.verifierSet}}},capabilities:{...p.capabilities,taskKind:n==="chat"?"chat":n==="program"?"custom_program":"single_agent",compatibleMethods:["none"],requiresTools:a.tools.length>0,requiresState:a.environment.stateful,rewardKinds:[...new Set(a.graders.map(u=>u.kind==="human"?"human":u.kind==="model_judge"?"model_judge":"deterministic"))]},tasks:a.tasks.map(u=>({...u,schemaVersion:"openpond.taskData.v1",sourceRefs:[r.id],assets:[...new Map([...u.artifactRefs,...(u.requiredOutputs??[]).flatMap(h=>h.submissionMode==="structured_json"&&h.schemaRef?[h.schemaRef]:[]),...x].map(h=>[h.id,h])).values()].map(h=>({id:h.id,sourceRefId:r.id,artifactRef:h.path,fileName:h.path.split("/").at(-1),...l.has(h.id)?{stagingPath:h.path}:R[u.id]?.[h.id]?{stagingPath:R[u.id][h.id]}:{},mediaType:h.mediaType,sha256:h.contentHash,sizeBytes:h.sizeBytes,split:u.split,metadata:{portableAsset:h,...l.has(h.id)?{sharedEnvironmentResource:{id:m.find(M=>M.path===h.path).id,path:h.path}}:{}}})),...u.requiredOutputs?{requiredOutputs:u.requiredOutputs.map(h=>({...h,schemaRef:h.schemaRef?.id??null,maxBytes:h.maxBytes??void 0}))}:{},metadata:{portableTaskRecord:u,exampleOrigin:"imported"}})),graders:e?se(e.rewardBinding,e.rewards,e.assets):i?se(i.binding,i.rewards,t.learningResources.assets):Ge(t),graderFixtures:w,learningSignals:p.learningSignals,...a.metrics?{metrics:a.metrics}:{},authoringProvenance:{schemaVersion:"openpond.taskAuthoringProvenance.v1",model:null,modelConfig:{},skillHash:f("openpond-package-import-v1"),promptTemplateVersion:"package-import-v1",buildIntent:"discovery",buildSpecification:null,evidenceHashes:[t.contentHash],tasksetSdkVersion:"package-import-v1",sourceCommit:null,repairHistory:[],createdAt:s.createdAt},readiness:null,contentHash:"00000000",createdAt:s.createdAt,updatedAt:s.createdAt,metadata:{importedPackageHash:t.contentHash,...a.metadata.tasksetOutputContract===void 0?{}:{tasksetOutputContract:a.metadata.tasksetOutputContract},...i?{learning:i}:{},portableFileInventory:t.files.map(u=>({asset:u.asset,sourcePath:u.asset.path})),...e?{taskDefinition:v(e.taskDefinition),rewardBinding:v(e.rewardBinding),rewardExecution:{binding:e.rewardBinding,rewards:e.rewards}}:{},portableCapabilities:a.capabilities,derivedPortableMetadata:a.metadata,...a.metadata.modelTasksetDerivation?{modelTasksetDerivation:a.metadata.modelTasksetDerivation}:{}}});return{package:t,taskset:ce.parse({...I,contentHash:Ae(I)}),generatedFiles:o}}b(ta,"prepareImportedTasksetPackage");function tt(s,t){return`package-${f({profileId:s,packageHash:t})}`}b(tt,"tasksetPackageSourceId");var me=c.object({draft:J,filePaths:c.array(c.object({assetId:c.string().min(1),paths:c.array(Pe).min(1).max(1e4)}).strict()).max(1e4)}).strict();function at(s){let t=S(s.source),a=J.parse(s.sourceDraft),e=ye.parse(s.preparation);if(t.contentHash!==e.sourcePackageHash||!V(v(t.taskset),e.sourceTasksetRef))throw new Error("Taskset draft preparation differs from its source package.");if(t.learningResources)throw new Error("Reviewed Tasksets require their reviewed authoring workflow.");if(!!t.modelResources!=(e.authoringGraph==="bound"))throw new Error("Taskset draft authoring graph differs from its source.");let i=de.parse(a.metadata.portableFileInventory??[]),r=b(n=>te(n)?`source-artifacts/${t.contentHash}/${f(n)}/${n.split("/").at(-1)}`:n,"sourcePath");if([...a.tasks.flatMap(n=>(n.assets??[]).map(R=>R.artifactRef)),...(a.environment.resources??[]).map(n=>n.path),...t.taskset.tasks.flatMap(n=>(n.requiredOutputs??[]).flatMap(R=>R.schemaRef?[R.schemaRef.path]:[])),...a.metrics.customAggregator?[a.metrics.customAggregator.module]:[],...a.graders.flatMap(n=>n.kind==="custom_verifier"?[n.module]:[])].some(te))throw new Error("A referenced source asset occupies a reserved Taskset authoring path.");let o=t.files.map(n=>{let R=new Set([n.asset.path]);for(let m of i)m.asset.id===n.asset.id&&R.add(m.sourcePath);for(let m of a.tasks)for(let x of m.assets??[])x.id===n.asset.id&&R.add(x.artifactRef);for(let m of t.taskset.graders)if(m.kind==="custom_verifier"&&m.verifierRef.id===n.asset.id){let x=a.graders.find(l=>l.id===m.id);x?.kind==="custom_verifier"&&R.add(x.module)}return{assetId:n.asset.id,paths:[...R].map(r)}}),k={...a.metadata};if(t.modelResources)for(let n of["taskDefinition","rewardBinding","rewardExecution","derivedPortableMetadata","modelTasksetDerivation","importedPackageHash"])delete k[n];let w=J.parse({...a,id:e.draftId,revision:1,status:"draft",graders:a.graders.map(n=>({...n,metadata:{...n.metadata,portableGrader:t.taskset.graders.find(R=>R.id===n.id)}})),environment:{...a.environment,metadata:{...a.environment.metadata,portableExecutionResources:{environment:t.environment}}},modelScope:{modelId:e.lineage.owner.modelId,expectedModelRevision:s.expectedModelRevision,source:e},publishedTasksetRef:e.tasksetRevision>1?e.sourceTasksetRef:null,metadata:{...k,modelTasksetAuthoring:e.lineage,portableFileInventory:i.map(n=>({...n,sourcePath:r(n.sourcePath),asset:{...n.asset,id:te(n.sourcePath)?`source-artifact-${f({packageHash:t.contentHash,assetId:n.asset.id})}`:n.asset.id,path:r(n.asset.path)}}))}});return me.parse({draft:w,filePaths:o})}b(at,"prepareTasksetDraftSource");function st(s){let t=me.parse(s.initialized),a=S(s.source);if(t.draft.modelScope?.source?.sourcePackageHash!==a.contentHash)throw new Error("Taskset draft lost its source preparation.");let e=new Map;for(let r of t.filePaths){let p=a.files.find(o=>o.asset.id===r.assetId);if(!p)throw new Error("Taskset draft source asset is missing.");for(let o of r.paths){let k=e.get(o);if(k&&k.contentHash!==p.asset.contentHash)throw new Error("Taskset draft source paths conflict.");e.set(o,{path:o,contentHash:p.asset.contentHash,sizeBytes:p.asset.sizeBytes,base64:p.base64})}}for(let r of Ee(t.draft))if(!e.has(r.relativePath)){let p=new TextEncoder().encode(r.source);e.set(r.relativePath,{path:r.relativePath,contentHash:ue(p),sizeBytes:p.byteLength,base64:Buffer.from(p).toString("base64")})}let i=t.draft;if(i.metrics.customAggregator){let r=e.get(i.metrics.customAggregator.module);if(!r)throw new Error("Declared Taskset metric module is missing.");Ce(r),i=J.parse({...i,metrics:{...i.metrics,customAggregator:{...i.metrics.customAggregator,contentHash:r.contentHash}}})}return qe({schemaVersion:"openpond.tasksetDraftWorkspace.v1",draft:i,files:[...e.values()]})}b(st,"materializeTasksetDraftWorkspace");export{se as a,et as b,ta as c,tt as d,Ke as e,We as f,Je as g,Xe as h,Ye as i,Qe as j,P as k,$e as l,Le as m,pe as n,Fe as o,At as p,Ze as q,Dt as r,me as s,at as t,st as u};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{Aa as G,Ba as X,Ca as Y,F as N,_ as D,e as T,g as V,ga as R,ha as J,i as z,ja as H,oa as y,wa as E,ya as $}from"./chunk-5ZNE43XC.js";import{k as w,l as x,m as u}from"./chunk-HIQPGYVH.js";import{I as W,J as K,x as C}from"./chunk-263WS3TB.js";import{K as j}from"./chunk-XHU4BZQY.js";import{v as A}from"./chunk-ZY32SZ2P.js";import{A as n}from"./chunk-X2J2P5ZT.js";import{a as l}from"./chunk-FTQLQJQV.js";var S=n.string().trim().min(1).max(500),pe=n.string().regex(/^[a-f0-9]{64}$/),b=n.object({id:S,revision:n.number().int().positive(),contentHash:pe}).strict(),M=n.object({schemaVersion:n.literal("openpond.hostedTasksetSummary.v1"),id:S,teamId:S,release:b,name:n.string().min(1).max(500),description:n.string().max(2e4),taskCount:n.number().int().nonnegative(),buildIntent:n.string().min(1).max(100),methodHint:n.string().min(1).max(100).nullable(),packageBytes:n.number().int().nonnegative().nullable(),storedBytes:n.number().int().nonnegative().nullable(),createdAt:n.string().datetime({offset:!0})}).strict(),ue=n.object({afterId:n.string().trim().min(1).max(2e3).optional(),limit:n.number().int().min(1).max(100).default(30),modelProjectId:S.optional(),projectId:S.optional(),search:n.string().trim().max(100).optional(),sort:n.enum(["id","name","updated"]).default("id")}).strict(),he=n.object({items:n.array(M).max(100),nextCursor:n.string().trim().min(1).max(2e3).nullable()}).strict(),me=n.object({code:n.string().min(1),message:n.string().min(1)}).strict(),I=class extends Error{static{l(this,"OpenPondTasksetCatalogError")}constructor(a,t,e){super(e),this.status=a,this.code=t,this.name="OpenPondTasksetCatalogError"}status;code},_e=class{static{l(this,"OpenPondTasksetCatalogClient")}#e;constructor(a){if(!a.apiKey.trim()||!a.teamId.trim())throw new Error("Taskset API key and workspace are required.");let t=new URL(a.baseUrl);if(!["http:","https:"].includes(t.protocol)||t.username||t.password||t.search||t.hash)throw new Error("Taskset base URL must be an HTTP(S) endpoint without credentials, query, or fragment.");this.#e={...a,baseUrl:t.toString().replace(/\/+$/,"")}}async list(a={},t={}){let e=ue.parse(a),s=new URLSearchParams({limit:String(e.limit)});e.afterId&&s.set("afterId",e.afterId),e.modelProjectId&&s.set("modelProjectId",e.modelProjectId),e.projectId&&s.set("projectId",e.projectId),e.search!==void 0&&s.set("search",e.search),s.set("sort",e.sort);let r=he.parse(await this.#t(`?${s}`,t.signal));if(r.items.length>e.limit||new Set(r.items.map(o=>o.id)).size!==r.items.length||r.items.some(o=>o.teamId!==this.#e.teamId))throw new I(502,"catalog_scope_mismatch","Taskset inventory did not match the requested workspace or page size.");return r}async get(a,t={}){let e=S.parse(a),s=M.parse(await this.#t(`/${encodeURIComponent(e)}`,t.signal));if(s.id!==e||s.teamId!==this.#e.teamId)throw new I(502,"catalog_identity_mismatch","Taskset metadata did not match the requested identity.");return s}async resolve(a,t={}){let e=b.parse(a),s=M.parse(await this.#t(`/releases/${encodeURIComponent(e.id)}/${e.revision}/${e.contentHash}`,t.signal));if(s.teamId!==this.#e.teamId||s.release.id!==e.id||s.release.revision!==e.revision||s.release.contentHash!==e.contentHash)throw new I(502,"catalog_release_mismatch","Taskset metadata did not match the requested immutable release.");return s}async#t(a,t){let e=await(this.#e.fetch??globalThis.fetch)(`${this.#e.baseUrl}/v1/taskset-catalog${a}`,{headers:{Authorization:`Bearer ${this.#e.apiKey}`,"X-OpenPond-Team-Id":this.#e.teamId,Accept:"application/json"},signal:t,redirect:"error"}),s=e.body?.getReader();if(!s)throw new I(e.status,"empty_response","Taskset catalog response was empty.");let r=new TextDecoder,o=0,i="";try{for(;;){let d=await s.read();if(d.done)break;if(o+=d.value.byteLength,o>4194304)throw new I(e.status,"response_too_large","Taskset catalog response exceeded 4 MiB.");i+=r.decode(d.value,{stream:!0})}i+=r.decode()}finally{await s.cancel(),s.releaseLock()}let c=JSON.parse(i);if(!e.ok){let d=me.safeParse(c);throw new I(e.status,d.success?d.data.code:"invalid_error_response",d.success?d.data.message:`Taskset catalog request failed (${e.status}).`)}return c}};var g=n.string().trim().min(1).max(500),P=n.string().regex(/^[a-f0-9]{64}$/),fe=W.pick({portableProjectId:!0,name:!0,objective:!0,defaultBaseModel:!0,defaultDestinationId:!0,sourceRevision:!0,sourceUpdatedAt:!0}).extend({trainingSetup:C.omit({tasksetRef:!0,rewardBindingRef:!0,tasksetRelease:!0})}).strict(),ge=n.object({schemaVersion:n.literal("openpond.tasksetPackagePublication.v1"),operationId:g,modelProjectId:g,expectedProjectEtag:P.nullable(),name:n.string().trim().min(1).max(200),description:n.string().max(5e3),buildIntent:n.enum(["demonstrations","preferences","verifiable_reward","rubric","discovery"]),methodHint:n.enum(["sft","dpo","grpo","ppo"]).nullable(),package:R,modelConfiguration:fe.optional(),evaluationPackage:R.optional(),selection:n.enum(["select","attach"]).optional()}).strict().refine(a=>a.selection!=="attach"||a.modelConfiguration===void 0,"Attachment-only publication cannot replace Model configuration.").refine(a=>!a.evaluationPackage||a.modelConfiguration!==void 0&&a.modelConfiguration.trainingSetup.evaluationTasksetRef!=null&&u(a.modelConfiguration.trainingSetup.evaluationTasksetRef)===u(j(a.evaluationPackage.taskset)),"Evaluation package must match the selected immutable evaluation in Model configuration."),ke=n.object({schemaVersion:n.literal("openpond.tasksetPackageReceipt.v1"),teamId:g,modelProjectId:g,operationId:g,taskset:b,packageHash:P,hostedTasksetId:g,projectEtag:P,project:K.optional(),selection:n.enum(["select","attach"]).optional(),evaluation:n.object({taskset:b,packageHash:P,hostedTasksetId:g}).strict().optional()}).strict(),ve=n.object({schemaVersion:n.literal("openpond.tasksetPackageReadback.v1"),teamId:g,modelProjectId:g,package:R}).strict(),we=n.object({schemaVersion:n.literal("openpond.tasksetReleasePackageReadback.v1"),teamId:g,release:b,package:R}).strict(),f=class extends Error{static{l(this,"OpenPondTasksetPackageError")}constructor(a,t,e){super(e),this.status=a,this.code=t,this.name="OpenPondTasksetPackageError"}status;code},Le=class{static{l(this,"OpenPondTasksetPackageClient")}#e;constructor(a){let t=new URL(a.baseUrl);if(!["http:","https:"].includes(t.protocol)||t.username||t.password||t.search||t.hash||!a.apiKey.trim()||!a.teamId.trim())throw new Error("Taskset package client requires a clean HTTP(S) endpoint and workspace credentials.");this.#e={...a,baseUrl:t.toString().replace(/\/+$/,"")}}async publish(a,t={}){let e=ge.parse(a);H(e.package),e.evaluationPackage&&H(e.evaluationPackage);let{evaluationPackage:s,...r}=e,o=s?.contentHash===e.package.contentHash?r:e,i=ke.parse(await this.#t("","POST",o,t.signal)),c=e.package.taskset;if(i.teamId!==this.#e.teamId||i.modelProjectId!==e.modelProjectId||i.operationId!==e.operationId||i.packageHash!==e.package.contentHash||i.taskset.id!==c.id||i.taskset.revision!==c.revision||i.taskset.contentHash!==c.contentHash)throw new f(502,"package_receipt_mismatch","Taskset publication receipt did not match the requested package and owner.");if(e.selection!==void 0&&i.selection!==e.selection)throw new f(502,"package_receipt_mismatch","Taskset publication did not retain its selection mode.");if(e.evaluationPackage&&(!i.evaluation||i.evaluation.packageHash!==e.evaluationPackage.contentHash||u(i.evaluation.taskset)!==u(j(e.evaluationPackage.taskset))))throw new f(502,"package_receipt_mismatch","Taskset publication did not retain the complete selected evaluation package.");if(e.selection==="attach"&&i.projectEtag!==e.expectedProjectEtag)throw new f(502,"package_receipt_mismatch","Attaching a historical Taskset changed the Model configuration.");if(e.modelConfiguration){let d=e.modelConfiguration,p=i.project,v=J(e.package),m=C.parse({...d.trainingSetup,tasksetRef:j(c),rewardBindingRef:v?j(v):null,tasksetRelease:null});if(!p||p.teamId!==this.#e.teamId||p.etag!==i.projectEtag||![p.id,p.portableProjectId].includes(e.modelProjectId)||p.portableProjectId!==d.portableProjectId||p.name!==d.name||p.objective!==d.objective||p.sourceRevision!==d.sourceRevision||Date.parse(p.sourceUpdatedAt)!==Date.parse(d.sourceUpdatedAt)||u(p.defaultBaseModel)!==u(d.defaultBaseModel)||p.defaultDestinationId!==d.defaultDestinationId||u(p.trainingSetup)!==u(m))throw new f(502,"package_receipt_mismatch","Taskset publication did not retain the requested Model configuration.")}return i}async getByRelease(a,t={}){let e=b.parse(a),s=t.expectedPackageHash===void 0?void 0:P.parse(t.expectedPackageHash),r=we.parse(await this.#t(`/releases/${encodeURIComponent(e.id)}/${e.revision}/${e.contentHash}/package`,"GET",void 0,t.signal)),o=H(r.package),i={id:o.taskset.id,revision:o.taskset.revision,contentHash:o.taskset.contentHash};if(r.teamId!==this.#e.teamId||u(r.release)!==u(e)||u(i)!==u(e)||s!==void 0&&o.contentHash!==s)throw new f(502,"package_readback_mismatch","Independent Dataset package differs from the requested workspace or exact release.");return o}async get(a,t,e={}){let s=g.parse(a),r=b.parse(t),o=e.expectedPackageHash===void 0?void 0:P.parse(e.expectedPackageHash),i=ve.parse(await this.#t(`/${encodeURIComponent(s)}/${encodeURIComponent(r.id)}/${r.revision}/${r.contentHash}`,"GET",void 0,e.signal)),c=i.package.taskset;if(i.teamId!==this.#e.teamId||i.modelProjectId!==s||c.id!==r.id||c.revision!==r.revision||c.contentHash!==r.contentHash)throw new f(502,"package_readback_mismatch","Taskset package did not match the requested release and owner.");if(o!==void 0&&i.package.contentHash!==o)throw new f(502,"package_readback_mismatch","Taskset package did not match the saved publication receipt.");return H(i.package)}async#t(a,t,e,s){let r=e===void 0?void 0:JSON.stringify(e);if(r&&new TextEncoder().encode(r).byteLength>D)throw new f(413,"package_too_large","Taskset publication exceeds the 64 MiB envelope.");let o=await(this.#e.fetch??globalThis.fetch)(`${this.#e.baseUrl}/v1/taskset-packages${a}`,{method:t,headers:{Authorization:`Bearer ${this.#e.apiKey}`,"X-OpenPond-Team-Id":this.#e.teamId,Accept:"application/json",...r?{"Content-Type":"application/json"}:{}},body:r,signal:s,redirect:"error"}),i=o.body?.getReader();if(!i)throw new f(o.status,"empty_response","Taskset package response was empty.");let c=new TextDecoder("utf-8",{fatal:!0}),d=0,p="";try{for(;;){let m=await i.read();if(m.done)break;if(d+=m.value.byteLength,d>D)throw new f(413,"package_too_large","Taskset response exceeds the 64 MiB envelope.");p+=c.decode(m.value,{stream:!0})}p+=c.decode()}finally{await i.cancel(),i.releaseLock()}let v=JSON.parse(p);if(!o.ok){let m=n.object({code:n.string(),message:n.string()}).safeParse(v);throw new f(o.status,m.success?m.data.code:"package_request_failed",m.success?m.data.message:`Taskset package request failed (${o.status}).`)}return v}};var Z=6e6,ee=new Set(["taskset.json","capabilities.json","data/tasks.jsonl","tasks/tasks.jsonl","graders/graders.json","fixtures/grader-fixtures.json","metrics/policy.json","assets/manifest.json","environment/contract.json","environment/taskset.ts","rubrics/preference-review.md","comparisons/policy.json"]);function B(a){let t=T.parse(a);return!ee.has(t)&&!t.startsWith("source-artifacts/")}l(B,"isWritableTasksetDraftFilePath");function te(a){return ee.has(T.parse(a))}l(te,"isManagedTasksetDraftFilePath");function be(a,t){let e=B(a);if(t.byteLength>Z)throw new Error("Taskset draft file content is invalid or exceeds 6 MB.");let s;try{let r=new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0}).decode(t);s=/[\u0000-\u0008\u000e-\u001f]/.test(r)?Q(t):{encoding:"utf8",data:r}}catch{s=Q(t)}return{path:a,writable:e,content:s,sizeBytes:t.byteLength,contentHash:x(t)}}l(be,"createTasksetDraftFile");function Te(a){let t=V.parse(a),e;try{if(t.encoding==="utf8")e=new TextEncoder().encode(t.data);else{let s=atob(t.data);if(btoa(s)!==t.data)throw new Error("Noncanonical base64");e=new Uint8Array(s.length);for(let r=0;r<s.length;r++)e[r]=s.charCodeAt(r)}}catch{throw new Error("Taskset draft file content is invalid or exceeds 6 MB.")}if(e.byteLength>Z)throw new Error("Taskset draft file content is invalid or exceeds 6 MB.");return e}l(Te,"decodeTasksetDraftFileContent");function Q(a){let t="";for(let e=0;e<a.length;e+=8192)t+=String.fromCharCode(...a.subarray(e,e+8192));return{encoding:"base64",data:btoa(t)}}l(Q,"base64Content");function ye(a){let t=[];a.output.renderer&&t.push({relativePath:a.output.renderer.module,source:`export async function ${a.output.renderer.exportName}(output: unknown) {
|
|
3
|
-
// Return artifact paths or bytes derived from the model's structured output.
|
|
4
|
-
return output;
|
|
5
|
-
}
|
|
6
|
-
`});for(let e of a.graders)e.kind==="custom_verifier"&&t.push({relativePath:e.module,source:`export async function ${e.exportName}(input: { output: unknown; task: unknown }) {
|
|
7
|
-
return { passed: false, score: 0, feedback: "Implement this verifier." };
|
|
8
|
-
}
|
|
9
|
-
`});a.metrics.customAggregator&&t.push({relativePath:a.metrics.customAggregator.module,source:`export function ${a.metrics.customAggregator.exportName}(scores: number[]) {
|
|
10
|
-
return scores.length ? scores.reduce((sum, score) => sum + score, 0) / scores.length : 0;
|
|
11
|
-
}
|
|
12
|
-
`});for(let e of t)T.parse(e.relativePath);return t}l(ye,"configuredTasksetDraftFiles");function ae(a){let t=y.parse(a);return new Map([["taskset.json",w(t)],["tasks/tasks.jsonl",Se(t.tasks)],["graders/graders.json",w(t.graders)],["fixtures/grader-fixtures.json",w(t.graderFixtures)],["metrics/policy.json",w(t.metrics)],["assets/manifest.json",w(t.tasks.flatMap(e=>e.assets??[]))],["environment/contract.json",w(t.environment)],["rubrics/preference-review.md",Ie(t)],["comparisons/policy.json",w(t.review)]])}l(ae,"renderTasksetDraftManifests");function Ie(a){let t=a.review.criteria.length?`
|
|
13
|
-
|
|
14
|
-
## Criteria
|
|
15
|
-
|
|
16
|
-
${a.review.criteria.map(e=>`- **${e.label}** (${e.weight}): ${e.description}`).join(`
|
|
17
|
-
`)}`:"";return`# Preference review rubric
|
|
18
|
-
|
|
19
|
-
${a.review.rubric}${t}
|
|
20
|
-
`}l(Ie,"rubricMarkdown");function Se(a){return a.length?`${a.map(t=>JSON.stringify(t)).join(`
|
|
21
|
-
`)}
|
|
22
|
-
`:""}l(Se,"jsonLines");var se=64*1024*1024,re=n.string().regex(/^[a-f0-9]{64}$/),ne=n.object({path:T,contentHash:re,sizeBytes:n.number().int().nonnegative(),base64:n.string()}).strict(),oe=n.object({schemaVersion:n.literal("openpond.tasksetDraftWorkspace.v1"),draft:y,files:n.array(ne).max(1e4)}).strict(),Pe=oe.extend({contentHash:re}).strict();function ie(a,t=se){A(a,t);let e=oe.parse(a);return e.files.sort((s,r)=>s.path<r.path?-1:s.path>r.path?1:0),_({...e,contentHash:u(e)},t)}l(ie,"createTasksetDraftWorkspace");function _(a,t=se){A(a,t);let e=Pe.parse(a),{contentHash:s,...r}=e;if(u(r)!==s)throw new Error("Taskset draft workspace differs from its retained bytes.");let o=null,i=new Set;for(let c of e.files){if(te(c.path))throw new Error("Managed Taskset files are represented by the draft document.");if(o!==null&&o>=c.path)throw new Error("Taskset draft file paths must be unique and sorted.");let d=c.path.split("/");for(let p=1;p<d.length;p++)if(i.has(d.slice(0,p).join("/")))throw new Error("A Taskset draft file occupies another file's directory.");de(c),i.add(c.path),o=c.path}return e}l(_,"validateTasksetDraftWorkspace");function Ze(a,t){let e=_(a);T.parse(t);let s=e.files.find(i=>i.path===t),r=te(t)?ae(e.draft).get(t):void 0;if(!s&&r===void 0)throw new Error("Taskset draft file does not exist.");let o=be(t,s?de(s):new TextEncoder().encode(r));return{draftRevision:e.draft.revision,file:{...o,writable:o.writable&&e.draft.status!=="published"}}}l(Ze,"readTasksetDraftWorkspaceFile");function et(a){let t=_(a),e=t.files.map(s=>({path:s.path,sizeBytes:s.sizeBytes,writable:t.draft.status!=="published"&&B(s.path)}));for(let[s,r]of ae(t.draft))e.push({path:s,sizeBytes:new TextEncoder().encode(r).byteLength,writable:!1});return{draftRevision:t.draft.revision,files:e.sort((s,r)=>s.path<r.path?-1:s.path>r.path?1:0)}}l(et,"listTasksetDraftWorkspaceFiles");function tt(a){let t=ce(a.workspace,a.expectedDraftRevision,a.maximumBytes),e=y.parse(a.draft),s=t.draft;if(e.id!==s.id||e.profileId!==s.profileId||u(e.modelScope)!==u(s.modelScope))throw new Error("Taskset draft Model ownership cannot change.");if(e.revision!==s.revision||e.status!==s.status||e.createdAt!==s.createdAt||u(e.publishedTasksetRef)!==u(s.publishedTasksetRef))throw new Error("Taskset draft lifecycle fields cannot change through form edits.");let r=[...t.files];for(let c of ye(e))if(!r.some(d=>d.path===c.relativePath)){let d=new TextEncoder().encode(c.source);r.push({path:c.relativePath,contentHash:x(d),sizeBytes:d.byteLength,base64:le(d)})}let o=e.metrics.customAggregator,i=o?r.find(c=>c.path===o.module):void 0;return ie({schemaVersion:t.schemaVersion,files:r,draft:{...e,revision:s.revision+1,status:"draft",updatedAt:a.now,...o&&i?{metrics:{...e.metrics,customAggregator:{...o,contentHash:i.contentHash}}}:{}}},a.maximumBytes)}l(tt,"saveTasksetDraftWorkspaceDocument");function at(a){let t=z.parse(a.mutation),e=ce(a.workspace,t.expectedDraftRevision,a.maximumBytes);if(e.draft.id!==t.draftId)throw new Error("Taskset draft file belongs to another draft.");if(!B(t.path))throw new Error("This file is managed by the Taskset forms or retained source history.");let s=e.files.find(o=>o.path===t.path);if((s?.contentHash??null)!==t.expectedFileHash)throw new Error("Taskset draft file changed. Reload it before saving.");if(!s&&t.content===null)throw new Error("Taskset draft file does not exist.");let r=e.files.filter(o=>o.path!==t.path);if(t.content!==null){let o=Te(t.content);r.push({path:t.path,contentHash:x(o),sizeBytes:o.byteLength,base64:le(o)})}return ie({schemaVersion:e.schemaVersion,files:r,draft:{...e.draft,revision:e.draft.revision+1,status:"draft",updatedAt:a.now}},a.maximumBytes)}l(at,"saveTasksetDraftWorkspaceFile");function ce(a,t,e){let s=_(a,e);if(s.draft.status==="published")throw new Error("Published Taskset drafts are immutable.");if(s.draft.revision!==t)throw new Error("Taskset draft changed. Reload before saving.");return s}l(ce,"editableWorkspace");function de(a){let t=ne.parse(a),e;try{e=atob(t.base64)}catch{throw new Error("Taskset draft file contains invalid base64.")}if(btoa(e)!==t.base64)throw new Error("Taskset draft file contains noncanonical base64.");let s=new Uint8Array(e.length);for(let r=0;r<e.length;r++)s[r]=e.charCodeAt(r);if(s.byteLength!==t.sizeBytes||x(s)!==t.contentHash)throw new Error("Taskset draft file differs from its retained bytes.");return s}l(de,"decodeTasksetDraftWorkspaceFile");function le(a){let t="";for(let e=0;e<a.length;e+=8192)t+=String.fromCharCode(...a.subarray(e,e+8192));return btoa(t)}l(le,"base64");function st(a,t=new Date().toISOString()){let e=E.parse(a);return y.parse({schemaVersion:"openpond.tasksetDraft.v1",id:`${e.id}-draft`,revision:1,profileId:e.profileId,name:e.name,objective:e.objective,purpose:e.purpose,benchmark:e.benchmark,preferenceComparison:e.preferenceComparison,status:"draft",sourceRefs:e.sourceRefs,datasetArtifact:e.datasetArtifact??null,policy:e.policy,environment:e.environment,output:Re(e.metadata),capabilities:e.capabilities,metrics:e.metrics??{schemaVersion:"openpond.tasksetMetricPolicy.v1",primaryMetric:"score",aggregation:"mean_score",missingReward:"zero",customAggregator:null},review:{enabled:!!e.preferenceComparison,candidateCount:2,minimumSamples:100,allowTies:!0,allowRejectAll:!0,rubric:"",criteria:[]},tasks:e.tasks,graders:e.graders,graderFixtures:e.graderFixtures,learningSignals:e.learningSignals,publishedTasksetRef:{id:e.id,revision:e.revision,contentHash:e.contentHash},createdAt:t,updatedAt:t,metadata:{...e.metadata,importedFromTaskset:{id:e.id,revision:e.revision,contentHash:e.contentHash}}})}l(st,"tasksetDraftFromTaskset");function rt(a){let t=y.parse(a.draft),e=a.now??new Date().toISOString(),s=G(t);if(s.length)throw new $(s);let r=t.modelScope?.source;if(r&&a.tasksetId&&a.tasksetId!==r.tasksetId)throw new Error("Taskset draft publication differs from its prepared identity.");let o=r?.tasksetId||a.tasksetId?.trim()||t.publishedTasksetRef?.id||t.id.replace(/-draft$/,""),i=r?.tasksetRevision??(t.publishedTasksetRef?.id===o?t.publishedTasksetRef.revision+1:1),c=t.sourceRefs.length?t.sourceRefs:[je(t,o,e)],d=c[0].id,p=t.tasks.map(h=>N.parse({...h,sourceRefs:h.sourceRefs.length?h.sourceRefs:[d],metadata:{exampleOrigin:"expert_authored",...h.metadata}})),v=t.capabilities.compatibleMethods.find(h=>h!=="none"&&h!=="retrieval")??null,m=xe(t),F=t.graders.filter(h=>h.rewardEligible&&h.weight>0&&h.kind!=="human"),O=v===null&&m==="verifiable_reward"&&F.length>0,k=v??(O?"grpo":null),U=E.parse({schemaVersion:"openpond.taskset.v1",id:o,revision:i,profileId:t.profileId,profileRelease:null,createImproveRunId:null,name:t.name,objective:t.objective,purpose:t.purpose,benchmark:t.benchmark,preferenceComparison:t.preferenceComparison,status:"needs_review",sourceRefs:c,datasetArtifact:t.datasetArtifact??null,policy:t.policy,environment:t.environment,capabilities:O?{...t.capabilities,compatibleMethods:["grpo"],rewardKinds:[...new Set(F.map(h=>h.kind==="model_judge"?"model_judge":"deterministic"))]}:t.capabilities,metrics:t.metrics,tasks:p,graders:t.graders,graderFixtures:t.graderFixtures,learningSignals:t.learningSignals,authoringProvenance:{schemaVersion:"openpond.taskAuthoringProvenance.v1",model:null,modelConfig:{},skillHash:u("openpond-taskset-draft-authoring-v1"),promptTemplateVersion:"taskset-draft-v1",buildIntent:m,buildSpecification:null,evidenceHashes:c.map(h=>h.sourceHash),tasksetSdkVersion:"draft-v1",sourceCommit:null,repairHistory:[],createdAt:e},readiness:null,contentHash:"00000000",createdAt:i===1?t.createdAt:e,updatedAt:e,metadata:{...t.metadata,...r?{modelTasksetAuthoring:r.lineage}:{},tasksetReviewPolicy:t.review,tasksetOutputContract:t.output,...a.sourcePackageHash?{sourcePackageHash:a.sourcePackageHash}:{},...k?{trainingMethod:k}:{},diagnosis:{schemaVersion:"openpond.capabilityDiagnosis.v1",summary:t.objective,stableBehavior:[t.objective],changingKnowledge:[],requiredContext:[],requiredTools:t.environment.toolNames,intervention:k==="dpo"?"preference":k==="grpo"||k==="ppo"?"grpo_rft":k==="sft"?"sft":"no_training",trainingEligible:k!==null,rationale:k?[`The author selected ${k.toUpperCase()} compatibility.`]:["The Taskset is currently configured for evaluation only."],confidence:1}}}),q=E.parse({...U,contentHash:Y(U)}),L=X(q,{purpose:"publication"}).issues.filter(h=>h.severity==="error");if(L.length)throw new $(L.map(h=>({code:h.code,message:h.message,path:h.path})));return q}l(rt,"publishTasksetDraft");function je(a,t,e){let s=u({draftId:a.id,draftRevision:a.revision,tasks:a.tasks});return{schemaVersion:"openpond.generatedDatasetSource.v1",kind:"generated",id:`source-${t}`,profileId:a.profileId,title:`${a.name} manual authoring`,sourceHash:s,occurredAt:e,licensingStatus:"approved",secretScanStatus:"passed",piiScanStatus:"passed",generatorId:"openpond-taskset-draft",generatorVersion:"1",seed:0,generatorHash:s,metadata:{draftId:a.id,draftRevision:a.revision}}}l(je,"generatedDraftSource");function xe(a){return a.metadata.buildIntent==="discovery"||!a.graders.length&&!a.learningSignals.preferences.length&&!a.learningSignals.rewards.length&&!a.learningSignals.labels.length?"discovery":a.learningSignals.preferences.length?"preferences":a.learningSignals.rewards.length?"verifiable_reward":a.learningSignals.labels.length?"rubric":!a.capabilities.compatibleMethods.some(t=>t!=="none"&&t!=="retrieval")&&a.graders.some(t=>t.rewardEligible&&t.weight>0&&t.kind!=="human")?"verifiable_reward":"demonstrations"}l(xe,"buildIntentForDraft");function Re(a){let t=a.tasksetOutputContract;return t&&typeof t=="object"&&!Array.isArray(t)?t:{mode:"text",jsonSchema:null,renderer:null}}l(Re,"tasksetOutputContract");export{b as a,_e as b,fe as c,ge as d,ke as e,ve as f,we as g,f as h,Le as i,Z as j,B as k,te as l,be as m,Te as n,ye as o,ae as p,se as q,ne as r,Pe as s,ie as t,_ as u,Ze as v,et as w,tt as x,at as y,de as z,st as A,rt as B};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{c as D}from"./chunk-IR3YJWPW.js";import{Wb as G}from"./chunk-CJDGLPNX.js";import{b as $,c as z,d as H,e as V,f as R,g as U}from"./chunk-I6VMRQF4.js";import{P,R as Q}from"./chunk-XHU4BZQY.js";import{fb as q,v,x as T}from"./chunk-ZY32SZ2P.js";import{n as E}from"./chunk-RCT3O3HQ.js";import{A as n}from"./chunk-X2J2P5ZT.js";import{a}from"./chunk-FTQLQJQV.js";async function K(e){let t=F(await e),[o,c,{QuickJSWASMModule:w}]=await Promise.all([t.importModuleLoader().then(F),t.importFFI(),import("./module-ES6BEMUI-ZVL3F6NW.js").then(F)]),l=await o();l.type="sync";let s=new c(l);return new w(l,s)}a(K,"newQuickJSWASMModuleFromVariant");function F(e){return e&&"default"in e&&e.default?e.default&&"default"in e.default&&e.default.default?e.default.default:e.default:e}a(F,"smartUnwrap");var k=class extends Error{static{a(this,"JavaScriptIsolateExecutionError")}constructor(t){super(t),this.name="JavaScriptIsolateExecutionError"}};async function O(e,t){te(e),e.signal?.throwIfAborted();let o=a(s=>new Error(`${e.errorPrefix}_${s}`),"error"),c=Date.now()+e.timeoutMs,{default:w}=await import("./dist-SKYG5LZO.js");e.signal?.throwIfAborted();let l=await K(w);e.signal?.throwIfAborted();try{return D.withScope(s=>{let m=s.manage(l.newRuntime());m.setMemoryLimit(33554432),m.setMaxStackSize(262144),m.setInterruptHandler(()=>Date.now()>=c||e.signal?.aborted===!0);let i=s.manage(m.newContext());t&&(c=Date.now()+e.timeoutMs,t.onExecutionReady()),e.deterministic&&s.manage(i.unwrapResult(i.evalCode("globalThis.Date = undefined; Math.random = () => { throw new Error('environment_random_requires_explicit_seed'); };")));let r=s.manage(i.unwrapResult(i.evalCode("JSON.stringify"))),p=s.manage(i.unwrapResult(i.evalCode(`JSON.parse(${JSON.stringify(JSON.stringify(e.value))})`))),S=s.manage(i.unwrapResult(i.evalCode(e.source,`${e.errorPrefix}.mjs`,{type:"module"}))),M=s.manage(X(i,S,c,e.signal,o)),g=s.manage(i.getProp(M,e.exportName));if(i.typeof(g)!=="function")throw o("function_export_missing");let b=s.manage(i.unwrapResult(i.callFunction(g,i.undefined,p))),d=s.manage(X(i,b,c,e.signal,o)),h=s.manage(i.unwrapResult(i.callFunction(r,i.undefined,d)));if(i.typeof(h)!=="string")throw o("result_not_json");let y=i.getString(h);if(new TextEncoder().encode(y).byteLength>e.maxResultBytes)throw o("result_too_large");if(e.signal?.throwIfAborted(),Date.now()>=c)throw o("timeout");let f=JSON.parse(y);return v(f,e.maxResultBytes),f})}catch(s){throw e.signal?.throwIfAborted(),new k(s instanceof Error?s.message:"JavaScript execution failed.")}}a(O,"executeJavaScriptIsolate");function te(e){if(!Number.isInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>3e5)throw new Error(`${e.errorPrefix}_timeout_invalid`);if(!Number.isInteger(e.maxResultBytes)||e.maxResultBytes<1||e.maxResultBytes>4194304)throw new Error(`${e.errorPrefix}_result_limit_invalid`);if(new TextEncoder().encode(e.source).byteLength>524288)throw new Error(`${e.errorPrefix}_source_too_large`);v(e.value,4194304)}a(te,"validateJavaScriptIsolateInput");function X(e,t,o,c,w){for(;;){if(c?.throwIfAborted(),Date.now()>=o)throw w("timeout");let l=e.getPromiseState(t);if(l.type==="fulfilled")return l.notAPromise?l.value.dup():l.value;if(l.type==="rejected")return e.unwrapResult(l);if(e.runtime.executePendingJobs(1).unwrap()===0)throw w("unresolved_promise")}}a(X,"settle");function I(e,t){let o=t.scope==="arguments"?e.action?.arguments:e[t.scope];for(let c of t.path){if(!o||typeof o!="object"||!Object.hasOwn(o,c))throw new Error("environment_service_reference_missing");o=o[c]}return o}a(I,"resolveValue");async function Y(e,t){if(!e.executionServices?.length)return t.controller(e);if(!Number.isSafeInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>3e4)throw new Error("environment_timeout_invalid");v(e.value,4194304);let o=e.executionServices.map(m=>z.parse(m));if(o.length>16)throw new Error("environment_service_limit");if(new Set(o.map(m=>m.id)).size!==o.length)throw new Error("environment_service_identity_collision");let c=Date.now(),w=new AbortController,l=e.signal?AbortSignal.any([e.signal,w.signal]):w.signal,s=setTimeout(()=>w.abort(new Error("environment_timeout")),e.timeoutMs);try{let m=Object.create(null);for(let r of o){if(l.throwIfAborted(),r.operation!==e.operation||r.operation==="step"&&r.toolName!==e.value.action?.name)throw new Error("environment_service_operation_mismatch");let p=Math.min(r.timeoutMs,e.timeoutMs-(Date.now()-c));if(p<1)throw new Error("environment_timeout");let S=new AbortController,M=AbortSignal.any([l,S.signal]),g=setTimeout(()=>S.abort(new Error("environment_service_timeout")),p),b=Date.now();try{if(r.kind==="sqlite.v1"){if(!t.sql)throw new Error("environment_sql_executor_required");let d=I(e.value,r.sql);if(typeof d!="string"||!d.length||new TextEncoder().encode(d).byteLength>65536||d.includes("\0")){m[r.id]={status:"rejected",code:"invalid_submission"};continue}let h=$({schemaVersion:"openpond.sqlExecution.v1",snapshot:I(e.value,r.snapshot),sql:d,maxRows:r.maxRows,maxResultBytes:r.maxResultBytes});m[r.id]=await t.sql({request:h,timeoutMs:e.timeoutMs,signal:M})}else{let d=I(e.value,r.source),h=I(e.value,r.cases);if(typeof d!="string"||new TextEncoder().encode(d).byteLength>524288){m[r.id]={status:"rejected",code:"invalid_submission"};continue}if(!Array.isArray(h)||!h.length||h.length>r.maxCases||h.some(f=>!f||typeof f!="object"||!Object.hasOwn(f,"input")))throw new Error("environment_service_cases_invalid");let y=[];for(let f of h){let u=p-(Date.now()-b);if(u<1&&(S.abort(new Error("environment_service_timeout")),M.throwIfAborted()),y.push(await t.candidate({source:d,exportName:r.exportName,value:structuredClone(f.input),timeoutMs:Math.max(1,u),maxResultBytes:r.maxResultBytes,deterministic:!0,errorPrefix:"candidate",signal:M})),new TextEncoder().encode(JSON.stringify({status:"completed",cases:y})).byteLength>r.maxResultBytes)throw new k("candidate_result_too_large")}m[r.id]={status:"completed",cases:y}}}catch(d){if(l.throwIfAborted(),S.signal.aborted)m[r.id]={status:"rejected",code:"timeout"};else if(d instanceof k)m[r.id]={status:"rejected",code:"execution_failed"};else throw d}finally{clearTimeout(g)}}l.throwIfAborted();let i=e.timeoutMs-(Date.now()-c);if(i<1)throw new Error("environment_timeout");return await t.controller({...e,executionServices:void 0,value:{...e.value,services:m},timeoutMs:i,signal:l})}finally{clearTimeout(s)}}a(Y,"executeEnvironmentWithServices");async function re(e){let t=V.parse(e.operation);return Y(e,{candidate:O,controller:a(async o=>R.parse(await O({...o,exportName:t,maxResultBytes:1572864,deterministic:!0,errorPrefix:"environment"})),"controller")})}a(re,"executeJavaScriptEnvironment");var J=class extends Error{static{a(this,"JavaScriptEnvironmentActionError")}code;constructor(t){super(`environment_${t}`),this.code=t,this.name="JavaScriptEnvironmentActionError"}};async function Qe(e){let t=U(e.definition),o=Q(e.asset,t.module);if(!Number.isSafeInteger(e.seed))throw new Error("environment_seed_invalid");let c=e.seed;v(e.input,1048576),v(e.initialState,t.maxStateBytes);let w=structuredClone(e.input),l=structuredClone(e.initialState),s=e.execute??re,m=new AbortController,i=e.signal?AbortSignal.any([e.signal,m.signal]):m.signal,r={},p=0,S=!1,M=!1,g=null,b=[],d=null;async function h(f,u){if(S||M)throw new Error("environment_closed");if(g)throw new Error("environment_operation_in_progress");i.throwIfAborted(),u&&(v(u,262144),u=structuredClone(u));let L=E(r),_=u?t.tools.find(x=>x.name===u.name):null;if(f==="step"){if(p>=t.maxSteps)throw new J("step_budget_exhausted");p++}let j=a((x,C)=>b.push({sequence:b.length,operation:f,toolName:u?.name??null,arguments:u?structuredClone(u.arguments):null,observation:x,beforeStateHash:L,afterStateHash:E(r),error:C}),"record");try{if(u&&!_)throw new J("unknown_tool");if(u&&_&&!T(_.inputSchema,u.arguments).valid)throw new J("invalid_arguments");let x=t.executionServices?.filter(N=>N.operation===f&&(f!=="step"||N.toolName===u?.name)),C=s({source:o,operation:f,value:{input:w,initialState:l,seed:c,state:structuredClone(r),sequence:p,action:u?structuredClone(u):null},timeoutMs:Math.min(t.operationTimeoutMs,_?.timeoutMs??t.operationTimeoutMs),signal:i,...x?.length?{executionServices:x}:{}});g=C;let A=R.parse(await C);if(i.throwIfAborted(),v(A.state,t.maxStateBytes),v(A.observation,t.maxObservationBytes),(f==="collect"||_?.sideEffect==="read")&&E(A.state)!==L)throw new Error("environment_read_changed_state");r=structuredClone(A.state);let B=structuredClone(A.observation);return j(B,null),{state:structuredClone(r),observation:B}}catch(x){throw j(null,x instanceof Error?x.message:"environment_execution_failed"),x}finally{g=null}}a(h,"invoke");async function y(){return d||(M=!0,m.abort(new Error("environment_destroyed")),d=(async()=>{try{try{await g}catch{}await s({source:o,operation:"destroy",value:{input:w,initialState:l,seed:c,state:structuredClone(r),sequence:p,action:null},timeoutMs:t.operationTimeoutMs})}finally{r={},S=!0}})(),d)}a(y,"destroy");try{await h("create");let f=await h("reset"),u=E(r),L=a(()=>{if(S)throw new Error("environment_closed");return{definition:{id:t.id,revision:t.revision,contentHash:t.contentHash},inputHash:E(w),seed:c,initialStateHash:u,finalStateHash:E(r),state:structuredClone(r),events:structuredClone(b)}},"snapshot");return{definition:structuredClone(t),observation:f.observation,async step(_){return(await h("step",_)).observation},async collect(){let _=await h("collect");return{...L(),observation:_.observation}},snapshot:L,destroy:y}}catch(f){try{await y()}catch{}throw f}}a(Qe,"createJavaScriptEnvironmentSession");var ne=n.string().trim().min(1).max(500),oe=n.string().regex(/^[a-f0-9]{64}$/),W=n.object({kind:n.literal("model"),id:n.string().trim().min(1).max(191),taskId:ne,admissionHash:oe,model:G,instructions:n.string().max(262144),harness:q.optional(),input:n.record(n.string(),n.unknown()),policyVisibleContext:n.record(n.string(),n.unknown()),timeoutMs:n.number().int().positive().max(36e5),environment:n.discriminatedUnion("kind",[n.object({kind:n.literal("text")}).strict(),n.object({kind:n.literal("javascript"),definition:H,asset:P,initialState:n.record(n.string(),n.unknown()),seed:n.number().int().safe()}).strict()])}).strict(),Ye=n.discriminatedUnion("kind",[W,n.object({kind:n.literal("profile"),request:n.unknown()}).strict()]);var Z=n.string().trim().min(1).max(200),mt=n.object({receiptId:Z,taskId:Z,seed:n.string(),request:W}).strict(),ee=class extends Error{constructor(o,c,w=409){super(c);this.code=o;this.status=w}code;status;static{a(this,"LocalExperimentError")}};export{k as a,te as b,Y as c,J as d,Qe as e,W as f,Ye as g,ee as h};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{c as S,g as T,j as k,k as x,m as E}from"./chunk-5HPZGLOL.js";import{h as R}from"./chunk-XHU4BZQY.js";import{v as y}from"./chunk-ZY32SZ2P.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as d}from"./chunk-FTQLQJQV.js";var m=e.string().trim().min(1).max(191),w=e.string().regex(/^[a-f0-9]{64}$/),H=e.discriminatedUnion("mode",[e.object({mode:e.literal("automatic"),objective:e.enum(["balanced","fast","economical"]),gpuCount:e.union([e.literal(1),e.literal(2)]).optional()}).strict(),e.object({mode:e.literal("manual"),availabilityId:m,gpuType:e.string().trim().min(1).max(256),gpuCount:e.union([e.literal(1),e.literal(2)]).optional()}).strict()]),ee=e.object({estimateId:m,inputHash:w,requestHash:w,pricingVersion:m,expiresAt:e.string().datetime({offset:!0}),token:e.string().min(1).max(8192)}).strict(),te=e.object({schemaVersion:e.literal("openpond.trainingGpuCatalog.v1"),observedAt:e.string().datetime({offset:!0}),expiresAt:e.string().datetime({offset:!0}),workerImageDigest:e.string().regex(/^sha256:[a-f0-9]{64}$/),supportedLoraRanks:e.array(e.number().int().positive()),pricingBasis:e.literal("accepted_compute_and_disk_hourly_before_credits"),offerings:e.array(e.object({availabilityId:m,gpuType:e.string().min(1).max(256),provider:m,region:e.string().min(1),dataCenterId:e.string().nullable(),gpuCount:e.number().int().positive(),gpuMemoryGb:e.number().positive(),stockStatus:e.enum(["High","Medium","Low"]),computeHourlyUsd:e.number().nonnegative(),diskHourlyUsd:e.number().nonnegative(),totalHourlyUsd:e.number().nonnegative()}).strict()).max(1e3)}).strict();var P=R.extend({mode:e.enum(["nightly","approved_count"]),minimumTasks:e.number().int().min(1).max(1e4),maximumSpendUsd:e.number().positive().max(1e5),maximumDailySpendUsd:e.number().positive().max(1e6)}).strict().superRefine((t,a)=>{t.maximumDailySpendUsd<t.maximumSpendUsd&&a.addIssue({code:"custom",path:["maximumDailySpendUsd"],message:"The daily budget must cover one update."})});var n=e.string().trim().min(1).max(500),c=e.string().regex(/^[a-f0-9]{64}$/),l=e.string().datetime({offset:!0}),u=e.object({id:n,contentHash:c}).strict(),v=u.extend({revision:e.number().int().positive()}).strict(),p=e.object({schemaVersion:e.literal("openpond.baseModelPreference.v1"),modelId:n,revision:e.string().trim().min(1).max(256).nullable(),tokenizerRevision:e.string().trim().min(1).max(256).nullable(),chatTemplateHash:e.string().trim().min(8).max(256).nullable(),modelAssetId:n.nullable(),source:e.enum(["managed","local","builtin"])}).strict(),O=e.enum(["sft","dpo","grpo","ppo","sdft","opd","opsd","sdpo"]),L=e.object({schemaVersion:e.string().regex(/^openpond\.[A-Za-z0-9]+Recipe\.v\d+$/),method:O,parameterization:e.enum(["lora","full"])}).catchall(e.unknown()),B=e.object({profileProjectId:n,sourceRevision:e.string().regex(/^[a-f0-9]{40,64}$/),harnessRelease:u}).strict(),J=e.object({profileProjectId:n,sourceRevision:e.string().regex(/^[a-f0-9]{40,64}$/),catalogHash:c,definitionId:n,harnessRelease:u,tasksetRelease:u}).strict(),D=e.object({tasksetRef:v.nullable().default(null),evaluationTasksetRef:v.nullable().optional(),profileSource:B.nullable().optional(),profileEvaluation:J.nullable().optional(),rewardBindingRef:v.nullable().optional(),tasksetRelease:u.nullable().default(null),harnessRelease:u.nullable().default(null),baseModel:p.nullable().default(null),method:O.nullable().default(null),destinationId:n.nullable().default(null),managedRolloutPlacement:e.enum(["local","remote"]).default("remote"),managedGpuPlacementObjective:e.enum(["fast","balanced","economical"]).default("balanced"),managedGpuSelection:H.optional(),continuationAdapterMode:e.enum(["residual_append","shared","sequential_merge"]).optional(),managedGpuRequirement:e.enum(["any","h100_hbm3"]).default("any"),runPreset:e.enum(["small","standard","custom","small_experiment"]).nullable().default(null),recipe:L.nullable().default(null),preferredMaximumSpendUsd:e.number().nonnegative().nullable().default(null),preferredRetentionDays:e.number().int().nonnegative().nullable().default(null)}).strict(),q=D,N=e.object({schemaVersion:e.literal("openpond.hostedModelProjectLink.v1"),apiOrigin:e.string().url().refine(t=>new URL(t).origin===t,"Use a canonical API origin.").nullable().default(null),teamId:n,projectId:n,portableProjectId:n,revision:e.number().int().positive(),etag:c,syncedSourceRevision:e.number().int().positive(),syncedAt:l,tasksets:e.array(e.object({localTasksetId:n,localTasksetHash:c.nullable().default(null),releaseId:n,releaseRevision:e.number().int().positive(),releaseHash:c,packageHash:c.nullable().default(null),hostedTasksetId:n,syncedAt:l}).strict()).max(1e4).default([])}).strict(),V=e.object({localTasksetId:n,releaseId:n,releaseRevision:e.number().int().positive(),releaseHash:c,state:e.enum(["syncing","synced","sync_failed"]),hostedTasksetId:n.nullable().default(null),lastAttemptAt:l,syncedAt:l.nullable().default(null),lastError:e.string().trim().min(1).max(5e3).nullable().default(null)}).strict(),$=e.object({schemaVersion:e.literal("openpond.modelProject.v2"),id:n,profileId:n,revision:e.number().int().positive().default(1),name:e.string().trim().min(1).max(200),objective:e.string().trim().max(5e3).nullable(),defaultBaseModel:p.nullable(),defaultDestinationId:n.nullable(),trainingSetup:D,hosted:N.nullable().default(null),tasksetSyncs:e.array(V).max(1e4).default([]),createdAt:l,updatedAt:l}).strict(),U=$.pick({id:!0,profileId:!0,name:!0,objective:!0,defaultBaseModel:!0,defaultDestinationId:!0,trainingSetup:!0}),G=e.object({schemaVersion:e.literal("openpond.modelProjectSave.v1"),operationId:n,expectedRevision:e.number().int().nonnegative(),project:U,learning:P.optional()}).strict().superRefine((t,a)=>{t.learning&&t.expectedRevision!==0&&a.addIssue({code:"custom",path:["learning"],message:"Use learning settings to edit an existing Model's policy."})}),Y=e.object({schemaVersion:e.literal("openpond.modelProjectConfigurationCheck.v1"),configurationHash:c,projectId:n,expectedRevision:e.number().int().nonnegative(),checkedAt:l,canSave:e.boolean(),deferred:e.array(e.enum(["base_model","taskset"])).max(2),findings:e.array(e.object({code:n,severity:e.enum(["error","warning"]),message:e.string().min(1).max(5e3),field:e.string().min(1).max(500).nullable()}).strict()).max(100)}).strict(),X=e.object({id:n,name:e.string().min(1).max(500),available:e.boolean(),preference:p}).strict();function M(t){try{y(t,524288)}catch{throw new h(400,{schemaVersion:"openpond.modelProjectApiError.v2",code:"model_configuration_json_invalid",message:"Model configuration must be bounded JSON data.",retryable:!1,requestId:null,details:{}})}return G.parse(t)}d(M,"parseModelProjectSaveRequest");async function ue(t,a,i){y(t,524288);let s=U.parse(t);x(s,524288,"Model configuration");let o=i?P.parse(i):void 0,r=await k({project:s,expectedRevision:a,...o?{learning:o}:{}});return M({schemaVersion:"openpond.modelProjectSave.v1",operationId:`model-save:${r}`,expectedRevision:a,project:s,...o?{learning:o}:{}})}d(ue,"createModelProjectSaveRequest");var F=e.object({schemaVersion:e.literal("openpond.hostedModelProjectSync.v2"),portableProjectId:n,name:e.string().trim().min(1).max(200),objective:e.string().trim().max(5e3).nullable(),defaultBaseModel:p.nullable(),defaultDestinationId:n.nullable(),trainingSetup:q,sourceRevision:e.number().int().positive(),sourceUpdatedAt:l,expectedEtag:c.nullable().default(null)}).strict(),f=e.object({id:n,teamId:n,portableProjectId:n,name:e.string().trim().min(1).max(200),objective:e.string().trim().max(5e3).nullable(),defaultBaseModel:p.nullable(),defaultDestinationId:n.nullable(),trainingSetup:q,sourceRevision:e.number().int().positive(),sourceUpdatedAt:l,revision:e.number().int().positive(),etag:c,createdAt:l,updatedAt:l}).strict(),Z=e.object({kind:e.enum(["taskset_release","harness_release","dataset_release","evidence_set","model_version","reward_model_version","evaluation_receipt"]),ref:u,role:e.string().trim().min(1).max(200).nullable().default(null),updatedAt:l}).strict(),K=e.object({project:f,resources:e.array(Z).max(1e4),jobCount:e.number().int().nonnegative(),latestJobIds:e.array(n).max(100)}).strict(),Q=e.object({schemaVersion:e.literal("openpond.modelProjectApiError.v2"),code:e.string().trim().min(1).max(200),message:e.string().trim().min(1).max(5e3),retryable:e.boolean().default(!1),requestId:e.string().trim().min(1).max(500).nullable().default(null),details:e.record(e.string(),e.unknown()).default({})}).strict(),h=class extends Error{static{d(this,"OpenPondModelProjectApiError")}status;code;retryable;requestId;details;constructor(a,i){super(i.message),this.name="OpenPondModelProjectApiError",this.status=a,this.code=i.code,this.retryable=i.retryable,this.requestId=i.requestId,this.details=i.details}};function A(t){let a={};return new Headers(t).forEach((i,s)=>{a[s]=i}),a}d(A,"headersRecord");function me(t){let a=t.fetch??fetch,i=t.baseUrl.replace(/\/$/,"");async function s(o,r){let j=typeof t.headers=="function"?await t.headers():t.headers??{},g=await a(`${i}${o}`,{...r,headers:{accept:S,...r?.body?{"content-type":S}:{},...A(j),...A(r?.headers)}}),I=await E(g,8388608,"Model Project API response");if(!g.ok){let _=Q.safeParse(I);throw _.success?new h(g.status,_.data):new T("invalid_error_response",`Model Project request failed with HTTP ${g.status} and an invalid error envelope.`)}return I}return d(s,"request"),{async configurationCandidates(){return e.object({candidates:e.array(X).max(1e3)}).strict().parse(await s("/v1/model-projects/configuration/candidates",{headers:{accept:"application/json"}})).candidates},async checkConfiguration(o){let r=M(o);return Y.parse(await s("/v1/model-projects/configuration/check",{method:"POST",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify(r)}))},async saveConfiguration(o){let r=M(o);return f.parse(await s("/v1/model-projects/configuration/save",{method:"POST",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify(r)}))},async upsert(o){x(o,524288,"Model Project sync");let r=F.parse(o),j=await s(`/v1/model-projects/${encodeURIComponent(r.portableProjectId)}`,{method:"PUT",body:JSON.stringify(r)});return f.parse(C(j,"project"))},async list(){let o=await s("/v1/model-projects");return e.array(f).parse(C(o,"projects"))},async get(o){let r=await s(`/v1/model-projects/${encodeURIComponent(n.parse(o))}`);return K.parse(r)}}}d(me,"createModelProjectsClient");function C(t,a){return!t||typeof t!="object"||Array.isArray(t)?t:a in t?t[a]:t}d(C,"unwrapObject");export{H as a,ee as b,te as c,u as d,v as e,p as f,L as g,q as h,U as i,ue as j,F as k,f as l,me as m};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{Ca as J,Cb as ue,Da as ne,Db as fe,Ha as re,Ia as oe,Ka as ce,Kb as W,La as de,Lb as Z,Ma as le,Mb as he,Na as pe,Nb as ge,Ob as ve,Pb as be,Qb as we,Rb as ke,Sa as me,_ as ae,ja as se,na as ie,v as te,wa as F}from"./chunk-5ZNE43XC.js";import{b as q,c as I,d as G,f as B,k as D,l as $,m as d}from"./chunk-HIQPGYVH.js";import{m as ee}from"./chunk-263WS3TB.js";import{K as V,R as O,b as K,ba as Y,ca as X}from"./chunk-XHU4BZQY.js";import{bb as U}from"./chunk-ZY32SZ2P.js";import{A as n}from"./chunk-X2J2P5ZT.js";import{a as k}from"./chunk-FTQLQJQV.js";var Ie=n.object({id:q,purpose:n.string().trim().min(1).max(500),audience:n.enum(["orchestrator","environment","privileged_scorer","trainer","infrastructure"]),required:n.boolean(),ttlSeconds:n.number().int().positive().max(86400),scopes:n.array(n.string().trim().min(1).max(500)).max(100).default([])}).strict(),qe=n.object({declarationId:q,leaseRef:n.string().trim().min(8).max(1e3),audience:Ie.shape.audience,expiresAt:G}).strict(),Me=n.object({adapterId:q,placement:n.enum(["local","remote","colocated","provider_native"]),capabilityReceipt:I,runtimeVersion:n.string().trim().min(1).max(200),dataPlane:n.object({provider:q,dataPlaneId:q,cellId:q,runnerPoolId:q,runtimeImageDigest:n.string().regex(/^sha256:[a-f0-9]{64}$/),capabilityReceipt:I}).strict().nullable()}).strict(),je=n.object({adapterId:q,kind:n.enum(["local","ssh","managed","custom"]),deviceOrPool:n.string().trim().min(1).max(1e3),capabilityReceipt:I,provider:q.nullable()}).strict(),Pe=n.object({adapterId:q,workerVersion:n.string().trim().min(1).max(200),workerImageDigest:n.string().regex(/^sha256:[a-f0-9]{64}$/).nullable(),upstreamRevision:n.string().trim().min(1).max(500),capabilityReceipt:I}).strict(),Re=n.object({schemaVersion:n.literal("openpond.harnessRunManifest.v1"),executionMode:n.literal("qualification").optional(),qualificationSamples:n.number().int().min(1).max(32).optional(),id:q,harnessRelease:B,datasetRelease:B,evidenceSets:n.array(B).max(1e4),model:n.object({source:n.string().trim().min(1).max(200),revision:n.string().trim().min(1).max(500),artifactHash:I.nullable(),tokenizerRevision:n.string().trim().min(1).max(500),chatTemplateHash:I}).strict(),recipe:n.object({method:n.string().trim().min(1).max(100),version:n.string().trim().min(1).max(200),configHash:I}).strict(),runtimeTarget:Me,computeTarget:je,engine:Pe,resolvedBundleHash:I,secretLeaseRefs:n.array(qe).max(1e3),approval:n.object({approvalHash:I,approvedAt:G,maximumSpendUsd:n.number().nonnegative().nullable()}).strict(),createdAt:G}).strict(),xe=Re.extend({contentHash:I}).strict(),Te=n.object({schemaVersion:n.literal("openpond.resolvedTrainingBundle.v1"),executionMode:n.literal("qualification").optional(),qualificationSamples:n.number().int().min(1).max(32).optional(),projection:n.literal("trainer"),harnessRelease:B,datasetRelease:B,evidenceSetRelease:B.nullable(),files:n.array(n.object({path:n.string().trim().min(1).max(2e3),sha256:I,sizeBytes:n.number().int().nonnegative()}).strict()).max(1e5)}).strict(),He=Te.extend({contentHash:I}).strict(),_e=[{label:"OpenAI-style API key",pattern:/\bsk-[A-Za-z0-9_-]{16,}\b/g},{label:"OpenPond API key",pattern:/\bopk_[A-Za-z0-9_-]{12,}\b/g},{label:"private key",pattern:/-----BEGIN (?:RSA |EC |OPENSSH )?PRIVATE KEY-----/g},{label:"credential assignment",pattern:/\b(?:api[_-]?key|password|secret|token)["']?\s*[:=]\s*["']?[^\s"']{8,}/gi}],N=/\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b/gi,Q=/\b(?:\+?1[-.\s]?)?\(?\d{3}\)?[-.\s]\d{3}[-.\s]\d{4}\b/g;function Be(e){let t=[],a=e;for(let s of _e)s.pattern.lastIndex=0,s.pattern.test(a)&&t.push(s.label),s.pattern.lastIndex=0,a=a.replace(s.pattern,`[REDACTED ${s.label}]`);N.lastIndex=0;let r=N.test(a);N.lastIndex=0,r&&t.push("email address"),a=a.replace(N,"[REDACTED email]"),Q.lastIndex=0;let o=Q.test(a);return Q.lastIndex=0,o&&t.push("phone number"),a=a.replace(Q,"[REDACTED phone]"),{secretStatus:t.some(s=>!s.includes("email")&&!s.includes("phone"))?"blocked":"passed",piiStatus:r||o?"review":"passed",findings:t,redacted:a}}k(Be,"scanAndRedactEvidence");function ze(e){let t=new Map;return{tasks:e.tasks.map(({artifactRefs:r,...o})=>({...o,assets:r.map(s=>{if(s.visibility!=="policy")throw new Error("Learning task inputs must be policy-visible assets.");let i=e.assets?.find(m=>m.id===s.id),p=e.assetBytes?.get(s.id)??(i?new TextEncoder().encode(O(i,s)):void 0);if(!p||p.byteLength!==s.sizeBytes||$(p)!==s.contentHash)throw new Error(`Learning task input bytes are missing or changed: ${s.id}.`);let l=`learning/assets/${d({task:o.id,asset:s.id}).slice(0,40)}/${s.path}`;return t.set(l,new Uint8Array(p)),{id:s.id,sourceRefId:e.sourceId,artifactRef:l,fileName:s.path.split("/").at(-1),stagingPath:s.path,mediaType:s.mediaType,sha256:s.contentHash,sizeBytes:s.sizeBytes,split:o.split,metadata:{portableAsset:s}}}),...o.requiredOutputs?{requiredOutputs:o.requiredOutputs.map(s=>({...s,schemaRef:s.schemaRef?.id??null,maxBytes:s.maxBytes??void 0}))}:{}})),tasksetAssetBytes:t}}k(ze,"materializeLearningBatchAssets");function Ce(e){let t=Y(e),a=X(t),r=t.environment.kind==="work";if(!r&&(t.environment.kind!=="text"||t.tools.length||t.tasks.some(c=>c.artifactRefs.length))||r&&t.tasks.some(c=>!c.requiredOutputs?.length))throw new Error("This learning batch requires a supported text or Work environment with declared outputs.");let o=e.source.id,s=ze({tasks:t.tasks,sourceId:o,assets:e.assets,assetBytes:e.assetBytes}),i={demonstrations:[],preferences:[],corrections:[],feedback:[],rewards:[],labels:[]},p=[];for(let c of a.admissions){let b=e.evidence.find(h=>h.id===c.evidence.id),f=e.decisions.find(h=>h.id===c.decision.id);e.batch.purpose==="reward_training"&&f.grade?.training.status==="scored"&&i.rewards.push({id:`reward-${c.taskId}`,taskId:c.taskId,kind:"reward",task:e.definition.instructions,rules:[{id:e.binding.id,points:1,condition:"Execute the released Reward binding with its declared normalization, weights and gates."}],otherwisePoints:0,executable:!0,approved:!0,confidence:1,sourceRefs:[o],artifactRef:e.binding.id,metadata:{rewardBinding:V(e.binding),evidence:c.evidence,decision:c.decision}}),c.supervisedTarget!==null&&i.demonstrations.push({kind:"demonstration",id:`demo-${c.taskId}`,taskId:c.taskId,sourceRefs:[o],artifactRef:c.decision.id,approved:!0,confidence:1,prompt:null,response:JSON.stringify(c.supervisedTarget),metadata:{evidence:c.evidence,decision:c.decision,targetGradeHash:f.targetGrade?.contentHash}});for(let[h,x,S]of[["observed",b.submission.observedOutput,f.grade],["target",f.approvedTarget,f.targetGrade]]){let H=Oe(S);x===null||H===null||p.push({id:`fixture-${h}-${c.taskId}`,taskId:c.taskId,label:H.passed?"positive":"negative",output:x,infrastructureError:null,expectedPassed:H.passed,expectedRewardEligible:H.rewardEligible,metadata:{gradeReceiptHash:S.contentHash,evidence:c.evidence,decision:c.decision}})}}if(!p.length&&e.batch.purpose!=="reward_training")throw new Error("Grade at least one reviewed response before preparing this batch. Grader fixtures must come from actual receipts.");let l=ne(e.binding,e.rewards,e.assets),m=[];for(let c of t.graders){if(c.kind!=="custom_verifier")continue;let b=e.assets?.find(h=>h.id===c.verifierRef.id);if(!b)throw new Error(`Reward ${c.id} is missing its immutable verifier source.`);let f=c.verifierRef.path;m.some(h=>h.path===f)||m.push({path:f,role:"verifier",content:O(b,c.verifierRef)})}let v=F.parse({schemaVersion:"openpond.taskset.v1",id:`learning-${d([e.profileId,e.batch.contentHash]).slice(0,40)}`,revision:1,profileId:e.profileId,profileRelease:null,createImproveRunId:null,name:`${e.definition.name} \xB7 ${e.batch.examples.length} approved examples`,objective:e.definition.instructions,purpose:"general",benchmark:null,status:"needs_review",sourceRefs:[e.source],datasetArtifact:null,policy:t.policy,environment:{protocolVersion:"openpond.taskEnvironment.v1",kind:r?"work":"chat",entrypoint:t.environment.entrypoint,stateful:t.environment.stateful,deterministicSeeds:t.environment.deterministicSeeds,toolNames:t.tools.map(c=>c.name),lifecycle:["create","reset","step","grade","cleanup"],defaultTimeoutMs:t.environment.defaultTimeoutMs,networkPolicy:t.environment.networkPolicy,metadata:{portableEnvironment:t.environment,portableTools:t.tools}},capabilities:{schemaVersion:"openpond.tasksetCapabilities.v1",taskKind:r?"single_agent":"chat",supportedSignals:i.demonstrations.length?["demonstration","reward"]:["reward"],compatibleMethods:e.batch.purpose==="supervised_training"?["sft"]:e.batch.purpose==="reward_training"?["grpo","ppo"]:["none"],rewardKinds:[...new Set(t.graders.map(c=>c.kind==="human"?"human":c.kind==="model_judge"?"model_judge":"deterministic"))],requiresTools:t.tools.length>0,requiresState:t.environment.stateful,requiresPrivilegedGrading:!0,environmentPlacements:["local","remote"],exportable:!0,portabilityBlockers:[]},tasks:s.tasks.map(c=>({...c,schemaVersion:"openpond.taskData.v1",sourceRefs:[o],metadata:{admission:a.admissions.find(b=>b.taskId===c.id),exampleOrigin:e.evidence.find(b=>b.id===c.id)?.correctionFeedbackId?"corrected":"extracted"}})),graders:l,graderFixtures:p,learningSignals:i,authoringProvenance:{schemaVersion:"openpond.taskAuthoringProvenance.v1",model:null,modelConfig:{},skillHash:d("openpond-learning-batch-v1"),promptTemplateVersion:"learning-batch-v1",buildIntent:e.batch.purpose==="supervised_training"?"demonstrations":"verifiable_reward",buildSpecification:null,evidenceHashes:e.batch.examples.map(c=>c.evidence.contentHash),tasksetSdkVersion:"learning-batch-v1",sourceCommit:null,repairHistory:[],createdAt:e.batch.sealedAt},readiness:null,contentHash:"00000000",createdAt:e.batch.sealedAt,updatedAt:e.batch.sealedAt,metadata:{learning:a,learningRelease:V(t),trainingMethod:e.batch.purpose==="supervised_training"?"sft":e.batch.purpose==="reward_training"?"grpo":"none",tasksetOutputContract:r?{mode:"artifacts",requiredOutputSource:"task.requiredOutputs"}:{mode:"structured_json",jsonSchema:e.definition.outputSchema,renderer:null}}});return{taskset:F.parse({...v,contentHash:J(v)}),release:t,generatedFiles:m,tasksetAssetBytes:s.tasksetAssetBytes}}k(Ce,"materializeLearningBatchTaskset");function Oe(e){if(!e)return null;let t=e.training.status==="not_configured"?e.evaluation:e.training;return t.status!=="scored"?null:{passed:t.passed===!0,rewardEligible:e.training.status==="scored"}}k(Oe,"fixtureOutcome");function ot(e){let t=[],a=0;for(let s of new Map(e.evidence.flatMap(i=>i.submission.assets.map(p=>[p.id,p]))).values()){let i=e.assetBytes?.get(s.id),p=e.assets?.find(m=>m.id===s.id),l=i?.byteLength??(p?new TextEncoder().encode(p.text).byteLength:0);if(a+=l,a>ae)throw new Error("Learning input assets exceed the training package limit.");i?t.push(new TextDecoder().decode(i)):p&&t.push(p.text)}let r=Be(JSON.stringify({tasks:e.evidence.map(s=>s.submission),targets:e.decisions.map(s=>s.approvedTarget),definition:e.definition,inputAssets:t}));if(r.secretStatus!=="passed"||r.piiStatus!=="passed")throw new Error(`Learning batch contains unresolved data findings (${r.findings.join(", ")}). Correct the source examples and seal a revised batch before training.`);let o=te.parse({schemaVersion:"openpond.learningBatchDatasetSource.v1",kind:"learning_batch",id:`batch-source-${e.batch.contentHash.slice(0,40)}`,profileId:e.profileId,title:e.definition.name,sourceHash:e.batch.contentHash,occurredAt:e.batch.sealedAt,batch:V(e.batch),taskDefinition:e.batch.taskDefinition,admittedBy:e.batch.sealedBy,licensingStatus:"approved",secretScanStatus:r.secretStatus,piiScanStatus:r.piiStatus,metadata:{admission:e.admissionContext??"explicit_local_batch_review",privacyScanner:"openpond-evidence-v1",findings:r.findings}});return Ce({...e,source:o})}k(ot,"prepareReviewedLearningBatch");async function dt(e){let t=structuredClone(e),{project:a,recipe:r,taskset:o,approval:s}=t,i=xe.parse(t.manifest),p=He.parse(t.bundleManifest),l=t.executionMode==="qualification",m=t.gpuSelection??a.trainingSetup.managedGpuSelection?ee.parse(t.gpuSelection??a.trainingSetup.managedGpuSelection):void 0,v=t.physicalPlacement?fe.parse(t.physicalPlacement):void 0,c=i.qualificationSamples===void 0?null:n.object({rollout:n.object({groupSize:n.number().int().min(2).max(32)}).passthrough()}).passthrough().parse(r).rollout.groupSize;if(i.qualificationSamples!==p.qualificationSamples||i.qualificationSamples!==void 0&&(!l||i.qualificationSamples>c))throw new Error("Qualification samples must be within the pinned rollout group and cannot be used for training.");if(i.executionMode!==t.executionMode||p.executionMode!==t.executionMode)throw new Error("Managed submission execution mode differs from its immutable bundle.");if(l&&(t.evaluationSource||t.resumeFrom||t.rewardSource.kind!=="deterministic"))throw new Error("Qualification requires the original learner, deterministic rewards, and no evaluation source.");let{contentHash:b,...f}=i,{contentHash:h,...x}=p;if(d(f)!==b||d(x)!==h||i.resolvedBundleHash!==h||d(i.harnessRelease)!==d(p.harnessRelease)||d(i.datasetRelease)!==d(p.datasetRelease)||d(i.evidenceSets)!==d(p.evidenceSetRelease?[p.evidenceSetRelease]:[]))throw new Error("The managed training manifest or resolved bundle changed.");if(!a.hosted||a.hosted.syncedSourceRevision!==a.revision||a.hosted.portableProjectId!==a.id)throw new Error("Sync the exact Model Project revision before preparing managed training.");let S=a.trainingSetup.baseModel;if(!S||S.modelId!==i.model.source||S.revision!==i.model.revision||S.tokenizerRevision!==i.model.tokenizerRevision||S.chatTemplateHash!==i.model.chatTemplateHash)throw new Error("The synced Model Project base Model does not match the Run manifest.");if(!["grpo","sft"].includes(r.method)||d(r)!==i.recipe.configHash||s.approvalHash!==i.approval.approvalHash||s.maximumSpendUsd!==i.approval.maximumSpendUsd)throw new Error("Managed training requires the exact approved supported recipe and spend ceiling.");if(r.method==="sft"){let T=ue.parse(r);if(d(T)!==d(r))throw new Error("SFT recipe must be fully materialized before approval.");if(l||t.resumeFrom||v||(m?.gpuCount??1)!==1)throw new Error("Initial managed SFT requires a fresh single-GPU run without reuse-only placement or rollout qualification.")}let H=n.object({wallTimeMs:n.number().positive()}).parse(r.resourceLimits);t.idempotencyKey!==void 0&&n.string().trim().min(16).max(191).parse(t.idempotencyKey);let E=$e(p,t.files),A=l?null:Z.parse(t.evaluationSource),y=E.find(T=>T.path===W);if(A&&(!y||d(JSON.parse(Buffer.from(y.content,"base64").toString("utf8")))!==d(A)))throw new Error("The evaluation source differs from the immutable training bundle.");if(l&&(y||E.some(T=>T.path==="dataset/train.json")||!E.some(T=>T.path==="dataset/qualification.json")||!E.some(T=>T.path==="qualification-source.json")))throw new Error("Qualification requires its dedicated dataset and no training/evaluation datasets.");if(!l&&E.some(T=>T.path==="dataset/qualification.json"||T.path==="qualification-source.json"))throw new Error("Qualification datasets cannot be prepared as training.");let _=A?await ge(A):null,C={schemaVersion:"openpond.managedRlPortableSubmission.v1",...l?{executionMode:"qualification"}:{},...t.origin?{origin:K.parse(t.origin)}:{},...v?{physicalPlacement:v}:{},sourceRunRef:`openpond:model-run:${i.id}`,name:`OpenPond Managed \xB7 ${a.id}`.slice(0,191),idempotencyKey:t.idempotencyKey??`openpond-managed:${b}`.slice(0,191),modelProject:{id:a.hosted.projectId,portableProjectId:a.hosted.portableProjectId},manifest:i,sourceTaskset:o,modelImprovementQualification:t.modelImprovementQualification??null,recipe:r,resolvedBundle:{manifest:p,files:E},validationTasks:A?.tasks??[],validationAssets:A?.assets??[]},j={schemaVersion:"openpond.trainingInputArtifactUpload.v2",kind:"portable_training_bundle",idempotencyKey:`stage:${t.idempotencyKey??b}`,sourceManifest:{id:i.id,contentHash:b},payload:C},P=await be({...j,contentHash:await ve(j)}),u={schemaVersion:"openpond.trainingJobSubmission.v2",idempotencyKey:t.idempotencyKey??`openpond-training-v2:${b}`,name:`OpenPond Managed \xB7 ${a.id}`.slice(0,200),source:{...t.origin?{origin:K.parse(t.origin)}:{},modelProject:{id:a.hosted.projectId,portableProjectId:a.hosted.portableProjectId,revision:a.revision,contentHash:a.hosted.etag},harnessRunManifest:j.sourceManifest,harnessRelease:i.harnessRelease,taskset:o,tasksetRelease:{id:o.id,contentHash:o.contentHash},dataset:p.datasetRelease,..._?{evaluation:_}:{},evidenceSets:p.evidenceSetRelease?[p.evidenceSetRelease]:[]},job:{kind:"policy_optimize",...l?{executionMode:"qualification"}:{},baseModel:S,recipe:r,rewardSource:t.rewardSource,resumeFrom:t.resumeFrom},requestedCapabilities:[{id:l?"managed_rl.policy.qualification":r.method==="sft"?"managed_training.sft":"managed_rl.policy.grpo",version:"1",required:!0},...m?.gpuCount===2?[{id:"managed_rl.policy.data_parallel",version:"1",required:!0}]:[],{id:`managed_rl.rollouts.${i.runtimeTarget.placement}`,version:"1",required:!0},...a.trainingSetup.managedGpuRequirement==="h100_hbm3"?[{id:"managed_rl.gpu.h100_hbm3",version:"1",required:!0}]:[]],placementObjective:a.trainingSetup.managedGpuPlacementObjective,...m?{gpuSelection:m}:{},...v?{physicalPlacement:v}:{},budget:{maximumSpendUsd:s.maximumSpendUsd,maximumWallSeconds:Math.ceil(H.wallTimeMs/1e3)},approval:{...s,approvedAt:i.approval.approvedAt,exportApproved:!0}},w=await ke({...u,contentHash:await we(u)});return{artifact:P,submission:w}}k(dt,"prepareManagedTrainingSubmission");function $e(e,t){if(t.length!==e.files.length||new Set(t.map(r=>r.path)).size!==t.length)throw new Error("The managed bundle file inventory changed.");let a=new Map(t.map(r=>[r.path,r]));return e.files.map(r=>{let o=a.get(r.path);if(!o||o.path.includes("\\")||o.path.includes("\0")||o.path.split("/").some(i=>!i||i==="."||i==="..")||o.path==="bundle-manifest.json"||o.encoding!=="base64")throw new Error("The managed bundle contains an invalid file.");let s=Buffer.from(o.content,"base64");if(s.toString("base64")!==o.content||o.sha256!==r.sha256||o.sizeBytes!==r.sizeBytes||s.byteLength!==r.sizeBytes||$(s)!==r.sha256)throw new Error(`Managed training bundle file ${o.path} changed before upload.`);return o})}k($e,"verifyFiles");var Le=n.object({name:n.literal("adamw").default("adamw"),weightDecay:n.number().nonnegative().max(1).default(0),beta1:n.number().positive().lt(1).default(.9),beta2:n.number().positive().lt(1).default(.999),epsilon:n.number().positive().max(.01).default(1e-8)}).strict().default({name:"adamw",weightDecay:0,beta1:.9,beta2:.999,epsilon:1e-8});function pt(e,t){if(!t||typeof t!="object"||Array.isArray(t))return t;let a=t;if(a.method==="dpo"){let y=R(a.policyModel),_=R(a.referenceModel),C=R(a.dataset),j=d({tasksetHash:e.contentHash,preferenceSignals:e.learningSignals.preferences.map(P=>({id:P.id,artifactRef:P.artifactRef,prompt:P.prompt,chosen:P.chosen,rejected:P.rejected,approved:P.approved})),policyModel:y,referenceModel:_,dataset:C});return{...a,referenceLogprobs:{cacheSchemaVersion:"openpond.dpoReferenceLogprobs.v1",cacheKey:d(["dpo-reference-logprobs",j]),invalidationHash:j}}}if(a.method==="ppo"){let y=R(a.policyOptimization),_=R(y.policyModel),C=R(y.referenceModel),j=R(y.optimizer),P=R(j.valueModel),u=R(y.dataset),w=R(y.reward),T=d(_),g=d(C),L=d(P);return{...a,policyOptimization:{...y,dataset:{...u,tasksetId:e.id,tasksetHash:e.contentHash},reward:{...w,graderHash:d(e.graders)}},resume:{...R(a.resume),policyHash:T,referenceHash:g,valueModelHash:L}}}if(a.method!=="grpo")return t;let r=a.reward&&typeof a.reward=="object"&&!Array.isArray(a.reward)?a.reward:{},o=e.environment.metadata.toolContractHash,s=typeof o=="string"&&o.trim()?o:r.toolContractHash,i=R(a.baseModel),p=R(a.dataset),l=R(a.rollout),m=R(a.optimizer),v=R(a.loss),c=R(a.resourceLimits),b=M(p.maxExamples,1),f=M(l.groupSize,2),h=M(l.maxOutputTokens,1),x=M(p.maxPromptTokens,1),S=M(m.maxSteps,1),H=M(m.iterations,2),E=M(c.maxRollouts,S*f),A=M(l.maxTurns,1);return{...a,resourceLimits:{...c,maxGpuSeconds:c.maxGpuSeconds??Math.min(10800,Math.ceil(M(c.wallTimeMs,18e4)/1e3))},reward:{...r,graderHash:d(e.graders),toolContractHash:s},policyOptimization:{schemaVersion:"openpond.policyOptimization.v1",policyModel:i,referenceModel:i,dataset:{tasksetId:e.id,tasksetHash:e.contentHash,split:"train",selectionStrategy:p.selectionStrategy,selectionSeed:l.seed,maxExamples:b},sampler:{temperature:l.temperature,topP:l.topP,maxOutputTokens:h,maxTurns:l.maxTurns,concurrency:l.concurrency},environment:{id:r.environmentId,version:r.environmentVersion,toolContractHash:s},reward:{graderId:r.graderId,graderHash:d(e.graders),learnedPreference:r.learnedPreference??null},kl:{coefficient:v.klBeta??null,referenceConstraint:"fixed_reference"},budgets:{maxRollouts:E,maxEnvironmentExecutions:E,maxInputTokens:E*A*x,maxOutputTokens:E*A*h,maxOptimizerSteps:S*H,wallTimeMs:M(c.wallTimeMs,18e4),maximumCostUsd:null},checkpointEverySteps:1,seed:l.seed,evaluationSplit:"frozen_eval",optimizer:{method:"grpo",groupSize:f,normalization:"group_standardized",advantageEpsilon:typeof m.advantageEpsilon=="number"?m.advantageEpsilon:1e-8,loss:v.method??"grpo",clipRange:typeof m.clipRange=="number"?m.clipRange:.2,iterations:H,microbatchSize:M(m.microbatchSize,1),gradientAccumulationSteps:M(m.gradientAccumulationSteps,1),adamw:Le.parse(m.adamw)}}}}k(pt,"withAuthoritativeRecipeHashes");function R(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}k(R,"record");function M(e,t){return typeof e=="number"&&Number.isInteger(e)&&e>0?e:t}k(M,"positiveInteger");function mt(e){let t=e.sourceRelease,a=[],r=e.skills??[],o=e.agents??[];if([...r,...o].some(m=>m.visibility!=="policy"))throw new Error("The portable policy Harness requires policy-visible dependencies.");let s=Se({id:"desktop-dependency-lock",path:".openpond/harness/dependency-lock.json",hashInput:{profileHead:e.profileHead??null,sourceRelease:t,tools:a,skills:r.map(({id:m,contentHash:v})=>({id:m,contentHash:v})),agents:o.map(({id:m,contentHash:v})=>({id:m,contentHash:v}))},mediaType:"application/json",visibility:"policy"}),i=re({schemaVersion:"openpond.agentSnapshot.v2",id:`agent-snapshot-${d([t,a,s.contentHash]).slice(0,24)}`,sourceRelease:t,instructions:[],skills:r,agents:o,toolDeclarations:a,capabilityRequirements:[],dependencyLock:s,portability:{portable:!0,blockers:[],localOnlyAssetRefs:[],hostPrivateAssetRefs:[]},metadata:{sourceReleaseId:t?.id??null}}),p=Se({id:"desktop-harness-program",path:".openpond/harness/program.json",hashInput:{program:"openpond.desktop-agent-loop.v1"},mediaType:"application/json",visibility:"policy"}),l=oe({schemaVersion:"openpond.harnessRelease.v2",id:`harness-${d([i.contentHash,p.contentHash,a]).slice(0,24)}`,agentSnapshot:{id:i.id,contentHash:i.contentHash},program:p,tools:a,lifecycle:{create:!0,reset:!0,step:!0,collect:!0,destroy:!0,resetScope:"attempt"},graderInterface:{visibleEvidence:["output","runtime_events","artifacts"],privilegedEvidence:["expected_output","private_verifier"],privateVerifierIsolation:!0},files:[...r,...o],metadata:{runtimeProtocol:"openpond.desktop-agent-loop.v1"}});return{agentSnapshot:i,harnessRelease:l}}k(mt,"createPolicyHarnessContext");function Se(e){let t=D(e.hashInput);return{id:e.id,path:e.path,contentHash:d(e.hashInput),sizeBytes:new TextEncoder().encode(t).byteLength,mediaType:e.mediaType,visibility:e.visibility}}k(Se,"asset");function ut(e){let{taskset:t,modelProject:a,harnessRelease:r,tasksetRelease:o}=e,s=a.trainingSetup,i=e.executionMode==="qualification",p=e.qualificationSamples===void 0?null:n.object({rollout:n.object({groupSize:n.number().int().min(2).max(32)}).passthrough()}).passthrough().parse(e.modelProject.trainingSetup.recipe).rollout.groupSize;if(e.qualificationSamples!==void 0&&(!i||!Number.isInteger(e.qualificationSamples)||e.qualificationSamples<1||e.qualificationSamples>p))throw new Error("Qualification samples must be within the pinned rollout group and cannot be used for training.");if(i&&e.evaluationSource)throw new Error("Qualification does not consume an independent evaluation source.");let l=i?se(e.qualificationSource):null;if(!i&&e.qualificationSource)throw new Error("Qualification sources cannot be used for training.");if(!i&&e.qualificationTaskId!==void 0)throw new Error("Qualification selection cannot be used for training.");if(i&&(!e.qualificationTaskId||!t.tasks.some(u=>u.id===e.qualificationTaskId)))throw new Error("Qualification requires one explicit task ID from its published source.");if(l&&(l.modelResources||l.learningResources||d(t.tasks.map(me))!==d(l.taskset.tasks)||ye(e.tasksetRelease)!==ye(l.taskset)))throw new Error("Qualification must preserve its ordinary source release and complete task population.");let m=B.parse(r),v=B.parse(o);if(e.openpondRelease,e.workerProtocol,J(t)!==t.contentHash)throw new Error("Taskset authoring state changed after its release was selected.");if(!s.baseModel?.revision||!s.baseModel.tokenizerRevision||!s.baseModel.chatTemplateHash||!s.recipe||!s.tasksetRef||s.tasksetRef.id!==(i?o.id:t.id)||s.tasksetRef.contentHash!==(i?o.contentHash:t.contentHash))throw new Error("Model Run must bind an exact Taskset, Model revision, tokenizer, chat template, and Recipe.");let b=t.profileRelease??{id:`profile_${t.profileId}`,revision:t.revision,contentHash:d({profileId:t.profileId,sourceCommit:t.authoringProvenance.sourceCommit,skillHash:t.authoringProvenance.skillHash})},f=new Map;if(l&&z(f,"qualification-source.json",l),e.evaluationSource){let u=Z.parse(e.evaluationSource);if(d(u.taskset)!==d(s.evaluationTasksetRef))throw new Error("The evaluation source differs from the prepared Model configuration.");he(t.tasks.filter(w=>w.split==="train"),u.tasks),f.set(W,new TextEncoder().encode(D(u)))}else if(!i&&s.evaluationTasksetRef)throw new Error("The prepared Model requires its pinned evaluation source bytes.");let h=e.harnessSource?e.harnessSource.schemaVersion==="openpond.harnessPolicySourcePackage.v1"?de(e.harnessSource,m):le(e.harnessSource,m):null;if(s.harnessRelease&&!h)throw new Error("A selected Harness requires its complete immutable source package.");if(h&&(!s.harnessRelease||s.harnessRelease.id!==m.id||s.harnessRelease.contentHash!==m.contentHash))throw new Error("Harness source differs from the Model's explicit selection.");if(h){if((e.runtime.placement!=="local"||e.compute.kind!=="local")&&(!h.agentSnapshot.portability.portable||h.schemaVersion==="openpond.harnessSourcePackage.v1"&&h.harnessRelease.files.some(w=>w.visibility!=="policy")))throw new Error("The selected Harness contains source that cannot leave its local host.");z(f,"harness/source-package.json",h)}z(f,"harness/execution.json",ce.parse({schemaVersion:"openpond.harnessSourceSelection.v1",mode:h?"selected_release":"taskset_owned",harnessRelease:m,sourcePackageHash:h?.contentHash??null}));let x=pe(t,e.rewardExecution);if(l&&(!x||d(U(x.binding,x.rewards))!==d(l.taskset.graders)||l.taskset.graders.some(u=>u.kind==="model_judge"||u.kind==="human")))throw new Error("Qualification requires the source package's exact deterministic graders.");if(x){let u=e.verifierAssets??[],w=[...x.rewards.flatMap(g=>g.assets),...U(x.binding,x.rewards).flatMap(g=>g.kind==="custom_verifier"?[g.verifierRef]:g.kind==="model_judge"?[g.rubricRef]:[])],T=new Set(w.map(g=>g.id));if(new Set(u.map(g=>g.id)).size!==u.length||new Set(u.map(g=>g.asset.path)).size!==u.length||u.some(g=>!T.has(g.id)))throw new Error("Unexpected or duplicate private verifier asset.");for(let g of w){let L=u.find(Ae=>Ae.id===g.id);if(!L||g.visibility!=="verifier")throw new Error("Training bundle requires its private verifier asset.");O(L,g)}z(f,"reward-binding.json",{kind:"reward_binding_v1",binding:x.binding,rewards:x.rewards,assets:u})}else if(e.verifierAssets?.length)throw new Error("Private verifier assets require a published Reward binding.");let S=t.metadata.tasksetOutputContract;S&&typeof S=="object"&&"responsePath"in S&&ie.parse({jsonSchema:null,renderer:null,...S}),z(f,"environment.json",{schemaVersion:"openpond.harnessEnvironment.v1",environment:{...t.environment,metadata:{...t.environment.metadata,policySystemPrompt:t.objective}},capabilities:t.capabilities,policy:t.policy,outputContract:t.metadata.tasksetOutputContract?.mode==="text"?null:t.metadata.tasksetOutputContract??null}),z(f,"graders.json",{schemaVersion:"openpond.harnessGraders.v1",graders:t.graders,fixtures:t.graderFixtures}),z(f,"tool-contract.json",{schemaVersion:"openpond.harnessToolContract.v1",toolNames:t.environment.toolNames,actionBindings:t.environment.actionBindings??[],capabilities:t.capabilities,connectedAppScopes:t.policy.connectedAppScopes});let H=i?t.tasks.filter(u=>u.id===e.qualificationTaskId):t.tasks.filter(u=>u.split==="train");if(H.length>0)z(f,i?"dataset/qualification.json":"dataset/train.json",{schemaVersion:i?"openpond.qualificationDataset.v1":"openpond.datasetSplit.v1",...i?{selectedTaskId:e.qualificationTaskId}:{split:"train"},tasks:H}),Ve({assets:f,tasks:H,tasksetAssetBytes:e.tasksetAssetBytes??new Map});else if(t.datasetArtifact)z(f,"dataset/artifact.json",t.datasetArtifact);else throw new Error("Taskset has no training dataset.");let E=Object.values(t.learningSignals).flat().filter(u=>u.approved);for(let u of E){let w=Ee(u);f.set(`evidence/signals/${$(w)}.json`,w)}let A={id:`dataset_${t.id}_r${t.revision}`,contentHash:d({taskset:v,sourceRefs:t.sourceRefs,datasetArtifact:t.datasetArtifact??null,...i?{executionMode:"qualification",tasks:H}:{trainTasks:H}})},y=E.length>0?{id:`evidence_${t.id}_r${t.revision}`,contentHash:d({taskset:v,harnessRelease:m,datasetRelease:A,profileRelease:b,signals:E})}:null,_=Te.parse({schemaVersion:"openpond.resolvedTrainingBundle.v1",...i?{executionMode:"qualification"}:{},...e.qualificationSamples!==void 0?{qualificationSamples:e.qualificationSamples}:{},projection:"trainer",harnessRelease:m,datasetRelease:A,evidenceSetRelease:y,files:[...f.entries()].sort(([u],[w])=>u.localeCompare(w)).map(([u,w])=>({path:u,sha256:$(w),sizeBytes:w.byteLength}))}),C=He.parse({..._,contentHash:d(_)}),j=Re.parse({schemaVersion:"openpond.harnessRunManifest.v1",...i?{executionMode:"qualification"}:{},...e.qualificationSamples!==void 0?{qualificationSamples:e.qualificationSamples}:{},id:`manifest_${e.modelRunId}_${e.approval.approvalHash.slice(0,16)}`,harnessRelease:r,datasetRelease:A,evidenceSets:y?[y]:[],model:{source:s.baseModel.modelId,revision:s.baseModel.revision,artifactHash:null,tokenizerRevision:s.baseModel.tokenizerRevision,chatTemplateHash:s.baseModel.chatTemplateHash},recipe:{method:s.recipe.method,version:"openpond.trainingRecipe.v1",configHash:d(s.recipe)},runtimeTarget:e.runtime,computeTarget:e.compute,engine:e.engine,resolvedBundleHash:C.contentHash,secretLeaseRefs:e.secretLeaseRefs??[],approval:e.approval,createdAt:a.updatedAt});return{manifest:xe.parse({...j,contentHash:d(j)}),resolvedBundleManifest:C,assets:f,profileRelease:b,harnessRelease:m,tasksetRelease:v,datasetRelease:A,evidenceSetRelease:y}}k(ut,"buildTasksetTrainingBundle");function Ve(e){let t=new Set;for(let a of e.tasks)for(let r of a.assets??[]){t.add(r.artifactRef);let o=e.tasksetAssetBytes.get(r.artifactRef);if(!o)throw new Error(`Resolved Training Bundle is missing Work asset ${r.artifactRef}.`);if(o.byteLength!==r.sizeBytes||$(o)!==r.sha256)throw new Error(`Resolved Training Bundle Work asset ${r.artifactRef} failed immutable verification.`);e.assets.set(r.artifactRef,o)}for(let a of e.tasksetAssetBytes.keys())if(!t.has(a))throw new Error(`Resolved Training Bundle received unexpected Work asset ${a}.`)}k(Ve,"addTasksetAssets");function z(e,t,a){e.set(t,Ee(a))}k(z,"addJsonAsset");function Ee(e){return Buffer.from(D(e),"utf8")}k(Ee,"bytes");function ye(e){return d({id:e.id,contentHash:e.contentHash})}k(ye,"releasedRefHash");export{Me as a,je as b,Pe as c,xe as d,He as e,Be as f,ot as g,dt as h,Le as i,pt as j,mt as k,ut as l};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{b as K,c as q}from"./chunk-ULJZ7NUF.js";import{d as C,e as g}from"./chunk-JCLTFDVW.js";import{a as r}from"./chunk-FTQLQJQV.js";var re=new URL(g).hostname,G=new URL(C).hostname,se=`${g}/opchat/v1`;function s(e){if(!e)return null;let n=e.trim();return n?n.replace(/\/+$/,""):null}r(s,"normalizeBaseUrl");function H(e){let n=s(e);if(!n)return null;try{let o=new URL(n).hostname.toLowerCase();if(o===re)return g;if(o===G||o===`www.${G}`||o==="openpond.live"||o==="www.openpond.live")return g;if(o.startsWith("api."))return n}catch{return null}return null}r(H,"mapUiBaseToApiBase");function D(e,n){let t=s(process.env.OPENPOND_API_URL);if(t)return t;let o=s(e?.apiBaseUrl);if(o)return o;let a=s(n.apiBaseUrl);if(a)return a;let l=H(process.env.OPENPOND_BASE_URL);return l||(H(e?.baseUrl||n.baseUrl)??g)}r(D,"resolvePublicApiBaseUrl");function B(e,n,t){return ae(e,n,t)}r(B,"resolveHostedChatApiBaseUrl");function ae(e,n,t){let o=typeof process<"u"?process.env:{};return S(o.OPENPOND_OPCHAT_API_URL)??S(e?.chatApiBaseUrl??n.chatApiBaseUrl)??S(o.OPENPOND_CHAT_API_URL)??ie(t)}r(ae,"resolveOpChatApiBaseUrl");function S(e){let n=s(e);if(!n)return null;try{let t=new URL(n),o=t.pathname.split("/").filter(Boolean),a=o.findIndex(i=>i.toLowerCase()==="opchat");return a>=0?(t.pathname=`/${[...o.slice(0,a+1),"v1"].join("/")}`,t.search="",t.hash="",s(t.toString())??null):o.findIndex(i=>i.toLowerCase()==="v1")>=0?(t.pathname="/opchat/v1",t.search="",t.hash="",s(t.toString())??null):(t.pathname=`${t.pathname.replace(/\/+$/,"")}/opchat/v1`.replace(/\/{2,}/g,"/"),t.search="",t.hash="",s(t.toString())??null)}catch{return null}}r(S,"normalizeOpChatApiBaseUrl");function ie(e){return S(e)??se}r(ie,"opChatBaseFromPublicApiBase");function A(e){return e?.trim()?e.trim():"production"}r(A,"deriveEnvironment");function N(e,n=process.env){let t=[e?.apiKey,e?.session?.token,e?.token,n.OPENPOND_API_KEY];for(let o of t){let a=typeof o=="string"?o.trim():"";if(a)return a}return null}r(N,"accountToken");function y(e,n){return!!(e&&n&&e.toLowerCase()===n.toLowerCase())}r(y,"handleEquals");function w(e,n){return s(e)===s(n)}r(w,"baseUrlEquals");function M(e,n){return`${e?.trim().toLowerCase()||""}|${s(n)??"default"}`}r(M,"profileKey");function E(e){return s(e?.baseUrl)}r(E,"selectorBaseUrl");function x(e){let n=s(e.baseUrl);return n?{handle:e.handle,baseUrl:n}:{handle:e.handle}}r(x,"selectorFromAccount");function d(e){let n=typeof e?.handle=="string"?e.handle.trim():"";if(!n)return null;let t=s(e?.baseUrl);return t?{handle:n,baseUrl:t}:{handle:n}}r(d,"normalizeActiveProfile");function R(e,n){if(!y(e.handle,n.handle))return!1;let t=E(n);return t?w(e.baseUrl,t):!s(e.baseUrl)}r(R,"accountMatchesSelector");function $(e,n){if(!y(e.handle,n.handle))return!1;let t=E(n);return t?w(e.baseUrl,t):!s(e.baseUrl)}r($,"profileMatchesSelector");function J(e,n,t){let o=Array.isArray(e.accounts)?e.accounts:[],a=n||process.env.OPENPOND_ACCOUNT?d({handle:n||process.env.OPENPOND_ACCOUNT||"",baseUrl:t??process.env.OPENPOND_BASE_URL??null}):d(e.activeProfile);if(a){let l=o.find(u=>R(u,a));if(l)return l;let i=o.filter(u=>y(u.handle,a.handle));return i.length===1?i[0]??null:null}return o[0]?o[0]:null}r(J,"findActiveAccount");function V(e){let n=Array.isArray(e.accounts)?e.accounts:[],t=d(e.activeProfile)??(n[0]?x(n[0]):null);return j(n.map(o=>({handle:o.handle,baseUrl:s(o.baseUrl),apiBaseUrl:s(o.apiBaseUrl),chatApiBaseUrl:s(o.chatApiBaseUrl),environment:A(o.environment),isActive:t?R(o,t):!1,hasApiKey:!!o.apiKey?.trim(),hasSessionToken:!!(o.session?.token?.trim()||o.token?.trim()),sessionAppId:o.session?.appId??null,sessionConversationId:o.session?.conversationId??null})))}r(V,"fallbackProfilesFromConfig");function j(e){let n=new Map;for(let t of e){let o=s(t.baseUrl),a=`${t.handle.toLowerCase()}|${o??"default"}`,l={...t,baseUrl:o,apiBaseUrl:s(t.apiBaseUrl),chatApiBaseUrl:s(t.chatApiBaseUrl),environment:A(t.environment),isActive:t.isActive},i=n.get(a);(!i||l.isActive&&!i.isActive||l.hasApiKey&&!i.hasApiKey)&&n.set(a,l)}return Array.from(n.values())}r(j,"normalizeProfiles");function W(e){return e.hasApiKey||e.hasSessionToken?"signed_in":"signed_out"}r(W,"profileAuthHealth");function le(e,n){return e?{reachable:e.reachable,authenticated:e.authenticated,apiBase:e.apiBase||n,latencyMs:e.latencyMs,status:e.status,service:e.service,checkedAt:e.checkedAt,error:e.error??null}:null}r(le,"normalizeHealth");function X(e){let n=e?.account;return n?{id:n.id??null,email:n.email??null,name:n.name??null,handle:n.handle??null,image:n.image??null,timezone:n.timezone??null,isAdmin:n.isAdmin??null,isVerified:n.isVerified??null,dailyAgentAppId:n.dailyAgentAppId??null,dailyAgentDeploymentId:n.dailyAgentDeploymentId??null,credits:n.credits??null}:null}r(X,"normalizeProfile");function ce(e){return(e??[]).map(n=>({...n,id:n.id||n.userProductId||n.openPondProductId||n.name,name:n.name,type:n.type,status:n.status,isActive:n.isActive??null,price:n.price??null,currency:n.currency??null,credits:n.credits??null}))}r(ce,"normalizeProducts");function ue(e){return e.handle.trim().toLowerCase()==="default"&&!s(e.baseUrl)&&!e.hasApiKey&&!e.hasSessionToken}r(ue,"isEmptyDefaultProfile");function de(e){let n=e?.trim();return n?n.length>=12?`\u2022\u2022\u2022\u2022\u2022\u2022${n.slice(-6)}`:"\u2022\u2022\u2022\u2022\u2022\u2022":null}r(de,"apiKeyHint");function pe(e){return e?.auth?.authType!=="openpond-api-key"||!e.auth.keyAccess?null:{ownerType:e.auth.keyAccess.ownerType,teamId:e.auth.keyAccess.teamId,scopes:e.auth.scopes}}r(pe,"apiKeyAccess");function _(e){let{config:n,profiles:t,account:o,token:a,apiBaseUrl:l,accountResponse:i,accountProfiles:u,health:P,authFailed:f,error:h}=e,k=B(o,n,l),m=X(i??null),Q=d(n.activeProfile),U=(o?x(o):null)??Q,O=m?.handle||o?.handle||U?.handle||null,I=(U?t.find(c=>$(c,U)):null)??t.find(c=>c.isActive)??null,Z=f?"auth_error":a?"signed_in":"signed_out",ee=m?.name||m?.handle||m?.email||O||"Signed out",ne=s(I?.baseUrl||o?.baseUrl||C),F=A(I?.environment||o?.environment),v=d(U)??(O?d({handle:O,baseUrl:I?.baseUrl??o?.baseUrl}):null),te=(t.length>0?t:O?[{handle:O,baseUrl:E(v)??s(o?.baseUrl),apiBaseUrl:l,chatApiBaseUrl:k,environment:F,isActive:!0,hasApiKey:!!a,hasSessionToken:!1,sessionAppId:null,sessionConversationId:null}]:[]).filter(c=>!ue(c));return{state:Z,activeProfile:v,label:ee,email:m?.email??null,avatarUrl:m?.image??null,environment:F,baseUrl:ne,apiBaseUrl:l,chatApiBaseUrl:k,creditsLabel:m?.credits??null,profile:m,products:ce(i?.products),apiHealth:le(P??null,l),accounts:te.map(c=>{let T=s(c.baseUrl),oe=n.accounts?.find(z=>y(z.handle,c.handle)&&w(z.baseUrl,T)),L=u?.[M(c.handle,T)]??null,b=X(L?.response??null);return{handle:c.handle,baseUrl:T,apiBaseUrl:s(c.apiBaseUrl),chatApiBaseUrl:s(c.chatApiBaseUrl),environment:A(c.environment),isActive:v?$(c,v):!1,authHealth:L?.authFailed?"auth_error":W(c),displayLabel:b?.name||b?.handle||b?.email||c.handle,email:b?.email??null,avatarUrl:b?.image??null,apiKeyHint:de(oe?.apiKey),apiKeyAccess:pe(L?.response??null)}}),error:h??P?.error??null}}r(_,"toAccountState");async function fe(e){try{return j(await q())}catch{return V(e)}}r(fe,"loadProfiles");async function p(e,n){let t=await K(),o=await fe(t),a=J(t,e,n),l=N(a),i=D(a,t),u=B(a,t,i);return{config:t,profiles:o,account:a,token:l,apiBaseUrl:i,chatApiBaseUrl:u,accountState:_({config:t,profiles:o,account:a,token:l,apiBaseUrl:i})}}r(p,"loadOpenPondAccountContext");import{spawn as me}from"node:child_process";function Y(e,n=process.platform){return n==="darwin"?{command:"open",args:[e]}:n==="win32"?{command:"rundll32.exe",args:["url.dll,FileProtocolHandler",e]}:{command:"xdg-open",args:[e]}}r(Y,"resolveSystemBrowserCommand");async function he(e,n={}){let t=n.command??Y(e),o=n.handoffTimeoutMs??1500;return new Promise(a=>{let l=!1,i=null,u=r(f=>{l||(l=!0,i&&clearTimeout(i),a(f))},"finish"),P=me(t.command,t.args,{detached:!1,shell:!1,stdio:"ignore",windowsHide:!0});P.once("error",f=>{let h=f.code;u({opened:!1,error:h?`browser launcher ${t.command} failed (${h})`:`browser launcher ${t.command} failed`})}),P.once("close",(f,h)=>{if(f===0){u({opened:!0});return}let k=h?`signal ${h}`:`code ${f??"unknown"}`;u({opened:!1,error:`browser launcher ${t.command} exited with ${k}`})}),i=setTimeout(()=>{P.unref(),u({opened:!0})},o),i.unref()})}r(he,"openUrlWithSystemBrowser");export{p as a,he as b};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{a as q}from"./chunk-FEAKTSRS.js";import{a as J,b as S}from"./chunk-R5GRESW3.js";import{$ as j,Z as $}from"./chunk-6I5AUTVO.js";import{aa as _,ja as H}from"./chunk-5ZNE43XC.js";import{yb as N}from"./chunk-QAFXQHHG.js";import{v as I}from"./chunk-ZY32SZ2P.js";import{n as k}from"./chunk-RCT3O3HQ.js";import{A as g}from"./chunk-X2J2P5ZT.js";import{a as o}from"./chunk-FTQLQJQV.js";import{randomUUID as O,createHash as W}from"node:crypto";import{mkdtemp as F,mkdir as G,writeFile as A,rm as U}from"node:fs/promises";import D from"node:os";import h from"node:path";var w=g.object({score:g.number().finite().min(0).max(1).nullable(),passed:g.boolean(),feedback:g.string().max(2e4),evidenceRefs:g.array(g.string().max(240)).max(1e3).default([])}).strict().refine(e=>e.score!==null||!e.passed,{message:"Unscorable verifiers cannot pass.",path:["passed"]});function L(e){if(e==="sandbox_process")throw new Error("verifier_sandbox_process_required")}o(L,"assertIsolatedVerifierRuntime");var ue=o(async e=>{let r=H(e.packageValue);if(e.grader.runtime!=="sandbox_process")throw new Error("Select the sandbox process runtime for a local file grader.");if(!r.taskset.graders.some(s=>k(s)===k(e.grader)))throw new Error("The private grader differs from its package.");if(!r.taskset.tasks.some(s=>k(s)===k(e.task)))throw new Error("The private case differs from its package.");await e.authorize(),e.signal?.throwIfAborted();let t=await F(h.join(D.tmpdir(),"profile-private-grade-")),c=O();try{let s=new Map;for(let a of r.files.filter(f=>f.asset.visibility!=="policy")){let f=a.asset.path;if(h.isAbsolute(f)||f.split(/[\\/]/).some(n=>!n||n==="."||n===".."))throw new Error("Private grader asset path invalid.");let l=s.get(f);if(l){if(l.contentHash!==a.asset.contentHash||l.sizeBytes!==a.asset.sizeBytes)throw new Error("Private grader assets declare conflicting bytes at the same path.");continue}s.set(f,{contentHash:a.asset.contentHash,sizeBytes:a.asset.sizeBytes});let x=h.join(t,"package",f);await G(h.dirname(x),{recursive:!0,mode:448}),await A(x,_(a),{mode:256})}await A(h.join(t,"request.json"),JSON.stringify({task:e.task,attempt:e.evidence,input:e.task.input,output:e.evidence.output,artifacts:"artifacts"in e.evidence?e.evidence.artifacts:[],expectedOutput:e.task.expectedOutput}),{mode:256});let i=`import fs from 'node:fs/promises'; const module=await import(${JSON.stringify("./package/"+e.grader.verifierRef.path)}); const result=await module[${JSON.stringify(e.grader.exportName??"verify")}](JSON.parse(await fs.readFile('request.json','utf8'))); console.log(JSON.stringify(result));`;await A(h.join(t,"runner.mjs"),i,{mode:256});let m=await q({authorize:o(async()=>(await e.authorize(),e.signal?.throwIfAborted(),{candidateId:c,candidateRevision:1,ownerId:c,sessionId:c,turnId:c,sourceRoot:t,writablePaths:[]}),"authorize")})({candidateId:c,sessionId:c,turnId:c,expectedRevision:1,command:"/runtime/node --max-old-space-size=512 runner.mjs",timeoutMs:e.grader.timeoutMs,maxOutputBytes:7e4,signal:e.signal});if(await e.authorize(),e.signal?.throwIfAborted(),m.code!==0||m.timedOut||m.stdoutTruncated||m.stderrTruncated)throw new Error("Private grading sandbox did not complete.");return w.parse(JSON.parse(m.stdout))}finally{await U(t,{recursive:!0,force:!0})}},"executeLocalProfileVerifier");function pe(e){return async r=>{if(!r.manifest)throw new Error("The hosted grader requires its admitted manifest.");await r.authorize(),r.signal?.throwIfAborted();let t="artifacts"in r.evidence&&Array.isArray(r.evidence.artifacts)?r.evidence.artifacts.map(({reference:a,title:f,contentType:l})=>({reference:a,title:f,contentType:l})):[],c="caseOwner"in r.evidence?r.evidence.caseOwner:null;if(!c?.sessionId||!c.turnId)throw new Error("The private grader has no sealed case owner.");let s=Buffer.from(JSON.stringify({manifest:r.manifest,packageValue:r.packageValue,graderId:r.grader.id,taskId:r.task.id,evidence:{...r.evidence,artifacts:t}}));if(s.length>2e7)throw new Error("The private grading package exceeds its transport limit.");let i={callId:O(),sessionId:c.sessionId,turnId:c.turnId,sha256:W("sha256").update(s).digest("hex"),sizeBytes:s.length,timeoutMs:r.grader.timeoutMs},d=o((a,f=12e4)=>e.request(j.parse({contractVersion:$,requestId:O(),operation:"profile-evaluations/grade",params:a}),f),"request");for(let a=0;a<s.length;a+=98304)await r.authorize(),r.signal?.throwIfAborted(),await d({...i,action:"upload",offset:a,contentsBase64:s.subarray(a,a+98304).toString("base64")});let m=await d({...i,action:"execute"},r.grader.timeoutMs+12e4);return await r.authorize(),r.signal?.throwIfAborted(),w.parse(m)}}o(pe,"createHostedProfileVerifier");import{Worker as K}from"node:worker_threads";async function b(e){e.signal?.throwIfAborted(),S(e);let{javascriptVerifierWorkerSource:r}=await import("./javascript-verifier-worker-source-LGRP74W4.js");e.signal?.throwIfAborted();let t=e.signal,c={source:e.source,exportName:e.exportName,value:e.value,timeoutMs:e.timeoutMs,maxResultBytes:e.maxResultBytes,deterministic:e.deterministic===!0,errorPrefix:e.errorPrefix},s=o(i=>new Error(`${e.errorPrefix}_${i}`),"error");return new Promise((i,d)=>{let m=new K(r,{eval:!0,workerData:c,execArgv:[],env:{},resourceLimits:{maxOldGenerationSizeMb:64,maxYoungGenerationSizeMb:16,stackSizeMb:4}}),a=!1,f=o(n=>{a||(a=!0,clearTimeout(x),t?.removeEventListener("abort",l),m.terminate().then(()=>{"error"in n?d(n.error):i(n.result)},d))},"finish"),l=o(()=>f({error:t?.reason instanceof Error?t.reason:s("cancelled")}),"cancel"),x=setTimeout(()=>f({error:s("timeout")}),e.timeoutMs);t?.addEventListener("abort",l,{once:!0}),m.once("error",n=>f({error:n})),m.once("exit",()=>{a||f({error:s("worker_exited_without_result")})}),m.once("message",n=>{try{if(!n||typeof n!="object"||!("ok"in n))throw s("worker_invalid_response");if(n.ok!==!0)throw new Error("error"in n&&typeof n.error=="string"?n.error:`${e.errorPrefix}_execution_failed`);if(!("result"in n))throw s("worker_invalid_response");I(n.result,e.maxResultBytes),f({result:n.result})}catch(y){f({error:y instanceof Error?y:s("worker_invalid_response")})}}),t?.aborted&&l()})}o(b,"executeJavaScriptIsolateInWorker");import{spawn as Y}from"node:child_process";var B=class extends Error{static{o(this,"JavaScriptVerifierHostTimeoutError")}timeoutMs;elapsedMs;constructor(r,t){super("verifier_timeout"),this.timeoutMs=r,this.elapsedMs=t,this.name="JavaScriptVerifierHostTimeoutError"}};async function be(e){e.signal?.throwIfAborted(),S(e);let{javascriptIsolateProcessSource:r}=await import("./javascript-isolate-process-source-YAT3GPW4.js");e.signal?.throwIfAborted();let{signal:t,stripTypeScript:c,...s}=e,i=o(m=>new Error(`${e.errorPrefix}_${m}`),"error"),d=`globalThis.__openpondIsolateInput = JSON.parse(${JSON.stringify(JSON.stringify(s))});
|
|
3
|
-
${c?`globalThis.__openpondIsolateInput.source = require("node:module").stripTypeScriptTypes(globalThis.__openpondIsolateInput.source, { mode: "strip" });
|
|
4
|
-
`:""}${r}`;return new Promise((m,a)=>{let f=performance.now(),l=Y("node",["--max-old-space-size=64","--input-type=commonjs","-"],{stdio:["pipe","pipe","pipe","ipc"],env:{PATH:process.env.PATH},windowsHide:!0}),x,n="",y=0,M=0,v=o(u=>{x??=u,l.kill("SIGKILL")},"stop"),T=o(()=>v(t?.reason instanceof Error?t.reason:i("cancelled")),"cancel"),P=e.errorPrefix==="verifier",R=!P,V=o(()=>v(e.errorPrefix==="candidate"?new J("candidate_timeout"):e.errorPrefix==="verifier"?new B(e.timeoutMs,performance.now()-f):i("timeout")),"timedOut"),E=setTimeout(V,P?3e4:e.timeoutMs);l.on("message",u=>{if(!P||R||!u||typeof u!="object"||!("type"in u)||u.type!=="execution_ready"){v(i("process_invalid_startup_message"));return}R=!0,clearTimeout(E),E=setTimeout(V,e.timeoutMs)}),t?.addEventListener("abort",T,{once:!0}),l.stdout.setEncoding("utf8"),l.stdout.on("data",u=>{y+=Buffer.byteLength(u),y>e.maxResultBytes+65536?v(i("process_response_too_large")):n+=u}),l.stderr.on("data",u=>{M+=u.byteLength,M>65536&&v(i("process_stderr_too_large"))}),l.once("error",u=>{x??=u}),l.stdin.on("error",u=>v(u)),l.once("close",u=>{if(clearTimeout(E),t?.removeEventListener("abort",T),x){a(x);return}try{if(u!==0)throw i("process_exited_without_result");if(!R)throw i("process_exited_before_ready");let p=JSON.parse(n);if(!p||typeof p!="object"||!("ok"in p))throw i("process_invalid_response");if(p.ok!==!0){let z="error"in p&&typeof p.error=="string"?p.error:`${e.errorPrefix}_execution_failed`;throw"executionError"in p&&p.executionError===!0?new J(z):new Error(z)}if(!("result"in p))throw i("process_invalid_response");I(p.result,e.maxResultBytes),m(p.result)}catch(p){a(p instanceof Error?p:i("process_invalid_response"))}}),l.stdin.end(d),t?.aborted&&T()})}o(be,"executeJavaScriptIsolateInProcess");async function Je(e){return L(e.runtime),w.parse(await b({...e,exportName:e.exportName??"verify",maxResultBytes:65536,errorPrefix:"verifier"}))}o(Je,"executeJavaScriptVerifierInWorker");function Ne(e){return N(e,C)}o(Ne,"aggregateTasksetEvaluationInWorker");var C=o(async({source:e,module:r,exportName:t,scores:c,timeoutMs:s,signal:i})=>{let d=/\.[cm]?ts$/.test(r)?(await import("node:module")).stripTypeScriptTypes(e,{mode:"strip"}):e;return b({source:d,exportName:t,value:c,timeoutMs:s,signal:i,maxResultBytes:1024,deterministic:!0,errorPrefix:"metric"})},"executeMetric");var He=C;import Q from"node:path";function We(e,r){let t=g.array(g.string().min(1).max(240)).max(16).parse(r.metadata.artifactAssetIds??[]);if(new Set(t).size!==t.length)throw new Error("An artifact fixture contains duplicate assets.");let c=0;return t.map(s=>{let i=e.files.filter(a=>a.asset.id===s),d=i[0];if(i.length!==1||!d||d.asset.visibility!=="host_private")throw new Error("Artifact fixtures require a unique private package asset.");let m=_(d);if((c+=m.length)>2e7)throw new Error("Artifact fixtures exceed their aggregate byte limit.");return{reference:{id:`fixture/${r.id}/${d.asset.path}`,contentHash:d.asset.contentHash,mediaType:d.asset.mediaType,sizeBytes:d.asset.sizeBytes},title:Q.posix.basename(d.asset.path),contentType:d.asset.mediaType,base64:Buffer.from(m).toString("base64")}})}o(We,"localGraderFixtureArtifacts");export{ue as a,pe as b,b as c,be as d,Je as e,We as f,Ne as g,He as h};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{b}from"./chunk-YMCF5GR2.js";import{ja as M}from"./chunk-CJDGLPNX.js";import{Qb as x,m as T,qb as A}from"./chunk-QAFXQHHG.js";import{n as c,o as S}from"./chunk-RCT3O3HQ.js";import{A as I}from"./chunk-X2J2P5ZT.js";import{a as R}from"./chunk-FTQLQJQV.js";function j(e,a,i){if(a==="agent_action"){let n=e.find(u=>u.name==="workspace_action_result"&&u.action==="profile_workflow_action")?.output;if(typeof n!="string")throw new Error("Profile Agent action evaluation did not produce a released action result.");return n}if(i==="completed"){let n=[...e].reverse().find(s=>s.name==="turn.completed"),r=n?.data?.providerResponse,o=n?.data;if(!r&&o?.turn?.status==="completed"){let s=[...e].reverse().find(t=>P(t)!==null);if(!s)throw new Error("Native Profile evaluation has no retained final answer.");let d=P(s);return e.filter(t=>P(t)===d).map(t=>t.output??"").join("")}if(typeof r?.requestId!="string"||!r.requestId||typeof r.contentHash!="string")throw new Error("Profile evaluation has no retained final provider response.");let p=e.filter(s=>s.name==="assistant.delta"&&s.data?.providerRequestId===r.requestId).map(s=>s.output??"").join("");if(c(p)!==r.contentHash)throw new Error("Profile evaluation final provider response differs from its retained trace.");return b(e)??p}return e.filter(n=>n.name==="assistant.delta"&&typeof n.output=="string").map(n=>n.output??"").join("")}R(j,"profileEvaluationOutput");function P(e){let a=e.data;return e.name==="assistant.delta"&&a?.provider==="codex"&&a.phase==="final_answer"&&typeof a.itemId=="string"?a.itemId:null}R(P,"nativeFinalAnswerItemId");async function _(e){let{store:a,manifest:i,receipt:n}=e;if(!n.metadata.retainedEvidenceRef)return null;let u=x.parse(n.metadata.retainedEvidenceRef),[r,o]=await Promise.all([a.getSession(u.sessionId),a.getTurn(u.turnId)]),p=r?.metadata?.profileEvaluationRun,s=i.profileEvaluation;if(!r||!o||o.sessionId!==r.id||!s||!r.currentProfile||c(r.currentProfile)!==c(e.profileRef)||c(p)!==c({id:i.id,contentHash:i.contentHash})||r.metadata?.taskId!==n.taskId||r.metadata?.seed!==n.seed||!o.completedAt||o.completedAt!==n.completedAt||o.startedAt!==n.startedAt||!o.harnessSnapshot||o.harnessSnapshot.harnessRelease.id!==s.harnessRelease.id||o.harnessSnapshot.harnessRelease.contentHash!==s.harnessRelease.contentHash||i.policy.kind!=="model"||!o.modelRef||o.modelRef.providerId!==i.policy.model.provider||o.modelRef.modelId!==i.policy.model.model)throw new Error("Retained Profile policy turn differs from its admitted case.");let d=await a.runtimeEventsForTurn(o.id);if(d.some(v=>v.turnId!==o.id)||c(d)!==n.traceHash)throw new Error("Retained Profile policy trace differs from its immutable receipt.");let t=j(d,s.target.kind,o.status);if(n.outputHash!==null&&c({text:t})!==n.outputHash)throw new Error("Retained Profile output differs from its immutable receipt.");let m=n.artifactRefs.flatMap(v=>{let y=d.filter(l=>(l.action==="work_output_save"||l.action==="sandbox_save_output")&&l.status==="completed").flatMap(l=>{let C=l.data&&typeof l.data=="object"?l.data:{},k=M.safeParse(C.outputRef);return k.success?[k.data]:[]}).filter(l=>l.sourceTaskId===r.id&&l.sourceTurnId===o.id&&`${r.id}/${l.id}/${l.revision}/${l.title}`===v.id&&l.sha256===v.contentHash&&l.sizeBytes===v.sizeBytes&&l.contentType===v.mediaType);if(y.length!==1)throw new Error("The case output has no unique sealed saved-file identity.");let h=y[0];if(h.location.kind!=="managed")return[];let H=`/api/work/outputs/${encodeURIComponent(h.location.fileId)}`;if(h.location.downloadPath!==H)throw new Error("The saved output has no canonical managed download route.");return[{id:h.id,title:h.title,revision:h.revision,contentType:h.contentType,sizeBytes:h.sizeBytes,sha256:h.sha256,downloadPath:H}]}),f=await a.listModelUsageRecords({sessionId:r.id,turnId:o.id,limit:1e4}),E=e.eventAfterId?d.findIndex(v=>v.id===e.eventAfterId):-1;if(e.eventAfterId&&E<0)throw new Error("Profile trace cursor is unavailable in this case.");let g=E+1,q=Math.max(1,Math.min(250,e.eventLimit??100)),w=d.slice(g,g+q);return{ref:u,prompt:o.prompt,output:n.outputHash===null?null:{text:t},partialOutput:n.outputHash===null&&t?{text:t}:null,error:o.error,events:w,eventCount:d.length,nextEventCursor:g+w.length<d.length?w.at(-1).id:null,files:m,usage:f,usageCoverage:f.length===1e4?"partial":"complete"}}R(_,"readProfileEvaluationPolicyEvidence");var W=I.object({runId:I.string().trim().min(1).max(240),receiptId:I.string().trim().min(1).max(500).optional(),eventAfterId:I.string().trim().min(1).max(500).optional(),eventLimit:I.number().int().min(1).max(250).optional(),manifest:A.optional()}).strict().refine(e=>e.receiptId||!e.eventAfterId&&!e.eventLimit,"Select a case before requesting its trace page.").refine(e=>!e.manifest||e.receiptId,"Interrupted-run inspection requires one exact case.");async function D(e){let a=await e.store.getProfileEvaluationRun(e.runId);if(a&&c(a.profileRef)!==c(e.profileRef))throw new Error("Profile evaluation run is unavailable in the selected Profile.");let i=a?.manifest??e.manifest;if(!i||!a&&!e.receiptId)throw new Error("Profile evaluation run is unavailable in the selected Profile.");if(a){if(e.manifest&&e.manifest.contentHash!==a.manifest.contentHash)throw new Error("Profile evaluation run differs from its pinned manifest.")}else if(S(i,"Interrupted Profile evaluation manifest"),i.id!==e.runId||i.profileEvaluation?.profileId!==e.profileRef.profileId||e.profileRef.source==="openpond_git"&&i.metadata.profileRepositoryId!==e.profileRef.repositoryId)throw new Error("Profile evaluation run is unavailable in the selected Profile.");let n=i.population.map((r,o)=>({member:r,index:o})).filter(({member:r})=>!e.receiptId||r.receiptId===e.receiptId);if(e.receiptId&&n.length!==1)throw new Error("Profile evaluation case is unavailable in the selected run.");let u=await Promise.all(n.map(async({member:r,index:o})=>{let p=a?null:await e.store.getProfileEvaluationReceipt(r.receiptId),s=a?.receiptRefs[o]??(p?{id:p.id,contentHash:p.contentHash}:null),d=a?.gradeRefs[o]??p?.graderEvidenceRefs[0];if(!s||!d)throw new Error("Profile evaluation run has incomplete case evidence.");let[t,m]=await Promise.all([e.store.getProfileEvaluationReceipt(s.id),e.store.getProfileEvaluationGrade(d.contentHash)]);if(!t||!a&&!T(t)||t.contentHash!==s.contentHash||t.id!==r.receiptId||t.taskId!==r.taskId||t.seed!==r.seed||t.runManifest.id!==i.id||t.runManifest.contentHash!==i.contentHash||!m||m.contentHash!==d.contentHash||!t.graderEvidenceRefs.some(f=>f.id===d.id&&f.contentHash===d.contentHash))throw new Error("Profile evaluation case evidence differs from its retained run.");return{taskId:r.taskId,seed:r.seed,receiptId:t.id,receiptHash:t.contentHash,traceHash:t.traceHash,outputHash:t.outputHash,score:m.score,passed:m.passed,gradingStatus:m.gradingStatus,failureClass:m.failureClass,artifactCount:t.artifactRefs.length,latencyMs:t.latencyMs,costUsd:t.costUsd,terminal:t.terminal,feedback:m.components.map(f=>({graderId:f.graderId,graderVersion:f.graderVersion,score:f.score,passed:f.passed,feedback:f.feedback})),...e.receiptId?{receipt:t,evidence:await _({store:e.store,profileRef:e.profileRef,manifest:i,receipt:t,eventAfterId:e.eventAfterId,eventLimit:e.eventLimit})}:{}}}));return{runId:i.id,sourceRevision:i.profileEvaluation?.sourceRevision??null,cases:u}}R(D,"inspectProfileEvaluationRun");export{j as a,W as b,D as c};
|