openpond 0.2.43 → 0.2.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/dist/app-server.d.ts +18127 -5586
  2. package/dist/app-server.js +1 -1
  3. package/dist/chunks/actions-command-CRDLSPFA.js +2 -0
  4. package/dist/chunks/{app-layer-OV7RVSQW.js → app-layer-MDJFV3HZ.js} +1 -1
  5. package/dist/chunks/app-server-runtime-PJONTCCO.js +2 -0
  6. package/dist/chunks/apps-MD2DKEDW.js +2 -0
  7. package/dist/chunks/{chunk-T5QA4W2H.js → chunk-25GCTLAZ.js} +5 -5
  8. package/dist/chunks/chunk-3BJ4P5LI.js +520 -0
  9. package/dist/chunks/chunk-3SRIPOJQ.js +2 -0
  10. package/dist/chunks/{chunk-7EDOA6KD.js → chunk-4EGDKOYP.js} +3 -3
  11. package/dist/chunks/{chunk-QUNRWDVO.js → chunk-5ZFEQLRI.js} +3 -3
  12. package/dist/chunks/chunk-6BL2ZIAP.js +184 -0
  13. package/dist/chunks/chunk-6QUICEQA.js +5 -0
  14. package/dist/chunks/chunk-7D2WMUWK.js +3 -0
  15. package/dist/chunks/chunk-7KIBRK3A.js +4 -0
  16. package/dist/chunks/{chunk-O277DPTX.js → chunk-B6LYKEMU.js} +1 -1
  17. package/dist/chunks/{chunk-ZG7QX66E.js → chunk-CR6CDOKS.js} +8 -8
  18. package/dist/chunks/chunk-CXS3WXL3.js +2 -0
  19. package/dist/chunks/chunk-DWGB536R.js +19 -0
  20. package/dist/chunks/{chunk-6UPCR6EL.js → chunk-EG55BFQ4.js} +1 -1
  21. package/dist/chunks/chunk-ELNJUG64.js +17 -0
  22. package/dist/chunks/{chunk-HI7W3IVO.js → chunk-FXIUKYUR.js} +12 -12
  23. package/dist/chunks/chunk-GEDEVI4Y.js +2 -0
  24. package/dist/chunks/chunk-H3C4ZYEA.js +16 -0
  25. package/dist/chunks/chunk-HUBI3RUK.js +2 -0
  26. package/dist/chunks/{chunk-IE2WZ3I3.js → chunk-IYRHG54Q.js} +1 -1
  27. package/dist/chunks/chunk-J65BMG5Q.js +2 -0
  28. package/dist/chunks/chunk-KOR2AZVB.js +24 -0
  29. package/dist/chunks/{chunk-LLNCHGE4.js → chunk-LL4QP2IM.js} +1 -1
  30. package/dist/chunks/chunk-M2YXYBSP.js +2 -0
  31. package/dist/chunks/chunk-NPOHW5OU.js +2 -0
  32. package/dist/chunks/{chunk-KRC2S5QF.js → chunk-NXUCGKY2.js} +3 -3
  33. package/dist/chunks/chunk-PDIT2QS7.js +8 -0
  34. package/dist/chunks/{chunk-T7MJBBHE.js → chunk-PGKEDR3S.js} +1 -1
  35. package/dist/chunks/chunk-QVRNOGAU.js +21 -0
  36. package/dist/chunks/chunk-TNXILYI6.js +2 -0
  37. package/dist/chunks/chunk-TVQE3JMI.js +2 -0
  38. package/dist/chunks/chunk-U6SFIFDM.js +2409 -0
  39. package/dist/chunks/chunk-V6WBSW5Q.js +3 -0
  40. package/dist/chunks/chunk-VESOG2SS.js +2 -0
  41. package/dist/chunks/chunk-VFTUP5NQ.js +2 -0
  42. package/dist/chunks/{chunk-G2WJC6DE.js → chunk-VVV5I22A.js} +2 -2
  43. package/dist/chunks/chunk-XPB6NY7L.js +42 -0
  44. package/dist/chunks/{chunk-VG7XO6PR.js → chunk-XWLI7WJH.js} +2 -24
  45. package/dist/chunks/{chunk-KIGN4FI6.js → chunk-YWX7FKLM.js} +1 -1
  46. package/dist/chunks/cli-BKBH6FZY.js +2 -0
  47. package/dist/chunks/{configuration-command-ANYM5UYG.js → configuration-command-75ZCMZ6X.js} +1 -1
  48. package/dist/chunks/connected-evidence-UPUVVQ6P.js +2 -0
  49. package/dist/chunks/{continual-MHMPLLUZ.js → continual-WWPXK2LO.js} +1 -1
  50. package/dist/chunks/core-commands-SS2GV7WU.js +2 -0
  51. package/dist/chunks/datasets-TCLXV34N.js +2 -0
  52. package/dist/chunks/desktop-test-7ZHZHUB6.js +3 -0
  53. package/dist/chunks/{dist-GC7DXKTI.js → dist-VDN6E54A.js} +1 -1
  54. package/dist/chunks/evaluation-coordination-ZX5GLMRC.js +2 -0
  55. package/dist/chunks/experiment-improvements-O6DCQXCX.js +2 -0
  56. package/dist/chunks/experiments-JOQOBQXY.js +2 -0
  57. package/dist/chunks/{extension-5LQRULQP.js → extension-3M2CSWZB.js} +1 -1
  58. package/dist/chunks/{help-NTSTG6RR.js → help-RLRU33WN.js} +1 -1
  59. package/dist/chunks/hosted-experiment-improvement-IKO677PI.js +3 -0
  60. package/dist/chunks/hosted-harness-runtime-H2Q2SNZT.js +2 -0
  61. package/dist/chunks/hosted-profile-candidate-FHHSLJNO.js +3 -0
  62. package/dist/chunks/hosted-profile-compiler-5B256VV3.js +2 -0
  63. package/dist/chunks/hosted-profile-evaluation-control-Z25TZOW4.js +2 -0
  64. package/dist/chunks/hosted-profile-evaluation-inspection-MFYPLTZQ.js +3 -0
  65. package/dist/chunks/hosted-profile-evaluation-preparation-MAB2PSCC.js +3 -0
  66. package/dist/chunks/human-review-6H3BW7OZ.js +2 -0
  67. package/dist/chunks/learning-Y6WNDVQW.js +2 -0
  68. package/dist/chunks/{opchat-77PRAQ5W.js → opchat-3E4FH3DC.js} +1 -1
  69. package/dist/chunks/{organizations-2KWTYIPU.js → organizations-PRVCUPMN.js} +1 -1
  70. package/dist/chunks/{profile-HVLH672B.js → profile-DC4UEVVG.js} +1 -1
  71. package/dist/chunks/project-agent-ZX3CELKI.js +2 -0
  72. package/dist/chunks/sandbox-command-HHQMZK3G.js +2 -0
  73. package/dist/chunks/{sandbox-template-QMB6DSTS.js → sandbox-template-DFHWHCIQ.js} +1 -1
  74. package/dist/chunks/{src-N447LUPO.js → src-CREVQF7M.js} +1 -1
  75. package/dist/chunks/src-MAZ7OBVY.js +327 -0
  76. package/dist/chunks/taskset-TB2ICAZU.js +2 -0
  77. package/dist/chunks/{teams-bot-RNHQMPQA.js → teams-bot-BNBL57S5.js} +1 -1
  78. package/dist/chunks/training-FW5FOGR3.js +2 -0
  79. package/dist/chunks/{workspaces-V5YTXJLV.js → workspaces-WTPFRJMS.js} +1 -1
  80. package/dist/cli.js +1 -1
  81. package/dist/index.js +1 -1
  82. package/dist/profile/local-profile.d.ts +2 -0
  83. package/dist/web/assets/App-BgeSqoRS.css +1 -0
  84. package/dist/web/assets/App-C6EWFrLP.js +227 -0
  85. package/dist/web/assets/{AppDialog-v-BfV1lA.js → AppDialog-Cgn_fTGR.js} +1 -1
  86. package/dist/web/assets/AppTerminalPanel-cNYkSvM2.js +2 -0
  87. package/dist/web/assets/{AppsView-Dl-37F0w.js → AppsView-9zpKBSLv.js} +1 -1
  88. package/dist/web/assets/{BrowserSidebar-DltF217k.js → BrowserSidebar-Xo21N1ej.js} +1 -1
  89. package/dist/web/assets/{CartesianChart-gK-Ll3kX.js → CartesianChart-Bg3Lm5mZ.js} +1 -1
  90. package/dist/web/assets/{CollaborationTabs-BuWquQYn.js → CollaborationTabs-BIfgIy5X.js} +1 -1
  91. package/dist/web/assets/{CommandMenu-Cs5S8t-Q.js → CommandMenu-D9BimyPx.js} +1 -1
  92. package/dist/web/assets/{CommunityView-BJBkQEMV.js → CommunityView-BoW-yLju.js} +1 -1
  93. package/dist/web/assets/{ComposerCreateImproveStrip-C36fKc-v.js → ComposerCreateImproveStrip-BIKVEgr1.js} +1 -1
  94. package/dist/web/assets/{GetStartedView-9A49MgYA.js → GetStartedView-B99v4-hh.js} +1 -1
  95. package/dist/web/assets/HostedModelLearningReview-DEScpX2Z.js +1 -0
  96. package/dist/web/assets/HostedModelLearningSettings-4HT5eEiL.js +1 -0
  97. package/dist/web/assets/LabModelVersionDetailPage-DkYdI7gr.js +1 -0
  98. package/dist/web/assets/{LabSkillSidebar-BAKym5GY.js → LabSkillSidebar-Bp5XYipm.js} +1 -1
  99. package/dist/web/assets/LabsRoute-ACN76d2j.css +1 -0
  100. package/dist/web/assets/LabsRoute-VopO7n34.js +105 -0
  101. package/dist/web/assets/MainChatThread-3Gg0oDZT.js +2 -0
  102. package/dist/web/assets/{MainPane-gPkr0OWu.js → MainPane-CUqMVG9-.js} +11 -11
  103. package/dist/web/assets/{MarkdownText-B-au2zEv.js → MarkdownText-De0WzrEw.js} +1 -1
  104. package/dist/web/assets/{NativeSkillSidebar-DHFKZ7P1.js → NativeSkillSidebar-B4jtf5RO.js} +1 -1
  105. package/dist/web/assets/{NewExperienceSwitcher-Dhbf5KJT.js → NewExperienceSwitcher-Bg1DVr96.js} +1 -1
  106. package/dist/web/assets/{NewProjectDialog-hlAzFK2Y.js → NewProjectDialog-i_wvIBw-.js} +1 -1
  107. package/dist/web/assets/{OutputsPage-C0N2rOxE.js → OutputsPage-CZiPxLyN.js} +1 -1
  108. package/dist/web/assets/{ProjectsPage-CkHBgLPx.js → ProjectsPage-BD0eml0M.js} +1 -1
  109. package/dist/web/assets/{RightChatPanelStack-BiW6ZzPN.js → RightChatPanelStack-CEBFPHKP.js} +1 -1
  110. package/dist/web/assets/{RightSidebarHomePanel-BS9YSdYB.js → RightSidebarHomePanel-BTpU5wGh.js} +1 -1
  111. package/dist/web/assets/{ScheduledWorkPage-819sQcDR.js → ScheduledWorkPage-Y6XGoh-X.js} +1 -1
  112. package/dist/web/assets/{SettingsView-BZrOUPZb.js → SettingsView-Kh14f463.js} +3 -3
  113. package/dist/web/assets/{TeamChatView-CUNcbSa7.js → TeamChatView-5LjuRNd6.js} +1 -1
  114. package/dist/web/assets/{TerminalOverlay-MIlGPpXe.js → TerminalOverlay-BCWBSotQ.js} +1 -1
  115. package/dist/web/assets/{TrainingCreationPanel-BNcyNoa8.js → TrainingCreationPanel-hvOHRVJx.js} +1 -1
  116. package/dist/web/assets/{TrainingDraftPanel-CKV16LNC.js → TrainingDraftPanel-CGEHGljE.js} +1 -1
  117. package/dist/web/assets/{UsageSettingsSection-SVgUHnUL.js → UsageSettingsSection-B8nbqhag.js} +1 -1
  118. package/dist/web/assets/{WorkSidebarPanel-CfkaaFHA.js → WorkSidebarPanel-B6hlPEIs.js} +1 -1
  119. package/dist/web/assets/{WorkspaceDiffPanel-CQhqlqg5.js → WorkspaceDiffPanel-q8A15-0x.js} +9 -9
  120. package/dist/web/assets/{WorkspaceEnvironmentMenu-CJB-z2tS.js → WorkspaceEnvironmentMenu-BiFTPWtC.js} +1 -1
  121. package/dist/web/assets/{WorkspaceGitDialogs-B3xtasTt.js → WorkspaceGitDialogs-Dyx4Rbiy.js} +1 -1
  122. package/dist/web/assets/{WorkspaceMonacoEditor-DVfyICNZ.js → WorkspaceMonacoEditor-B1dKexHo.js} +60 -60
  123. package/dist/web/assets/{arrow-up-right-CYG4Vm07.js → arrow-up-right-CCj7SOGp.js} +1 -1
  124. package/dist/web/assets/chunk-DJWHN7NU-1eQoMoKO.js +1 -0
  125. package/dist/web/assets/{clipboard-DGSnfljX.js → clipboard-BY6ELc9Z.js} +1 -1
  126. package/dist/web/assets/{cloud-upload-Bw_zrS2y.js → cloud-upload-BOka5EKK.js} +1 -1
  127. package/dist/web/assets/cssMode-C34j8ti5.js +1 -0
  128. package/dist/web/assets/{folder-open-CcGOldH7.js → folder-open-CX2jidFj.js} +1 -1
  129. package/dist/web/assets/{folder-plus-DEIDaX2B.js → folder-plus-Dh2Q9LP3.js} +1 -1
  130. package/dist/web/assets/{git-commit-horizontal-B-Ao6y--.js → git-commit-horizontal-CfevriuT.js} +1 -1
  131. package/dist/web/assets/htmlMode-BORwVkZg.js +1 -0
  132. package/dist/web/assets/index-B9VSiz_z.css +1 -0
  133. package/dist/web/assets/{index-C8_8-lW7.js → index-BBjRfC--.js} +6 -6
  134. package/dist/web/assets/{info-DwOXHkN_.js → info-Bv3dbs3G.js} +1 -1
  135. package/dist/web/assets/{jsonMode-txmGM7K6.js → jsonMode-BYWtZ6AK.js} +4 -4
  136. package/dist/web/assets/{lspLanguageFeatures-D59Drc_9.js → lspLanguageFeatures-CEAdFSpU.js} +1 -1
  137. package/dist/web/assets/{minimize-2-C5UCV16_.js → minimize-2-MhorZwY5.js} +1 -1
  138. package/dist/web/assets/{monaco.contribution-BOmcYK8k.js → monaco.contribution-CDhPpbIo.js} +2 -2
  139. package/dist/web/assets/{monaco.contribution-CbK7796k.js → monaco.contribution-CN7AWJNd.js} +2 -2
  140. package/dist/web/assets/monaco.contribution-DHA7FuJX.js +2 -0
  141. package/dist/web/assets/{monaco.contribution-5HcktwaM.js → monaco.contribution-ZUUVx_3M.js} +2 -2
  142. package/dist/web/assets/{monitor-D4hpNTai.js → monitor-DLcrkfM5.js} +1 -1
  143. package/dist/web/assets/{python-Cie4Ghu8.js → python-CXwvPmc4.js} +1 -1
  144. package/dist/web/assets/{refresh-cw-CIOzrJnj.js → refresh-cw-BTfIxHb3.js} +1 -1
  145. package/dist/web/assets/{save-D7EtdMHG.js → save-DaN65kMq.js} +1 -1
  146. package/dist/web/assets/{square-JpDfrqp_.js → square-zRgIUdSv.js} +1 -1
  147. package/dist/web/assets/toggleHighContrast-BgpFWRpS.css +1 -0
  148. package/dist/web/assets/{toggleHighContrast-DdGkc-Be.js → toggleHighContrast-DWeRZFzr.js} +1 -1
  149. package/dist/web/assets/{tsMode-DwgEL7oI.js → tsMode-nLBhKngY.js} +1 -1
  150. package/dist/web/assets/{upload-BkwOzqS-.js → upload-BfUu4Eu1.js} +1 -1
  151. package/dist/web/assets/{useLocalAgentSchedules-bO0Qycih.js → useLocalAgentSchedules-BCITWhg2.js} +1 -1
  152. package/dist/web/assets/{useSessionTurnCache-DxUh5scW.js → useSessionTurnCache-BQMWfV8u.js} +1 -1
  153. package/dist/web/assets/{wifi-off-D6Keejtn.js → wifi-off-bdka5es5.js} +1 -1
  154. package/dist/web/assets/{workers-BgG66q0n.js → workers-z7XHFFNs.js} +1 -1
  155. package/dist/web/assets/{yaml-COMRGPWg.js → yaml-BTr4i4DD.js} +1 -1
  156. package/dist/web/index.html +5 -5
  157. package/docs/command-reference.md +85 -1
  158. package/package.json +6 -2
  159. package/dist/chunks/actions-command-DWQ3VGGP.js +0 -2
  160. package/dist/chunks/app-server-runtime-JVLXE5LF.js +0 -2
  161. package/dist/chunks/apps-5DQAYDNI.js +0 -2
  162. package/dist/chunks/chunk-3D4QN4NM.js +0 -19
  163. package/dist/chunks/chunk-45UOD2DA.js +0 -2
  164. package/dist/chunks/chunk-5IN3HQJU.js +0 -2
  165. package/dist/chunks/chunk-6KKQXETR.js +0 -5
  166. package/dist/chunks/chunk-6XF4GI35.js +0 -2
  167. package/dist/chunks/chunk-7KC5LWCU.js +0 -2
  168. package/dist/chunks/chunk-7R7O2XXP.js +0 -2
  169. package/dist/chunks/chunk-DGD52VZC.js +0 -13
  170. package/dist/chunks/chunk-E6WT4HWF.js +0 -3
  171. package/dist/chunks/chunk-EWQZASG4.js +0 -2400
  172. package/dist/chunks/chunk-IFI24VF6.js +0 -5
  173. package/dist/chunks/chunk-KDOS6YMH.js +0 -2
  174. package/dist/chunks/chunk-MDE3HHLH.js +0 -2
  175. package/dist/chunks/chunk-P45OSKQL.js +0 -4
  176. package/dist/chunks/chunk-ROJX6IYW.js +0 -578
  177. package/dist/chunks/chunk-SXN3QOW4.js +0 -3
  178. package/dist/chunks/chunk-V44RF57H.js +0 -2
  179. package/dist/chunks/chunk-VJJ3UXOI.js +0 -42
  180. package/dist/chunks/chunk-W3NG7YLC.js +0 -8
  181. package/dist/chunks/chunk-XMKAMR7M.js +0 -2
  182. package/dist/chunks/cli-7D7CYCIY.js +0 -2
  183. package/dist/chunks/core-commands-TYWE3TNW.js +0 -2
  184. package/dist/chunks/datasets-FM3UBK4R.js +0 -13
  185. package/dist/chunks/desktop-test-Z5IKJU3P.js +0 -3
  186. package/dist/chunks/experiments-IWBRIDQE.js +0 -2
  187. package/dist/chunks/hosted-harness-runtime-S75BLD57.js +0 -2
  188. package/dist/chunks/hosted-profile-compiler-JNNYWLC7.js +0 -2
  189. package/dist/chunks/hosted-profile-evaluation-control-IK4Y2EQZ.js +0 -2
  190. package/dist/chunks/hosted-profile-evaluation-inspection-YWKUB7RT.js +0 -3
  191. package/dist/chunks/hosted-profile-evaluation-preparation-JXOF73BB.js +0 -3
  192. package/dist/chunks/project-agent-7NLKJMAM.js +0 -2
  193. package/dist/chunks/sandbox-command-FNS4JBVC.js +0 -2
  194. package/dist/chunks/src-TZBL6NA7.js +0 -325
  195. package/dist/chunks/taskset-BZYQT65N.js +0 -2
  196. package/dist/chunks/training-7PST5HZU.js +0 -2
  197. package/dist/web/assets/App-7h_oHCFd.css +0 -1
  198. package/dist/web/assets/App-BEQmrTGQ.js +0 -226
  199. package/dist/web/assets/AppTerminalPanel-CnKcllS2.js +0 -2
  200. package/dist/web/assets/HostedModelLearningReview-JgxDUDio.js +0 -1
  201. package/dist/web/assets/HostedModelLearningSettings-CH7CsAhw.js +0 -1
  202. package/dist/web/assets/LabModelVersionDetailPage-N2qcy1Yv.js +0 -1
  203. package/dist/web/assets/LabsRoute-DooCmsN8.css +0 -1
  204. package/dist/web/assets/LabsRoute-Y992kQoQ.js +0 -52
  205. package/dist/web/assets/MainChatThread-CPhREQso.js +0 -2
  206. package/dist/web/assets/cssMode-CSpYOKj-.js +0 -1
  207. package/dist/web/assets/htmlMode-DstkgJXG.js +0 -1
  208. package/dist/web/assets/index-DUIWDN8o.css +0 -1
  209. package/dist/web/assets/monaco.contribution-BomZ1gys.js +0 -2
  210. package/dist/web/assets/toggleHighContrast-B7NOMXDY.css +0 -1
