openpond 0.2.46 → 0.2.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app-server.d.ts +157 -1
- package/dist/app-server.js +1 -1
- package/dist/chunks/{actions-command-I3NI75P2.js → actions-command-DSO6YOEE.js} +1 -1
- package/dist/chunks/{app-layer-B3SMVO4B.js → app-layer-RRFI27N4.js} +1 -1
- package/dist/chunks/app-server-runtime-RWO4KGPU.js +2 -0
- package/dist/chunks/{apps-OA2VX34V.js → apps-NELJL377.js} +1 -1
- package/dist/chunks/{chunk-4UTIEH5H.js → chunk-2SPZYBDN.js} +1 -1
- package/dist/chunks/{chunk-LL4QP2IM.js → chunk-2ZJJFBIA.js} +1 -1
- package/dist/chunks/{chunk-HP2D3W2B.js → chunk-42GOV5ZU.js} +3 -3
- package/dist/chunks/{chunk-PGKEDR3S.js → chunk-5CMKGD43.js} +1 -1
- package/dist/chunks/{chunk-D6MQTNJ3.js → chunk-7K72KS5C.js} +6 -6
- package/dist/chunks/{chunk-JBHAU7PH.js → chunk-7MXZJQS7.js} +137 -137
- package/dist/chunks/{chunk-YSYXIJ46.js → chunk-7QEE4PBI.js} +1 -1
- package/dist/chunks/{chunk-F2AG46CV.js → chunk-7YR6CBNU.js} +1 -1
- package/dist/chunks/{chunk-UWO34HP6.js → chunk-DALJMSJG.js} +2 -2
- package/dist/chunks/chunk-DFM5JTS2.js +2 -0
- package/dist/chunks/{chunk-33AO3P6X.js → chunk-DLZP22WV.js} +1 -1
- package/dist/chunks/{chunk-BKMGBIBT.js → chunk-EMKZVP7Z.js} +1 -1
- package/dist/chunks/chunk-EPY7M5XS.js +2 -0
- package/dist/chunks/{chunk-ZJY2L43W.js → chunk-HA7EFTPF.js} +1 -1
- package/dist/chunks/{chunk-HK3WGUKK.js → chunk-IKWDL3RB.js} +1 -1
- package/dist/chunks/chunk-IOQUF34U.js +2 -0
- package/dist/chunks/chunk-JCCU3VFK.js +2 -0
- package/dist/chunks/{chunk-ZC57DX6D.js → chunk-JDLAHVAJ.js} +1 -1
- package/dist/chunks/{chunk-WWABOVRW.js → chunk-LVL4TIAO.js} +2 -2
- package/dist/chunks/{chunk-IV7F74JJ.js → chunk-MASJQWA2.js} +1 -1
- package/dist/chunks/{chunk-XLDW5NN3.js → chunk-N3DEA6PG.js} +1 -1
- package/dist/chunks/{chunk-F5DUN73H.js → chunk-N5QNXMIS.js} +1 -1
- package/dist/chunks/{chunk-MCRA6ZGJ.js → chunk-NAZ26IZL.js} +1 -1
- package/dist/chunks/chunk-NHJ26KXF.js +518 -0
- package/dist/chunks/chunk-NNF6KCHD.js +3 -0
- package/dist/chunks/{chunk-5OGRWWEH.js → chunk-O7VGFMDO.js} +1 -1
- package/dist/chunks/{chunk-USWZ3KUC.js → chunk-PA7XP42P.js} +1 -1
- package/dist/chunks/{chunk-BQNK2NMB.js → chunk-PJM2G7SG.js} +1 -1
- package/dist/chunks/chunk-PNE3IETM.js +190 -0
- package/dist/chunks/chunk-PYABBF53.js +53 -0
- package/dist/chunks/{chunk-TYWBEJOA.js → chunk-Q4H3NUVW.js} +2 -2
- package/dist/chunks/{chunk-HO5L2FUU.js → chunk-QJRXTIOC.js} +1 -1
- package/dist/chunks/chunk-QRWPEW3Z.js +24 -0
- package/dist/chunks/{chunk-LZSY5IM3.js → chunk-QXVIIM4T.js} +1 -1
- package/dist/chunks/{chunk-6SJZXZNA.js → chunk-R3XFY7VL.js} +1 -1
- package/dist/chunks/{chunk-EWS7MXTM.js → chunk-RLZPX4YP.js} +1 -1
- package/dist/chunks/{chunk-VW7D3DRM.js → chunk-SDEDAHV6.js} +72 -67
- package/dist/chunks/{chunk-BUFQKDAW.js → chunk-T5LE6R5S.js} +1 -1
- package/dist/chunks/{chunk-L4BYPZ4U.js → chunk-TGIB24K4.js} +1 -1
- package/dist/chunks/{chunk-D6E7JBBQ.js → chunk-TIUSKRBP.js} +4 -4
- package/dist/chunks/{chunk-6WLJWRMF.js → chunk-UJ5EFSEC.js} +1 -1
- package/dist/chunks/chunk-VOIH2BQA.js +2162 -0
- package/dist/chunks/{chunk-KE5RH6JA.js → chunk-WITSXYEW.js} +1 -1
- package/dist/chunks/chunk-WV2APYWG.js +2 -0
- package/dist/chunks/chunk-XBCIBAXD.js +4 -0
- package/dist/chunks/chunk-XDMUD4FW.js +5 -0
- package/dist/chunks/{chunk-DNXKIIV7.js → chunk-XM26DGML.js} +1 -1
- package/dist/chunks/{chunk-OGXSE57Z.js → chunk-YIB3J4RC.js} +1 -1
- package/dist/chunks/{chunk-H6W55CQG.js → chunk-YL6VFJ4P.js} +1 -1
- package/dist/chunks/cli-ZLDLOKPL.js +2 -0
- package/dist/chunks/{configuration-command-MVZS625X.js → configuration-command-SA56RV5B.js} +1 -1
- package/dist/chunks/{connected-evidence-7LHUZ2UI.js → connected-evidence-IVSQZYIB.js} +1 -1
- package/dist/chunks/{continual-K5JNHNQH.js → continual-PKK2BOTB.js} +1 -1
- package/dist/chunks/core-commands-W5IGIITV.js +2 -0
- package/dist/chunks/{datasets-KDN2EXHE.js → datasets-KSO2UG6R.js} +1 -1
- package/dist/chunks/{desktop-test-WIOEKMPR.js → desktop-test-6HXFM7PO.js} +1 -1
- package/dist/chunks/{dist-JBE7DPFZ.js → dist-4HV2W6V4.js} +1 -1
- package/dist/chunks/{dist-3MTJ7VM6.js → dist-BLBZENVB.js} +1 -1
- package/dist/chunks/{evaluation-coordination-NGYHL7HG.js → evaluation-coordination-MOFBXRXN.js} +1 -1
- package/dist/chunks/{experiment-improvements-2M7GRGWS.js → experiment-improvements-TDHM6NEA.js} +1 -1
- package/dist/chunks/{experiments-B6CRZ3GI.js → experiments-HFPDFD4I.js} +1 -1
- package/dist/chunks/{extension-RZTMK3ON.js → extension-R373LYIB.js} +1 -1
- package/dist/chunks/{help-EISFHH2F.js → help-PEFQDDTA.js} +1 -1
- package/dist/chunks/{hosted-experiment-improvement-6CHH65DX.js → hosted-experiment-improvement-MGMZWTZY.js} +1 -1
- package/dist/chunks/hosted-harness-runtime-FZZLWLBR.js +2 -0
- package/dist/chunks/{hosted-profile-candidate-HYEISIAC.js → hosted-profile-candidate-LVNKOTKJ.js} +1 -1
- package/dist/chunks/hosted-profile-compiler-PQFIWO5B.js +2 -0
- package/dist/chunks/{hosted-profile-evaluation-control-LV6YXOG7.js → hosted-profile-evaluation-control-7B3RAZU2.js} +1 -1
- package/dist/chunks/{hosted-profile-evaluation-inspection-A62UYFEP.js → hosted-profile-evaluation-inspection-FPCV42DD.js} +1 -1
- package/dist/chunks/hosted-profile-evaluation-preparation-JROREZH3.js +3 -0
- package/dist/chunks/{human-review-J6JGNRBR.js → human-review-HRGGACEM.js} +1 -1
- package/dist/chunks/import-RSAQ44GG.js +4 -0
- package/dist/chunks/{learning-REL6GGNA.js → learning-FNBEIAY6.js} +1 -1
- package/dist/chunks/{opchat-CUZUU2WM.js → opchat-I7ZWJ5XK.js} +1 -1
- package/dist/chunks/{organizations-VT27V4B2.js → organizations-LFCZIH7E.js} +1 -1
- package/dist/chunks/{profile-N2E5ASHQ.js → profile-EPIX5QVK.js} +1 -1
- package/dist/chunks/{project-agent-XMXOBJSC.js → project-agent-DGOPMECP.js} +1 -1
- package/dist/chunks/{sandbox-command-NC665ZZ5.js → sandbox-command-Q5F6VUOS.js} +1 -1
- package/dist/chunks/{sandbox-template-OTP6S3RU.js → sandbox-template-7GICPIKJ.js} +1 -1
- package/dist/chunks/{src-WM35IF4W.js → src-DH5AQ4Z7.js} +1 -1
- package/dist/chunks/src-GKWEQK2T.js +329 -0
- package/dist/chunks/{taskset-COAPMTT3.js → taskset-LUG3ZU6J.js} +1 -1
- package/dist/chunks/{teams-bot-ACWJ7PJP.js → teams-bot-Z6RJGHME.js} +1 -1
- package/dist/chunks/{training-4JUK7YQV.js → training-XHE6FVII.js} +1 -1
- package/dist/chunks/{workspaces-WTPFRJMS.js → workspaces-XIQNPAP7.js} +1 -1
- package/dist/cli.js +1 -1
- package/dist/index.js +1 -1
- package/dist/web/agent-sources/SOURCES.md +11 -0
- package/dist/web/agent-sources/claude-code.svg +1 -0
- package/dist/web/agent-sources/codex.svg +1 -0
- package/dist/web/agent-sources/grok-build.svg +3 -0
- package/dist/web/agent-sources/hermes.png +0 -0
- package/dist/web/agent-sources/oh-my-pi.svg +11 -0
- package/dist/web/agent-sources/openclaw.svg +54 -0
- package/dist/web/agent-sources/opencode.svg +4 -0
- package/dist/web/agent-sources/pi.svg +6 -0
- package/dist/web/assets/App-BI-uOpnP.js +234 -0
- package/dist/web/assets/App-DkH8CeoI.css +1 -0
- package/dist/web/assets/{AppDialog-CaxeNfsu.js → AppDialog-1iGodoot.js} +1 -1
- package/dist/web/assets/{AppTerminalPanel-dtK0ZPer.js → AppTerminalPanel-udtBdWFn.js} +2 -2
- package/dist/web/assets/AppsView-BonAGiS8.css +1 -0
- package/dist/web/assets/AppsView-DhKsU4yi.js +1 -0
- package/dist/web/assets/BrowserSidebar-BnOyqIQT.js +1 -0
- package/dist/web/assets/{CartesianChart-Drfk6jTn.js → CartesianChart-C24DAywn.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-Czh2noeb.js → CollaborationTabs-DgmOF5Fe.js} +1 -1
- package/dist/web/assets/{CommandMenu-D-M-xomh.js → CommandMenu-CUNGtHwS.js} +1 -1
- package/dist/web/assets/{CommunityView-BrdxUI5Z.js → CommunityView-CE7qeJnr.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-CJ8nkYJf.js → ComposerCreateImproveStrip-BixNsg2a.js} +1 -1
- package/dist/web/assets/{GetStartedView-u7Jw7YA1.js → GetStartedView-B8gCwmBX.js} +1 -1
- package/dist/web/assets/{HostedModelLearningReview-D0a2nwse.js → HostedModelLearningReview-CitgUNfC.js} +1 -1
- package/dist/web/assets/{HostedModelLearningSettings-CQQGyjxi.js → HostedModelLearningSettings-WUaqzNsa.js} +1 -1
- package/dist/web/assets/{LabModelVersionDetailPage-Cxlc4sSC.js → LabModelVersionDetailPage-Cx0kL69J.js} +1 -1
- package/dist/web/assets/{LabSkillSidebar-BnJkDb0c.js → LabSkillSidebar-DRggqZ1j.js} +1 -1
- package/dist/web/assets/LabsRoute-BujTZhqC.js +99 -0
- package/dist/web/assets/{MainChatThread-r_TYiTnW.js → MainChatThread-CyA_644R.js} +2 -2
- package/dist/web/assets/MainPane-LaEtxydD.js +19 -0
- package/dist/web/assets/{MarkdownText-BxPHz4je.js → MarkdownText-DJI5LwT0.js} +19 -19
- package/dist/web/assets/{NativeSkillSidebar-CCHK6kMG.js → NativeSkillSidebar-CkFpWxjd.js} +1 -1
- package/dist/web/assets/{NewExperienceSwitcher-CuKWTDZj.js → NewExperienceSwitcher-DXcRHHsu.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-CS6sw2oD.js → NewProjectDialog-gDzX_ZIJ.js} +1 -1
- package/dist/web/assets/{OutputsPage-JDM5bfLJ.js → OutputsPage-J_k-_N82.js} +1 -1
- package/dist/web/assets/{ProjectsPage-B3zTBHOA.js → ProjectsPage-BsyZmvlg.js} +1 -1
- package/dist/web/assets/{RightChatPanelStack-L8S3yj1u.js → RightChatPanelStack-Bz8puMUB.js} +1 -1
- package/dist/web/assets/{RightSidebarHomePanel-BWJQKFUp.js → RightSidebarHomePanel-DmorYb6p.js} +1 -1
- package/dist/web/assets/ScheduledWorkPage-BFDzQUyL.js +1 -0
- package/dist/web/assets/SettingsView-BB7wCdbr.js +5 -0
- package/dist/web/assets/SettingsView-BnANbPLS.css +1 -0
- package/dist/web/assets/{TeamChatView-DakXCNQE.js → TeamChatView-CZ3b7rq2.js} +2 -2
- package/dist/web/assets/{TerminalOverlay-DaonK5C0.js → TerminalOverlay-Ck43Qri3.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-CUvSsSwp.js → TrainingCreationPanel-ejqPZm3g.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-DNivtVwd.js → TrainingDraftPanel-Cy2AQxxL.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-rbmuoPoE.js → UsageSettingsSection-B7nyMItm.js} +1 -1
- package/dist/web/assets/{WorkSidebarPanel-DrYt9xzv.js → WorkSidebarPanel-BfjAc097.js} +1 -1
- package/dist/web/assets/{WorkspaceDiffPanel-CThoTqe4.js → WorkspaceDiffPanel-D9hAV8l7.js} +5 -5
- package/dist/web/assets/{WorkspaceEnvironmentMenu-DeODKxvW.js → WorkspaceEnvironmentMenu-B-K9XgFB.js} +3 -3
- package/dist/web/assets/{WorkspaceGitDialogs-CBarJYF-.js → WorkspaceGitDialogs-BJVFx_L3.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-Hmu5m_sO.js → WorkspaceMonacoEditor-p-FWMXoZ.js} +3 -3
- package/dist/web/assets/{arrow-up-right-BV2IHfb9.js → arrow-up-right-CFGI2YSt.js} +1 -1
- package/dist/web/assets/{chunk-YTGRET2L-PKzEfYnf.js → chunk-UHVJOMWN-BAlur2vw.js} +1 -1
- package/dist/web/assets/{clipboard-DDIvAWKp.js → clipboard-DIIxBort.js} +1 -1
- package/dist/web/assets/{cloud-upload-Dv6kFnfC.js → cloud-upload-BaQFNCTp.js} +1 -1
- package/dist/web/assets/{cssMode-BK0jFqWW.js → cssMode-6LOkSggB.js} +1 -1
- package/dist/web/assets/{folder-open-B9ixJQJX.js → folder-open-DZSxfPtr.js} +1 -1
- package/dist/web/assets/{folder-plus-DqSKvtNB.js → folder-plus-21v4D_Vx.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-C1lQvfxe.js → git-commit-horizontal-CgGixL64.js} +1 -1
- package/dist/web/assets/{htmlMode-CCV301b6.js → htmlMode-B5uRraNd.js} +1 -1
- package/dist/web/assets/index-DJcUXSsN.css +1 -0
- package/dist/web/assets/{index-DIaKfM8a.js → index-DOMrqhcz.js} +2 -2
- package/dist/web/assets/{info-BEvaynAD.js → info-BGTcmow7.js} +1 -1
- package/dist/web/assets/{jsonMode-Co4pyN4F.js → jsonMode-D3m8N4Gi.js} +1 -1
- package/dist/web/assets/{lspLanguageFeatures-CSU0G5da.js → lspLanguageFeatures-DoyipLsB.js} +1 -1
- package/dist/web/assets/{minimize-2-DT8t8wwP.js → minimize-2-B01qSko4.js} +1 -1
- package/dist/web/assets/{monaco.contribution-Cr0AaHCD.js → monaco.contribution--U8v3jpa.js} +2 -2
- package/dist/web/assets/{monaco.contribution-DSBAb_PC.js → monaco.contribution-BJyfaGX2.js} +2 -2
- package/dist/web/assets/{monaco.contribution-CBwGIQY1.js → monaco.contribution-Bc22foTx.js} +2 -2
- package/dist/web/assets/{monaco.contribution-DUZrs1D-.js → monaco.contribution-DuRhJ6zU.js} +2 -2
- package/dist/web/assets/{monitor-DGqnfsK9.js → monitor-eZP8ZTHe.js} +1 -1
- package/dist/web/assets/{play-C1XWyKh6.js → play-CGsWFR_B.js} +1 -1
- package/dist/web/assets/{python-Z1foxLdf.js → python-BNrLZWud.js} +1 -1
- package/dist/web/assets/{save-CX2kF74j.js → save-BLgjrccP.js} +1 -1
- package/dist/web/assets/{square-DMkXeYeV.js → square-CI1qNtvE.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-CRMVp779.js → toggleHighContrast-B_GcTCnw.js} +1 -1
- package/dist/web/assets/{tsMode-Czu8YAqh.js → tsMode-CmruH_ys.js} +1 -1
- package/dist/web/assets/{upload-giKOPnl1.js → upload-DnlgGS2x.js} +1 -1
- package/dist/web/assets/useLocalAgentSchedules-BBhGUfK-.js +1 -0
- package/dist/web/assets/useProviderSettings-Bw-csWbH.css +1 -0
- package/dist/web/assets/useProviderSettings-DfhdkKdC.js +5 -0
- package/dist/web/assets/{useSessionTurnCache-CUYFsu_W.js → useSessionTurnCache-BwscKl5i.js} +1 -1
- package/dist/web/assets/{wifi-off-DbDXaV1N.js → wifi-off-Dz-4EDCc.js} +1 -1
- package/dist/web/assets/{workers-Cno4XklJ.js → workers-Bi9u46cp.js} +1 -1
- package/dist/web/assets/{yaml-C28t_C6h.js → yaml-DVTkiRnh.js} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +1 -1
- package/dist/chunks/app-server-runtime-FL2CHQU2.js +0 -2
- package/dist/chunks/chunk-4VKNBADF.js +0 -2
- package/dist/chunks/chunk-5ZZM3TUN.js +0 -24
- package/dist/chunks/chunk-6JBWHR6T.js +0 -5
- package/dist/chunks/chunk-FKCWOASO.js +0 -49
- package/dist/chunks/chunk-FOEUDMME.js +0 -2678
- package/dist/chunks/chunk-ICZEOMPO.js +0 -2
- package/dist/chunks/chunk-JO7GRBOG.js +0 -2
- package/dist/chunks/chunk-KUKOZJIR.js +0 -2
- package/dist/chunks/chunk-M7PBDRKC.js +0 -2
- package/dist/chunks/chunk-P653BXMY.js +0 -3
- package/dist/chunks/chunk-PMZH2TKS.js +0 -4
- package/dist/chunks/chunk-W4IL6TWB.js +0 -186
- package/dist/chunks/chunk-WVNN3RB2.js +0 -2
- package/dist/chunks/cli-5QR7QNQJ.js +0 -2
- package/dist/chunks/core-commands-J2SJM5I5.js +0 -2
- package/dist/chunks/hosted-harness-runtime-PAYMAXH7.js +0 -2
- package/dist/chunks/hosted-profile-compiler-KQREWJA5.js +0 -2
- package/dist/chunks/hosted-profile-evaluation-preparation-OR4OLYEX.js +0 -3
- package/dist/chunks/import-YHSX6SBZ.js +0 -4
- package/dist/chunks/src-TNWF3IC5.js +0 -329
- package/dist/web/assets/App-CdDQ-lXE.css +0 -1
- package/dist/web/assets/App-D2f8_mGk.js +0 -235
- package/dist/web/assets/AppsView-CzbB5pXp.css +0 -1
- package/dist/web/assets/AppsView-DwK1UBJP.js +0 -1
- package/dist/web/assets/BrowserSidebar-Cj9VnkgU.js +0 -1
- package/dist/web/assets/LabsRoute-hHwZNbqN.js +0 -99
- package/dist/web/assets/MainPane-DJcd4tPk.js +0 -19
- package/dist/web/assets/ScheduledWorkPage-qX12p4B0.js +0 -1
- package/dist/web/assets/SettingsView-0KMs-r2I.js +0 -9
- package/dist/web/assets/SettingsView-CVsuQeCZ.css +0 -1
- package/dist/web/assets/index-1cMIFBxZ.css +0 -1
- package/dist/web/assets/useLocalAgentSchedules-BHxWmOeC.js +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{g as J}from"./chunk-HO5L2FUU.js";import{$ as G,S as U,aa as F,ea as N}from"./chunk-JBHAU7PH.js";import{L as O,da as H}from"./chunk-6JBWHR6T.js";import{Ca as R,Ta as $,pc as L}from"./chunk-5ZZM3TUN.js";import{s as _,t as q,u as E}from"./chunk-JO7GRBOG.js";import{na as V,oa as P,qa as z,wa as W}from"./chunk-BQNK2NMB.js";import{Ea as j}from"./chunk-VW7D3DRM.js";import{a as g,b as h,c as b,k as M,l as s,n as B,q as A}from"./chunk-P653BXMY.js";import{b as c}from"./chunk-ES2ISFJC.js";import{a as u}from"./chunk-FTQLQJQV.js";import{promises as Y}from"node:fs";import Z from"node:path";async function ue(e){let i=e.definition.tasksetRelease,r=await J(e.store,e.harnessRelease);if(!r)throw new Error("Evaluation Profile Harness release is unavailable.");let t=await te({...e,runtime:r});if(t)return t;let a=await e.store.listTasksetRevisions(e.profileId);for(let o of a){if(i.id!==o.id&&i.id!==`taskset-release-${o.id}-r${o.revision}`)continue;let l=await ee(e.storeDir,o);if(l.taskset.id===i.id&&l.taskset.contentHash===i.contentHash)return l}throw new Error(`Released Taskset ${i.id} is unavailable in Profile ${e.profileId}.`)}u(ue,"loadLocalProfileEvaluationTaskset");async function ee(e,i){let r=i.metadata.importedPackageHash;if(typeof r=="string"){let o=await F(e,r);if(o.taskset.id!==i.id||o.taskset.revision!==i.revision)throw new Error("Imported evaluation Taskset differs from its local Profile revision.");return o}if($(i)!==i.contentHash)throw new Error("Authored evaluation Taskset differs from its immutable revision.");let t=L({taskset:i,adapterId:U(i)}),a=await N({storeDir:e,taskset:i,content:{schemaVersion:"openpond.tasksetPackage.v1",taskset:t.tasksetRelease,environment:t.environmentRelease,verifierSet:t.verifierSetRelease}});return await G(e,a),a}u(ee,"loadCandidate");async function te(e){let i=e.definition.tasksetRelease,r=e.runtime;if(r.release.harnessRelease.id!==e.harnessRelease.id||r.release.harnessRelease.contentHash!==e.harnessRelease.contentHash)throw new Error("Evaluation Taskset runtime differs from its requested release.");let t=`evals/tasksets/${i.contentHash}.json`,a=r.release.harnessRelease.files.find(o=>o.path===t);if(a){if(a.visibility!=="verifier")throw new Error("Evaluation Taskset package is not verifier-private.");let o=await Y.readFile(Z.join(r.release.bundlePath,"source",...t.split("/")));if(M(o)!==a.contentHash)throw new Error("Released evaluation Taskset package bytes differ from their source receipt.");let l=R(JSON.parse(o.toString("utf8")));if(l.taskset.id!==i.id||l.taskset.contentHash!==i.contentHash)throw new Error("Released evaluation Taskset package differs from its definition.");return l}return null}u(te,"loadReleasedProfileEvaluationTaskset");function y(e){return{id:z(e),label:"Selected Dataset evaluation",description:"Explicit sealed external Dataset evaluation recipe.",target:e.target,tasksetRelease:{id:e.dataset.id,contentHash:e.dataset.contentHash},split:e.split,taskIds:[...new Set(e.population.map(i=>i.taskId))],seeds:[...new Set(e.population.map(i=>i.seed))],criterion:e.criterion}}u(y,"externalProfileEvaluationDefinition");async function we(e){let i=e.manifest.profileEvaluation,r=i?.externalDatasetBinding?P(i.externalDatasetBinding):null;if(!r)return null;if(!e.resolveExternalDataset)throw new Error("This owner has no authorized external Dataset resolver.");let t=await e.resolveExternalDataset(r,e.selected);await t.authorize();let a=R(t.packageValue),o=await e.loadCatalog({ref:e.selected.profileRef,sourceRevision:e.selected.sourceRevision,harnessRelease:e.selected.harnessRelease});if(s(t.binding)!==s(r)||r.profileId!==e.selected.profileRef.profileId||r.declaredProfileCatalogHash!==o.catalogHash||a.contentHash!==r.packageHash||s(a.taskset)!==s(e.taskset)||r.environmentHash!==s(a.taskset.environment)||r.privateDatasetClosureHash!==s(a.files.filter(d=>d.asset.visibility!=="policy").map(d=>d.asset)))throw new Error("External Dataset admission changed its actual Profile, package or private closure.");let l=y(r),m={schemaVersion:"openpond.profileEvaluations.v1",definitions:[l],suites:[]};if(E(e.manifest,e.taskset,m),!i||i.catalogHash!==s(m)||i.definitionHash!==s(l)||s(i.target)!==s(r.target))throw new Error("External Dataset manifest changed its derived definition.");return await t.authorize(),{...t,packageValue:a,definition:l,catalog:m}}u(we,"admitProfileExternalDataset");var ae=c.object({id:g,createdAt:b,definitionId:g,externalDatasetBinding:V.optional(),profileRef:O.optional(),profileSource:c.object({sourceRevision:c.string().min(1).max(500),harnessRelease:c.object({id:g,contentHash:h}).strict()}).strict().optional(),modelRef:A,hostModelConfigurationHash:h.optional(),hostArtifactHash:h.optional(),maximumSpendUsd:c.number().positive().max(1e4).optional(),expectedManifestHash:h.optional(),hostExperiment:c.object({definition:c.object({id:g,revision:c.number().int().positive(),contentHash:h}).strict().nullable(),configurationHash:h,project:c.object({id:g,revision:c.number().int().positive(),contentHash:h,targetId:g.nullable()}).strict().optional()}).strict().optional()}).strict();function Se(e){return async(i,r)=>{let t=ae.parse(i);if(r?.requireExpectedManifestHash&&!t.expectedManifestHash)throw new Error("Profile evaluation execution requires the reviewed manifest hash.");if(t.profileSource&&!t.profileRef)throw new Error("An exact Profile source requires its accepted Profile reference.");let a=r?.selectedWorkflows??await e.selectedWorkflows(t.profileRef,t.profileSource);if(t.profileRef&&s(t.profileRef)!==s(a.profileRef))throw new Error("Profile preparation did not resolve the explicitly selected Profile.");if(t.profileSource&&(a.sourceRevision!==t.profileSource.sourceRevision||s(a.harnessRelease)!==s(t.profileSource.harnessRelease)))throw new Error("Profile preparation changed its explicitly pinned source.");let o=t.externalDatasetBinding?P(t.externalDatasetBinding):null,l=o?await(e.resolveExternalDataset?e.resolveExternalDataset(o,a):Promise.reject(new Error("This host has not qualified external Dataset Profile execution."))):null;if(l&&(await l.authorize(),s(P(l.binding))!==s(o)))throw new Error("External Dataset admission differs from the actual authorized recipe.");let m=await e.loadCatalog({ref:a.profileRef,sourceRevision:a.sourceRevision,harnessRelease:a.harnessRelease});if(o&&o.declaredProfileCatalogHash!==m.catalogHash)throw new Error("The original Profile verifier catalog changed.");let d=o?y(o):null;if(d&&t.definitionId!==d.id)throw new Error("Use the external recipe's own definition identity.");let T={schemaVersion:"openpond.profileEvaluations.v1",definitions:d?[d]:m.definitions,suites:d?[]:m.suites},p=d??m.definitions.find(n=>n.id===t.definitionId);if(!p)throw new Error(`Evaluation ${t.definitionId} is absent from the selected Profile release.`);let v=p.target,D=v.kind==="workflow"?a.workflows.find(n=>n.binding.workflowId===v.workflowId)?.binding:j.parse({schemaVersion:"openpond.profileComponentBinding.v1",profileId:a.profileRef.profileId,sourceRevision:a.sourceRevision,harnessRelease:a.harnessRelease,target:v});if(!D)throw new Error(`Evaluation workflow ${v.kind==="workflow"?v.workflowId:""} is absent from the selected Profile release.`);let k=R(l?.packageValue??await e.loadTasksetPackage(p,a.profileRef.profileId,a.harnessRelease)),f=k.taskset;if(f.id!==p.tasksetRelease.id||f.contentHash!==p.tasksetRelease.contentHash)throw new Error("Evaluation Taskset package differs from its released definition.");let S=f.environment.kind==="text"&&f.tools.length===0,K=f.environment.kind==="work"&&f.environment.entrypoint==="openpond-work-v1"&&f.tools.every(n=>["work_exec","work_save_output"].includes(n.name));if(!S&&!K)throw new Error("Profile evaluation supports text cases or Work cases with the built-in execution and output tools.");if(t.maximumSpendUsd!==void 0&&!S)throw new Error("Bounded hosted Profile evaluation currently qualifies text cases without external compute.");if(f.tasks.some(n=>n.artifactRefs.length>H.maxAttachments||n.artifactRefs.some(w=>w.visibility!=="policy"||w.mediaType!=="application/pdf"||w.sizeBytes>H.maxAttachmentBytes)))throw new Error("Profile evaluation accepts only bounded policy-visible PDF task attachments.");if(!o&&!e.privateGradingPreflight&&(f.graders.some(n=>n.kind==="model_judge"||n.kind==="custom_verifier")||f.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.");await e.privateGradingPreflight?.(k);let I={adapterId:v.kind==="workflow"?"openpond.profile-workflow":"openpond.profile-component",placement:e.placement,runtimeVersion:"app-server-v1",capabilityReceipt:s({adapterId:v.kind==="workflow"?"openpond.profile-workflow":"openpond.profile-component",packageHash:k.contentHash,connectedAppScopes:f.policy.connectedAppScopes})},Q={...W({catalog:T,definitionId:p.id,profileId:a.profileRef.profileId,sourceRevision:a.sourceRevision,harnessRelease:a.harnessRelease,environmentHash:s({packageHash:k.contentHash,runtimeTarget:I})}),...o?{externalDatasetBinding:o}:{},...e.sourceCandidate?{sourceCandidate:e.sourceCandidate}:{}};if(o&&(o.packageHash!==k.contentHash||o.environmentHash!==s(f.environment)||o.privateDatasetClosureHash!==s(k.files.filter(n=>n.asset.visibility!=="policy").map(n=>n.asset))))throw new Error("External Dataset package/environment/private closure changed.");let X=B.parse({provider:t.modelRef.providerId,model:t.modelRef.modelId,revision:null,artifactHash:t.hostArtifactHash??null,tokenizerRevision:null,chatTemplateHash:null}),C=await e.modelConfigurationHash(t.modelRef,t),x=_({schemaVersion:"openpond.tasksetRunManifest.v1",id:t.id,tasksetRelease:p.tasksetRelease,packageHash:k.contentHash,execution:{kind:"harness",harnessRelease:a.harnessRelease},profileEvaluation:Q,policy:{kind:"model",model:X,configurationHash:C},gradingRole:"evaluation",metricPolicy:q(f),population:o?o.population.map(n=>({...n,receiptId:`evaluation-${s([t.id,n.taskId,n.seed,n.fixtureId]).slice(0,32)}`})):p.taskIds.flatMap(n=>p.seeds.map(w=>({receiptId:`evaluation-${s([t.id,n,w]).slice(0,32)}`,taskId:n,seed:w,fixtureId:null}))),runtimeTarget:I,limits:{maxTurns:128,timeoutMs:f.environment.defaultTimeoutMs,maxOutputBytes:25e7,maximumSpendUsd:t.maximumSpendUsd??null},createdAt:t.createdAt,metadata:{sourceTasksetId:f.metadata.sourceTasksetId??f.id,...a.profileRef.source==="openpond_git"?{profileRepositoryId:a.profileRef.repositoryId}:{},...t.hostExperiment?{experimentDefinition:t.hostExperiment.definition,experimentConfigurationHash:t.hostExperiment.configurationHash,...t.hostExperiment.project?{project:t.hostExperiment.project}:{}}:{}}});if(E(x,f,T),l&&await l.authorize(),t.expectedManifestHash&&x.contentHash!==t.expectedManifestHash)throw new Error("Profile evaluation setup changed since preview; prepare the run again.");return{manifest:x,taskset:f,profileRef:a.profileRef,binding:D,modelRef:t.modelRef,modelConfigurationHash:C}}}u(Se,"createProfileEvaluationRunPreparationService");export{ue as a,te as b,we as c,Se as d};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{C as Qe,Ga as Q,Ha as nt,Ia as at,Ja as rt,Ka as st,La as it,Ma as X,R as Xe,T as Ye,V as he,W as ge,X as Re,a as N,b as le,c as We,j as de,k as Ge,l as ue,m as fe,oa as et,qa as tt,ta as ve,ua as we,v as $,y as Ze,z as pe}from"./chunk-BQNK2NMB.js";import{g as Ue}from"./chunk-VW7D3DRM.js";import{a as v,b as R,c as _,d as C,e as g,g as J,h as j,i as me,k as Ke,l as o,m as V,n as Z}from"./chunk-P653BXMY.js";import{b as t}from"./chunk-ES2ISFJC.js";import{a as m}from"./chunk-FTQLQJQV.js";var Me=t.object({adapterId:v,placement:t.enum(["local","remote","colocated","provider_native"]),runtimeVersion:t.string().trim().min(1).max(200),capabilityReceipt:R}).strict(),je=t.object({maxTurns:t.number().int().positive().max(1e5),timeoutMs:t.number().int().positive().max(864e5),maxOutputBytes:t.number().int().positive().max(25e7),maximumSpendUsd:t.number().nonnegative().nullable()}).strict(),ot=t.object({schemaVersion:t.literal("openpond.runManifest.v1"),id:v,harnessRelease:g,tasksetRelease:g,model:Z,runtimeTarget:Me,limits:je,approval:t.object({id:v,contentHash:R}).strict().nullable(),createdAt:_,metadata:C}).strict(),K=ot.extend({contentHash:R}).strict(),Pe=t.object({schemaVersion:t.literal("openpond.attemptReceipt.v1"),id:v,runManifest:g,taskId:v,seed:t.string().trim().min(1).max(500),terminal:t.boolean(),failureClass:me.nullable(),outputHash:R.nullable(),traceHash:R,artifactRefs:t.array(j).max(1e5),graderEvidenceRefs:t.array(j).max(1e4),startedAt:_,completedAt:_,latencyMs:t.number().int().nonnegative(),costUsd:t.number().nonnegative().nullable(),legacyAttemptRef:v.nullable().default(null),metadata:C}).strict(),be=Pe.extend({contentHash:R}).strict(),ct=t.object({schemaVersion:t.literal("openpond.evaluationResult.v1"),id:v,runManifest:g,harnessRelease:g,tasksetRelease:g,model:Z,receiptRefs:t.array(g).min(1).max(1e6),attemptCount:t.number().int().positive(),rewardEligibleCount:t.number().int().nonnegative(),terminalCount:t.number().int().nonnegative(),meanScore:t.number().min(0).max(1).nullable(),failureCounts:t.record(me,t.number().int().nonnegative()),authoredMetric:ue.optional(),metadata:C}).strict(),cn=ct.extend({contentHash:R}).strict(),mn=t.object({schemaVersion:t.literal("openpond.harnessCompatibility.v1"),id:v,baseHarnessRelease:g,candidateHarnessRelease:g,tasksetRelease:g,environmentHash:R,toolContractHash:R,policyHash:R,graderInterfaceHash:R,metadata:C}).strict(),ln=mn.extend({contentHash:R}).strict();function Ra(e){let n=ot.parse(e);return K.parse({...n,contentHash:o(n)})}m(Ra,"createRunManifest");function va(e){let n=Pe.parse(e);return be.parse({...n,contentHash:o(n)})}m(va,"createAttemptReceipt");function D(e){let n=be.safeParse(e);if(!n.success)return!1;let{contentHash:a,...s}=n.data;return o(Pe.parse(s))===a}m(D,"verifyAttemptReceipt");function mt(e){if(!e.receipts.length)throw new Error("An evaluation requires at least one attempt receipt.");for(let r of e.receipts){if(r.runManifest.id!==e.manifest.id||r.runManifest.contentHash!==e.manifest.contentHash)throw new Error(`Attempt receipt ${r.id} belongs to a different Run Manifest.`);if(!D(r))throw new Error(`Attempt receipt ${r.id} has an invalid content hash.`)}if(e.authoredMetric){fe(e.authoredMetric);let r=e.authoredMetric;if(r.runManifest.id!==e.manifest.id||r.runManifest.contentHash!==e.manifest.contentHash||o(r.tasksetRelease)!==o(e.manifest.tasksetRelease)||o(r.receiptRefs)!==o(e.receipts.map(({id:i,contentHash:u})=>({id:i,contentHash:u}))))throw new Error("Authored metric does not describe this evaluation's exact manifest and receipts.")}let n=e.receipts.flatMap(r=>typeof r.metadata.score=="number"&&Number.isFinite(r.metadata.score)?[r.metadata.score]:[]),a=Object.fromEntries(me.options.map(r=>[r,e.receipts.filter(i=>i.failureClass===r).length])),s=ct.parse({schemaVersion:"openpond.evaluationResult.v1",id:e.id,runManifest:{id:e.manifest.id,contentHash:e.manifest.contentHash},harnessRelease:e.manifest.harnessRelease,tasksetRelease:e.manifest.tasksetRelease,model:e.manifest.model,receiptRefs:e.receipts.map(r=>({id:r.id,contentHash:r.contentHash})),attemptCount:e.receipts.length,rewardEligibleCount:e.receipts.filter(r=>r.metadata.rewardEligible===!0&&r.failureClass!=="infrastructure_failure").length,terminalCount:e.receipts.filter(r=>r.terminal).length,meanScore:n.length?n.reduce((r,i)=>r+i,0)/n.length:null,failureCounts:a,...e.authoredMetric?{authoredMetric:e.authoredMetric}:{},metadata:e.metadata??{}});return cn.parse({...s,contentHash:o(s)})}m(mt,"aggregateEvaluationReceipts");function Te(e,n,a){if(e.tasksetRelease.contentHash!==n.tasksetRelease.contentHash)throw new Error("Evaluation runs use different Taskset Releases.");if(e.harnessRelease.contentHash===n.harnessRelease.contentHash)return;if(!a)throw new Error("Evaluation runs use different Harness Releases without a compatibility receipt.");let s=ln.parse(a);if(V(s,"Harness compatibility receipt"),s.baseHarnessRelease.contentHash!==e.harnessRelease.contentHash||s.candidateHarnessRelease.contentHash!==n.harnessRelease.contentHash||s.tasksetRelease.contentHash!==e.tasksetRelease.contentHash)throw new Error("Harness compatibility receipt does not match the compared runs.")}m(Te,"assertComparableRunManifests");var lt=t.object({schemaVersion:t.literal("openpond.humanResultView.v1"),executionId:t.string().min(1),executionHash:t.string().regex(/^[a-f0-9]{64}$/),selection:t.array($).max(1e4),coverage:t.object({pending:t.number().int().nonnegative(),submitted:t.number().int().nonnegative(),accepted:t.number().int().nonnegative(),rejected:t.number().int().nonnegative(),cancelled:t.number().int().nonnegative()}).strict(),results:t.array(t.object({review:$,decision:$.nullable(),attemptIds:t.array(t.string().min(1)).min(1).max(2),mode:t.enum(["individual","pairwise"]),origin:t.enum(["hosted_retained","recorded_evidence","owner_attested_local","native_local"]),status:t.enum(["pending","submitted","accepted","rejected","cancelled"]),grader:$,answers:t.array(Ze).max(100)}).strict()).max(1e4)}).strict(),xe=lt.extend({contentHash:t.string().regex(/^[a-f0-9]{64}$/)}).strict();function dt(e){let n=e.reviews.map(r=>{let i=pe.parse(r),{contentHash:u,...l}=i;if(o(l)!==u||!i.evidence.attempts.some(d=>d.experimentId===e.executionId))throw new N("human_result_selection_mismatch",409);return i});if(new Set(n.map(r=>r.id)).size!==n.length)throw new N("human_result_duplicate_review",422);let a=n.map(r=>{let i=r.decisions.at(-1);return{review:{id:r.id,revision:r.revision,contentHash:r.contentHash},decision:i?{id:i.id,revision:i.revision,contentHash:i.contentHash}:null,attemptIds:r.evidence.attempts.map(u=>u.attemptId),mode:r.form.mode,origin:r.evidence.attempts.some(u=>u.localSource?.kind==="owner_attested_local")?"owner_attested_local":r.evidence.attempts.some(u=>u.localSource?.kind==="native_local")?"native_local":r.evidence.attempts.some(u=>u.recordedSource)?"recorded_evidence":"hosted_retained",status:r.status==="accepted"?"accepted":r.status==="rejected"?"rejected":r.status==="cancelled"?"cancelled":r.status==="submitted"?"submitted":"pending",grader:r.evidence.grader,answers:r.status==="accepted"&&i?.outcome==="accept"?i.answers:[]}}),s={pending:0,submitted:0,accepted:0,rejected:0,cancelled:0};for(let r of a)s[r.status]++;return xe.parse(Qe(lt.parse({schemaVersion:"openpond.humanResultView.v1",executionId:e.executionId,executionHash:e.executionHash,selection:a.map(r=>r.review),coverage:s,results:a})))}m(dt,"createHumanResultView");var dn=t.discriminatedUnion("kind",[t.object({kind:t.literal("model"),model:Z,configurationHash:R}).strict(),t.object({kind:t.literal("fixture")}).strict()]),un=t.discriminatedUnion("kind",[t.object({kind:t.literal("taskset"),environmentRelease:g,verifierSetRelease:g,policyHash:R}).strict(),t.object({kind:t.literal("harness"),harnessRelease:g}).strict()]),fn=t.object({receiptId:v,taskId:v,seed:t.string().trim().min(1).max(500),fixtureId:v.nullable()}).strict(),ut=t.object({schemaVersion:t.literal("openpond.tasksetRunManifest.v1"),id:v,tasksetRelease:g,packageHash:R,execution:un,profileEvaluation:we.optional(),policy:dn,gradingRole:t.literal("evaluation"),metricPolicy:de,population:t.array(fn).min(1).max(1e5),runtimeTarget:Me,limits:je,createdAt:_,metadata:C}).strict().superRefine((e,n)=>{new Set(e.population.map(a=>a.receiptId)).size!==e.population.length&&n.addIssue({code:"custom",path:["population"],message:"Run receipt identities must be unique."}),e.population.some(a=>a.fixtureId!==null!=(e.policy.kind==="fixture"))&&n.addIssue({code:"custom",path:["population"],message:"Only fixture runs require a fixture identity for every member."}),e.profileEvaluation&&(e.execution.kind!=="harness"||e.execution.harnessRelease.id!==e.profileEvaluation.harnessRelease.id||e.execution.harnessRelease.contentHash!==e.profileEvaluation.harnessRelease.contentHash)&&n.addIssue({code:"custom",path:["profileEvaluation"],message:"Profile evaluation must execute its exact bound Harness release."})}),z=ut.safeExtend({contentHash:R});function Ta(e){let n=ut.parse(e);return z.parse({...n,contentHash:o(n)})}m(Ta,"createTasksetRunManifest");function pn(e){return e.metrics??{schemaVersion:"openpond.tasksetMetricPolicy.v1",primaryMetric:"mean_score",aggregation:"mean_score",missingReward:"exclude",customAggregator:null}}m(pn,"tasksetRunMetricPolicy");function Oe(e,n){if(z.parse(e),V(e,"Taskset run manifest"),Re(n),e.tasksetRelease.id!==n.id||e.tasksetRelease.contentHash!==n.contentHash)throw new Error("Taskset run differs from its pinned release.");if(o(e.metricPolicy)!==o(pn(n)))throw new Error("Taskset run metric differs from its pinned release.");let a=new Set(n.tasks.map(s=>s.id));if(e.population.some(s=>!a.has(s.taskId)))throw new Error("Taskset run population contains an unknown task.");if(e.execution.kind==="taskset"&&(!n.environmentRelease||!n.verifierSetRelease||o(e.execution.environmentRelease)!==o(n.environmentRelease)||o(e.execution.verifierSetRelease)!==o(n.verifierSetRelease)||e.execution.policyHash!==o(n.policy)))throw new Error("Taskset-owned execution differs from its pinned release.")}m(Oe,"assertTasksetRunRelease");function Oa(e,n,a){Oe(e,n);let s=ve.parse(a),r=e.profileEvaluation;if(!r||e.execution.kind!=="harness"||e.policy.kind!=="model")throw new Error("Profile evaluation requires fresh model execution through its bound Harness.");if(r.catalogHash!==o(s))throw new Error("Profile evaluation catalog differs from its pinned source.");let i=s.definitions.find(c=>c.id===r.definitionId);if(!i||r.definitionHash!==o(i)||o(r.target)!==o(i.target))throw new Error("Profile evaluation definition differs from its pinned source.");if(i.tasksetRelease.id!==n.id||i.tasksetRelease.contentHash!==n.contentHash)throw new Error("Profile evaluation Taskset differs from its pinned definition.");if(i.split==="train")throw new Error("Profile evaluation cannot execute training cases.");let u=new Map(n.tasks.map(c=>[c.id,c]));if(i.taskIds.some(c=>u.get(c)?.split!==i.split))throw new Error("Profile evaluation case is absent from its declared Taskset split.");if(r.externalDatasetBinding){let c=et(r.externalDatasetBinding);if(r.definitionId!==tt(c)||c.dataset.id!==n.id||c.dataset.revision!==n.revision||c.dataset.contentHash!==n.contentHash||c.packageHash!==e.packageHash||c.profileId!==r.profileId||o(c.target)!==o(r.target)||c.split!==i.split||c.environmentHash!==o(n.environment)||c.population.length!==e.population.length||c.population.some((f,p)=>o(f)!==o({taskId:e.population[p].taskId,seed:e.population[p].seed,fixtureId:e.population[p].fixtureId})))throw new Error("Profile external Dataset execution differs from its exact admitted recipe.");return}let l=new Set(i.taskIds.flatMap(c=>i.seeds.map(f=>JSON.stringify([c,f])))),d=new Set(e.population.map(({taskId:c,seed:f})=>JSON.stringify([c,f])));if(e.population.some(c=>c.fixtureId!==null)||d.size!==l.size||e.population.length!==l.size||[...d].some(c=>!l.has(c)))throw new Error("Profile evaluation population differs from its declared cases and seeds.")}m(Oa,"assertProfileEvaluationRunAdmission");function Ve(e,n){z.parse(e),V(e,"Taskset run manifest");let a=new Map(n.map(s=>[s.id,s]));if(a.size!==n.length||n.length!==e.population.length)throw new Error("Run receipts differ from the complete admitted population.");return e.population.map(s=>{let r=a.get(s.receiptId);if(!r||!D(r)||r.runManifest.id!==e.id||r.runManifest.contentHash!==e.contentHash||r.taskId!==s.taskId||r.seed!==s.seed)throw new Error("Run receipt differs from its admitted member or manifest.");if(r.metadata.gradingRole!=="evaluation")throw new Error("Taskset run requires evaluation-role evidence.");if(!r.terminal&&!["infrastructure_failure","timeout","cancelled"].includes(r.failureClass??""))throw new Error("Taskset run member has no terminal accounting outcome.");return r})}m(Ve,"orderTasksetRunReceipts");var ft=t.object({schemaVersion:t.literal("openpond.profileEvaluationComparison.v1"),id:v,tasksetRelease:g,populationHash:R,environmentHash:R,metricPolicyHash:R,limitsHash:R,members:t.array(t.object({runManifest:g,metricResultHash:R,source:we,policy:z.shape.policy,score:t.number().min(0).max(1).nullable()}).strict()).min(2).max(100),createdAt:_}).strict(),hn=ft.extend({contentHash:R}).strict();function La(e){if(e.members.length<2)throw new Error("A comparison requires at least two runs.");let n=e.members.map(({manifest:d,result:c})=>{if(z.parse(d),V(d,"Taskset run manifest"),fe(c),!d.profileEvaluation||d.execution.kind!=="harness")throw new Error("Profile comparison requires released Profile evaluation runs.");if(c.runManifest.id!==d.id||c.runManifest.contentHash!==d.contentHash||c.tasksetRelease.id!==d.tasksetRelease.id||c.tasksetRelease.contentHash!==d.tasksetRelease.contentHash||c.policyHash!==o(d.metricPolicy))throw new Error("Profile comparison metric differs from its run manifest.");return{manifest:d,result:c,source:d.profileEvaluation}}),a=n[0],s=o(a.manifest.population.map(({taskId:d,seed:c,fixtureId:f})=>({taskId:d,seed:c,fixtureId:f}))),r=o(a.manifest.metricPolicy),i=o(a.manifest.limits),u=new Set;for(let d of n){if(u.has(d.manifest.id))throw new Error("Profile comparison repeats a run.");if(u.add(d.manifest.id),d.manifest.tasksetRelease.id!==a.manifest.tasksetRelease.id||d.manifest.tasksetRelease.contentHash!==a.manifest.tasksetRelease.contentHash||o(d.manifest.population.map(({taskId:c,seed:f,fixtureId:p})=>({taskId:c,seed:f,fixtureId:p})))!==s||d.source.environmentHash!==a.source.environmentHash||o(d.manifest.metricPolicy)!==r||o(d.manifest.limits)!==i||d.manifest.runtimeTarget.adapterId!==a.manifest.runtimeTarget.adapterId||d.manifest.runtimeTarget.placement!==a.manifest.runtimeTarget.placement||d.manifest.runtimeTarget.runtimeVersion!==a.manifest.runtimeTarget.runtimeVersion)throw new Error("Profile comparison runs differ in frozen tasks, environment, grading, limits, or runtime.")}let l=ft.parse({schemaVersion:"openpond.profileEvaluationComparison.v1",id:e.id,tasksetRelease:a.manifest.tasksetRelease,populationHash:s,environmentHash:a.source.environmentHash,metricPolicyHash:r,limitsHash:i,members:n.map(({manifest:d,result:c,source:f})=>({runManifest:{id:d.id,contentHash:d.contentHash},metricResultHash:c.contentHash,source:f,policy:d.policy,score:c.value})),createdAt:e.createdAt});return hn.parse({...l,contentHash:o(l)})}m(La,"createProfileEvaluationComparison");var pt=t.object({schemaVersion:t.literal("openpond.profileEvaluationSuiteRun.v1"),id:v,suiteId:v,suiteHash:R,catalogHash:R,profileId:v,sourceRevision:t.string().trim().min(1).max(240),harnessRelease:g,members:t.array(t.object({definitionId:v,runManifest:g,runHash:R,passed:t.boolean(),score:t.number().min(0).max(1).nullable()}).strict()).min(1).max(1e3),passed:t.boolean(),createdAt:_,completedAt:_}).strict(),gn=pt.extend({contentHash:R}).strict();function Za(e){let n=ve.parse(e.catalog),a=n.suites.find(l=>l.id===e.suiteId);if(!a)throw new Error(`Profile evaluation suite ${e.suiteId} is absent from its catalog.`);if(e.members.length!==a.definitionIds.length)throw new Error("Profile evaluation suite has an incomplete run population.");let s=e.members.map((l,d)=>{let c=a.definitionIds[d],f=n.definitions.find(w=>w.id===c);if(!f||l.definitionId!==c)throw new Error("Profile evaluation suite members differ from declared definition order.");let p=z.parse(l.manifest);V(p,"Profile evaluation suite member manifest");let h=p.profileEvaluation;if(!h||p.execution.kind!=="harness"||h.definitionId!==c||h.definitionHash!==o(f)||o(h.target)!==o(f.target)||h.catalogHash!==o(n)||p.tasksetRelease.id!==f.tasksetRelease.id||p.tasksetRelease.contentHash!==f.tasksetRelease.contentHash)throw new Error("Profile evaluation suite member differs from its released definition.");return{...l,manifest:p,source:h}}),r=s[0].source,i=s[0].manifest.policy;if(i.kind!=="model")throw new Error("Profile evaluation suite requires model runs.");for(let l of s){if(l.source.profileId!==r.profileId||l.source.sourceRevision!==r.sourceRevision||l.source.harnessRelease.id!==r.harnessRelease.id||l.source.harnessRelease.contentHash!==r.harnessRelease.contentHash)throw new Error("Profile evaluation suite members use different Profile releases.");let d=l.manifest.policy;if(d.kind!=="model"||o(d)!==o(i))throw new Error("Profile evaluation suite members use different model configurations.")}let u=pt.parse({schemaVersion:"openpond.profileEvaluationSuiteRun.v1",id:e.id,suiteId:a.id,suiteHash:o(a),catalogHash:o(n),profileId:r.profileId,sourceRevision:r.sourceRevision,harnessRelease:r.harnessRelease,members:s.map(l=>({definitionId:l.definitionId,runManifest:{id:l.manifest.id,contentHash:l.manifest.contentHash},runHash:l.runHash,passed:l.passed,score:l.score})),passed:s.every(l=>l.passed),createdAt:e.createdAt,completedAt:e.completedAt});return gn.parse({...u,contentHash:o(u)})}m(Za,"createProfileEvaluationSuiteRun");var Rn="openpond.connectedEvidence.v1",vn="connected-evidence-1",Se={files:100,sourceBytes:32*1024*1024,decodedBytes:64*1024*1024,lineBytes:2*1024*1024,events:1e5,sessions:1e3,boundaries:5e3,evaluatorBytes:2*1024*1024},P=t.string().min(1).max(500),Y=t.string().regex(/^[a-f0-9]{64}$/),wn=t.string().datetime().nullable(),He=t.number().int().nonnegative().nullable(),bn=t.enum(["native_chat","native_work","codex","claude_code","hermes","openclaw","opencode","grok_build","pi","oh_my_pi"]),xn=t.object({invocationId:P,inputTokens:He,outputTokens:He,cachedInputTokens:He,totalTokens:He,provenance:t.enum(["billed_invocation","reported_invocation","reported_cumulative"])}).strict(),ht=t.object({id:P,sequence:t.number().int().nonnegative(),occurredAt:wn,kind:t.enum(["message","tool_call","tool_result","compaction","artifact","terminal","usage","unknown"]),role:t.enum(["user","assistant","system","tool"]).nullable(),callId:P.nullable(),parentId:P.nullable(),content:t.json(),usage:xn.nullable()}).strict(),Sn=t.object({id:P,familyKey:P,projection:t.enum(["turn","conversation"]),requestEventId:P,start:t.number().int().nonnegative(),end:t.number().int().positive(),inputHash:Y,outputHash:Y.nullable(),revisionHash:Y,terminal:t.enum(["completed","failed","cancelled","unknown"]),coverage:t.object({answer:t.boolean(),context:t.enum(["retained","compacted","unknown"]),process:t.enum(["retained","partial","absent"]),artifacts:t.enum(["retained","references_only","absent"]),replay:t.literal("unavailable"),gaps:t.array(t.string().max(500)).max(100)}).strict()}).strict(),tr=t.object({schemaVersion:t.literal(Rn),normalizerVersion:t.literal(vn),origin:bn,sessionId:P,branchId:P.nullable(),parentSessionId:P.nullable(),exporterVersion:t.string().max(200).nullable(),acquisition:t.object({machineId:P,sourceInstanceId:P}).strict().optional(),sourceFiles:t.array(t.object({path:P,contentHash:Y,sizeBytes:t.number().int().nonnegative()}).strict()).max(Se.files),events:t.array(ht).max(Se.events),unmappedEvents:t.array(ht).max(Se.events),boundaries:t.array(Sn).max(Se.boundaries),warnings:t.array(t.string().max(500)).max(100),contentHash:Y}).strict();function nr(e){return e.kind!=="message"||e.role!=="assistant"||e.content===null?!1:typeof e.content=="string"?e.content.trim().length>0:Array.isArray(e.content)?e.content.length>0:typeof e.content!="object"||!("text"in e.content)||typeof e.content.text=="string"&&e.content.text.trim().length>0}m(nr,"hasRecordedConnectedAnswer");async function lr(e,n){return e.signal?.throwIfAborted(),Oe(e.manifest,e.taskset),gt(e.taskset,e.source),Rt({...e,policy:e.manifest.metricPolicy,receipts:Ve(e.manifest,e.receipts)},n)}m(lr,"aggregateTasksetRunReceipts");function gt(e,n){Re(e),e.metrics?.customAggregator&&vt(e.metrics.customAggregator,n)}m(gt,"assertTasksetMetricSource");async function dr(e,n){if(gt(e.taskset,e.source),e.taskset.id!==e.manifest.tasksetRelease.id||e.taskset.contentHash!==e.manifest.tasksetRelease.contentHash)throw new Error("Metric Taskset differs from the Run Manifest's pinned release.");let a=new Set(e.taskset.tasks.map(r=>r.id));if(e.receipts.some(r=>!a.has(r.taskId)))throw new Error("Metric receipt names a task outside the pinned Taskset.");let s=e.taskset.metrics?await Rt({...e,policy:e.taskset.metrics},n):void 0;return mt({id:e.id,manifest:e.manifest,receipts:e.receipts,metadata:e.metadata,authoredMetric:s})}m(dr,"aggregateTasksetEvaluationReceipts");async function Rt(e,n){e.signal?.throwIfAborted();let a=de.parse(e.policy),s=e.manifest.schemaVersion==="openpond.tasksetRunManifest.v1"?z.parse(e.manifest):K.parse(e.manifest);if(V(s,"Metric Run Manifest"),s.schemaVersion==="openpond.tasksetRunManifest.v1"){if(o(a)!==o(s.metricPolicy))throw new Error("Metric policy differs from the admitted run.");if(Ve(s,e.receipts).some((w,A)=>w.id!==e.receipts[A]?.id))throw new Error("Metric receipts must follow the admitted population order.")}if(!e.receipts.length||e.receipts.length>1e6)throw new Error("Metric execution requires 1 to 1,000,000 attempt receipts.");let r=new Set,i=[],u=[],l=0;for(let h of e.receipts){if(e.signal?.throwIfAborted(),!D(h))throw new Error(`Metric receipt ${h.id} has an invalid content hash.`);if(h.runManifest.id!==s.id||h.runManifest.contentHash!==s.contentHash)throw new Error(`Metric receipt ${h.id} belongs to a different Run Manifest.`);if(r.has(h.id))throw new Error(`Metric receipt ${h.id} is duplicated.`);if(r.add(h.id),!h.terminal||["infrastructure_failure","timeout","cancelled"].includes(h.failureClass??""))continue;let w=h.metadata.score;if(typeof w=="number"&&(!Number.isFinite(w)||w<0||w>1))throw new Error(`Metric receipt ${h.id} has an invalid score.`);let A=h.metadata.rewardEligible===!0&&typeof w=="number"&&(a.aggregation!=="pass_rate"||typeof h.metadata.passed=="boolean");if(!A&&(l+=1,a.missingReward==="exclude"))continue;let B=a.aggregation==="weighted_mean"&&Object.hasOwn(a.taskWeights,h.taskId)?a.taskWeights[h.taskId]:void 0;if(a.aggregation==="weighted_mean"&&B===void 0)throw new Error(`Metric policy has no weight for task ${h.taskId}.`);i.push(A?a.aggregation==="pass_rate"?Number(h.metadata.passed):w:0),u.push(B??1)}let d=null,c=e.receipts.map(({id:h,contentHash:w})=>({id:h,contentHash:w})),f=i.length;if(a.customAggregator){if(vt(a.customAggregator,e.source),!n)throw new Error("Custom metrics require an isolated executor.");if(i.length){let h=await n({source:e.source,module:a.customAggregator.module,exportName:a.customAggregator.exportName,scores:i,timeoutMs:a.customAggregator.timeoutMs,signal:e.signal});if(typeof h!="number"||!Number.isFinite(h)||h<0||h>1)throw new Error("Custom metric must return a finite number between 0 and 1.");d=h}}else if(i.length){let h=u.reduce((w,A)=>w+A,0);d=i.reduce((w,A,B)=>w+A*(u[B]/h),0),d=Math.max(0,Math.min(1,d))}e.signal?.throwIfAborted();let p=Ge.parse({schemaVersion:"openpond.tasksetMetricResult.v1",runManifest:{id:s.id,contentHash:s.contentHash},tasksetRelease:s.tasksetRelease,policy:a,policyHash:o(a),receiptRefs:c,includedCount:f,missingRewardCount:l,excludedCount:c.length-f,value:d});return ue.parse({...p,contentHash:o(p)})}m(Rt,"executeTasksetMetric");function vt(e,n){if(n===void 0||new TextEncoder().encode(n).byteLength>524288||Ke(n)!==e.contentHash)throw new Error("Metric module bytes do not match the pinned content hash or exceed the source limit.")}m(vt,"assertMetricSource");function wt(e,n){let a=pe.parse(e),{contentHash:s,...r}=a,i=a.decisions.at(-1);if(s!==o(r)||s!==n.reviewHash||a.status!=="accepted"||!i||i.outcome!=="accept"||i.contentHash!==n.decisionHash)throw new N("human_accepted_revision_unavailable",409);let u=i.submissions.map(l=>{let d=a.submissions.find(c=>c.id===l.id&&c.contentHash===l.contentHash);if(!d||d.evidenceHash!==o(a.evidence)||d.formHash!==o(a.form))throw new N("human_accepted_lineage_invalid",409);return{id:d.id,revision:d.revision,contentHash:d.contentHash}});return{schemaVersion:"openpond.acceptedHumanEvidence.v1",scope:a.scope,projectId:a.projectId,review:{id:a.id,revision:a.revision,contentHash:s},sourceOrigins:a.evidence.attempts.map(l=>l.localSource?l.localSource.kind:l.recordedSource?"recorded_evidence":"hosted_retained"),decision:{id:i.id,revision:i.revision,contentHash:i.contentHash},submissions:u,evidence:a.evidence,answers:i.answers,...a.execution?.result?{execution:{id:a.execution.executionId,result:a.execution.result,configurationHash:a.execution.configurationHash}}:{},...i.taskProposalHash?{taskProposal:a.submissions.find(l=>l.taskProposal?.contentHash===i.taskProposalHash).taskProposal}:{}}}m(wt,"acceptedHumanEvidence");var _e=t.string().regex(/^[a-f0-9]{64}$/),ee=t.string().min(1).max(240),ye={feedbackKey:ee,criterionId:ee},Hn=t.discriminatedUnion("kind",[t.object({...ye,kind:t.literal("normalized_score"),minimum:t.number().finite(),maximum:t.number().finite(),passThreshold:t.number().min(0).max(1).optional()}).strict(),t.object({...ye,kind:t.literal("boolean")}).strict(),t.object({...ye,kind:t.literal("category")}).strict(),t.object({...ye,kind:t.literal("preference_score"),tieScore:t.number().min(0).max(1).nullable()}).strict()]),bt=t.object({execution:g,resultHash:_e,reviews:t.array(t.object({review:$,decision:$}).strict()).min(1).max(1e4)}).strict(),Ht=t.object({rules:t.array(Hn).min(1).max(100),baseline:bt,candidate:bt}).strict().superRefine((e,n)=>{new Set(e.rules.map(a=>a.feedbackKey)).size!==e.rules.length&&n.addIssue({code:"custom",message:"Select each Human feedback key once."})}),xt=t.object({manifest:at,result:rt}).strict(),St=t.object({id:ee,manifestHash:_e,resultHash:_e}).strict(),yt=t.object({schemaVersion:t.literal("openpond.humanComparisonProjection.v1"),teamId:ee,projectId:ee,selections:Ht,original:t.object({baseline:St,candidate:St}).strict(),humanResults:t.object({baseline:xe,candidate:xe}).strict(),baseline:xt,candidate:xt}).strict(),_t=yt.extend({contentHash:_e}).strict();function y(e){throw new N(e,409)}m(y,"fail");async function Cr(e){let n=Ht.parse(e.selections);await e.authorize();let a={baseline:X(e.baseline),candidate:X(e.candidate)},s=new Set([n.baseline.execution.id,n.candidate.execution.id]);s.size!==2&&y("human_comparison_distinct_executions_required");let r=0;async function i(f){let p=a[f],h=n[f],w=p.manifest.lineage?.execution;p.manifest.lineage?.humanProjection&&y("human_comparison_recursive_projection"),(!w||o(w)!==o(h.execution)||p.manifest.teamId!==e.teamId)&&y("human_comparison_execution_changed");let A=[],B=new Map;for(let x of h.reviews){let b=await e.readReview(x.review);(b.scope!==e.teamId||b.projectId!==e.projectId||b.kind!=="grade"||b.revision!==x.review.revision||b.id!==x.review.id)&&y("human_comparison_review_scope_changed");let T=wt(b,{reviewHash:x.review.contentHash,decisionHash:x.decision.contentHash});r+=new TextEncoder().encode(JSON.stringify({answers:T.answers,form:b.form})).byteLength,r>4194304&&y("human_comparison_projection_too_large"),o(T.decision)!==o(x.decision)&&y("human_comparison_decision_changed"),b.evidence.attempts.some(q=>!s.has(q.experimentId))&&y("human_comparison_foreign_attempt");let E=b.evidence.attempts.filter(q=>q.experimentId===w.id);E.length!==1&&y("human_comparison_attempt_ambiguous");let H=E[0],M=await e.caseIdentity(H),I=p.result.cases.find(q=>Q(q.identity)===Q(M));(!I||M.caseId!==H.taskId||!I.traceRef||I.traceRef.contentHash!==H.trace?.contentHash||I.output===null)&&y("human_comparison_receipt_changed");let O=Q(M)+":"+b.evidence.grader.id;B.has(O)&&y("human_comparison_duplicate_assessment"),B.set(O,{review:b,accepted:T,attempt:H}),A.push(b)}let Ae=dt({executionId:w.id,executionHash:w.contentHash,reviews:A});(Ae.contentHash!==h.resultHash||Ae.coverage.accepted!==A.length)&&y("human_comparison_result_changed");let Fe=new Map(n.rules.map(x=>[x.feedbackKey,x])),en=p.manifest.evaluators.map(x=>{let b=Fe.get(x.feedbackKey);if(!b)return x;let T=A.filter(H=>H.evidence.grader.id===x.release.id&&String(H.evidence.grader.revision)===String(x.release.revision)&&H.evidence.grader.contentHash===x.release.contentHash).map(H=>H.form);(!T.length||new Set(T.map(o)).size!==1)&&y("human_comparison_form_changed");let E=T[0].criteria.find(H=>H.id===b.criterionId);return E||y("human_comparison_criterion_unavailable"),(b.kind==="normalized_score"&&(E.kind!=="score"||b.minimum!==E.minimum||b.maximum!==E.maximum||b.maximum<=b.minimum)||b.kind==="boolean"&&E.kind!=="boolean"||b.kind==="category"&&E.kind!=="category"||b.kind==="preference_score"&&(E.kind!=="preference"||T[0].mode!=="pairwise"))&&y("human_comparison_rule_changed"),{...x,output:b.kind==="boolean"?"boolean":b.kind==="category"?"category":"score",categories:E.kind==="category"?E.options:[],configurationHash:o({original:x.configurationHash,rule:b,formHash:o(T[0])})}});n.rules.some(x=>!p.manifest.evaluators.some(b=>b.feedbackKey===x.feedbackKey))&&y("human_comparison_grader_unavailable");let{contentHash:tn,...nn}=p.manifest,oe={originalManifest:{id:p.manifest.id,contentHash:p.manifest.contentHash},selectionHash:o(h),rulesHash:o(n.rules)},ce=st({...nn,id:nt(oe.originalManifest,oe.selectionHash,oe.rulesHash),lineage:{...p.manifest.lineage,humanProjection:oe},evaluators:en}),an=p.result.cases.map(x=>{let b=x.feedback.map(E=>{let H=Fe.get(E.feedbackKey);if(!H)return E;let M=B.get(Q(x.identity)+":"+E.evaluator.id);(!M||M.review.evidence.grader.contentHash!==E.evaluator.contentHash)&&y("human_comparison_assessment_missing");let I=M.accepted.answers.find(q=>q.criterionId===H.criterionId),O=null;if(I&&!I.abstain&&(H.kind==="normalized_score"&&typeof I.value=="number"&&(O=(I.value-H.minimum)/(H.maximum-H.minimum)),H.kind==="boolean"&&typeof I.value=="boolean"&&(O=I.value),H.kind==="category"&&typeof I.value=="string"&&(O=I.value),H.kind==="preference_score")){let q=M.review.evidence.attempts.findIndex(Je=>Je.experimentId===w.id&&Je.attemptId===M.attempt.attemptId);O=I.value==="tie"?H.tieScore:I.value==="A"||I.value==="B"?I.value===(q===0?"A":"B")?1:0:null}return{...E,status:O===null?"unavailable":"scored",value:O,passed:O===null?null:H.kind==="boolean"?O:H.kind==="normalized_score"&&H.passThreshold!==void 0?Number(O)>=H.passThreshold:null,reasoning:I?.note??null,evidenceRefs:[{id:M.accepted.review.id,contentHash:M.accepted.review.contentHash,mediaType:"application/vnd.openpond.human-review+json",sizeBytes:null},{id:M.accepted.decision.id,contentHash:M.accepted.decision.contentHash,mediaType:"application/vnd.openpond.human-decision+json",sizeBytes:null}]}}),T=x.output!==null&&b.every(E=>E.status==="scored");return{...x,feedback:b,status:T?"completed":x.status,error:T?null:x.error}}),{contentHash:rn,...sn}=p.result,on=it({...sn,manifest:{id:ce.id,contentHash:ce.contentHash},cases:an},ce);for(let x of A){let b=await e.readReview({id:x.id,revision:x.revision,contentHash:x.contentHash});(b.contentHash!==x.contentHash||b.status!=="accepted")&&y("human_comparison_review_changed")}return await e.authorize(),{evidence:{manifest:ce,result:on},humanResult:Ae}}m(i,"lane");let u=await i("baseline"),l=await i("candidate");for(let f of[...n.baseline.reviews,...n.candidate.reviews]){let p=await e.readReview(f.review);(p.contentHash!==f.review.contentHash||p.status!=="accepted"||p.decisions.at(-1)?.contentHash!==f.decision.contentHash)&&y("human_comparison_review_changed")}await e.authorize();let d={baseline:{id:a.baseline.manifest.id,manifestHash:a.baseline.manifest.contentHash,resultHash:a.baseline.result.contentHash},candidate:{id:a.candidate.manifest.id,manifestHash:a.candidate.manifest.contentHash,resultHash:a.candidate.result.contentHash}},c=yt.parse({schemaVersion:"openpond.humanComparisonProjection.v1",teamId:e.teamId,projectId:e.projectId,selections:n,original:d,humanResults:{baseline:u.humanResult,candidate:l.humanResult},baseline:u.evidence,candidate:l.evidence});return new TextEncoder().encode(JSON.stringify(c)).byteLength>8388608&&y("human_comparison_projection_too_large"),_t.parse({...c,contentHash:o(c)})}m(Cr,"projectAcceptedHumanComparison");function Ir(e,n){let a=_t.parse(e),{contentHash:s,...r}=a;s!==o(r)&&y("human_comparison_projection_invalid");for(let i of["baseline","candidate"]){let u=X(a[i]),l=u.manifest.lineage,d=l?.humanProjection,c=a.original[i],f=a.selections[i];(!l||!d||d.originalManifest.id!==c.id||d.originalManifest.contentHash!==c.manifestHash||d.selectionHash!==o(f)||d.rulesHash!==o(a.selections.rules)||o(l.execution)!==o(f.execution)||u.manifest.teamId!==a.teamId||a.humanResults[i].contentHash!==f.resultHash)&&y("human_comparison_projection_lineage_changed");let{contentHash:p,...h}=a.humanResults[i];if((o(h)!==p||h.executionId!==f.execution.id||h.executionHash!==f.execution.contentHash||o(h.selection)!==o(f.reviews.map(w=>w.review)))&&y("human_comparison_human_result_changed"),n){let w=X(n[i]);(w.manifest.lineage?.humanProjection||w.manifest.id!==c.id||w.manifest.contentHash!==c.manifestHash||w.result.contentHash!==c.resultHash||o(w.manifest.lineage?.execution)!==o(f.execution))&&y("human_comparison_original_changed")}}return a}m(Ir,"verifyHumanComparisonProjection");var Et=t.enum(["scored","unscorable"]),ze=t.enum(["policy","environment","collector","verifier","provider","host","user","scheduler"]),yn=t.enum(["completed","policy_failure","incomplete_output","task_deadline","environment_failure","collector_failure","verifier_failure","provider_failure","host_failure","infrastructure_timeout","cancelled"]),te=t.object({schemaVersion:t.literal("openpond.environmentRelease.v1"),id:v,revision:t.number().int().positive(),contract:Xe,actionSchemaRef:J.nullable(),observationSchemaRef:J.nullable(),stateSchemaRef:J.nullable(),artifactCollection:t.object({maxArtifacts:t.number().int().positive().max(1e5),maxTotalBytes:t.number().int().positive().max(1e10)}).strict(),adapterConformanceHashes:t.record(v,R),metadata:C}).strict(),Ct=te.extend({contentHash:R}).strict(),_n=t.enum(["collected","missing","skipped","failed"]),kt=t.enum(["not_requested","passed","failed"]),kn=t.object({requiredOutputPath:t.string().trim().min(1).max(2e3).nullable(),collectedPath:t.string().trim().min(1).max(4e3).nullable(),declaredMediaType:t.string().trim().min(1).max(200).nullable(),detectedMediaType:t.string().trim().min(1).max(200).nullable(),artifact:j.nullable(),status:_n,parseStatus:kt,schemaStatus:kt,errorCode:v.nullable(),failureOwner:ze.nullable(),evidenceRefs:t.array(j).max(1e4),metadata:C}).strict(),L=t.object({schemaVersion:t.literal("openpond.artifactManifest.v1"),id:v,attemptRef:g,entries:t.array(kn).max(1e5),createdAt:_,metadata:C}).strict(),ne=L.extend({contentHash:R}).strict(),U=t.object({schemaVersion:t.literal("openpond.verifierSetRelease.v1"),id:v,revision:t.number().int().positive(),graders:t.array(Ye).min(1).max(1e3),isolation:t.object({processBoundary:t.enum(["same_process","isolated_process","container"]),networkPolicy:t.literal("none"),defaultTimeoutMs:t.number().int().positive().max(3e5)}).strict(),calibrationReceiptRefs:t.array(g).max(1e4),metadata:C}).strict(),It=U.extend({contentHash:R}).strict(),F=t.object({verifierId:v,verifierVersion:t.string().trim().min(1).max(100),status:Et,rawScore:t.number().finite().nullable(),normalizedScore:t.number().min(0).max(1).nullable(),weight:t.number().nonnegative().max(1e3),passed:t.boolean(),hardGate:t.boolean(),rewardEligible:t.boolean(),rewardContribution:t.number().min(0).max(1).nullable(),failureOwner:ze.nullable(),feedback:t.array(t.string().max(2e4)).max(1e3),visibleEvidenceRefs:t.array(j).max(1e4),privilegedEvidenceRefs:t.array(j).max(1e4),metadata:C}).strict().superRefine((e,n)=>{e.status==="scored"&&e.normalizedScore===null&&n.addIssue({code:"custom",message:"A scored component requires a normalized score.",path:["normalizedScore"]}),e.status==="unscorable"&&(e.normalizedScore!==null||e.rewardEligible)&&n.addIssue({code:"custom",message:"An unscorable component cannot contribute reward.",path:["status"]})}),At=t.object({schemaVersion:t.literal("openpond.rewardReceipt.v1"),id:v,attemptRef:g,verifierSetRef:g,artifactManifestRef:g,status:Et,reward:t.number().min(0).max(1).nullable(),learningEligible:t.boolean(),passed:t.boolean(),outcomeClass:yn,failureOwner:ze.nullable(),components:t.array(F).min(1).max(1e4),visibleEvidenceRefs:t.array(j).max(1e5),privilegedEvidenceRefs:t.array(j).max(1e5),supersedes:g.nullable(),createdAt:_,metadata:C}).strict();function Mt(e,n){e.status==="scored"&&(e.reward===null||!e.learningEligible)&&n.addIssue({code:"custom",message:"A scored receipt requires a reward and is learning-eligible.",path:["status"]}),e.status==="unscorable"&&(e.reward!==null||e.learningEligible)&&n.addIssue({code:"custom",message:"An unscorable receipt has null reward and is not learning-eligible.",path:["status"]})}m(Mt,"validateRewardReceipt");var qe=At.superRefine(Mt),Be=At.extend({contentHash:R}).strict().superRefine(Mt);function Nr(e){let n=te.parse(e);return Ct.parse({...n,contentHash:o(n)})}m(Nr,"createEnvironmentRelease");function $r(e){let n=L.parse(e);return ne.parse({...n,contentHash:o(n)})}m($r,"createArtifactManifest");function Dr(e){let n=U.parse(e);return It.parse({...n,contentHash:o(n)})}m(Dr,"createVerifierSetRelease");function Lr(e){if(ae(e.environment,te,"Environment Release"),ae(e.verifierSet,U,"Verifier Set Release"),o(e.taskset.environment)!==o(e.environment.contract))throw new Error("Environment Release does not match the Taskset execution contract.");if(o(e.taskset.graders)!==o(e.verifierSet.graders))throw new Error("Verifier Set Release does not match the Taskset graders.");let{contentHash:n,...a}=e.taskset,s=he.parse({...a,environmentRelease:{id:e.environment.id,contentHash:e.environment.contentHash},verifierSetRelease:{id:e.verifierSet.id,contentHash:e.verifierSet.contentHash}});return ge.parse({...s,contentHash:o(s)})}m(Lr,"bindTasksetExecutionReleases");function Fr(e){switch(e.failureClass){case null:return{outcomeClass:"completed",failureOwner:null};case"policy_failure":return{outcomeClass:"policy_failure",failureOwner:"policy"};case"environment_failure":return{outcomeClass:"environment_failure",failureOwner:"environment"};case"grader_failure":return{outcomeClass:"verifier_failure",failureOwner:"verifier"};case"infrastructure_failure":return{outcomeClass:"host_failure",failureOwner:"host"};case"cancelled":return{outcomeClass:"cancelled",failureOwner:"user"};case"timeout":return e.timeoutKind==="task_deadline"?{outcomeClass:"task_deadline",failureOwner:"policy"}:{outcomeClass:"infrastructure_timeout",failureOwner:"host"}}}m(Fr,"classifyAttemptOutcome");function Jr(e){if(ae(e.verifierSet,U,"Verifier Set Release"),ae(e.artifactManifest,L,"Artifact Manifest"),e.artifactManifest.attemptRef.id!==e.attemptRef.id||e.artifactManifest.attemptRef.contentHash!==e.attemptRef.contentHash)throw new Error("Artifact Manifest does not belong to the Reward Receipt Attempt.");let n=En(e.outcomeClass),a=e.components.map(p=>{let h=F.parse(p),w=n&&h.status==="scored"&&h.normalizedScore!==null&&h.rewardEligible;return F.parse({...h,rewardEligible:w,rewardContribution:w?h.normalizedScore:null})}),s=a.filter(p=>p.rewardEligible&&p.normalizedScore!==null),r=s.length>0?"scored":"unscorable",i=s.some(p=>p.hardGate&&!p.passed),u=s.reduce((p,h)=>p+h.weight,0),l=u>0?s.reduce((p,h)=>p+h.normalizedScore*h.weight,0)/u:0,d=r==="scored"?i?0:l:null,c=r==="scored"&&s.every(p=>p.passed),f=qe.parse({schemaVersion:"openpond.rewardReceipt.v1",id:e.id,attemptRef:e.attemptRef,verifierSetRef:{id:e.verifierSet.id,contentHash:e.verifierSet.contentHash},artifactManifestRef:{id:e.artifactManifest.id,contentHash:e.artifactManifest.contentHash},status:r,reward:d,learningEligible:r==="scored",passed:c,outcomeClass:e.outcomeClass,failureOwner:e.failureOwner,components:a,visibleEvidenceRefs:jt([...e.visibleEvidenceRefs??[],...a.flatMap(p=>p.visibleEvidenceRefs)]),privilegedEvidenceRefs:jt([...e.privilegedEvidenceRefs??[],...a.flatMap(p=>p.privilegedEvidenceRefs)]),supersedes:e.supersedes??null,createdAt:e.createdAt,metadata:e.metadata??{}});return Be.parse({...f,contentHash:o(f)})}m(Jr,"createRewardReceipt");function Kr(e){return Ne(e,te)}m(Kr,"verifyEnvironmentRelease");function Ur(e){return Ne(e,L)}m(Ur,"verifyArtifactManifest");function Wr(e){return Ne(e,U)}m(Wr,"verifyVerifierSetRelease");function Gr(e){let n=Be.safeParse(e);if(!n.success)return!1;let{contentHash:a,...s}=n.data;return o(qe.parse(s))===a}m(Gr,"verifyRewardReceipt");function En(e){return e==="completed"||e==="policy_failure"||e==="incomplete_output"||e==="task_deadline"}m(En,"isScorableOutcome");function jt(e){return[...new Map(e.map(n=>[`${n.id}:${n.contentHash}`,n])).values()]}m(jt,"uniqueArtifactRefs");function ae(e,n,a){let{contentHash:s,...r}=e,i=o(n.parse(r));if(s!==i)throw new Error(`${a} content hash mismatch.`)}m(ae,"verifyContentHash");function Ne(e,n){try{return ae(e,n,"Receipt"),!0}catch{return!1}}m(Ne,"hasValidContentHash");var Cn=t.enum(["calibration","training_reward","validation","frozen_eval"]),as=t.enum(["human","model","deterministic","fixture"]),In=t.enum(["production","synthetic_smoke"]),An=t.enum(["markdown","text","code","json","image"]),Mn=t.object({id:v,label:t.string().trim().min(1).max(500),instruction:t.string().trim().min(1).max(1e4),weight:t.number().nonnegative().max(1e3)}).strict(),jn=t.object({source:t.enum(["attempt_output","artifact"]),path:t.string().trim().min(1).max(2e3),renderer:An}).strict(),Pn=t.object({showTaskPrompt:t.boolean(),randomizeCandidateOrder:t.boolean(),hideModelIdentity:t.boolean(),parts:t.array(jn).min(1).max(20)}).strict().superRefine((e,n)=>{e.parts.some(a=>a.renderer==="markdown"||a.renderer==="text")||n.addIssue({code:"custom",path:["parts"],message:"A preference presentation must expose text or Markdown content."})}),Tn=t.object({strategy:t.literal("randomized_blinded_v1"),maxAssignmentsPerCandidate:t.number().int().positive().max(1e4)}).strict(),On=t.object({algorithm:t.literal("mean_pairwise_win_fraction_v1"),quorum:t.number().int().positive().max(100),rejectAllThreshold:t.number().min(.5).max(1)}).strict(),Vn=t.object({algorithm:t.literal("pairwise_win_fraction_v1"),verifierId:v,verifierVersion:t.string().trim().min(1).max(100),weight:t.number().positive().max(1e3)}).strict(),zn=t.object({minimumSamples:t.number().int().positive().max(1e5),minimumOrderAgreement:t.number().min(0).max(1),minimumTieAgreement:t.number().min(0).max(1),minimumOrderSwapAgreement:t.number().min(0).max(1)}).strict(),De=t.object({schemaVersion:t.literal("openpond.preferenceComparisonRelease.v1"),id:v,revision:t.number().int().positive(),tasksetRelease:g,candidateCount:t.number().int().min(2).max(4),resultMode:t.literal("ordered_tie_groups"),allowTies:t.boolean(),allowRejectAll:t.boolean(),presentation:Pn,rubricRef:j,criteria:t.array(Mn).max(20),assignment:Tn,aggregation:On,rewardProjection:Vn,calibration:zn,metadata:C}).strict().superRefine((e,n)=>{let a=e.criteria.map(s=>s.id);new Set(a).size!==a.length&&n.addIssue({code:"custom",path:["criteria"],message:"Preference criterion IDs must be unique."})}),Tt=De.extend({contentHash:R}).strict(),qn=t.object({id:v,contentHash:R}).strict(),Bn=t.object({tasksetRelease:g,harnessReleases:t.array(g).min(1).max(4),runManifestRefs:t.array(g).min(1).max(4),harnessCompatibilityReceiptRefs:t.array(g).max(6),environmentRelease:g,verifierSetRelease:g,toolContractHash:R,policyHash:R}).strict(),Nn=t.object({attemptRef:g,runManifestRef:g,artifactManifestRef:g,visibleArtifactIds:t.array(v).max(1e5)}).strict().superRefine((e,n)=>{new Set(e.visibleArtifactIds).size!==e.visibleArtifactIds.length&&n.addIssue({code:"custom",path:["visibleArtifactIds"],message:"Visible artifact IDs must be unique per candidate."})}),Ot=t.object({schemaVersion:t.literal("openpond.comparisonAssignment.v1"),id:v,comparisonRelease:g,taskRef:qn,lineage:Bn,candidates:t.array(Nn).min(2).max(4),presentedCandidateOrder:t.array(v).min(2).max(4),purpose:Cn,createdAt:_,metadata:C}).strict().superRefine((e,n)=>{let a=e.candidates.map(s=>s.attemptRef.id);new Set(a).size!==a.length&&n.addIssue({code:"custom",path:["candidates"],message:"An assignment cannot contain the same attempt twice."}),(new Set(e.presentedCandidateOrder).size!==e.presentedCandidateOrder.length||e.presentedCandidateOrder.length!==a.length||e.presentedCandidateOrder.some(s=>!a.includes(s)))&&n.addIssue({code:"custom",path:["presentedCandidateOrder"],message:"Presented candidate order must contain every assignment candidate exactly once."})}),Vt=Ot,zt=Ot.extend({contentHash:R}).strict().superRefine((e,n)=>{let a=e.candidates.map(s=>s.attemptRef.id);new Set(a).size!==a.length&&n.addIssue({code:"custom",path:["candidates"],message:"An assignment cannot contain the same attempt twice."})}),qt=t.array(t.array(v).min(1).max(4)).max(4),$n=t.discriminatedUnion("kind",[t.object({kind:t.enum(["human","model","deterministic"]),releaseRef:g}).strict(),t.object({kind:t.literal("fixture"),releaseRef:g,fixtureRelease:g,labelSource:t.literal("synthetic"),qualificationEligibility:t.literal("smoke_only")}).strict()]),Bt=t.object({schemaVersion:t.literal("openpond.preferenceReceipt.v1"),id:v,assignmentRef:g,reviewer:$n,order:qt,rejectAll:t.boolean(),criterionScores:t.record(v,t.record(v,t.number().finite().min(0).max(1))),feedbackArtifactRef:j.nullable(),startedAt:_,completedAt:_,metadata:C}).strict().superRefine((e,n)=>{e.rejectAll&&e.order.length!==0&&n.addIssue({code:"custom",path:["order"],message:"A reject-all preference receipt cannot contain an order."}),!e.rejectAll&&e.order.length===0&&n.addIssue({code:"custom",path:["order"],message:"A non-reject preference receipt requires an ordered result."}),Date.parse(e.completedAt)<Date.parse(e.startedAt)&&n.addIssue({code:"custom",path:["completedAt"],message:"A preference receipt cannot complete before it starts."})}),Nt=Bt,$t=Bt.extend({contentHash:R}).strict(),Dt=t.object({schemaVersion:t.literal("openpond.preferenceAggregationReceipt.v1"),id:v,assignmentRef:g,comparisonRelease:g,receiptRefs:t.array(g).min(1).max(100),order:qt,rejectAll:t.boolean(),pairwiseWinFractions:t.record(v,t.number().min(0).max(1)),quorum:t.number().int().positive().max(100),createdAt:_,metadata:C}).strict().superRefine((e,n)=>{e.rejectAll&&e.order.length!==0&&n.addIssue({code:"custom",path:["order"],message:"A reject-all aggregate cannot contain an order."})}),Dn=Dt,Ln=Dt.extend({contentHash:R}).strict(),Lt=t.object({schemaVersion:t.literal("openpond.preferenceCalibrationReport.v1"),id:v,comparisonRelease:g,automatedReviewer:g,humanReceiptRefs:t.array(g).min(1).max(1e5),modelReceiptRefs:t.array(g).min(1).max(1e5),sampleCount:t.number().int().positive().max(1e5),orderAgreement:t.number().min(0).max(1),tieAgreement:t.number().min(0).max(1),orderSwapAgreement:t.number().min(0).max(1),passed:t.boolean(),createdAt:_,metadata:C}).strict(),Ft=Lt,Jt=Lt.extend({contentHash:R}).strict();function rs(e){let n=De.parse(e);return Tt.parse({...n,contentHash:o(n)})}m(rs,"createPreferenceComparisonRelease");function Fn(e){return se(e,De,Tt)}m(Fn,"verifyPreferenceComparisonRelease");function ss(e){let n=G(e.comparisonRelease),a=sa(e.taskset);if(!k(n.tasksetRelease,S(a)))throw new Error("Preference Comparison Release does not belong to the supplied Taskset Release.");if(e.candidates.length!==n.candidateCount)throw new Error("Comparison assignment candidate count does not match the immutable comparison release.");let s=n.presentation.parts.some(f=>f.source==="artifact"),r=e.candidates.map(f=>Qn(f,a,s)),i=r[0];for(let f of r.slice(1)){if(f.attempt.taskId!==i.attempt.taskId)throw new Error("Preference comparison candidates must belong to the same Taskset task.");let p=aa(i.runManifest,f.runManifest,e.harnessCompatibilityReceipts??[]);p&&k(p.baseHarnessRelease,f.runManifest.harnessRelease)?Te(f.runManifest,i.runManifest,p):Te(i.runManifest,f.runManifest,p)}let u=a.tasks.find(f=>f.id===i.attempt.taskId);if(!u)throw new Error("Comparison candidates reference a task absent from the supplied Taskset Release.");if(!a.environmentRelease||!a.verifierSetRelease)throw new Error("Preference comparison requires a Taskset bound to immutable Environment and Verifier Set Releases.");let l=r.map(f=>f.attempt.id),d=[...e.presentedCandidateOrder??l],c=Vt.parse({schemaVersion:"openpond.comparisonAssignment.v1",id:e.id,comparisonRelease:S(n),taskRef:{id:u.id,contentHash:o({taskId:u.id,tasksetRelease:S(a)})},lineage:{tasksetRelease:S(a),harnessReleases:$e(r.map(f=>f.runManifest.harnessRelease)),runManifestRefs:$e(r.map(f=>S(f.runManifest))),harnessCompatibilityReceiptRefs:$e((e.harnessCompatibilityReceipts??[]).map(S)),environmentRelease:a.environmentRelease,verifierSetRelease:a.verifierSetRelease,toolContractHash:o(a.tools),policyHash:o(a.policy)},candidates:r.map(f=>({attemptRef:S(f.attempt),runManifestRef:S(f.runManifest),artifactManifestRef:S(f.artifactManifest),visibleArtifactIds:[...f.visibleArtifactIds]})),presentedCandidateOrder:d,purpose:e.purpose,createdAt:e.createdAt,metadata:e.metadata??{}});return zt.parse({...c,contentHash:o(c)})}m(ss,"createComparisonAssignment");function Jn(e){return se(e,Vt,zt)}m(Jn,"verifyComparisonAssignment");function Le(e,n){let a=ie(e),s=G(n);if(!k(a.comparisonRelease,S(s)))throw new Error("Comparison assignment does not reference the supplied comparison release.");if(a.candidates.length!==s.candidateCount)throw new Error("Comparison assignment does not satisfy its release candidate count.")}m(Le,"validateComparisonAssignment");function Kn(e){let n=ie(e.assignment),a=G(e.comparisonRelease);Le(n,a);let s=Nt.parse({schemaVersion:"openpond.preferenceReceipt.v1",id:e.id,assignmentRef:S(n),reviewer:e.reviewer,order:e.order.map(r=>[...r]),rejectAll:e.rejectAll,criterionScores:e.criterionScores??{},feedbackArtifactRef:e.feedbackArtifactRef??null,startedAt:e.startedAt,completedAt:e.completedAt,metadata:e.metadata??{}});return W({order:s.order,rejectAll:s.rejectAll},n,a),Xn(s.criterionScores,n,a),$t.parse({...s,contentHash:o(s)})}m(Kn,"createPreferenceReceipt");function is(e){let n=e.assignment.candidates.map(l=>l.attemptRef.id),a=Object.keys(e.ratings);if(a.length!==n.length||n.some(l=>!e.ratings[l])||a.some(l=>!n.includes(l)))throw new Error("Synthetic fixture ratings must label every assignment candidate exactly once.");let s=["love","like","reject"],r=n.every(l=>e.ratings[l]==="reject"),i=r?[]:s.map(l=>n.filter(d=>e.ratings[d]===l)).filter(l=>l.length>0),u={love:1,like:.5,reject:0};return Kn({id:e.id,assignment:e.assignment,comparisonRelease:e.comparisonRelease,reviewer:{kind:"fixture",releaseRef:e.labelerRelease,fixtureRelease:e.fixtureRelease,labelSource:"synthetic",qualificationEligibility:"smoke_only"},order:i,rejectAll:r,criterionScores:Object.fromEntries(n.map(l=>[l,Object.fromEntries(e.comparisonRelease.criteria.map(d=>[d.id,u[e.ratings[l]]]))])),startedAt:e.startedAt,completedAt:e.completedAt,metadata:e.metadata??{}})}m(is,"createSyntheticFixturePreferenceReceipt");function Un(e){return se(e,Nt,$t)}m(Un,"verifyPreferenceReceipt");function Wn(e){return se(e,Dn,Ln)}m(Wn,"verifyPreferenceAggregationReceipt");function os(e){let n=G(e.comparisonRelease);if(e.pairs.length<n.calibration.minimumSamples)throw new Error(`Preference calibration requires at least ${n.calibration.minimumSamples} human/model pairs.`);let a=e.pairs.map(c=>ta(c,n)),s=a[0].model.reviewer.releaseRef;if(a.some(c=>!k(c.model.reviewer.releaseRef,s)))throw new Error("Preference calibration requires model receipts from one immutable automated reviewer release.");let r=re(a.map(c=>Pt(c.human,c.model,c.assignment))),i=re(a.map(c=>ea(c.human,c.model,c.assignment))),u=re(a.map(c=>c.swappedModel?Pt(c.model,c.swappedModel,c.assignment):1)),l=r>=n.calibration.minimumOrderAgreement&&i>=n.calibration.minimumTieAgreement&&u>=n.calibration.minimumOrderSwapAgreement,d=Ft.parse({schemaVersion:"openpond.preferenceCalibrationReport.v1",id:e.id,comparisonRelease:S(n),automatedReviewer:s,humanReceiptRefs:a.map(c=>S(c.human)),modelReceiptRefs:a.map(c=>S(c.model)),sampleCount:a.length,orderAgreement:r,tieAgreement:i,orderSwapAgreement:u,passed:l,createdAt:e.createdAt,metadata:e.metadata??{}});return Jt.parse({...d,contentHash:o(d)})}m(os,"createPreferenceCalibrationReport");function Gn(e){return se(e,Ft,Jt)}m(Gn,"verifyPreferenceCalibrationReport");function Zn(e){let n=ie(e.assignment),a=G(e.comparisonRelease);if(Le(n,a),e.result.schemaVersion==="openpond.preferenceReceipt.v1"){let r=ke(e.result);if(!k(r.assignmentRef,S(n)))throw new Error("Preference receipt does not belong to the supplied assignment.");return W(r,n,a),Yn(r,n)}let s=ra(e.result);if(!k(s.assignmentRef,S(n))||!k(s.comparisonRelease,S(a)))throw new Error("Preference aggregate does not belong to the supplied assignment and release.");return W(s,n,a),s.rejectAll?Ut(n):s.pairwiseWinFractions}m(Zn,"projectPairwiseWinFraction");function cs(e){let n=ie(e.assignment),a=G(e.comparisonRelease),s=Zn({assignment:n,comparisonRelease:a,result:e.result}),r=new Map((e.candidates??[]).map(f=>[f.attemptRef.id,f])),i=e.result.schemaVersion==="openpond.preferenceReceipt.v1"?e.result:null,u=i?.reviewer.kind==="model",l=i?.reviewer.kind==="fixture",d=In.parse(e.rewardScope??"production"),c=l?d==="synthetic_smoke":!u||na(i,a,e.calibrationReport??null);return Object.fromEntries(n.candidates.map(f=>{let p=r.get(f.attemptRef.id),h=p?.eligible??!0,w=s[f.attemptRef.id],A=h&&c?F.parse({verifierId:a.rewardProjection.verifierId,verifierVersion:a.rewardProjection.verifierVersion,status:"scored",rawScore:w,normalizedScore:w,weight:a.rewardProjection.weight,passed:w>0,hardGate:!1,rewardEligible:!0,rewardContribution:w,failureOwner:null,feedback:[],visibleEvidenceRefs:[],privilegedEvidenceRefs:[],metadata:{comparisonAssignment:S(n),preferenceResult:S(e.result),...e.calibrationReport?{calibrationReport:S(e.calibrationReport)}:{}}}):F.parse({verifierId:a.rewardProjection.verifierId,verifierVersion:a.rewardProjection.verifierVersion,status:"unscorable",rawScore:null,normalizedScore:null,weight:a.rewardProjection.weight,passed:!1,hardGate:!1,rewardEligible:!1,rewardContribution:null,failureOwner:p?.failureOwner??"verifier",feedback:[h?l?"Synthetic fixture preference evidence is admitted only to synthetic-smoke reward scope.":"Automated preference reviewer is uncalibrated or inconsistent.":"Candidate is not eligible for comparative preference scoring."],visibleEvidenceRefs:[],privilegedEvidenceRefs:[],metadata:{comparisonAssignment:S(n),preferenceResult:S(e.result),...e.calibrationReport?{calibrationReport:S(e.calibrationReport)}:{}}});return[f.attemptRef.id,A]}))}m(cs,"createPreferenceRewardComponents");function Qn(e,n,a){let s=be.parse(e.attempt);if(!D(s))throw new Error("Comparison candidate Attempt Receipt has an invalid content hash.");let r=ne.parse(e.artifactManifest);if(!ia(r))throw new Error("Comparison candidate Artifact Manifest has an invalid content hash.");let i=K.parse(e.runManifest);if(!oa(i))throw new Error("Comparison candidate Run Manifest has an invalid content hash.");if(!k(s.runManifest,S(i)))throw new Error("Comparison candidate Attempt Receipt does not belong to its supplied Run Manifest.");if(!k(i.tasksetRelease,S(n)))throw new Error("Comparison candidate Run Manifest does not belong to the supplied Taskset Release.");if(!k(r.attemptRef,S(s)))throw new Error("Comparison candidate Artifact Manifest does not belong to its Attempt Receipt.");if(!s.terminal||s.failureClass!==null)throw new Error("Only completed, non-failed attempts can be assigned for comparative review.");let u=[...e.visibleArtifactIds],l=new Set(u),d=new Set(r.entries.filter(c=>c.status==="collected"&&c.artifact!==null).map(c=>c.artifact.id));if(a&&!u.length)throw new Error("Comparison presentation requires each candidate to expose a reviewable artifact.");if(u.some(c=>!d.has(c)))throw new Error("Comparison candidate exposes an artifact that is missing, uncollected, or unreviewable.");if(l.size!==u.length)throw new Error("Comparison candidate visible artifacts must be unique.");return{attempt:s,artifactManifest:r,runManifest:i,visibleArtifactIds:u}}m(Qn,"validateComparisonCandidate");function W(e,n,a){let s=n.candidates.map(i=>i.attemptRef.id);if(e.rejectAll){if(!a.allowRejectAll)throw new Error("This comparison release does not allow reject-all results.");if(e.order.length)throw new Error("Reject-all results cannot include ordered candidates.");return}let r=e.order.flat();if(new Set(r).size!==r.length||r.length!==s.length||r.some(i=>!s.includes(i)))throw new Error("Preference result must rank every assignment candidate exactly once.");if(!a.allowTies&&e.order.some(i=>i.length>1))throw new Error("This comparison release does not allow tied candidates.")}m(W,"validatePreferenceResult");function Xn(e,n,a){let s=new Set(n.candidates.map(i=>i.attemptRef.id)),r=new Set(a.criteria.map(i=>i.id));for(let[i,u]of Object.entries(e)){if(!s.has(i))throw new Error("Criterion scores include a candidate absent from the assignment.");for(let l of Object.keys(u))if(!r.has(l))throw new Error("Criterion scores include a criterion absent from the comparison release.")}}m(Xn,"validateCriterionScores");function Yn(e,n){if(e.rejectAll)return Ut(n);let a=n.candidates.map(r=>r.attemptRef.id),s=new Map(e.order.flatMap((r,i)=>r.map(u=>[u,i])));return Object.fromEntries(a.map(r=>{let i=s.get(r);if(i===void 0)throw new Error("Preference result is missing a comparison candidate.");let u=0;for(let l of a){if(l===r)continue;let d=s.get(l);if(d===void 0)throw new Error("Preference result is missing a comparison candidate.");u+=i<d?1:i===d?.5:0}return[r,u/(a.length-1)]}))}m(Yn,"pairwiseScoresForResult");function Pt(e,n,a){let s=a.candidates.map(i=>i.attemptRef.id),r=Kt(s);return r.length?re(r.map(([i,u])=>Ee(e,i,u)===Ee(n,i,u)?1:0)):1}m(Pt,"pairwiseAgreement");function ea(e,n,a){let s=Kt(a.candidates.map(r=>r.attemptRef.id));return s.length?re(s.map(([r,i])=>Ee(e,r,i)===0==(Ee(n,r,i)===0)?1:0)):1}m(ea,"tieAgreementScore");function Ee(e,n,a){if(e.rejectAll)return 0;let s=new Map(e.order.flatMap((u,l)=>u.map(d=>[d,l]))),r=s.get(n),i=s.get(a);if(r===void 0||i===void 0)throw new Error("Preference result does not cover all comparison candidates.");return r<i?1:r===i?0:-1}m(Ee,"pairRelation");function Kt(e){let n=[];for(let a=0;a<e.length;a+=1)for(let s=a+1;s<e.length;s+=1)n.push([e[a],e[s]]);return n}m(Kt,"pairsFor");function ta(e,n){let a=ie(e.assignment);if(Le(a,n),a.purpose==="frozen_eval")throw new Error("Frozen-evaluation comparisons cannot calibrate an automated preference reviewer.");let s=ke(e.human),r=ke(e.model);if(s.reviewer.kind!=="human"||r.reviewer.kind!=="model")throw new Error("Preference calibration requires one human and one automated model receipt per assignment.");if(!k(s.assignmentRef,S(a))||!k(r.assignmentRef,S(a)))throw new Error("Preference calibration receipts must belong to their supplied assignment.");W(s,a,n),W(r,a,n);let i=e.swappedModel?ke(e.swappedModel):null;if(i){if(i.reviewer.kind!=="model"||!k(i.assignmentRef,S(a)))throw new Error("Order-swap calibration receipts must be model receipts for the same assignment.");if(!k(i.reviewer.releaseRef,r.reviewer.releaseRef))throw new Error("Order-swap calibration must use the same immutable automated reviewer release.");W(i,a,n)}return{assignment:a,human:s,model:r,swappedModel:i}}m(ta,"validateCalibrationPair");function na(e,n,a){return!a||!Gn(a)?!1:a.passed&&k(a.comparisonRelease,S(n))&&k(a.automatedReviewer,e.reviewer.releaseRef)}m(na,"isCalibratedAutomatedReviewer");function Ut(e){return Object.fromEntries(e.candidates.map(n=>[n.attemptRef.id,0]))}m(Ut,"zeroScores");function re(e){return e.length?e.reduce((n,a)=>n+a,0)/e.length:0}m(re,"mean");function S(e){return{id:e.id,contentHash:e.contentHash}}m(S,"ref");function k(e,n){return e.id===n.id&&e.contentHash===n.contentHash}m(k,"sameRef");function $e(e){return[...new Map(e.map(n=>[`${n.id}:${n.contentHash}`,n])).values()]}m($e,"uniqueRefs");function aa(e,n,a){if(!k(e.harnessRelease,n.harnessRelease))return a.find(s=>k(s.tasksetRelease,e.tasksetRelease)&&(k(s.baseHarnessRelease,e.harnessRelease)&&k(s.candidateHarnessRelease,n.harnessRelease)||k(s.baseHarnessRelease,n.harnessRelease)&&k(s.candidateHarnessRelease,e.harnessRelease)))}m(aa,"compatibilityForRunManifests");function se(e,n,a){let s=a.safeParse(e);if(!s.success||!s.data)return!1;let{contentHash:r,...i}=s.data;try{return o(n.parse(i))===r}catch{return!1}}m(se,"verifyHashed");function G(e){if(!Fn(e))throw new Error("Preference Comparison Release has an invalid content hash.");return e}m(G,"verifyComparisonRelease");function ie(e){if(!Jn(e))throw new Error("Comparison Assignment has an invalid content hash.");return e}m(ie,"verifyAssignment");function ke(e){if(!Un(e))throw new Error("Preference Receipt has an invalid content hash.");return e}m(ke,"verifyReceipt");function ra(e){if(!Wn(e))throw new Error("Preference Aggregation Receipt has an invalid content hash.");return e}m(ra,"verifyAggregate");function sa(e){let{contentHash:n,...a}=ge.parse(e);if(o(he.parse(a))!==n)throw new Error("Taskset Release has an invalid content hash.");return e}m(sa,"verifyTasksetRelease");function ia(e){let n=ne.safeParse(e);if(!n.success)return!1;let{contentHash:a,...s}=n.data;return o(L.parse(s))===a}m(ia,"verifyArtifactManifest");function oa(e){let n=K.safeParse(e);if(!n.success)return!1;let{contentHash:a,...s}=n.data;return o(s)===a}m(oa,"verifyRunManifest");var ca=t.object({profileId:v,sourceRevision:t.string().trim().min(1).max(240),harnessRelease:g}).strict(),ma=t.object({kind:t.enum(["run","suite","comparison"]),id:v,contentHash:R}).strict(),Wt=t.object({schemaVersion:t.literal("openpond.profileEvaluationReport.v1"),id:v,createdAt:_,testedSources:t.array(ca).min(1).max(100),tasksetReleases:t.array(g).min(1).max(100),metricPolicyHashes:t.array(R).min(1).max(100),modelConfigurationHashes:t.array(R).min(1).max(100),evidence:t.array(ma).min(1).max(100),summary:t.object({totalChecks:t.number().int().nonnegative(),passedChecks:t.number().int().nonnegative(),failedChecks:t.number().int().nonnegative(),unscoredChecks:t.number().int().nonnegative(),meanScore:t.number().min(0).max(1).nullable()}).strict()}).strict().superRefine((e,n)=>{let{summary:a}=e;a.passedChecks+a.failedChecks+a.unscoredChecks!==a.totalChecks&&n.addIssue({code:"custom",path:["summary"],message:"Report check counts must add up."}),new Set(e.evidence.map(({kind:s,id:r})=>`${s}:${r}`)).size!==e.evidence.length&&n.addIssue({code:"custom",path:["evidence"],message:"Report evidence must be unique."})}),Gt=Wt.safeExtend({contentHash:R});function fs(e){let n=Wt.parse(e);return Gt.parse({...n,contentHash:o(n)})}m(fs,"createProfileEvaluationReport");function ps(e){let n=Gt.parse(e),{contentHash:a,...s}=n;if(o(s)!==a)throw new Error("Profile evaluation report content hash differs from its source bytes.");return n}m(ps,"assertProfileEvaluationReport");var la=t.string().regex(/^(0|-?[1-9][0-9]*)$/).max(20).refine(e=>{if(e.length>20||!/^(0|-?[1-9][0-9]*)$/.test(e))return!1;let n=BigInt(e);return n>=-(1n<<63n)&&n<1n<<63n},"SQL integers must fit signed 64-bit storage."),Qt=t.union([t.null(),t.string().max(262144),t.number().finite(),t.object({integer:la}).strict(),t.object({blobBase64:t.string().max(349528).regex(/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/)}).strict()]),Zt=t.string().min(1).max(128).refine(e=>!e.includes("\0")),da=t.object({tables:t.array(t.object({name:Zt,columns:t.array(t.object({name:Zt,type:t.enum(["INTEGER","REAL","TEXT","BLOB"])}).strict()).min(1).max(128),rows:t.array(t.array(Qt).max(128)).max(4096)}).strict()).max(64)}).strict().superRefine((e,n)=>{let a=new Set;for(let[s,r]of e.tables.entries()){let i=r.name.toLowerCase();(a.has(i)||i.startsWith("sqlite_"))&&n.addIssue({code:"custom",path:["tables",s,"name"],message:"Table names must be unique and outside SQLite's reserved namespace."}),a.add(i),new Set(r.columns.map(u=>u.name.toLowerCase())).size!==r.columns.length&&n.addIssue({code:"custom",path:["tables",s,"columns"],message:"Column names must be unique."}),r.rows.some(u=>u.length!==r.columns.length)&&n.addIssue({code:"custom",path:["tables",s,"rows"],message:"Each row must match the declared columns."})}}),Ce=t.object({schemaVersion:t.literal("openpond.sqlExecution.v1"),snapshot:da,sql:t.string().min(1).max(65536).refine(e=>!e.includes("\0")),maxRows:t.number().int().min(1).max(4096),maxResultBytes:t.number().int().min(256).max(262144)}).strict(),ws=t.discriminatedUnion("status",[t.object({status:t.literal("completed"),columns:t.array(t.string()).max(128),rows:t.array(t.array(Qt).max(128)).max(4096)}).strict(),t.object({status:t.literal("rejected"),code:t.enum(["invalid_query","multiple_statements","result_too_large","memory_limit"])}).strict()]);function bs(e){le(e,1048576);let n=Ce.parse(e);if(new TextEncoder().encode(n.sql).byteLength>65536)throw new Error("sql_source_too_large");return n}m(bs,"assertSqlExecutionRequest");var Ie=t.object({scope:t.enum(["input","initialState","state","arguments"]),path:t.array(t.string().min(1).max(256)).max(16)}).strict(),Xt={id:t.string().min(1).max(128),operation:t.enum(["step","collect"]),toolName:t.string().min(1).max(500).optional(),timeoutMs:t.number().int().min(1).max(2e4)},Yt=t.discriminatedUnion("kind",[t.object({...Xt,kind:t.literal("sqlite.v1"),sql:Ie,snapshot:Ie,maxRows:Ce.shape.maxRows,maxResultBytes:Ce.shape.maxResultBytes}).strict(),t.object({...Xt,kind:t.literal("javascript.v1"),source:Ie,cases:Ie,exportName:t.string().regex(/^[A-Za-z_$][A-Za-z0-9_$]*$/).max(128),maxCases:t.number().int().min(1).max(32),maxResultBytes:t.number().int().min(256).max(262144)}).strict()]).superRefine((e,n)=>{e.operation==="step"!=(e.toolName!==void 0)&&n.addIssue({code:"custom",path:["toolName"],message:"Only step services require a declared tool name."}),e.operation==="collect"&&(e.kind==="sqlite.v1"?[e.sql,e.snapshot]:[e.source,e.cases]).some(s=>s.scope==="arguments")&&n.addIssue({code:"custom",message:"Collection has no tool arguments."})});var ua=t.object({schemaVersion:t.literal("openpond.javascriptEnvironment.v1"),id:t.string().trim().min(1).max(500),revision:t.number().int().positive(),module:J.refine(e=>e.visibility==="host_private","Environment code belongs to the execution owner."),tools:t.array(Ue).min(1).max(200),maxSteps:t.number().int().min(1).max(1e3),maxStateBytes:t.number().int().min(1).max(1048576),maxObservationBytes:t.number().int().min(1).max(262144),operationTimeoutMs:t.number().int().min(1).max(3e4),executionServices:t.array(Yt).min(1).max(16).optional()}).strict().superRefine((e,n)=>{new Set(e.tools.map(s=>s.name)).size!==e.tools.length&&n.addIssue({code:"custom",path:["tools"],message:"Environment tool names must be unique."}),e.tools.forEach((s,r)=>{We(s.inputSchema).valid||n.addIssue({code:"custom",path:["tools",r,"inputSchema"],message:"Environment tools require a supported JSON schema."}),s.inputSchemaHash!==o(s.inputSchema)&&n.addIssue({code:"custom",path:["tools",r,"inputSchemaHash"],message:"Tool schema identity differs from its declared schema."})});let a=e.executionServices??[];new Set(a.map(s=>s.id)).size!==a.length&&n.addIssue({code:"custom",path:["executionServices"],message:"Execution service identities must be unique."}),a.forEach((s,r)=>{let i=e.tools.find(u=>u.name===s.toolName);s.operation==="step"&&!i&&n.addIssue({code:"custom",path:["executionServices",r,"toolName"],message:"Execution services must target a declared tool."}),s.timeoutMs>=Math.min(e.operationTimeoutMs,i?.timeoutMs??e.operationTimeoutMs)&&n.addIssue({code:"custom",path:["executionServices",r,"timeoutMs"],message:"Service budgets must leave time for the authored controller."})})}),fa=ua.safeExtend({contentHash:t.string().regex(/^[a-f0-9]{64}$/)}),As=t.enum(["create","reset","step","collect","destroy"]),Ms=t.object({state:t.record(t.string(),t.unknown()),observation:t.record(t.string(),t.unknown())}).strict();function js(e){le(e,4194304);let n=fa.parse(e),{contentHash:a,...s}=n;if(o(s)!==a)throw new Error("environment_definition_hash_mismatch");return structuredClone(n)}m(js,"assertJavaScriptEnvironmentDefinition");export{Rn as a,vn as b,Se as c,bn as d,ht as e,Sn as f,tr as g,nr as h,K as i,Pe as j,be as k,cn as l,Ra as m,va as n,D as o,mt as p,fn as q,z as r,Ta as s,pn as t,Oa as u,Ve as v,lr as w,gt as x,dr as y,xe as z,dt as A,Ht as B,_t as C,Cr as D,Ir as E,Et as F,ze as G,yn as H,Ct as I,kn as J,ne as K,It as L,F as M,Be as N,Nr as O,$r as P,Dr as Q,Lr as R,Fr as S,Jr as T,Kr as U,Ur as V,Wr as W,Gr as X,Tt as Y,zt as Z,$t as _,Jt as $,rs as aa,ss as ba,Jn as ca,Le as da,Kn as ea,is as fa,Un as ga,os as ha,cs as ia,hn as ja,La as ka,Gt as la,fs as ma,ps as na,gn as oa,Za as pa,ws as qa,bs as ra,Yt as sa,fa as ta,As as ua,Ms as va,js as wa};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{b as H}from"./chunk-5OGRWWEH.js";import{F as g,K as B,L}from"./chunk-D6MQTNJ3.js";import{a as N}from"./chunk-BUFQKDAW.js";import{oa as _}from"./chunk-JBHAU7PH.js";import{O as x,R as V,S as F,Y as R}from"./chunk-6JBWHR6T.js";import{ta as I}from"./chunk-HK3WGUKK.js";import{Ca as b}from"./chunk-5ZZM3TUN.js";import{ma as E,na as C,oa as y}from"./chunk-BQNK2NMB.js";import{Fa as A}from"./chunk-VW7D3DRM.js";import{c as D,e as v,f as U,g as M,i as O,qa as T}from"./chunk-UWO34HP6.js";import{l as p}from"./chunk-P653BXMY.js";import{b as o}from"./chunk-ES2ISFJC.js";import{a as w,c as P,f as j,h as c}from"./chunk-H7IWJN7L.js";import{a as i}from"./chunk-FTQLQJQV.js";import h from"node:path";import{AsyncLocalStorage as ee}from"node:async_hooks";import{promises as z}from"node:fs";var J=new ee;function fe(r,e=!1){let t=J.getStore();t&&(e&&(t.length=0),t.push(r))}i(fe,"onStartupFailure");async function ge(r,e){await T(r);let t;try{t=await M(h.join(c(r).runtime,"server-owner"),100)}catch(n){if(n instanceof P&&n.issue.code==="STORAGE_BUSY"){let a=await O(h.join(c(r).runtime,"endpoint.json"),()=>null);throw new P({code:"RUNTIME_ALREADY_RUNNING",path:r,message:"An OpenPond runtime already owns this home.",action:a?.url?`Connect to the existing runtime at ${a.url}, or stop it before starting another.`:"Stop the existing runtime before starting another with this home."})}throw n}let s=[];try{let n=await w(r,()=>J.run(s,e)),a=n.close.bind(n);s.length=0;let d;return{...n,close:i(()=>d??=(async()=>{try{await w(r,a)}finally{await z.rm(h.join(c(r).runtime,"endpoint.json"),{force:!0}),await t()}})(),"close")}}catch(n){try{for(let a of s.reverse())await Promise.resolve().then(()=>w(r,a)).catch(()=>{});await z.rm(h.join(c(r).runtime,"endpoint.json"),{force:!0})}finally{await t()}throw n}}i(ge,"ownHomeRuntime");async function he(r,e,t){await v(h.join(c(r).runtime,"endpoint.json"),JSON.stringify({schemaVersion:"openpond.runtimeEndpoint.v1",pid:process.pid,url:e,serverId:t}))}i(he,"publishRuntimeEndpoint");function ye(r){return te({runtime:L(r.ports),close:r.close})}i(ye,"createAppServer");function te(r){let e=!1;return{runtime:r.runtime,close:i(async()=>{e||(e=!0,await r.close?.())},"close")}}i(te,"attachAppServer");async function Pe(r){let e=typeof r.appServer=="function"?null:r.appServer;try{await B({host:e?.runtime??(async()=>(e=await r.appServer(),e.runtime)),readable:r.readable,writable:r.writable,hostStorageClient:r.hostStorageClient})}finally{await e?.close()}}i(Pe,"runAppServerJsonl");import S from"node:path";import{lstat as re,readFile as oe,realpath as $}from"node:fs/promises";import{randomUUID as se}from"node:crypto";var ne=o.object({id:o.string(),version:o.string(),contentHash:o.string().regex(/^[a-f0-9]{64}$/),feedbackKey:o.string(),release:o.object({id:o.string(),revision:o.union([o.string(),o.number()]),contentHash:o.string().regex(/^[a-f0-9]{64}$/)}).strict().nullable()}).strict(),G=o.object({binding:C,packageValue:o.unknown(),graders:o.array(ne).max(100),actualGrading:o.object({pass:o.unknown(),evidence:o.unknown()}).strict().optional(),sourceCandidate:E.optional()}).strict();async function Me(r,e){let t=await $(e),s=S.resolve(r);if(S.dirname(s)!==t||await $(s)!==s)throw new Error("External Dataset package escaped its private owner home.");let n=await re(s);if(!n.isFile()||n.isSymbolicLink()||n.size>32*1024*1024)throw new Error("External Dataset package is not a bounded regular file.");let a=G.parse(JSON.parse(new TextDecoder("utf8",{fatal:!0}).decode(await oe(s))));return a.binding=y(a.binding),a.packageValue=I({...a,packageValue:b(a.packageValue)}),a}i(Me,"readHostProfileExternalDataset");async function Oe(r){let e=G.parse(r.value),t=y(e.binding),s=r.release,n={id:s.harnessRelease.id,contentHash:s.harnessRelease.contentHash};if(t.protectedProfileClosureHash!==p(s.harnessRelease.files.filter(l=>l.visibility!=="policy").map(l=>({path:l.path,asset:l}))))throw new Error("The external Dataset protected Profile closure changed.");if(e.sourceCandidate){let l=await _({workspaceId:typeof s.agentSnapshot.metadata.workspaceId=="string"?s.agentSnapshot.metadata.workspaceId:s.workspaceId,sourceDir:S.join(s.bundlePath,"source")});if(p(e.sourceCandidate.harnessRelease)!==p(n)||N(l).protectedClosureHash!==e.sourceCandidate.protectedClosureHash)throw new Error("The external Dataset candidate differs from its retained frozen compiled source.")}let a=i(async l=>{if(o.object({authorized:o.literal(!0),bindingHash:o.string().regex(/^[a-f0-9]{64}$/)}).strict().parse(await r.client.request({contractVersion:1,requestId:se(),operation:"profile.externalDataset.authorize",params:{...l,bindingHash:t.contentHash}})).bindingHash!==t.contentHash)throw new Error("The host authorized another external Dataset binding.")},"authorize");return{authorize:a,resolveExternalDataset:i(async(l,m)=>{if(await a(),p(l)!==p(t)||m.profileRef.profileId!==t.profileId||m.sourceRevision!==r.sourceRevision||p(m.harnessRelease)!==p(n))throw new Error("External Dataset requested another actual Profile source or recipe.");let f=I({...e,binding:l,packageValue:b(e.packageValue)});return{binding:t,packageValue:f,authorize:a}},"resolveExternalDataset"),sourceCandidate:e.sourceCandidate}}i(Oe,"createHostProfileExternalDataset");import{randomBytes as ae}from"node:crypto";function Ne(){return j()}i(Ne,"appDataDir");function Be(r){return c(r).config}i(Be,"providersConfigPath");function Le(r){return c(r).credentials}i(Le,"providerSecretsConfigPath");function ze(r){return c(r).key}i(ze,"providerSecretsKeyPath");async function Je(r){let e=c(r).token;return U(e,async()=>{let t=(await D(e))?.trim(),s=process.env.OPENPOND_APP_TOKEN||t||ae(32).toString("base64url");return s!==t&&await v(e,s),{token:s,tokenFile:e}})}i(Je,"ensureCapabilityToken");import u from"node:path";import{readFile as W}from"node:fs/promises";var q=o.object({profileId:o.string().min(1),sourceRevision:o.string().min(1),repositoryId:o.string().min(1),harnessRelease:o.object({id:o.string().min(1),contentHash:o.string().regex(/^[a-f0-9]{64}$/)}).strict(),hostExecution:o.object({conversationId:o.string().min(1),turnId:o.string().min(1)}).strict().optional(),workspaceId:o.string().min(1),assetsPath:o.string().min(1).refine(u.isAbsolute)}).strict();async function Ze(r,e){let t=q.parse(e),s=await H(r,t.harnessRelease);if(!s||u.resolve(s.release.bundlePath)!==u.resolve(t.assetsPath))throw new Error("Hosted Profile release changed after admission.");let n=s.release.harnessRelease.metadata.profile;if(!n||typeof n!="object"||n.id!==t.profileId||n.sourceRevision!==t.sourceRevision||n.repositoryId!==void 0&&n.repositoryId!==t.repositoryId)throw new Error("Hosted Profile provenance differs from admitted release.");return{profile:F(),profileLibrary:V()}}i(Ze,"loadHostedProfileStateAndLibrary");async function et(r,e){let t=q.parse(e),s=await H(r,t.harnessRelease);if(!s||u.resolve(s.release.bundlePath)!==u.resolve(t.assetsPath))throw new Error("Hosted Profile workflow release is unavailable.");let n=s.release.harnessRelease.metadata.profile;if(n?.id!==t.profileId||n.sourceRevision!==t.sourceRevision||n.repositoryId!==void 0&&n.repositoryId!==t.repositoryId)throw new Error("Hosted Profile workflow provenance changed.");let a=t.harnessRelease,d={source:"openpond_git",repositoryId:t.repositoryId,profileId:t.profileId};if(!s.release.harnessRelease.files.some(f=>f.path==="workflows/catalog.json"))return{profileRef:d,sourceRevision:t.sourceRevision,harnessRelease:a,workflows:[]};let l=u.join(s.release.bundlePath,"source","workflows"),m=A({agentSnapshot:s.release.agentSnapshot,harnessRelease:s.release.harnessRelease,catalogBytes:await W(u.join(l,"catalog.json")),actionBytes:await W(u.join(l,"actions.json"))});return{profileRef:d,sourceRevision:t.sourceRevision,harnessRelease:a,workflows:m.catalog.workflows.map(f=>({workflow:f,binding:{schemaVersion:"openpond.profileWorkflowBinding.v1",profileId:t.profileId,sourceRevision:t.sourceRevision,harnessRelease:a,catalogHash:m.catalogHash,workflowId:f.id}}))}}i(et,"listHostedProfileWorkflows");import{createHash as ie,randomUUID as k}from"node:crypto";var K=o.object({approval:x,revision:o.number().int().positive()}).strict(),Q=o.object({record:R}).strict(),le=o.object({startedAt:o.string().min(1),requestOrdinal:o.number().int().nonnegative(),id:o.string().min(1)}).strict(),ce=o.object({records:o.array(R).max(200),nextBefore:le.nullable()}).strict(),Y=1e4,X=class{constructor(e){this.client=e}client;static{i(this,"HostedApprovalStorage")}async readApproval(e){let t=await this.client.request({contractVersion:g,requestId:k(),operation:"approval/get",params:{approvalId:e}});return t===null?null:K.parse(t)}async getApproval(e){return(await this.readApproval(e))?.approval??null}async putApproval(e){let t=x.parse(e.approval);if(!e.requestId.trim())throw new Error("Approval mutation requires a stable request ID.");return K.parse(await this.client.request({contractVersion:g,requestId:e.requestId,operation:"approval/upsert",params:{approval:t,expectedRevision:e.expectedRevision}}))}},Z=class{constructor(e){this.client=e}client;static{i(this,"HostedModelUsageStorage")}async upsertModelUsageRecord(e){let t=R.parse(e),s=ie("sha256").update(JSON.stringify(t)).digest("hex"),n=await this.client.request({contractVersion:g,requestId:`usage:${s}`,operation:"usage/upsert",params:{record:t}}),a=Q.parse(n).record;if(a.requestId!==t.requestId)throw new Error("Host usage upsert changed request identity.");return a}async getModelUsageRecordByRequestId(e){let t=await this.client.request({contractVersion:g,requestId:k(),operation:"usage/getByRequestId",params:{requestId:e}});return t===null?null:Q.parse(t).record}async listModelUsageRecords(e={}){let t=e.limit===void 0||e.limit>=Y,s=e.limit===void 0?Y:Math.max(1,Math.min(1e4,Math.trunc(e.limit))),n={...e.sessionId?{sessionId:e.sessionId}:{},...e.turnId?{turnId:e.turnId}:{},...e.provider?{provider:e.provider}:{},...e.model?{model:e.model}:{},...e.startedAtFrom?{startedAtFrom:e.startedAtFrom}:{},...e.startedAtTo?{startedAtTo:e.startedAtTo}:{},...e.visibility&&e.visibility!=="all"?{visibility:e.visibility}:{},...e.status&&e.status!=="all"?{status:e.status}:{}},a=[],d=null;for(;a.length<s+(t?1:0);){let l=ce.parse(await this.client.request({contractVersion:g,requestId:k(),operation:"usage/page",params:{query:n,before:d,limit:Math.min(200,s+(t?1:0)-a.length)}}));if(a.push(...l.records),a.length>s)throw new Error(`Hosted usage query exceeds ${s} rows; narrow its filters or use a streamed aggregation.`);if(l.nextBefore===null)break;if(l.records.length===0||JSON.stringify(l.nextBefore)===JSON.stringify(d))throw new Error("Host usage cursor did not advance.");d=l.nextBefore}return a}async listModelUsageRecordsComplete(e={}){return this.listModelUsageRecords(e)}};export{fe as a,ge as b,he as c,ye as d,Pe as e,Me as f,Oe as g,Ne as h,Be as i,Le as j,ze as k,Je as l,q as m,Ze as n,et as o,X as p,Z as q};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{k as H,la as R}from"./chunk-JBHAU7PH.js";import{J as I,N as C}from"./chunk-ZJY2L43W.js";import{k,l as b}from"./chunk-P653BXMY.js";import{a as h}from"./chunk-FTQLQJQV.js";import{promises as s}from"node:fs";import n from"node:path";import{execFile as O}from"node:child_process";import{promisify as A}from"node:util";var T=A(O);async function v(e,i,a={}){return(await T("git",["-C",e,...i],{encoding:"utf8",timeout:3e4,maxBuffer:8388608,env:{...process.env,...a}})).stdout.trim()}h(v,"candidateGit");async function j(e,i=I,a=!1){if(e.profileRef.source!=="local"&&!a)throw new Error("This Git adapter requires the actual installed local Profile owner; hosted adoption needs its published-source owner.");let r=await i(e.profileRef);if(r.error||r.mode!=="local"||r.activeProfile!==e.profileRef.profileId||!r.repoPath||!r.sourcePath)throw new Error("The original Profile owner is unavailable.");let l=await s.realpath(r.repoPath),p=await s.realpath(r.sourcePath),f=n.relative(l,p);if(f.startsWith("..")||n.isAbsolute(f))throw new Error("Profile source escapes its actual Git owner.");return{profile:r,repo:l,source:p,sourceRelative:f}}h(j,"originalCandidateProfile");async function Pe(e,i,a=!0){if(!/^[a-f0-9]{40}$/.test(i)||await v(e,["rev-parse","HEAD"])!==i)throw new Error("The original Profile Git revision changed.");if(a&&await v(e,["status","--porcelain","--untracked-files=all"]))throw new Error("Commit or reconcile changes in the original Profile before this operation.")}h(Pe,"assertCandidateGitHead");async function ye(e,i){let a=await j(e.state,e.loadProfile,e.allowRemoteSnapshot),r=n.join(e.storeDir,"library","harnesses","profile-candidate-staging");await s.mkdir(r,{recursive:!0,mode:448});let l=await s.mkdtemp(n.join(r,"source-"));await s.rmdir(l),await v(a.repo,["worktree","add","--detach",l,e.commit]);try{let p=await C({repoPath:l,profileId:e.state.profileRef.profileId});if(p.error||!p.sourcePath)throw new Error("The staged original Profile cannot be loaded.");return await i({root:l,profile:p,repo:a.repo,source:p.sourcePath})}finally{await v(a.repo,["worktree","remove","--force",l]).catch(()=>{}),await s.rm(l,{recursive:!0,force:!0})}}h(ye,"withCandidateProfileWorktree");function y(e){if(!e||n.isAbsolute(e)||e.includes("\\")||e.split("/").some(i=>!i||i==="."||i===".."))throw new Error("Original Profile patch path is not contained.");return e}h(y,"portable");async function ve(e){let i=e.base.manifest.metadata.profileSourceBindings;if(!Array.isArray(i))throw new Error("The original release needs compiler source bindings before candidate adoption.");let a=e.state.component.path,r=e.state.component,l=new Map(i.map(t=>{if(!t||typeof t!="object"||typeof t.releasedPath!="string"||typeof t.profileRelativePath!="string")throw new Error("Original Profile source binding is invalid.");return[y(t.releasedPath),y(t.profileRelativePath)]})),p=r.kind==="instruction"&&a==="instructions/system.md"&&e.base.manifest.metadata.profileInstructionSourcePath==="instructions/system.md"&&!l.has(a),f=l.get(a)??(p?"instructions/system.md":void 0),S=r.kind==="workflow"?`workflows/${r.workflowId}/`:r.kind==="agent"?a.split("/").slice(0,2).join("/")+"/":n.posix.dirname(a)+"/",w=f?n.posix.dirname(f)+"/":null;if(r.kind==="workflow"&&!f&&(w=S),r.kind==="agent"){let t=e.profile.agents.find(o=>a.startsWith(`agents/${o.id}/`));if(!t)throw new Error("The selected Agent original source is unavailable.");let c=y(t.path);w=((await s.lstat(n.join(e.source,c))).isDirectory()?c:n.posix.dirname(c))+"/"}let E=new Map(e.base.sourceFiles.map(t=>[t.path,t])),x=new Map(e.candidate.sourceFiles.map(t=>[t.path,t])),g=new Map;for(let t of new Set([...E.keys(),...x.keys()])){let c=E.get(t),m=x.get(t);if(c?.asset.contentHash===m?.asset.contentHash)continue;if(c&&c.asset.visibility!=="policy"||m&&m.asset.visibility!=="policy")throw new Error("A candidate cannot change protected Profile source.");let o=l.get(t)??(p&&t===a?f:void 0);if(!o&&t.startsWith(S)&&w&&(o=w+t.slice(S.length)),!o&&t==="workflows/catalog.json"&&[...l.keys()].some(P=>/^workflows\/[^/]+\/(PROMPT\.md|ACTION\.json)$/.test(P))||!o&&t==="dependency-lock/profile-import.json")continue;if(!o)throw new Error(`The selected component has no original Profile source mapping: ${t}`);if(o=y(o),o!==f&&!(r.kind!=="instruction"&&w&&o.startsWith(w)))throw new Error("Candidate patch changes a different original Profile component.");if(H(o))throw new Error("Candidate patch crosses the protected Profile evaluation closure.");let u=g.get(o),d=m?.bytes??null;if(u&&(u.before!==(c?.asset.contentHash??null)||b(u.bytes===null?null:Array.from(u.bytes))!==b(d===null?null:Array.from(d))))throw new Error("Public component aliases disagree on the original source edit.");g.set(o,{before:p&&t===a?null:c?.asset.contentHash??null,bytes:d})}for(let[t,c]of g){let m=n.join(e.source,...t.split("/")),o=n.dirname(m);for(;!await s.stat(o).catch(()=>null);)o=n.dirname(o);let u=n.relative(await s.realpath(e.source),await s.realpath(o));if(u.startsWith("..")||n.isAbsolute(u))throw new Error("Candidate patch escapes the staged Profile source.");let d=await s.lstat(m).catch(()=>null);if(d?.isSymbolicLink()||d&&!d.isFile())throw new Error("Original source patch needs a regular file.");let P=d?await s.readFile(m):null;if((P?k(P):null)!==c.before)throw new Error("Original source bytes differ from the exact candidate baseline.");c.bytes===null?await s.rm(m):(await s.mkdir(n.dirname(m),{recursive:!0}),await s.writeFile(m,c.bytes,{mode:d?.mode??384}))}return[...g.keys()]}h(ve,"applyCandidateProfileSource");function Se(e){let i=e.base.manifest.metadata.profileRepositoryId;return R({storeDir:e.storeDir,workspaceId:e.state.ownerWorkspaceId,name:e.base.manifest.name,profile:e.profile,sourceRevision:e.sourceRevision,...typeof i=="string"?{repositoryId:i}:{}})}h(Se,"compileOriginalCandidateProfile");export{v as a,j as b,Pe as c,ye as d,ve as e,Se as f};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{b as t}from"./chunk-ES2ISFJC.js";import{a as c}from"./chunk-FTQLQJQV.js";var O=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),v=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function E(n){let a=typeof n=="string"?new TextEncoder().encode(n):n,r=Math.ceil((a.byteLength+9)/64)*64,d=new Uint8Array(r);d.set(a),d[a.byteLength]=128;let b=a.byteLength*8,A=new DataView(d.buffer);A.setUint32(r-8,Math.floor(b/4294967296),!1),A.setUint32(r-4,b>>>0,!1);let e=new Uint32Array(O),f=new Uint32Array(64);for(let u=0;u<r;u+=64){for(let o=0;o<16;o+=1)f[o]=A.getUint32(u+o*4,!1);for(let o=16;o<64;o+=1){let g=f[o-15],S=f[o-2],T=i(g,7)^i(g,18)^g>>>3,w=i(S,17)^i(S,19)^S>>>10;f[o]=f[o-16]+T+f[o-7]+w>>>0}let s=e[0],p=e[1],h=e[2],_=e[3],x=e[4],y=e[5],R=e[6],H=e[7];for(let o=0;o<64;o+=1){let g=x&y^~x&R,S=s&p^s&h^p&h,T=i(s,2)^i(s,13)^i(s,22),w=i(x,6)^i(x,11)^i(x,25),j=H+w+g+v[o]+f[o]>>>0,L=T+S>>>0;H=R,R=y,y=x,x=_+j>>>0,_=h,h=p,p=s,s=j+L>>>0}e[0]=e[0]+s>>>0,e[1]=e[1]+p>>>0,e[2]=e[2]+h>>>0,e[3]=e[3]+_>>>0,e[4]=e[4]+x>>>0,e[5]=e[5]+y>>>0,e[6]=e[6]+R>>>0,e[7]=e[7]+H>>>0}return Array.from(e,u=>u.toString(16).padStart(8,"0")).join("")}c(E,"sha256Hex");function i(n,a){return n>>>a|n<<32-a}c(i,"rotateRight");var z=2e3,U=25e7,l=t.string().trim().min(1).max(240),m=t.string().regex(/^[a-f0-9]{64}$/),Y=t.string().datetime({offset:!0}),q=t.record(t.string(),t.unknown()).default({}),M=t.object({id:l,contentHash:m}).strict(),F=M.extend({revision:t.number().int().positive()}).strict(),W=t.object({id:l,path:t.string().trim().min(1).max(z).refine(N),contentHash:m,sizeBytes:t.number().int().nonnegative().max(U),mediaType:t.string().trim().min(1).max(200),visibility:t.enum(["policy","verifier","host_private"])}).strict(),G=t.object({id:l,contentHash:m,mediaType:t.string().trim().min(1).max(200).nullable().default(null),sizeBytes:t.number().int().nonnegative().max(U).nullable().default(null)}).strict(),K=t.enum(["policy_failure","grader_failure","environment_failure","infrastructure_failure","timeout","cancelled"]);function B(n){return`${JSON.stringify(I(n),null,2)}
|
|
3
|
-
`}c(B,"canonicalJson");function C(n){return E(n)}c(C,"sha256");function P(n){return C(B(n))}c(P,"contentHash");function Q(n,a){let{contentHash:r,...d}=n,b=P(d);if(r!==b)throw new Error(`${a} contentHash is ${r}; expected ${b}.`)}c(Q,"assertContentHash");function N(n){let a=n.replaceAll("\\","/");return!a||a.startsWith("/")||a.includes("\0")?!1:!a.split("/").some(r=>!r||r==="."||r==="..")}c(N,"safeRelativePath");function I(n){return Array.isArray(n)?n.map(I):!n||typeof n!="object"?n:Object.fromEntries(Object.entries(n).sort(([a],[r])=>a.localeCompare(r)).map(([a,r])=>[a,I(r)]))}c(I,"sortValue");var ae=t.object({provider:l,model:l,revision:t.string().trim().min(1).max(500).nullable().default(null),artifactHash:m.nullable().default(null),tokenizerRevision:t.string().trim().min(1).max(500).nullable().default(null),chatTemplateHash:m.nullable().default(null)}).strict(),$=["openpond","codex","claude-code","grok-build","opencode","anthropic","openai","xai","google","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible"],k=t.enum($),oe=t.object({providerId:k,modelId:t.string().trim().min(1).max(300)});export{l as a,m as b,Y as c,q as d,M as e,F as f,W as g,G as h,K as i,B as j,C as k,P as l,Q as m,ae as n,$ as o,k as p,oe as q};
|