openpond 0.2.70 → 0.2.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app-server.js +1 -1
- package/dist/chunks/{acp-QTA6IU6W.js → acp-VWPJ2EL4.js} +1 -1
- package/dist/chunks/{acp-agent-N77HPAYQ.js → acp-agent-OZHZMQ6R.js} +1 -1
- package/dist/chunks/{actions-command-BZQCUDMD.js → actions-command-AXGXBU75.js} +1 -1
- package/dist/chunks/{app-layer-YQQNLIXA.js → app-layer-OHPIYEOJ.js} +1 -1
- package/dist/chunks/{app-server-evaluations-RRLYWLPK.js → app-server-evaluations-Y5UEF2Y7.js} +1 -1
- package/dist/chunks/{app-server-harness-services-XXM336NU.js → app-server-harness-services-GUHAIIPS.js} +1 -1
- package/dist/chunks/{app-server-runtime-B7AMBGQZ.js → app-server-runtime-CH5STRJP.js} +1 -1
- package/dist/chunks/{apps-WG7WY5CB.js → apps-DNLT6P4J.js} +1 -1
- package/dist/chunks/{chunk-MOXIGLN2.js → chunk-23YW5PAQ.js} +1 -1
- package/dist/chunks/{chunk-ZDEIVUUI.js → chunk-27OJ2OLP.js} +1 -1
- package/dist/chunks/{chunk-NSSZ2ZIU.js → chunk-2EAZB2MW.js} +1 -1
- package/dist/chunks/{chunk-DRLP7GIU.js → chunk-2GEZ3ZY7.js} +1 -1
- package/dist/chunks/{chunk-PAYFJHPO.js → chunk-2PVW2XFF.js} +1 -1
- package/dist/chunks/{chunk-Y2WNZWT2.js → chunk-2Q6FTL4C.js} +1 -1
- package/dist/chunks/{chunk-KP2MYTP5.js → chunk-2QHB5P2K.js} +1 -1
- package/dist/chunks/{chunk-FNGZ4UDZ.js → chunk-33UVQ7DU.js} +1 -1
- package/dist/chunks/{chunk-M4ZHFDRJ.js → chunk-3JVZ7OCQ.js} +1 -1
- package/dist/chunks/{chunk-4BUM6JEC.js → chunk-3JYPUOK4.js} +1 -1
- package/dist/chunks/{chunk-DXJC3QW7.js → chunk-3VT2PPKW.js} +1 -1
- package/dist/chunks/{chunk-Z33RVGP6.js → chunk-5LKEVB2P.js} +1 -1
- package/dist/chunks/{chunk-P4QM63L3.js → chunk-5ZBDHIIE.js} +1 -1
- package/dist/chunks/{chunk-WD4KAKEX.js → chunk-64EDQ7UV.js} +1 -1
- package/dist/chunks/{chunk-OL3L3U36.js → chunk-6BTX66SV.js} +1 -1
- package/dist/chunks/{chunk-KU4TPDPH.js → chunk-6LAGMWJE.js} +1 -1
- package/dist/chunks/{chunk-65FJWWXG.js → chunk-6YR5IYHH.js} +1 -1
- package/dist/chunks/{chunk-AUO5DCEU.js → chunk-73COPJ32.js} +1 -1
- package/dist/chunks/{chunk-KDER7R45.js → chunk-7PDF2UX2.js} +1 -1
- package/dist/chunks/{chunk-SO4GMSNP.js → chunk-7SOHV5BH.js} +1 -1
- package/dist/chunks/{chunk-XOPHFUUY.js → chunk-ASMQTMQB.js} +1 -1
- package/dist/chunks/{chunk-ESYPMD7Q.js → chunk-AT3ZYNX4.js} +1 -1
- package/dist/chunks/{chunk-NMMHXYDJ.js → chunk-AVEHWUML.js} +1 -1
- package/dist/chunks/{chunk-M4A7G4S5.js → chunk-B7SCVTE6.js} +1 -1
- package/dist/chunks/{chunk-DKOVZ6R2.js → chunk-BQNU4HZW.js} +1 -1
- package/dist/chunks/{chunk-UANH7U3Y.js → chunk-BTEBZYK3.js} +1 -1
- package/dist/chunks/{chunk-BU6MW65V.js → chunk-BYVE4TMU.js} +1 -1
- package/dist/chunks/{chunk-PNPV2LDE.js → chunk-BZS2PA4O.js} +1 -1
- package/dist/chunks/{chunk-AFYYIJ6K.js → chunk-C7NQPICU.js} +1 -1
- package/dist/chunks/{chunk-K7KBFM2T.js → chunk-CBD554GZ.js} +1 -1
- package/dist/chunks/{chunk-GYYJ47GX.js → chunk-CWE2N3JI.js} +1 -1
- package/dist/chunks/{chunk-ZYLLPRPU.js → chunk-CX4T7I47.js} +1 -1
- package/dist/chunks/{chunk-AQUZCWM3.js → chunk-D2V2Y3FB.js} +1 -1
- package/dist/chunks/{chunk-2PXKSAG6.js → chunk-DLOJG7LP.js} +1 -1
- package/dist/chunks/{chunk-5G7BQAUA.js → chunk-DNNWMOMG.js} +1 -1
- package/dist/chunks/{chunk-BGMAWETL.js → chunk-DNRC6TPJ.js} +1 -1
- package/dist/chunks/{chunk-5FSPDSAO.js → chunk-DUR32LJG.js} +1 -1
- package/dist/chunks/{chunk-JZKTBYNB.js → chunk-E57PUTV2.js} +1 -1
- package/dist/chunks/{chunk-OUJ63LMU.js → chunk-ER2VONWQ.js} +1 -1
- package/dist/chunks/{chunk-TAXCMCYZ.js → chunk-ESOIZG2G.js} +4 -4
- package/dist/chunks/{chunk-CCZ276IA.js → chunk-F2EUZG2W.js} +1 -1
- package/dist/chunks/{chunk-VJR2GNRY.js → chunk-FVMTQSVW.js} +1 -1
- package/dist/chunks/{chunk-YI6ME6PU.js → chunk-GG6PM7TB.js} +1 -1
- package/dist/chunks/{chunk-DDOIPTOM.js → chunk-GMA365GI.js} +1 -1
- package/dist/chunks/{chunk-JVMSN7LH.js → chunk-GR4MJJCE.js} +1 -1
- package/dist/chunks/{chunk-FHDH4OUA.js → chunk-GUWNSMGH.js} +1 -1
- package/dist/chunks/{chunk-AFH462DO.js → chunk-HT6ILPD6.js} +1 -1
- package/dist/chunks/{chunk-3Z4VM2LF.js → chunk-HUMNLSCV.js} +1 -1
- package/dist/chunks/{chunk-XYZV3FKD.js → chunk-I6KTJ3GH.js} +1 -1
- package/dist/chunks/{chunk-WZ35ICTE.js → chunk-IFMWAOBR.js} +1 -1
- package/dist/chunks/{chunk-R2FYCJL6.js → chunk-IJJ7FYZE.js} +1 -1
- package/dist/chunks/{chunk-XHACK2KR.js → chunk-IUYGQO2K.js} +1 -1
- package/dist/chunks/{chunk-55YD4UTW.js → chunk-IV2HEX3I.js} +1 -1
- package/dist/chunks/{chunk-U7X5ZLAL.js → chunk-JCHLDNCX.js} +1 -1
- package/dist/chunks/{chunk-7PKDJHT6.js → chunk-JH4RACOB.js} +1 -1
- package/dist/chunks/{chunk-65WRWLUD.js → chunk-JVEIK4RH.js} +1 -1
- package/dist/chunks/{chunk-PPF6EBTQ.js → chunk-K3WM4NEC.js} +1 -1
- package/dist/chunks/{chunk-EGP6DF34.js → chunk-KASHK2U5.js} +2 -2
- package/dist/chunks/{chunk-7OFD6TFD.js → chunk-LMLGEOKV.js} +1 -1
- package/dist/chunks/{chunk-QUNQM2E3.js → chunk-MPEK4ZNY.js} +1 -1
- package/dist/chunks/{chunk-SDHG6CKU.js → chunk-NDNSLCPE.js} +1 -1
- package/dist/chunks/chunk-NK2L5HA2.js +2 -0
- package/dist/chunks/{chunk-WCNPGKST.js → chunk-O4YHISU2.js} +1 -1
- package/dist/chunks/{chunk-RCQYEHHD.js → chunk-O5ZOW474.js} +1 -1
- package/dist/chunks/{chunk-OXQ2WFIH.js → chunk-OEAKX5TS.js} +1 -1
- package/dist/chunks/{chunk-54755JYM.js → chunk-OFV26C2U.js} +2 -2
- package/dist/chunks/{chunk-IO5DZUKL.js → chunk-OI4DAZ4U.js} +1 -1
- package/dist/chunks/{chunk-Q73RKX7I.js → chunk-OIIE5GUK.js} +1 -1
- package/dist/chunks/{chunk-CUB6PWAJ.js → chunk-OKPV6MBX.js} +6 -6
- package/dist/chunks/{chunk-N5EAVX4G.js → chunk-OOKHHOIU.js} +1 -1
- package/dist/chunks/{chunk-MIFVX5PK.js → chunk-OQ4RWCYI.js} +1 -1
- package/dist/chunks/{chunk-EWH64WRR.js → chunk-OTG77H7U.js} +1 -1
- package/dist/chunks/{chunk-7OKZCJHS.js → chunk-OXRN2257.js} +1 -1
- package/dist/chunks/{chunk-JVNKSU27.js → chunk-PJJSQ4ZI.js} +1 -1
- package/dist/chunks/{chunk-7TM25J6S.js → chunk-PXQZOVSV.js} +2 -2
- package/dist/chunks/{chunk-YAA7F5LI.js → chunk-QKGNAYSC.js} +1 -1
- package/dist/chunks/{chunk-67U7PAMU.js → chunk-QN4CFJQC.js} +1 -1
- package/dist/chunks/{chunk-HES4VP3D.js → chunk-RJY4EI46.js} +1 -1
- package/dist/chunks/{chunk-E2JB5OCO.js → chunk-RP4DPUN2.js} +1 -1
- package/dist/chunks/{chunk-QLGP2OAQ.js → chunk-SNBFWBJI.js} +1 -1
- package/dist/chunks/{chunk-ZK3ET5EP.js → chunk-SRJTQS2D.js} +3 -3
- package/dist/chunks/{chunk-XY7HFXLH.js → chunk-SVLVIYH2.js} +1 -1
- package/dist/chunks/{chunk-7NCM6GBN.js → chunk-TOWY6Y23.js} +1 -1
- package/dist/chunks/{chunk-VWWKWYSQ.js → chunk-TWLPZHH7.js} +1 -1
- package/dist/chunks/{chunk-Y4I6CFZJ.js → chunk-UGDBMRCT.js} +1 -1
- package/dist/chunks/{chunk-JQOVC35K.js → chunk-UKTPX2EE.js} +1 -1
- package/dist/chunks/{chunk-CO23RRN7.js → chunk-UMRQKE3W.js} +1 -1
- package/dist/chunks/{chunk-B66QCXH2.js → chunk-USKCFST5.js} +1 -1
- package/dist/chunks/{chunk-3A2Y7UK3.js → chunk-USTDWGR4.js} +1 -1
- package/dist/chunks/{chunk-CIZI6Z7D.js → chunk-VMW23TIZ.js} +1 -1
- package/dist/chunks/{chunk-Y4E5AAI7.js → chunk-VND53FAU.js} +1 -1
- package/dist/chunks/{chunk-4G3GTEVS.js → chunk-VSQPWLAG.js} +1 -1
- package/dist/chunks/{chunk-KCLMA2IH.js → chunk-VV4K5YPD.js} +1 -1
- package/dist/chunks/{chunk-7RJOCGQ6.js → chunk-WAUFXZ5B.js} +1 -1
- package/dist/chunks/{chunk-HG2YFMVU.js → chunk-WXG3G2O6.js} +1 -1
- package/dist/chunks/{chunk-PACLKDTN.js → chunk-XBAB3HMA.js} +1 -1
- package/dist/chunks/chunk-XJU47QS2.js +2 -0
- package/dist/chunks/{chunk-WGQ3FMRF.js → chunk-XKDOPNQ5.js} +1 -1
- package/dist/chunks/{chunk-EYTTZ5H4.js → chunk-XLZMSD5K.js} +1 -1
- package/dist/chunks/{chunk-Q7FBVLLB.js → chunk-XNPTLJ5Z.js} +1 -1
- package/dist/chunks/{chunk-ZIQJDTQB.js → chunk-XTT3K3TR.js} +1 -1
- package/dist/chunks/{chunk-Q7P34B2O.js → chunk-YFHQRDNQ.js} +1 -1
- package/dist/chunks/{chunk-UGFSAG4U.js → chunk-YG3HITOU.js} +1 -1
- package/dist/chunks/{chunk-DWF3FCY4.js → chunk-Z5R4OSGC.js} +1 -1
- package/dist/chunks/{chunk-JT5YQ52I.js → chunk-Z6HWSTEP.js} +1 -1
- package/dist/chunks/{chunk-4PUOWSDE.js → chunk-ZEOYNUHL.js} +1 -1
- package/dist/chunks/{chunk-6C6ZCYTL.js → chunk-ZG3DBXQG.js} +1 -1
- package/dist/chunks/{chunk-4KTGYHCE.js → chunk-ZMRP2A7K.js} +1 -1
- package/dist/chunks/cli-5JARGJOD.js +2 -0
- package/dist/chunks/{command-5AXJMFYC.js → command-AI3SMEAH.js} +3 -3
- package/dist/chunks/{configuration-command-5LUNWPOL.js → configuration-command-NPA46ZOT.js} +1 -1
- package/dist/chunks/{connected-app-executor-DHXZE4X3.js → connected-app-executor-DLC23O43.js} +1 -1
- package/dist/chunks/{connected-evidence-NWMPICKJ.js → connected-evidence-TVORI55Q.js} +1 -1
- package/dist/chunks/{connected-starting-assets-NRVXIKQ2.js → connected-starting-assets-WGGBWH4K.js} +1 -1
- package/dist/chunks/{continual-UCKQ2QLH.js → continual-UHQI2EQD.js} +1 -1
- package/dist/chunks/{core-commands-ZPBX35M2.js → core-commands-QNZUBKOC.js} +1 -1
- package/dist/chunks/{dataset-preparation-authoring-UUYFWWCT.js → dataset-preparation-authoring-OBMJLGA4.js} +1 -1
- package/dist/chunks/{datasets-6K3ZANIV.js → datasets-USJLJOEQ.js} +1 -1
- package/dist/chunks/{desktop-test-57INNJ76.js → desktop-test-IYHAOR47.js} +1 -1
- package/dist/chunks/{dist-2MKJC6HN.js → dist-C5XFRP53.js} +1 -1
- package/dist/chunks/{evaluation-coordination-B7CN4R2D.js → evaluation-coordination-UJENK4WQ.js} +1 -1
- package/dist/chunks/{experiment-improvements-G357VLDB.js → experiment-improvements-6GJMKIER.js} +1 -1
- package/dist/chunks/{experiments-BHQO26LJ.js → experiments-FZHILSC6.js} +1 -1
- package/dist/chunks/{experiments-signal-BI6NKETB.js → experiments-signal-E32CWBS4.js} +1 -1
- package/dist/chunks/{help-UQN5RUPA.js → help-32DLAPJR.js} +1 -1
- package/dist/chunks/host-profile-evaluation-tools-QAV2UGSB.js +2 -0
- package/dist/chunks/{host-profile-external-dataset-KSEPXY2S.js → host-profile-external-dataset-C6ZPMTX6.js} +1 -1
- package/dist/chunks/{hosted-app-server-composition-WDDO6F23.js → hosted-app-server-composition-5DVBKNV3.js} +1 -1
- package/dist/chunks/{hosted-experiment-improvement-VVYXQ65K.js → hosted-experiment-improvement-YQ24C54D.js} +1 -1
- package/dist/chunks/hosted-harness-runtime-KLIORGWV.js +2 -0
- package/dist/chunks/{hosted-profile-candidate-PTGQLPZO.js → hosted-profile-candidate-RCWFLOVJ.js} +1 -1
- package/dist/chunks/{hosted-profile-compiler-FS5R6CHJ.js → hosted-profile-compiler-UDG4BCEW.js} +1 -1
- package/dist/chunks/{hosted-profile-evaluation-control-UUEZEMXU.js → hosted-profile-evaluation-control-4R3L4FTK.js} +1 -1
- package/dist/chunks/{hosted-profile-evaluation-inspection-4F7OEF4T.js → hosted-profile-evaluation-inspection-NA4SSY7N.js} +1 -1
- package/dist/chunks/{hosted-profile-evaluation-preparation-LIJJZDHQ.js → hosted-profile-evaluation-preparation-B4BW6JTB.js} +1 -1
- package/dist/chunks/{hosted-tasksets-KCLNMPG5.js → hosted-tasksets-IUK3VWSL.js} +1 -1
- package/dist/chunks/{human-review-PX6DBIFT.js → human-review-D6QCZLYN.js} +1 -1
- package/dist/chunks/{import-2HEYPHPW.js → import-UCG75PN5.js} +1 -1
- package/dist/chunks/{learning-Y3UKNUGE.js → learning-3XDYMYBE.js} +1 -1
- package/dist/chunks/{learning-LSXBL5DB.js → learning-OR4CYV4B.js} +1 -1
- package/dist/chunks/local-harness-improvement-runtime-GZBMBZB2.js +2 -0
- package/dist/chunks/local-harness-taskset-review-YVP2ZQJG.js +2 -0
- package/dist/chunks/{model-projects-6YWVD2TS.js → model-projects-POZRHXTF.js} +1 -1
- package/dist/chunks/{opchat-66BCRKEZ.js → opchat-APJUUTT7.js} +1 -1
- package/dist/chunks/{opchat-bounded-chat-KQWXZVFN.js → opchat-bounded-chat-PBUSUAY2.js} +1 -1
- package/dist/chunks/{organizations-IOYWDOCC.js → organizations-WK6EZ6L3.js} +1 -1
- package/dist/chunks/{profile-YH6G3ZTD.js → profile-BQMS7ALQ.js} +1 -1
- package/dist/chunks/{project-action-payload-53OH6WDH.js → project-action-payload-CGV77JSA.js} +1 -1
- package/dist/chunks/{project-agent-RYVMKW2F.js → project-agent-XVFYTEUQ.js} +1 -1
- package/dist/chunks/{published-experiment-source-SDXUVPE7.js → published-experiment-source-2CYFIRBL.js} +1 -1
- package/dist/chunks/{refiner-profile-service-56VYLZQJ.js → refiner-profile-service-OLJHA4DI.js} +1 -1
- package/dist/chunks/{runtime-ISLJIGWC.js → runtime-32KYSVZR.js} +1 -1
- package/dist/chunks/{sandbox-command-DI45NRTV.js → sandbox-command-OY3VZXGG.js} +1 -1
- package/dist/chunks/{sandbox-template-T42MDUSR.js → sandbox-template-YOOSJ4FK.js} +1 -1
- package/dist/chunks/saved-work-L4KNWLZB.js +2 -0
- package/dist/chunks/{setup-D6TY2GWV.js → setup-EU6CMRXQ.js} +1 -1
- package/dist/chunks/{src-LF5X4RNQ.js → src-3DJR7OAH.js} +1 -1
- package/dist/chunks/{src-7RN7BF4W.js → src-HYOTHMRX.js} +111 -113
- package/dist/chunks/{standalone-experiment-turn-owner-TW5MTWIO.js → standalone-experiment-turn-owner-UYPA6XHW.js} +1 -1
- package/dist/chunks/{store-chat-resources-IRHBW2EC.js → store-chat-resources-HISLEZZM.js} +1 -1
- package/dist/chunks/{store-continual-support-reviews-3KK42L4I.js → store-continual-support-reviews-ORWHS57V.js} +1 -1
- package/dist/chunks/{store-conversation-serving-IVURK52V.js → store-conversation-serving-5UGYKEGJ.js} +1 -1
- package/dist/chunks/{store-create-improve-UTCLBXF2.js → store-create-improve-APLPTVYQ.js} +1 -1
- package/dist/chunks/{store-datasets-4AQOVAQY.js → store-datasets-HDW6IYBL.js} +1 -1
- package/dist/chunks/{store-evaluation-results-PK2P3IMH.js → store-evaluation-results-KB2UDCF3.js} +1 -1
- package/dist/chunks/{store-harness-workspaces-YEXB4IRV.js → store-harness-workspaces-TKX5PZWP.js} +1 -1
- package/dist/chunks/{store-human-review-O4BVHP25.js → store-human-review-IURNTX3C.js} +1 -1
- package/dist/chunks/{store-learned-preference-migration-validation-44SVX6YB.js → store-learned-preference-migration-validation-TH2LKQWV.js} +1 -1
- package/dist/chunks/{store-learning-SIUQIY5C.js → store-learning-WLUW2PWE.js} +1 -1
- package/dist/chunks/{store-learning-credentials-BUHR7SN6.js → store-learning-credentials-FDKCEDHK.js} +1 -1
- package/dist/chunks/{store-local-experiments-BHVTKPPE.js → store-local-experiments-M4V5RLHJ.js} +1 -1
- package/dist/chunks/{store-model-batch-review-RVAYUVK2.js → store-model-batch-review-DDZLWVTG.js} +1 -1
- package/dist/chunks/{store-model-configuration-AYFGMC5D.js → store-model-configuration-ATOFA5OH.js} +1 -1
- package/dist/chunks/{store-model-project-preparation-5DEIS7TB.js → store-model-project-preparation-ZRSCQEQR.js} +1 -1
- package/dist/chunks/{store-modification-recordings-LCPK6K2T.js → store-modification-recordings-YJIDUPVJ.js} +1 -1
- package/dist/chunks/{store-preference-comparison-5YVIQNVB.js → store-preference-comparison-JKURBESE.js} +1 -1
- package/dist/chunks/{store-task-inbox-L6IQTY26.js → store-task-inbox-L53OT6ZC.js} +1 -1
- package/dist/chunks/{store-task-inventory-QWS2C656.js → store-task-inventory-R2JJGAHW.js} +1 -1
- package/dist/chunks/{store-taskset-drafts-EAOOY6CR.js → store-taskset-drafts-FPNJPFPO.js} +1 -1
- package/dist/chunks/{store-training-FYXZU2FE.js → store-training-DIBW7OMP.js} +1 -1
- package/dist/chunks/{store-training-jobs-3N3VKPIY.js → store-training-jobs-K7I4SXWW.js} +1 -1
- package/dist/chunks/{store-training-models-VOFVGPZR.js → store-training-models-LCSB37YY.js} +1 -1
- package/dist/chunks/{taskset-HNDIGYQG.js → taskset-XI5SJBJL.js} +1 -1
- package/dist/chunks/{taskset-packages-WMG5DUBN.js → taskset-packages-FUQWNTSB.js} +1 -1
- package/dist/chunks/{taskset-packages-T6B6HYKZ.js → taskset-packages-GM6IUOTY.js} +1 -1
- package/dist/chunks/{teams-bot-Z5CZLWE4.js → teams-bot-CYC5TR64.js} +1 -1
- package/dist/chunks/{tool-learning-ZQ6NSJ5K.js → tool-learning-52QZIJIR.js} +1 -1
- package/dist/chunks/{training-JTYQA7GA.js → training-GDLLLXSV.js} +1 -1
- package/dist/chunks/training-RL7UUBER.js +2 -0
- package/dist/chunks/training-UJ62NOJJ.js +2 -0
- package/dist/chunks/{training-hosted-36SZFS4U.js → training-hosted-V5CHG3M3.js} +1 -1
- package/dist/chunks/{training-hosted-alphaedit-HSMRDJTD.js → training-hosted-alphaedit-R5PVATV4.js} +1 -1
- package/dist/chunks/{training-hosted-decision-7JALOU6O.js → training-hosted-decision-WNK5DE3M.js} +1 -1
- package/dist/chunks/{training-hosted-engram-SXO75MFG.js → training-hosted-engram-ZQDOKXAV.js} +1 -1
- package/dist/chunks/{training-hosted-learning-E2N32YU5.js → training-hosted-learning-UEBGSSNC.js} +1 -1
- package/dist/chunks/{training-hosted-modification-comparison-TXFDJFTG.js → training-hosted-modification-comparison-KKI5CKOH.js} +1 -1
- package/dist/chunks/{training-hosted-neuron-training-J42WK4EH.js → training-hosted-neuron-training-CFWEDRSR.js} +1 -1
- package/dist/chunks/{training-hosted-serving-report-BAEABGJH.js → training-hosted-serving-report-N4NF5AVW.js} +1 -1
- package/dist/chunks/{training-hosted-steering-T556BUBG.js → training-hosted-steering-4MDUQ2YV.js} +1 -1
- package/dist/chunks/{training-model-start-P3PXDWNT.js → training-model-start-NOA6TYQK.js} +1 -1
- package/dist/cli.js +1 -1
- package/dist/index.js +1 -1
- package/dist/skills/manifest.json +3 -3
- package/dist/skills/openpond-cli/references/experiments-and-training.md +19 -0
- package/dist/web/assets/App-L7RV4D0A.js +54 -0
- package/dist/web/assets/{AppDialog-x1HU1uLv.js → AppDialog-B2V84J7f.js} +1 -1
- package/dist/web/assets/{AppTerminalPanel-CNIKmqKc.js → AppTerminalPanel-DfYpUDKT.js} +2 -2
- package/dist/web/assets/{AppToastContext-DNWd43HS.js → AppToastContext-DuiPouLz.js} +1 -1
- package/dist/web/assets/{AppsView-BvOD83Z1.js → AppsView-B20RHDCy.js} +1 -1
- package/dist/web/assets/{AttachmentTypeIcon-BLdDr3JZ.js → AttachmentTypeIcon-l-GRNxaz.js} +1 -1
- package/dist/web/assets/{BrowserSidebar-Ar0FlFKg.js → BrowserSidebar-Ce0ToS2O.js} +1 -1
- package/dist/web/assets/{CartesianChart-tS7f1HZv.js → CartesianChart-CtfMRAfp.js} +1 -1
- package/dist/web/assets/{ChatTimelineEntry-z7_kur3h.js → ChatTimelineEntry-DzcucW20.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-CaiFEKrv.js → CollaborationTabs-BpmKjNAC.js} +1 -1
- package/dist/web/assets/{CommandMenu-BpubEqaA.js → CommandMenu-JXsoxijv.js} +1 -1
- package/dist/web/assets/{CommunityView-TGR4s99l.js → CommunityView-ggdn8pcH.js} +1 -1
- package/dist/web/assets/{ComposerAttachments-DPWCjKXz.js → ComposerAttachments-BMmALUs_.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-Drji01_6.js → ComposerCreateImproveStrip-DcM1bkfu.js} +1 -1
- package/dist/web/assets/{ConversationImportsSettings-B_oW0cz7.js → ConversationImportsSettings-BKNeARHI.js} +1 -1
- package/dist/web/assets/{DatasetReviewImport-Dr3unJSY.js → DatasetReviewImport-DyFOE0Q0.js} +1 -1
- package/dist/web/assets/{ExperimentTrainingDataWorkspace-DObvpJAw.js → ExperimentTrainingDataWorkspace-CfOyoMrq.js} +2 -2
- package/dist/web/assets/{FilePagePreview-9kkXbARN.js → FilePagePreview-B7bWObJN.js} +2 -2
- package/dist/web/assets/{GetStartedView-Dv2b_SlH.js → GetStartedView-BYbFl93M.js} +1 -1
- package/dist/web/assets/{GettingStartedDialog-sPaPMc61.js → GettingStartedDialog-UgreDozV.js} +1 -1
- package/dist/web/assets/{HostedModelLearningReview-BlwhGxS6.js → HostedModelLearningReview-C_kng2U_.js} +1 -1
- package/dist/web/assets/{HostedModelLearningSettings-B5ahk3je.js → HostedModelLearningSettings-aesD_ifF.js} +1 -1
- package/dist/web/assets/{HtmlVisual-rGsClq0p.js → HtmlVisual-nvl1x-jh.js} +1 -1
- package/dist/web/assets/{LabModelVersionDetailPage-Da7AwZWV.js → LabModelVersionDetailPage-DrdoNvI-.js} +1 -1
- package/dist/web/assets/{LabModelWorkspace-DTeYViWH.js → LabModelWorkspace-CHlhzG3q.js} +1 -1
- package/dist/web/assets/{LabSkillSidebar-BieHbNl6.js → LabSkillSidebar-CqHeZzoj.js} +1 -1
- package/dist/web/assets/{LabsRoute-D3XqPB0-.js → LabsRoute-DzEbPpMK.js} +4 -4
- package/dist/web/assets/{LearningBatchesPage-CCBuf2u4.js → LearningBatchesPage-A2dFQW2j.js} +1 -1
- package/dist/web/assets/{MainChatThread-B6BQJfcq.js → MainChatThread-BSvKu4e5.js} +2 -2
- package/dist/web/assets/{MainPane-D3fQou29.js → MainPane-DiWIAxMj.js} +6 -6
- package/dist/web/assets/{ModelProjectPageHeader-BZn9Lu_J.js → ModelProjectPageHeader-lu6iRXHK.js} +1 -1
- package/dist/web/assets/{NativeSetupTerminal-Bglqab_g.js → NativeSetupTerminal-kZ-nFPE8.js} +2 -2
- package/dist/web/assets/{NativeSkillSidebar-pUGRdnV_.js → NativeSkillSidebar-DkkD1uH2.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-BpHN38MA.js → NewProjectDialog-Dg8dMEpc.js} +1 -1
- package/dist/web/assets/{OutputsPage-LunDCQ6w.js → OutputsPage-Dz190U9t.js} +1 -1
- package/dist/web/assets/{PageChrome-DThEcWAx.js → PageChrome-Bncv-ps0.js} +1 -1
- package/dist/web/assets/{ProjectsPage-vct_TQgL.js → ProjectsPage-DVkYvLtd.js} +1 -1
- package/dist/web/assets/{RightChatPanelStack-CgFK7DY0.js → RightChatPanelStack-CP4leenI.js} +1 -1
- package/dist/web/assets/RightSidebarHomePanel-C0etQXpt.js +1 -0
- package/dist/web/assets/{ScheduledWorkPage-mmaZfybl.js → ScheduledWorkPage-DI0mgt82.js} +1 -1
- package/dist/web/assets/{SettingsView-CJfeRsWR.js → SettingsView-cCtkr089.js} +3 -3
- package/dist/web/assets/{TasksetDraftEditorPrimitives-CuimAfkv.js → TasksetDraftEditorPrimitives-DCQTuswJ.js} +1 -1
- package/dist/web/assets/{TeamChatView-BcK0lF1b.js → TeamChatView-BBEomfQ7.js} +1 -1
- package/dist/web/assets/{TerminalOverlay-0pzEvy-C.js → TerminalOverlay-Dj5NUDMp.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-CcyzFz7l.js → TrainingCreationPanel-Ds4PLfsd.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-DSLZXdLz.js → TrainingDraftPanel-BAuh_BF3.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-BT9pcnCn.js → UsageSettingsSection-DbzeatcW.js} +1 -1
- package/dist/web/assets/WorkSidebarPanel-BaNuXoZc.js +1 -0
- package/dist/web/assets/{WorkspaceDiffPanel-Bbz5qrVA.js → WorkspaceDiffPanel-xk-ve1MO.js} +3 -3
- package/dist/web/assets/{WorkspaceEnvironmentMenu-6hXpvMTl.js → WorkspaceEnvironmentMenu-D8GSuoYz.js} +1 -1
- package/dist/web/assets/{WorkspaceFileLocation-BijVemBl.js → WorkspaceFileLocation-Dl8M2ZKN.js} +1 -1
- package/dist/web/assets/{WorkspaceGitDialogs-BOO0E5i9.js → WorkspaceGitDialogs-9BhLjYx4.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-B_YzK7Do.js → WorkspaceMonacoEditor-DYPuC7pj.js} +3 -3
- package/dist/web/assets/{WorkspacePdfPreview-CFti1fvu.js → WorkspacePdfPreview-B7BI9tLR.js} +2 -2
- package/dist/web/assets/{WorkspacePresentationPreview-DPAhNaV6.js → WorkspacePresentationPreview-sP7JUT7m.js} +1 -1
- package/dist/web/assets/{bot-BE2rL_qv.js → bot-D7M8ZtE6.js} +1 -1
- package/dist/web/assets/{chat-resources-Beh5lB36.js → chat-resources-DhKAnljP.js} +1 -1
- package/dist/web/assets/chevron-down-BAEcJitl.js +1 -0
- package/dist/web/assets/chevron-right-3G9s2cQ9.js +1 -0
- package/dist/web/assets/chevron-up-DTYF52H1.js +1 -0
- package/dist/web/assets/{chunk-C3TS766N-j1MK0e3c.js → chunk-C3TS766N-DENE60SE.js} +1 -1
- package/dist/web/assets/{client-choice-storage-CQ0CNkzG.js → client-choice-storage-DYZsrVr9.js} +1 -1
- package/dist/web/assets/{client-BnJhN-14.js → client-gy7zrd7a.js} +1 -1
- package/dist/web/assets/{cloud-upload-DFjZE4O4.js → cloud-upload-De-XSMUr.js} +1 -1
- package/dist/web/assets/{copy-CGrLUtw5.js → copy-DEK20zbZ.js} +1 -1
- package/dist/web/assets/{cssMode-DvRw2fUx.js → cssMode-Dau-Fhqf.js} +1 -1
- package/dist/web/assets/{external-link-3ZnEFUXd.js → external-link-DwDry0Fb.js} +1 -1
- package/dist/web/assets/{folder-open-i9n8450i.js → folder-open-DOb4AjV6.js} +1 -1
- package/dist/web/assets/{folder-plus-cu8Md_ej.js → folder-plus-BAouDaXv.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-CwckmC09.js → git-commit-horizontal-DZbHXcai.js} +1 -1
- package/dist/web/assets/{htmlMode-8VF4Ovtw.js → htmlMode-DlNEe6hu.js} +1 -1
- package/dist/web/assets/{icons-4yRSxBZj.js → icons-OQhKVrDc.js} +1 -1
- package/dist/web/assets/{image-D-umhyyK.js → image-BkYJDChH.js} +1 -1
- package/dist/web/assets/{index-DiVhx1GM.js → index-M_h2Ok4V.js} +2 -2
- package/dist/web/assets/{info-Dq2RsPDJ.js → info-Mj5lp4Ic.js} +1 -1
- package/dist/web/assets/{jsonMode-CvCYQHkB.js → jsonMode-CyOEyonV.js} +1 -1
- package/dist/web/assets/loader-circle-DXVtGvuV.js +1 -0
- package/dist/web/assets/{lspLanguageFeatures-CjufNNFF.js → lspLanguageFeatures-DAYPzatg.js} +1 -1
- package/dist/web/assets/{maximize-2-CKY8dua6.js → maximize-2-BwFXSX6b.js} +1 -1
- package/dist/web/assets/{message-square-CVDgKlKX.js → message-square-C2nqfNLn.js} +1 -1
- package/dist/web/assets/{monaco.contribution-BYAgjZbj.js → monaco.contribution-BZcNCJER.js} +2 -2
- package/dist/web/assets/{monaco.contribution-BYY3-y9l.js → monaco.contribution-BZkfRhss.js} +2 -2
- package/dist/web/assets/{monaco.contribution-Bh0CKj9i.js → monaco.contribution-D7_X8TXe.js} +2 -2
- package/dist/web/assets/{monaco.contribution-PjJ1258q.js → monaco.contribution-KyLdVay7.js} +2 -2
- package/dist/web/assets/{monitor-UYe42gew.js → monitor-B0Qj5Wea.js} +1 -1
- package/dist/web/assets/{paperclip-DrlSVUoz.js → paperclip-CmrRruxi.js} +1 -1
- package/dist/web/assets/{pdf-BMhday2W.js → pdf-BM-9_48p.js} +1 -1
- package/dist/web/assets/play-CkACZ6Zo.js +1 -0
- package/dist/web/assets/plus-CB258e62.js +1 -0
- package/dist/web/assets/{presentation-DcZKqH7w.js → presentation-BYxhoSIo.js} +1 -1
- package/dist/web/assets/{python-CiA01i07.js → python-B3Mj03I5.js} +1 -1
- package/dist/web/assets/{refresh-cw-00D-GDnF.js → refresh-cw-CwEmO71D.js} +1 -1
- package/dist/web/assets/{save-CXe7bqR7.js → save-S--FOuce.js} +1 -1
- package/dist/web/assets/{settings-lists-B5J40WM6.js → settings-lists-ChqDppMP.js} +1 -1
- package/dist/web/assets/square-BmPfHjGU.js +1 -0
- package/dist/web/assets/{square-terminal-DxC7TTds.js → square-terminal-CawpQtCi.js} +1 -1
- package/dist/web/assets/{submit-issue-command-Dq3TqJLV.js → submit-issue-command-CFitxxmO.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-BH3Jckfo.js → toggleHighContrast-D-cMCvXx.js} +1 -1
- package/dist/web/assets/training-CzbWtx75.js +1 -0
- package/dist/web/assets/{training-model-data-B6IZ3x-t.js → training-model-data-G-D64935.js} +1 -1
- package/dist/web/assets/{tsMode-DXkj4bqC.js → tsMode-9kzS1ijG.js} +1 -1
- package/dist/web/assets/{upload-B3KRHVHl.js → upload-CtYsSYrM.js} +1 -1
- package/dist/web/assets/{useAccountSettings-BGRkTRrp.js → useAccountSettings-DYYa6puz.js} +1 -1
- package/dist/web/assets/{useAgentInventory-D_1AlAZJ.js → useAgentInventory-c5B_Tszj.js} +1 -1
- package/dist/web/assets/{useChatContextSelection-hoMSuUSE.js → useChatContextSelection-DOISZpTz.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules-DxTER7Ow.js → useLocalAgentSchedules-QJ8RsMKm.js} +1 -1
- package/dist/web/assets/{useQuery-DkPec_9x.js → useQuery-DuTGOe2b.js} +1 -1
- package/dist/web/assets/{wifi-off-CMzpvbWl.js → wifi-off-BOfP4Vmg.js} +1 -1
- package/dist/web/assets/{workers-ziY_bTv2.js → workers-BwGpyrdj.js} +1 -1
- package/dist/web/assets/x-5_iy6IDd.js +1 -0
- package/dist/web/assets/{yaml-mSvqVSko.js → yaml-BU4IWV_7.js} +1 -1
- package/dist/web/index.html +1 -1
- package/docs/command-reference.md +1 -0
- package/package.json +1 -1
- package/dist/chunks/chunk-6D3FI2XT.js +0 -2
- package/dist/chunks/chunk-VEBW7NKD.js +0 -2
- package/dist/chunks/cli-ALEEFAJ7.js +0 -2
- package/dist/chunks/host-profile-evaluation-tools-UF4ATIUF.js +0 -2
- package/dist/chunks/hosted-harness-runtime-MMTLCL23.js +0 -2
- package/dist/chunks/local-harness-improvement-runtime-3YJQRYXC.js +0 -2
- package/dist/chunks/local-harness-taskset-review-E5GN5LTR.js +0 -2
- package/dist/chunks/saved-work-54I5ZJTC.js +0 -2
- package/dist/chunks/training-5NT2YB2L.js +0 -2
- package/dist/chunks/training-UY6KRG4M.js +0 -2
- package/dist/web/assets/App-CXhxya9x.js +0 -54
- package/dist/web/assets/RightSidebarHomePanel-BJmzUcmy.js +0 -1
- package/dist/web/assets/WorkSidebarPanel-CP-nHAsJ.js +0 -1
- package/dist/web/assets/chevron-down-Bn8yph2O.js +0 -1
- package/dist/web/assets/chevron-right-BU-jUmb2.js +0 -1
- package/dist/web/assets/chevron-up-DacwuDJZ.js +0 -1
- package/dist/web/assets/loader-circle-DBl6qqtR.js +0 -1
- package/dist/web/assets/play-DIqZnaNf.js +0 -1
- package/dist/web/assets/plus-CFNxAPMK.js +0 -1
- package/dist/web/assets/square-DJEaBefe.js +0 -1
- package/dist/web/assets/training-DWfghwfZ.js +0 -1
- package/dist/web/assets/x-omjwMPbJ.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{a as j}from"./chunk-Y4I6CFZJ.js";import{j as y}from"./chunk-BU6MW65V.js";import{f as i,m as s}from"./chunk-HIQPGYVH.js";import{c as H,d as w,f as k}from"./chunk-LK77GI6M.js";import{Bb as h,Eb as I,Fb as E,oa as v,pa as g,wb as f}from"./chunk-ZY32SZ2P.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as m}from"./chunk-FTQLQJQV.js";var A=e.object({sourcePass:i,graders:j.shape.graders,mappings:j.shape.mappings,maximumCostUsd:e.number().finite().positive().max(1e4)}).strict(),C=e.object({externalDatasetBinding:v,scoring:A.optional(),modelId:e.string().min(1).max(300),maximumCostUsd:e.number().finite().positive().max(1e4)}).strict(),R=e.object({source:e.enum(["local","github","openpond_git"]),repositoryId:e.string().trim().min(1),profileId:e.string().trim().min(1)}).strict(),n=e.string().min(1).max(240),c=e.string().regex(/^[a-f0-9]{64}$/),x=e.object({schemaVersion:e.literal("openpond.experimentImprovement.v1"),id:n,operationId:n,requestHash:c,actorId:n,teamId:n,projectId:n.nullable(),ownerWorkspaceId:n,ownerRevision:e.number().int().nonnegative(),ownerSourceRevision:e.string().min(1).max(500),baseRelease:i,profileRef:R,baseProfileSourceRevision:e.string().min(1).max(500),evidence:e.object({manifest:f,result:h}).strict(),component:e.object({kind:e.enum(["skill","workflow","agent","instruction"]),path:e.string().min(1).max(2e3),workflowId:n.optional()}).strict(),mode:e.enum(["manual","llm_assisted"]),status:e.enum(["draft","authoring_queued","authoring","frozen","testing","ready_for_review","adopting","accepted","rolled_back","declined","failed","cancelled"]),revision:e.number().int().positive(),limits:e.object({maximumCostUsd:e.number().finite().positive(),maximumAuthoringSteps:e.number().int().min(1).max(500),maximumDurationMs:e.number().int().min(1e3).max(864e5)}).strict(),authoringSteps:e.number().int().nonnegative().max(500),work:e.object({sessionId:n,turnId:n,revision:e.number().int().positive(),startedAt:e.string().datetime()}).strict().nullable(),frozen:e.object({release:i,sourceRevision:e.string().min(1).max(500),profileSourceRevision:e.string().min(1).max(500),authoringHash:c,partitionHash:c,executableSourceHash:c,protectedClosureHash:c,candidateRevision:e.number().int().positive(),diff:e.array(e.object({path:e.string(),before:c.nullable(),after:c.nullable()}).strict()).max(1e4)}).strict().nullable(),test:e.object({recipe:C,recipeHash:e.string().regex(/^[a-f0-9]{64}$/),baselineOperationId:e.string(),candidateOperationId:e.string(),cancelRequestedAt:e.string().datetime().nullable(),dispatching:e.object({kind:e.enum(["baseline","candidate"]),token:n,pid:e.number().int().positive(),processStart:e.string().nullable(),startedAt:e.string().datetime()}).strict().nullable()}).strict().nullable(),comparison:e.object({baseline:e.object({manifest:f,result:h}).strict(),candidate:e.object({manifest:f,result:h}).strict(),frozenHash:c,humanProjection:w.optional()}).strict().nullable(),adoptionIntent:e.object({operationId:n,expectedOwnerRevision:e.number().int().nonnegative(),frozenHash:c,humanProjection:w.optional()}).strict().nullable(),acceptance:i.nullable(),rollback:i.nullable(),error:e.string().max(2e3).nullable(),createdAt:e.string().datetime(),updatedAt:e.string().datetime(),contentHash:c}).strict();function D(r){let t=x.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Improvement state integrity failed.");if(I(t.evidence),t.evidence.manifest.teamId!==t.teamId||t.evidence.result.status!=="completed"||!t.evidence.result.cases.some(o=>o.status==="completed"))throw new Error("Improvement requires usable completed owner evidence.");if(t.test&&(s(t.test.recipe)!==t.test.recipeHash||g(t.test.recipe.externalDatasetBinding).profileId!==t.profileRef.profileId))throw new Error("The test recipe changed its exact selected Profile.");if(t.comparison?.humanProjection){let o=k(t.comparison.humanProjection);if(o.teamId!==t.teamId||o.projectId!==t.projectId||s(o.baseline)!==s(t.comparison.baseline)||s(o.candidate)!==s(t.comparison.candidate))throw new Error("Human comparison projection differs from its exact owner evidence.")}if(t.comparison&&(I(t.comparison.baseline),I(t.comparison.candidate),!t.frozen||t.comparison.frozenHash!==s(t.frozen)||!E(t.comparison.baseline,t.comparison.candidate).comparable))throw new Error("Improvement comparison is not bound to a comparable frozen candidate.");if(t.status==="ready_for_review"&&(!t.frozen||!t.comparison))throw new Error("Improvement is missing qualification.");if(t.status==="adopting"&&(!t.adoptionIntent||!t.frozen||t.adoptionIntent.frozenHash!==s(t.frozen)))throw new Error("Improvement adoption intent is not bound to its tested revision.");if(t.status==="accepted"&&(!t.acceptance||!t.comparison||!t.frozen))throw new Error("Improvement acceptance is missing its exact qualification receipt.");if(t.status==="rolled_back"&&(!t.acceptance||!t.rollback))throw new Error("Profile rollback is missing its durable owner receipt.");return t}m(D,"verifyExperimentImprovementState");function X(r){return D({...r,contentHash:s(r)})}m(X,"sealExperimentImprovementState");var Y=e.object({states:e.array(x).max(50),nextCursor:n.nullable()}).strict(),T=e.object({operationId:n,ownerWorkspaceId:n,expectedOwnerRevision:e.number().int().nonnegative(),baseRelease:i,profileRef:R,profileSourceRevision:e.string().min(1).max(500),projectId:n.nullable(),evidence:i,component:x.shape.component,mode:x.shape.mode,limits:x.shape.limits}).strict(),Z=e.discriminatedUnion("operation",[e.object({operation:e.literal("list"),limit:e.number().int().min(1).max(50).default(30),cursor:n.optional()}).strict(),e.object({operation:e.literal("options"),evidence:i}).strict(),e.object({operation:e.literal("start"),request:T}).strict(),e.object({operation:e.enum(["read","humanComparisonOptions"]),id:n}).strict(),e.object({operation:e.literal("instructions"),id:n}).strict(),e.object({operation:e.literal("edit"),id:n,revision:e.number().int().positive(),expectedFileHash:c,text:e.string().max(25e4)}).strict(),e.object({operation:e.literal("mode"),id:n,revision:e.number().int().positive(),mode:e.enum(["manual","llm_assisted"])}).strict(),e.object({operation:e.literal("author"),id:n,revision:e.number().int().positive(),modelId:n,prompt:e.string().min(1).max(2e4)}).strict(),e.object({operation:e.enum(["freeze","finishAuthoring","useCandidate","discard","cancel","rollback"]),id:n,revision:e.number().int().positive()}).strict(),e.object({operation:e.literal("test"),id:n,revision:e.number().int().positive(),recipe:C}).strict(),e.object({operation:e.literal("compare"),id:n,revision:e.number().int().positive(),baseline:i,candidate:i,humanSelections:H.optional()}).strict()]),S=e.object({teamId:n,evidence:i,scoring:A.optional(),profiles:e.array(e.object({id:c,name:e.string(),profileRef:R,ownerWorkspaceId:n,ownerRevision:e.number().int().nonnegative(),baseRelease:i,profileSourceRevision:e.string(),components:e.array(e.object({kind:e.enum(["skill","instruction","agent","workflow"]),path:e.string(),agentId:e.string().optional(),workflowId:e.string().optional(),label:e.string(),binding:v}).strict()).max(500)}).strict()).max(100)}).strict(),O=e.object({candidateId:n,actorId:n,teamId:n,projectId:n.nullable(),candidateRevision:e.number().int().positive(),recipeHash:c,baseline:e.object({manifest:f,result:h}).strict(),candidate:e.object({manifest:f,result:h}).strict(),contentHash:c}).strict();function U(r){let t=O.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Accepted Human discovery integrity failed.");for(let o of[t.baseline,t.candidate])if(I(o),o.manifest.teamId!==t.teamId||o.manifest.lineage?.humanProjection)throw new Error("Discovery must retain original owner evidence.");return t}m(U,"verifyExperimentImprovementHumanOptions");function ee(r,t){if(!r.test||r.test.cancelRequestedAt)throw new Error("The paired test is unavailable.");let l={candidateId:r.id,actorId:r.actorId,teamId:r.teamId,projectId:r.projectId,candidateRevision:r.revision,recipeHash:r.test.recipeHash,...t};return U({...l,contentHash:s(l)})}m(ee,"sealExperimentImprovementHumanOptions");var a=e.string().trim().min(1).max(240),d=e.string().regex(/^[a-f0-9]{64}$/),_=e.object({schemaVersion:e.literal("openpond.advancedRefinerEvaluation.v1"),operationId:a,actorId:a,teamId:a,projectId:a.nullable(),mode:e.enum(["review_quality","downstream_adaptation"]),profileRef:e.object({source:e.enum(["local","github","openpond_git"]),repositoryId:a,profileId:a}).strict(),sourceRevision:e.string().min(1).max(500),baselineRelease:i,refinerRelease:i,evidence:i,externalDatasetBinding:v,adaptationDatasetBinding:v,privateClosureHash:d,adaptationTaskIds:e.array(a).min(1).max(1e4),holdoutTaskIds:e.array(a).min(1).max(1e4),adaptationSplit:e.enum(["train","validation","test","frozen_eval"]),holdoutSplit:e.enum(["train","validation","test","frozen_eval"]),environmentPolicy:e.discriminatedUnion("kind",[e.object({kind:e.literal("resettable"),environmentHash:d}).strict(),e.object({kind:e.literal("frozen_observations"),environmentHash:d}).strict()]),maximumCostUsd:e.number().finite().positive().max(1e4),maximumDurationMs:e.number().int().min(1e3).max(864e5),maximumModelSteps:e.number().int().min(1).max(1e3),contentHash:d}).strict();function M(r){let t=_.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Advanced Refiner evaluation admission changed.");let o=g(t.externalDatasetBinding);if(o.profileId!==t.profileRef.profileId||o.protectedProfileClosureHash!==t.privateClosureHash)throw new Error("Advanced evaluation changed its Profile or protected evaluator closure.");if(t.adaptationSplit===t.holdoutSplit||new Set([...t.adaptationTaskIds,...t.holdoutTaskIds]).size!==t.adaptationTaskIds.length+t.holdoutTaskIds.length)throw new Error("Adaptation and private holdout must be disjoint ordered cases.");let p=g(t.adaptationDatasetBinding);if(p.profileId!==o.profileId||p.packageHash!==o.packageHash||s(p.dataset)!==s(o.dataset)||s(p.target)!==s(o.target)||p.protectedProfileClosureHash!==o.protectedProfileClosureHash)throw new Error("This native advanced adapter needs separate adaptation and holdout recipes from the same exact released package and target.");if(p.split!==t.adaptationSplit||o.split!==t.holdoutSplit)throw new Error("Advanced split policies differ from their exact admitted recipes.");let q=new Set(o.population.map(u=>u.taskId)),z=new Set(p.population.map(u=>u.taskId));if(t.holdoutTaskIds.some(u=>!q.has(u))||t.adaptationTaskIds.some(u=>!z.has(u)))throw new Error("Advanced evaluation selected cases outside its exact Dataset recipe.");return t}m(M,"verifyAdvancedRefinerEvaluationPin");function ce(r){return M({...r,contentHash:s(r)})}m(ce,"sealAdvancedRefinerEvaluationPin");var B=e.object({pin:_,modelId:a,profileId:a,model:y,seed:e.number().int(),reasoningEffort:e.enum(["none","off","low","medium","high","xhigh","max"]).nullable()}).strict(),V=e.discriminatedUnion("operation",[e.object({operation:e.literal("start"),request:B}).strict(),e.object({operation:e.enum(["read","cancel","resume"]),id:a}).strict(),e.object({operation:e.literal("list")}).strict()]),W=e.object({taskId:a,sourceCaseHash:d,reviewSessionId:a,reviewTurnId:a,inputHarness:i,trigger:i,decision:e.enum(["no_action","route_deterministically","queue_refiner"]),outcome:i.nullable(),proposal:i.nullable(),validations:e.array(i).max(100),grade:e.object({id:a,contentHash:d,score:e.number().min(0).max(1).nullable(),passed:e.boolean(),failureClass:e.string().nullable()}).strict(),resetComplete:e.boolean()}).strict(),$=e.object({schemaVersion:e.literal("openpond.advancedRefinerReviewReceipt.v1"),id:a,runId:a,pinHash:d,ownerActorId:a,teamId:a,privateClosureHash:d,refinerRelease:i,cases:e.array(W).min(1).max(1e4),reviewScore:e.number().min(0).max(1).nullable(),completedCases:e.number().int().nonnegative(),noActionCases:e.number().int().nonnegative(),routedCases:e.number().int().nonnegative(),proposalCases:e.number().int().nonnegative(),costUsd:e.number().finite().nonnegative().nullable(),cleanupComplete:e.boolean(),createdAt:e.string().datetime(),contentHash:d}).strict();function de(r){return $.parse({...r,contentHash:s(r)})}m(de,"sealAdvancedRefinerReviewReceipt");var P=S.shape.profiles.element,me=S.extend({profiles:e.array(P.extend({components:e.array(P.shape.components.element.extend({adaptationSplits:e.array(e.object({split:e.enum(["train","validation","test","frozen_eval"]),taskIds:e.array(a)})),environmentHash:d,resettable:e.boolean(),reviewQuality:e.boolean()}))})),refinerReleases:e.array(i),activeRefiner:i.nullable(),models:e.array(e.object({id:a,profileId:a,name:e.string(),location:e.enum(["local","hosted"])}))}),L=e.object({operation:e.literal("prepare"),evidence:i,profileOptionId:a,componentLabel:a,mode:e.enum(["review_quality","downstream_adaptation"]),adaptationSplit:e.enum(["train","validation","test","frozen_eval"]),operationId:a,refinerRelease:i,maximumCostUsd:e.number().positive(),maximumDurationMs:e.number().int().positive(),maximumModelSteps:e.number().int().positive()}).strict(),le=e.union([V,L,e.object({operation:e.literal("options"),evidence:i}).strict()]),pe=e.object({modelRequests:e.number().int().nonnegative(),knownSpendUsd:e.number().nonnegative(),totalSpendUsd:e.number().nonnegative().nullable(),heldUsd:e.number().nonnegative(),uncertainRequests:e.number().int().nonnegative()}).strict();export{C as a,x as b,D as c,X as d,Y as e,T as f,Z as g,S as h,U as i,ee as j,_ as k,M as l,ce as m,B as n,V as o,W as p,$ as q,de as r,L as s,pe as t};
|
|
2
|
+
import{a as j}from"./chunk-UGDBMRCT.js";import{j as y}from"./chunk-BYVE4TMU.js";import{f as i,m as s}from"./chunk-HIQPGYVH.js";import{c as H,d as w,f as k}from"./chunk-LK77GI6M.js";import{Bb as h,Eb as I,Fb as E,oa as v,pa as g,wb as f}from"./chunk-ZY32SZ2P.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as m}from"./chunk-FTQLQJQV.js";var A=e.object({sourcePass:i,graders:j.shape.graders,mappings:j.shape.mappings,maximumCostUsd:e.number().finite().positive().max(1e4)}).strict(),C=e.object({externalDatasetBinding:v,scoring:A.optional(),modelId:e.string().min(1).max(300),maximumCostUsd:e.number().finite().positive().max(1e4)}).strict(),R=e.object({source:e.enum(["local","github","openpond_git"]),repositoryId:e.string().trim().min(1),profileId:e.string().trim().min(1)}).strict(),n=e.string().min(1).max(240),c=e.string().regex(/^[a-f0-9]{64}$/),x=e.object({schemaVersion:e.literal("openpond.experimentImprovement.v1"),id:n,operationId:n,requestHash:c,actorId:n,teamId:n,projectId:n.nullable(),ownerWorkspaceId:n,ownerRevision:e.number().int().nonnegative(),ownerSourceRevision:e.string().min(1).max(500),baseRelease:i,profileRef:R,baseProfileSourceRevision:e.string().min(1).max(500),evidence:e.object({manifest:f,result:h}).strict(),component:e.object({kind:e.enum(["skill","workflow","agent","instruction"]),path:e.string().min(1).max(2e3),workflowId:n.optional()}).strict(),mode:e.enum(["manual","llm_assisted"]),status:e.enum(["draft","authoring_queued","authoring","frozen","testing","ready_for_review","adopting","accepted","rolled_back","declined","failed","cancelled"]),revision:e.number().int().positive(),limits:e.object({maximumCostUsd:e.number().finite().positive(),maximumAuthoringSteps:e.number().int().min(1).max(500),maximumDurationMs:e.number().int().min(1e3).max(864e5)}).strict(),authoringSteps:e.number().int().nonnegative().max(500),work:e.object({sessionId:n,turnId:n,revision:e.number().int().positive(),startedAt:e.string().datetime()}).strict().nullable(),frozen:e.object({release:i,sourceRevision:e.string().min(1).max(500),profileSourceRevision:e.string().min(1).max(500),authoringHash:c,partitionHash:c,executableSourceHash:c,protectedClosureHash:c,candidateRevision:e.number().int().positive(),diff:e.array(e.object({path:e.string(),before:c.nullable(),after:c.nullable()}).strict()).max(1e4)}).strict().nullable(),test:e.object({recipe:C,recipeHash:e.string().regex(/^[a-f0-9]{64}$/),baselineOperationId:e.string(),candidateOperationId:e.string(),cancelRequestedAt:e.string().datetime().nullable(),dispatching:e.object({kind:e.enum(["baseline","candidate"]),token:n,pid:e.number().int().positive(),processStart:e.string().nullable(),startedAt:e.string().datetime()}).strict().nullable()}).strict().nullable(),comparison:e.object({baseline:e.object({manifest:f,result:h}).strict(),candidate:e.object({manifest:f,result:h}).strict(),frozenHash:c,humanProjection:w.optional()}).strict().nullable(),adoptionIntent:e.object({operationId:n,expectedOwnerRevision:e.number().int().nonnegative(),frozenHash:c,humanProjection:w.optional()}).strict().nullable(),acceptance:i.nullable(),rollback:i.nullable(),error:e.string().max(2e3).nullable(),createdAt:e.string().datetime(),updatedAt:e.string().datetime(),contentHash:c}).strict();function D(r){let t=x.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Improvement state integrity failed.");if(I(t.evidence),t.evidence.manifest.teamId!==t.teamId||t.evidence.result.status!=="completed"||!t.evidence.result.cases.some(o=>o.status==="completed"))throw new Error("Improvement requires usable completed owner evidence.");if(t.test&&(s(t.test.recipe)!==t.test.recipeHash||g(t.test.recipe.externalDatasetBinding).profileId!==t.profileRef.profileId))throw new Error("The test recipe changed its exact selected Profile.");if(t.comparison?.humanProjection){let o=k(t.comparison.humanProjection);if(o.teamId!==t.teamId||o.projectId!==t.projectId||s(o.baseline)!==s(t.comparison.baseline)||s(o.candidate)!==s(t.comparison.candidate))throw new Error("Human comparison projection differs from its exact owner evidence.")}if(t.comparison&&(I(t.comparison.baseline),I(t.comparison.candidate),!t.frozen||t.comparison.frozenHash!==s(t.frozen)||!E(t.comparison.baseline,t.comparison.candidate).comparable))throw new Error("Improvement comparison is not bound to a comparable frozen candidate.");if(t.status==="ready_for_review"&&(!t.frozen||!t.comparison))throw new Error("Improvement is missing qualification.");if(t.status==="adopting"&&(!t.adoptionIntent||!t.frozen||t.adoptionIntent.frozenHash!==s(t.frozen)))throw new Error("Improvement adoption intent is not bound to its tested revision.");if(t.status==="accepted"&&(!t.acceptance||!t.comparison||!t.frozen))throw new Error("Improvement acceptance is missing its exact qualification receipt.");if(t.status==="rolled_back"&&(!t.acceptance||!t.rollback))throw new Error("Profile rollback is missing its durable owner receipt.");return t}m(D,"verifyExperimentImprovementState");function X(r){return D({...r,contentHash:s(r)})}m(X,"sealExperimentImprovementState");var Y=e.object({states:e.array(x).max(50),nextCursor:n.nullable()}).strict(),T=e.object({operationId:n,ownerWorkspaceId:n,expectedOwnerRevision:e.number().int().nonnegative(),baseRelease:i,profileRef:R,profileSourceRevision:e.string().min(1).max(500),projectId:n.nullable(),evidence:i,component:x.shape.component,mode:x.shape.mode,limits:x.shape.limits}).strict(),Z=e.discriminatedUnion("operation",[e.object({operation:e.literal("list"),limit:e.number().int().min(1).max(50).default(30),cursor:n.optional()}).strict(),e.object({operation:e.literal("options"),evidence:i}).strict(),e.object({operation:e.literal("start"),request:T}).strict(),e.object({operation:e.enum(["read","humanComparisonOptions"]),id:n}).strict(),e.object({operation:e.literal("instructions"),id:n}).strict(),e.object({operation:e.literal("edit"),id:n,revision:e.number().int().positive(),expectedFileHash:c,text:e.string().max(25e4)}).strict(),e.object({operation:e.literal("mode"),id:n,revision:e.number().int().positive(),mode:e.enum(["manual","llm_assisted"])}).strict(),e.object({operation:e.literal("author"),id:n,revision:e.number().int().positive(),modelId:n,prompt:e.string().min(1).max(2e4)}).strict(),e.object({operation:e.enum(["freeze","finishAuthoring","useCandidate","discard","cancel","rollback"]),id:n,revision:e.number().int().positive()}).strict(),e.object({operation:e.literal("test"),id:n,revision:e.number().int().positive(),recipe:C}).strict(),e.object({operation:e.literal("compare"),id:n,revision:e.number().int().positive(),baseline:i,candidate:i,humanSelections:H.optional()}).strict()]),S=e.object({teamId:n,evidence:i,scoring:A.optional(),profiles:e.array(e.object({id:c,name:e.string(),profileRef:R,ownerWorkspaceId:n,ownerRevision:e.number().int().nonnegative(),baseRelease:i,profileSourceRevision:e.string(),components:e.array(e.object({kind:e.enum(["skill","instruction","agent","workflow"]),path:e.string(),agentId:e.string().optional(),workflowId:e.string().optional(),label:e.string(),binding:v}).strict()).max(500)}).strict()).max(100)}).strict(),O=e.object({candidateId:n,actorId:n,teamId:n,projectId:n.nullable(),candidateRevision:e.number().int().positive(),recipeHash:c,baseline:e.object({manifest:f,result:h}).strict(),candidate:e.object({manifest:f,result:h}).strict(),contentHash:c}).strict();function U(r){let t=O.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Accepted Human discovery integrity failed.");for(let o of[t.baseline,t.candidate])if(I(o),o.manifest.teamId!==t.teamId||o.manifest.lineage?.humanProjection)throw new Error("Discovery must retain original owner evidence.");return t}m(U,"verifyExperimentImprovementHumanOptions");function ee(r,t){if(!r.test||r.test.cancelRequestedAt)throw new Error("The paired test is unavailable.");let l={candidateId:r.id,actorId:r.actorId,teamId:r.teamId,projectId:r.projectId,candidateRevision:r.revision,recipeHash:r.test.recipeHash,...t};return U({...l,contentHash:s(l)})}m(ee,"sealExperimentImprovementHumanOptions");var a=e.string().trim().min(1).max(240),d=e.string().regex(/^[a-f0-9]{64}$/),_=e.object({schemaVersion:e.literal("openpond.advancedRefinerEvaluation.v1"),operationId:a,actorId:a,teamId:a,projectId:a.nullable(),mode:e.enum(["review_quality","downstream_adaptation"]),profileRef:e.object({source:e.enum(["local","github","openpond_git"]),repositoryId:a,profileId:a}).strict(),sourceRevision:e.string().min(1).max(500),baselineRelease:i,refinerRelease:i,evidence:i,externalDatasetBinding:v,adaptationDatasetBinding:v,privateClosureHash:d,adaptationTaskIds:e.array(a).min(1).max(1e4),holdoutTaskIds:e.array(a).min(1).max(1e4),adaptationSplit:e.enum(["train","validation","test","frozen_eval"]),holdoutSplit:e.enum(["train","validation","test","frozen_eval"]),environmentPolicy:e.discriminatedUnion("kind",[e.object({kind:e.literal("resettable"),environmentHash:d}).strict(),e.object({kind:e.literal("frozen_observations"),environmentHash:d}).strict()]),maximumCostUsd:e.number().finite().positive().max(1e4),maximumDurationMs:e.number().int().min(1e3).max(864e5),maximumModelSteps:e.number().int().min(1).max(1e3),contentHash:d}).strict();function M(r){let t=_.parse(r),{contentHash:l,...b}=t;if(s(b)!==l)throw new Error("Advanced Refiner evaluation admission changed.");let o=g(t.externalDatasetBinding);if(o.profileId!==t.profileRef.profileId||o.protectedProfileClosureHash!==t.privateClosureHash)throw new Error("Advanced evaluation changed its Profile or protected evaluator closure.");if(t.adaptationSplit===t.holdoutSplit||new Set([...t.adaptationTaskIds,...t.holdoutTaskIds]).size!==t.adaptationTaskIds.length+t.holdoutTaskIds.length)throw new Error("Adaptation and private holdout must be disjoint ordered cases.");let p=g(t.adaptationDatasetBinding);if(p.profileId!==o.profileId||p.packageHash!==o.packageHash||s(p.dataset)!==s(o.dataset)||s(p.target)!==s(o.target)||p.protectedProfileClosureHash!==o.protectedProfileClosureHash)throw new Error("This native advanced adapter needs separate adaptation and holdout recipes from the same exact released package and target.");if(p.split!==t.adaptationSplit||o.split!==t.holdoutSplit)throw new Error("Advanced split policies differ from their exact admitted recipes.");let q=new Set(o.population.map(u=>u.taskId)),z=new Set(p.population.map(u=>u.taskId));if(t.holdoutTaskIds.some(u=>!q.has(u))||t.adaptationTaskIds.some(u=>!z.has(u)))throw new Error("Advanced evaluation selected cases outside its exact Dataset recipe.");return t}m(M,"verifyAdvancedRefinerEvaluationPin");function ce(r){return M({...r,contentHash:s(r)})}m(ce,"sealAdvancedRefinerEvaluationPin");var B=e.object({pin:_,modelId:a,profileId:a,model:y,seed:e.number().int(),reasoningEffort:e.enum(["none","off","low","medium","high","xhigh","max"]).nullable()}).strict(),V=e.discriminatedUnion("operation",[e.object({operation:e.literal("start"),request:B}).strict(),e.object({operation:e.enum(["read","cancel","resume"]),id:a}).strict(),e.object({operation:e.literal("list")}).strict()]),W=e.object({taskId:a,sourceCaseHash:d,reviewSessionId:a,reviewTurnId:a,inputHarness:i,trigger:i,decision:e.enum(["no_action","route_deterministically","queue_refiner"]),outcome:i.nullable(),proposal:i.nullable(),validations:e.array(i).max(100),grade:e.object({id:a,contentHash:d,score:e.number().min(0).max(1).nullable(),passed:e.boolean(),failureClass:e.string().nullable()}).strict(),resetComplete:e.boolean()}).strict(),$=e.object({schemaVersion:e.literal("openpond.advancedRefinerReviewReceipt.v1"),id:a,runId:a,pinHash:d,ownerActorId:a,teamId:a,privateClosureHash:d,refinerRelease:i,cases:e.array(W).min(1).max(1e4),reviewScore:e.number().min(0).max(1).nullable(),completedCases:e.number().int().nonnegative(),noActionCases:e.number().int().nonnegative(),routedCases:e.number().int().nonnegative(),proposalCases:e.number().int().nonnegative(),costUsd:e.number().finite().nonnegative().nullable(),cleanupComplete:e.boolean(),createdAt:e.string().datetime(),contentHash:d}).strict();function de(r){return $.parse({...r,contentHash:s(r)})}m(de,"sealAdvancedRefinerReviewReceipt");var P=S.shape.profiles.element,me=S.extend({profiles:e.array(P.extend({components:e.array(P.shape.components.element.extend({adaptationSplits:e.array(e.object({split:e.enum(["train","validation","test","frozen_eval"]),taskIds:e.array(a)})),environmentHash:d,resettable:e.boolean(),reviewQuality:e.boolean()}))})),refinerReleases:e.array(i),activeRefiner:i.nullable(),models:e.array(e.object({id:a,profileId:a,name:e.string(),location:e.enum(["local","hosted"])}))}),L=e.object({operation:e.literal("prepare"),evidence:i,profileOptionId:a,componentLabel:a,mode:e.enum(["review_quality","downstream_adaptation"]),adaptationSplit:e.enum(["train","validation","test","frozen_eval"]),operationId:a,refinerRelease:i,maximumCostUsd:e.number().positive(),maximumDurationMs:e.number().int().positive(),maximumModelSteps:e.number().int().positive()}).strict(),le=e.union([V,L,e.object({operation:e.literal("options"),evidence:i}).strict()]),pe=e.object({modelRequests:e.number().int().nonnegative(),knownSpendUsd:e.number().nonnegative(),totalSpendUsd:e.number().nonnegative().nullable(),heldUsd:e.number().nonnegative(),uncertainRequests:e.number().int().nonnegative()}).strict();export{C as a,x as b,D as c,X as d,Y as e,T as f,Z as g,S as h,U as i,ee as j,_ as k,M as l,ce as m,B as n,V as o,W as p,$ as q,de as r,L as s,pe as t};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{c as _}from"./chunk-
|
|
2
|
+
import{c as _}from"./chunk-ER2VONWQ.js";import{a as J}from"./chunk-XBAB3HMA.js";import{b as U}from"./chunk-RHMULF56.js";import{I as z,K as V,ja as M,na as G,v as O}from"./chunk-WXG3G2O6.js";import{aa as N}from"./chunk-BYVE4TMU.js";import{Pb as F,Rb as q,v as C,z as A}from"./chunk-D6L6UNUQ.js";import{d as H,e as b,ga as x,ja as j}from"./chunk-ZY32SZ2P.js";import{f as T}from"./chunk-HNQPEOJD.js";import{c as I,d as S,e as W,j as $,m as L,n as c}from"./chunk-RCT3O3HQ.js";import{A as P}from"./chunk-X2J2P5ZT.js";import{a as h}from"./chunk-FTQLQJQV.js";import Y from"node:path";import{constants as K}from"node:fs";import{open as ae,realpath as X}from"node:fs/promises";async function Q(e){let i=e.attempt.profileNative,p=P.array($).max(16).parse(e.attempt.artifactRefs??[]);if(!p.length)return[];if(!i||!e.storeDir)throw new Error("The actual retained artifact owner is unavailable.");await e.authorize();let t=await e.events(i.turnId);if(c(t)!==i.traceHash||t.some(r=>r.sessionId!==i.sessionId||r.turnId!==i.turnId))throw new Error("The saved artifacts differ from their actual retained case trace.");let o=[],l=0;for(let r of p){let f=t.filter(d=>(d.action==="work_output_save"||d.action==="sandbox_save_output")&&d.status==="completed").flatMap(d=>{let k=P.object({outputRef:M}).passthrough().safeParse(d.data);return k.success?[k.data.outputRef]:[]}).filter(d=>`${i.sessionId}/${d.id}/${d.revision}/${d.title}`===r.id&&d.sourceTaskId===i.sessionId&&d.sourceTurnId===i.turnId&&d.sha256===r.contentHash&&d.sizeBytes===r.sizeBytes&&d.contentType===r.mediaType);if(f.length!==1)throw new Error("The selected artifact has no unique actual saved output.");let s=f[0];if(s.location.kind!=="local"&&(s.location.kind!=="managed"||!e.readManaged)||s.sizeBytes>G)throw new Error("The retained artifact has no supported local byte owner.");if((l+=s.sizeBytes)>2e7)throw new Error("The retained artifacts exceed their aggregate grading byte limit.");await e.authorize(),e.signal?.throwIfAborted();let a;if(s.location.kind==="managed")a=await e.readManaged(s,e.signal);else if(s.location.kind==="local"){let d=await X(Y.join(e.storeDir,"work","outputs")),k=await X(s.location.path);if(!k.startsWith(`${d}${Y.sep}`))throw new Error("The artifact escaped canonical output storage.");let w=await ae(k,K.O_RDONLY|K.O_NOFOLLOW);try{let g=await w.stat();if(!g.isFile()||g.size!==s.sizeBytes)throw new Error("The artifact bytes changed.");a=await w.readFile()}finally{await w.close()}}else throw new Error("The saved artifact has no admitted byte owner.");if(a.length!==s.sizeBytes||L(a)!==s.sha256)throw new Error("The artifact bytes differ from their sealed receipt.");await e.authorize(),o.push({reference:r,title:s.title,contentType:s.contentType,base64:a.toString("base64"),...s.contentType.startsWith("text/")||s.contentType==="application/json"?{text:new TextDecoder("utf8",{fatal:!0}).decode(a)}:{}})}return await e.authorize(),o}h(Q,"readLocalProfileArtifacts");import oe from"node:path";async function Z(e,i){if(e.limits.maximumSpendUsd===null)return;let p=process.env.OPENPOND_API_KEY?.trim(),t=process.env.OPENPOND_OPCHAT_API_URL?.trim();if(!p||!t)throw new Error("Profile evaluation requires an admitted hosted spend ceiling.");let o=new URL(`${t.replace(/\/+$/,"")}/experiment-budget`);if(o.protocol!=="https:"||o.username||o.password||o.search||o.hash)throw new Error("Profile evaluation spend authority URL is invalid.");o.searchParams.set("runId",e.id),o.searchParams.set("manifestHash",e.contentHash);let l=await fetch(o,{headers:{Authorization:`Bearer ${p}`},signal:i});if(!l.ok)throw new Error("The exact Profile evaluation spend ceiling is unavailable.");let r=P.object({runId:P.string(),manifestHash:P.string(),maximumCostUsd:P.number().positive()}).strict().parse(await l.json());if(r.runId!==e.id||r.manifestHash!==e.contentHash||r.maximumCostUsd!==e.limits.maximumSpendUsd)throw new Error("Profile evaluation spend authority differs from its admitted manifest.")}h(Z,"assertProfileEvaluationSpendAuthority");async function ee(e){e.signal?.throwIfAborted();let i,p,t=h(()=>{},"rejectCancellation"),o=new Promise((s,a)=>{t=a}),l=h((s,a)=>{p||(p=new Error(s),e.onInterrupt?.(a),e.interrupt?(i=e.interrupt(s),i.catch(()=>{})):t(p))},"cancel"),r=h(()=>l("Profile evaluation run cancelled.","cancelled"),"aborted"),f=setTimeout(()=>l(`Profile evaluation case exceeded its ${e.timeoutMs}ms timeout.`,"timed_out"),e.timeoutMs);e.signal?.addEventListener("abort",r,{once:!0});try{e.signal?.aborted&&r();let s=await Promise.race([e.send(),o]);if(i){let a=await i;if(a.status==="in_progress"||!a.completedAt)throw new Error("Profile evaluation cleanup remains unconfirmed.")}if(s.status==="in_progress"||!s.completedAt)throw new Error("Workflow evaluation turn did not settle.");return s}catch(s){if(i){let a=await i;if(a.status==="in_progress"||!a.completedAt)throw new Error("Profile evaluation cleanup remains unconfirmed.",{cause:s})}throw s}finally{clearTimeout(f),e.signal?.removeEventListener("abort",r)}}h(ee,"awaitProfileEvaluationTurn");function te(e){let i=e.manifest.profileEvaluation,p=e.manifest.policy;if(!i||p.kind!=="model"||e.manifest.execution.kind!=="harness")throw new Error("Profile evaluation requires a released source and model policy.");if(i.profileId!==e.profileRef.profileId||i.profileId!==e.binding.profileId||i.sourceRevision!==e.binding.sourceRevision||i.harnessRelease.id!==e.binding.harnessRelease.id||i.harnessRelease.contentHash!==e.binding.harnessRelease.contentHash||(e.binding.schemaVersion==="openpond.profileWorkflowBinding.v1"?i.target.kind!=="workflow"||i.target.workflowId!==e.binding.workflowId:i.target.kind==="workflow"||c(i.target)!==c(e.binding.target)))throw new Error("Profile evaluation binding differs from its admitted source.");if(p.model.provider!==e.modelRef.providerId||p.model.model!==e.modelRef.modelId||p.configurationHash!==e.modelConfigurationHash)throw new Error("Workflow evaluation model differs from its admitted configuration.");return async t=>{if(c(t.source)!==c(i))throw new Error("Workflow evaluation case differs from its admitted Profile source.");t.signal?.throwIfAborted(),await(e.assertSpendAuthority??Z)(e.manifest,t.signal);let o=!!(e.attachments?.length||e.requiredOutputs?.length),l=o&&!e.ownedSessionMetadata?.localProfileExperiment&&e.profileRef.source==="local"&&(e.modelRef.providerId==="codex"||U(e.modelRef.providerId)),r=await e.createSession({...o?{experience:"work"}:{},provider:e.modelRef.providerId,modelRef:e.modelRef,currentProfile:e.profileRef,...e.binding.schemaVersion==="openpond.profileWorkflowBinding.v1"?{profileWorkflowBinding:e.binding}:{profileComponentBinding:e.binding},hiddenFromDefaultSidebar:!0,metadata:{profileEvaluationRun:{id:e.manifest.id,contentHash:e.manifest.contentHash},taskId:t.task.id,seed:t.seed,...o&&e.profileRef.source==="local"?{workspaceTarget:"local"}:{},...o?{profileEvaluationOutputs:e.requiredOutputs??[]}:{},...e.ownedSessionMetadata}}),f=[...o?[l?`This is a local evaluation run. Complete the requested task using its public inputs. Save these required files at their declared paths relative to the current task workspace: ${JSON.stringify(e.requiredOutputs??[])}. The app preserves those declared files automatically when the turn finishes; work_save_output is not a shell command and is not needed here. For headless tools that write user preferences, use writable configuration, cache and profile directories within this task workspace and a bounded command timeout. Send the requested final response to finish the case. Private grading runs afterward; do not wait for grader feedback.`:"This is an evaluation run. Complete the requested task using its public inputs. work_exec starts in writable Work storage; inputs are ../inputs and released policy source is ../harness. When work_finish is available, create every declared output in Work and call work_finish with the path of your complete working response file, then send a short final answer. Otherwise save each required output with work_save_output and send your final response. Private grading runs after your final response; do not wait for grader feedback."]:[],typeof t.task.input=="string"?t.task.input:JSON.stringify(t.task.input),...Object.keys(t.task.policyVisibleContext).length?[`Policy-visible task context:
|
|
3
3
|
${JSON.stringify(t.task.policyVisibleContext)}`]:[]].join(`
|
|
4
4
|
|
|
5
5
|
`)||" ";await e.admitSession?.(r);try{let s=!1,a=await ee({signal:t.signal,timeoutMs:e.manifest.limits.timeoutMs,onInterrupt:h(n=>{s=n==="timed_out",e.onInterrupt?.(n)},"onInterrupt"),...e.interruptSessionTurn?{interrupt:h(n=>e.interruptSessionTurn(r.id,n),"interrupt")}:{},send:h(()=>{let n={prompt:f,...e.binding.schemaVersion==="openpond.profileWorkflowBinding.v1"?{workflowInput:{}}:e.binding.target.kind==="agent_action"?{workflowInput:t.task.input}:{},modelRef:e.modelRef,approvalPolicy:"on-request",...o?{sandbox:"workspace-write",codexPermissionMode:"default"}:{},...e.attachments?.length?{attachments:e.attachments}:{}};return e.modelRef.providerId==="codex"?e.sendTurn(r.id,n,{nativeTimeoutMs:e.manifest.limits.timeoutMs}):e.sendTurn(r.id,n)},"send")});if(a.status==="in_progress"||!a.completedAt)throw new Error("Workflow evaluation turn did not settle.");if(await e.validateTerminalTurn?.(r,a),!a.harnessSnapshot||a.harnessSnapshot.harnessRelease.id!==i.harnessRelease.id||a.harnessSnapshot.harnessRelease.contentHash!==i.harnessRelease.contentHash)throw new Error("Workflow evaluation turn executed a different Harness release.");if(!a.modelRef||c(a.modelRef)!==c(e.modelRef))throw new Error("Workflow evaluation turn executed a different model.");let d=await e.runtimeEventsForTurn(a.id),k=d.filter(n=>n.name==="workspace_action_result"&&(n.action==="sandbox_save_output"||n.action==="work_output_save")&&n.status==="completed"&&n.turnId===a.id).flatMap(n=>D(n.data)).filter(n=>n.sourceTaskId===r.id&&n.sourceTurnId===a.id&&n.location.kind!=="external"),g=(e.requiredOutputs??[]).flatMap(n=>{let y=[...k].reverse().find(B=>B.title===n.path&&B.contentType===n.mediaType&&(n.maxBytes===null||B.sizeBytes<=n.maxBytes));return y?[y]:[]}).map(n=>({id:`${r.id}/${n.id}/${n.revision}/${n.title}`,contentHash:n.sha256,mediaType:n.contentType,sizeBytes:n.sizeBytes})),v=-1;for(let n=d.length-1;n>=0;n-=1)if(d[n]?.name.endsWith(".delta")){v=n;break}let R=d.flatMap((n,y)=>n.name.endsWith(".delta")&&y!==v?[]:[n.id]);if(R.length+g.length>1e4)throw new Error("Profile evaluation produced more than 10,000 substantive evidence references.");let u=J(d,i.target.kind,a.status),m=Math.min(e.manifest.limits.maxOutputBytes,e.maximumOutputBytes??e.manifest.limits.maxOutputBytes);if(!Number.isSafeInteger(m)||m<1)throw new Error("Profile evaluation requires a positive bounded output limit.");let E=Buffer.byteLength(u,"utf8")>m;if(E&&!e.retainOutputLimitEvidence)throw new Error(`Profile evaluation case exceeded its ${m}-byte output limit.`);return E&&e.onOutputLimit?.(c(u)),{evidence:{output:{text:E?"":u},runtimeEventRefs:R,artifactRefs:g.map(n=>n.id),...E?{infrastructureError:`Profile evaluation case exceeded its ${m}-byte output limit.`}:a.status!=="completed"?{infrastructureError:a.error??`Workflow evaluation turn ${a.status}.`}:{}},traceHash:c(d),retainedEvidenceRef:{sessionId:r.id,turnId:a.id},artifactRefs:g,startedAt:a.startedAt,completedAt:a.completedAt,latencyMs:Math.max(0,Date.parse(a.completedAt)-Date.parse(a.startedAt)),costUsd:null,terminal:a.status==="completed"&&!E,failureClass:a.status==="completed"&&!E?null:a.status==="interrupted"?s?"timeout":"cancelled":"infrastructure_failure"}}finally{await e.settleSession?.(r.id)}}}h(te,"createProfileWorkflowEvaluationExecutor");function D(e,i=0){if(e==null||i>8)return[];let p=M.safeParse(e);return p.success?[p.data]:Array.isArray(e)?e.flatMap(t=>D(t,i+1)):typeof e!="object"?[]:Object.values(e).flatMap(t=>D(t,i+1))}h(D,"findFileOutputs");var re=P.object({manifest:C,taskset:x,profileRef:O,binding:P.union([H,b]),modelRef:T,modelConfigurationHash:S,taskId:I,seed:P.string().trim().min(1).max(500)}).strict();function De(e){return async(i,p)=>{let t=re.parse(i),o=await e.selectedProfile();if(!o||c(o.ref)!==c(t.profileRef)||o.sourceRevision!==t.binding.sourceRevision)throw new Error("Evaluation Profile differs from the app-server's authorized selection.");let l=await e.loadCatalog({ref:o.ref,sourceRevision:o.sourceRevision,harnessRelease:t.binding.harnessRelease}),r=t.manifest.profileEvaluation,f=await _({manifest:t.manifest,taskset:t.taskset,selected:{profileRef:o.ref,sourceRevision:o.sourceRevision,harnessRelease:t.binding.harnessRelease},loadCatalog:e.loadCatalog,resolveExternalDataset:e.resolveExternalDataset}),s=f?.definition??l.definitions.find(u=>u.id===r?.definitionId);if(A(t.manifest,t.taskset,f?.catalog??{schemaVersion:"openpond.profileEvaluations.v1",definitions:l.definitions,suites:l.suites}),!r||!s||(f?c(f.catalog):l.catalogHash)!==r.catalogHash||c(s)!==r.definitionHash||c(s.target)!==c(r.target)||s.tasksetRelease.id!==t.manifest.tasksetRelease.id||s.tasksetRelease.contentHash!==t.manifest.tasksetRelease.contentHash||!s.taskIds.includes(t.taskId)||!s.seeds.includes(t.seed)||t.manifest.population.filter(u=>u.taskId===t.taskId&&u.seed===t.seed).length!==1)throw new Error("Evaluation case differs from its released definition or admitted population.");let a=t.taskset.tasks.find(u=>u.id===t.taskId),d=j(a);if(d.artifactRefs.length!==a.artifactRefs.length||d.artifactRefs.length>z.maxAttachments)throw new Error("Evaluation case has an unauthorized task attachment.");if(d.artifactRefs.length&&!e.storeDir)throw new Error("Evaluation case attachment storage is unavailable.");let k=f?.packageValue??(d.artifactRefs.length||a.requiredOutputs?.length?await e.loadTasksetPackage(s,o.ref.profileId,t.binding.harnessRelease):null);if(k&&(k.contentHash!==t.manifest.packageHash||k.taskset.contentHash!==t.taskset.contentHash))throw new Error("Evaluation case Taskset differs from its frozen package or admitted manifest.");let w=d.artifactRefs.map(u=>{if(u.mediaType!=="application/pdf"||u.sizeBytes>z.maxAttachmentBytes)throw new Error(`Evaluation case attachment ${u.id} is not an admitted PDF.`);let m=k?.files.find(E=>E.asset.id===u.id);if(!m||c(m.asset)!==c(u))throw new Error(`Evaluation case attachment ${u.id} differs from its frozen Taskset file.`);return N(m),V.parse({id:u.id,name:oe.basename(u.path),kind:"file",mediaType:u.mediaType,sizeBytes:u.sizeBytes,contentsBase64:m.base64})}),g=te({manifest:t.manifest,profileRef:o.ref,binding:t.binding,modelRef:t.modelRef,modelConfigurationHash:t.modelConfigurationHash,createSession:e.createSession,sendTurn:e.sendTurn,...e.admitSession?{admitSession:h(u=>e.admitSession(u,t.manifest,t.taskId,t.seed,w),"admitSession")}:{},...e.settleSession?{settleSession:e.settleSession}:{},interruptSessionTurn:e.interruptSessionTurn,runtimeEventsForTurn:h(u=>e.store.runtimeEventsForTurn(u),"runtimeEventsForTurn"),attachments:w,requiredOutputs:a.requiredOutputs??[]});f&&await f.authorize(),p?.throwIfAborted();let v=await g({task:d,seed:t.seed,source:r,...p?{signal:p}:{}}),R=await Q({storeDir:e.storeDir,readManaged:e.readManagedArtifact,attempt:{artifactRefs:v.artifactRefs,profileNative:v.retainedEvidenceRef?.sessionId&&v.retainedEvidenceRef.turnId?{sessionId:v.retainedEvidenceRef.sessionId,turnId:v.retainedEvidenceRef.turnId,traceHash:v.traceHash}:null},events:h(u=>e.store.runtimeEventsForTurn(u),"events"),signal:p,authorize:h(async()=>{p?.throwIfAborted();let u=await e.selectedProfile();if(!u||c(u)!==c(o))throw new Error("The current artifact Profile authority changed.");f&&await f.authorize()},"authorize")});return{...v,evidence:{...v.evidence,artifacts:R,caseOwner:{...v.retainedEvidenceRef,traceHash:v.traceHash}}}}}h(De,"createProfileEvaluationCaseService");var ie=P.object({manifest:C,taskset:x,profileRef:O,binding:P.union([H,b]),modelRef:T,modelConfigurationHash:S}).strict();function Ve(e){let i=new Map,p=h(async(t,o)=>{let l=await e.selectedProfile();if(!l||c(l.ref)!==c(t.profileRef)||l.sourceRevision!==t.binding.sourceRevision)throw new Error("Evaluation Profile differs from the app-server's authorized selection.");let r=await e.loadCatalog({ref:l.ref,sourceRevision:l.sourceRevision,harnessRelease:t.binding.harnessRelease}),f=await _({manifest:t.manifest,taskset:t.taskset,selected:{profileRef:l.ref,sourceRevision:l.sourceRevision,harnessRelease:t.binding.harnessRelease},loadCatalog:e.loadCatalog,resolveExternalDataset:e.resolveExternalDataset}),s=f?.catalog??{schemaVersion:"openpond.profileEvaluations.v1",definitions:r.definitions,suites:r.suites};if(A(t.manifest,t.taskset,s),!e.privateGrading&&(t.taskset.graders.some(m=>m.kind==="model_judge"||m.kind==="custom_verifier")||t.taskset.metrics?.aggregation==="custom"))throw new Error("Profile evaluation cannot run this Taskset's model judge, custom verifier, or custom metric in the current app-server runtime.");let a=t.manifest.profileEvaluation,d=t.manifest.policy;if(a.profileId!==l.ref.profileId||a.sourceRevision!==t.binding.sourceRevision||a.harnessRelease.id!==t.binding.harnessRelease.id||a.harnessRelease.contentHash!==t.binding.harnessRelease.contentHash||(t.binding.schemaVersion==="openpond.profileWorkflowBinding.v1"?a.target.kind!=="workflow"||a.target.workflowId!==t.binding.workflowId:a.target.kind==="workflow"||c(a.target)!==c(t.binding.target))||d.kind!=="model"||d.model.provider!==t.modelRef.providerId||d.model.model!==t.modelRef.modelId||d.configurationHash!==t.modelConfigurationHash)throw new Error("Evaluation request differs from its admitted Profile workflow or model configuration.");let k=s.definitions.find(m=>m.id===a.definitionId),w=e.privateGrading?f?.packageValue??await(e.loadTasksetPackage?e.loadTasksetPackage(k,l.ref.profileId,a.harnessRelease):Promise.reject(new Error("The current private Taskset owner is unavailable."))):null,g=w?await e.privateGrading?.(t.manifest,w,o):void 0;await g?.authorize();let v=await e.store.getProfileEvaluationRun(t.manifest.id);if(v){if(v.manifest.contentHash!==t.manifest.contentHash||c(v.profileRef)!==c(l.ref))throw new Error(`Profile evaluation run ${t.manifest.id} already exists with another manifest.`);return v}f&&await f.authorize(),o?.throwIfAborted();let R=await q({manifest:t.manifest,taskset:t.taskset,catalog:s,...g?{customVerifier:g.customVerifier,modelJudge:g.modelJudge,metricSource:g.metricSource,metricExecutor:g.metricExecutor}:{},execute:h(({task:m,seed:E,signal:n})=>e.executeCase({...t,taskId:m.id,seed:E},n),"execute"),...o?{signal:o}:{},saveGrade:h(async m=>(await e.store.saveProfileEvaluationGrade(m),{id:m.contentHash,contentHash:m.contentHash,mediaType:"application/json",sizeBytes:null}),"saveGrade"),saveReceipt:h(async m=>{await e.store.saveProfileEvaluationReceipt(m)},"saveReceipt"),loadCompletedMember:h(async({receiptId:m})=>{let E=await e.store.getProfileEvaluationReceipt(m);if(!E)return null;let n=E.graderEvidenceRefs[0],y=n&&await e.store.getProfileEvaluationGrade(n.contentHash);if(!y)throw new Error(`Retained Profile evaluation receipt ${m} is missing its grade.`);return{receipt:E,grade:y}},"loadCompletedMember")});await g?.authorize(),f&&await f.authorize();let u={profileRef:l.ref,manifest:t.manifest,metric:R.metric,gradeRefs:R.grades.map(m=>({id:m.contentHash,contentHash:m.contentHash})),receiptRefs:R.receipts.map(m=>({id:m.id,contentHash:m.contentHash})),passRate:R.passRate,passed:R.passed,completedAt:new Date().toISOString()};return e.store.saveProfileEvaluationRun({...u,contentHash:c(u)})},"run");return(t,o)=>{let l=ie.parse(t),r=i.get(l.manifest.id);if(r){if(r.manifestHash!==l.manifest.contentHash)throw new Error(`Profile evaluation run ${l.manifest.id} is already running with another manifest.`);return r.promise}let f=p(l,o);return i.set(l.manifest.id,{manifestHash:l.manifest.contentHash,promise:f}),f.finally(()=>{i.get(l.manifest.id)?.promise===f&&i.delete(l.manifest.id)}).catch(()=>{}),f}}h(Ve,"createProfileEvaluationRunService");var se=P.object({id:I,suiteId:I,createdAt:W,modelRef:T,hostModelConfigurationHash:S.optional()}).strict();function Xe(e){let i=new Map,p=h(async t=>{let o=await e.selectedWorkflows(),l=await e.loadCatalog({ref:o.profileRef,sourceRevision:o.sourceRevision,harnessRelease:o.harnessRelease}),r={schemaVersion:"openpond.profileEvaluations.v1",definitions:l.definitions,suites:l.suites},f=r.suites.find(w=>w.id===t.suiteId);if(!f)throw new Error(`Profile evaluation suite ${t.suiteId} is absent from the selected release.`);let s=[];for(let w of f.definitionIds)s.push(await e.prepareRun({id:`suite-${c([t.id,w]).slice(0,32)}`,createdAt:t.createdAt,definitionId:w,modelRef:t.modelRef,...t.hostModelConfigurationHash?{hostModelConfigurationHash:t.hostModelConfigurationHash}:{}}));let a=await e.store.getProfileEvaluationSuiteRun(t.id);if(a){if(a.suiteId!==f.id||a.catalogHash!==c(r)||a.profileId!==o.profileRef.profileId||a.sourceRevision!==o.sourceRevision||a.harnessRelease.id!==o.harnessRelease.id||a.harnessRelease.contentHash!==o.harnessRelease.contentHash||a.createdAt!==t.createdAt)throw new Error(`Profile evaluation suite run ${t.id} already exists with another request.`);for(let[w,g]of a.members.entries()){let v=await e.store.getProfileEvaluationRun(g.runManifest.id);if(!v||v.contentHash!==g.runHash||v.manifest.contentHash!==g.runManifest.contentHash||v.manifest.contentHash!==s[w]?.manifest.contentHash)throw new Error("Retained Profile evaluation suite is missing member evidence.");let R=v.manifest.policy;if(R.kind!=="model"||R.model.provider!==t.modelRef.providerId||R.model.model!==t.modelRef.modelId)throw new Error(`Profile evaluation suite run ${t.id} already exists with another model.`)}return a}let d=[];for(let[w,g]of f.definitionIds.entries()){let v=s[w],R=await e.executeRun(v);d.push({definitionId:g,manifest:R.manifest,runHash:R.contentHash,passed:R.passed,score:R.metric.value})}let k=F({id:t.id,suiteId:f.id,catalog:r,members:d,createdAt:t.createdAt,completedAt:new Date().toISOString()});return e.store.saveProfileEvaluationSuiteRun(o.profileRef,r,k)},"run");return t=>{let o=se.parse(t),l=c(o),r=i.get(o.id);if(r){if(r.requestHash!==l)throw new Error(`Profile evaluation suite run ${o.id} is already running with another request.`);return r.promise}let f=p(o);return i.set(o.id,{requestHash:l,promise:f}),f.finally(()=>{i.get(o.id)?.promise===f&&i.delete(o.id)}).catch(()=>{}),f}}h(Xe,"createProfileEvaluationSuiteService");export{Q as a,te as b,De as c,Ve as d,Xe as e};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{t as _,w as C}from"./chunk-
|
|
2
|
+
import{t as _,w as C}from"./chunk-XKDOPNQ5.js";import{f as R,m}from"./chunk-HIQPGYVH.js";import{Sa as A}from"./chunk-ZY32SZ2P.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as l}from"./chunk-FTQLQJQV.js";var u=e.string().trim().min(1).max(200),P=e.object({operationId:u,execution:R,executionKind:e.literal("recorded_evidence").optional(),graders:e.array(A).min(1).max(100),maximumCostUsd:e.number().finite().min(1e-6).max(1e4),mappings:e.array(e.object({graderId:u,fields:_}).strict()).max(100).optional()}).strict().superRefine((a,n)=>{new Set(a.graders.map(o=>o.id)).size!==a.graders.length&&n.addIssue({code:"custom",path:["graders"],message:"Select each grader once."}),a.mappings&&(new Set(a.mappings.map(o=>o.graderId)).size!==a.mappings.length||a.mappings.some(o=>!a.graders.some(c=>c.id===o.graderId)))&&n.addIssue({code:"custom",path:["mappings"],message:"Map each selected grader at most once."})}),q=e.object({schemaVersion:e.literal("openpond.experimentScoringPass.v1"),id:u,teamId:u,revision:e.number().int().positive(),request:P,graders:e.array(C).min(1).max(100),status:e.enum(["queued","running","cancelling","completed","failed","cancelled"]),totalCount:e.number().int().min(1).max(1e4),counts:e.object({pending:e.number().int().nonnegative(),running:e.number().int().nonnegative(),scored:e.number().int().nonnegative(),unavailable:e.number().int().nonnegative(),failed:e.number().int().nonnegative(),cancelled:e.number().int().nonnegative()}).strict(),resultAvailable:e.boolean(),createdAt:e.iso.datetime(),startedAt:e.iso.datetime().nullable(),completedAt:e.iso.datetime().nullable(),error:e.object({code:u,message:e.string().max(2e3)}).strict().nullable()}).strict(),L=q.extend({contentHash:e.string().regex(/^[a-f0-9]{64}$/)});function O(a){let n=L.parse(a),{contentHash:o,...c}=n;if(m(c)!==o||Object.values(n.counts).reduce((r,d)=>r+d,0)!==n.totalCount)throw new Error("Scoring pass integrity or population accounting failed.");let t=["completed","failed","cancelled"].includes(n.status);if(t&&(!n.completedAt||n.counts.pending||n.counts.running)||!t&&(n.completedAt!==null||n.resultAvailable)||n.status==="completed"&&!n.resultAvailable)throw new Error("Scoring pass lifecycle differs from its retained result.");if(n.graders.length!==n.request.graders.length||new Set(n.graders.map(r=>r.feedbackKey)).size!==n.graders.length||n.graders.some((r,d)=>m(r.release)!==m(n.request.graders[d])||m(r.mappings??[])!==m(n.request.mappings?.find(f=>f.graderId===r.release?.id)?.fields??[])))throw new Error("Scoring pass graders differ from their exact admission.");return n}l(O,"verifyExperimentScoringPass");var I=8388608;async function B(a,n,o,c){let t=new AbortController,r=o.signal,d=l(()=>t.abort(r?.reason),"forward");r?.aborted?d():r?.addEventListener("abort",d,{once:!0});let f=setTimeout(()=>t.abort(new Error("Connected evidence request timed out.")),6e4),s,h=l(()=>{s&&s.cancel(t.signal.reason).catch(()=>{})},"abortReader");t.signal.addEventListener("abort",h,{once:!0});let v=new Promise((w,g)=>{let p=l(()=>g(t.signal.reason??new DOMException("Request aborted","AbortError")),"abort");t.signal.aborted?p():t.signal.addEventListener("abort",p,{once:!0})});try{let w=a(n,{...o,signal:t.signal}).then(i=>{if(t.signal.aborted)throw i.body?.cancel(t.signal.reason).catch(()=>{}),t.signal.reason;return i}),g=await Promise.race([w,v]),p=g.headers.get("content-length");if(s=g.body?.getReader(),t.signal.aborted)throw await s?.cancel(t.signal.reason),t.signal.reason;if(p&&Number(p)>I)throw await s?.cancel(),c(502,"connected_response_too_large","Connected evidence response exceeds 8 MiB.");let x=[],b=0;if(s)for(;;){let i=await Promise.race([s.read(),v]);if(i.done)break;if(b+=i.value.byteLength,b>I)throw await s.cancel(),c(502,"connected_response_too_large","Connected evidence response exceeds 8 MiB.");x.push(i.value)}let S=new Uint8Array(b),E=0;for(let i of x)S.set(i,E),E+=i.byteLength;let y;try{y=JSON.parse(new TextDecoder("utf-8",{fatal:!0}).decode(S))}catch{throw c(502,"connected_response_invalid","Connected evidence response is not valid JSON.")}return{response:g,value:y}}finally{clearTimeout(f),r?.removeEventListener("abort",d),t.signal.removeEventListener("abort",h),s?.releaseLock()}}l(B,"fetchConnectedJson");export{P as a,O as b,B as c};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{ja as h}from"./chunk-
|
|
2
|
+
import{ja as h}from"./chunk-WXG3G2O6.js";import{m as f}from"./chunk-RCT3O3HQ.js";import{A as e}from"./chunk-X2J2P5ZT.js";import{a as m}from"./chunk-FTQLQJQV.js";var g=e.object({schemaVersion:e.literal("openpond.profileWorkCompletion.v1"),sessionId:e.string().min(1),turnId:e.string().min(1),responsePath:e.string().min(1),responseSha256:e.string().regex(/^[a-f0-9]{64}$/),responseBytes:e.number().int().min(1).max(1048576),responseChunks:e.array(e.string().max(65536)).min(1).max(32),outputs:e.array(e.object({id:e.string(),revision:e.number().int(),sha256:e.string(),sizeBytes:e.number().int(),contentType:e.string(),sourceTaskId:e.string(),sourceTurnId:e.string(),title:e.string()}).strict()).min(1).max(100)}).strict();function W(s){let u=new TextDecoder("utf-8",{fatal:!0}).decode(s.response),i=[];for(let r=0;r<u.length;r+=65536)i.push(u.slice(r,r+65536));return g.parse({schemaVersion:"openpond.profileWorkCompletion.v1",sessionId:s.sessionId,turnId:s.turnId,responsePath:s.responsePath,responseSha256:f(s.response),responseBytes:s.response.length,responseChunks:i,outputs:s.outputs.map(({id:r,revision:t,sha256:a,sizeBytes:p,contentType:c,sourceTaskId:o,sourceTurnId:d,title:n})=>({id:r,revision:t,sha256:a,sizeBytes:p,contentType:c,sourceTaskId:o,sourceTurnId:d,title:n}))})}m(W,"createProfileWorkCompletion");function _(s){let u=s.filter(o=>o.name==="tool.completed"&&o.action==="work_finish"&&o.status==="completed");if(!u.length)return null;if(u.length!==1)throw new Error("The case has multiple Work completion receipts.");let i=u[0],r=i.data,t=g.parse(r?.result);if(t.sessionId!==i.sessionId||t.turnId!==i.turnId)throw new Error("Work completion belongs to another case or turn.");let a=t.responseChunks.join(""),p=Buffer.from(a,"utf8");if(p.length!==t.responseBytes||f(p)!==t.responseSha256)throw new Error("Work completion response differs from its sealed content.");if(new Set(t.outputs.map(o=>`${o.id}/${o.revision}`)).size!==t.outputs.length)throw new Error("Work completion repeats a saved output.");let c=s.slice(0,s.indexOf(i));for(let o of t.outputs){if(o.sourceTaskId!==t.sessionId||o.sourceTurnId!==t.turnId)throw new Error("Work completion output belongs to another case or turn.");if(c.filter(n=>n.name==="workspace_action_result"&&n.action==="work_output_save"&&n.status==="completed"&&n.sessionId===t.sessionId&&n.turnId===t.turnId).flatMap(n=>{let l=h.safeParse(n.data?.outputRef);return l.success&&Object.entries(o).every(([k,I])=>l.data[k]===I)?[l.data]:[]}).length!==1)throw new Error("Work completion lacks an exact prior saved-output receipt.")}return a}m(_,"completedProfileWorkResponse");export{W as a,_ as b};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{c as H,d as q}from"./chunk-
|
|
2
|
+
import{c as H,d as q}from"./chunk-HUMNLSCV.js";import{c as T,d as L,e as R}from"./chunk-O5ZOW474.js";import{a as M,b as O,e as k,f as C}from"./chunk-I6VMRQF4.js";import{v as S}from"./chunk-ZY32SZ2P.js";import{n as N}from"./chunk-RCT3O3HQ.js";import{A as c}from"./chunk-X2J2P5ZT.js";import{a}from"./chunk-FTQLQJQV.js";var j=c.object({id:c.string().min(1).max(200),name:c.string().min(1).max(64),arguments:c.record(c.string(),c.unknown())}).strict(),W=c.object({text:c.string().max(262144),toolCalls:c.array(j).max(200)}).strict();async function D(e){if(!e.taskId||e.taskId.length>500)throw new Error("environment_task_identity_invalid");if(!Number.isInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>36e5)throw new Error("environment_attempt_timeout_invalid");S(e.instructions,262144);let m=e.taskId,f=e.instructions,d=structuredClone(e.input),J=e.policy,x=new AbortController,u=e.signal?AbortSignal.any([x.signal,e.signal]):x.signal,i=!1,_=setTimeout(()=>{i=!0,x.abort(new Error("environment_attempt_timeout"))},e.timeoutMs);_.unref?.();let t=null,h=null,o="environment_failure",p=null,v=null,b=!1,r=!1,n=[],y=0,E=a(s=>{if(y+=new TextEncoder().encode(JSON.stringify(s)).byteLength,y>4194304)throw o="budget_exhausted",new Error("environment_transcript_budget_exhausted");n.push(s)},"append"),P=new Set;try{t=await R({...e,input:d,signal:u}),E({role:"system",text:f}),E({role:"user",text:JSON.stringify({input:d,observation:t.observation})});for(let s=0;s<=t.definition.maxSteps;s++){u.throwIfAborted();let w;try{let l=await J({messages:structuredClone(n),tools:structuredClone(t.definition.tools),signal:u});S(l,1048576),w=structuredClone(W.parse(l));for(let g of w.toolCalls){if(P.has(g.id))throw new Error("environment_duplicate_tool_call_identity");P.add(g.id)}}catch(l){throw u.aborted||(o="policy_failure"),l}if(u.throwIfAborted(),E({role:"assistant",...w}),!w.toolCalls.length){p=w.text,await t.collect(),h=t.snapshot(),b=!0,o="completed";break}for(let l of w.toolCalls){let g;try{g=await t.step({name:l.name,arguments:l.arguments})}catch(I){if(!(I instanceof L))throw I;if(I.code==="step_budget_exhausted"){o="budget_exhausted";break}g={error:I.code}}E({role:"tool",callId:l.id,name:l.name,observation:g})}if(o==="budget_exhausted")break;s===t.definition.maxSteps&&(o="budget_exhausted")}h??=t.snapshot()}catch(s){u.aborted&&(o=i?"timed_out":"cancelled"),v=s instanceof Error?s.message:"environment_attempt_failed",h??=t?.snapshot()??null}finally{if(clearTimeout(_),t)try{await t.destroy(),r=!0}catch(s){o="environment_failure",v=s instanceof Error?s.message:"environment_cleanup_failed"}}let B={schemaVersion:"openpond.javascriptEnvironmentAttempt.v1",taskId:m,status:o,output:p,snapshot:h,collected:b,environmentCleanupComplete:r,messages:n,error:v};return{...B,contentHash:N(B)}}a(D,"runJavaScriptEnvironmentAttempt");import{spawn as z}from"node:child_process";async function A(e){if(e.signal?.throwIfAborted(),!Number.isSafeInteger(e.timeoutMs)||e.timeoutMs<1||e.timeoutMs>3e4)throw new Error("sql_timeout_invalid");let m=O(e.request),{sqlExecutionProcessSource:f}=await import("./sql-execution-process-source-B4HQM6ZV.js");e.signal?.throwIfAborted();let{signal:d}=e,J=`globalThis.__openpondSqlInput = JSON.parse(${JSON.stringify(JSON.stringify(m))});
|
|
3
3
|
${f}`;return new Promise((x,u)=>{let i=z("node",["--max-old-space-size=64","--input-type=module","-"],{stdio:["pipe","pipe","pipe"],env:{PATH:process.env.PATH},windowsHide:!0}),_,t="",h=0,o=0,p=a(r=>{_??=r,i.kill("SIGKILL")},"stop"),v=a(()=>p(d?.reason instanceof Error?d.reason:new Error("sql_cancelled")),"cancel"),b=setTimeout(()=>p(new Error("sql_timeout")),e.timeoutMs);d?.addEventListener("abort",v,{once:!0}),i.stdout.setEncoding("utf8"),i.stdout.on("data",r=>{h+=Buffer.byteLength(r),h>m.maxResultBytes+65536?p(new Error("sql_process_response_too_large")):t+=r}),i.stderr.on("data",r=>{o+=r.byteLength,o>65536&&p(new Error("sql_process_stderr_too_large"))}),i.once("error",r=>{_??=r}),i.stdin.on("error",r=>p(r)),i.once("close",r=>{if(clearTimeout(b),d?.removeEventListener("abort",v),_){u(_);return}try{if(r!==0)throw new Error("sql_process_exited_without_result");let n=JSON.parse(t);if(!n||typeof n!="object"||!("ok"in n)||n.ok!==!0||!("result"in n))throw new Error("sql_environment_failed");let y=M.parse(n.result);S(y,m.maxResultBytes),x(y)}catch(n){u(n)}}),i.stdin.end(J),d?.aborted&&v()})}a(A,"executeSqlInProcess");async function ie(e){let m=k.parse(e.operation);return T(e,{sql:A,candidate:q,controller:a(async f=>C.parse(await H({...f,exportName:m,maxResultBytes:1572864,deterministic:!0,errorPrefix:"environment"})),"controller")})}a(ie,"executeJavaScriptEnvironmentInWorker");async function le(e){let m=k.parse(e.operation);return T(e,{sql:A,candidate:q,controller:a(async f=>C.parse(await q({...f,exportName:m,maxResultBytes:1572864,deterministic:!0,errorPrefix:"environment"})),"controller")})}a(le,"executeJavaScriptEnvironmentInProcess");export{D as a,ie as b,le as c};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{v as x}from"./chunk-MOXIGLN2.js";import{B as I}from"./chunk-OFJPOTES.js";import{p as T}from"./chunk-YU3C6U5V.js";import{a as A}from"./chunk-KVTBX2UP.js";import{a}from"./chunk-FTQLQJQV.js";function G(e){let n=e.trim().replace(/^```(?:json)?\s*/i,"").replace(/```\s*$/,"");try{let t=JSON.parse(n);return typeof t.score!="number"||typeof t.passed!="boolean"?null:{score:Math.max(0,Math.min(1,t.score)),passed:t.passed,feedback:typeof t.feedback=="string"?t.feedback.slice(0,2e4):"Model judge completed.",evidenceRefs:[]}}catch{return null}}a(G,"parseModelJudgeResult");function X(e){if(typeof e=="number"&&Number.isFinite(e)&&e>0)return Math.floor(e);let n=process.env.OPENPOND_HOSTED_WORKSPACE_TOOL_ROUNDS?.trim();if(!n)return 64;if(/^(unlimited|infinite|infinity)$/i.test(n))return Number.POSITIVE_INFINITY;let t=Number.parseInt(n,10);return Number.isFinite(t)&&t>0?t:64}a(X,"resolveMaxHostedWorkspaceToolRounds");function Y(e,n,t){let o=Date.now()-6e4;for(let r=e.length-1;r>=0;r-=1){let i=e[r],s=Date.parse(i.timestamp);if(Number.isFinite(s)&&s<o)return null;if(i.sessionId!==n||i.name!=="session.compaction.completed")continue;let d=i.data&&typeof i.data=="object"?i.data:null;if(d?.provider==="codex"&&d.codexThreadId===t)return i}return null}a(Y,"findRecentCodexCompactionCompleted");function Q(e){return e==="agent"||e==="skill"||e==="extension"||e==="model"||e==="configuration"?e:null}a(Q,"createImproveTargetKind");function V(e){if(!e)return;let n=Number(e);return Number.isFinite(n)&&n>0?Math.trunc(n):void 0}a(V,"createImproveLimit");var ne=new Set(["ask_user","get_profile","agent_inspect","agent_build","agent_validate","agent_eval","agent_run","agent_traces","agent_check","exec_command","view_image","list_files","read_files","search_files","write_file","write_files","edit_file","delete_file","workspace_status"]);function re(e){let n={type:"string"},t={type:"string",minLength:1};return[["list_files",{},[]],["workspace_status",{},[]],["read_files",{paths:{type:"array",items:t,minItems:1,maxItems:30}},["paths"]],["search_files",{query:{type:"string",minLength:1,maxLength:2e3}},["query"]],["write_file",{path:t,content:n},["path","content"]],["write_files",{files:{type:"object",additionalProperties:n,maxProperties:30}},["files"]],["edit_file",{path:t,oldText:{type:"string",minLength:1},newText:n,replaceAll:{type:"boolean"}},["path","oldText","newText"]],["delete_file",{path:t},["path"]]].map(([r,i,s])=>({name:r,description:`${r.replaceAll("_"," ")} in the isolated selected candidate component. Paths are relative to its public source tree.`,parameters:{type:"object",additionalProperties:!1,properties:i,required:s},execute:a(async d=>{let c=await e(d.session.id,{action:r,args:d.args,source:"chat_action"},{turnId:d.turnId,workspaceDiffBaseline:d.workspaceDiffBaseline});return x(d.callId,r,c)},"execute")}))}a(re,"candidateFileToolDefinitions");import{realpath as C}from"node:fs/promises";import p from"node:path";function ce(e){let n=[O()];if(!e.loadProfileState)return n;let t=a(async(r,i)=>{if(i&&(i.turnMetadata?.source==="experiment-improvement"||i.turnMetadata?.refinementCandidate!==void 0||i.session.metadata?.source==="experiment-improvement"||i.session.metadata?.refinementCandidate!==void 0)){if(!e.resolveCandidateProfile)throw new Error("Candidate authoring requires an admitted isolated Profile resolver.");let s=await e.resolveCandidateProfile(i);return S(s),s}return e.loadProfileState(r,i)},"loadProfileState"),o=a(async r=>{if(r.context.turnMetadata?.source==="experiment-improvement"||r.context.turnMetadata?.refinementCandidate!==void 0||r.context.session.metadata?.source==="experiment-improvement"||r.context.session.metadata?.refinementCandidate!==void 0){if(!e.executeCandidateAgentCommand)throw new Error("Candidate Agent commands require filesystem-confined execution.");return e.executeCandidateAgentCommand(r)}return I({...r,throwOnFailure:!1})},"runCommand");return n.push(E(t),u(t,o,"agent_inspect","inspect"),u(t,o,"agent_build","build"),u(t,o,"agent_validate","validate"),u(t,o,"agent_eval","eval"),D(t,o),u(t,o,"agent_traces","traces"),L(t,o)),n}a(ce,"createAuthoringModelToolDefinitions");function O(){return{name:"ask_user",description:"Ask one blocking user question when the answer materially changes the requested work and cannot be inferred safely. This call ends the current model turn after persisting the question; do not batch it with mutations.",parameters:{type:"object",additionalProperties:!1,properties:{question:{type:"string",minLength:1,maxLength:2e3},reason:{type:"string",minLength:1,maxLength:1e3},options:{type:"array",minItems:2,maxItems:5,items:{type:"object",additionalProperties:!1,properties:{id:{type:"string",minLength:1,maxLength:80},label:{type:"string",minLength:1,maxLength:160},description:{type:"string",minLength:1,maxLength:500}},required:["id","label"]}},allowFreeform:{type:"boolean"}},required:["question"]},execute:a(async e=>{let n=m(e.args,"question"),t=R(e.args,"reason"),o=q(e.args,"options").map(i=>g(i)).filter(i=>!!i).map(i=>({id:m(i,"id"),label:m(i,"label"),description:R(i,"description")})),r={questionId:`question_${e.turnId}_${e.callId}`,question:n,reason:t,options:o,allowFreeform:e.args.allowFreeform!==!1,status:"awaiting_user_input",nextStep:"end_turn"};return{...l(e.callId,"ask_user",!0,n,r),turnControl:"await_user_input"}},"execute")}}a(O,"askUserDefinition");function E(e){return{name:"get_profile",description:"Return the exact OpenPond Profile selected for this chat turn, including bounded local path, Skill, Agent, action, and Git context. Call before Profile authoring. This tool does not change the selected Profile or grant filesystem permission.",parameters:{type:"object",additionalProperties:!1,properties:{}},execute:a(async n=>{let t=h(n),o=await e(t,n),r=N(o,n.turnMetadata,t);return l(n.callId,"get_profile",!o.error,o.error??"Resolved selected Profile.",r)},"execute")}}a(E,"getProfileDefinition");function u(e,n,t,o){return{name:t,description:j(t),parameters:M(),execute:a(async r=>{let i=await f(e,r),s=await v(n,r,o,i.cwd);return l(r.callId,t,s.code===0&&!s.timedOut,s.code===0&&!s.timedOut?`${t} passed for ${i.agentId}.`:`${t} failed for ${i.agentId}.`,{agentId:i.agentId,cwd:i.cwd,command:o,...P(s)})},"execute")}}a(u,"agentCommandDefinition");function D(e,n){return{name:"agent_run",description:"Run one declared action on an exact enabled Profile Agent with typed JSON input. Use for behavioral proof, not as the default validation gate.",parameters:{type:"object",additionalProperties:!1,properties:{agentId:{type:"string",minLength:1},action:{type:"string",minLength:1},input:{type:"object",additionalProperties:!0}},required:["agentId","action"]},execute:a(async t=>{let o=await f(e,t),r=m(t.args,"action"),i=g(t.args,"input")??{},s=await n({context:t,command:"run",args:[r,"--json","--input",JSON.stringify(i),"--cwd",o.cwd],cwd:o.cwd,timeoutMs:12e4,maxOutputBytes:25e4});return l(t.callId,"agent_run",s.code===0&&!s.timedOut,s.code===0&&!s.timedOut?`Action ${r} passed for ${o.agentId}.`:`Action ${r} failed for ${o.agentId}.`,{agentId:o.agentId,cwd:o.cwd,action:r,input:i,...P(s)})},"execute")}}a(D,"agentRunDefinition");function L(e,n){return{name:"agent_check",description:"Run the mandatory Agent authoring gate\u2014inspect, build, validate, and eval\u2014in order for one exact Profile Agent. Stops on the first failure and returns bounded per-step receipts.",parameters:M(),execute:a(async t=>{let o=await f(e,t),r=[];for(let s of["inspect","build","validate","eval"]){let d=await v(n,t,s,o.cwd),c=P(d);if(r.push({command:s,receipt:c}),d.code!==0||d.timedOut)return l(t.callId,"agent_check",!1,`agent_check stopped at ${s} for ${o.agentId}.`,{agentId:o.agentId,cwd:o.cwd,passed:!1,failedStep:s,steps:r})}let i=await e(h(t),t);return l(t.callId,"agent_check",!0,`agent_check passed for ${o.agentId}.`,{agentId:o.agentId,cwd:o.cwd,passed:!0,failedStep:null,steps:r,profileRefresh:{activeProfile:i.activeProfile,agentIds:i.agents.map(s=>s.id).slice(0,200),actionIds:i.actionCatalog.map(s=>s.id).slice(0,500)}})},"execute")}}a(L,"agentCheckDefinition");async function f(e,n){let t=m(n.args,"agentId"),o=await e(h(n),n);S(o);let r=g(n.turnMetadata,"authoringIntent");if(r?.artifact==="agent"&&r.operation==="improve"&&typeof r.targetAgentId=="string"&&r.targetAgentId!==t)throw new Error(`Agent improve is bound to ${r.targetAgentId}; ${t} is not authorized.`);if(!o.agents.find(k=>k.id===t)?.enabled)throw new Error(`Enabled Profile Agent not found: ${t}`);let s=t==="default"?o.sourcePath:p.resolve(o.sourcePath,"agents",t),d=await C(o.sourcePath),c=await C(s).catch(()=>null);if(!c)throw new Error(`Profile Agent source does not exist: ${t}`);if(!F(d,c))throw new Error(`Profile Agent source escapes the selected Profile: ${t}`);return{profile:o,agentId:t,cwd:c}}a(f,"resolveAgentTarget");async function v(e,n,t,o){return e({context:n,command:t,args:t==="inspect"||t==="validate"||t==="eval"||t==="traces"?["--json"]:[],cwd:o,timeoutMs:t==="eval"?18e4:12e4,maxOutputBytes:25e4})}a(v,"executeAgentCommand");function S(e){if(e.error)throw new Error(e.error);if(e.mode!=="local"||!e.repoPath||!e.sourcePath)throw new Error("The selected OpenPond Profile is not locally editable.")}a(S,"assertEditableProfile");function N(e,n,t){let o=e.git?.files.slice(0,200).map(r=>r.path)??[];return{mode:e.mode,editable:e.mode==="local"&&!!(e.repoPath&&e.sourcePath)&&!e.error,blockedReason:e.error??(e.mode==="local"&&e.repoPath&&e.sourcePath?null:"The selected Profile is not locally editable."),ref:t,activeProfile:e.activeProfile,repoPath:e.repoPath,sourcePath:e.sourcePath,manifestPath:e.manifestPath,profileConfigPath:e.sourcePath?p.join(e.sourcePath,"settings","profile.yaml"):null,authoring:g(n,"authoringIntent"),skills:e.skills.slice(0,200).map(r=>({name:r.name,description:r.description,path:r.path,sourcePath:r.sourcePath,enabled:r.enabled,validationStatus:r.validationStatus})),agents:e.agents.slice(0,200).map(r=>{let i=e.actionCatalog.filter(s=>s.agentId===r.id).slice(0,100);return{id:r.id,name:r.name,path:r.path,sourcePath:e.sourcePath?r.id==="default"?e.sourcePath:p.resolve(e.sourcePath,"agents",r.id):r.path,enabled:r.enabled,defaultAction:i.find(s=>s.sourceActionId==="chat"||s.id===`${r.id}.chat`)?.id??i[0]?.id??null,actionNames:i.map(s=>s.id)}}),git:e.git?{branch:e.git.branch,head:e.git.head,dirty:e.git.dirty,changedPaths:o,truncated:e.git.files.length>o.length}:null}}a(N,"profileProjection");function h(e){let n=g(e.turnMetadata,"selectedProfileRef");return n&&(n.source==="local"||n.source==="github"||n.source==="openpond_git")&&typeof n.repositoryId=="string"&&n.repositoryId.trim()&&typeof n.profileId=="string"&&n.profileId.trim()?{source:n.source,repositoryId:n.repositoryId,profileId:n.profileId}:e.session.currentProfile??null}a(h,"selectedProfileRef");function M(){return{type:"object",additionalProperties:!1,properties:{agentId:{type:"string",minLength:1,description:"Exact enabled Agent ID from get_profile."}},required:["agentId"]}}a(M,"agentTargetParameters");function j(e){return`Run OpenPond Agent SDK ${e.replace(/^agent_/,"")} for one exact enabled Agent beneath the selected Profile and return a bounded structured receipt.`}a(j,"agentToolDescription");function P(e){return{code:e.code,timedOut:e.timedOut,stdout:$(e.stdout),stderr:e.stderr,stdoutTruncated:e.stdoutTruncated,stderrTruncated:e.stderrTruncated}}a(P,"commandReceipt");function $(e){let n=e.trim();if(!n)return"";try{return JSON.parse(n)}catch{return n}}a($,"parseJsonOrText");function l(e,n,t,o,r){return{toolCallId:e,name:n,ok:t,contentText:JSON.stringify({ok:t,action:n,output:o,data:r},null,2),data:r}}a(l,"modelResult");function m(e,n){let t=e[n];if(typeof t!="string"||!t.trim())throw new Error(`${n} is required`);return t.trim()}a(m,"stringArg");function R(e,n){let t=e[n];return typeof t=="string"&&t.trim()?t.trim():null}a(R,"optionalStringArg");function q(e,n){let t=e[n];return Array.isArray(t)?t:[]}a(q,"arrayArg");function g(e,n){let t=n&&e&&typeof e=="object"&&!Array.isArray(e)?e[n]:e;return t&&typeof t=="object"&&!Array.isArray(t)?t:null}a(g,"recordArg");function F(e,n){let t=p.relative(e,n);return t===""||!t.startsWith("..")&&!p.isAbsolute(t)}a(F,"isWithin");import{execFile as B}from"node:child_process";import y from"node:path";var b=12,_=8,w=" .:-=+*#%@";function he(e={}){return{name:"view_image",description:"Inspect a real local PNG, JPEG, GIF, WebP, or AVIF file. Reads the image bytes directly and returns dimensions plus a coarse pixel/color map; it also creates an actual image preview in the chat UI. Use this instead of opening file:// URLs or browser snapshots, which cannot inspect local image pixels. For many video frames, build one contact sheet and inspect that rather than reading frames one by one.",parameters:{type:"object",additionalProperties:!1,properties:{path:{type:"string",minLength:1,description:"Absolute image path, or a path relative to the selected local project."}},required:["path"]},enabled:a(n=>n.provider==="codex"||n.session.provider==="codex"||n.session.openPondCommandAccessMode==="disabled"?!1:A({session:n.session}).target!=="sandbox","enabled"),execute:a(async n=>{if(n.turnMetadata?.source==="experiment-improvement"||n.turnMetadata?.refinementCandidate!==void 0||n.session.metadata?.source==="experiment-improvement"||n.session.metadata?.refinementCandidate!==void 0){if(!e.executeCandidateImage)throw new Error("Candidate image inspection requires its confined filesystem executor.");return e.executeCandidateImage(n)}let t=K(n.args.path,"path"),o=y.isAbsolute(t)?y.resolve(t):n.session.cwd?y.resolve(n.session.cwd,t):"";if(!o)throw new Error("A relative image path requires a selected local project.");let r=await T(o);if(!r)throw new Error(`Local image was not found or is not a supported image: ${o}`);let i=await U(r.path,n.signal);return{toolCallId:n.callId,name:"view_image",ok:!0,contentText:JSON.stringify({ok:!0,action:"view_image",output:`Read actual image pixels from ${r.path}.`,data:{path:r.path,contentType:r.contentType,sizeBytes:r.sizeBytes,...i,note:"The luminance and color maps are deterministic pixel samples, not a semantic vision caption."}},null,2),data:{openpondImagePreviewPath:r.path,path:r.path,contentType:r.contentType,sizeBytes:r.sizeBytes,...i}}},"execute")}}a(he,"createLocalImageModelToolDefinition");async function U(e,n,t=z){let o=await t("identify",["-format","%m %w %h",e],n),r=/^(\S+)\s+(\d+)\s+(\d+)/.exec(o.trim());if(!r)throw new Error("Image metadata could not be decoded.");let i=await t("convert",[e,"-resize",`${b}x${_}!`,"-depth","8","txt:-"],n),s=W(i);return{format:r[1],width:Number.parseInt(r[2],10),height:Number.parseInt(r[3],10),luminanceMap:s.map(d=>d.map(J).join("")),colorMap:s.map(d=>d.map(c=>`#${c.map(H).join("")}`))}}a(U,"inspectImagePixels");function W(e){let n=Array.from({length:_},()=>Array.from({length:b},()=>[0,0,0]));for(let t of e.split(/\r?\n/)){let o=/^(\d+),(\d+):\s*\(\s*(\d+),\s*(\d+),\s*(\d+)/.exec(t);if(!o)continue;let r=Number.parseInt(o[1],10),i=Number.parseInt(o[2],10);r>=b||i>=_||(n[i][r]=[Number.parseInt(o[3],10),Number.parseInt(o[4],10),Number.parseInt(o[5],10)])}return n}a(W,"sampledPixelRows");function J([e,n,t]){let o=.2126*e+.7152*n+.0722*t;return w[Math.min(w.length-1,Math.round(o/255*(w.length-1)))]}a(J,"luminanceCharacter");function H(e){return Math.max(0,Math.min(255,e)).toString(16).padStart(2,"0")}a(H,"hexByte");function z(e,n,t){return new Promise((o,r)=>{B(e,n,{encoding:"utf8",maxBuffer:256*1024,signal:t},(i,s)=>{if(i){r(new Error(`${e} could not inspect the image: ${i.message}`));return}o(s)})})}a(z,"runImageCommand");function K(e,n){if(typeof e!="string"||!e.trim())throw new Error(`${n} is required.`);return e.trim()}a(K,"stringArg");export{ne as a,re as b,ce as c,he as d,U as e,G as f,X as g,Y as h,Q as i,V as j};
|
|
2
|
+
import{v as x}from"./chunk-23YW5PAQ.js";import{B as I}from"./chunk-OFJPOTES.js";import{p as T}from"./chunk-YU3C6U5V.js";import{a as A}from"./chunk-KVTBX2UP.js";import{a}from"./chunk-FTQLQJQV.js";function G(e){let n=e.trim().replace(/^```(?:json)?\s*/i,"").replace(/```\s*$/,"");try{let t=JSON.parse(n);return typeof t.score!="number"||typeof t.passed!="boolean"?null:{score:Math.max(0,Math.min(1,t.score)),passed:t.passed,feedback:typeof t.feedback=="string"?t.feedback.slice(0,2e4):"Model judge completed.",evidenceRefs:[]}}catch{return null}}a(G,"parseModelJudgeResult");function X(e){if(typeof e=="number"&&Number.isFinite(e)&&e>0)return Math.floor(e);let n=process.env.OPENPOND_HOSTED_WORKSPACE_TOOL_ROUNDS?.trim();if(!n)return 64;if(/^(unlimited|infinite|infinity)$/i.test(n))return Number.POSITIVE_INFINITY;let t=Number.parseInt(n,10);return Number.isFinite(t)&&t>0?t:64}a(X,"resolveMaxHostedWorkspaceToolRounds");function Y(e,n,t){let o=Date.now()-6e4;for(let r=e.length-1;r>=0;r-=1){let i=e[r],s=Date.parse(i.timestamp);if(Number.isFinite(s)&&s<o)return null;if(i.sessionId!==n||i.name!=="session.compaction.completed")continue;let d=i.data&&typeof i.data=="object"?i.data:null;if(d?.provider==="codex"&&d.codexThreadId===t)return i}return null}a(Y,"findRecentCodexCompactionCompleted");function Q(e){return e==="agent"||e==="skill"||e==="extension"||e==="model"||e==="configuration"?e:null}a(Q,"createImproveTargetKind");function V(e){if(!e)return;let n=Number(e);return Number.isFinite(n)&&n>0?Math.trunc(n):void 0}a(V,"createImproveLimit");var ne=new Set(["ask_user","get_profile","agent_inspect","agent_build","agent_validate","agent_eval","agent_run","agent_traces","agent_check","exec_command","view_image","list_files","read_files","search_files","write_file","write_files","edit_file","delete_file","workspace_status"]);function re(e){let n={type:"string"},t={type:"string",minLength:1};return[["list_files",{},[]],["workspace_status",{},[]],["read_files",{paths:{type:"array",items:t,minItems:1,maxItems:30}},["paths"]],["search_files",{query:{type:"string",minLength:1,maxLength:2e3}},["query"]],["write_file",{path:t,content:n},["path","content"]],["write_files",{files:{type:"object",additionalProperties:n,maxProperties:30}},["files"]],["edit_file",{path:t,oldText:{type:"string",minLength:1},newText:n,replaceAll:{type:"boolean"}},["path","oldText","newText"]],["delete_file",{path:t},["path"]]].map(([r,i,s])=>({name:r,description:`${r.replaceAll("_"," ")} in the isolated selected candidate component. Paths are relative to its public source tree.`,parameters:{type:"object",additionalProperties:!1,properties:i,required:s},execute:a(async d=>{let c=await e(d.session.id,{action:r,args:d.args,source:"chat_action"},{turnId:d.turnId,workspaceDiffBaseline:d.workspaceDiffBaseline});return x(d.callId,r,c)},"execute")}))}a(re,"candidateFileToolDefinitions");import{realpath as C}from"node:fs/promises";import p from"node:path";function ce(e){let n=[O()];if(!e.loadProfileState)return n;let t=a(async(r,i)=>{if(i&&(i.turnMetadata?.source==="experiment-improvement"||i.turnMetadata?.refinementCandidate!==void 0||i.session.metadata?.source==="experiment-improvement"||i.session.metadata?.refinementCandidate!==void 0)){if(!e.resolveCandidateProfile)throw new Error("Candidate authoring requires an admitted isolated Profile resolver.");let s=await e.resolveCandidateProfile(i);return S(s),s}return e.loadProfileState(r,i)},"loadProfileState"),o=a(async r=>{if(r.context.turnMetadata?.source==="experiment-improvement"||r.context.turnMetadata?.refinementCandidate!==void 0||r.context.session.metadata?.source==="experiment-improvement"||r.context.session.metadata?.refinementCandidate!==void 0){if(!e.executeCandidateAgentCommand)throw new Error("Candidate Agent commands require filesystem-confined execution.");return e.executeCandidateAgentCommand(r)}return I({...r,throwOnFailure:!1})},"runCommand");return n.push(E(t),u(t,o,"agent_inspect","inspect"),u(t,o,"agent_build","build"),u(t,o,"agent_validate","validate"),u(t,o,"agent_eval","eval"),D(t,o),u(t,o,"agent_traces","traces"),L(t,o)),n}a(ce,"createAuthoringModelToolDefinitions");function O(){return{name:"ask_user",description:"Ask one blocking user question when the answer materially changes the requested work and cannot be inferred safely. This call ends the current model turn after persisting the question; do not batch it with mutations.",parameters:{type:"object",additionalProperties:!1,properties:{question:{type:"string",minLength:1,maxLength:2e3},reason:{type:"string",minLength:1,maxLength:1e3},options:{type:"array",minItems:2,maxItems:5,items:{type:"object",additionalProperties:!1,properties:{id:{type:"string",minLength:1,maxLength:80},label:{type:"string",minLength:1,maxLength:160},description:{type:"string",minLength:1,maxLength:500}},required:["id","label"]}},allowFreeform:{type:"boolean"}},required:["question"]},execute:a(async e=>{let n=m(e.args,"question"),t=R(e.args,"reason"),o=q(e.args,"options").map(i=>g(i)).filter(i=>!!i).map(i=>({id:m(i,"id"),label:m(i,"label"),description:R(i,"description")})),r={questionId:`question_${e.turnId}_${e.callId}`,question:n,reason:t,options:o,allowFreeform:e.args.allowFreeform!==!1,status:"awaiting_user_input",nextStep:"end_turn"};return{...l(e.callId,"ask_user",!0,n,r),turnControl:"await_user_input"}},"execute")}}a(O,"askUserDefinition");function E(e){return{name:"get_profile",description:"Return the exact OpenPond Profile selected for this chat turn, including bounded local path, Skill, Agent, action, and Git context. Call before Profile authoring. This tool does not change the selected Profile or grant filesystem permission.",parameters:{type:"object",additionalProperties:!1,properties:{}},execute:a(async n=>{let t=h(n),o=await e(t,n),r=N(o,n.turnMetadata,t);return l(n.callId,"get_profile",!o.error,o.error??"Resolved selected Profile.",r)},"execute")}}a(E,"getProfileDefinition");function u(e,n,t,o){return{name:t,description:j(t),parameters:M(),execute:a(async r=>{let i=await f(e,r),s=await v(n,r,o,i.cwd);return l(r.callId,t,s.code===0&&!s.timedOut,s.code===0&&!s.timedOut?`${t} passed for ${i.agentId}.`:`${t} failed for ${i.agentId}.`,{agentId:i.agentId,cwd:i.cwd,command:o,...P(s)})},"execute")}}a(u,"agentCommandDefinition");function D(e,n){return{name:"agent_run",description:"Run one declared action on an exact enabled Profile Agent with typed JSON input. Use for behavioral proof, not as the default validation gate.",parameters:{type:"object",additionalProperties:!1,properties:{agentId:{type:"string",minLength:1},action:{type:"string",minLength:1},input:{type:"object",additionalProperties:!0}},required:["agentId","action"]},execute:a(async t=>{let o=await f(e,t),r=m(t.args,"action"),i=g(t.args,"input")??{},s=await n({context:t,command:"run",args:[r,"--json","--input",JSON.stringify(i),"--cwd",o.cwd],cwd:o.cwd,timeoutMs:12e4,maxOutputBytes:25e4});return l(t.callId,"agent_run",s.code===0&&!s.timedOut,s.code===0&&!s.timedOut?`Action ${r} passed for ${o.agentId}.`:`Action ${r} failed for ${o.agentId}.`,{agentId:o.agentId,cwd:o.cwd,action:r,input:i,...P(s)})},"execute")}}a(D,"agentRunDefinition");function L(e,n){return{name:"agent_check",description:"Run the mandatory Agent authoring gate\u2014inspect, build, validate, and eval\u2014in order for one exact Profile Agent. Stops on the first failure and returns bounded per-step receipts.",parameters:M(),execute:a(async t=>{let o=await f(e,t),r=[];for(let s of["inspect","build","validate","eval"]){let d=await v(n,t,s,o.cwd),c=P(d);if(r.push({command:s,receipt:c}),d.code!==0||d.timedOut)return l(t.callId,"agent_check",!1,`agent_check stopped at ${s} for ${o.agentId}.`,{agentId:o.agentId,cwd:o.cwd,passed:!1,failedStep:s,steps:r})}let i=await e(h(t),t);return l(t.callId,"agent_check",!0,`agent_check passed for ${o.agentId}.`,{agentId:o.agentId,cwd:o.cwd,passed:!0,failedStep:null,steps:r,profileRefresh:{activeProfile:i.activeProfile,agentIds:i.agents.map(s=>s.id).slice(0,200),actionIds:i.actionCatalog.map(s=>s.id).slice(0,500)}})},"execute")}}a(L,"agentCheckDefinition");async function f(e,n){let t=m(n.args,"agentId"),o=await e(h(n),n);S(o);let r=g(n.turnMetadata,"authoringIntent");if(r?.artifact==="agent"&&r.operation==="improve"&&typeof r.targetAgentId=="string"&&r.targetAgentId!==t)throw new Error(`Agent improve is bound to ${r.targetAgentId}; ${t} is not authorized.`);if(!o.agents.find(k=>k.id===t)?.enabled)throw new Error(`Enabled Profile Agent not found: ${t}`);let s=t==="default"?o.sourcePath:p.resolve(o.sourcePath,"agents",t),d=await C(o.sourcePath),c=await C(s).catch(()=>null);if(!c)throw new Error(`Profile Agent source does not exist: ${t}`);if(!F(d,c))throw new Error(`Profile Agent source escapes the selected Profile: ${t}`);return{profile:o,agentId:t,cwd:c}}a(f,"resolveAgentTarget");async function v(e,n,t,o){return e({context:n,command:t,args:t==="inspect"||t==="validate"||t==="eval"||t==="traces"?["--json"]:[],cwd:o,timeoutMs:t==="eval"?18e4:12e4,maxOutputBytes:25e4})}a(v,"executeAgentCommand");function S(e){if(e.error)throw new Error(e.error);if(e.mode!=="local"||!e.repoPath||!e.sourcePath)throw new Error("The selected OpenPond Profile is not locally editable.")}a(S,"assertEditableProfile");function N(e,n,t){let o=e.git?.files.slice(0,200).map(r=>r.path)??[];return{mode:e.mode,editable:e.mode==="local"&&!!(e.repoPath&&e.sourcePath)&&!e.error,blockedReason:e.error??(e.mode==="local"&&e.repoPath&&e.sourcePath?null:"The selected Profile is not locally editable."),ref:t,activeProfile:e.activeProfile,repoPath:e.repoPath,sourcePath:e.sourcePath,manifestPath:e.manifestPath,profileConfigPath:e.sourcePath?p.join(e.sourcePath,"settings","profile.yaml"):null,authoring:g(n,"authoringIntent"),skills:e.skills.slice(0,200).map(r=>({name:r.name,description:r.description,path:r.path,sourcePath:r.sourcePath,enabled:r.enabled,validationStatus:r.validationStatus})),agents:e.agents.slice(0,200).map(r=>{let i=e.actionCatalog.filter(s=>s.agentId===r.id).slice(0,100);return{id:r.id,name:r.name,path:r.path,sourcePath:e.sourcePath?r.id==="default"?e.sourcePath:p.resolve(e.sourcePath,"agents",r.id):r.path,enabled:r.enabled,defaultAction:i.find(s=>s.sourceActionId==="chat"||s.id===`${r.id}.chat`)?.id??i[0]?.id??null,actionNames:i.map(s=>s.id)}}),git:e.git?{branch:e.git.branch,head:e.git.head,dirty:e.git.dirty,changedPaths:o,truncated:e.git.files.length>o.length}:null}}a(N,"profileProjection");function h(e){let n=g(e.turnMetadata,"selectedProfileRef");return n&&(n.source==="local"||n.source==="github"||n.source==="openpond_git")&&typeof n.repositoryId=="string"&&n.repositoryId.trim()&&typeof n.profileId=="string"&&n.profileId.trim()?{source:n.source,repositoryId:n.repositoryId,profileId:n.profileId}:e.session.currentProfile??null}a(h,"selectedProfileRef");function M(){return{type:"object",additionalProperties:!1,properties:{agentId:{type:"string",minLength:1,description:"Exact enabled Agent ID from get_profile."}},required:["agentId"]}}a(M,"agentTargetParameters");function j(e){return`Run OpenPond Agent SDK ${e.replace(/^agent_/,"")} for one exact enabled Agent beneath the selected Profile and return a bounded structured receipt.`}a(j,"agentToolDescription");function P(e){return{code:e.code,timedOut:e.timedOut,stdout:$(e.stdout),stderr:e.stderr,stdoutTruncated:e.stdoutTruncated,stderrTruncated:e.stderrTruncated}}a(P,"commandReceipt");function $(e){let n=e.trim();if(!n)return"";try{return JSON.parse(n)}catch{return n}}a($,"parseJsonOrText");function l(e,n,t,o,r){return{toolCallId:e,name:n,ok:t,contentText:JSON.stringify({ok:t,action:n,output:o,data:r},null,2),data:r}}a(l,"modelResult");function m(e,n){let t=e[n];if(typeof t!="string"||!t.trim())throw new Error(`${n} is required`);return t.trim()}a(m,"stringArg");function R(e,n){let t=e[n];return typeof t=="string"&&t.trim()?t.trim():null}a(R,"optionalStringArg");function q(e,n){let t=e[n];return Array.isArray(t)?t:[]}a(q,"arrayArg");function g(e,n){let t=n&&e&&typeof e=="object"&&!Array.isArray(e)?e[n]:e;return t&&typeof t=="object"&&!Array.isArray(t)?t:null}a(g,"recordArg");function F(e,n){let t=p.relative(e,n);return t===""||!t.startsWith("..")&&!p.isAbsolute(t)}a(F,"isWithin");import{execFile as B}from"node:child_process";import y from"node:path";var b=12,_=8,w=" .:-=+*#%@";function he(e={}){return{name:"view_image",description:"Inspect a real local PNG, JPEG, GIF, WebP, or AVIF file. Reads the image bytes directly and returns dimensions plus a coarse pixel/color map; it also creates an actual image preview in the chat UI. Use this instead of opening file:// URLs or browser snapshots, which cannot inspect local image pixels. For many video frames, build one contact sheet and inspect that rather than reading frames one by one.",parameters:{type:"object",additionalProperties:!1,properties:{path:{type:"string",minLength:1,description:"Absolute image path, or a path relative to the selected local project."}},required:["path"]},enabled:a(n=>n.provider==="codex"||n.session.provider==="codex"||n.session.openPondCommandAccessMode==="disabled"?!1:A({session:n.session}).target!=="sandbox","enabled"),execute:a(async n=>{if(n.turnMetadata?.source==="experiment-improvement"||n.turnMetadata?.refinementCandidate!==void 0||n.session.metadata?.source==="experiment-improvement"||n.session.metadata?.refinementCandidate!==void 0){if(!e.executeCandidateImage)throw new Error("Candidate image inspection requires its confined filesystem executor.");return e.executeCandidateImage(n)}let t=K(n.args.path,"path"),o=y.isAbsolute(t)?y.resolve(t):n.session.cwd?y.resolve(n.session.cwd,t):"";if(!o)throw new Error("A relative image path requires a selected local project.");let r=await T(o);if(!r)throw new Error(`Local image was not found or is not a supported image: ${o}`);let i=await U(r.path,n.signal);return{toolCallId:n.callId,name:"view_image",ok:!0,contentText:JSON.stringify({ok:!0,action:"view_image",output:`Read actual image pixels from ${r.path}.`,data:{path:r.path,contentType:r.contentType,sizeBytes:r.sizeBytes,...i,note:"The luminance and color maps are deterministic pixel samples, not a semantic vision caption."}},null,2),data:{openpondImagePreviewPath:r.path,path:r.path,contentType:r.contentType,sizeBytes:r.sizeBytes,...i}}},"execute")}}a(he,"createLocalImageModelToolDefinition");async function U(e,n,t=z){let o=await t("identify",["-format","%m %w %h",e],n),r=/^(\S+)\s+(\d+)\s+(\d+)/.exec(o.trim());if(!r)throw new Error("Image metadata could not be decoded.");let i=await t("convert",[e,"-resize",`${b}x${_}!`,"-depth","8","txt:-"],n),s=W(i);return{format:r[1],width:Number.parseInt(r[2],10),height:Number.parseInt(r[3],10),luminanceMap:s.map(d=>d.map(J).join("")),colorMap:s.map(d=>d.map(c=>`#${c.map(H).join("")}`))}}a(U,"inspectImagePixels");function W(e){let n=Array.from({length:_},()=>Array.from({length:b},()=>[0,0,0]));for(let t of e.split(/\r?\n/)){let o=/^(\d+),(\d+):\s*\(\s*(\d+),\s*(\d+),\s*(\d+)/.exec(t);if(!o)continue;let r=Number.parseInt(o[1],10),i=Number.parseInt(o[2],10);r>=b||i>=_||(n[i][r]=[Number.parseInt(o[3],10),Number.parseInt(o[4],10),Number.parseInt(o[5],10)])}return n}a(W,"sampledPixelRows");function J([e,n,t]){let o=.2126*e+.7152*n+.0722*t;return w[Math.min(w.length-1,Math.round(o/255*(w.length-1)))]}a(J,"luminanceCharacter");function H(e){return Math.max(0,Math.min(255,e)).toString(16).padStart(2,"0")}a(H,"hexByte");function z(e,n,t){return new Promise((o,r)=>{B(e,n,{encoding:"utf8",maxBuffer:256*1024,signal:t},(i,s)=>{if(i){r(new Error(`${e} could not inspect the image: ${i.message}`));return}o(s)})})}a(z,"runImageCommand");function K(e,n){if(typeof e!="string"||!e.trim())throw new Error(`${n} is required.`);return e.trim()}a(K,"stringArg");export{ne as a,re as b,ce as c,he as d,U as e,G as f,X as g,Y as h,Q as i,V as j};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{e as ye}from"./chunk-AQUZCWM3.js";import{a as we}from"./chunk-IZ6DLEVY.js";import{a as Re,c as he}from"./chunk-XY7HFXLH.js";import{ja as ve}from"./chunk-HG2YFMVU.js";import{a as B}from"./chunk-BL3CZWWD.js";import{a as de,b as G,h as V,i as z,j as Y}from"./chunk-4V73I4OL.js";import{k as le}from"./chunk-LE75SVEL.js";import{m as ue,n as me,o as pe,p as fe,q as ge}from"./chunk-HVM2GUM3.js";import{n as E}from"./chunk-RCT3O3HQ.js";import{a as i}from"./chunk-FTQLQJQV.js";function q(e){let t=/^memory\/([a-z0-9][a-z0-9-]{0,119})$/.exec(e.replaceAll("\\","/"));if(!t)throw new Error(`Invalid Harness memory target: ${e}.`);return t[1]}i(q,"memoryKeyFromTarget");function Z(e,t){let r=e.metadata.expectedMemory;if(!r||typeof r!="object"||Array.isArray(r))throw new Error("Memory proposal is missing its expected revision snapshot.");let n=r;if(n.key!==q(t))throw new Error("Memory proposal expected revision targets a different key.");if(n.revision!==null&&(!Number.isInteger(n.revision)||Number(n.revision)<1))throw new Error("Memory proposal expected revision is invalid.");if(n.contentHash!==null&&typeof n.contentHash!="string")throw new Error("Memory proposal expected content hash is invalid.");if(n.status!==null&&n.status!=="active"&&n.status!=="deleted")throw new Error("Memory proposal expected status is invalid.");return{revision:n.revision,contentHash:n.contentHash,status:n.status}}i(Z,"expectedMemoryRevision");function ee(e){return{id:e.id,runRef:e.runRef,turnId:e.turnId,reason:e.reason,suggestedRoutes:e.suggestedRoutes,boundary:e.boundary}}i(ee,"boundedTriggerEvidence");function te(e){return{id:e.id,kind:e.kind,state:e.state,tool:e.tool?.name??null,deterministicClass:e.deterministicClass,summary:e.summary}}i(te,"boundedObservationEvidence");function re(e){let t=new Map;for(let r of e)for(let n of r.eventRefs){let o=Ne(r,n);t.set(`${o.kind}:${o.id}`,o)}return[...t.values()]}i(re,"proposalEvidence");function Ne(e,t){return{kind:e.kind==="recovery"?"recovery":e.kind==="validation"?"validation":e.kind==="user_turn"?"user_turn":"tool_event",id:t.id,contentHash:t.contentHash}}i(Ne,"observationEvidence");function j(e){let t=new Map;for(let r of e)for(let n of r.eventRefs)t.set(n.id,n);return[...t.values()]}i(j,"uniqueEventRefs");function U(e,t){return e.id===t.id&&e.revision===t.revision&&e.contentHash===t.contentHash}i(U,"sameOverlayRef");function D(e){return{id:e.id,revision:e.revision,contentHash:e.contentHash}}i(D,"overlayRef");function ne(e,t){return e.revision===t.workspace.revision&&e.sourceRevision===t.workspace.sourceRevision&&e.currentChannel.revision===t.workspace.channelRevision&&e.currentChannel.release?.id===t.baseHarnessRelease.id&&e.currentChannel.release.contentHash===t.baseHarnessRelease.contentHash}i(ne,"sameWorkspaceRevision");function R(e,t){return`${e}-${E(t).slice(0,24)}`}i(R,"stableId");import{execFile as Fe}from"node:child_process";import{promises as N}from"node:fs";import x from"node:path";import{promisify as We}from"node:util";var Ve=36e3,ke=10,He=20*1024*1024,X=40,ze=24e3,Be=3,je=3,be=6,Te=["turn.started","assistant.delta","tool.started","tool.completed","skill.loaded","workspace_action_result","diagnostic","turn.completed","turn.failed","turn.interrupted"],Ue=We(Fe);async function Ee(e,t,r,n,o){let[a,s,l,g,m]=await Promise.all([e.getSession(t.runRef),e.getTurn(t.turnId),e.runtimeEventsForTurn(t.turnId,{names:Te}),e.turnsForSession(t.runRef,1e3),e.listModelUsageRecords({turnId:t.turnId,limit:1e4})]),d=[...g].sort((c,h)=>c.startedAt.localeCompare(h.startedAt)),y=d.findIndex(c=>c.id===t.turnId),u=y>0?d[y-1]:null,p=d.slice(Math.max(0,y-Be),Math.max(0,y)),b=new Map(await Promise.all(p.map(async c=>[c.id,await e.runtimeEventsForTurn(c.id,{names:["assistant.delta"]})]))),k=new Map(r.flatMap(c=>c.eventRefs.map(h=>[h.id,h]))),H=l.filter(c=>k.has(c.id));if(!o?.allowMissingRuntimeEvents)for(let[c,h]of k){let I=H.find(Le=>Le.id===c);if(!I||E(I)!==h.contentHash)throw new Error(`Refiner runtime event ${c} is unavailable or hash-mismatched.`)}let f=rt({events:l,exactEvents:H,turnId:t.turnId,boundarySequence:t.boundary.eventSequence,limit:t.policy.maxEvidenceEvents}),O=J(l,t.turnId),_=r.map(c=>c.kind),C=Ye(l,t.turnId),S={modelRequestCount:m.length||C.modelRequestCount,promptTokens:m.reduce((c,h)=>c+(h.promptTokens??0),0)||C.promptTokens,completionTokens:m.reduce((c,h)=>c+(h.completionTokens??0),0)||C.completionTokens,totalTokens:m.reduce((c,h)=>c+(h.totalTokens??0),0)||C.totalTokens},M={modelRequestCount:S.modelRequestCount,failedModelRequestCount:m.filter(c=>c.status==="failed"||c.status==="interrupted").length,promptTokens:S.promptTokens,completionTokens:S.completionTokens,totalTokens:S.totalTokens,toolFailureCount:_.filter(c=>c==="tool_failure").length,retryCount:_.filter(c=>c==="retry").length,recoveryCount:_.filter(c=>c==="recovery").length},F=await Ze(a?.cwd),L=l.filter(c=>c.turnId===t.turnId&&ot(c)&&(c.sequence===void 0||c.sequence<=t.boundary.eventSequence)).sort($),P=Ke(L),W=p.map(c=>Xe(c,b.get(c.id)??[])),v=n?await Je({store:e,workspaceId:n,trigger:t,observations:r}):[];return{task:{prompt:s?.prompt?T(s.prompt,8e3):null,assistantOutput:O,assistantOutputLinkCount:Se(O),previousAssistantOutput:u?J(b.get(u.id)??[],u.id):null},artifactDiagnostics:F,executionProfile:M,eventExcerpts:f.map(c=>{let h=A(c.data),I=A(h.result);return{id:c.id,name:c.name,action:c.action??(typeof h.tool=="string"?h.tool:null),status:c.status??null,command:w(I.command,3e3),error:w(c.error,2e3),output:w(I.output,2e3)??w(c.output,2e3),exitCode:typeof I.exitCode=="number"?I.exitCode:null,timedOut:I.timedOut===!0,stderr:w(I.stderr,3e3),stdout:w(I.stdout,3e3)}}),reviewPacket:{currentTurn:{id:t.turnId,status:s?.status??null,error:s?.error?T(s.error,2e3):null,prompt:s?.prompt?T(s.prompt,8e3):null,assistantOutput:O,assistantOutputLinkCount:Se(O)},priorConversation:W,timeline:P,artifacts:Ce(l,t.turnId),artifactDiagnostics:F,executionProfile:M,priorIncidents:v,truncation:{timelineEventCount:L.length,includedTimelineEventCount:P.length,timelineTruncated:P.length<L.length}}}}i(Ee,"loadBoundedRefinerContext");function Xe(e,t){return{turnId:e.id,status:e.status,prompt:e.prompt?T(e.prompt,3e3):null,assistantOutput:J(t,e.id,3e3)}}i(Xe,"conversationTurn");function Ke(e){let t=e.map(_e);if(t.length<=X)return Ie(t);let r=t.filter(a=>a.status==="failed"||a.name==="turn.completed"||a.name==="turn.failed"||a.name==="turn.interrupted"||a.name==="skill.loaded"||a.name==="validation.completed"||a.name==="diagnostic"),n=new Set(r.map(xe)),o=t.filter(a=>!n.has(xe(a))).slice(-(X-Math.min(r.length,X)));return Ie([...r.slice(-X),...o].sort((a,s)=>Number(a.sequence??0)-Number(s.sequence??0)))}i(Ke,"boundedReviewTimeline");function Ie(e){let t=[],r=0;for(let n of e){let o=JSON.stringify(n).length;r+o>ze||(t.push(n),r+=o)}return t}i(Ie,"fitTimelineToCharacterBudget");function _e(e){let t=A(e.data),r=A(t.result);return{sequence:e.sequence??null,timestamp:e.timestamp,name:e.name,action:e.action??(typeof t.tool=="string"?t.tool:null),status:e.status??null,args:Ge(e.args,1500),command:w(r.command,2e3),error:w(e.error,2e3),output:w(r.output,2e3)??w(e.output,2e3),exitCode:typeof r.exitCode=="number"?r.exitCode:null,timedOut:r.timedOut===!0,stderr:w(r.stderr,2e3),stdout:w(r.stdout,2e3)}}i(_e,"reviewTimelineEntry");function xe(e){return`${e.sequence??"none"}:${e.name??"unknown"}:${e.action??"none"}`}i(xe,"timelineEntryKey");function Ce(e,t){let r=new Map;for(let n of e)if(n.turnId===t)for(let o of oe(n.data))r.set(`${o.id}:${o.revision}`,o);return[...r.values()].sort((n,o)=>n.title.localeCompare(o.title)||n.revision-o.revision).slice(0,30).map(n=>({id:n.id,title:n.title,revision:n.revision,contentType:n.contentType,sizeBytes:n.sizeBytes,sha256:n.sha256,locationKind:n.location.kind,validation:n.validation.map(o=>({kind:o.kind,status:o.status,label:o.label,detail:o.detail??null}))}))}i(Ce,"fileOutputInventory");function oe(e,t=0){if(t>8)return[];let r=ve.safeParse(e);return r.success?[r.data]:Array.isArray(e)?e.flatMap(n=>oe(n,t+1)):!e||typeof e!="object"?[]:Object.values(e).flatMap(n=>oe(n,t+1))}i(oe,"findFileOutputRefs");async function Je(e){let t=new Set(e.observations.flatMap(s=>s.deterministicClass?[s.deterministicClass]:[])),r=new Set(e.observations.flatMap(s=>s.tool?[s.tool.name]:[]));if(t.size===0&&r.size===0)return[];let n=(await e.store.listHarnessImprovementArtifacts(e.workspaceId,"observation",200)).filter(s=>s.runRef!==e.trigger.runRef&&s.turnId!==e.trigger.turnId&&(s.deterministicClass!==null&&t.has(s.deterministicClass)||s.tool!==null&&r.has(s.tool.name))).sort((s,l)=>l.createdAt.localeCompare(s.createdAt)),o=new Map;for(let s of n){let l=`${s.runRef}:${s.turnId}`,g=o.get(l)??[];g.push(s),o.set(l,g)}let a=[];for(let s of o.values()){if(a.length>=je)break;let l=s[0],[g,m]=await Promise.all([e.store.getTurn(l.turnId),e.store.runtimeEventsForTurn(l.turnId,{names:Te})]);if(!g)continue;let d=[...new Set(s.flatMap(p=>p.deterministicClass&&t.has(p.deterministicClass)?[p.deterministicClass]:[]))],y=[...new Set(s.flatMap(p=>p.tool&&r.has(p.tool.name)?[p.tool.name]:[]))],u=Qe(m.filter(p=>p.turnId===g.id));a.push({runRef:l.runRef,turnId:l.turnId,createdAt:l.createdAt,matchedBy:{deterministicClasses:d,tools:y},observations:s.slice(0,4).map(p=>({kind:p.kind,state:p.state,deterministicClass:p.deterministicClass,summary:p.summary})),prompt:g.prompt?T(g.prompt,1200):null,assistantOutput:J(m,g.id,1200),timeline:u,artifacts:Ce(m,g.id).slice(0,5)})}return a}i(Je,"loadRelevantPriorIncidentPackets");function Qe(e){let t=new Set(["turn.completed","turn.failed","turn.interrupted"]),r=e.filter(a=>{if(t.has(a.name))return!0;let s=JSON.stringify({error:a.error,output:a.output,data:a.data});return a.status==="failed"||/"ok"\s*:\s*false|failed|denied|unavailable|timed?\s*out|exception|traceback/i.test(s)}).sort($).map(a=>{let s=_e(a);return{sequence:s.sequence,name:s.name,action:s.action,status:s.status,error:w(s.error,800),output:w(s.output,800),exitCode:s.exitCode,timedOut:s.timedOut}}),n=new Map;for(let a of r){let s=JSON.stringify({name:a.name,action:a.action,status:a.status,error:a.error,output:a.output,exitCode:a.exitCode,timedOut:a.timedOut}),l=n.get(s);if(l){l.occurrenceCount+=1;continue}n.set(s,{...a,occurrenceCount:1})}let o=[...n.values()];return o.length<=be?o:[...o.slice(0,be-2),...o.slice(-2)]}i(Qe,"priorIncidentTimeline");function Ge(e,t){if(e===void 0)return null;try{let r=T(JSON.stringify(e),t);return JSON.parse(r.endsWith(`
|
|
2
|
+
import{e as ye}from"./chunk-D2V2Y3FB.js";import{a as we}from"./chunk-IZ6DLEVY.js";import{a as Re,c as he}from"./chunk-SVLVIYH2.js";import{ja as ve}from"./chunk-WXG3G2O6.js";import{a as B}from"./chunk-BL3CZWWD.js";import{a as de,b as G,h as V,i as z,j as Y}from"./chunk-4V73I4OL.js";import{k as le}from"./chunk-LE75SVEL.js";import{m as ue,n as me,o as pe,p as fe,q as ge}from"./chunk-HVM2GUM3.js";import{n as E}from"./chunk-RCT3O3HQ.js";import{a as i}from"./chunk-FTQLQJQV.js";function q(e){let t=/^memory\/([a-z0-9][a-z0-9-]{0,119})$/.exec(e.replaceAll("\\","/"));if(!t)throw new Error(`Invalid Harness memory target: ${e}.`);return t[1]}i(q,"memoryKeyFromTarget");function Z(e,t){let r=e.metadata.expectedMemory;if(!r||typeof r!="object"||Array.isArray(r))throw new Error("Memory proposal is missing its expected revision snapshot.");let n=r;if(n.key!==q(t))throw new Error("Memory proposal expected revision targets a different key.");if(n.revision!==null&&(!Number.isInteger(n.revision)||Number(n.revision)<1))throw new Error("Memory proposal expected revision is invalid.");if(n.contentHash!==null&&typeof n.contentHash!="string")throw new Error("Memory proposal expected content hash is invalid.");if(n.status!==null&&n.status!=="active"&&n.status!=="deleted")throw new Error("Memory proposal expected status is invalid.");return{revision:n.revision,contentHash:n.contentHash,status:n.status}}i(Z,"expectedMemoryRevision");function ee(e){return{id:e.id,runRef:e.runRef,turnId:e.turnId,reason:e.reason,suggestedRoutes:e.suggestedRoutes,boundary:e.boundary}}i(ee,"boundedTriggerEvidence");function te(e){return{id:e.id,kind:e.kind,state:e.state,tool:e.tool?.name??null,deterministicClass:e.deterministicClass,summary:e.summary}}i(te,"boundedObservationEvidence");function re(e){let t=new Map;for(let r of e)for(let n of r.eventRefs){let o=Ne(r,n);t.set(`${o.kind}:${o.id}`,o)}return[...t.values()]}i(re,"proposalEvidence");function Ne(e,t){return{kind:e.kind==="recovery"?"recovery":e.kind==="validation"?"validation":e.kind==="user_turn"?"user_turn":"tool_event",id:t.id,contentHash:t.contentHash}}i(Ne,"observationEvidence");function j(e){let t=new Map;for(let r of e)for(let n of r.eventRefs)t.set(n.id,n);return[...t.values()]}i(j,"uniqueEventRefs");function U(e,t){return e.id===t.id&&e.revision===t.revision&&e.contentHash===t.contentHash}i(U,"sameOverlayRef");function D(e){return{id:e.id,revision:e.revision,contentHash:e.contentHash}}i(D,"overlayRef");function ne(e,t){return e.revision===t.workspace.revision&&e.sourceRevision===t.workspace.sourceRevision&&e.currentChannel.revision===t.workspace.channelRevision&&e.currentChannel.release?.id===t.baseHarnessRelease.id&&e.currentChannel.release.contentHash===t.baseHarnessRelease.contentHash}i(ne,"sameWorkspaceRevision");function R(e,t){return`${e}-${E(t).slice(0,24)}`}i(R,"stableId");import{execFile as Fe}from"node:child_process";import{promises as N}from"node:fs";import x from"node:path";import{promisify as We}from"node:util";var Ve=36e3,ke=10,He=20*1024*1024,X=40,ze=24e3,Be=3,je=3,be=6,Te=["turn.started","assistant.delta","tool.started","tool.completed","skill.loaded","workspace_action_result","diagnostic","turn.completed","turn.failed","turn.interrupted"],Ue=We(Fe);async function Ee(e,t,r,n,o){let[a,s,l,g,m]=await Promise.all([e.getSession(t.runRef),e.getTurn(t.turnId),e.runtimeEventsForTurn(t.turnId,{names:Te}),e.turnsForSession(t.runRef,1e3),e.listModelUsageRecords({turnId:t.turnId,limit:1e4})]),d=[...g].sort((c,h)=>c.startedAt.localeCompare(h.startedAt)),y=d.findIndex(c=>c.id===t.turnId),u=y>0?d[y-1]:null,p=d.slice(Math.max(0,y-Be),Math.max(0,y)),b=new Map(await Promise.all(p.map(async c=>[c.id,await e.runtimeEventsForTurn(c.id,{names:["assistant.delta"]})]))),k=new Map(r.flatMap(c=>c.eventRefs.map(h=>[h.id,h]))),H=l.filter(c=>k.has(c.id));if(!o?.allowMissingRuntimeEvents)for(let[c,h]of k){let I=H.find(Le=>Le.id===c);if(!I||E(I)!==h.contentHash)throw new Error(`Refiner runtime event ${c} is unavailable or hash-mismatched.`)}let f=rt({events:l,exactEvents:H,turnId:t.turnId,boundarySequence:t.boundary.eventSequence,limit:t.policy.maxEvidenceEvents}),O=J(l,t.turnId),_=r.map(c=>c.kind),C=Ye(l,t.turnId),S={modelRequestCount:m.length||C.modelRequestCount,promptTokens:m.reduce((c,h)=>c+(h.promptTokens??0),0)||C.promptTokens,completionTokens:m.reduce((c,h)=>c+(h.completionTokens??0),0)||C.completionTokens,totalTokens:m.reduce((c,h)=>c+(h.totalTokens??0),0)||C.totalTokens},M={modelRequestCount:S.modelRequestCount,failedModelRequestCount:m.filter(c=>c.status==="failed"||c.status==="interrupted").length,promptTokens:S.promptTokens,completionTokens:S.completionTokens,totalTokens:S.totalTokens,toolFailureCount:_.filter(c=>c==="tool_failure").length,retryCount:_.filter(c=>c==="retry").length,recoveryCount:_.filter(c=>c==="recovery").length},F=await Ze(a?.cwd),L=l.filter(c=>c.turnId===t.turnId&&ot(c)&&(c.sequence===void 0||c.sequence<=t.boundary.eventSequence)).sort($),P=Ke(L),W=p.map(c=>Xe(c,b.get(c.id)??[])),v=n?await Je({store:e,workspaceId:n,trigger:t,observations:r}):[];return{task:{prompt:s?.prompt?T(s.prompt,8e3):null,assistantOutput:O,assistantOutputLinkCount:Se(O),previousAssistantOutput:u?J(b.get(u.id)??[],u.id):null},artifactDiagnostics:F,executionProfile:M,eventExcerpts:f.map(c=>{let h=A(c.data),I=A(h.result);return{id:c.id,name:c.name,action:c.action??(typeof h.tool=="string"?h.tool:null),status:c.status??null,command:w(I.command,3e3),error:w(c.error,2e3),output:w(I.output,2e3)??w(c.output,2e3),exitCode:typeof I.exitCode=="number"?I.exitCode:null,timedOut:I.timedOut===!0,stderr:w(I.stderr,3e3),stdout:w(I.stdout,3e3)}}),reviewPacket:{currentTurn:{id:t.turnId,status:s?.status??null,error:s?.error?T(s.error,2e3):null,prompt:s?.prompt?T(s.prompt,8e3):null,assistantOutput:O,assistantOutputLinkCount:Se(O)},priorConversation:W,timeline:P,artifacts:Ce(l,t.turnId),artifactDiagnostics:F,executionProfile:M,priorIncidents:v,truncation:{timelineEventCount:L.length,includedTimelineEventCount:P.length,timelineTruncated:P.length<L.length}}}}i(Ee,"loadBoundedRefinerContext");function Xe(e,t){return{turnId:e.id,status:e.status,prompt:e.prompt?T(e.prompt,3e3):null,assistantOutput:J(t,e.id,3e3)}}i(Xe,"conversationTurn");function Ke(e){let t=e.map(_e);if(t.length<=X)return Ie(t);let r=t.filter(a=>a.status==="failed"||a.name==="turn.completed"||a.name==="turn.failed"||a.name==="turn.interrupted"||a.name==="skill.loaded"||a.name==="validation.completed"||a.name==="diagnostic"),n=new Set(r.map(xe)),o=t.filter(a=>!n.has(xe(a))).slice(-(X-Math.min(r.length,X)));return Ie([...r.slice(-X),...o].sort((a,s)=>Number(a.sequence??0)-Number(s.sequence??0)))}i(Ke,"boundedReviewTimeline");function Ie(e){let t=[],r=0;for(let n of e){let o=JSON.stringify(n).length;r+o>ze||(t.push(n),r+=o)}return t}i(Ie,"fitTimelineToCharacterBudget");function _e(e){let t=A(e.data),r=A(t.result);return{sequence:e.sequence??null,timestamp:e.timestamp,name:e.name,action:e.action??(typeof t.tool=="string"?t.tool:null),status:e.status??null,args:Ge(e.args,1500),command:w(r.command,2e3),error:w(e.error,2e3),output:w(r.output,2e3)??w(e.output,2e3),exitCode:typeof r.exitCode=="number"?r.exitCode:null,timedOut:r.timedOut===!0,stderr:w(r.stderr,2e3),stdout:w(r.stdout,2e3)}}i(_e,"reviewTimelineEntry");function xe(e){return`${e.sequence??"none"}:${e.name??"unknown"}:${e.action??"none"}`}i(xe,"timelineEntryKey");function Ce(e,t){let r=new Map;for(let n of e)if(n.turnId===t)for(let o of oe(n.data))r.set(`${o.id}:${o.revision}`,o);return[...r.values()].sort((n,o)=>n.title.localeCompare(o.title)||n.revision-o.revision).slice(0,30).map(n=>({id:n.id,title:n.title,revision:n.revision,contentType:n.contentType,sizeBytes:n.sizeBytes,sha256:n.sha256,locationKind:n.location.kind,validation:n.validation.map(o=>({kind:o.kind,status:o.status,label:o.label,detail:o.detail??null}))}))}i(Ce,"fileOutputInventory");function oe(e,t=0){if(t>8)return[];let r=ve.safeParse(e);return r.success?[r.data]:Array.isArray(e)?e.flatMap(n=>oe(n,t+1)):!e||typeof e!="object"?[]:Object.values(e).flatMap(n=>oe(n,t+1))}i(oe,"findFileOutputRefs");async function Je(e){let t=new Set(e.observations.flatMap(s=>s.deterministicClass?[s.deterministicClass]:[])),r=new Set(e.observations.flatMap(s=>s.tool?[s.tool.name]:[]));if(t.size===0&&r.size===0)return[];let n=(await e.store.listHarnessImprovementArtifacts(e.workspaceId,"observation",200)).filter(s=>s.runRef!==e.trigger.runRef&&s.turnId!==e.trigger.turnId&&(s.deterministicClass!==null&&t.has(s.deterministicClass)||s.tool!==null&&r.has(s.tool.name))).sort((s,l)=>l.createdAt.localeCompare(s.createdAt)),o=new Map;for(let s of n){let l=`${s.runRef}:${s.turnId}`,g=o.get(l)??[];g.push(s),o.set(l,g)}let a=[];for(let s of o.values()){if(a.length>=je)break;let l=s[0],[g,m]=await Promise.all([e.store.getTurn(l.turnId),e.store.runtimeEventsForTurn(l.turnId,{names:Te})]);if(!g)continue;let d=[...new Set(s.flatMap(p=>p.deterministicClass&&t.has(p.deterministicClass)?[p.deterministicClass]:[]))],y=[...new Set(s.flatMap(p=>p.tool&&r.has(p.tool.name)?[p.tool.name]:[]))],u=Qe(m.filter(p=>p.turnId===g.id));a.push({runRef:l.runRef,turnId:l.turnId,createdAt:l.createdAt,matchedBy:{deterministicClasses:d,tools:y},observations:s.slice(0,4).map(p=>({kind:p.kind,state:p.state,deterministicClass:p.deterministicClass,summary:p.summary})),prompt:g.prompt?T(g.prompt,1200):null,assistantOutput:J(m,g.id,1200),timeline:u,artifacts:Ce(m,g.id).slice(0,5)})}return a}i(Je,"loadRelevantPriorIncidentPackets");function Qe(e){let t=new Set(["turn.completed","turn.failed","turn.interrupted"]),r=e.filter(a=>{if(t.has(a.name))return!0;let s=JSON.stringify({error:a.error,output:a.output,data:a.data});return a.status==="failed"||/"ok"\s*:\s*false|failed|denied|unavailable|timed?\s*out|exception|traceback/i.test(s)}).sort($).map(a=>{let s=_e(a);return{sequence:s.sequence,name:s.name,action:s.action,status:s.status,error:w(s.error,800),output:w(s.output,800),exitCode:s.exitCode,timedOut:s.timedOut}}),n=new Map;for(let a of r){let s=JSON.stringify({name:a.name,action:a.action,status:a.status,error:a.error,output:a.output,exitCode:a.exitCode,timedOut:a.timedOut}),l=n.get(s);if(l){l.occurrenceCount+=1;continue}n.set(s,{...a,occurrenceCount:1})}let o=[...n.values()];return o.length<=be?o:[...o.slice(0,be-2),...o.slice(-2)]}i(Qe,"priorIncidentTimeline");function Ge(e,t){if(e===void 0)return null;try{let r=T(JSON.stringify(e),t);return JSON.parse(r.endsWith(`
|
|
3
3
|
[truncated]`)?JSON.stringify(r):r)}catch{return T(String(e),t)}}i(Ge,"boundedUnknown");function Ye(e,t){let r={modelRequestCount:0,promptTokens:0,completionTokens:0,totalTokens:0},n=[...e].reverse().find(o=>o.turnId===t&&o.name==="diagnostic"&&o.action==="taskset_grade"&&typeof o.output=="string");if(!n?.output)return r;try{let o=A(JSON.parse(n.output)),a=A(o.attempt),s=A(a.usage);return{modelRequestCount:K(a.modelRequestCount),promptTokens:K(s.promptTokens),completionTokens:K(s.completionTokens),totalTokens:K(s.totalTokens)}}catch{return r}}i(Ye,"tasksetGradeExecutionProfile");function K(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.trunc(e):0}i(K,"nonnegativeInteger");async function Ze(e){if(!e)return[];let t=[];for(let r of[e,x.join(e,"outputs")]){let n=await N.readdir(r,{withFileTypes:!0}).catch(()=>[]);for(let o of n)if(!(!o.isFile()||!o.name.toLowerCase().endsWith(".pdf"))&&(t.push({filename:x.join(r,o.name),displayPath:x.relative(e,x.join(r,o.name)).replaceAll(x.sep,"/")}),t.length>=ke))break;if(t.length>=ke)break}return Promise.all(t.map(async({filename:r,displayPath:n})=>{try{if((await N.stat(r)).size>He)return{path:n,mediaType:"application/pdf",check:"pdf_text_bounds",status:"unavailable",reason:`artifact exceeds ${He} byte inspection bound`};let{stdout:a}=await Ue("pdftotext",["-bbox",r,"-"],{env:{...process.env,PATH:we()},maxBuffer:8*1024*1024,timeout:15e3});return et(n,a)}catch(o){return{path:n,mediaType:"application/pdf",check:"pdf_text_bounds",status:"unavailable",reason:o instanceof Error?o.message.slice(0,500):String(o).slice(0,500)}}}))}i(Ze,"inspectBoundedPdfArtifactDiagnostics");function et(e,t){let r=[],n=0;for(let o of t.matchAll(/<page\s+width="([^"]+)"\s+height="([^"]+)"[^>]*>([\s\S]*?)<\/page>/g)){n+=1;let a=Number(o[1]),s=Number(o[2]);for(let l of o[3].matchAll(/<word\s+xMin="([^"]+)"\s+yMin="([^"]+)"\s+xMax="([^"]+)"\s+yMax="([^"]+)"[^>]*>([\s\S]*?)<\/word>/g)){let[g,m,d,y]=l.slice(1,5).map(Number);g>=0&&m>=0&&d<=a&&y<=s||r.push({page:n,text:tt(l[5]).slice(0,120),xMin:g,yMin:m,xMax:d,yMax:y,pageWidth:a,pageHeight:s})}}return{path:e,mediaType:"application/pdf",check:"pdf_text_bounds",status:r.length>0?"failed":"passed",pages:n,clippedTextCount:r.length,examples:r.slice(0,10)}}i(et,"pdfTextBoundsDiagnostic");function tt(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'|'/g,"'")}i(tt,"decodeXmlText");function Se(e){return e?e.match(/https?:\/\/[^\s<>)\]}"']+/gi)?.length??0:0}i(Se,"countAbsoluteLinks");function J(e,t,r=8e3){let n=e.filter(o=>o.turnId===t&&o.name==="assistant.delta"&&typeof o.output=="string").sort($).map(o=>o.output).join("");return n?T(n,r):null}i(J,"assistantOutputForTurn");async function Ae(e,t,r){let n=await e.listHarnessImprovementArtifacts(t,"observation",1e3),o=new Map(n.map(a=>{let s=de.parse(a);return[s.contentHash,s]}));return r.observations.map(a=>{let s=o.get(a.contentHash);if(!s||s.id!==a.id)throw new Error(`Refiner observation ${a.id} is unavailable or hash-mismatched.`);return s})}i(Ae,"loadExactObservations");async function se(e,t,r={}){let n=st(t),o=r.forceUnloaded!==!0,a=i((u,p)=>o&&(u==="instruction"||u==="skill"&&n.has(at(p))),"wasLoaded"),s=x.resolve(e,"source"),l=B.parse(JSON.parse(await N.readFile(x.join(s,"harness.json"),"utf8"))),g=Ve,m=[],d=l.files.filter(u=>["instruction","skill","agent"].includes(u.kind)&&u.visibility==="policy").map(u=>({path:u.path,kind:u.kind,loaded:a(u.kind,u.path)})),y=l.files.slice().sort((u,p)=>{let b=["instruction","skill","agent"].includes(u.kind)&&a(u.kind,u.path),k=["instruction","skill","agent"].includes(p.kind)&&a(p.kind,p.path);if(b!==k)return b?-1:1;let H=i(f=>f==="instruction"?0:f==="skill"?1:2,"rank");return H(u.kind)-H(p.kind)||u.path.localeCompare(p.path)});for(let u of y){if(!["instruction","skill","agent"].includes(u.kind)||u.visibility!=="policy"||!["text/markdown","text/plain","text/javascript"].includes(u.mediaType))continue;let p=it(s,u.path),b=await N.lstat(p);if(!b.isFile()||b.isSymbolicLink())continue;let k=await N.readFile(p);k.byteLength>g||(m.push({path:u.path,kind:u.kind,content:k.toString("utf8"),loaded:a(u.kind,u.path)}),g-=k.byteLength)}return{manifest:l,files:m,catalog:d}}i(se,"readBoundedRefinerSource");function rt(e){let t=[...e.exactEvents].sort($),r=e.events.filter(l=>l.turnId===e.turnId&&nt(l)&&(l.sequence===void 0||l.sequence<=e.boundarySequence)).sort($);if(r.length<=e.limit)return r;let n=new Set(t.map(l=>l.id)),o=t.slice(0,e.limit),a=e.limit-o.length;if(a<=0)return o;let s=r.filter(l=>!n.has(l.id)).slice(-a);return[...o,...s].sort($)}i(rt,"selectRefinerEvidenceWindow");function nt(e){return["tool.completed","workspace_action_result","skill.loaded","validation.completed","diagnostic"].includes(e.name)}i(nt,"isRefinerEvidenceEvent");function ot(e){return["turn.completed","turn.failed","turn.interrupted","tool.completed","workspace_action_result","skill.loaded","validation.completed","diagnostic"].includes(e.name)}i(ot,"isRefinerReviewTimelineEvent");function $(e,t){return(e.sequence??Number.MAX_SAFE_INTEGER)-(t.sequence??Number.MAX_SAFE_INTEGER)}i($,"compareRuntimeEvents");function w(e,t){return typeof e=="string"?T(e,t):null}i(w,"textField");function T(e,t){let r=e.replace(/\bBearer\s+[A-Za-z0-9._~+/=-]+/gi,"Bearer [redacted]").replace(/\b(api[_-]?key|access[_-]?token|auth(?:orization)?|password|secret)(\s*[:=]\s*)([^\s,;]+)/gi,"$1$2[redacted]");return r.length<=t?r:`${r.slice(0,t)}
|
|
4
4
|
[truncated]`}i(T,"redactAndBoundRefinerText");function st(e){let t=e.metadata.loadedSkillNames;return Array.isArray(t)?new Set(t.filter(r=>typeof r=="string"&&r.trim().length>0)):new Set}i(st,"loadedSkillNamesFromTrigger");function at(e){return/^skills\/([^/]+)\/SKILL\.md$/.exec(e.replaceAll("\\","/"))?.[1]??""}i(at,"skillNameFromPath");function it(e,t){let r=x.resolve(e,...t.replaceAll("\\","/").split("/")),n=x.relative(e,r);if(!n||n.startsWith("..")||x.isAbsolute(n))throw new Error(`Harness source path escapes its immutable bundle: ${t}`);return r}i(it,"containedSourcePath");function A(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}i(A,"asRecord");async function Oe(e){let t=e.rebasedOntoCurrent?e.workspace.currentChannel.release:e.overlay.baseHarnessRelease;if(!t)throw new Error("Queued Refiner trigger references a Harness workspace without a current release.");let r=await e.store.getHarnessReleaseRecord(t.contentHash);if(!r||r.harnessRelease.id!==t.id||r.workspaceId!==e.workspace.id)throw new Error("Queued Refiner trigger references an unavailable effective Harness release.");let n=await se(r.bundlePath,e.trigger,{forceUnloaded:e.rebasedOntoCurrent}),o=e.rebasedOntoCurrent?await e.store.getHarnessReleaseRecord(e.overlay.baseHarnessRelease.contentHash):r;if(!o||o.harnessRelease.id!==e.overlay.baseHarnessRelease.id||o.workspaceId!==e.workspace.id)throw new Error("Queued Refiner trigger references an unavailable admitted Harness release.");return{admittedSource:e.rebasedOntoCurrent?await se(o.bundlePath,e.trigger):n,effectiveReleaseRef:t,release:r,source:n}}i(Oe,"loadRefinerReleaseContext");function Me(e,t){if(t.requestId!==e.requestId||t.evidenceHash!==e.evidenceHash||t.admittedRelease.id!==e.harness.admittedRelease.id||t.admittedRelease.contentHash!==e.harness.admittedRelease.contentHash||t.currentRelease.id!==e.harness.currentRelease.id||t.currentRelease.contentHash!==e.harness.currentRelease.contentHash)throw new Error("Managed Harness Refiner response binding does not match the request.")}i(Me,"assertHostedResponseBinding");function Q(e){return{id:e.id,contentHash:e.contentHash,coreHash:e.coreHash,profileHash:e.profileHash}}i(Q,"refinerReleaseMetadata");async function Pe(e,t,r){return(await e.listHarnessImprovementArtifacts(t,"refiner_outcome",1e3)).find(o=>o.trigger.id===r.id&&o.trigger.contentHash===r.contentHash)??null}i(Pe,"findRefinerOutcome");async function ae(e,t,r){return(await e.listHarnessImprovementArtifacts(t,"proposal",1e3)).find(o=>o.id===r)??null}i(ae,"findProposal");async function qe(e,t,r){let n=await ae(e,t,R("proposal",r.contentHash)),o=n?.metadata.trigger;return o?.id===r.id&&o.contentHash===r.contentHash?n:null}i(qe,"findProposalByTrigger");async function ie(e,t,r){return(await e.listHarnessImprovementArtifacts(t,"targeted_validation",1e3)).filter(o=>o.proposal.id===r.id&&o.proposal.contentHash===r.contentHash)}i(ie,"findProposalValidations");var De=new WeakMap;async function zt(e){let t=G.parse(e.trigger).contentHash,r=De.get(e.store);r||(r=new Map,De.set(e.store,r));let n=r.get(t);if(n)return n;let o=ct(e);r.set(t,o);try{return await o}finally{r.get(t)===o&&r.delete(t)}}i(zt,"runLocalHarnessRefinerWorker");async function ct(e){let t=G.parse(e.trigger);if(t.decision!=="queue_refiner")throw new Error("The model-backed Refiner only accepts queue_refiner decisions.");if(!t.overlay)throw new Error("A queued Local Harness Refiner decision requires a run overlay.");let r=await e.store.getHarnessRunOverlay(t.runRef);if(!r||!U(r,t.overlay))throw new Error("Queued Refiner trigger does not match the durable run overlay.");let n=await e.store.getHarnessWorkspace(r.workspace.workspaceId);if(!n||n.location!==e.store.harnessStoragePlacement)throw new Error("Harness Refiner workspace does not match the admitted storage placement.");let o=await Pe(e.store,n.id,t);if(o){let v=o.proposal?await ae(e.store,n.id,o.proposal.id):null;return{outcome:o,overlay:await e.store.getHarnessRunOverlay(t.runRef)??r,proposal:v,validations:v?await ie(e.store,n.id,v):[],workspace:await e.store.getHarnessWorkspace(n.id)??n,advanceReceipt:null,applyReceipt:null}}let a=await Ae(e.store,n.id,t),s=!ne(n,r);if(r.status!=="active"){let v=await qe(e.store,n.id,t);return v&&U(r,v.overlay)?$e({...e,trigger:t,workspace:n,overlay:r,proposal:v,observations:a}):ce({store:e.store,workspace:n,overlay:r,trigger:t,observations:a,reason:`The run overlay is ${r.status} and has no recoverable proposal for this trigger.`,now:e.now})}let{admittedSource:l,effectiveReleaseRef:g,release:m,source:d}=await Oe({store:e.store,workspace:n,overlay:r,trigger:t,rebasedOntoCurrent:s}),y=(await e.store.listHarnessMemories(n.id)).slice(0,100).map(v=>({path:`memory/${v.key}`,kind:"memory",content:v.content,loaded:!0}));d.catalog.push(...y.map(({path:v,kind:c,loaded:h})=>({path:v,kind:c,loaded:h}))),d.files.push(...y);let u=await Ee(e.store,t,a,n.id,{allowMissingRuntimeEvents:e.reviewScope==="cross_run_candidate"}),p={memory:!0,prompt:!0,skill:!0,agent:!1},b=[...a.map(v=>v.id),...u.reviewPacket.priorIncidents.flatMap(v=>typeof v.id=="string"&&v.id.trim()?[v.id.trim()]:[])],k={capabilities:p,trigger:ee(t),observations:a.map(te),admissibleEvidenceIds:b,reviewPacket:u.reviewPacket,runtimeActivation:{admittedRelease:r.baseHarnessRelease,currentRelease:g,rebasedOntoCurrent:s,admittedSourceFiles:l.files,admittedSourceCatalog:l.catalog},sourceFiles:d.files,sourceCatalog:d.catalog,additionalEvidence:e.additionalEvidence??null},H=await(e.loadActiveRefinerRelease?e.loadActiveRefinerRelease():ye(e.storeDir)),f;if(e.stream)f=await ue({evidence:k,stream:e.stream,signal:e.signal,timeoutMs:e.timeoutMs,reviewProfile:H.profile});else if(e.refine){let v=fe.parse({schemaVersion:"openpond.hostedHarnessRefinerRequest.v2",requestId:t.id,idempotencyKey:t.contentHash,evidenceHash:E(k),harness:{admittedRelease:r.baseHarnessRelease,currentRelease:g,overlay:D(r),workspace:{id:n.id,revision:n.revision,sourceRevision:n.sourceRevision,channelRevision:n.currentChannel.revision},capabilities:p},evidence:k}),c=ge.parse(await e.refine({request:v,signal:e.signal}));Me(v,c),f=c.decision}else throw new Error("Harness Refiner requires a public model stream or managed adapter.");if(f=pe({decision:f,evidence:k}),f=me(f,H.profile),f.decision==="no_action")return ce({store:e.store,workspace:n,overlay:r,trigger:t,observations:a,reason:f.reason,metadata:{refinerRelease:Q(H)},now:e.now});if(f.decision==="route")return dt({store:e.store,workspace:n,overlay:r,trigger:t,observations:a,decision:f,refinerRelease:Q(H),now:e.now});ut(f,d.catalog,d.files);let O=mt(f,d.files),_=f.route==="memory"?await e.store.getHarnessMemory(n.id,q(f.target)):null,C=(e.now??(()=>new Date().toISOString()))(),S=gt(f),M=ft({trigger:t,decision:f,materializedContent:O,manifest:d.manifest,effects:S}),F=R("proposal",t.contentHash),L=R("targeted-check",{trigger:t.contentHash,route:f.route,target:f.target}),P=re(a),W=await e.store.freezeHarnessRunOverlayWithProposalAtomically({runId:t.runRef,expectedRevision:r.revision,edits:M,updatedAt:C,buildProposal:i(v=>le({schemaVersion:"openpond.harnessImprovementProposal.v1",id:F,overlay:D(v),baseHarnessRelease:{id:m.harnessRelease.id,contentHash:m.harnessRelease.contentHash},expectedWorkspace:{workspaceId:n.id,revision:n.revision,sourceRevision:n.sourceRevision,channelRevision:n.currentChannel.revision},requestedScope:"personal",route:f.route,risk:f.operation==="delete"||S.some(c=>!["text_instruction","memory","dependency_selection"].includes(c))?"review":"low",effects:S,evidence:P,edits:M,validationPlan:vt({decision:f,evidence:P,validationId:L,effects:S}),expectedOutcome:f.expectedOutcome,createdAt:C,metadata:{refinerRelease:Q(H),trigger:{id:t.id,contentHash:t.contentHash},reason:f.reason,evidenceBasis:f.evidenceBasis,generatedManifestEditId:M.find(c=>c.target==="harness.json")?.id??null,rebasedFromHarnessRelease:s?r.baseHarnessRelease:null,expectedMemory:f.route==="memory"?{key:q(f.target),revision:_?.revision??null,contentHash:_?.contentHash??null,status:_?.status??null}:null}}),"buildProposal")});return $e({...e,trigger:t,workspace:n,overlay:W.overlay,proposal:W.proposal,observations:a})}i(ct,"executeLocalHarnessRefinerWorker");async function $e(e){let t=(e.now??(()=>new Date().toISOString()))(),r=await ie(e.store,e.workspace.id,e.proposal);if(r.length===0){r=await he({storeDir:e.storeDir,workspace:e.workspace,proposal:e.proposal,now:i(()=>t,"now")});for(let l of r)await e.store.saveHarnessImprovementArtifact(e.workspace.id,"targeted_validation",l)}if(e.proposal.route==="memory")return lt({...e,validations:r,timestamp:t});let n=await Re({store:e.store,storeDir:e.storeDir,overlay:e.overlay,proposal:e.proposal,validations:r,receiptId:R("harness-advance",e.proposal.contentHash),now:i(()=>t,"now")}),o=V({schemaVersion:"openpond.improvementRouteDecision.v1",id:R("route",e.trigger.contentHash),trigger:{id:e.trigger.id,contentHash:e.trigger.contentHash},route:e.proposal.route,authority:"refiner_model",automatic:n.receipt.decision==="advanced",reason:n.receipt.reason,createdAt:t,metadata:{proposalId:e.proposal.id}});await e.store.saveHarnessImprovementArtifact(e.workspace.id,"route_decision",o);let a=Y({schemaVersion:"openpond.improvementApplyReceipt.v1",id:R("apply",e.proposal.contentHash),proposal:{id:e.proposal.id,contentHash:e.proposal.contentHash},beforeOverlay:e.trigger.overlay,afterOverlay:n.receipt.decision==="advanced"?D(e.overlay):null,decision:n.receipt.decision==="advanced"?"applied":"retained",boundary:e.trigger.boundary,validationRefs:r.map(l=>({id:l.id,contentHash:l.contentHash})),outcomeEvidenceRefs:j(e.observations),rollbackOf:null,createdAt:t,metadata:{workspaceAdvanceDecision:n.receipt.decision}});await e.store.saveHarnessImprovementArtifact(e.workspace.id,"apply_receipt",a);let s=z({schemaVersion:"openpond.harnessRefinerOutcome.v1",id:R("refiner-outcome",e.trigger.contentHash),trigger:{id:e.trigger.id,contentHash:e.trigger.contentHash},decision:"proposed",proposal:{id:e.proposal.id,contentHash:e.proposal.contentHash},reason:n.receipt.reason,evidenceRefs:e.trigger.observations,estimatedCostUsd:e.trigger.estimatedMaxCostUsd,createdAt:t,metadata:{refinerRelease:e.proposal.metadata.refinerRelease??null,validationStatuses:r.map(l=>l.status),workspaceAdvanceReceipt:{id:n.receipt.id,contentHash:n.receipt.contentHash}}});return await e.store.saveHarnessImprovementArtifact(e.workspace.id,"refiner_outcome",s),{outcome:s,overlay:e.overlay,proposal:e.proposal,validations:r,workspace:n.workspace,advanceReceipt:n.receipt,applyReceipt:a}}i($e,"finishPersistedProposal");async function lt(e){let t=e.proposal.validationPlan.filter(m=>m.required).every(m=>e.validations.some(d=>d.validationId===m.id&&d.status==="passed")),r=e.proposal.edits.find(m=>m.route==="memory");if(!r)throw new Error("Memory proposal has no memory edit.");let n=Z(e.proposal,r.target),o=t&&r.operation!=="delete";o&&await e.store.writeHarnessMemory({workspaceId:e.workspace.id,key:q(r.target),content:r.content,expectedRevision:n.revision,sourceRunId:e.trigger.runRef,sourceProposal:{id:e.proposal.id,contentHash:e.proposal.contentHash},createdAt:e.timestamp});let a=o?"Validated low-risk Personal memory applied at the safe turn boundary.":r.operation==="delete"?"Memory deletion requires explicit review.":"Required memory validation did not pass.",s=V({schemaVersion:"openpond.improvementRouteDecision.v1",id:R("route",e.trigger.contentHash),trigger:{id:e.trigger.id,contentHash:e.trigger.contentHash},route:"memory",authority:"refiner_model",automatic:o,reason:a,createdAt:e.timestamp,metadata:{proposalId:e.proposal.id}});await e.store.saveHarnessImprovementArtifact(e.workspace.id,"route_decision",s);let l=Y({schemaVersion:"openpond.improvementApplyReceipt.v1",id:R("apply",e.proposal.contentHash),proposal:{id:e.proposal.id,contentHash:e.proposal.contentHash},beforeOverlay:e.trigger.overlay,afterOverlay:o?D(e.overlay):null,decision:o?"applied":"retained",boundary:e.trigger.boundary,validationRefs:e.validations.map(m=>({id:m.id,contentHash:m.contentHash})),outcomeEvidenceRefs:j(e.observations),rollbackOf:null,createdAt:e.timestamp,metadata:{externalState:"harness_memory"}});await e.store.saveHarnessImprovementArtifact(e.workspace.id,"apply_receipt",l);let g=z({schemaVersion:"openpond.harnessRefinerOutcome.v1",id:R("refiner-outcome",e.trigger.contentHash),trigger:{id:e.trigger.id,contentHash:e.trigger.contentHash},decision:"proposed",proposal:{id:e.proposal.id,contentHash:e.proposal.contentHash},reason:a,evidenceRefs:e.trigger.observations,estimatedCostUsd:e.trigger.estimatedMaxCostUsd,createdAt:e.timestamp,metadata:{refinerRelease:e.proposal.metadata.refinerRelease??null,validationStatuses:e.validations.map(m=>m.status)}});return await e.store.saveHarnessImprovementArtifact(e.workspace.id,"refiner_outcome",g),{outcome:g,overlay:e.overlay,proposal:e.proposal,validations:e.validations,workspace:e.workspace,advanceReceipt:null,applyReceipt:l}}i(lt,"finishMemoryProposal");async function ce(e){let t=(e.now??(()=>new Date().toISOString()))(),r=z({schemaVersion:"openpond.harnessRefinerOutcome.v1",id:R("refiner-outcome",e.trigger.contentHash),trigger:{id:e.trigger.id,contentHash:e.trigger.contentHash},decision:"no_action",proposal:null,reason:e.reason,evidenceRefs:e.trigger.observations,estimatedCostUsd:e.trigger.estimatedMaxCostUsd,createdAt:t,metadata:e.metadata??{}});return await e.store.saveHarnessImprovementArtifact(e.workspace.id,"refiner_outcome",r),{outcome:r,overlay:e.overlay,proposal:null,validations:[],workspace:e.workspace,advanceReceipt:null,applyReceipt:null}}i(ce,"persistNoAction");async function dt(e){let t=(e.now??(()=>new Date().toISOString()))(),r=V({schemaVersion:"openpond.improvementRouteDecision.v1",id:R("route",e.trigger.contentHash),trigger:{id:e.trigger.id,contentHash:e.trigger.contentHash},route:e.decision.route,authority:"refiner_model",automatic:!1,reason:e.decision.reason,createdAt:t,metadata:{summary:e.decision.summary,expectedOutcome:e.decision.expectedOutcome,evidenceBasis:e.decision.evidenceBasis,refinerRelease:e.refinerRelease}});return await e.store.saveHarnessImprovementArtifact(e.workspace.id,"route_decision",r),ce({store:e.store,workspace:e.workspace,overlay:e.overlay,trigger:e.trigger,observations:e.observations,reason:`Routed to ${e.decision.route}: ${e.decision.summary}`,metadata:{routed:!0,route:e.decision.route,routeDecision:{id:r.id,contentHash:r.contentHash},expectedOutcome:e.decision.expectedOutcome,evidenceBasis:e.decision.evidenceBasis,refinerRelease:e.refinerRelease},now:i(()=>t,"now")})}i(dt,"persistExternalRoute");function ut(e,t,r){let n=e.route==="memory"?"memory":e.route==="skill"?"skill":e.route==="agent"?"agent":"instruction",o=t.find(s=>s.path===e.target);if(e.operation==="create"){if(o)throw new Error(`Refiner create target already exists: ${e.target}.`);if(!pt(e.route,e.target))throw new Error(`Refiner create target is not a safe ${e.route} component path: ${e.target}.`);return}if(!o)throw new Error(`Refiner targeted an unlisted source file: ${e.target}.`);if(o.kind!==n)throw new Error(`Refiner route ${e.route} cannot ${e.operation} ${o.kind} file ${o.path}.`);let a=r.find(s=>s.path===e.target);if(e.operation==="update"&&!a)throw new Error(`Refiner update target ${e.target} exceeded the bounded source budget.`)}i(ut,"assertSafeDecision");function mt(e,t){if(e.operation==="delete")return null;if(e.operation==="create"){if(e.createContent===null)throw new Error("Refiner create proposal is missing bounded component content.");return e.createContent}let r=t.find(a=>a.path===e.target);if(!r)throw new Error(`Refiner update target ${e.target} exceeded the bounded source budget.`);if(e.find===null||e.replace===null)throw new Error("Refiner update proposal is missing its exact find/replace edit.");let n=r.content.split(e.find).length-1;if(n!==1)throw new Error(`Refiner update find text must occur exactly once in ${e.target}; found ${n}.`);let o=r.content.replace(e.find,e.replace);if(o===r.content)throw new Error("Refiner proposal does not change the selected source file.");return o}i(mt,"materializeDecisionContent");function pt(e,t){let r=t.replaceAll("\\","/");return e==="memory"?/^memory\/[a-z0-9][a-z0-9-]{0,119}$/.test(r):e==="prompt"?/^instructions\/refinements\/[a-z0-9][a-z0-9-]*\.md$/.test(r):e==="skill"?/^skills\/[a-z0-9][a-z0-9-]*\/SKILL\.md$/.test(r):/^agents\/[a-z0-9][a-z0-9-]*\/agent\.ts$/.test(r)}i(pt,"safeCreatedComponentPath");function ft(e){let{decision:t}=e,r={id:R("overlay-edit",{trigger:e.trigger.contentHash,operation:t.operation,target:t.target,content:e.materializedContent}),route:t.route,operation:t.operation,target:t.target,summary:t.summary,content:e.materializedContent,contentHash:e.materializedContent===null?null:E(e.materializedContent),effects:e.effects};if(t.route==="memory")return[r];if(t.operation==="update")return[r];let n=e.manifest.files.find(d=>d.path===t.target),o=new Set,a=[],s=e.manifest.files;if(t.operation==="create"){let d=t.route==="skill"?"skill":t.route==="agent"?"agent":"instruction";s=[...s,{id:R(d,t.target),kind:d,path:t.target,parentId:null,mediaType:t.route==="agent"?"text/javascript":"text/markdown",visibility:"policy",portability:"portable"}]}else{if(!n)throw new Error(`Refiner delete target is not declared: ${t.target}.`);o.add(n.id);for(let d of e.manifest.files)d.parentId===n.id&&(o.add(d.id),a.push({id:R("overlay-edit",{trigger:e.trigger.contentHash,operation:"delete",target:d.path}),route:t.route,operation:"delete",target:d.path,summary:`Remove resource ${d.path} with ${t.target}.`,content:null,contentHash:null,effects:e.effects}));s=s.filter(d=>!o.has(d.id))}let l=B.parse({...e.manifest,files:s}),g=`${JSON.stringify(l,null,2)}
|
|
5
5
|
`,m={id:R("overlay-edit",{trigger:e.trigger.contentHash,operation:"update",target:"harness.json",content:g}),route:t.route,operation:"update",target:"harness.json",summary:`${t.operation==="create"?"Register":"Remove"} Harness component ${t.target}.`,content:g,contentHash:E(g),effects:e.effects};return[r,...a,m]}i(ft,"buildProposalEdits");function gt(e){if(e.route==="agent")return["executable_code"];if(e.route==="memory")return["memory"];let t=[e.summary,e.expectedOutcome,e.createContent??"",e.find??"",e.replace??""].join(`
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{j as U,m as W,n as K,o as q,r as X,y as O}from"./chunk-
|
|
2
|
+
import{j as U,m as W,n as K,o as q,r as X,y as O}from"./chunk-GG6PM7TB.js";import{Ba as V,oa as y,wa as N}from"./chunk-BYVE4TMU.js";import{L as D}from"./chunk-ZEOYNUHL.js";import{Ba as F,Ca as z,Ia as G,Ja as A,ab as $,bb as L,cb as J,ea as P}from"./chunk-ZY32SZ2P.js";import{i as B,l as j,m as E,n as g}from"./chunk-RCT3O3HQ.js";import{a as f}from"./chunk-FTQLQJQV.js";import{createHash as Y}from"node:crypto";import{mkdir as Z,readdir as ie,readFile as H,writeFile as Q}from"node:fs/promises";import m from"node:path";async function Ae(e,t){let a=y.parse(e),s=["tasks","assets","environment","graders","rubrics","comparisons","metrics","fixtures"];await Promise.all(s.map(w=>Z(m.join(t,w),{recursive:!0})));let i=await oe(a,t);if(a.metrics.customAggregator){let w=m.join(t,a.metrics.customAggregator.module),v=Y("sha256").update(await H(w)).digest("hex");a=y.parse({...a,metrics:{...a.metrics,customAggregator:{...a.metrics.customAggregator,contentHash:v}}})}let c=m.join(t,"taskset.json"),d=m.join(t,"tasks","tasks.jsonl"),n=m.join(t,"graders","graders.json"),o=m.join(t,"fixtures","grader-fixtures.json"),u=m.join(t,"metrics","policy.json"),r=m.join(t,"assets","manifest.json"),l=m.join(t,"environment","contract.json"),p=m.join(t,"rubrics","preference-review.md"),k=m.join(t,"comparisons","policy.json");return await Promise.all([...K(a)].map(([w,v])=>Q(m.join(t,w),v,"utf8"))),{directory:t,files:[c,d,r,l,n,p,k,u,o,...i],draft:a}}f(Ae,"writeTasksetDraftPackage");async function _e(e){let t=await ce(e),a=Y("sha256");for(let s of t)a.update(m.relative(e,s).replaceAll(m.sep,"/")),a.update("\0"),a.update(await H(s)),a.update("\0");return a.digest("hex")}f(_e,"hashTasksetDraftPackage");async function ee(e,t){let a=m.basename(e)==="taskset.json"?e:m.join(e,"taskset.json"),s=m.dirname(a),i=f(async n=>{if(!t)return H(n,"utf8");let o=t.get(m.relative(s,n).replaceAll(m.sep,"/"));if(!o)throw Object.assign(new Error("Authored file is absent."),{code:"ENOENT"});return new TextDecoder("utf-8",{fatal:!0}).decode(o)},"read"),c=JSON.parse(await i(a)),d=y.safeParse(c);if(d.success){let[n,o,u,r,l,p]=await Promise.all([de(m.join(s,"tasks","tasks.jsonl"),i),I(m.join(s,"graders","graders.json"),i),I(m.join(s,"fixtures","grader-fixtures.json"),i),I(m.join(s,"metrics","policy.json"),i),I(m.join(s,"environment","contract.json"),i),I(m.join(s,"comparisons","policy.json"),i)]);return y.parse({...d.data,...n===null?{}:{tasks:n},...o===null?{}:{graders:o},...u===null?{}:{graderFixtures:u},...r===null?{}:{metrics:r},...l===null?{}:{environment:l},...p===null?{}:{review:p}})}return O(c)}f(ee,"readTasksetDraftPackage");async function oe(e,t){let a=W(e),s=[];for(let i of a){let c=m.join(t,i.relativePath);await Z(m.dirname(c),{recursive:!0});try{await Q(c,i.source,{encoding:"utf8",flag:"wx"})}catch(d){if(!le(d))throw d}s.push(c)}return s}f(oe,"writeConfiguredStarterCode");async function ce(e){let t=[];async function a(s){let i=await ie(s,{withFileTypes:!0});i.sort((c,d)=>c.name.localeCompare(d.name));for(let c of i){let d=m.join(s,c.name);if(c.isSymbolicLink())throw new Error(`Taskset workspaces cannot contain symbolic links: ${d}`);c.isDirectory()?await a(d):c.isFile()&&t.push(d)}}return f(a,"visit"),await a(e),t}f(ce,"packageFiles");async function I(e,t=a=>H(a,"utf8")){try{return JSON.parse(await t(e))}catch(a){if(te(a))return null;throw a}}f(I,"readOptionalJson");async function de(e,t=a=>H(a,"utf8")){try{return(await t(e)).split(/\r?\n/).map(s=>s.trim()).filter(Boolean).map(s=>JSON.parse(s))}catch(a){if(te(a))return null;throw a}}f(de,"readOptionalJsonLines");function te(e){return e instanceof Error&&"code"in e&&e.code==="ENOENT"}f(te,"isMissingFile");function le(e){return e instanceof Error&&"code"in e&&e.code==="EEXIST"}f(le,"isFileExists");import{constants as re}from"node:fs";import{lstat as fe,open as me,readdir as ue}from"node:fs/promises";import _ from"node:path";async function Ge(e){let t=_.resolve(e.directory);if(!(await fe(t)).isDirectory())throw new Error("Dataset upload requires a regular authored folder.");let a=new Map,s=0;async function i(r,l){if(l>30)throw new Error("Dataset folder nesting exceeds 30 levels.");for(let p of(await ue(r,{withFileTypes:!0})).sort((k,w)=>k.name<w.name?-1:k.name>w.name?1:0)){if(p.name.startsWith("."))throw new Error("Dataset folders cannot include hidden files or directories.");if(p.isSymbolicLink()||!p.isDirectory()&&!p.isFile())throw new Error("Dataset folders can contain only regular files and directories.");let k=_.join(r,p.name);if(p.isDirectory()){await i(k,l+1);continue}if(a.size>=1e4)throw new Error("Dataset folder exceeds 10,000 files.");let w=await me(k,re.O_RDONLY|re.O_NOFOLLOW);try{let v=await w.stat();if(!v.isFile()||v.size>(e.maximumBytes??q)-s)throw new Error("Dataset folder exceeds its capture byte limit.");let R=new Uint8Array(v.size),S=0;for(;S<R.length;){let M=await w.read(R,S,R.length-S,S);if(!M.bytesRead)throw new Error("Dataset file changed during capture.");S+=M.bytesRead}let C=await w.stat();if(C.size!==v.size||C.mtimeMs!==v.mtimeMs||C.ctimeMs!==v.ctimeMs)throw new Error("Dataset file changed during capture.");s+=R.length,a.set(_.relative(t,k).replaceAll(_.sep,"/"),R)}finally{await w.close()}}}f(i,"visit"),await i(t,0);let c=await ee(t,a),d=[...a].map(([r,l])=>({path:r,contentHash:E(l),sizeBytes:l.byteLength})),n=g(d),o=y.parse({...c,id:e.datasetId??c.id,profileId:e.teamId,revision:e.expectedRevision+1,modelScope:null,status:"draft",publishedTasksetRef:null,metadata:{...c.metadata,importedTasksetPackage:{packageHash:n}}});return{workspace:X({schemaVersion:"openpond.tasksetDraftWorkspace.v1",draft:o,files:[...a].filter(([r])=>!U(r)).map(([r,l])=>({path:r,base64:Buffer.from(l).toString("base64"),contentHash:E(l),sizeBytes:l.byteLength}))},e.maximumBytes),sourceHash:n,sourceFiles:d,capturedBytes:s}}f(Ge,"captureTasksetDraftWorkspace");async function ae(e){let{binding:t,rewards:a}=e.learning,s=$(t,a),i=new Set(e.graders.map(r=>r.id));if(!i.size||i.size!==e.graders.length||e.graders.some(r=>{let l=s.find(p=>p.source.graderId===r.id);return!l||r.version!==String(l.reward.revision)||g(r.metadata.rewardBinding)!==g(D(t))}))throw new Error("Calibration graders differ from the immutable Reward binding.");let c=L(t,a).filter(r=>i.has(r.id)),d=P.parse({id:e.task.id,clusterKey:e.task.clusterKey,split:e.task.split,input:e.task.input,expectedOutput:e.task.expectedOutput,policyVisibleContext:e.task.policyVisibleContext,privilegedContextRef:e.task.privilegedContextRef,artifactRefs:[],tags:e.task.tags}),n=await G({task:d,graders:c,signal:e.signal,evidence:{output:e.attempt.output,artifactRefs:e.attempt.artifactRefs,runtimeEventRefs:e.attempt.runtimeEventRefs,infrastructureError:e.attempt.infrastructureError},customVerifier:e.customVerifier?async({grader:r})=>{let l=e.graders.find(k=>k.id===r.id);if(l?.kind!=="custom_verifier")throw new Error("Calibration verifier projection is missing.");let p=await e.customVerifier({grader:l,task:e.task,attempt:e.attempt,signal:e.signal});return{score:p.score,passed:p.passed,rewardEligible:r.rewardEligible,failureClass:null,feedback:[p.feedback],visibleEvidenceRefs:[],privilegedEvidenceRefs:p.evidenceRefs??[]}}:void 0,modelJudge:e.modelJudge?async({grader:r})=>{let l=e.graders.find(k=>k.id===r.id);if(l?.kind!=="model_judge")throw new Error("Calibration judge projection is missing.");let p=await e.modelJudge({grader:l,task:e.task,attempt:e.attempt});return{score:p.score,passed:p.passed,rewardEligible:r.rewardEligible,failureClass:null,feedback:[p.feedback],visibleEvidenceRefs:[],privilegedEvidenceRefs:p.evidenceRefs??[]}}:void 0}),o=A({graders:c,components:n,infrastructureError:e.attempt.infrastructureError}),u=n.map(r=>{let l=e.graders.find(p=>p.id===r.graderId);return{graderId:r.graderId,graderVersion:r.graderVersion,score:r.score,passed:r.passed,hardGate:l.hardGate,rewardEligible:r.rewardEligible,feedback:r.feedback.join(`
|
|
3
3
|
`)||null,evidenceRefs:[...r.visibleEvidenceRefs,...r.privilegedEvidenceRefs],judge:l.kind==="model_judge"?l.judge:null,calibrationStatus:l.kind==="model_judge"?l.calibrationStatus:"not_applicable"}});return{schemaVersion:"openpond.gradeResult.v1",id:`calibration_${g([e.attempt.id,t.contentHash,n]).slice(0,24)}`,attemptId:e.attempt.id,graderSetHash:g(e.graders),score:o.score,passed:o.passed,components:u,failureClass:o.failureClass,feedback:n.flatMap(r=>r.feedback),rewardEligible:o.rewardEligible,createdAt:e.now?.()??new Date().toISOString()}}f(ae,"gradeLearningCalibrationAttempt");async function se(e){let{binding:t,rewards:a}=e.learning,s=$(t,a);if(e.graders.length!==s.length||s.some(({source:o,reward:u})=>!e.graders.some(r=>r.id===o.graderId&&r.version===String(u.revision)&&g(r.metadata.rewardBinding)===g(D(t)))))throw new Error("Prepared Taskset graders do not match their immutable Reward binding.");let i=P.parse({id:e.task.id,clusterKey:e.task.clusterKey,split:e.task.split,input:e.task.input,expectedOutput:e.task.expectedOutput,policyVisibleContext:e.task.policyVisibleContext,privilegedContextRef:e.task.privilegedContextRef,artifactRefs:[],tags:e.task.tags}),c=await J({binding:t,rewards:a,task:i,signal:e.signal,evidence:{output:e.attempt.output,artifactRefs:e.attempt.artifactRefs,runtimeEventRefs:e.attempt.runtimeEventRefs,infrastructureError:e.attempt.infrastructureError},customVerifier:e.customVerifier?async({grader:o})=>{let u=e.graders.find(l=>l.id===o.id);if(u?.kind!=="custom_verifier")throw new Error("Bound verifier projection is missing.");let r=await e.customVerifier({grader:u,task:e.task,attempt:e.attempt,signal:e.signal});return{score:r.score,passed:r.passed,rewardEligible:o.rewardEligible,failureClass:null,feedback:[r.feedback],visibleEvidenceRefs:[],privilegedEvidenceRefs:r.evidenceRefs??[]}}:void 0,modelJudge:e.modelJudge?async({grader:o})=>{let u=e.graders.find(l=>l.id===o.id);if(u?.kind!=="model_judge")throw new Error("Bound judge projection is missing.");let r=await e.modelJudge({grader:u,task:e.task,attempt:e.attempt});return{score:r.score,passed:r.passed,rewardEligible:o.rewardEligible,failureClass:null,feedback:[r.feedback],visibleEvidenceRefs:[],privilegedEvidenceRefs:r.evidenceRefs??[]}}:void 0}),d=c.training.status==="not_configured"?c.evaluation:c.training,n=g(e.graders);return{schemaVersion:"openpond.gradeResult.v1",id:`grade_${g([e.attempt.id,c.contentHash]).slice(0,24)}`,attemptId:e.attempt.id,graderSetHash:n,score:d.score,passed:d.passed===!0,components:c.results.map(o=>{let u=t.sources.find(l=>l.graderId===o.graderId),r=e.graders.find(l=>l.id===o.graderId);return{graderId:o.graderId,graderVersion:r.version,score:o.normalizedScore,passed:o.passed===!0,hardGate:u.hardGate,rewardEligible:u.role==="training"&&o.status==="scored",feedback:o.message?.trim()||null,evidenceRefs:o.evidenceHashes,judge:r.kind==="model_judge"?r.judge:null,calibrationStatus:r.kind==="model_judge"?r.calibrationStatus:"not_applicable"}}),failureClass:e.attempt.infrastructureError?"infrastructure_failure":d.status!=="scored"?"grader_failure":d.passed?null:"policy_failure",feedback:c.results.flatMap(o=>o.message?.trim()?[o.message.trim()]:[]),rewardEligible:c.training.status==="scored",rewardComposition:c,createdAt:e.now?.()??new Date().toISOString()}}f(se,"gradeLearningBatchAttempt");async function ft(e){return e.learning?ae({...e,learning:e.learning}):he(e)}f(ft,"gradeCalibrationAttempt");async function he(e){if(e.learning)return se({...e,learning:e.learning});if(e.graders.some(i=>i.metadata.rewardBinding!==void 0))throw new Error("This Taskset requires its immutable public Reward binding to grade an attempt.");let t=g(e.graders),a=[];for(let i of e.graders)e.signal?.throwIfAborted(),a.push(e.attempt.infrastructureError?b(i,null,!1,"Infrastructure failure; no reward was produced.",[],!1):await we(i,e.task,e.attempt,e.modelJudge,e.customVerifier,e.signal));let s=A({graders:e.graders,infrastructureError:e.attempt.infrastructureError,components:a.map(i=>({...i,failureClass:i.score===null?"grader_failure":i.passed?null:"policy_failure"}))});return{schemaVersion:"openpond.gradeResult.v1",id:`grade_${g([e.attempt.id,t,a]).slice(0,24)}`,attemptId:e.attempt.id,graderSetHash:t,score:s.score,passed:s.passed,components:a,failureClass:s.failureClass,feedback:e.attempt.infrastructureError?[e.attempt.infrastructureError]:a.flatMap(i=>i.feedback?[i.feedback]:[]),rewardEligible:s.rewardEligible,createdAt:e.now?.()??new Date().toISOString()}}f(he,"gradeAttempt");async function we(e,t,a,s,i,c){if(e.kind==="model_judge"){if(!s)return b(e,null,!1,"Model judge runner is unavailable.",[],!1);if(e.calibrationStatus!=="passed")return b(e,null,!1,"Model judge calibration has not passed.",[],!1);let n=await s({grader:e,task:t,attempt:a});return b(e,n.score,n.passed,n.feedback,n.evidenceRefs??[])}if(e.kind==="human")return b(e,null,!1,"Human review is pending.",[],!1);if(e.kind==="custom_verifier"){if(!i)return b(e,null,!1,"Sandboxed verifier runner is unavailable.",[],!1);let n=await i({grader:e,task:t,attempt:a,signal:c});return b(e,n.score,n.passed,n.feedback,n.evidenceRefs??[])}let d=F({grader:z(e),task:t,evidence:a});return b(e,d.score,d.passed,d.feedback,[...a.artifactRefs,...a.runtimeEventRefs])}f(we,"runGrader");function b(e,t,a,s,i,c=e.rewardEligible){let d=t!==null&&Number.isFinite(t)?Math.max(0,Math.min(1,t)):null;return{graderId:e.id,graderVersion:e.version,score:d,passed:d!==null&&a,hardGate:e.hardGate,rewardEligible:d!==null&&c,feedback:s,evidenceRefs:i,judge:e.kind==="model_judge"?e.judge:null,calibrationStatus:e.kind==="model_judge"?e.calibrationStatus:"not_applicable"}}f(b,"component");import{access as ke,mkdir as T,readFile as ve,writeFile as x}from"node:fs/promises";import h from"node:path";async function Ft(e,t,a={}){let s=N.parse(e),i=new Map(s.graders.flatMap(n=>{if(n.kind!=="custom_verifier")return[];let o=B.safeParse(n.metadata.portableVerifierRef);return o.success&&o.data.visibility!=="policy"&&o.data.path===n.module?[[n.module,o.data]]:[]})),c=V(s);if(!c.valid)throw new Error(c.issues.map(n=>`${n.code}: ${n.message}`).join(`
|
|
4
4
|
`));await T(h.join(t,"data"),{recursive:!0}),await T(h.join(t,"graders"),{recursive:!0}),await T(h.join(t,"environment"),{recursive:!0}),await T(h.join(t,"fixtures"),{recursive:!0});let d=[h.join(t,"taskset.json"),h.join(t,"capabilities.json"),h.join(t,"data","tasks.jsonl"),h.join(t,"graders","graders.json"),h.join(t,"fixtures","grader-fixtures.json"),h.join(t,"environment","taskset.ts")];await x(d[0],j(s),"utf8"),await x(d[1],j(s.capabilities),"utf8"),await x(d[2],s.tasks.map(n=>JSON.stringify(n)).join(`
|
|
5
5
|
`)+`
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{b as g,d as $,e as O,f as C}from"./chunk-
|
|
2
|
+
import{b as g,d as $,e as O,f as C}from"./chunk-OKPV6MBX.js";import{a as w}from"./chunk-3M53YXEI.js";import{a as r}from"./chunk-FTQLQJQV.js";var L=Symbol("openpondCliOptionValues"),a=class extends Error{static{r(this,"CliUsageError")}exitCode=2;constructor(t){super(t),this.name="CliUsageError"}},K=new Set(["maxOutputBytes","timeoutSec"]);function k(n){let t=[...n],o="",i={},e={},u=[];for(;t.length>0;){let s=t.shift();if(s==="--"){u.push(...t);break}if(s.startsWith("--")){let f=s.indexOf("="),c=f>=0?s.slice(2,f):s.slice(2),p=N(c),d=f>=0?s.slice(f+1):P(t,p,o);h(i,e,p,d,o)}else _(s)?y(s,t,i,e):o?u.push(s):o=s}return Object.defineProperty(i,L,{value:e,enumerable:!1,configurable:!1,writable:!1}),V(o,i),{command:o,options:i,rest:u}}r(k,"parseArgs");function N(n){return n.replace(/-([a-z])/g,(t,o)=>o.toUpperCase())}r(N,"normalizeCliOptionKey");function _(n){return/^-[^-].*/.test(n)&&!S(n)}r(_,"isShortOptionToken");function y(n,t,o,i){let e=n.slice(1);if(!e)return;let u=e.indexOf("="),s=u>=0?e.slice(0,u):e,f=u>=0?e.slice(u+1):null;if(s.length!==1){for(let d of s){let m=g[d];if(!m)throw new a(`unknown short option -${d}`);if(C(m)!=="boolean")throw new a(`short option -${d} requires its own value`);h(o,i,m,"true")}return}let c=g[s];if(!c)throw new a(`unknown short option -${s}`);let p=f??P(t,c);h(o,i,c,p)}r(y,"parseShortOptionToken");function P(n,t,o){let i=I(t,o);if(i==="boolean")return n[0]&&x(n[0])?n.shift():"true";if(i){let e=n.shift();if(e===void 0||R(e)&&!S(e))throw e!==void 0&&n.unshift(e),new a(`${l(t)} must be ${b(i)}`);return e}return n[0]&&!n[0].startsWith("--")?n.shift():"true"}r(P,"readOptionValue");function h(n,t,o,i,e){T(o,i,e),n[o]=i,(t[o]??=[]).push(i)}r(h,"setParsedOption");function T(n,t,o){let i=I(n,o);if(i){if(i==="boolean"){if(!x(t))throw new a(`${l(n)} must be a boolean`);return}if(t.trim().length===0||t==="true")throw new a(`${l(n)} must be ${b(i)}`);if(i==="number"||i==="integer"){let e=Number(t);if(!Number.isFinite(e))throw new a(`${l(n)} must be ${b(i)}`);if(i==="integer"&&!Number.isInteger(e))throw new a(`${l(n)} must be an integer`);if(i==="integer"&&K.has(n)&&e<=0)throw new a(`${l(n)} must be a positive integer`);return}if(i==="json")try{w(t,l(n))}catch(e){throw new a(e instanceof Error?e.message:String(e))}}}r(T,"validateParsedOptionValue");function I(n,t){return t?O(t,n):C(n)}r(I,"typedOptionKind");function l(n){return n.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}r(l,"cliOptionLabel");function E(n){return n==="json"?"JSON value":n}r(E,"optionKindLabel");function b(n){let t=E(n);return/^[aeiou]/i.test(t)?`an ${t}`:`a ${t}`}r(b,"optionKindPhrase");function x(n){return/^(true|false|1|0|yes|no)$/i.test(n)}r(x,"isBooleanLiteral");function R(n){return n.startsWith("-")&&n!=="-"}r(R,"isOptionLike");function S(n){return/^-\d+(?:\.\d+)?$/.test(n)}r(S,"isNegativeNumber");function V(n,t){let o=n?$(n):null;for(let i of Object.keys(t))if(!O(n,i)){let e=l(i),u=o?` for ${o.name}`:"";throw new a(`unknown option --${e}${u}`)}}r(V,"validateCommandOptions");export{a,k as b};
|