@@ -1,3 +0,0 @@
1
- import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{b as E}from"./chunk-MDE3HHLH.js";import{a as u,b as v,c as R,e as P,l as m}from"./chunk-HZP5U2AA.js";import{b as n}from"./chunk-ES2ISFJC.js";import{a as f}from"./chunk-FTQLQJQV.js";var C=n.object({profileId:u,sourceRevision:n.string().trim().min(1).max(240),harnessRelease:P}).strict(),I=n.object({kind:n.enum(["run","suite","comparison"]),id:u,contentHash:v}).strict(),g=n.object({schemaVersion:n.literal("openpond.profileEvaluationReport.v1"),id:u,createdAt:R,testedSources:n.array(C).min(1).max(100),tasksetReleases:n.array(P).min(1).max(100),metricPolicyHashes:n.array(v).min(1).max(100),modelConfigurationHashes:n.array(v).min(1).max(100),evidence:n.array(I).min(1).max(100),summary:n.object({totalChecks:n.number().int().nonnegative(),passedChecks:n.number().int().nonnegative(),failedChecks:n.number().int().nonnegative(),unscoredChecks:n.number().int().nonnegative(),meanScore:n.number().min(0).max(1).nullable()}).strict()}).strict().superRefine((e,i)=>{let{summary:t}=e;t.passedChecks+t.failedChecks+t.unscoredChecks!==t.totalChecks&&i.addIssue({code:"custom",path:["summary"],message:"Report check counts must add up."}),new Set(e.evidence.map(({kind:l,id:a})=>`${l}:${a}`)).size!==e.evidence.length&&i.addIssue({code:"custom",path:["evidence"],message:"Report evidence must be unique."})}),w=g.safeExtend({contentHash:v});function S(e){let i=g.parse(e);return w.parse({...i,contentHash:m(i)})}f(S,"createProfileEvaluationReport");function y(e){let i=w.parse(e),{contentHash:t,...l}=i;if(m(l)!==t)throw new Error("Profile evaluation report content hash differs from its source bytes.");return i}f(y,"assertProfileEvaluationReport");var x=n.object({id:u,runIds:n.array(u).min(2).max(100)}).strict();function z(e){return async i=>{let t=x.parse(i),l=await e.selectedProfile();if(!l)throw new Error("Select a Profile before comparing its evaluation runs.");let a=[];for(let r of t.runIds){let s=await e.store.getProfileEvaluationRun(r);if(!s||m(s.profileRef)!==m(l.ref))throw new Error(`Profile evaluation run ${r} is unavailable in the selected Profile.`);a.push({manifest:s.manifest,result:s.metric})}let o=await e.store.getProfileEvaluationComparison(t.id),c=E({id:t.id,members:a,createdAt:o?.createdAt??new Date().toISOString()});return e.store.saveProfileEvaluationComparison(l.ref,c)}}f(z,"createProfileEvaluationComparisonService");import{promises as d}from"node:fs";import h from"node:path";var j=n.object({id:u,evidenceKind:n.enum(["run","suite","comparison"]),evidenceId:u}).strict();function k(e){return h.join(e,"evals","reports")}f(k,"reportDirectory");async function b(e){let i=await d.lstat(e).catch(t=>{if(t.code==="ENOENT")return null;throw t});if(i&&(!i.isDirectory()||i.isSymbolicLink()))throw new Error("Profile evaluation report directory must be a regular directory.");i||await d.mkdir(e)}f(b,"ensureRegularDirectory");async function K(e){let i,t;if(e.evidenceKind==="run")i=[e.evidenceId],t="";else if(e.evidenceKind==="suite"){let o=await e.store.getProfileEvaluationSuiteRun(e.evidenceId);if(!o||o.profileId!==e.profileRef.profileId)throw new Error("Profile evaluation suite is unavailable.");i=o.members.map(c=>c.runManifest.id),t=o.contentHash}else{let o=await e.store.getProfileEvaluationComparison(e.evidenceId);if(!o)throw new Error("Profile evaluation comparison is unavailable.");i=o.members.map(c=>c.runManifest.id),t=o.contentHash}let l=await Promise.all(i.map(o=>e.store.getProfileEvaluationRun(o)));if(l.some(o=>!o||m(o.profileRef)!==m(e.profileRef)))throw new Error("Profile evaluation report is missing authorized run evidence.");let a=l;if(e.evidenceKind==="run"&&(t=a[0].contentHash),e.evidenceKind!=="run"){let o=e.evidenceKind==="suite"?(await e.store.getProfileEvaluationSuiteRun(e.evidenceId)).members.map(c=>c.runHash):(await e.store.getProfileEvaluationComparison(e.evidenceId)).members.map(c=>c.metricResultHash);for(let[c,r]of a.entries())if(e.evidenceKind==="suite"&&o[c]!==r.contentHash||e.evidenceKind==="comparison"&&o[c]!==r.metric.contentHash)throw new Error("Profile evaluation report evidence differs from retained member runs.")}return{runs:a,primary:{kind:e.evidenceKind,id:e.evidenceId,contentHash:t}}}f(K,"loadRuns");async function O(e){let i=j.parse(e.request),{runs:t,primary:l}=await K({store:e.store,profileRef:e.profileRef,evidenceKind:i.evidenceKind,evidenceId:i.evidenceId}),a=f(r=>[...new Map(r.map(s=>[m(s),s])).values()],"unique"),o=a(t.map(r=>m(r.manifest.metricPolicy))),c=t.map(r=>r.metric.value).filter(r=>r!==null);return S({schemaVersion:"openpond.profileEvaluationReport.v1",id:i.id,createdAt:new Date().toISOString(),testedSources:a(t.map(r=>({profileId:r.manifest.profileEvaluation.profileId,sourceRevision:r.manifest.profileEvaluation.sourceRevision,harnessRelease:r.manifest.profileEvaluation.harnessRelease}))),tasksetReleases:a(t.map(r=>r.manifest.tasksetRelease)),metricPolicyHashes:o,modelConfigurationHashes:a(t.map(r=>r.manifest.policy.kind==="model"?r.manifest.policy.configurationHash:m(r.manifest.policy))),evidence:[l,...t.filter(r=>l.kind!=="run"||r.manifest.id!==l.id).map(r=>({kind:"run",id:r.manifest.id,contentHash:r.contentHash}))],summary:{totalChecks:t.length,passedChecks:t.filter(r=>r.passed).length,failedChecks:t.filter(r=>!r.passed&&r.metric.value!==null).length,unscoredChecks:t.filter(r=>!r.passed&&r.metric.value===null).length,meanScore:o.length===1&&c.length===t.length?c.reduce((r,s)=>r+s,0)/c.length:null}})}f(O,"buildProfileEvaluationReport");function Q(e){return{list:f(async()=>{let l=await e.selectedProfile();if(!l)return[];let a=k(l.sourcePath),o=await d.lstat(a).catch(s=>{if(s.code==="ENOENT")return null;throw s});if(!o)return[];if(!o.isDirectory()||o.isSymbolicLink())throw new Error("Profile evaluation report directory is unsafe.");let c=await d.readdir(a,{withFileTypes:!0});return(await Promise.all(c.filter(s=>s.name.endsWith(".json")).map(async s=>{if(!s.isFile()||s.isSymbolicLink())throw new Error("Profile evaluation report must be a regular file.");let p=y(JSON.parse(await d.readFile(h.join(a,s.name),"utf8")));if(`${p.id}.json`!==s.name||p.testedSources.some(H=>H.profileId!==l.ref.profileId))throw new Error("Profile evaluation report differs from its source location.");return p}))).sort((s,p)=>p.createdAt.localeCompare(s.createdAt))},"list"),save:f(async l=>{let a=await e.selectedProfile();if(!a?.gitBacked)throw new Error("Select a Git-backed Profile before saving an evaluation report.");let o=await O({store:e.store,profileRef:a.ref,request:l}),c=h.join(a.sourcePath,"evals");await b(c);let r=k(a.sourcePath);return await b(r),await d.writeFile(h.join(r,`${o.id}.json`),`${JSON.stringify(o,null,2)}
3
- `,{flag:"wx"}),o},"save")}}f(Q,"createProfileEvaluationReportService");export{z as a,O as b,Q as c};