openpond 0.2.71 → 0.2.72

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 (274) hide show
  1. package/dist/app-server.js +1 -1
  2. package/dist/chunks/{acp-VWPJ2EL4.js → acp-7A2UPCG5.js} +1 -1
  3. package/dist/chunks/{acp-agent-OZHZMQ6R.js → acp-agent-AGALGR6V.js} +1 -1
  4. package/dist/chunks/{app-layer-OHPIYEOJ.js → app-layer-DUCNCJ2X.js} +1 -1
  5. package/dist/chunks/{app-server-evaluations-Y5UEF2Y7.js → app-server-evaluations-SNWXULKD.js} +1 -1
  6. package/dist/chunks/{app-server-harness-services-GUHAIIPS.js → app-server-harness-services-YNMGMKPK.js} +1 -1
  7. package/dist/chunks/{app-server-runtime-CH5STRJP.js → app-server-runtime-BKJ7L6JZ.js} +1 -1
  8. package/dist/chunks/{apps-DNLT6P4J.js → apps-2OWE23BH.js} +1 -1
  9. package/dist/chunks/chunk-2Q2AWPP2.js +2 -0
  10. package/dist/chunks/{chunk-WXG3G2O6.js → chunk-2THZ6GZY.js} +1 -1
  11. package/dist/chunks/{chunk-3JYPUOK4.js → chunk-4JKWCLTQ.js} +1 -1
  12. package/dist/chunks/{chunk-D2V2Y3FB.js → chunk-5TPJ5ECJ.js} +1 -1
  13. package/dist/chunks/{chunk-O5ZOW474.js → chunk-5TTQCT3G.js} +1 -1
  14. package/dist/chunks/{chunk-AVEHWUML.js → chunk-5WFKBZCU.js} +1 -1
  15. package/dist/chunks/{chunk-VJYOKU3C.js → chunk-6OD2FKUS.js} +1 -1
  16. package/dist/chunks/{chunk-SSHE6B7Z.js → chunk-AITV76GO.js} +1 -1
  17. package/dist/chunks/{chunk-PLROXHG2.js → chunk-ATI52WMB.js} +1 -1
  18. package/dist/chunks/{chunk-XJU47QS2.js → chunk-AWD72O3G.js} +1 -1
  19. package/dist/chunks/{chunk-HUMNLSCV.js → chunk-BUMCJHQP.js} +1 -1
  20. package/dist/chunks/{chunk-OTG77H7U.js → chunk-CAYKEJJY.js} +1 -1
  21. package/dist/chunks/{chunk-WAUFXZ5B.js → chunk-CHRED2FK.js} +1 -1
  22. package/dist/chunks/{chunk-USTDWGR4.js → chunk-CQRA5TXF.js} +1 -1
  23. package/dist/chunks/{chunk-ESOIZG2G.js → chunk-CX4U32VO.js} +4 -4
  24. package/dist/chunks/{chunk-PXQZOVSV.js → chunk-DFSQ5HZ7.js} +1 -1
  25. package/dist/chunks/{chunk-GUWNSMGH.js → chunk-EHMA5XS7.js} +1 -1
  26. package/dist/chunks/{chunk-5LKEVB2P.js → chunk-ENY24ZBB.js} +1 -1
  27. package/dist/chunks/{chunk-PJJSQ4ZI.js → chunk-F3IEAU7O.js} +1 -1
  28. package/dist/chunks/{chunk-B7SCVTE6.js → chunk-FOAM3YZQ.js} +1 -1
  29. package/dist/chunks/{chunk-VV4K5YPD.js → chunk-GPGXBKXU.js} +1 -1
  30. package/dist/chunks/{chunk-LMLGEOKV.js → chunk-HA762QYM.js} +1 -1
  31. package/dist/chunks/{chunk-XNPTLJ5Z.js → chunk-HBGTHOOB.js} +1 -1
  32. package/dist/chunks/{chunk-ER2VONWQ.js → chunk-IA6CTX7A.js} +1 -1
  33. package/dist/chunks/{chunk-23YW5PAQ.js → chunk-JALL5NPH.js} +1 -1
  34. package/dist/chunks/{chunk-OQ4RWCYI.js → chunk-JSDGOQ5U.js} +1 -1
  35. package/dist/chunks/{chunk-F2EUZG2W.js → chunk-KOIXRLZZ.js} +1 -1
  36. package/dist/chunks/{chunk-ZG3DBXQG.js → chunk-KRJZ5CW3.js} +1 -1
  37. package/dist/chunks/{chunk-OKPV6MBX.js → chunk-KTQWWCP2.js} +6 -6
  38. package/dist/chunks/{chunk-VND53FAU.js → chunk-KUEVP7WM.js} +1 -1
  39. package/dist/chunks/{chunk-U7D6Q744.js → chunk-L5L3H6CI.js} +1 -1
  40. package/dist/chunks/{chunk-TWLPZHH7.js → chunk-LHTRQAPZ.js} +1 -1
  41. package/dist/chunks/{chunk-SNBFWBJI.js → chunk-MLLMLXKG.js} +1 -1
  42. package/dist/chunks/{chunk-KASHK2U5.js → chunk-MPXOPL7R.js} +1 -1
  43. package/dist/chunks/{chunk-PHZZBXDO.js → chunk-MQMMJKOZ.js} +1 -1
  44. package/dist/chunks/{chunk-USKCFST5.js → chunk-MWPMYCYB.js} +1 -1
  45. package/dist/chunks/{chunk-DNNWMOMG.js → chunk-N5FT6PTI.js} +1 -1
  46. package/dist/chunks/{chunk-RJY4EI46.js → chunk-PYPXP5R3.js} +1 -1
  47. package/dist/chunks/{chunk-SRJTQS2D.js → chunk-QKBMXL4D.js} +3 -3
  48. package/dist/chunks/{chunk-7PDF2UX2.js → chunk-RIFWD5XM.js} +1 -1
  49. package/dist/chunks/{chunk-IFMWAOBR.js → chunk-RWBP2H4M.js} +1 -1
  50. package/dist/chunks/{chunk-7SOHV5BH.js → chunk-S5ACNR5Y.js} +1 -1
  51. package/dist/chunks/{chunk-3JVZ7OCQ.js → chunk-SRK4WX7D.js} +1 -1
  52. package/dist/chunks/{chunk-33UVQ7DU.js → chunk-T6ML5SCD.js} +1 -1
  53. package/dist/chunks/{chunk-UMRQKE3W.js → chunk-TD5YYA5Z.js} +1 -1
  54. package/dist/chunks/{chunk-OEAKX5TS.js → chunk-TR5UC5AF.js} +1 -1
  55. package/dist/chunks/{chunk-UKTPX2EE.js → chunk-UCPD526R.js} +1 -1
  56. package/dist/chunks/{chunk-RP4DPUN2.js → chunk-UZE3C2SF.js} +1 -1
  57. package/dist/chunks/{chunk-XBAB3HMA.js → chunk-V4VM2R6D.js} +1 -1
  58. package/dist/chunks/{chunk-ASMQTMQB.js → chunk-VMBWCIGG.js} +1 -1
  59. package/dist/chunks/{chunk-OFV26C2U.js → chunk-VXFGSFIE.js} +2 -2
  60. package/dist/chunks/{chunk-IJJ7FYZE.js → chunk-W4JBPYGW.js} +1 -1
  61. package/dist/chunks/{chunk-E57PUTV2.js → chunk-WMJEQK4G.js} +1 -1
  62. package/dist/chunks/{chunk-AT3ZYNX4.js → chunk-X2MJFTLS.js} +1 -1
  63. package/dist/chunks/{chunk-QN4CFJQC.js → chunk-X7ZMUWJO.js} +1 -1
  64. package/dist/chunks/{chunk-6BTX66SV.js → chunk-ZSWATWK2.js} +1 -1
  65. package/dist/chunks/{cli-5JARGJOD.js → cli-KXU5DNVV.js} +1 -1
  66. package/dist/chunks/{command-AI3SMEAH.js → command-X35I53H3.js} +3 -3
  67. package/dist/chunks/{configuration-command-NPA46ZOT.js → configuration-command-VJUK34UQ.js} +1 -1
  68. package/dist/chunks/{connected-app-executor-DLC23O43.js → connected-app-executor-JBFJF2H5.js} +1 -1
  69. package/dist/chunks/{connected-evidence-TVORI55Q.js → connected-evidence-CQ533AML.js} +1 -1
  70. package/dist/chunks/{connected-starting-assets-WGGBWH4K.js → connected-starting-assets-RL5X6LZ7.js} +1 -1
  71. package/dist/chunks/{continual-UHQI2EQD.js → continual-PHGIZFF6.js} +1 -1
  72. package/dist/chunks/{core-commands-QNZUBKOC.js → core-commands-5DYMDWXY.js} +1 -1
  73. package/dist/chunks/{dataset-preparation-authoring-OBMJLGA4.js → dataset-preparation-authoring-UDSX33YK.js} +1 -1
  74. package/dist/chunks/{datasets-USJLJOEQ.js → datasets-BW4JFUUU.js} +1 -1
  75. package/dist/chunks/{desktop-test-IYHAOR47.js → desktop-test-RIG4CB2Z.js} +1 -1
  76. package/dist/chunks/{evaluation-coordination-UJENK4WQ.js → evaluation-coordination-6QJ6XTUX.js} +1 -1
  77. package/dist/chunks/{experiment-improvements-6GJMKIER.js → experiment-improvements-2XF63AQ4.js} +1 -1
  78. package/dist/chunks/{experiments-FZHILSC6.js → experiments-3S2BVNK6.js} +1 -1
  79. package/dist/chunks/{experiments-signal-E32CWBS4.js → experiments-signal-IRBHGGW5.js} +1 -1
  80. package/dist/chunks/{help-32DLAPJR.js → help-Q2VMJVTR.js} +1 -1
  81. package/dist/chunks/{host-profile-evaluation-tools-QAV2UGSB.js → host-profile-evaluation-tools-5LZQHA32.js} +1 -1
  82. package/dist/chunks/{hosted-app-server-composition-5DVBKNV3.js → hosted-app-server-composition-AYZM2HY6.js} +1 -1
  83. package/dist/chunks/{hosted-experiment-improvement-YQ24C54D.js → hosted-experiment-improvement-SMZJYRJ7.js} +1 -1
  84. package/dist/chunks/{hosted-harness-runtime-KLIORGWV.js → hosted-harness-runtime-QWIFAITG.js} +1 -1
  85. package/dist/chunks/{hosted-profile-candidate-RCWFLOVJ.js → hosted-profile-candidate-WOMWAE5N.js} +1 -1
  86. package/dist/chunks/{hosted-profile-compiler-UDG4BCEW.js → hosted-profile-compiler-NZ2BXN32.js} +1 -1
  87. package/dist/chunks/{hosted-profile-evaluation-control-4R3L4FTK.js → hosted-profile-evaluation-control-3ECFFM7E.js} +1 -1
  88. package/dist/chunks/{hosted-profile-evaluation-inspection-NA4SSY7N.js → hosted-profile-evaluation-inspection-TM7RKONG.js} +1 -1
  89. package/dist/chunks/{hosted-profile-evaluation-preparation-B4BW6JTB.js → hosted-profile-evaluation-preparation-2MZIRT75.js} +1 -1
  90. package/dist/chunks/{human-review-D6QCZLYN.js → human-review-PG4WWVWV.js} +1 -1
  91. package/dist/chunks/{import-UCG75PN5.js → import-FAZAVZBF.js} +1 -1
  92. package/dist/chunks/{local-harness-improvement-runtime-GZBMBZB2.js → local-harness-improvement-runtime-OYLTKMJU.js} +1 -1
  93. package/dist/chunks/{local-harness-taskset-review-YVP2ZQJG.js → local-harness-taskset-review-I7YU4RZI.js} +1 -1
  94. package/dist/chunks/{opchat-APJUUTT7.js → opchat-TCZA6373.js} +1 -1
  95. package/dist/chunks/{opchat-bounded-chat-PBUSUAY2.js → opchat-bounded-chat-GMYDXLWB.js} +1 -1
  96. package/dist/chunks/{organizations-WK6EZ6L3.js → organizations-PYKGA2P2.js} +1 -1
  97. package/dist/chunks/{profile-BQMS7ALQ.js → profile-GYYI555I.js} +1 -1
  98. package/dist/chunks/{project-action-payload-CGV77JSA.js → project-action-payload-FE6M2OXJ.js} +1 -1
  99. package/dist/chunks/{project-agent-XVFYTEUQ.js → project-agent-4ISJFMJD.js} +1 -1
  100. package/dist/chunks/{published-experiment-source-2CYFIRBL.js → published-experiment-source-E2YAJCLM.js} +1 -1
  101. package/dist/chunks/{refiner-profile-service-OLJHA4DI.js → refiner-profile-service-LKGXD5WJ.js} +1 -1
  102. package/dist/chunks/{runtime-32KYSVZR.js → runtime-UDLOZD4Y.js} +2 -2
  103. package/dist/chunks/{sandbox-command-OY3VZXGG.js → sandbox-command-4J6DAY7T.js} +1 -1
  104. package/dist/chunks/{sandbox-template-YOOSJ4FK.js → sandbox-template-TSXWJMWG.js} +1 -1
  105. package/dist/chunks/{saved-work-L4KNWLZB.js → saved-work-QTEBKVUB.js} +1 -1
  106. package/dist/chunks/{send-turn-YLY3YNEQ.js → send-turn-4MH4WMLW.js} +1 -1
  107. package/dist/chunks/{setup-EU6CMRXQ.js → setup-IVT2FQSE.js} +1 -1
  108. package/dist/chunks/{src-HYOTHMRX.js → src-DC7N2H7A.js} +2 -2
  109. package/dist/chunks/{src-3DJR7OAH.js → src-TOSQX36I.js} +1 -1
  110. package/dist/chunks/{store-chat-resources-HISLEZZM.js → store-chat-resources-QLXKKYYC.js} +1 -1
  111. package/dist/chunks/{store-continual-support-reviews-ORWHS57V.js → store-continual-support-reviews-4F2BOG3H.js} +1 -1
  112. package/dist/chunks/{store-conversation-serving-5UGYKEGJ.js → store-conversation-serving-EUD47W6X.js} +1 -1
  113. package/dist/chunks/{store-create-improve-APLPTVYQ.js → store-create-improve-QUOTNNIM.js} +1 -1
  114. package/dist/chunks/{store-datasets-HDW6IYBL.js → store-datasets-ZUC7CNVO.js} +1 -1
  115. package/dist/chunks/{store-evaluation-results-KB2UDCF3.js → store-evaluation-results-LHHPHESK.js} +1 -1
  116. package/dist/chunks/{store-human-review-IURNTX3C.js → store-human-review-7WZWRJ6X.js} +1 -1
  117. package/dist/chunks/{store-learned-preference-migration-validation-TH2LKQWV.js → store-learned-preference-migration-validation-MVNKBR4X.js} +1 -1
  118. package/dist/chunks/{store-local-experiments-M4V5RLHJ.js → store-local-experiments-HB53QFLL.js} +1 -1
  119. package/dist/chunks/{store-model-batch-review-DDZLWVTG.js → store-model-batch-review-O3I6GIAA.js} +1 -1
  120. package/dist/chunks/{store-model-configuration-ATOFA5OH.js → store-model-configuration-CDIGNU6Q.js} +1 -1
  121. package/dist/chunks/{store-model-project-preparation-ZRSCQEQR.js → store-model-project-preparation-QMQ2HMJV.js} +1 -1
  122. package/dist/chunks/{store-modification-recordings-YJIDUPVJ.js → store-modification-recordings-W4VEZKKQ.js} +1 -1
  123. package/dist/chunks/{store-sidebar-file-bookmarks-WLMYDA4E.js → store-sidebar-file-bookmarks-KAEDHVVF.js} +1 -1
  124. package/dist/chunks/{store-sidebar-preferences-AFMYIDWT.js → store-sidebar-preferences-QPBLTHY6.js} +1 -1
  125. package/dist/chunks/{store-subagents-KFPVSTRO.js → store-subagents-ZELQP3MX.js} +1 -1
  126. package/dist/chunks/{store-task-inbox-L53OT6ZC.js → store-task-inbox-4ZDQR2E7.js} +1 -1
  127. package/dist/chunks/{store-task-inventory-R2JJGAHW.js → store-task-inventory-CTIJDLYE.js} +1 -1
  128. package/dist/chunks/{store-taskset-drafts-FPNJPFPO.js → store-taskset-drafts-FRPBYLTW.js} +1 -1
  129. package/dist/chunks/{store-training-DIBW7OMP.js → store-training-WQAYUT7B.js} +1 -1
  130. package/dist/chunks/{store-training-jobs-K7I4SXWW.js → store-training-jobs-O5EHGTH7.js} +1 -1
  131. package/dist/chunks/{store-training-models-LCSB37YY.js → store-training-models-YSZMC66T.js} +1 -1
  132. package/dist/chunks/{taskset-XI5SJBJL.js → taskset-OVYM4QMS.js} +1 -1
  133. package/dist/chunks/{teams-bot-CYC5TR64.js → teams-bot-U2M3ORWR.js} +1 -1
  134. package/dist/chunks/{tool-learning-52QZIJIR.js → tool-learning-NXVR4YPA.js} +1 -1
  135. package/dist/chunks/{training-GDLLLXSV.js → training-EQ7G5FDY.js} +1 -1
  136. package/dist/chunks/{training-RL7UUBER.js → training-LQUAL4Y4.js} +1 -1
  137. package/dist/chunks/{training-UJ62NOJJ.js → training-PEZYJ2SN.js} +1 -1
  138. package/dist/chunks/{training-hosted-V5CHG3M3.js → training-hosted-XKSUTMLQ.js} +1 -1
  139. package/dist/chunks/{training-hosted-alphaedit-R5PVATV4.js → training-hosted-alphaedit-VCOEYLKK.js} +1 -1
  140. package/dist/chunks/{training-hosted-decision-WNK5DE3M.js → training-hosted-decision-IKWWXA56.js} +1 -1
  141. package/dist/chunks/{training-hosted-engram-ZQDOKXAV.js → training-hosted-engram-3TOPPVSW.js} +1 -1
  142. package/dist/chunks/{training-hosted-modification-comparison-KKI5CKOH.js → training-hosted-modification-comparison-C6S4JFHW.js} +1 -1
  143. package/dist/chunks/{training-hosted-neuron-training-CFWEDRSR.js → training-hosted-neuron-training-EP2U4PHG.js} +1 -1
  144. package/dist/chunks/{training-hosted-serving-report-N4NF5AVW.js → training-hosted-serving-report-KJMRZJLQ.js} +1 -1
  145. package/dist/chunks/{training-hosted-steering-4MDUQ2YV.js → training-hosted-steering-I27DV6A2.js} +1 -1
  146. package/dist/chunks/{training-model-start-NOA6TYQK.js → training-model-start-NWXNGRDC.js} +1 -1
  147. package/dist/chunks/{workspaces-EK62ANTB.js → workspaces-FVQYJPOS.js} +1 -1
  148. package/dist/cli.js +1 -1
  149. package/dist/skills/manifest.json +1 -1
  150. package/dist/web/assets/{App-L7RV4D0A.js → App-QM6Y2Eod.js} +4 -4
  151. package/dist/web/assets/{AppDialog-B2V84J7f.js → AppDialog-C8um481a.js} +1 -1
  152. package/dist/web/assets/{AppTerminalPanel-DfYpUDKT.js → AppTerminalPanel-OwNr-bp6.js} +2 -2
  153. package/dist/web/assets/{AppToastContext-DuiPouLz.js → AppToastContext-BQ4iRFif.js} +1 -1
  154. package/dist/web/assets/{AppsView-B20RHDCy.js → AppsView-mk8m_Cra.js} +1 -1
  155. package/dist/web/assets/{AttachmentTypeIcon-l-GRNxaz.js → AttachmentTypeIcon-SITPqTtF.js} +1 -1
  156. package/dist/web/assets/{BrowserSidebar-Ce0ToS2O.js → BrowserSidebar-BghdIKTB.js} +1 -1
  157. package/dist/web/assets/{CartesianChart-CtfMRAfp.js → CartesianChart-BdRx7q_O.js} +1 -1
  158. package/dist/web/assets/{ChatTimelineEntry-DzcucW20.js → ChatTimelineEntry-BBOnAzJB.js} +1 -1
  159. package/dist/web/assets/{CollaborationTabs-BpmKjNAC.js → CollaborationTabs-Beja-9s5.js} +1 -1
  160. package/dist/web/assets/{CommandMenu-JXsoxijv.js → CommandMenu-CQtrSUpu.js} +1 -1
  161. package/dist/web/assets/{CommunityView-ggdn8pcH.js → CommunityView-LPTAakS-.js} +1 -1
  162. package/dist/web/assets/{ComposerAttachments-BMmALUs_.js → ComposerAttachments-DI-Gr7Zw.js} +1 -1
  163. package/dist/web/assets/{ComposerCreateImproveStrip-DcM1bkfu.js → ComposerCreateImproveStrip-CY5Uw1yc.js} +1 -1
  164. package/dist/web/assets/{ConversationImportsSettings-BKNeARHI.js → ConversationImportsSettings-DFwhKERw.js} +1 -1
  165. package/dist/web/assets/{DatasetReviewImport-DyFOE0Q0.js → DatasetReviewImport-C9xraQk7.js} +1 -1
  166. package/dist/web/assets/{ExperimentTrainingDataWorkspace-CfOyoMrq.js → ExperimentTrainingDataWorkspace-Cx58S6R_.js} +2 -2
  167. package/dist/web/assets/{FilePagePreview-B7bWObJN.js → FilePagePreview-dlbmR8s8.js} +2 -2
  168. package/dist/web/assets/{GetStartedView-BYbFl93M.js → GetStartedView-BkTV_shK.js} +1 -1
  169. package/dist/web/assets/{GettingStartedDialog-UgreDozV.js → GettingStartedDialog-DulDLYnr.js} +1 -1
  170. package/dist/web/assets/{HostedModelLearningReview-C_kng2U_.js → HostedModelLearningReview--fXJEOfI.js} +1 -1
  171. package/dist/web/assets/{HostedModelLearningSettings-aesD_ifF.js → HostedModelLearningSettings-BEb7B_PC.js} +1 -1
  172. package/dist/web/assets/{HtmlVisual-nvl1x-jh.js → HtmlVisual-BS61T2qR.js} +1 -1
  173. package/dist/web/assets/{LabModelVersionDetailPage-DrdoNvI-.js → LabModelVersionDetailPage-CmzUIDbR.js} +1 -1
  174. package/dist/web/assets/{LabModelWorkspace-CHlhzG3q.js → LabModelWorkspace-DoAnQKWk.js} +1 -1
  175. package/dist/web/assets/{LabSkillSidebar-CqHeZzoj.js → LabSkillSidebar-DJTm7ZQs.js} +1 -1
  176. package/dist/web/assets/{LabsRoute-DzEbPpMK.js → LabsRoute-DNtBot4a.js} +4 -4
  177. package/dist/web/assets/{LearningBatchesPage-A2dFQW2j.js → LearningBatchesPage-C_oQjciE.js} +1 -1
  178. package/dist/web/assets/{MainChatThread-BSvKu4e5.js → MainChatThread-D9e-to8e.js} +2 -2
  179. package/dist/web/assets/{MainPane-DiWIAxMj.js → MainPane-mWeD0M-f.js} +6 -6
  180. package/dist/web/assets/{ModelProjectPageHeader-lu6iRXHK.js → ModelProjectPageHeader-BecKU_2p.js} +1 -1
  181. package/dist/web/assets/{NativeSetupTerminal-kZ-nFPE8.js → NativeSetupTerminal-DO0DN4fH.js} +2 -2
  182. package/dist/web/assets/{NativeSkillSidebar-DkkD1uH2.js → NativeSkillSidebar-jnxgQASC.js} +1 -1
  183. package/dist/web/assets/{NewProjectDialog-Dg8dMEpc.js → NewProjectDialog-ByHR4vMf.js} +1 -1
  184. package/dist/web/assets/{OutputsPage-Dz190U9t.js → OutputsPage-DZY4BUCy.js} +1 -1
  185. package/dist/web/assets/{PageChrome-Bncv-ps0.js → PageChrome-DjPuwWsn.js} +1 -1
  186. package/dist/web/assets/{ProjectsPage-DVkYvLtd.js → ProjectsPage-DKbwhIM4.js} +1 -1
  187. package/dist/web/assets/{RightChatPanelStack-CP4leenI.js → RightChatPanelStack-BARH0XuL.js} +1 -1
  188. package/dist/web/assets/RightSidebarHomePanel-qKL8dZrN.js +1 -0
  189. package/dist/web/assets/{ScheduledWorkPage-DI0mgt82.js → ScheduledWorkPage-CElrmRz9.js} +1 -1
  190. package/dist/web/assets/{SettingsView-cCtkr089.js → SettingsView-CsFSjE9s.js} +3 -3
  191. package/dist/web/assets/{TasksetDraftEditorPrimitives-DCQTuswJ.js → TasksetDraftEditorPrimitives-DJoYkvWq.js} +1 -1
  192. package/dist/web/assets/{TeamChatView-BBEomfQ7.js → TeamChatView-D9Y4e98Y.js} +1 -1
  193. package/dist/web/assets/{TerminalOverlay-Dj5NUDMp.js → TerminalOverlay-CUO8yZjy.js} +1 -1
  194. package/dist/web/assets/{TrainingCreationPanel-Ds4PLfsd.js → TrainingCreationPanel-_mnLQ1HA.js} +1 -1
  195. package/dist/web/assets/{TrainingDraftPanel-BAuh_BF3.js → TrainingDraftPanel-CCqQTHo5.js} +1 -1
  196. package/dist/web/assets/{UsageSettingsSection-DbzeatcW.js → UsageSettingsSection-CdWq5oYC.js} +1 -1
  197. package/dist/web/assets/WorkSidebarPanel-DRXaK-E6.js +1 -0
  198. package/dist/web/assets/{WorkspaceDiffPanel-xk-ve1MO.js → WorkspaceDiffPanel-CdHr8bX6.js} +3 -3
  199. package/dist/web/assets/{WorkspaceEnvironmentMenu-D8GSuoYz.js → WorkspaceEnvironmentMenu-BnUh4dg9.js} +1 -1
  200. package/dist/web/assets/{WorkspaceFileLocation-Dl8M2ZKN.js → WorkspaceFileLocation-VzrSq_Ki.js} +1 -1
  201. package/dist/web/assets/{WorkspaceGitDialogs-9BhLjYx4.js → WorkspaceGitDialogs-nwvQOm9r.js} +1 -1
  202. package/dist/web/assets/{WorkspaceMonacoEditor-DYPuC7pj.js → WorkspaceMonacoEditor-m3bCIpZe.js} +3 -3
  203. package/dist/web/assets/{WorkspacePdfPreview-B7BI9tLR.js → WorkspacePdfPreview-u6Iv0qr0.js} +2 -2
  204. package/dist/web/assets/{WorkspacePresentationPreview-sP7JUT7m.js → WorkspacePresentationPreview-CjvTjhUO.js} +1 -1
  205. package/dist/web/assets/{bot-D7M8ZtE6.js → bot-DiDSZBLn.js} +1 -1
  206. package/dist/web/assets/{chat-resources-DhKAnljP.js → chat-resources-CmBtWC5V.js} +1 -1
  207. package/dist/web/assets/chevron-down-CqxKXYPf.js +1 -0
  208. package/dist/web/assets/chevron-right-ClP6ukIq.js +1 -0
  209. package/dist/web/assets/chevron-up-DY7wpdJ1.js +1 -0
  210. package/dist/web/assets/{chunk-C3TS766N-DENE60SE.js → chunk-C3TS766N-DSA4vs-Y.js} +1 -1
  211. package/dist/web/assets/{client-gy7zrd7a.js → client-_uDCFdg5.js} +1 -1
  212. package/dist/web/assets/{client-choice-storage-DYZsrVr9.js → client-choice-storage-CRKZpilL.js} +1 -1
  213. package/dist/web/assets/{cloud-upload-De-XSMUr.js → cloud-upload-CWamjPts.js} +1 -1
  214. package/dist/web/assets/{copy-DEK20zbZ.js → copy-B56YjDkW.js} +1 -1
  215. package/dist/web/assets/{cssMode-Dau-Fhqf.js → cssMode-BuC9qQvo.js} +1 -1
  216. package/dist/web/assets/{external-link-DwDry0Fb.js → external-link-BSn21e-y.js} +1 -1
  217. package/dist/web/assets/{folder-open-DOb4AjV6.js → folder-open-CaJGWSr2.js} +1 -1
  218. package/dist/web/assets/{folder-plus-BAouDaXv.js → folder-plus-eTUep-az.js} +1 -1
  219. package/dist/web/assets/{git-commit-horizontal-DZbHXcai.js → git-commit-horizontal-Buk_hy6T.js} +1 -1
  220. package/dist/web/assets/{htmlMode-DlNEe6hu.js → htmlMode-D7kF2kDL.js} +1 -1
  221. package/dist/web/assets/{icons-OQhKVrDc.js → icons-B4B5eUyR.js} +1 -1
  222. package/dist/web/assets/{image-BkYJDChH.js → image--4h1aK2l.js} +1 -1
  223. package/dist/web/assets/{index-M_h2Ok4V.js → index-CCaTs7xt.js} +2 -2
  224. package/dist/web/assets/{info-Mj5lp4Ic.js → info-DjMTH4sJ.js} +1 -1
  225. package/dist/web/assets/{jsonMode-CyOEyonV.js → jsonMode-BVX_7KjE.js} +1 -1
  226. package/dist/web/assets/loader-circle-DNHvEoaP.js +1 -0
  227. package/dist/web/assets/{lspLanguageFeatures-DAYPzatg.js → lspLanguageFeatures-RBOb-3wX.js} +1 -1
  228. package/dist/web/assets/{maximize-2-BwFXSX6b.js → maximize-2-Cjg-f1xT.js} +1 -1
  229. package/dist/web/assets/{message-square-C2nqfNLn.js → message-square-oIMQDMc3.js} +1 -1
  230. package/dist/web/assets/{monaco.contribution-BZcNCJER.js → monaco.contribution-CIbGU5-C.js} +2 -2
  231. package/dist/web/assets/{monaco.contribution-KyLdVay7.js → monaco.contribution-CIwt2mTE.js} +2 -2
  232. package/dist/web/assets/{monaco.contribution-BZkfRhss.js → monaco.contribution-Dd1cPdSS.js} +2 -2
  233. package/dist/web/assets/{monaco.contribution-D7_X8TXe.js → monaco.contribution-KRLNg324.js} +2 -2
  234. package/dist/web/assets/{monitor-B0Qj5Wea.js → monitor-BWaitd6I.js} +1 -1
  235. package/dist/web/assets/{paperclip-CmrRruxi.js → paperclip-FYK6OySO.js} +1 -1
  236. package/dist/web/assets/{pdf-BM-9_48p.js → pdf-DbwlsqZP.js} +1 -1
  237. package/dist/web/assets/play-DieChKfF.js +1 -0
  238. package/dist/web/assets/plus-DkfcQyma.js +1 -0
  239. package/dist/web/assets/{presentation-BYxhoSIo.js → presentation-B6MaAPC7.js} +1 -1
  240. package/dist/web/assets/{python-B3Mj03I5.js → python-DRYJxjiM.js} +1 -1
  241. package/dist/web/assets/{refresh-cw-CwEmO71D.js → refresh-cw-DOVpqCfJ.js} +1 -1
  242. package/dist/web/assets/{save-S--FOuce.js → save-BuyyyR4Q.js} +1 -1
  243. package/dist/web/assets/{settings-lists-ChqDppMP.js → settings-lists-BeAdxSjx.js} +1 -1
  244. package/dist/web/assets/square-D0YnIVh6.js +1 -0
  245. package/dist/web/assets/{square-terminal-CawpQtCi.js → square-terminal-DTOIZy6_.js} +1 -1
  246. package/dist/web/assets/{submit-issue-command-CFitxxmO.js → submit-issue-command-V--K9lVQ.js} +1 -1
  247. package/dist/web/assets/{toggleHighContrast-D-cMCvXx.js → toggleHighContrast-nNzCoE0h.js} +1 -1
  248. package/dist/web/assets/training-DZgfVcI-.js +1 -0
  249. package/dist/web/assets/{training-model-data-G-D64935.js → training-model-data-CWoTokkb.js} +1 -1
  250. package/dist/web/assets/{tsMode-9kzS1ijG.js → tsMode-BfVi5_FZ.js} +1 -1
  251. package/dist/web/assets/{upload-CtYsSYrM.js → upload-C2MnlWjj.js} +1 -1
  252. package/dist/web/assets/{useAccountSettings-DYYa6puz.js → useAccountSettings-QwRbZIKu.js} +1 -1
  253. package/dist/web/assets/{useAgentInventory-c5B_Tszj.js → useAgentInventory-B7xEgMCA.js} +1 -1
  254. package/dist/web/assets/{useChatContextSelection-DOISZpTz.js → useChatContextSelection-O6wo4EqD.js} +1 -1
  255. package/dist/web/assets/{useLocalAgentSchedules-QJ8RsMKm.js → useLocalAgentSchedules-DpHnOGoV.js} +1 -1
  256. package/dist/web/assets/{useQuery-DuTGOe2b.js → useQuery-CvZ8bzdW.js} +1 -1
  257. package/dist/web/assets/{wifi-off-BOfP4Vmg.js → wifi-off-B8d12Alh.js} +1 -1
  258. package/dist/web/assets/{workers-BwGpyrdj.js → workers-sIVKxb8c.js} +1 -1
  259. package/dist/web/assets/x-BvVvVB-j.js +1 -0
  260. package/dist/web/assets/{yaml-BU4IWV_7.js → yaml-8-aLM3zj.js} +1 -1
  261. package/dist/web/index.html +1 -1
  262. package/package.json +1 -1
  263. package/dist/chunks/chunk-NK2L5HA2.js +0 -2
  264. package/dist/web/assets/RightSidebarHomePanel-C0etQXpt.js +0 -1
  265. package/dist/web/assets/WorkSidebarPanel-BaNuXoZc.js +0 -1
  266. package/dist/web/assets/chevron-down-BAEcJitl.js +0 -1
  267. package/dist/web/assets/chevron-right-3G9s2cQ9.js +0 -1
  268. package/dist/web/assets/chevron-up-DTYF52H1.js +0 -1
  269. package/dist/web/assets/loader-circle-DXVtGvuV.js +0 -1
  270. package/dist/web/assets/play-CkACZ6Zo.js +0 -1
  271. package/dist/web/assets/plus-CB258e62.js +0 -1
  272. package/dist/web/assets/square-BmPfHjGU.js +0 -1
  273. package/dist/web/assets/training-CzbWtx75.js +0 -1
  274. package/dist/web/assets/x-5_iy6IDd.js +0 -1
@@ -1,5 +1,5 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as Me,b as Be}from"./chunk-USTDWGR4.js";import{b as Te}from"./chunk-JVEIK4RH.js";import{c as Le}from"./chunk-AN525SPP.js";import{a as te,c as ae}from"./chunk-XLZMSD5K.js";import{a as _e,b as De}from"./chunk-SVLVIYH2.js";import{b as Oe}from"./chunk-YU3C6U5V.js";import{g as Ie,j as ne}from"./chunk-4V73I4OL.js";import{q as ee,r as xe,s as Pe,t as qe}from"./chunk-LE75SVEL.js";import{d as Se,f as Ae,h as Ce}from"./chunk-AJXWJLZA.js";import{n as D}from"./chunk-RCT3O3HQ.js";import{A as C}from"./chunk-X2J2P5ZT.js";import{a as o}from"./chunk-FTQLQJQV.js";function ze(e){let t=new Map,s=new Map,r=new Map,i=new Map(e.triggers.map(a=>[L(a),a])),u=new Map(e.observations.map(a=>[L(a),a])),c=new Map(e.outcomes.map(a=>[L(a.trigger),a]));return async a=>{let[p,f,R]=await Promise.all([d(a.runRef),m(a.runRef),e.store.getSession(a.runRef)]),A=f.slice().sort((S,x)=>S.startedAt.localeCompare(x.startedAt)),w=A.find(S=>S.id===a.turnId)??await e.store.getTurn(a.turnId),T=A.findIndex(S=>S.id===a.turnId),M=T>0?A.slice(0,T):[],F=M.slice(-e.limits.maxPrecedingTurns),$=tt(F,p,e.limits.maxConversationChars),W=p.filter(S=>S.turnId===a.turnId).filter(S=>["tool.completed","validation.completed","workspace_action_result"].includes(S.name)).filter(S=>S.status==="failed"||["validation.completed","workspace_action_result"].includes(S.name)),O=r.get(a.runRef);O||(O=await Me(R?.cwd),r.set(a.runRef,O));let g=e.sourcePolicies.get(a.runRef)??null,v=H(a),_=b(a),I=_.results,E={schemaVersion:"openpond.localHarnessDeepReviewContext.v1",binding:{ownerScope:e.workspace.ownerScope,workspaceId:e.workspace.id,sourceRef:a.runRef,sourceTurn:a.turnId,admittedHarness:a.harnessRelease,observation:Q(a),refinerOutcome:v?Q(v):null,sourcePolicy:g?{policy:g.policy,state:g.state,checkedAt:g.checkedAt}:null},conversation:{precedingTurns:$,currentTurn:w?We(w,p,2e3,6e3):null},artifactDiagnostics:O.slice(0,e.limits.maxArtifactDiagnostics),events:W.slice(-e.limits.maxContextEvents).map(nt),currentResult:v?l(v):null,laterResults:I,truncation:{availablePrecedingTurns:M.length,includedPrecedingTurns:$.length,precedingTurnsTruncated:M.length>$.length,conversationChars:rt($),availableContextEvents:W.length,includedContextEvents:Math.min(W.length,e.limits.maxContextEvents),availableArtifactDiagnostics:O.length,includedArtifactDiagnostics:Math.min(O.length,e.limits.maxArtifactDiagnostics),availableLaterResults:_.total,includedLaterResults:I.length,laterResultsTruncated:_.total>I.length,sessionMissing:R===null,turnMissing:w===null}};return{...E,contentHash:D(E)}};async function d(a){let p=t.get(a);if(p)return p;let f=await e.store.runtimeEventsForSession(a);return t.set(a,f),f}async function m(a){let p=s.get(a);if(p)return p;let f=await e.store.turnsForSession(a,500);return s.set(a,f),f}function H(a){for(let p of e.triggers)if(p.observations.some(f=>L(f)===L(a)))return c.get(L(p))??null;return null}function b(a){if(!a.deterministicClass)return{results:[],total:0};let f=e.outcomes.flatMap(R=>R.createdAt<=a.createdAt?[]:(i.get(L(R.trigger))?.observations.map(T=>u.get(L(T))).filter(T=>!!T)??[]).some(T=>T.deterministicClass===a.deterministicClass)?[l(R)]:[]).sort((R,A)=>String(R.createdAt).localeCompare(String(A.createdAt)));return{results:f.slice(0,e.limits.maxLaterResults),total:f.length}}function l(a){let p=a.proposal?e.applyReceipts.filter(w=>L(w.proposal)===L(a.proposal)):[],f=a.proposal?e.advanceReceipts.filter(w=>w.proposal&&L(w.proposal)===L(a.proposal)):[],R=new Set(f.map(w=>L(w))),A=e.advanceReceipts.filter(w=>w.rollbackOf&&R.has(L(w.rollbackOf)));return{outcome:Q(a),decision:a.decision,reason:N(a.reason,1500),proposal:a.proposal,createdAt:a.createdAt,applyReceipts:p.map(w=>({...Q(w),decision:w.decision,createdAt:w.createdAt})),advanceReceipts:f.map(w=>({...Q(w),decision:w.decision,previousRelease:w.previousRelease,nextRelease:w.nextRelease,createdAt:w.createdAt})),rollbackReceipts:A.map(w=>({...Q(w),decision:w.decision,rollbackOf:w.rollbackOf,nextRelease:w.nextRelease,createdAt:w.createdAt}))}}}o(ze,"createLocalHarnessDeepReviewContextLoader");function tt(e,t,s){if(!e.length||s<=0)return[];let r=Math.max(1,Math.floor(s/(e.length*2)));return e.map(i=>We(i,t,r,r))}o(tt,"boundedConversationTurns");function We(e,t,s,r){return{id:e.id,startedAt:e.startedAt,completedAt:e.completedAt,status:e.status,error:N(e.error??"",1e3),prompt:N(e.prompt,s),assistantOutput:N(st(t,e.id),r)}}o(We,"boundedTurn");function st(e,t){return e.filter(s=>s.turnId===t&&s.name==="assistant.delta").map(s=>s.output??"").join("")}o(st,"assistantOutputForTurn");function rt(e){return e.reduce((t,s)=>t+(typeof s.prompt=="string"?s.prompt.length:0)+(typeof s.assistantOutput=="string"?s.assistantOutput.length:0),0)}o(rt,"conversationCharacterCount");function nt(e){let t=$e(e.data),s=$e(t.result);return{id:e.id,name:e.name,action:e.action??(typeof t.tool=="string"?t.tool:null),status:e.status??null,error:N(e.error??"",750),output:N(typeof s.output=="string"?s.output:e.output??"",750),stderr:N(typeof s.stderr=="string"?s.stderr:"",750),exitCode:typeof s.exitCode=="number"?s.exitCode:null,timedOut:s.timedOut===!0}}o(nt,"boundedReviewEvent");function N(e,t){if(!e||t<=0)return null;let s=e.replace(/\bBearer\s+[A-Za-z0-9._~+/=-]+/gi,"Bearer [redacted]").replace(/\b(api[_-]?key|access[_-]?token|auth(?:orization)?|password|secret)(\s*[:=]\s*)([^\s,;]+)/gi,"$1$2[redacted]");if(s.length<=t)return s;let r=`
2
+ import{a as Me,b as Be}from"./chunk-CQRA5TXF.js";import{b as Te}from"./chunk-JVEIK4RH.js";import{c as Le}from"./chunk-AN525SPP.js";import{a as te,c as ae}from"./chunk-XLZMSD5K.js";import{a as _e,b as De}from"./chunk-SVLVIYH2.js";import{b as Oe}from"./chunk-YU3C6U5V.js";import{g as Ie,j as ne}from"./chunk-4V73I4OL.js";import{q as ee,r as xe,s as Pe,t as qe}from"./chunk-LE75SVEL.js";import{d as Se,f as Ae,h as Ce}from"./chunk-AJXWJLZA.js";import{n as D}from"./chunk-RCT3O3HQ.js";import{A as C}from"./chunk-X2J2P5ZT.js";import{a as o}from"./chunk-FTQLQJQV.js";function ze(e){let t=new Map,s=new Map,r=new Map,i=new Map(e.triggers.map(a=>[L(a),a])),u=new Map(e.observations.map(a=>[L(a),a])),c=new Map(e.outcomes.map(a=>[L(a.trigger),a]));return async a=>{let[p,f,R]=await Promise.all([d(a.runRef),m(a.runRef),e.store.getSession(a.runRef)]),A=f.slice().sort((S,x)=>S.startedAt.localeCompare(x.startedAt)),w=A.find(S=>S.id===a.turnId)??await e.store.getTurn(a.turnId),T=A.findIndex(S=>S.id===a.turnId),M=T>0?A.slice(0,T):[],F=M.slice(-e.limits.maxPrecedingTurns),$=tt(F,p,e.limits.maxConversationChars),W=p.filter(S=>S.turnId===a.turnId).filter(S=>["tool.completed","validation.completed","workspace_action_result"].includes(S.name)).filter(S=>S.status==="failed"||["validation.completed","workspace_action_result"].includes(S.name)),O=r.get(a.runRef);O||(O=await Me(R?.cwd),r.set(a.runRef,O));let g=e.sourcePolicies.get(a.runRef)??null,v=H(a),_=b(a),I=_.results,E={schemaVersion:"openpond.localHarnessDeepReviewContext.v1",binding:{ownerScope:e.workspace.ownerScope,workspaceId:e.workspace.id,sourceRef:a.runRef,sourceTurn:a.turnId,admittedHarness:a.harnessRelease,observation:Q(a),refinerOutcome:v?Q(v):null,sourcePolicy:g?{policy:g.policy,state:g.state,checkedAt:g.checkedAt}:null},conversation:{precedingTurns:$,currentTurn:w?We(w,p,2e3,6e3):null},artifactDiagnostics:O.slice(0,e.limits.maxArtifactDiagnostics),events:W.slice(-e.limits.maxContextEvents).map(nt),currentResult:v?l(v):null,laterResults:I,truncation:{availablePrecedingTurns:M.length,includedPrecedingTurns:$.length,precedingTurnsTruncated:M.length>$.length,conversationChars:rt($),availableContextEvents:W.length,includedContextEvents:Math.min(W.length,e.limits.maxContextEvents),availableArtifactDiagnostics:O.length,includedArtifactDiagnostics:Math.min(O.length,e.limits.maxArtifactDiagnostics),availableLaterResults:_.total,includedLaterResults:I.length,laterResultsTruncated:_.total>I.length,sessionMissing:R===null,turnMissing:w===null}};return{...E,contentHash:D(E)}};async function d(a){let p=t.get(a);if(p)return p;let f=await e.store.runtimeEventsForSession(a);return t.set(a,f),f}async function m(a){let p=s.get(a);if(p)return p;let f=await e.store.turnsForSession(a,500);return s.set(a,f),f}function H(a){for(let p of e.triggers)if(p.observations.some(f=>L(f)===L(a)))return c.get(L(p))??null;return null}function b(a){if(!a.deterministicClass)return{results:[],total:0};let f=e.outcomes.flatMap(R=>R.createdAt<=a.createdAt?[]:(i.get(L(R.trigger))?.observations.map(T=>u.get(L(T))).filter(T=>!!T)??[]).some(T=>T.deterministicClass===a.deterministicClass)?[l(R)]:[]).sort((R,A)=>String(R.createdAt).localeCompare(String(A.createdAt)));return{results:f.slice(0,e.limits.maxLaterResults),total:f.length}}function l(a){let p=a.proposal?e.applyReceipts.filter(w=>L(w.proposal)===L(a.proposal)):[],f=a.proposal?e.advanceReceipts.filter(w=>w.proposal&&L(w.proposal)===L(a.proposal)):[],R=new Set(f.map(w=>L(w))),A=e.advanceReceipts.filter(w=>w.rollbackOf&&R.has(L(w.rollbackOf)));return{outcome:Q(a),decision:a.decision,reason:N(a.reason,1500),proposal:a.proposal,createdAt:a.createdAt,applyReceipts:p.map(w=>({...Q(w),decision:w.decision,createdAt:w.createdAt})),advanceReceipts:f.map(w=>({...Q(w),decision:w.decision,previousRelease:w.previousRelease,nextRelease:w.nextRelease,createdAt:w.createdAt})),rollbackReceipts:A.map(w=>({...Q(w),decision:w.decision,rollbackOf:w.rollbackOf,nextRelease:w.nextRelease,createdAt:w.createdAt}))}}}o(ze,"createLocalHarnessDeepReviewContextLoader");function tt(e,t,s){if(!e.length||s<=0)return[];let r=Math.max(1,Math.floor(s/(e.length*2)));return e.map(i=>We(i,t,r,r))}o(tt,"boundedConversationTurns");function We(e,t,s,r){return{id:e.id,startedAt:e.startedAt,completedAt:e.completedAt,status:e.status,error:N(e.error??"",1e3),prompt:N(e.prompt,s),assistantOutput:N(st(t,e.id),r)}}o(We,"boundedTurn");function st(e,t){return e.filter(s=>s.turnId===t&&s.name==="assistant.delta").map(s=>s.output??"").join("")}o(st,"assistantOutputForTurn");function rt(e){return e.reduce((t,s)=>t+(typeof s.prompt=="string"?s.prompt.length:0)+(typeof s.assistantOutput=="string"?s.assistantOutput.length:0),0)}o(rt,"conversationCharacterCount");function nt(e){let t=$e(e.data),s=$e(t.result);return{id:e.id,name:e.name,action:e.action??(typeof t.tool=="string"?t.tool:null),status:e.status??null,error:N(e.error??"",750),output:N(typeof s.output=="string"?s.output:e.output??"",750),stderr:N(typeof s.stderr=="string"?s.stderr:"",750),exitCode:typeof s.exitCode=="number"?s.exitCode:null,timedOut:s.timedOut===!0}}o(nt,"boundedReviewEvent");function N(e,t){if(!e||t<=0)return null;let s=e.replace(/\bBearer\s+[A-Za-z0-9._~+/=-]+/gi,"Bearer [redacted]").replace(/\b(api[_-]?key|access[_-]?token|auth(?:orization)?|password|secret)(\s*[:=]\s*)([^\s,;]+)/gi,"$1$2[redacted]");if(s.length<=t)return s;let r=`
3
3
  [... middle omitted ...]
4
4
  `;if(r.length>=t)return s.slice(0,t);let i=Math.max(0,t-r.length),u=Math.ceil(i/2),c=Math.floor(i/2);return`${s.slice(0,u)}${r}${s.slice(-c)}`}o(N,"boundedReviewText");function Q(e){return{id:e.id,contentHash:e.contentHash}}o(Q,"artifactRef");function L(e){return`${e.id}:${e.contentHash}`}o(L,"artifactKey");function $e(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}o($e,"asRecord");var at=2160*60*60*1e3;async function fe(e){let t=[],s=await e.store.listHarnessRefinementCandidates(e.workspace.id),r=e.upsertReviewClaim!==!1&&e.review.classification==="harness_maintenance"?e.review.claim?.fingerprint??null:null;for(let c of s){if(c.fingerprint===r)continue;let d=ot({...e,candidate:c});d&&(await e.store.saveHarnessRefinementCandidateTransition({workspaceId:e.workspace.id,...d}),t.push(d.receipt))}let i=null;if(e.upsertReviewClaim!==!1&&e.review.classification==="harness_maintenance"&&e.review.claim){let c=await e.store.getHarnessRefinementCandidateByFingerprint(e.workspace.id,e.review.claim.fingerprint),d=it({...e,candidate:c});d?(await e.store.saveHarnessRefinementCandidateTransition({workspaceId:e.workspace.id,...d}),t.push(d.receipt),i=d.candidate):i=c}let u=await e.store.listHarnessRefinementCandidates(e.workspace.id);return e.upsertReviewClaim===!1&&(i=u.find(c=>c.status==="confirmed"&&c.sourceReviews.some(d=>d.id===e.review.id&&d.contentHash===e.review.contentHash))??null),{activeCandidate:i,candidates:u,lifecycleReceipts:t}}o(fe,"reconcileLocalHarnessRefinementCandidates");async function Ue(e){if(!["unresolved","confirmed"].includes(e.candidate.status))return e.candidate;let t=ee({...we(e.candidate),sourceReviews:V([...e.candidate.sourceReviews,z(e.review)]),relatedHarnessReleases:V([...e.candidate.relatedHarnessReleases,...e.relatedHarnessRelease?[e.relatedHarnessRelease]:[]]),lastReviewedAt:e.now,updatedAt:e.now,resolution:null}),s=ie({before:e.candidate,candidate:t,review:e.review,decision:"merged",addedEvidence:[],removedEvidence:[],reason:e.reason,now:e.now});return await e.store.saveHarnessRefinementCandidateTransition({workspaceId:e.candidate.workspaceRef,...s}),t}o(Ue,"recordAppliedLocalHarnessRefinementCandidate");async function Fe(e){if(e.candidate.status!=="confirmed")throw new Error("Later-success resolution requires a confirmed candidate.");let t=e.review.harnessRelease,s=e.candidate.relatedHarnessReleases.at(-1);if(e.candidate.relatedHarnessReleases.length<2||!s||s.id!==t.id||s.contentHash!==t.contentHash)throw new Error("Later-success evidence is not bound to the candidate's applied Harness release.");let r=new Set(e.candidate.occurrences.map(d=>d.sourceRef)),i=e.evidence.filter(d=>!r.has(d.sourceRef));if(i.length===0)throw new Error("Later-success resolution requires evidence from an independent work source.");let u=ee({...we(e.candidate),status:"resolved",sourceReviews:V([...e.candidate.sourceReviews,z(e.review)]),lastReviewedAt:e.now,updatedAt:e.now,resolution:{kind:"later_success",reason:e.reason,evidenceRefs:V(i.map(d=>d.evidence)),resolvedAt:e.now}}),c=ie({before:e.candidate,candidate:u,review:e.review,decision:"resolved",addedEvidence:i,removedEvidence:[],reason:e.reason,now:e.now});return await e.store.saveHarnessRefinementCandidateTransition({workspaceId:e.candidate.workspaceRef,...c}),u}o(Fe,"resolveLocalHarnessRefinementCandidateFromLaterSuccess");function ot(e){if(!["unresolved","confirmed"].includes(e.candidate.status))return null;let t=[],s=oe(e.candidate.occurrences,e.sourcePolicies,t),r=oe(e.candidate.counterevidence,e.sourcePolicies,t),i=V([...e.candidate.sourceReviews,z(e.review)]),u=Date.parse(e.candidate.expiresAt)<=Date.parse(e.now),c=s.length===0,d=c?"rejected":u?"expired":t.length>0?"unresolved":e.candidate.status,m=c?"rejected":u?"expired":"merged";if(!(t.length>0||e.candidate.lastReviewedAt!==e.now||e.candidate.sourceReviews.length!==i.length)&&!u)return null;let b=c?"All supporting occurrences were revoked, deleted, expired, or unavailable at review time.":u?"The bounded candidate lifetime elapsed without sufficient confirming evidence.":"Candidate evidence was reauthorized against the current source policy set.",l=ee({...we(e.candidate),status:d,occurrences:s,counterevidence:r,sourceReviews:i,lastReviewedAt:e.now,updatedAt:e.now,expiresAt:u?e.now:e.candidate.expiresAt,resolution:c||u?{kind:c?"source_revoked":"expired",reason:b,evidenceRefs:t.map(a=>a.evidence),resolvedAt:e.now}:null});return ie({before:e.candidate,candidate:l,review:e.review,decision:m,addedEvidence:[],removedEvidence:t.map(a=>a.evidence),reason:b,now:e.now})}o(ot,"reauthorizeOrExpireCandidate");function it(e){let t=e.review.claim,s=e.candidate,r=[],i=s?oe(s.occurrences,e.sourcePolicies,r):[],u=s?oe(s.counterevidence,e.sourcePolicies,r):[],c=new Set(s&&["unresolved","confirmed"].includes(s.status)?i.map(f=>f.occurrenceKey):[]),d=e.review.selectedEvidence.filter(f=>!c.has(f.occurrenceKey));if(s&&d.length===0&&r.length===0&&["unresolved","confirmed"].includes(s.status))return null;let m=ct([...i,...e.review.selectedEvidence]),H=t.candidateDisposition==="confirm"?"confirmed":"unresolved",b=m.map(f=>f.occurredAt).sort()[0],l=m.map(f=>f.occurredAt).sort().at(-1),a=ee({schemaVersion:"openpond.harnessRefinementCandidate.v1",id:s?.id??`refinement-candidate-${t.fingerprint.slice(0,24)}`,ownerScope:e.workspace.ownerScope,workspaceRef:e.workspace.id,fingerprint:t.fingerprint,recurrenceFamily:t.recurrenceFamily,statement:t.statement,status:H,occurrences:m,counterevidence:u,sourceReviews:V([...s?.sourceReviews??[],z(e.review)]),relatedHarnessReleases:V([...s?.relatedHarnessReleases??[],e.review.harnessRelease]),firstSeenAt:b,lastSeenAt:l,lastReviewedAt:e.now,expiresAt:new Date(Date.parse(e.now)+at).toISOString(),resolution:null,createdAt:s?.createdAt??e.now,updatedAt:e.now}),p=s?["resolved","rejected","expired"].includes(s.status)?"reopened":"merged":"created";return ie({before:s,candidate:a,review:e.review,decision:p,addedEvidence:d,removedEvidence:r.map(f=>f.evidence),reason:p==="created"?"Created a bounded candidate from an authorized cross-Work Harness claim.":p==="reopened"?"New authorized evidence reopened the prior candidate.":"Merged new authorized evidence into the existing candidate.",now:e.now})}o(it,"upsertCandidateFromReview");function ie(e){let t=xe({schemaVersion:"openpond.harnessRefinementCandidateLifecycleReceipt.v1",id:`candidate-lifecycle-${D({candidate:z(e.candidate),review:z(e.review),decision:e.decision}).slice(0,24)}`,candidateId:e.candidate.id,decision:e.decision,beforeCandidate:e.before?z(e.before):null,afterCandidate:z(e.candidate),review:z(e.review),addedEvidence:e.addedEvidence,removedEvidence:e.removedEvidence,reason:e.reason,createdAt:e.now});return{candidate:e.candidate,receipt:t}}o(ie,"transition");function oe(e,t,s){return e.flatMap(r=>{let i=t.get(r.sourceRef);return!i||i.state!=="authorized"?(s.push(r),[]):[{...r,sourcePolicy:i}]})}o(oe,"reauthorizedEvidence");function ct(e){return[...new Map(e.map(t=>[t.occurrenceKey,t])).values()].sort((t,s)=>t.occurredAt.localeCompare(s.occurredAt)||t.occurrenceKey.localeCompare(s.occurrenceKey))}o(ct,"uniqueEvidence");function V(e){return[...new Map(e.map(t=>[`${t.id}:${t.contentHash}`,t])).values()]}o(V,"uniqueRefs");function z(e){return{id:e.id,contentHash:e.contentHash}}o(z,"artifactRef");function we(e){let{contentHash:t,...s}=e;return s}o(we,"withoutHash");var dt={memory:!0,prompt:!0,skill:!0,agent:!1};async function je(e){if(e.candidate.status!=="confirmed")return null;if(e.review.classification!=="harness_maintenance"||e.review.contentHash!==e.candidate.sourceReviews.at(-1)?.contentHash)throw new Error("Cross-run continuation requires the candidate's confirming Harness review.");let t=await e.store.getHarnessWorkspace(e.candidate.workspaceRef),s=t?.currentChannel.release??null;if(!t||t.location!=="local"||!s)throw new Error("Cross-run continuation requires an active Local Harness release.");let r=Pe({workspaceRef:t.id,candidateFingerprint:e.candidate.fingerprint,admittedHarness:s}),i=(e.now??(()=>new Date().toISOString()))(),u=qe({schemaVersion:"openpond.harnessCrossRunRefinementRequest.v1",id:`cross-run-refinement-${r.slice(0,24)}`,ownerScope:t.ownerScope,workspaceRef:t.id,candidate:ce(e.candidate),candidateFingerprint:e.candidate.fingerprint,review:ce(e.review),admittedHarness:s,evidence:e.candidate.occurrences,capabilities:dt,deduplicationKey:r,createdAt:i}),c=await e.store.saveHarnessCrossRunRefinementRequestIfAbsent({workspaceId:t.id,request:u});if(!c.created)return null;let d=await ut(e.store,t.id,c.request.evidence);if(d.length===0)throw new Error("Confirmed cross-run candidate has no verifiable source observations.");let m=`cross-run-${c.request.deduplicationKey.slice(0,24)}`,H=await Te({store:e.store,runId:m,workspace:t,harnessRelease:c.request.admittedHarness,admittedAt:c.request.createdAt}),b=lt({request:c.request,overlay:H,observations:d});await e.store.saveHarnessImprovementArtifact(t.id,"trigger_decision",b);let l=await Be({store:e.store,storeDir:e.storeDir,trigger:b,additionalEvidence:{reviewScope:"cross_run_candidate",request:c.request,candidate:e.candidate,review:e.review},reviewScope:"cross_run_candidate",stream:e.stream,signal:e.signal,now:e.now}),a=e.candidate;return l.applyReceipt?.decision==="applied"&&(a=await Ue({store:e.store,candidate:a,review:e.review,relatedHarnessRelease:l.workspace.currentChannel.release??null,reason:"The confirmed candidate produced a validated applied Harness change and now awaits independent outcome evidence.",now:(e.now??(()=>new Date().toISOString()))()})),{candidate:a,worker:l}}o(je,"continueConfirmedLocalHarnessCandidate");function lt(e){let t=e.observations.slice(0,100).map(ce);return Ie({schemaVersion:"openpond.refinementTriggerDecision.v1",id:`cross-run-trigger-${e.request.deduplicationKey.slice(0,24)}`,runRef:e.overlay.runId,turnId:`candidate-${e.request.candidate.id}`,harnessRelease:e.request.admittedHarness,overlay:{id:e.overlay.id,revision:e.overlay.revision,contentHash:e.overlay.contentHash},observations:t,decision:"queue_refiner",deterministicRoute:null,suggestedRoutes:[],reason:"A confirmed authorized cross-Work candidate is ready for one bounded Refiner continuation.",deduplicationKey:e.request.deduplicationKey,policy:{schemaVersion:"openpond.refinementTriggerPolicy.v1",maxEstimatedCostUsd:.05,cooldownMs:0,maxPendingPlans:1,maxEvidenceEvents:100,maxProposalEdits:4,maxProposalBytes:2e4},estimatedMaxCostUsd:.05,pendingPlanCount:0,boundary:{kind:"turn_completed",eventSequence:0,occurredAt:e.request.createdAt},cooldownUntil:null,createdAt:e.request.createdAt,metadata:{origin:"cross_run_candidate",crossRunRefinementRequest:ce(e.request),candidate:e.request.candidate}})}o(lt,"createCrossRunTrigger");async function ut(e,t,s){let[r,i,u,c]=await Promise.all([e.listHarnessImprovementArtifacts(t,"observation",1e3),e.listHarnessImprovementArtifacts(t,"trigger_decision",1e3),e.listHarnessImprovementArtifacts(t,"route_decision",1e3),e.listHarnessImprovementArtifacts(t,"refiner_outcome",1e3)]),d=new Map(r.map(a=>[B(a),a])),m=new Map(i.map(a=>[B(a),a])),H=new Map(u.map(a=>[B(a),a])),b=new Map(c.map(a=>[B(a),a])),l=new Map;for(let a of s){if(a.kind==="observation"){let R=d.get(B(a.evidence));R&&l.set(B(R),R);continue}let p=a.kind==="route_decision"?H.get(B(a.evidence))?.trigger:a.kind==="refiner_outcome"?b.get(B(a.evidence))?.trigger:null,f=p?m.get(B(p)):null;for(let R of f?.observations??[]){let A=d.get(B(R));A&&l.set(B(A),A)}}return[...l.values()].sort((a,p)=>a.createdAt.localeCompare(p.createdAt)||a.id.localeCompare(p.id))}o(ut,"resolveCandidateObservations");function ce(e){return{id:e.id,contentHash:e.contentHash}}o(ce,"artifactRef");function B(e){return`${e.id}:${e.contentHash}`}o(B,"artifactKey");var mt=C.object({sourceRef:C.string().trim().min(1),policy:C.object({id:C.string().trim().min(1),contentHash:C.string().regex(/^[a-f0-9]{64}$/)}).strict(),state:C.enum(["authorized","revoked","deleted","expired"]),checkedAt:C.string().datetime()}).strict(),vt=C.object({previousWatermark:Se.nullable().optional(),sourcePolicies:C.array(mt).max(1e4).default([]),limits:C.object({maxEvidence:C.number().int().min(1).max(1e3).default(200),maxTokens:C.number().int().min(1).max(1e6).default(5e4),maxDurationMs:C.number().int().min(1).max(3e5).default(24e4),maxEstimatedCostUsd:C.number().finite().nonnegative().default(.1),maxPrecedingTurns:C.number().int().min(0).max(10).default(3),maxConversationChars:C.number().int().min(0).max(1e5).default(12e3),maxContextEvents:C.number().int().min(1).max(100).default(12),maxArtifactDiagnostics:C.number().int().min(0).max(100).default(20),maxLaterResults:C.number().int().min(0).max(50).default(8)}).strict().default({maxEvidence:200,maxTokens:5e4,maxDurationMs:24e4,maxEstimatedCostUsd:.1,maxPrecedingTurns:3,maxConversationChars:12e3,maxContextEvents:12,maxArtifactDiagnostics:20,maxLaterResults:8})}).strict(),de=new WeakMap;function Qe(e){let t=de.get(e.store);if(t)return t;let s=pt(e).finally(()=>{de.get(e.store)===s&&de.delete(e.store)});return de.set(e.store,s),s}o(Qe,"reviewSelectedLocalHarnessEvaluation");async function pt(e){let t=vt.parse(e.request??{}),s=performance.now(),r=await ae(e.store);if(!r)throw new Error("No Local Harness release is selected for evaluation review.");let i=await e.store.getHarnessWorkspace(r.workspaceId);if(!i)throw new Error(`Selected Harness workspace ${r.workspaceId} does not exist.`);let[u,c,d,m,H,b,l,a]=await Promise.all([e.store.listHarnessImprovementArtifacts(i.id,"evaluation_review",1e3),e.store.listHarnessImprovementArtifacts(i.id,"route_decision",1e3),e.store.listHarnessImprovementArtifacts(i.id,"trigger_decision",1e3),e.store.listHarnessImprovementArtifacts(i.id,"observation",1e3),e.store.listHarnessImprovementArtifacts(i.id,"apply_receipt",1e3),e.store.listHarnessImprovementArtifacts(i.id,"refiner_outcome",1e3),e.store.listHarnessAdvanceReceipts(i.id),e.store.listHarnessRefinementCandidates(i.id)]),p=u[0]??null,f=t.previousWatermark??p?.nextWatermark??null,R=c,A=d,w=m,T=H,M=b,F=[...R,...w,...M];if(t.previousWatermark===void 0&&p&&!F.some(n=>n.createdAt>p.nextWatermark.throughCreatedAt)){let n=(e.now??(()=>new Date().toISOString()))(),y=await fe({store:e.store,workspace:i,review:p,sourcePolicies:new Map(t.sourcePolicies.map(k=>[k.sourceRef,J(k)])),now:n,upsertReviewClaim:!1});return await Ke({...e,candidate:y.activeCandidate,review:p}),p}let $=new Map(A.map(n=>[P(n),n])),Y=new Set(A.filter(n=>n.metadata.origin==="cross_run_candidate").map(P)),W=new Map(w.map(n=>[P(n),n])),O=new Map(t.sourcePolicies.map(n=>[n.sourceRef,n])),g=ze({store:e.store,workspace:i,sourcePolicies:O,observations:w,triggers:A,outcomes:M,applyReceipts:T,advanceReceipts:l,limits:{maxPrecedingTurns:t.limits.maxPrecedingTurns,maxConversationChars:t.limits.maxConversationChars,maxContextEvents:t.limits.maxContextEvents,maxArtifactDiagnostics:t.limits.maxArtifactDiagnostics,maxLaterResults:t.limits.maxLaterResults}}),v=[],_=[],I=new Set,E=new Set(R.map(n=>P(n.trigger)));for(let n of R){let y=$.get(P(n.trigger));if(!y){v.push({evidence:q(n),sourcePolicy:null,reason:"unverified"});continue}if(Y.has(P(y))){v.push({evidence:q(n),sourcePolicy:null,reason:"resolved"});continue}let k=y.observations.map(j=>W.get(P(j))).filter(j=>!!j);for(let j of k)I.add(P(j));_.push({id:`route_decision:${n.id}`,artifact:n,kind:"route_decision",sourceRef:k[0]?.runRef??y.runRef,payload:{routeDecision:n,trigger:y,observations:k,turnContexts:await Ve(k,g)}})}for(let n of M){if(E.has(P(n.trigger)))continue;let y=$.get(P(n.trigger));if(!y){v.push({evidence:q(n),sourcePolicy:null,reason:"unverified"});continue}if(Y.has(P(y))){v.push({evidence:q(n),sourcePolicy:null,reason:"resolved"});continue}let k=y.observations.map(K=>W.get(P(K))).filter(K=>!!K);for(let K of k)I.add(P(K));let j=n.proposal?T.filter(K=>P(K.proposal)===P(n.proposal)):[];_.push({id:`refiner_outcome:${n.id}`,artifact:n,kind:"refiner_outcome",sourceRef:k[0]?.runRef??y.runRef,payload:{outcome:n,trigger:y,observations:k,turnContexts:await Ve(k,g),applyReceipts:j}})}for(let n of w)I.has(P(n))||_.push({id:`observation:${n.id}`,artifact:n,kind:"observation",sourceRef:n.runRef,payload:{observation:n,turnContext:await g(n)}});let S=[],x=[],Z=0,ue=0;for(let n of _.slice().sort((y,k)=>y.artifact.createdAt.localeCompare(k.artifact.createdAt)||y.id.localeCompare(k.id))){if(performance.now()-s>=t.limits.maxDurationMs){v.push({evidence:q(n.artifact),sourcePolicy:null,reason:"budget"});continue}if(f&&n.artifact.createdAt<=f.throughCreatedAt){v.push({evidence:q(n.artifact),sourcePolicy:null,reason:"before_watermark"});continue}if(Z>=t.limits.maxEvidence){v.push({evidence:q(n.artifact),sourcePolicy:null,reason:"budget"});continue}Z+=1;let y=Math.ceil(JSON.stringify(n.payload).length/4);if(ue+y>t.limits.maxTokens){v.push({evidence:q(n.artifact),sourcePolicy:null,reason:"budget"});continue}ue+=y,x.push(n.artifact);let k=O.get(n.sourceRef);if(!k||k.state!=="authorized"){v.push({evidence:q(n.artifact),sourcePolicy:k?J(k):null,reason:k&&k.state!=="authorized"?k.state:"unverified"});continue}S.push(n)}let h={schemaVersion:"openpond.harnessEvaluationReviewModelDecision.v2",decision:"no_action",reason:"No authorized unresolved evidence qualified for model review.",ignoredEvidence:[]},G={promptTokens:0,completionTokens:0,totalTokens:0},se={selectedIds:null};if(S.length>0&&t.limits.maxEstimatedCostUsd===0){for(let n of S)v.push({evidence:q(n.artifact),sourcePolicy:J(O.get(n.sourceRef)),reason:"budget"});h={schemaVersion:"openpond.harnessEvaluationReviewModelDecision.v2",decision:"no_action",reason:"Continuous review is disabled by a zero model-cost ceiling.",ignoredEvidence:S.map(n=>({id:n.id,reason:"The configured model-cost ceiling is zero."}))}}else if(S.length>0){if(!e.stream)throw new Error("Harness continuous review requires a model stream.");h=await Ce({evidence:S.map(n=>({id:n.id,evidence:q(n.artifact),kind:n.kind,sourceRef:n.sourceRef,occurredAt:n.artifact.createdAt,payload:n.payload})),harnessRelease:q(r.harnessRelease),previousReviews:u.slice(0,20),candidates:a.map(n=>({id:n.id,fingerprint:n.fingerprint,statement:n.statement,status:n.status,occurrences:n.occurrences,relatedHarnessReleases:n.relatedHarnessReleases,resolution:n.resolution})),stream:o(async function*(n){let y=null;for await(let k of e.stream(n))k.usage&&(y=k.usage),yield k;y&&(G={promptTokens:G.promptTokens+y.promptTokens,completionTokens:G.completionTokens+y.completionTokens,totalTokens:G.totalTokens+y.totalTokens})},"stream"),signal:e.signal??new AbortController().signal,timeoutMs:t.limits.maxDurationMs,onNavigation:o(n=>{se.selectedIds=new Set(n.selectedEvidenceIds)},"onNavigation")})}let He=se.selectedIds?S.filter(n=>!se.selectedIds.has(n.id)):[];for(let n of He)v.push({evidence:q(n.artifact),sourcePolicy:J(O.get(n.sourceRef)),reason:"budget"});let me=h.decision==="review"||h.decision==="resolve_candidate"?h.selectedEvidenceIds.map(n=>{let y=S.find(k=>k.id===n);if(!y)throw new Error(`Review selected unavailable evidence ${n}.`);return y}):[],ve=h.decision==="review"?h.classification:"no_action",pe=me.map(n=>ft(n,O.get(n.sourceRef))),re=(e.now??(()=>new Date().toISOString()))(),Xe=new Set(He.map(n=>P(n.artifact))),he=x.filter(n=>!Xe.has(P(n))),ye=he.map(n=>n.createdAt).sort().at(-1),ke=ye?Ne(f?.throughCreatedAt,ye):Ne(f?.throughCreatedAt,re),Ee=D({previousCursor:f?.cursor??null,throughCreatedAt:ke,examined:he.map(q)}),et=`evaluation-review-${D({workspaceId:i.id,harnessRelease:r.harnessRelease,previousWatermark:f,cursor:Ee}).slice(0,24)}`,X=Ae({schemaVersion:"openpond.harnessEvaluationReviewReceipt.v1",id:et,ownerScope:i.ownerScope,workspaceRef:i.id,harnessRelease:q(r.harnessRelease),previousWatermark:f,nextWatermark:{cursor:Ee,throughCreatedAt:ke},selectedEvidence:pe,excludedEvidence:v,claim:h.decision==="review"?{fingerprint:D({schemaVersion:"openpond.harnessRefinementCandidateFingerprint.v1",classification:ve,triageLayer:h.triageLayer,recurrenceFamily:Rt(h.recurrenceFamily)}),recurrenceFamily:h.recurrenceFamily,statement:h.statement,...h.classification==="harness_maintenance"?{candidateDisposition:h.candidateDisposition}:{},independentOccurrences:new Set(me.map(n=>n.sourceRef)).size,unresolvedOccurrences:new Set(me.map(n=>n.sourceRef)).size}:null,classification:ve,triage:h.decision==="review"?[{layer:h.triageLayer,status:"unresolved",reason:h.reason,evidenceRefs:pe.map(n=>n.evidence)}]:[],reason:h.reason,nextAuthority:wt(ve),maxEstimatedCostUsd:t.limits.maxEstimatedCostUsd,tasksetProposal:null,evaluation:null,trainingQualification:null,policyVersion:"public-model-driven-harness-review-v1",createdAt:re,metadata:{examinedEvidence:Z,fullyReviewedEvidence:se.selectedIds?.size??S.length,estimatedTokens:ue,elapsedMs:performance.now()-s,explicitInvocation:!0,modelDecision:h.decision,modelConfidence:h.decision==="review"||h.decision==="resolve_candidate"?h.confidence:null,counterevidence:h.decision==="review"?h.counterevidence:null,expectedOutcome:h.decision==="review"?h.expectedOutcome:null,ignoredEvidence:h.ignoredEvidence,modelUsage:G}});await e.store.saveHarnessImprovementArtifact(i.id,"evaluation_review",X);let be=await fe({store:e.store,workspace:i,review:X,sourcePolicies:new Map(t.sourcePolicies.map(n=>[n.sourceRef,J(n)])),now:re});if(h.decision==="resolve_candidate"){let n=be.candidates.find(y=>y.id===h.candidateId&&y.fingerprint===h.candidateFingerprint);if(!n)throw new Error("Later-success decision referenced an unavailable candidate.");await Fe({store:e.store,candidate:n,review:X,evidence:pe,reason:h.reason,now:re})}return await Ke({...e,candidate:be.activeCandidate,review:X}),X}o(pt,"runSelectedLocalHarnessEvaluation");async function Ke(e){!e.continuation||e.candidate?.status!=="confirmed"||await je({store:e.store,storeDir:e.continuation.storeDir,candidate:e.candidate,review:e.review,stream:e.continuation.stream,signal:e.signal??new AbortController().signal,now:e.now})}o(Ke,"continueCandidateIfEnabled");function q(e){return{id:e.id,contentHash:e.contentHash}}o(q,"artifactRef");function P(e){return`${e.id}:${e.contentHash}`}o(P,"artifactKey");function J(e){return{policy:e.policy,state:e.state,checkedAt:e.checkedAt}}o(J,"sourcePolicyRef");function ft(e,t){return{evidence:q(e.artifact),kind:e.kind,sourceRef:e.sourceRef,sourcePolicy:J(t),occurrenceKey:D({evidence:q(e.artifact),sourceRef:e.sourceRef}),occurredAt:e.artifact.createdAt}}o(ft,"evidenceRef");function wt(e){return e==="runtime"?"runtime_service":e==="product"?"product_team":e==="taskset"||e==="harness_maintenance"?"human_review":e==="model_improvement"?"training_system":"none"}o(wt,"nextAuthority");function Ne(...e){return e.filter(t=>!!t).sort().at(-1)}o(Ne,"maxTimestamp");function Rt(e){return e.trim().toLocaleLowerCase("en-US").replace(/\s+/g," ")}o(Rt,"normalizeRecurrenceFamily");async function Ve(e,t){let s=new Map;for(let r of e)s.set(`${r.runRef}:${r.turnId}`,r);return Promise.all([...s.values()].map(t))}o(Ve,"uniqueTurnContexts");var Je="local-personal-work-v1";async function le(e){let t=await ae(e.store);if(!t||t.workspaceId!==e.workspaceId)throw new Error("Evaluation review requires the selected Personal Local Harness.");let s=await e.store.getHarnessWorkspace(e.workspaceId);if(!s||s.ownerScope.kind!=="personal"||s.location!=="local")throw new Error("Evaluation review requires the selected Personal Local Harness.");let[r,i]=await Promise.all([e.store.listHarnessImprovementArtifacts(e.workspaceId,"observation",1e4),e.store.listHarnessImprovementArtifacts(e.workspaceId,"trigger_decision",1e4)]),u=new Set([...r.map(m=>m.runRef),...i.map(m=>m.runRef)]),c=(e.now??(()=>new Date().toISOString()))(),d=await Promise.all([...u].sort().map(async m=>{let H=await e.store.getSession(m);return{sourceRef:m,policy:{id:`source-policy-${D({workspaceId:e.workspaceId,sourceRef:m,policyVersion:Je}).slice(0,24)}`,contentHash:D({workspaceId:e.workspaceId,sourceRef:m,policyVersion:Je})},state:H?"authorized":"deleted",checkedAt:c}}));return Qe({store:e.store,request:{sourcePolicies:d,limits:{maxEvidence:200,maxTokens:5e4,maxDurationMs:24e4,maxEstimatedCostUsd:e.maxEstimatedCostUsd}},stream:e.stream,signal:e.signal,now:e.now,continuation:e.stream?{storeDir:e.storeDir,stream:e.stream}:void 0})}o(le,"reviewSelectedLocalHarnessEvaluationFromHost");var gt=15e3;function Re(e,t){if(e==="manual")return null;let s=new Date(t);return s.setUTCDate(s.getUTCDate()+(e==="daily"?1:7)),s.toISOString()}o(Re,"nextHarnessEvaluationReviewRunAt");function us(e){let t=null,s=null,r=e.now??(()=>new Date().toISOString());async function i(){return s||(s=(async()=>{let u=await e.store.getSelectedHarnessWorkspace({ownerKind:"personal",ownerId:te});if(!u)return null;let c=await e.store.getHarnessEvaluationReviewSettings(u.id),d=r();if(!c.enabled&&!c.activityEnabled)return null;let m=c.enabled&&c.cadence!=="manual"&&!!c.nextRunAt&&c.nextRunAt<=d,H=c.activityEnabled&&await Ht({store:e.store,workspaceId:u.id,batchSize:c.activityBatchSize});if(!m&&!H)return null;let b={...c,nextRunAt:m?Re(c.cadence,d):c.nextRunAt,lastRunAt:d,lastError:null,updatedAt:d};await e.store.setHarnessEvaluationReviewSettings({workspaceId:u.id,settings:b});try{let l=await le({store:e.store,storeDir:e.storeDir,workspaceId:u.id,maxEstimatedCostUsd:c.maxEstimatedCostUsd,stream:e.stream,now:r});return await e.store.setHarnessEvaluationReviewSettings({workspaceId:u.id,settings:{...b,lastResult:{id:l.id,contentHash:l.contentHash,classification:l.classification},updatedAt:r()}}),e.logger?.info("Harness evaluation review schedule completed",{workspaceId:u.id,reviewId:l.id,classification:l.classification}),l}catch(l){let a=l instanceof Error?l.message:String(l);return await e.store.setHarnessEvaluationReviewSettings({workspaceId:u.id,settings:{...b,lastError:a,updatedAt:r()}}),e.logger?.warn("Harness evaluation review schedule failed",{workspaceId:u.id,error:a}),null}})().finally(()=>{s=null}),s)}return o(i,"runDueNow"),{start(){t||(t=setInterval(()=>{e.isClosing()||i()},e.tickMs??gt),t.unref?.(),i())},async stop(){t&&clearInterval(t),t=null,await s},runDueNow:i}}o(us,"createLocalHarnessEvaluationReviewScheduler");async function Ht(e){let[t,s]=await Promise.all([e.store.listHarnessImprovementArtifacts(e.workspaceId,"refiner_outcome",e.batchSize),e.store.listHarnessImprovementArtifacts(e.workspaceId,"evaluation_review",1)]),r=s[0]?.nextWatermark.throughCreatedAt??null;return t.filter(i=>!r||i.createdAt>r).length>=e.batchSize}o(Ht,"hasEventDrivenReviewBatch");import ge from"node:path";function Us(e){return{harnessHistoryPayload:o(()=>U(e.store),"harnessHistoryPayload"),updateHarnessBackgroundReviewPayload:o(t=>It({store:e.store,request:kt(t)}),"updateHarnessBackgroundReviewPayload"),reviewHarnessEvaluationPayload:o(t=>At({store:e.store,storeDir:e.storeDir,stream:e.evaluationReviewStream,request:ht(t)}),"reviewHarnessEvaluationPayload"),updateHarnessEvaluationReviewSchedulePayload:o(t=>Ct({store:e.store,request:yt(t)}),"updateHarnessEvaluationReviewSchedulePayload"),harnessDiffPayload:o(t=>qt({...e,request:Et(t)}),"harnessDiffPayload"),rollbackHarnessPayload:o(t=>_t({...e,request:bt(t)}),"rollbackHarnessPayload"),reviewHarnessProposalPayload:o(t=>Dt({...e,request:St(t)}),"reviewHarnessProposalPayload")}}o(Us,"createLocalHarnessSettingsRoutePayloads");function ht(e){if(!e||typeof e!="object")throw new Error("Harness evaluation review requires a workspace.");let t=e;if(typeof t.workspaceId!="string")throw new Error("Harness evaluation review requires a workspace.");if(t.maxEstimatedCostUsd!==void 0&&(typeof t.maxEstimatedCostUsd!="number"||!Number.isFinite(t.maxEstimatedCostUsd)||t.maxEstimatedCostUsd<0))throw new Error("Harness evaluation review cost must be a non-negative number.");return{workspaceId:t.workspaceId,maxEstimatedCostUsd:t.maxEstimatedCostUsd}}o(ht,"parseHarnessEvaluationReviewRequest");function yt(e){if(!e||typeof e!="object")throw new Error("Harness evaluation review schedule requires a workspace and cadence.");let t=e;if(typeof t.workspaceId!="string"||typeof t.enabled!="boolean"||typeof t.activityEnabled!="boolean"||typeof t.activityBatchSize!="number"||!Number.isInteger(t.activityBatchSize)||t.activityBatchSize<1||t.activityBatchSize>100||t.cadence!=="manual"&&t.cadence!=="daily"&&t.cadence!=="weekly"||typeof t.maxEstimatedCostUsd!="number"||!Number.isFinite(t.maxEstimatedCostUsd)||t.maxEstimatedCostUsd<0)throw new Error("Harness evaluation review schedule requires a valid workspace, cadence, and cost limit.");return{workspaceId:t.workspaceId,enabled:t.enabled,activityEnabled:t.activityEnabled,activityBatchSize:t.activityBatchSize,cadence:t.cadence,maxEstimatedCostUsd:t.maxEstimatedCostUsd}}o(yt,"parseHarnessEvaluationReviewScheduleRequest");function kt(e){if(!e||typeof e!="object")throw new Error("Harness background review requires a workspace and enabled state.");let t=e;if(typeof t.workspaceId!="string"||typeof t.enabled!="boolean")throw new Error("Harness background review requires a workspace and enabled state.");return{workspaceId:t.workspaceId,enabled:t.enabled}}o(kt,"parseHarnessBackgroundReviewRequest");function Ye(e,t){if(!e||typeof e!="object")throw new Error(`${t} requires an id and content hash.`);let s=e;if(typeof s.id!="string"||typeof s.contentHash!="string")throw new Error(`${t} requires an id and content hash.`);return{id:s.id,contentHash:s.contentHash}}o(Ye,"parseHarnessReleaseRef");function Et(e){if(!e||typeof e!="object")throw new Error("Harness release diff requires a workspace and target release.");let t=e;if(typeof t.workspaceId!="string")throw new Error("Harness release diff requires a workspace and target release.");return{workspaceId:t.workspaceId,baseRelease:t.baseRelease===null?null:Ye(t.baseRelease,"Harness base release"),targetRelease:Ye(t.targetRelease,"Harness target release")}}o(Et,"parseHarnessReleaseDiffRequest");function bt(e){if(!e||typeof e!="object")throw new Error("Harness rollback requires a workspace and target release.");let t=e,s=t.targetRelease;if(typeof t.workspaceId!="string"||!s||typeof s!="object")throw new Error("Harness rollback requires a workspace and target release.");let r=s;if(typeof r.id!="string"||typeof r.contentHash!="string")throw new Error("Harness rollback target requires an id and content hash.");return{workspaceId:t.workspaceId,targetRelease:{id:r.id,contentHash:r.contentHash}}}o(bt,"parseHarnessRollbackRequest");function St(e){if(!e||typeof e!="object")throw new Error("Harness review requires a workspace, proposal, and decision.");let t=e,s=t.proposal;if(typeof t.workspaceId!="string"||t.decision!=="approve"&&t.decision!=="decline"||!s||typeof s!="object")throw new Error("Harness review requires a workspace, proposal, and decision.");let r=s;if(typeof r.id!="string"||typeof r.contentHash!="string")throw new Error("Harness proposal review requires an id and content hash.");return{workspaceId:t.workspaceId,proposal:{id:r.id,contentHash:r.contentHash},decision:t.decision}}o(St,"parseHarnessProposalReviewRequest");async function U(e){let t=await e.getSelectedHarnessWorkspace({ownerKind:"personal",ownerId:te});if(!t)return{workspace:null,backgroundReview:{enabled:!1,updatedAt:null},evaluationReviewSchedule:{enabled:!1,activityEnabled:!1,activityBatchSize:10,cadence:"manual",maxEstimatedCostUsd:0,nextRunAt:null,lastRunAt:null,lastResult:null,lastError:null,updatedAt:null},releases:[],changes:[],routes:[],evaluationReviews:[],refinementCandidates:[],modelImprovementQualifications:[],pendingReviews:[],memories:[]};let[s,r,i,u,c,d,m,H,b,l,a,p,f]=await Promise.all([e.getHarnessBackgroundReviewSettings(t.id),e.getHarnessEvaluationReviewSettings(t.id),e.listHarnessReleaseRecords(t.id),e.listHarnessAdvanceReceipts(t.id),e.listHarnessImprovementArtifacts(t.id,"proposal",1e3),e.listHarnessImprovementArtifacts(t.id,"targeted_validation",1e3),e.listHarnessImprovementArtifacts(t.id,"route_decision",1e3),e.listHarnessImprovementArtifacts(t.id,"evaluation_review",1e3),e.listHarnessRefinementCandidates(t.id),e.listHarnessImprovementArtifacts(t.id,"training_qualification",1e3),e.listHarnessImprovementArtifacts(t.id,"apply_receipt",1e3),e.listHarnessImprovementArtifacts(t.id,"refiner_outcome",1e3),e.listHarnessImprovementArtifacts(t.id,"trigger_decision",1e3)]),R=c,A=d,w=m,T=a,M=p,F=f,$=u.slice().reverse().map(g=>{let v=g.proposal?R.find(E=>E.id===g.proposal.id&&E.contentHash===g.proposal.contentHash)??null:null,_=v?M.find(E=>E.proposal?.id===v.id&&E.proposal.contentHash===v.contentHash)??null:null,I=_?F.find(E=>E.id===_.trigger.id&&E.contentHash===_.trigger.contentHash)??null:null;return{receipt:g,proposal:v,validations:v?A.filter(E=>E.proposal.id===v.id&&E.proposal.contentHash===v.contentHash):[],routeDecision:v?w.find(E=>E.metadata.proposalId===v.id)??null:null,applyReceipt:v?T.find(E=>E.proposal.id===v.id&&E.proposal.contentHash===v.contentHash)??null:null,outcome:_,trigger:I}}),Y=new Set($.flatMap(g=>g.routeDecision?[g.routeDecision.id]:[])),W=w.filter(g=>!Y.has(g.id)).map(g=>{let v=F.find(I=>I.id===g.trigger.id&&I.contentHash===g.trigger.contentHash)??null,_=M.find(I=>I.trigger.id===g.trigger.id&&I.trigger.contentHash===g.trigger.contentHash)??null;return{decision:g,trigger:v,outcome:_}}),O=R.reduce((g,v)=>{let I=T.filter(x=>x.proposal.id===v.id&&x.proposal.contentHash===v.contentHash).sort((x,Z)=>Z.createdAt.localeCompare(x.createdAt))[0]??null;if(!I||I.decision!=="retained")return g;let E=M.find(x=>x.proposal?.id===v.id&&x.proposal.contentHash===v.contentHash)??null,S=E?F.find(x=>x.id===E.trigger.id&&x.contentHash===E.trigger.contentHash)??null:null;return g.push({proposal:v,validations:A.filter(x=>x.proposal.id===v.id&&x.proposal.contentHash===v.contentHash),applyReceipt:I,outcome:E,trigger:S}),g},[]);return{workspace:t,backgroundReview:s,evaluationReviewSchedule:r,releases:i.map(g=>({id:g.harnessRelease.id,contentHash:g.harnessRelease.contentHash,sourceRevision:g.sourceRevision,createdAt:g.createdAt,current:t.currentChannel.release?.contentHash===g.harnessRelease.contentHash,files:g.harnessRelease.files.map(v=>({id:v.id,path:v.path,contentHash:v.contentHash,sizeBytes:v.sizeBytes,mediaType:v.mediaType}))})),changes:$,routes:W,evaluationReviews:H,refinementCandidates:b,modelImprovementQualifications:l,pendingReviews:O,memories:await e.listHarnessMemories(t.id)}}o(U,"localHarnessHistoryPayload");async function At(e){let t=await e.store.getHarnessEvaluationReviewSettings(e.request.workspaceId),s=await le({store:e.store,storeDir:e.storeDir,workspaceId:e.request.workspaceId,maxEstimatedCostUsd:e.request.maxEstimatedCostUsd??t.maxEstimatedCostUsd,stream:e.stream}),r=new Date().toISOString();return await e.store.setHarnessEvaluationReviewSettings({workspaceId:e.request.workspaceId,settings:{...t,lastRunAt:r,lastResult:{id:s.id,contentHash:s.contentHash,classification:s.classification},lastError:null,updatedAt:r}}),{receipt:s,history:await U(e.store)}}o(At,"reviewLocalHarnessEvaluationFromSettings");async function Ct(e){let t=await e.store.getHarnessWorkspace(e.request.workspaceId);if(!t||t.ownerScope.kind!=="personal"||t.location!=="local")throw new Error("Evaluation review schedule requires the selected Personal Local Harness.");if((await e.store.getSelectedHarnessWorkspace({ownerKind:"personal",ownerId:te}))?.id!==t.id)throw new Error("Evaluation review schedule requires the selected Personal Local Harness.");let r=await e.store.getHarnessEvaluationReviewSettings(t.id),i=new Date().toISOString(),u=e.request.enabled&&e.request.cadence!=="manual";return await e.store.setHarnessEvaluationReviewSettings({workspaceId:t.id,settings:{...r,enabled:u,activityEnabled:e.request.activityEnabled,activityBatchSize:e.request.activityBatchSize,cadence:e.request.cadence,maxEstimatedCostUsd:e.request.maxEstimatedCostUsd,nextRunAt:u?Re(e.request.cadence,i):null,lastError:null,updatedAt:i}}),{history:await U(e.store)}}o(Ct,"updateLocalHarnessEvaluationReviewScheduleFromSettings");async function It(e){let t=await e.store.getHarnessWorkspace(e.request.workspaceId);if(!t||t.ownerScope.kind!=="personal"||t.location!=="local")throw new Error("Background review settings require the selected Personal Local Harness.");return await e.store.setHarnessBackgroundReviewSettings({workspaceId:t.id,enabled:e.request.enabled,updatedAt:new Date().toISOString()}),{history:await U(e.store)}}o(It,"updateLocalHarnessBackgroundReviewFromSettings");async function Ze(e){let t=await e.store.getHarnessReleaseRecord(e.release.contentHash);if(!t||t.workspaceId!==e.workspaceId||t.harnessRelease.id!==e.release.id||t.harnessRelease.contentHash!==e.release.contentHash)throw new Error(`${e.label} is unavailable or hash-mismatched.`);return t}o(Ze,"requireHarnessReleaseRecord");function Ge(e,t){let s=ge.resolve(e.bundlePath,"source"),r=ge.resolve(s,...t.split("/"));if(r!==s&&!r.startsWith(`${s}${ge.sep}`))throw new Error(`Harness release contains an unsafe file path: ${t}.`);return r}o(Ge,"releaseSourcePath");function xt(e){return e.patch.split(`
5
5
  `).map(t=>t.startsWith("diff --git ")?`diff --git a/${e.filePath} b/${e.filePath}`:t.startsWith("--- ")?e.baseExists?`--- a/${e.filePath}`:"--- /dev/null":t.startsWith("+++ ")?e.targetExists?`+++ b/${e.filePath}`:"+++ /dev/null":t).join(`
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{Rc as l,fe as h,gh as w,jh as f,kh as g,lh as E,mj as a,oj as I,rh as S,zj as y}from"./chunk-XJU47QS2.js";import{c as s,f as c,h as p}from"./chunk-3M53YXEI.js";import{A as u}from"./chunk-X2J2P5ZT.js";import{a as m}from"./chunk-FTQLQJQV.js";var M=u.object({modelProjectId:a.shape.modelProjectId,request:I}).strict(),C=new Set(["hosted-decision-capability","hosted-compile-decision","hosted-prepare-decision","hosted-start-decision","hosted-cancel-decision","hosted-decision-execution","hosted-decision-executions","hosted-save-decision-model","hosted-score-decision","hosted-decision-serving","hosted-control-decision-serving"]);async function b(D){let{action:i,target:d,teamId:o,options:t,client:n,readInput:x}=D;if(i==="hosted-decision-execution"){if(!d)throw new Error("Supply the original decision execution ID.");return n.getDecisionExecution(o,d)}if(i==="hosted-decision-executions"){if(d)throw new Error("List decision executions using filters.");let e=S.parse(Object.fromEntries(Object.entries({id:s(t,"id")||void 0,projectId:s(t,"projectId")||void 0,mode:s(t,"mode")||void 0,phase:s(t,"phase")||void 0,cursor:s(t,"cursor")||void 0,limit:p(t.limit,"--limit")}).filter(([,v])=>v!==void 0)));return n.listDecisionExecutions(o,e)}let r=await x();if(i==="hosted-decision-serving"){let e=a.parse(r);return n.decisionModelServing(e.modelProjectId,{teamId:o,versionHash:e.versionHash})}if(i==="hosted-control-decision-serving"){let e=y.parse(r);if(e.request.teamId!==o)throw new Error("Use this Model's original workspace.");if(e.request.action==="activate"&&!c(t.yes))throw new Error("Activating billed decision serving capacity requires --yes.");return n.controlDecisionModelServing(e.modelProjectId,e.request)}if(i==="hosted-score-decision"){let e=M.parse(r);if(e.request.teamId!==o)throw new Error("Use this Model's original workspace.");if(!c(t.yes))throw new Error("Billed decision scoring requires --yes.");return n.scoreDecisionModel(e.modelProjectId,e.request)}if(i==="hosted-decision-capability"){let e=h.parse(r);if(e.teamId!==o)throw new Error("Use this input's original workspace.");return n.decisionExecutionCapability(e)}if(i==="hosted-compile-decision"){let e=w.parse(r);if(e.teamId!==o)throw new Error("Use this input's original workspace.");return n.compileDecisionExecution(e)}if(i==="hosted-prepare-decision"){let e=f.parse(r);if(e.teamId!==o)throw new Error("Use this input's original workspace.");return n.prepareDecisionExecution(e)}if(i==="hosted-start-decision"){let e=g.parse(r);if(e.teamId!==o)throw new Error("Use this execution's original workspace.");if(!c(t.yes))throw new Error("Starting paid decision execution requires --yes.");return n.startDecisionExecution(e)}if(i==="hosted-cancel-decision"){let e=E.parse(r);if(e.teamId!==o)throw new Error("Use this execution's original workspace.");return n.cancelDecisionExecution(e)}if(i==="hosted-save-decision-model"){let e=l.parse(r);if(e.teamId!==o)throw new Error("Use this result's original workspace.");return n.saveDecisionResultModel(e)}throw new Error("Unsupported decision command.")}m(b,"runHostedDecisionCommand");export{C as a,b};
2
+ import{Rc as l,fe as h,gh as w,jh as f,kh as g,lh as E,mj as a,oj as I,rh as S,zj as y}from"./chunk-AWD72O3G.js";import{c as s,f as c,h as p}from"./chunk-3M53YXEI.js";import{A as u}from"./chunk-X2J2P5ZT.js";import{a as m}from"./chunk-FTQLQJQV.js";var M=u.object({modelProjectId:a.shape.modelProjectId,request:I}).strict(),C=new Set(["hosted-decision-capability","hosted-compile-decision","hosted-prepare-decision","hosted-start-decision","hosted-cancel-decision","hosted-decision-execution","hosted-decision-executions","hosted-save-decision-model","hosted-score-decision","hosted-decision-serving","hosted-control-decision-serving"]);async function b(D){let{action:i,target:d,teamId:o,options:t,client:n,readInput:x}=D;if(i==="hosted-decision-execution"){if(!d)throw new Error("Supply the original decision execution ID.");return n.getDecisionExecution(o,d)}if(i==="hosted-decision-executions"){if(d)throw new Error("List decision executions using filters.");let e=S.parse(Object.fromEntries(Object.entries({id:s(t,"id")||void 0,projectId:s(t,"projectId")||void 0,mode:s(t,"mode")||void 0,phase:s(t,"phase")||void 0,cursor:s(t,"cursor")||void 0,limit:p(t.limit,"--limit")}).filter(([,v])=>v!==void 0)));return n.listDecisionExecutions(o,e)}let r=await x();if(i==="hosted-decision-serving"){let e=a.parse(r);return n.decisionModelServing(e.modelProjectId,{teamId:o,versionHash:e.versionHash})}if(i==="hosted-control-decision-serving"){let e=y.parse(r);if(e.request.teamId!==o)throw new Error("Use this Model's original workspace.");if(e.request.action==="activate"&&!c(t.yes))throw new Error("Activating billed decision serving capacity requires --yes.");return n.controlDecisionModelServing(e.modelProjectId,e.request)}if(i==="hosted-score-decision"){let e=M.parse(r);if(e.request.teamId!==o)throw new Error("Use this Model's original workspace.");if(!c(t.yes))throw new Error("Billed decision scoring requires --yes.");return n.scoreDecisionModel(e.modelProjectId,e.request)}if(i==="hosted-decision-capability"){let e=h.parse(r);if(e.teamId!==o)throw new Error("Use this input's original workspace.");return n.decisionExecutionCapability(e)}if(i==="hosted-compile-decision"){let e=w.parse(r);if(e.teamId!==o)throw new Error("Use this input's original workspace.");return n.compileDecisionExecution(e)}if(i==="hosted-prepare-decision"){let e=f.parse(r);if(e.teamId!==o)throw new Error("Use this input's original workspace.");return n.prepareDecisionExecution(e)}if(i==="hosted-start-decision"){let e=g.parse(r);if(e.teamId!==o)throw new Error("Use this execution's original workspace.");if(!c(t.yes))throw new Error("Starting paid decision execution requires --yes.");return n.startDecisionExecution(e)}if(i==="hosted-cancel-decision"){let e=E.parse(r);if(e.teamId!==o)throw new Error("Use this execution's original workspace.");return n.cancelDecisionExecution(e)}if(i==="hosted-save-decision-model"){let e=l.parse(r);if(e.teamId!==o)throw new Error("Use this result's original workspace.");return n.saveDecisionResultModel(e)}throw new Error("Unsupported decision command.")}m(b,"runHostedDecisionCommand");export{C as a,b};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as y,b as M,c as x,d as J,e as D,f as G,g as W,h as Y}from"./chunk-4DYWVGVS.js";import{a as F,b as K}from"./chunk-4TO743HO.js";import{I as A,K as N,L as v,O as k,P as U,R as S,S as j,U as b,W as B,X as m,a as V,b as P,h as g,k as O,m as $,o as H,s as z}from"./chunk-A77DLBR4.js";import{E as T,F as L,G as I,y as q}from"./chunk-3JYPUOK4.js";import{A as w}from"./chunk-X2J2P5ZT.js";import{a as h}from"./chunk-FTQLQJQV.js";var C=class{static{h(this,"ExperimentalServerTasks")}constructor(e){this._server=e}requestStream(e,t,o){return this._server.requestStream(e,t,o)}createMessageStream(e,t){let o=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!o?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let s=e.messages[e.messages.length-1],i=Array.isArray(s.content)?s.content:[s.content],n=i.some(a=>a.type==="tool_result"),r=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=r?Array.isArray(r.content)?r.content:[r.content]:[],l=c.some(a=>a.type==="tool_use");if(n){if(i.some(a=>a.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!l)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(l){let a=new Set(c.filter(p=>p.type==="tool_use").map(p=>p.id)),u=new Set(i.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(a.size!==u.size||![...a].every(p=>u.has(p)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},S,t)}elicitInputStream(e,t){let o=this._server.getClientCapabilities(),s=e.mode??"form";switch(s){case"url":{if(!o?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!o?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let i=s==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:i},b,t)}async getTask(e,t){return this._server.getTask({taskId:e},t)}async getTaskResult(e,t,o){return this._server.getTaskResult({taskId:e},t,o)}async listTasks(e,t){return this._server.listTasks(e?{cursor:e}:void 0,t)}async cancelTask(e,t){return this._server.cancelTask({taskId:e},t)}};var E=class extends J{static{h(this,"Server")}constructor(e,t){super(t),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(k.options.map((o,s)=>[o,s])),this.isMessageIgnored=(o,s)=>{let i=this._loggingLevels.get(s);return i?this.LOG_LEVEL_SEVERITY.get(o)<this.LOG_LEVEL_SEVERITY.get(i):!1},this._capabilities=t?.capabilities??{},this._instructions=t?.instructions,this._jsonSchemaValidator=t?.jsonSchemaValidator??new G,this.setRequestHandler($,o=>this._oninitialize(o)),this.setNotificationHandler(H,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(U,async(o,s)=>{let i=s.sessionId||s.requestInfo?.headers["mcp-session-id"]||void 0,{level:n}=o.params,r=k.safeParse(n);return r.success&&this._loggingLevels.set(i,r.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new C(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=D(this._capabilities,e)}setRequestHandler(e,t){let s=M(e)?.method;if(!s)throw new Error("Schema is missing a method literal");let i=x(s);if(typeof i!="string")throw new Error("Schema method literal must be a string");if(i==="tools/call"){let r=h(async(c,l)=>{let a=y(v,c);if(!a.success){let d=a.error instanceof Error?a.error.message:String(a.error);throw new m(g.InvalidParams,`Invalid tools/call request: ${d}`)}let{params:u}=a.data,p=await Promise.resolve(t(c,l));if(u.task){let d=y(z,p);if(!d.success){let X=d.error instanceof Error?d.error.message:String(d.error);throw new m(g.InvalidParams,`Invalid task creation result: ${X}`)}return d.data}let _=y(N,p);if(!_.success){let d=_.error instanceof Error?_.error.message:String(_.error);throw new m(g.InvalidParams,`Invalid tools/call result: ${d}`)}return _.data},"wrappedHandler");return super.setRequestHandler(e,r)}return super.setRequestHandler(e,t)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Y(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&W(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let t=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:P.includes(t)?t:V,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},O)}async createMessage(e,t){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),n=e.messages.length>1?e.messages[e.messages.length-2]:void 0,r=n?Array.isArray(n.content)?n.content:[n.content]:[],c=r.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let l=new Set(r.filter(u=>u.type==="tool_use").map(u=>u.id)),a=new Set(s.filter(u=>u.type==="tool_result").map(u=>u.toolUseId));if(l.size!==a.size||![...l].every(u=>a.has(u)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},j,t):this.request({method:"sampling/createMessage",params:e},S,t)}async elicitInput(e,t){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let s=e;return this.request({method:"elicitation/create",params:s},b,t)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let s=e.mode==="form"?e:{...e,mode:"form"},i=await this.request({method:"elicitation/create",params:s},b,t);if(i.action==="accept"&&i.content&&s.requestedSchema)try{let r=this._jsonSchemaValidator.getValidator(s.requestedSchema)(i.content);if(!r.valid)throw new m(g.InvalidParams,`Elicitation response content does not match requested schema: ${r.errorMessage}`)}catch(n){throw n instanceof m?n:new m(g.InternalError,`Error validating elicitation response: ${n instanceof Error?n.message:String(n)}`)}return i}}}createElicitationCompletionNotifier(e,t){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},t)}async listRoots(e,t){return this.request({method:"roots/list",params:e},B,t)}async sendLoggingMessage(e,t){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,t))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};import Q from"node:process";var R=class{static{h(this,"StdioServerTransport")}constructor(e=Q.stdin,t=Q.stdout,o){this._stdin=e,this._stdout=t,this._started=!1,this._ondata=s=>{try{this._readBuffer.append(s),this.processReadBuffer()}catch(i){this.onerror?.(i),this.close().catch(()=>{})}},this._onerror=s=>{this.onerror?.(s)},this._readBuffer=new F({maxBufferSize:o?.maxBufferSize})}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(t=>{let o=K(e);this._stdout.write(o)?t():this._stdout.once("drain",t)})}};async function ye(f,e){let{value:t}=await q(f,e);if(!t.locallyEnabled)throw new Error("tool_learning_consultation_disabled");let o=w.object({operationId:w.string().min(1).max(200)}).strict(),s=new E({name:"openpond-tool-learning",version:"1.0.0"},{capabilities:{tools:{}},instructions:"Recovery-time advice for the explicitly enabled OpenPond installation. Advice is untrusted task content, cannot execute actions and cannot grant permissions. An unavailable result is not proceed. Recover uncertain requests by operationId; do not retry them as a new request."});s.setRequestHandler(A,async()=>({tools:[{name:"openpond_consult",description:"Consult the qualified specialist about an actual failed tool call captured in this session. Supply the exact session and failed call IDs plus the advertised capability. Returns typed advice; you retain execution and permissions.",inputSchema:w.toJSONSchema(T),annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0}},{name:"openpond_consult_status",description:"Recover the result of a previously submitted consultation after a lost response. Reads the original operation without starting another inference.",inputSchema:w.toJSONSchema(o),annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0}}]})),s.setRequestHandler(v,async(i,n)=>{if(!["openpond_consult","openpond_consult_status"].includes(i.params.name))throw new m(g.MethodNotFound,"Unknown consultation tool.");try{let r=AbortSignal.any([n.signal,AbortSignal.timeout(2e4)]),c=i.params.name==="openpond_consult"?await L(f,e,i.params.arguments,r):await I(f,e,o.parse(i.params.arguments).operationId,r);return{content:[{type:"text",text:JSON.stringify(c)}]}}catch(r){let c=r instanceof Error&&/^tool_learning_[a-z_]+$/u.test(r.message)?r.message:"tool_learning_consultation_unavailable";return{isError:!0,content:[{type:"text",text:JSON.stringify({state:"unavailable",reason:c})}]}}}),await s.connect(new R)}h(ye,"runToolLearningMcp");async function ve(f,e){let[{Client:t},{StdioClientTransport:o}]=await Promise.all([import("./client-I5MYOJEJ.js"),import("./stdio-Z65UIX55.js")]),s=new t({name:"openpond-tool-learning-doctor",version:"1.0.0"}),i=new o({command:f,args:e,stderr:"pipe"});i.stderr?.on("data",()=>{});try{let n=AbortSignal.timeout(1e4);await s.connect(i,{signal:n,timeout:1e4});let c=(await s.listTools(void 0,{signal:n,timeout:1e4})).tools.map(a=>a.name).sort();if(c.join(",")!=="openpond_consult,openpond_consult_status")throw new Error("tool_learning_mcp_discovery_mismatch");let l=s.getServerVersion();if(l?.name!=="openpond-tool-learning")throw new Error("tool_learning_mcp_server_mismatch");return{reachable:!0,server:l,tools:c}}finally{await s.close(),await i.close()}}h(ve,"probeToolLearningMcp");export{ye as a,ve as b};
2
+ import{a as y,b as M,c as x,d as J,e as D,f as G,g as W,h as Y}from"./chunk-4DYWVGVS.js";import{a as F,b as K}from"./chunk-4TO743HO.js";import{I as A,K as N,L as v,O as k,P as U,R as S,S as j,U as b,W as B,X as m,a as V,b as P,h as g,k as O,m as $,o as H,s as z}from"./chunk-A77DLBR4.js";import{E as T,F as L,G as I,y as q}from"./chunk-4JKWCLTQ.js";import{A as w}from"./chunk-X2J2P5ZT.js";import{a as h}from"./chunk-FTQLQJQV.js";var C=class{static{h(this,"ExperimentalServerTasks")}constructor(e){this._server=e}requestStream(e,t,o){return this._server.requestStream(e,t,o)}createMessageStream(e,t){let o=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!o?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let s=e.messages[e.messages.length-1],i=Array.isArray(s.content)?s.content:[s.content],n=i.some(a=>a.type==="tool_result"),r=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=r?Array.isArray(r.content)?r.content:[r.content]:[],l=c.some(a=>a.type==="tool_use");if(n){if(i.some(a=>a.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!l)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(l){let a=new Set(c.filter(p=>p.type==="tool_use").map(p=>p.id)),u=new Set(i.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(a.size!==u.size||![...a].every(p=>u.has(p)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},S,t)}elicitInputStream(e,t){let o=this._server.getClientCapabilities(),s=e.mode??"form";switch(s){case"url":{if(!o?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!o?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let i=s==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:i},b,t)}async getTask(e,t){return this._server.getTask({taskId:e},t)}async getTaskResult(e,t,o){return this._server.getTaskResult({taskId:e},t,o)}async listTasks(e,t){return this._server.listTasks(e?{cursor:e}:void 0,t)}async cancelTask(e,t){return this._server.cancelTask({taskId:e},t)}};var E=class extends J{static{h(this,"Server")}constructor(e,t){super(t),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(k.options.map((o,s)=>[o,s])),this.isMessageIgnored=(o,s)=>{let i=this._loggingLevels.get(s);return i?this.LOG_LEVEL_SEVERITY.get(o)<this.LOG_LEVEL_SEVERITY.get(i):!1},this._capabilities=t?.capabilities??{},this._instructions=t?.instructions,this._jsonSchemaValidator=t?.jsonSchemaValidator??new G,this.setRequestHandler($,o=>this._oninitialize(o)),this.setNotificationHandler(H,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(U,async(o,s)=>{let i=s.sessionId||s.requestInfo?.headers["mcp-session-id"]||void 0,{level:n}=o.params,r=k.safeParse(n);return r.success&&this._loggingLevels.set(i,r.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new C(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=D(this._capabilities,e)}setRequestHandler(e,t){let s=M(e)?.method;if(!s)throw new Error("Schema is missing a method literal");let i=x(s);if(typeof i!="string")throw new Error("Schema method literal must be a string");if(i==="tools/call"){let r=h(async(c,l)=>{let a=y(v,c);if(!a.success){let d=a.error instanceof Error?a.error.message:String(a.error);throw new m(g.InvalidParams,`Invalid tools/call request: ${d}`)}let{params:u}=a.data,p=await Promise.resolve(t(c,l));if(u.task){let d=y(z,p);if(!d.success){let X=d.error instanceof Error?d.error.message:String(d.error);throw new m(g.InvalidParams,`Invalid task creation result: ${X}`)}return d.data}let _=y(N,p);if(!_.success){let d=_.error instanceof Error?_.error.message:String(_.error);throw new m(g.InvalidParams,`Invalid tools/call result: ${d}`)}return _.data},"wrappedHandler");return super.setRequestHandler(e,r)}return super.setRequestHandler(e,t)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Y(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&W(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let t=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:P.includes(t)?t:V,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},O)}async createMessage(e,t){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),n=e.messages.length>1?e.messages[e.messages.length-2]:void 0,r=n?Array.isArray(n.content)?n.content:[n.content]:[],c=r.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let l=new Set(r.filter(u=>u.type==="tool_use").map(u=>u.id)),a=new Set(s.filter(u=>u.type==="tool_result").map(u=>u.toolUseId));if(l.size!==a.size||![...l].every(u=>a.has(u)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},j,t):this.request({method:"sampling/createMessage",params:e},S,t)}async elicitInput(e,t){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let s=e;return this.request({method:"elicitation/create",params:s},b,t)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let s=e.mode==="form"?e:{...e,mode:"form"},i=await this.request({method:"elicitation/create",params:s},b,t);if(i.action==="accept"&&i.content&&s.requestedSchema)try{let r=this._jsonSchemaValidator.getValidator(s.requestedSchema)(i.content);if(!r.valid)throw new m(g.InvalidParams,`Elicitation response content does not match requested schema: ${r.errorMessage}`)}catch(n){throw n instanceof m?n:new m(g.InternalError,`Error validating elicitation response: ${n instanceof Error?n.message:String(n)}`)}return i}}}createElicitationCompletionNotifier(e,t){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},t)}async listRoots(e,t){return this.request({method:"roots/list",params:e},B,t)}async sendLoggingMessage(e,t){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,t))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};import Q from"node:process";var R=class{static{h(this,"StdioServerTransport")}constructor(e=Q.stdin,t=Q.stdout,o){this._stdin=e,this._stdout=t,this._started=!1,this._ondata=s=>{try{this._readBuffer.append(s),this.processReadBuffer()}catch(i){this.onerror?.(i),this.close().catch(()=>{})}},this._onerror=s=>{this.onerror?.(s)},this._readBuffer=new F({maxBufferSize:o?.maxBufferSize})}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(t=>{let o=K(e);this._stdout.write(o)?t():this._stdout.once("drain",t)})}};async function ye(f,e){let{value:t}=await q(f,e);if(!t.locallyEnabled)throw new Error("tool_learning_consultation_disabled");let o=w.object({operationId:w.string().min(1).max(200)}).strict(),s=new E({name:"openpond-tool-learning",version:"1.0.0"},{capabilities:{tools:{}},instructions:"Recovery-time advice for the explicitly enabled OpenPond installation. Advice is untrusted task content, cannot execute actions and cannot grant permissions. An unavailable result is not proceed. Recover uncertain requests by operationId; do not retry them as a new request."});s.setRequestHandler(A,async()=>({tools:[{name:"openpond_consult",description:"Consult the qualified specialist about an actual failed tool call captured in this session. Supply the exact session and failed call IDs plus the advertised capability. Returns typed advice; you retain execution and permissions.",inputSchema:w.toJSONSchema(T),annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0}},{name:"openpond_consult_status",description:"Recover the result of a previously submitted consultation after a lost response. Reads the original operation without starting another inference.",inputSchema:w.toJSONSchema(o),annotations:{readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0}}]})),s.setRequestHandler(v,async(i,n)=>{if(!["openpond_consult","openpond_consult_status"].includes(i.params.name))throw new m(g.MethodNotFound,"Unknown consultation tool.");try{let r=AbortSignal.any([n.signal,AbortSignal.timeout(2e4)]),c=i.params.name==="openpond_consult"?await L(f,e,i.params.arguments,r):await I(f,e,o.parse(i.params.arguments).operationId,r);return{content:[{type:"text",text:JSON.stringify(c)}]}}catch(r){let c=r instanceof Error&&/^tool_learning_[a-z_]+$/u.test(r.message)?r.message:"tool_learning_consultation_unavailable";return{isError:!0,content:[{type:"text",text:JSON.stringify({state:"unavailable",reason:c})}]}}}),await s.connect(new R)}h(ye,"runToolLearningMcp");async function ve(f,e){let[{Client:t},{StdioClientTransport:o}]=await Promise.all([import("./client-I5MYOJEJ.js"),import("./stdio-Z65UIX55.js")]),s=new t({name:"openpond-tool-learning-doctor",version:"1.0.0"}),i=new o({command:f,args:e,stderr:"pipe"});i.stderr?.on("data",()=>{});try{let n=AbortSignal.timeout(1e4);await s.connect(i,{signal:n,timeout:1e4});let c=(await s.listTools(void 0,{signal:n,timeout:1e4})).tools.map(a=>a.name).sort();if(c.join(",")!=="openpond_consult,openpond_consult_status")throw new Error("tool_learning_mcp_discovery_mismatch");let l=s.getServerVersion();if(l?.name!=="openpond-tool-learning")throw new Error("tool_learning_mcp_server_mismatch");return{reachable:!0,server:l,tools:c}}finally{await s.close(),await i.close()}}h(ve,"probeToolLearningMcp");export{ye as a,ve as b};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as Je}from"./chunk-XTT3K3TR.js";import{a as F,e as $,f as Ye,h as Ue}from"./chunk-HUMNLSCV.js";import{b as ne}from"./chunk-EICS777E.js";import{a as $e}from"./chunk-FEAKTSRS.js";import{a as Ge}from"./chunk-TPOAAJKA.js";import{f as Fe,h as R}from"./chunk-O5ZOW474.js";import{b as We}from"./chunk-NDNSLCPE.js";import{d as ze}from"./chunk-O4YHISU2.js";import{b as O,c as W}from"./chunk-HT6ILPD6.js";import{a as Me}from"./chunk-BTEBZYK3.js";import{d as X}from"./chunk-VMW23TIZ.js";import{a as Oe}from"./chunk-VFH5C6D2.js";import{d as je,e as Ne}from"./chunk-XLZMSD5K.js";import{m as Be}from"./chunk-BQNU4HZW.js";import{u as se}from"./chunk-OFJPOTES.js";import{I as Q,mc as Ve,qc as qe,v as Ae}from"./chunk-WXG3G2O6.js";import{i as Le,j as Ce}from"./chunk-73COPJ32.js";import{f as Te}from"./chunk-64EDQ7UV.js";import{j as Ie}from"./chunk-XKDOPNQ5.js";import{f as _e}from"./chunk-GR4MJJCE.js";import{r as U,v as K,w as be}from"./chunk-GG6PM7TB.js";import{Ca as De,Ia as He,aa as q,ba as Y,ha as Pe,i as J,ia as Ee,ja as L,oa as N,za as Se}from"./chunk-BYVE4TMU.js";import{w as xe,x as Re,z}from"./chunk-D6L6UNUQ.js";import{S as ve,d as we,da as ye}from"./chunk-ZEOYNUHL.js";import{Ia as me,Oa as he,bb as ge,e as ce,ja as le,kb as ke,oa as de,pa as M,qa as pe,ra as fe,xa as ue}from"./chunk-ZY32SZ2P.js";import{r as ie}from"./chunk-OTDDXEQ6.js";import{a as re,f as oe}from"./chunk-HNQPEOJD.js";import{c as b,d as _,e as ae,m as V,n as f}from"./chunk-RCT3O3HQ.js";import{A as x}from"./chunk-X2J2P5ZT.js";import{a as h}from"./chunk-FTQLQJQV.js";import{promises as it}from"node:fs";import nt from"node:path";async function _t(e){let o=e.definition.tasksetRelease,c=await je(e.store,e.harnessRelease);if(!c)throw new Error("Evaluation Profile Harness release is unavailable.");let a=await lt({...e,runtime:c});if(a)return a;let s=await e.store.listTasksetRevisions(e.profileId);for(let i of s){if(o.id!==i.id&&o.id!==`taskset-release-${i.id}-r${i.revision}`)continue;let r=await ct(e.storeDir,i);if(r.taskset.id===o.id&&r.taskset.contentHash===o.contentHash)return r}throw new Error(`Released Taskset ${o.id} is unavailable in Profile ${e.profileId}.`)}h(_t,"loadLocalProfileEvaluationTaskset");async function ct(e,o){let c=o.metadata.importedPackageHash;if(typeof c=="string"){let i=await W(e,c);if(i.taskset.id!==o.id||i.taskset.revision!==o.revision)throw new Error("Imported evaluation Taskset differs from its local Profile revision.");return i}if(De(o)!==o.contentHash)throw new Error("Authored evaluation Taskset differs from its immutable revision.");let a=He({taskset:o,adapterId:ze(o)}),s=await We({storeDir:e,taskset:o,content:{schemaVersion:"openpond.tasksetPackage.v1",taskset:a.tasksetRelease,environment:a.environmentRelease,verifierSet:a.verifierSetRelease}});return await O(e,s),s}h(ct,"loadCandidate");async function lt(e){let o=e.definition.tasksetRelease,c=e.runtime;if(c.release.harnessRelease.id!==e.harnessRelease.id||c.release.harnessRelease.contentHash!==e.harnessRelease.contentHash)throw new Error("Evaluation Taskset runtime differs from its requested release.");let a=`evals/tasksets/${o.contentHash}.json`,s=c.release.harnessRelease.files.find(i=>i.path===a);if(s){if(s.visibility!=="verifier")throw new Error("Evaluation Taskset package is not verifier-private.");let i=await it.readFile(nt.join(c.release.bundlePath,"source",...a.split("/")));if(V(i)!==s.contentHash)throw new Error("Released evaluation Taskset package bytes differ from their source receipt.");let r=L(JSON.parse(i.toString("utf8")));if(r.taskset.id!==o.id||r.taskset.contentHash!==o.contentHash)throw new Error("Released evaluation Taskset package differs from its definition.");return r}return null}h(lt,"loadReleasedProfileEvaluationTaskset");function Z(e){return{id:fe(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(o=>o.taskId))],seeds:[...new Set(e.population.map(o=>o.seed))],criterion:e.criterion}}h(Z,"externalProfileEvaluationDefinition");async function Bt(e){let o=e.manifest.profileEvaluation,c=o?.externalDatasetBinding?M(o.externalDatasetBinding):null;if(!c)return null;if(!e.resolveExternalDataset)throw new Error("This owner has no authorized external Dataset resolver.");let a=await e.resolveExternalDataset(c,e.selected);await a.authorize();let s=L(a.packageValue),i=await e.loadCatalog({ref:e.selected.profileRef,sourceRevision:e.selected.sourceRevision,harnessRelease:e.selected.harnessRelease});if(f(a.binding)!==f(c)||c.profileId!==e.selected.profileRef.profileId||c.declaredProfileCatalogHash!==i.catalogHash||s.contentHash!==c.packageHash||f(s.taskset)!==f(e.taskset)||c.environmentHash!==f(s.taskset.environment)||c.privateDatasetClosureHash!==f(s.files.filter(t=>t.asset.visibility!=="policy").map(t=>t.asset)))throw new Error("External Dataset admission changed its actual Profile, package or private closure.");let r=Z(c),u={schemaVersion:"openpond.profileEvaluations.v1",definitions:[r],suites:[]};if(z(e.manifest,e.taskset,u),!o||o.catalogHash!==f(u)||o.definitionHash!==f(r)||f(o.target)!==f(c.target))throw new Error("External Dataset manifest changed its derived definition.");return await a.authorize(),{...a,packageValue:s,definition:r,catalog:u}}h(Bt,"admitProfileExternalDataset");import vt from"node:path";function Ke(e,o){return e.map(c=>{let a=c.workspace.draft,s=a.metadata.profileTarget,i=s&&typeof s=="object"&&!Array.isArray(s)?s:{},r=typeof i.profileId=="string"?{profileId:i.profileId,workflowId:typeof i.workflowId=="string"?i.workflowId:null}:null,u=c.checks.find(t=>t.kind==="graders"&&t.workspaceHash===c.workspace.contentHash);return{summary:{...o(c),rows:[]},projectId:c.projectId,profileTarget:r,updatedAt:a.updatedAt,workspaceHash:c.workspace.contentHash,packageHash:c.packageHash,graders:a.graders.map(t=>{let p=u?.scopes?.find(l=>l.graderId===t.id),g=t.metadata.portableVerifierRef;return{id:`grader-${f([a.id,t.id]).slice(0,40)}`,graderId:t.id,name:t.label,kind:t.kind,version:t.version,configurationHash:f(t),weight:t.weight,hardGate:t.hardGate,rewardEligible:t.rewardEligible,privileged:t.privileged,checkState:p?`${p.checked}/${p.total} ${p.status}`:u?u.status:"Not checked",verifierPath:g&&typeof g=="object"&&"path"in g&&typeof g.path=="string"?g.path:null,fields:Array.isArray(a.metadata.fields)?a.metadata.fields.filter(l=>typeof l=="string"):[]}})}})}h(Ke,"localLearningCatalog");function B(e){let o=e.workspace.draft,c=e.checks.find(a=>a.kind==="graders");return o.graders.map(a=>{let s=c?.scopes?.find(u=>u.graderId===a.id),i=c&&c.workspaceHash!==e.workspace.contentHash?"Checks stale":s?.status??"Not tested",r=o.graderFixtures.filter(u=>!Array.isArray(u.metadata.graderIds)||u.metadata.graderIds.includes(a.id));return{kind:"grader",id:`grader-${f([o.id,a.id]).slice(0,40)}`,revision:o.revision,name:a.label,datasetId:o.id,datasetRevision:o.revision,graderId:a.id,graderType:a.kind,state:i,description:a.kind==="content"&&typeof a.config.operator=="string"?a.config.operator:`${a.kind} grader \xB7 ${a.version}`,checkState:s?`${s.checked}/${s.total} examples checked \xB7 ${i}`:i,rows:r.slice(0,3).map(u=>({id:u.id,label:u.label,detail:JSON.stringify(u.output)}))}})}h(B,"localGraderSummaries");function Xe(e,o,c){let{offset:a,limit:s}=x.object({offset:x.number().int().nonnegative().default(0),limit:x.number().int().min(1).max(100).default(20)}).parse(c),i=e.workspace.draft,r=i.graders.find(g=>g.id===o.graderId),u=i.graderFixtures.filter(g=>!Array.isArray(g.metadata.graderIds)||g.metadata.graderIds.includes(r.id)),t=r.kind==="custom_verifier"?e.workspace.files.find(g=>g.path===r.module):null,p=t?Buffer.from(t.base64,"base64").toString("utf8"):null;return{summary:o,dataset:{id:i.id,revision:i.revision,name:i.name,workspaceHash:e.workspace.contentHash},grader:r,taskCount:i.tasks.length,fixtures:{total:u.length,offset:a,items:u.slice(a,a+s),hasMore:a+s<u.length},files:t?[{path:t.path,contentHash:t.contentHash,sizeBytes:t.sizeBytes,content:p.slice(0,24e3),truncated:p.length>24e3}]:[]}}h(Xe,"localGraderInspection");async function Qe(e,o,c,a){let s=a?e.checks.find(l=>l.kind==="graders"&&l.revision===e.workspace.draft.revision&&l.workspaceHash===e.workspace.contentHash):void 0,i=s?.scopes?.filter(l=>l.graderId!==a&&o.taskset.graders.some(d=>d.id===l.graderId))??[],r=s?.issues.filter(l=>l.graderId&&i.some(d=>d.graderId===l.graderId))??[],u=e.workspace.draft.graderFixtures,t=i.reduce((l,d)=>l+d.checked,0),p=i.reduce((l,d)=>l+d.total,0),g=[...i];for(let l of o.taskset.graders){let d=u.filter(n=>!Array.isArray(n.metadata.graderIds)||n.metadata.graderIds.includes(l.id));if(a&&l.id!==a){i.some(n=>n.graderId===l.id)||(p+=d.length,g.push({graderId:l.id,checked:0,total:d.length,status:"unavailable"}),r.push({code:"grader_not_checked",message:"This grader has not been checked at the saved revision.",graderId:l.id}));continue}let k=t,I=r.length;p+=d.length,(!d.some(n=>n.label==="positive")||!d.some(n=>n.label==="negative"))&&r.push({code:"examples_missing",message:"Add known-good and known-bad examples before claiming qualification.",graderId:l.id});for(let n of d){c?.throwIfAborted();let P=o.taskset.tasks.find(w=>w.id===n.taskId);if(!P){r.push({code:"fixture_task_missing",message:`Example ${n.id} references a missing task.`,graderId:l.id,taskId:n.taskId});continue}try{let w=Ye(o,n),v={output:n.output,runtimeEventRefs:[],artifactRefs:w.map(E=>E.reference.id),artifacts:w,infrastructureError:n.infrastructureError},[S]=await me({task:P,graders:[l],purpose:"fixture_calibration",signal:c,evidence:v,customVerifier:h(async({grader:E,task:D,evidence:H})=>{let C=o.files.find(y=>y.asset.id===E.verifierRef.id);if(!C||f(C.asset)!==f(E.verifierRef))throw new Error("The exact verifier source is missing.");let T=E.runtime==="sandbox_process"?await F({packageValue:o,grader:E,task:D,evidence:{...H,artifacts:w},signal:c,authorize:h(async()=>{c?.throwIfAborted()},"authorize")}):await $({source:new TextDecoder("utf-8",{fatal:!0}).decode(q(C)),exportName:E.exportName,runtime:E.runtime,timeoutMs:E.timeoutMs,signal:c,value:{task:D,attempt:H,input:D.input,expectedOutput:D.expectedOutput,output:H.output,artifacts:w,infrastructureError:n.infrastructureError}});return{score:T.score,passed:T.passed,rewardEligible:E.rewardEligible,failureClass:null,feedback:[T.feedback],visibleEvidenceRefs:[],privilegedEvidenceRefs:T.evidenceRefs}},"customVerifier")});!S||S.score===null&&!n.infrastructureError||S.status==="pending"?r.push({code:"grader_unavailable",message:S?.feedback.join(" ")??"The grader returned no evidence.",graderId:l.id,taskId:P.id}):(t++,(S.passed!==n.expectedPassed||S.rewardEligible!==n.expectedRewardEligible)&&r.push({code:"example_mismatch",message:`Example ${n.id} did not match its expected pass/reward outcome. ${S.feedback.join(" ").slice(0,2e3)}`,graderId:l.id,taskId:P.id}))}catch(w){r.push({code:"grader_unavailable",message:w instanceof Error?w.message:"Example check failed.",graderId:l.id,taskId:P.id})}}let m=r.slice(I);g.push({graderId:l.id,checked:t-k,total:d.length,status:m.some(n=>n.code==="example_mismatch")?"failed":m.length?"unavailable":"passed"})}return o.taskset.graders.length||r.push({code:"graders_missing",message:"No graders are configured."}),{kind:"graders",revision:e.workspace.draft.revision,workspaceHash:e.workspace.contentHash,status:r.some(l=>l.code==="example_mismatch")?"failed":r.length?"unavailable":"passed",checked:t,total:p,scopes:g,issues:r,checkedAt:new Date().toISOString()}}h(Qe,"checkLocalDatasetGraders");var dt=new Set(["unknown","other"]);function Ze(e,o){return o?"approved":!e||dt.has(e.toLowerCase())?"review":"approved"}h(Ze,"approvedLicenseStatus");function pt(e,o){if(e.schemaVersion!=="openpond.huggingFaceDatasetSource.v1")throw new Error("Selected source checks require a captured Hugging Face sample.");let c=V(o);if(e.metadata.capturedSourceHash!==c||!e.sourceFileHashes.includes(c))throw new Error("The captured source bytes do not match their retained hash.");let a=new TextDecoder("utf-8",{fatal:!0}).decode(o),s=Te(a);return{...e,secretScanStatus:s.secretStatus,piiScanStatus:s.piiStatus,licensingStatus:Ze(e.declaredLicense,!1),metadata:{...e.metadata,privacyScanner:"openpond-evidence-v1",findings:s.findings,checkedSourceHash:c}}}h(pt,"checkCapturedHuggingFaceSource");function et(e){let o=0,c=e.draft.sourceRefs.map(a=>{if(a.schemaVersion!=="openpond.huggingFaceDatasetSource.v1"||typeof a.metadata.capturedSourcePath!="string")return a;let s=e.files.find(r=>r.path===a.metadata.capturedSourcePath);if(!s)throw new Error("The captured source file is missing.");let i=Buffer.from(s.base64,"base64");if(V(i)!==s.contentHash||i.byteLength!==s.sizeBytes)throw new Error("The captured source file failed integrity verification.");return o++,pt(a,i)});if(!o)throw new Error("This Dataset has no captured Hugging Face samples to check.");return c}h(et,"checkCapturedDatasetSources");function A(e){let{draft:o}=e.workspace,c=e.checks.filter(a=>a.workspaceHash===e.workspace.contentHash);return{kind:"dataset",id:o.id,revision:o.revision,name:o.name||"Untitled dataset",state:e.packageHash?"Runnable":"Saved draft",evaluationHash:e.workspace.contentHash,taskCount:o.datasetArtifact?.rowCount??o.tasks.length,graderCount:o.graders.length,checkState:c.length?c.map(a=>`${a.kind}: ${a.status} (${a.checked}/${a.total})`).join(" \xB7 "):e.checks.length?"Checks stale":"Not checked",syncState:e.sync?e.sync.paused?"Paused":e.sync.acknowledgedHash===e.workspace.contentHash&&e.sync.status==="synced"?"Synced":e.sync.status==="synced"?"Sync pending":e.sync.status:"Local",rows:o.tasks.slice(0,3).map(a=>({id:a.id,label:typeof a.input.prompt=="string"?a.input.prompt:JSON.stringify(a.input),detail:o.graders.map(s=>s.label).join(", ")}))}}h(A,"localDatasetSummary");function tt(e){async function o(r,u){let t=await e.store.readLocalDataset(r,u);if(!t||t.ownerId!==await e.store.localResourceOwnerId())throw new Error("Local Dataset was not found.");return t}h(o,"read");async function c(r,u){let t=await e.store.readLocalDatasetListing(r,u);if(!t||t.ownerId!==await e.store.localResourceOwnerId())throw new Error("Local Dataset was not found.");return t}h(c,"readListing");function a(r,u,t=r.workspace.contentHash){return _e({workspace:u?Me(r.workspace,u):r.workspace,sourceWorkspaceHash:t,maximumBytes:Number.POSITIVE_INFINITY,preparation:null,adapterId:"openpond-desktop-taskset-authoring-v1",now:r.workspace.draft.updatedAt})}h(a,"compile");async function s(r,u,t){if(t){let d=await e.store.readLocalDatasetProjection(r,t,{revision:u});if(!d||d.record.ownerId!==await e.store.localResourceOwnerId())throw new Error("Local Dataset was not found.");let k=a(d.record,void 0,d.sourceWorkspaceHash);return await O(e.home,k,Number.POSITIVE_INFINITY),{record:d.record,package:k}}let p=await o(r,u),g=a(p,t);await O(e.home,g,Number.POSITIVE_INFINITY);let l=await o(r);if(!t&&l.workspace.contentHash===p.workspace.contentHash&&l.packageHash!==g.contentHash)try{p=await e.store.updateLocalDatasetMetadata(r,f(l),d=>({...d,packageHash:g.contentHash}))}catch(d){if(!(d instanceof Error)||!d.message.startsWith("Dataset state changed."))throw d}return{record:p,package:g}}h(s,"packageDataset");async function i(r,u){let t=qe.parse(r),p=await e.store.localResourceOwnerId();if(t.action==="schema"){let m=x.enum(["task","grader","fixture","draft","file"]).parse(t.payload.kind??"task"),n=m==="task"?N.shape.tasks.unwrap().element:m==="grader"?N.shape.graders.unwrap().element:m==="fixture"?N.shape.graderFixtures.unwrap().element:m==="file"?J:N;return{kind:m,schema:x.toJSONSchema(n),...m==="grader"?{example:{id:"exact-answer",version:"1",label:"Exact answer",kind:"content",weight:1,hardGate:!0,rewardEligible:!1,privileged:!0,config:{operator:"final_answer_equals_expected"},metadata:{}}}:{}}}if(t.action==="list"){let m=(await e.store.listLocalDatasetListings()).filter(n=>n.ownerId===p);return t.payload.view==="catalog"?Ke(m,A):m.map(n=>({...A(n),projectId:n.projectId}))}if(t.action==="inspect_source"||t.action==="import_source"){if(!e.sourceAction)throw new Error("This Dataset source adapter is unavailable.");return e.sourceAction(t.action,t.payload,p)}if(t.action==="related_chats"){let m=t.payload.kind;if(m!==void 0&&!["dataset","grader","experiment"].includes(String(m)))throw new Error("Select a supported resource kind.");let n=await e.store.chatResourceLinks({kind:typeof m=="string"?m:"dataset",id:t.id}),P=[...new Set(n.map(w=>w.sessionId))];return(await Promise.all(P.map(w=>e.store.getSession(w)))).filter(w=>w&&!w.systemKind&&w.workspaceKind!=="sandbox").map(w=>({id:w.id,title:w.title}))}let g=f(t);if(["create","save","file","import","save_grader","check_sources"].includes(t.action)){if(!t.operationId)throw new Error("A stable operationId is required. Reuse it after an uncertain response.");let m=await e.store.recoverLocalDatasetOperation(t.operationId,g);if(m)return{record:m,summary:A(m),summaries:B(m)};let n=new Date().toISOString(),P;if(t.action==="create"||t.action==="import"){let v=`dataset-${f([p,t.operationId]).slice(0,40)}`,S;if(t.action==="import"){if(typeof t.payload.path!="string")throw new Error("Import requires a package folder path.");S=(await X({directory:t.payload.path,teamId:p,datasetId:v,expectedRevision:0,maximumBytes:Number.POSITIVE_INFINITY})).workspace}else{let E=Se({profileId:p,id:v,name:typeof t.payload.name=="string"?t.payload.name:"",now:n});S=U({schemaVersion:"openpond.tasksetDraftWorkspace.v1",draft:{...E,...t.payload.draft,id:v,profileId:p,modelScope:null,revision:1,status:"draft",publishedTasksetRef:null,createdAt:n,updatedAt:n},files:Array.isArray(t.payload.files)?t.payload.files:[]},Number.POSITIVE_INFINITY)}P=Ve.parse({schemaVersion:"openpond.localDataset.v1",ownerId:p,projectId:typeof t.payload.projectId=="string"?t.payload.projectId:null,workspace:S,checks:[],packageHash:null,sync:null})}else{if(!t.id||t.expectedRevision===void 0)throw new Error("Editing requires a Dataset ID and expectedRevision.");let v=await o(t.id),S=t.payload.draft;if(t.action==="check_sources"&&(S={sourceRefs:et(v.workspace)}),t.action==="save_grader"){let D=N.shape.graders.unwrap().element.parse(t.payload.grader),H=v.workspace.draft.graders.filter(T=>T.id!==D.id),C=v.workspace.draft.graders.findIndex(T=>T.id===D.id);H.splice(C<0?H.length:C,0,D),S={graders:H,...Array.isArray(t.payload.fixtures)?{graderFixtures:t.payload.fixtures}:{}}}let E;if(t.action==="save"&&typeof t.payload.path=="string"){if(v.workspace.draft.modelScope)throw new Error("Folder replacement requires an ordinary local Dataset.");let D=await X({directory:t.payload.path,teamId:p,datasetId:t.id,expectedRevision:t.expectedRevision,maximumBytes:Number.POSITIVE_INFINITY}),H=K({workspace:v.workspace,expectedDraftRevision:t.expectedRevision,draft:{...D.workspace.draft,id:v.workspace.draft.id,profileId:v.workspace.draft.profileId,modelScope:v.workspace.draft.modelScope,revision:v.workspace.draft.revision,status:v.workspace.draft.status,createdAt:v.workspace.draft.createdAt,publishedTasksetRef:v.workspace.draft.publishedTasksetRef},now:n,maximumBytes:Number.POSITIVE_INFINITY});E=U({schemaVersion:H.schemaVersion,draft:H.draft,files:D.workspace.files},Number.POSITIVE_INFINITY)}else E=t.action==="file"?be({workspace:v.workspace,mutation:J.parse({...t.payload,draftId:t.id,expectedDraftRevision:t.expectedRevision}),now:n,maximumBytes:Number.POSITIVE_INFINITY}):K({workspace:v.workspace,expectedDraftRevision:t.expectedRevision,draft:{...v.workspace.draft,...S},now:n,maximumBytes:Number.POSITIVE_INFINITY});P={...v,workspace:E,packageHash:null}}u?.throwIfAborted();let w=await e.store.saveLocalDataset({record:P,expectedRevision:t.action==="create"||t.action==="import"?0:t.expectedRevision,operationId:t.operationId,requestHash:g});return e.onSaved?.(w),{record:w,summary:A(w),summaries:B(w)}}if(!t.id)throw new Error("A Dataset ID is required.");if(t.action==="read"&&t.payload.view==="metadata"){let m=t.payload.revision===void 0?void 0:x.number().int().positive().parse(t.payload.revision),n=await c(t.id,m);return{record:n,summary:A(n)}}let l=await o(t.id,["read","read_grader","list_graders"].includes(t.action)&&t.expectedRevision?t.expectedRevision:void 0);if(t.action==="list_graders")return{summaries:B(l)};if(t.action==="read_grader"){let m=B(l).find(n=>n.graderId===t.payload.graderId||n.id===t.payload.graderId);if(!m)throw new Error("The saved grader was not found.");return t.payload.view==="inspection"?Xe(l,m,t.payload):{record:l,summary:m,grader:l.workspace.draft.graders.find(n=>n.id===m.graderId)}}if(t.action==="read")return{record:l,summary:A(l)};if(["upload","sync","pause_sync","disconnect_sync","publish"].includes(t.action)){if(t.expectedRevision!==l.workspace.draft.revision)throw new Error("Cloud actions require the exact current saved expectedRevision.");if(!e.syncAction)throw new Error("Cloud Dataset synchronization is unavailable.");let m=await e.syncAction(t.action,l,t.payload);return{record:m,summary:A(m)}}if(t.expectedRevision!==l.workspace.draft.revision)throw new Error("Checks and packaging require the exact saved expectedRevision.");if(t.action==="test_grader"&&!l.workspace.draft.graders.some(m=>m.id===t.payload.graderId))throw new Error("The saved grader was not found.");let d=null,k={kind:"structure",revision:l.workspace.draft.revision,workspaceHash:l.workspace.contentHash,status:"passed",checked:l.workspace.draft.tasks.length,total:l.workspace.draft.datasetArtifact?.rowCount??l.workspace.draft.tasks.length,checkedAt:new Date().toISOString(),issues:[]};try{d=a(l),await O(e.home,d,Number.POSITIVE_INFINITY)}catch(m){k={...k,status:"failed",issues:[{code:"package_invalid",message:m instanceof Error?m.message:"Package validation failed."}]}}if(["check_graders","test_grader"].includes(t.action)&&d){let m=[...new Set(l.workspace.draft.graderFixtures.map(n=>n.taskId))];k=await Qe(l,m.length?a(l,m):d,u,t.action==="test_grader"?t.payload.graderId:void 0)}let I=await e.store.updateLocalDatasetMetadata(t.id,f(l),m=>({...m,packageHash:d?.contentHash??null,checks:[...m.checks.filter(n=>n.kind!==k.kind),k]}));return{record:I,summary:t.action==="test_grader"?B(I).find(m=>m.graderId===t.payload.graderId):A(I),summaries:B(I),check:k,...t.action==="package"&&d?{package:d}:{}}}return h(i,"request"),{request:i,read:o,readListing:c,packageDataset:s,compile:a}}h(tt,"createLocalDatasetService");import{mkdtemp as ft,mkdir as ut,rm as mt}from"node:fs/promises";import ht from"node:os";import at from"node:path";var rt=new Set(["work_exec","work_save_output"]);function ot(e){let o=e.taskset,c=o.environment.kind==="text"&&o.tools.length===0,a=o.environment.kind==="work"&&o.environment.entrypoint==="openpond-work-v1"&&o.tools.every(s=>rt.has(s.name));return(c||a)&&o.policy.connectedAppScopes.length===0&&o.capabilities.every(s=>!s.required||s.id==="private-verifier"||s.id==="tools"&&s.scopes.every(i=>rt.has(i)&&o.tools.some(r=>r.name===i)))}h(ot,"supportsLocalProfileEnvironment");async function ba(){let e=await ft(at.join(ht.tmpdir(),"openpond-work-preflight-"));try{await ut(at.join(e,"outputs"));let o="local-work-preflight",a=await $e({authorize:h(async()=>({candidateId:o,candidateRevision:1,ownerId:o,sessionId:o,turnId:o,sourceRoot:e,layout:"profile_case",writablePaths:["outputs"]}),"authorize")})({candidateId:o,expectedRevision:1,sessionId:o,turnId:o,timeoutMs:5e3,command:`/runtime/node -e 'require("node:fs").writeFileSync("outputs/probe","ready");process.stdout.write("ready")'`});if(a.code!==0||a.timedOut||a.stdout!=="ready")throw new Error("The confined local Work executor is unavailable.")}finally{await mt(e,{recursive:!0,force:!0})}}h(ba,"assertLocalProfileWorkRuntime");function G(e){let o=Pe(e),c=e.modelResources?.rewards??(e.learningResources?ye(e.taskset).rewards:[]);if(o&&f(ge(o,c))!==f(e.taskset.graders))throw new R("local_grader_closure_conflict","The retained Reward closure differs from the released Dataset graders.",422);return e.taskset.graders.map(a=>{let s=o?.sources.find(r=>r.graderId===a.id),i=s&&c.find(r=>r.id===s.reward.id&&r.revision===s.reward.revision&&r.contentHash===s.reward.contentHash);return{id:a.id,version:a.version,contentHash:f(a),name:i?.name??("config"in a&&a.config.operator==="final_answer_equals_expected"?"Answer accuracy":`${a.kind.replaceAll("_"," ")} grader`),feedbackKey:i?he(i):`grader_${f(a.id).slice(0,24)}`,release:i?{id:i.id,revision:i.revision,contentHash:i.contentHash}:null}})}h(G,"localPackageGraders");function za(e,o){let c=G(e),a=o?o.map(s=>{let i=c.find(r=>r.id===s.id&&r.version===s.version&&r.contentHash===s.contentHash);if(!i)throw new R("local_grader_pin_unavailable","Select an exact grader from the retained Dataset package.",422);return{...i,mappings:s.mappings}}):c;try{return Le(a)}catch(s){throw new R("experiment_grader_feedback_conflict",s instanceof Error?s.message:"Grader selection conflicts.",422)}}h(za,"selectLocalPackageGraders");function Wa(e,o,c,a=!1,s=!1,i=!1){let r=L(o),u=e.configuration.request;if(r.contentHash!==e.packageHash||f(u.taskset)!==f({id:r.taskset.id,revision:r.taskset.revision,contentHash:r.taskset.contentHash}))throw new R("local_dataset_pin_conflict","Local execution requires the exact retained Dataset package.",422);if(u.policy.kind!=="hosted_chat"&&!(u.policy.kind==="hosted_harness"&&i))throw new R("local_target_not_qualified","This local execution path requires a qualified exact target owner.",422);let t=i&&u.policy.kind==="hosted_harness"&&ot(r);if(["claude-code","codex"].includes(e.model.providerId)&&!t&&(gt(r)||r.taskset.environment.kind!=="text"||r.taskset.tools.length))throw new R("native_text_environment_not_admitted","This native model adapter requires a text Dataset with no environment tools. Additional tool owners require explicit admission.",422);let p=u.policy.kind==="hosted_chat"?u.policy.harness:void 0;if(p&&!a)throw new R("local_harness_not_qualified","A released Harness must execute through its native turn owner.",422);let g=Y(r);if(r.taskset.policy.connectedAppScopes.length)throw new R("local_connected_scope_not_qualified","This Dataset requires connected scopes that have not been admitted for local execution.",422);for(let l of r.taskset.capabilities.filter(d=>d.required)){if(l.id==="tools"&&i&&l.scopes.every(k=>["work_exec","work_save_output"].includes(k)&&r.taskset.tools.some(I=>I.name===k)))continue;if(l.id!=="private-verifier")throw new R("local_capability_not_qualified","This Dataset requires capabilities not supplied by the local execution owner.",422);if((l.scopes.length?l.scopes:r.taskset.policy.hiddenGraderRefs).some(k=>!r.taskset.policy.hiddenGraderRefs.includes(k)||!r.taskset.graders.some(I=>I.id===k&&I.privileged&&I.kind!=="human")))throw new R("local_capability_not_qualified","The required private grader scope has no supported exact local grader owner.",422)}if(!g&&r.taskset.tools.length&&!i)throw new R("local_tool_target_not_qualified","This Dataset's tools require a released native target executor.",422);if(g?.execution.javascript.executionServices?.length&&!s)throw new R("local_prepared_environment_not_qualified","This Dataset requires prepared compute services that are not yet bound to the local execution owner.",422);if(r.taskset.environment.kind!=="text"&&!g&&!t)throw new R("local_environment_unavailable","The released Dataset has no supported local environment executor.",422);if(p&&(g||r.taskset.environment.kind!=="text"))throw new R("local_harness_environment_not_qualified","This native Harness requires a compatible text Dataset.",422);return u.population.map(l=>{let d=r.taskset.tasks.find(P=>P.id===l.taskId);if(!d)throw new R("local_population_unavailable","The selected task is absent from this immutable Dataset release.",422);let k=le(d);if((k.artifactRefs.length||d.requiredOutputs?.length)&&!(i&&u.policy.kind==="hosted_harness"))throw new R("local_work_target_not_qualified","This Dataset requires document input or Work output capabilities not supplied by this local model target.",422);let I=g?.assets.find(P=>P.id===g.execution.javascript.module.id),m=g?.assets.find(P=>P.id===d.privilegedContextRef);if(g&&(!I||!m))throw new R("local_environment_assets_missing","Private environment resources are missing from the retained package.",422);let n={kind:"model",id:`local-case-${f([c,l.receiptId]).slice(0,48)}`,taskId:d.id,model:e.model,...p?{harness:p}:{},instructions:Ee(r),input:k.input,policyVisibleContext:k.policyVisibleContext,timeoutMs:r.taskset.environment.defaultTimeoutMs,environment:g?{kind:"javascript",definition:g.execution.javascript,asset:I,initialState:JSON.parse(ve(m,m.asset)),seed:Number(l.seed)}:{kind:"text"}};return{receiptId:l.receiptId,taskId:l.taskId,seed:l.seed,request:Fe.parse({...n,admissionHash:f(n)})}})}h(Wa,"localExperimentAdmissions");function gt(e){return!!Y(e)}h(gt,"executionForClaude");import{readFile as kt}from"node:fs/promises";import wt from"node:path";async function st(e,o,c,a){let s=await e.getHarnessReleaseRecord(o.contentHash),i=s&&await e.getHarnessWorkspace(s.workspaceId);if(!s||!i||s.harnessRelease.id!==o.id||i.location!=="local"||i.metadata.sourceLayout!=="openpond.harnessSourceManifest.v1")throw new R("local_profile_source_unavailable","The exact Profile Harness is unavailable.",403);let r=i.metadata.profileExperimentOrigin!==void 0||i.metadata.experimentCandidateOrigin!==void 0;if(r){if(!a||!c)throw new R("local_profile_origin_access_denied","This source requires its authenticated origin.",403);await a(i,o,c)}else{if(i.ownerScope.kind!=="personal"||i.ownerScope.id!=="desktop-personal"||typeof s.harnessRelease.metadata.profileRepositoryId=="string"||typeof s.agentSnapshot.metadata.profileRepositoryId=="string")throw new R("local_profile_origin_access_denied","The Profile is not device-owned.",403);let d=s.harnessRelease.metadata.profile;if(c&&(c.source!=="local"||d?.id!==c.profileId||d.repositoryId&&d.repositoryId!==c.repositoryId))throw new R("local_profile_origin_access_denied","The retained Harness differs from this exact Profile reference.",403);if(i.metadata.selectionEligible===!1&&(!c||!d?.repositoryId||d.repositoryId!==c.repositoryId||i.id!==`${Oe}${f({ref:c,sourceRevision:d.sourceRevision}).slice(0,24)}`))throw new R("local_profile_origin_access_denied","This explicit Profile release requires its canonical accepted reference.",403)}let u=await Ne({workspace:i,release:s}),t=new Map;for(let d of s.harnessRelease.files)t.set(d.path,await kt(wt.join(s.bundlePath,"source",...d.path.split("/"))));let p=ie({agentSnapshot:s.agentSnapshot,harnessRelease:s.harnessRelease,files:t}),g=ke(s);ne({sourcePackage:p,expectedRelease:o,baseSystemPrompt:"",runtimeId:"openpond.native-profile-experiment.v1",maxContextCharacters:262144,tools:g.map(d=>({name:d.name,inputSchema:d.inputSchema,definition:{type:"function",function:{name:d.name,description:d.description,parameters:d.inputSchema}}}))});let l=await e.getHarnessWorkspace(i.id);if(!l||f(l.ownerScope)!==f(i.ownerScope)||f(l.metadata)!==f(i.metadata))throw new R("local_profile_origin_access_denied","Profile source ownership changed during admission.",403);return r&&await a(i,o,c),u}h(st,"resolveLocalProfileExperimentSource");var ee=x.object({id:b,revision:x.number().int().positive(),workspaceHash:_,taskIds:x.array(b).min(1).max(500),seed:x.string().trim().min(1).max(500).default("1")}).strict();function mr(e){let o=tt({store:e.store,home:e.storeDir});async function c(r){if(r.profileRef.source!=="local")throw new Error("Installation-local Datasets require an accepted local Profile.");if(!(await se()).profiles.some(l=>f(l.ref)===f(r.profileRef)))throw new Error("The local Dataset's Profile is no longer in this installation's accepted library.");let t=await st(e.store,r.harnessRelease,r.profileRef),p=await Je({store:e.store,ref:r.profileRef,sourceRevision:r.sourceRevision,harnessRelease:r.harnessRelease}),g=await Be({workspaceId:typeof t.release.agentSnapshot.metadata.workspaceId=="string"?t.release.agentSnapshot.metadata.workspaceId:t.release.workspaceId,sourceDir:vt.join(t.release.bundlePath,"source")});if(g.harnessRelease.contentHash!==r.harnessRelease.contentHash)throw new Error("The local Dataset's frozen Profile source changed.");return{catalog:p,protectedClosureHash:Ge(g).protectedClosureHash}}h(c,"profileAuthority");async function a(r,u,t){let p=await e.store.readLocalDatasetProjection(r,t,{workspaceHash:u});if(!p||p.record.ownerId!==await e.store.localResourceOwnerId())throw new Error("The exact installation-local Dataset workspace is unavailable to this owner.");return{record:p.record,packageValue:o.compile(p.record,void 0,p.sourceWorkspaceHash)}}return h(a,"savedPackage"),{prepareBinding:h(async(r,u,t)=>{let p=ee.parse(r);if((await o.readListing(p.id,p.revision)).workspace.contentHash!==p.workspaceHash)throw new Error("The selected local Dataset revision or workspace hash changed.");if(new Set(p.taskIds).size!==p.taskIds.length)throw new Error("Select each local Dataset task once.");let{package:l}=await o.packageDataset(p.id,p.revision,p.taskIds),d=p.taskIds.map(n=>l.taskset.tasks.find(P=>P.id===n));if(d.some(n=>!n)||d.some(n=>n.split!==d[0].split))throw new Error("Select existing local Dataset tasks from one exact split.");let{catalog:k,protectedClosureHash:I}=await c(u);if(!k.definitions.some(n=>f(n)===f(t)))throw new Error("The local Dataset target differs from the accepted Profile definition.");let m=G(l);return pe({schemaVersion:"openpond.profileExternalDatasetBinding.v1",dataset:{id:l.taskset.id,revision:l.taskset.revision,contentHash:l.taskset.contentHash},packageHash:l.contentHash,profileId:u.profileRef.profileId,target:t.target,declaredProfileCatalogHash:k.catalogHash,protectedProfileClosureHash:I,split:d[0].split,population:p.taskIds.map(n=>({taskId:n,seed:p.seed,fixtureId:null})),evaluators:m.map(n=>({release:n.release??{id:n.id,revision:n.version,contentHash:n.contentHash},feedbackKey:n.feedbackKey,configurationHash:f({graderHash:n.contentHash,mappings:[]}),output:"score",categories:[]})),fieldMappings:[],fieldMappingsHash:f([]),environmentHash:f(l.taskset.environment),privateDatasetClosureHash:f(l.files.filter(n=>n.asset.visibility!=="policy").map(n=>n.asset)),criterion:t.criterion})},"prepareBinding"),resolveExternalDataset:h(async(r,u)=>{let t;try{t=await W(e.storeDir,r.packageHash)}catch(n){if(n.code!=="ENOENT")throw n}let p=t?x.object({sourceTasksetId:b,sourcePackageHash:_}).passthrough().safeParse(t.taskset.metadata):null,g=p?.success?await e.store.readLocalDatasetListing(p.data.sourceTasksetId):null;if(!t||!p?.success||!g){if(!e.remote)throw new Error("This external Dataset has no installation-local owner.");return e.remote(r,u)}let l=p.data,d=t.contentHash,k=g.ownerId;async function I(){let n=[...new Set(r.population.map(S=>S.taskId))],{record:P,packageValue:w}=await a(l.sourceTasksetId,l.sourcePackageHash,n);if(P.ownerId!==k||w.contentHash!==d)throw new Error("The cached Dataset differs from its exact saved local source.");let v=await c(u);if(r.profileId!==u.profileRef.profileId||r.declaredProfileCatalogHash!==v.catalog.catalogHash||r.protectedProfileClosureHash!==v.protectedClosureHash)throw new Error("The local Dataset recipe changed its accepted Profile or protected evaluator closure.");return Ce({binding:r,packageValue:w,graders:G(w)})}h(I,"read");let m=await I();return{binding:r,packageValue:m,authorize:h(async()=>{if(f(await I())!==f(m))throw new Error("The local Dataset authority changed during execution.")},"authorize")}},"resolveExternalDataset")}}h(mr,"createInstallationLocalProfileDatasets");var yt=x.object({id:b,createdAt:ae,definitionId:b,externalDatasetBinding:de.optional(),localDataset:ee.optional(),profileRef:Ae.optional(),profileSource:x.object({sourceRevision:x.string().min(1).max(500),harnessRelease:x.object({id:b,contentHash:_}).strict()}).strict().optional(),modelRef:oe,hostModelConfigurationHash:_.optional(),hostArtifactHash:_.optional(),maximumSpendUsd:x.number().positive().max(1e4).optional(),expectedManifestHash:_.optional(),hostExperiment:x.object({definition:x.object({id:b,revision:x.number().int().positive(),contentHash:_}).strict().nullable(),configurationHash:_,project:x.object({id:b,revision:x.number().int().positive(),contentHash:_,targetId:b.nullable()}).strict().optional()}).strict().optional()}).strict();function Er(e){return async(o,c)=>{let a=yt.parse(o);if(c?.requireExpectedManifestHash&&!a.expectedManifestHash)throw new Error("Profile evaluation execution requires the reviewed manifest hash.");if(a.profileSource&&!a.profileRef)throw new Error("An exact Profile source requires its accepted Profile reference.");let s=c?.selectedWorkflows??await e.selectedWorkflows(a.profileRef,a.profileSource);if(a.profileRef&&f(a.profileRef)!==f(s.profileRef))throw new Error("Profile preparation did not resolve the explicitly selected Profile.");if(a.profileSource&&(s.sourceRevision!==a.profileSource.sourceRevision||f(s.harnessRelease)!==f(a.profileSource.harnessRelease)))throw new Error("Profile preparation changed its explicitly pinned source.");if(a.localDataset&&a.externalDatasetBinding)throw new Error("Select a local Dataset or an external recipe, not both.");let i=await e.loadCatalog({ref:s.profileRef,sourceRevision:s.sourceRevision,harnessRelease:s.harnessRelease}),r=a.localDataset?i.definitions.find(y=>y.id===a.definitionId):null;if(a.localDataset&&!r)throw new Error("Choose an existing accepted Profile definition as the local Dataset target.");let t=(a.localDataset&&r?await(e.prepareLocalDatasetBinding?e.prepareLocalDatasetBinding(a.localDataset,s,r):Promise.reject(new Error("This host has not qualified installation-local Profile Datasets."))):null)??(a.externalDatasetBinding?M(a.externalDatasetBinding):null),p=t?await(e.resolveExternalDataset?e.resolveExternalDataset(t,s):Promise.reject(new Error("This host has not qualified external Dataset Profile execution."))):null;if(p&&(await p.authorize(),f(M(p.binding))!==f(t)))throw new Error("External Dataset admission differs from the actual authorized recipe.");if(t&&t.declaredProfileCatalogHash!==i.catalogHash)throw new Error("The original Profile verifier catalog changed.");let g=t?Z(t):null;if(g&&!a.localDataset&&a.definitionId!==g.id)throw new Error("Use the external recipe's own definition identity.");let l={schemaVersion:"openpond.profileEvaluations.v1",definitions:g?[g]:i.definitions,suites:g?[]:i.suites},d=g??i.definitions.find(y=>y.id===a.definitionId);if(!d)throw new Error(`Evaluation ${a.definitionId} is absent from the selected Profile release.`);let k=d.target,I=k.kind==="workflow"?s.workflows.find(y=>y.binding.workflowId===k.workflowId)?.binding:ce.parse({schemaVersion:"openpond.profileComponentBinding.v1",profileId:s.profileRef.profileId,sourceRevision:s.sourceRevision,harnessRelease:s.harnessRelease,target:k});if(!I)throw new Error(`Evaluation workflow ${k.kind==="workflow"?k.workflowId:""} is absent from the selected Profile release.`);let m=L(p?.packageValue??await e.loadTasksetPackage(d,s.profileRef.profileId,s.harnessRelease)),n=m.taskset;if(n.id!==d.tasksetRelease.id||n.contentHash!==d.tasksetRelease.contentHash)throw new Error("Evaluation Taskset package differs from its released definition.");let P=n.environment.kind==="text"&&n.tools.length===0,w=n.environment.kind==="work"&&n.environment.entrypoint==="openpond-work-v1"&&n.tools.every(y=>["work_exec","work_save_output"].includes(y.name));if(!P&&!w)throw new Error("Profile evaluation supports text cases or Work cases with the built-in execution and output tools.");if(a.maximumSpendUsd!==void 0&&w){if(typeof e.boundedWorkComputeAvailable=="function")await e.boundedWorkComputeAvailable();else if(!e.boundedWorkComputeAvailable)throw new Error("This host has not admitted budgeted Work compute.")}if(n.tasks.some(y=>y.artifactRefs.length>Q.maxAttachments||y.artifactRefs.some(j=>j.visibility!=="policy"||j.mediaType!=="application/pdf"||j.sizeBytes>Q.maxAttachmentBytes)))throw new Error("Profile evaluation accepts only bounded policy-visible PDF task attachments.");if(!t&&!e.privateGradingPreflight&&(n.graders.some(y=>y.kind==="model_judge"||y.kind==="custom_verifier")||n.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?.(m);let v={adapterId:k.kind==="workflow"?"openpond.profile-workflow":"openpond.profile-component",placement:e.placement,runtimeVersion:"app-server-v1",capabilityReceipt:f({adapterId:k.kind==="workflow"?"openpond.profile-workflow":"openpond.profile-component",packageHash:m.contentHash,connectedAppScopes:n.policy.connectedAppScopes})},E={...ue({catalog:l,definitionId:d.id,profileId:s.profileRef.profileId,sourceRevision:s.sourceRevision,harnessRelease:s.harnessRelease,environmentHash:f({packageHash:m.contentHash,runtimeTarget:v})}),...t?{externalDatasetBinding:t}:{},...e.sourceCandidate?{sourceCandidate:e.sourceCandidate}:{}};if(t&&(t.packageHash!==m.contentHash||t.environmentHash!==f(n.environment)||t.privateDatasetClosureHash!==f(m.files.filter(y=>y.asset.visibility!=="policy").map(y=>y.asset))))throw new Error("External Dataset package/environment/private closure changed.");let D=re.parse({provider:a.modelRef.providerId,model:a.modelRef.modelId,revision:null,artifactHash:a.hostArtifactHash??null,tokenizerRevision:null,chatTemplateHash:null}),H=await e.modelConfigurationHash(a.modelRef,a),C=c?.modelSampling?f({ownerModelConfigurationHash:H,sampling:Ie.parse(c.modelSampling)}):H,T=xe({schemaVersion:"openpond.tasksetRunManifest.v1",id:a.id,tasksetRelease:d.tasksetRelease,packageHash:m.contentHash,execution:{kind:"harness",harnessRelease:s.harnessRelease},profileEvaluation:E,policy:{kind:"model",model:D,configurationHash:C},gradingRole:"evaluation",metricPolicy:Re(n),population:t?t.population.map(y=>({...y,receiptId:`evaluation-${f([a.id,y.taskId,y.seed,y.fixtureId]).slice(0,32)}`})):d.taskIds.flatMap(y=>d.seeds.map(j=>({receiptId:`evaluation-${f([a.id,y,j]).slice(0,32)}`,taskId:y,seed:j,fixtureId:null}))),runtimeTarget:v,limits:{maxTurns:128,timeoutMs:n.environment.defaultTimeoutMs,maxOutputBytes:25e7,maximumSpendUsd:a.maximumSpendUsd??null},createdAt:a.createdAt,metadata:{sourceTasksetId:n.metadata.sourceTasksetId??n.id,...s.profileRef.source==="openpond_git"?{profileRepositoryId:s.profileRef.repositoryId}:{},...a.hostExperiment?{experimentDefinition:a.hostExperiment.definition,experimentConfigurationHash:a.hostExperiment.configurationHash,...a.hostExperiment.project?{project:a.hostExperiment.project}:{}}:{}}});if(z(T,n,l),p&&await p.authorize(),a.expectedManifestHash&&T.contentHash!==a.expectedManifestHash)throw new Error("Profile evaluation setup changed since preview; prepare the run again.");return{manifest:T,taskset:n,profileRef:s.profileRef,binding:I,modelRef:a.modelRef,modelConfigurationHash:C}}}h(Er,"createProfileEvaluationRunPreparationService");async function xt(e,o){let c=L(e);for(let s of c.taskset.graders){if(s.kind==="model_judge"&&(!o||s.calibrationStatus!=="passed"))throw new Error("This Profile requires its current calibrated judge and bounded private provider owner.");let i="verifierRef"in s?s.verifierRef:"rubricRef"in s?s.rubricRef:null;i&&te(c,i)}let a=c.taskset.metrics?.customAggregator;if(a){let s=c.files.find(i=>i.asset.path===a.module);if(!s||s.asset.visibility==="policy"||V(q(s))!==a.contentHash)throw new Error("The authored aggregate metric is not its exact private release.");new TextDecoder("utf8",{fatal:!0}).decode(q(s))}}h(xt,"preflightProfilePrivateGrading");function te(e,o){let c=e.files.find(a=>a.asset.id===o.id);if(!c||c.asset.visibility==="policy"||f(c.asset)!==f(o))throw new Error("The exact private grader asset is unavailable.");return new TextDecoder("utf8",{fatal:!0}).decode(q(c))}h(te,"readPrivate");async function Ar(e){let o=L(e.packageValue);if(o.contentHash!==e.manifest.packageHash||o.taskset.contentHash!==e.manifest.tasksetRelease.contentHash)throw new Error("The private grading package changed its frozen Run identity.");await e.authorize(),await xt(o,!!e.executeBudgetedJudge),await e.authorize();let c=h(async({grader:i,task:r,evidence:u})=>{let t=e.signal;await e.authorize(),t?.throwIfAborted();let p={manifest:e.manifest,packageValue:o,grader:i,task:r,evidence:u,signal:t,authorize:e.authorize},g=e.executeSandboxVerifier?await e.executeSandboxVerifier(p):i.runtime==="sandbox_process"?await F(p):await $({source:te(o,i.verifierRef),exportName:i.exportName,runtime:i.runtime,timeoutMs:i.timeoutMs,signal:t,value:{task:r,attempt:u,input:r.input,output:u.output,artifacts:"artifacts"in u?u.artifacts:[],expectedOutput:r.expectedOutput,infrastructureError:u.infrastructureError??null}});return await e.authorize(),t?.throwIfAborted(),{score:g.score,passed:g.passed,rewardEligible:i.rewardEligible,failureClass:null,feedback:[g.feedback],visibleEvidenceRefs:[],privilegedEvidenceRefs:g.evidenceRefs}},"customVerifier"),a=o.taskset.metrics?.customAggregator,s=a?new TextDecoder("utf8",{fatal:!0}).decode(q(o.files.find(i=>i.asset.path===a.module))):void 0;return{authorize:e.authorize,customVerifier:c,...e.executeBudgetedJudge?{modelJudge:we({readRubric:h(async i=>{await e.authorize();let r=te(o,i);return await e.authorize(),r},"readRubric"),executeBudgeted:h(async(i,r)=>{await e.authorize(),r?.throwIfAborted();let u=await e.executeBudgetedJudge(i,r);return await e.authorize(),r?.throwIfAborted(),u},"executeBudgeted")})}:{},...s!==void 0?{metricSource:s,metricExecutor:h(async i=>{await e.authorize(),i.signal?.throwIfAborted();let r=await Ue(i);return await e.authorize(),i.signal?.throwIfAborted(),r},"metricExecutor")}:{}}}h(Ar,"createProfilePrivateGradingOwner");export{_t as a,lt as b,Bt as c,B as d,Ze as e,pt as f,A as g,tt as h,ot as i,ba as j,G as k,za as l,Wa as m,st as n,mr as o,Er as p,xt as q,Ar as r};
2
+ import{a as Je}from"./chunk-XTT3K3TR.js";import{a as F,e as $,f as Ye,h as Ue}from"./chunk-BUMCJHQP.js";import{b as ne}from"./chunk-EICS777E.js";import{a as $e}from"./chunk-FEAKTSRS.js";import{a as Ge}from"./chunk-TPOAAJKA.js";import{f as Fe,h as R}from"./chunk-5TTQCT3G.js";import{b as We}from"./chunk-NDNSLCPE.js";import{d as ze}from"./chunk-O4YHISU2.js";import{b as O,c as W}from"./chunk-HT6ILPD6.js";import{a as Me}from"./chunk-BTEBZYK3.js";import{d as X}from"./chunk-VMW23TIZ.js";import{a as Oe}from"./chunk-VFH5C6D2.js";import{d as je,e as Ne}from"./chunk-XLZMSD5K.js";import{m as Be}from"./chunk-BQNU4HZW.js";import{u as se}from"./chunk-OFJPOTES.js";import{I as Q,mc as Ve,qc as qe,v as Ae}from"./chunk-2THZ6GZY.js";import{i as Le,j as Ce}from"./chunk-73COPJ32.js";import{f as Te}from"./chunk-64EDQ7UV.js";import{j as Ie}from"./chunk-XKDOPNQ5.js";import{f as _e}from"./chunk-GR4MJJCE.js";import{r as U,v as K,w as be}from"./chunk-GG6PM7TB.js";import{Ca as De,Ia as He,aa as q,ba as Y,ha as Pe,i as J,ia as Ee,ja as L,oa as N,za as Se}from"./chunk-BYVE4TMU.js";import{w as xe,x as Re,z}from"./chunk-D6L6UNUQ.js";import{S as ve,d as we,da as ye}from"./chunk-ZEOYNUHL.js";import{Ia as me,Oa as he,bb as ge,e as ce,ja as le,kb as ke,oa as de,pa as M,qa as pe,ra as fe,xa as ue}from"./chunk-ZY32SZ2P.js";import{r as ie}from"./chunk-OTDDXEQ6.js";import{a as re,f as oe}from"./chunk-HNQPEOJD.js";import{c as b,d as _,e as ae,m as V,n as f}from"./chunk-RCT3O3HQ.js";import{A as x}from"./chunk-X2J2P5ZT.js";import{a as h}from"./chunk-FTQLQJQV.js";import{promises as it}from"node:fs";import nt from"node:path";async function _t(e){let o=e.definition.tasksetRelease,c=await je(e.store,e.harnessRelease);if(!c)throw new Error("Evaluation Profile Harness release is unavailable.");let a=await lt({...e,runtime:c});if(a)return a;let s=await e.store.listTasksetRevisions(e.profileId);for(let i of s){if(o.id!==i.id&&o.id!==`taskset-release-${i.id}-r${i.revision}`)continue;let r=await ct(e.storeDir,i);if(r.taskset.id===o.id&&r.taskset.contentHash===o.contentHash)return r}throw new Error(`Released Taskset ${o.id} is unavailable in Profile ${e.profileId}.`)}h(_t,"loadLocalProfileEvaluationTaskset");async function ct(e,o){let c=o.metadata.importedPackageHash;if(typeof c=="string"){let i=await W(e,c);if(i.taskset.id!==o.id||i.taskset.revision!==o.revision)throw new Error("Imported evaluation Taskset differs from its local Profile revision.");return i}if(De(o)!==o.contentHash)throw new Error("Authored evaluation Taskset differs from its immutable revision.");let a=He({taskset:o,adapterId:ze(o)}),s=await We({storeDir:e,taskset:o,content:{schemaVersion:"openpond.tasksetPackage.v1",taskset:a.tasksetRelease,environment:a.environmentRelease,verifierSet:a.verifierSetRelease}});return await O(e,s),s}h(ct,"loadCandidate");async function lt(e){let o=e.definition.tasksetRelease,c=e.runtime;if(c.release.harnessRelease.id!==e.harnessRelease.id||c.release.harnessRelease.contentHash!==e.harnessRelease.contentHash)throw new Error("Evaluation Taskset runtime differs from its requested release.");let a=`evals/tasksets/${o.contentHash}.json`,s=c.release.harnessRelease.files.find(i=>i.path===a);if(s){if(s.visibility!=="verifier")throw new Error("Evaluation Taskset package is not verifier-private.");let i=await it.readFile(nt.join(c.release.bundlePath,"source",...a.split("/")));if(V(i)!==s.contentHash)throw new Error("Released evaluation Taskset package bytes differ from their source receipt.");let r=L(JSON.parse(i.toString("utf8")));if(r.taskset.id!==o.id||r.taskset.contentHash!==o.contentHash)throw new Error("Released evaluation Taskset package differs from its definition.");return r}return null}h(lt,"loadReleasedProfileEvaluationTaskset");function Z(e){return{id:fe(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(o=>o.taskId))],seeds:[...new Set(e.population.map(o=>o.seed))],criterion:e.criterion}}h(Z,"externalProfileEvaluationDefinition");async function Bt(e){let o=e.manifest.profileEvaluation,c=o?.externalDatasetBinding?M(o.externalDatasetBinding):null;if(!c)return null;if(!e.resolveExternalDataset)throw new Error("This owner has no authorized external Dataset resolver.");let a=await e.resolveExternalDataset(c,e.selected);await a.authorize();let s=L(a.packageValue),i=await e.loadCatalog({ref:e.selected.profileRef,sourceRevision:e.selected.sourceRevision,harnessRelease:e.selected.harnessRelease});if(f(a.binding)!==f(c)||c.profileId!==e.selected.profileRef.profileId||c.declaredProfileCatalogHash!==i.catalogHash||s.contentHash!==c.packageHash||f(s.taskset)!==f(e.taskset)||c.environmentHash!==f(s.taskset.environment)||c.privateDatasetClosureHash!==f(s.files.filter(t=>t.asset.visibility!=="policy").map(t=>t.asset)))throw new Error("External Dataset admission changed its actual Profile, package or private closure.");let r=Z(c),u={schemaVersion:"openpond.profileEvaluations.v1",definitions:[r],suites:[]};if(z(e.manifest,e.taskset,u),!o||o.catalogHash!==f(u)||o.definitionHash!==f(r)||f(o.target)!==f(c.target))throw new Error("External Dataset manifest changed its derived definition.");return await a.authorize(),{...a,packageValue:s,definition:r,catalog:u}}h(Bt,"admitProfileExternalDataset");import vt from"node:path";function Ke(e,o){return e.map(c=>{let a=c.workspace.draft,s=a.metadata.profileTarget,i=s&&typeof s=="object"&&!Array.isArray(s)?s:{},r=typeof i.profileId=="string"?{profileId:i.profileId,workflowId:typeof i.workflowId=="string"?i.workflowId:null}:null,u=c.checks.find(t=>t.kind==="graders"&&t.workspaceHash===c.workspace.contentHash);return{summary:{...o(c),rows:[]},projectId:c.projectId,profileTarget:r,updatedAt:a.updatedAt,workspaceHash:c.workspace.contentHash,packageHash:c.packageHash,graders:a.graders.map(t=>{let p=u?.scopes?.find(l=>l.graderId===t.id),g=t.metadata.portableVerifierRef;return{id:`grader-${f([a.id,t.id]).slice(0,40)}`,graderId:t.id,name:t.label,kind:t.kind,version:t.version,configurationHash:f(t),weight:t.weight,hardGate:t.hardGate,rewardEligible:t.rewardEligible,privileged:t.privileged,checkState:p?`${p.checked}/${p.total} ${p.status}`:u?u.status:"Not checked",verifierPath:g&&typeof g=="object"&&"path"in g&&typeof g.path=="string"?g.path:null,fields:Array.isArray(a.metadata.fields)?a.metadata.fields.filter(l=>typeof l=="string"):[]}})}})}h(Ke,"localLearningCatalog");function B(e){let o=e.workspace.draft,c=e.checks.find(a=>a.kind==="graders");return o.graders.map(a=>{let s=c?.scopes?.find(u=>u.graderId===a.id),i=c&&c.workspaceHash!==e.workspace.contentHash?"Checks stale":s?.status??"Not tested",r=o.graderFixtures.filter(u=>!Array.isArray(u.metadata.graderIds)||u.metadata.graderIds.includes(a.id));return{kind:"grader",id:`grader-${f([o.id,a.id]).slice(0,40)}`,revision:o.revision,name:a.label,datasetId:o.id,datasetRevision:o.revision,graderId:a.id,graderType:a.kind,state:i,description:a.kind==="content"&&typeof a.config.operator=="string"?a.config.operator:`${a.kind} grader \xB7 ${a.version}`,checkState:s?`${s.checked}/${s.total} examples checked \xB7 ${i}`:i,rows:r.slice(0,3).map(u=>({id:u.id,label:u.label,detail:JSON.stringify(u.output)}))}})}h(B,"localGraderSummaries");function Xe(e,o,c){let{offset:a,limit:s}=x.object({offset:x.number().int().nonnegative().default(0),limit:x.number().int().min(1).max(100).default(20)}).parse(c),i=e.workspace.draft,r=i.graders.find(g=>g.id===o.graderId),u=i.graderFixtures.filter(g=>!Array.isArray(g.metadata.graderIds)||g.metadata.graderIds.includes(r.id)),t=r.kind==="custom_verifier"?e.workspace.files.find(g=>g.path===r.module):null,p=t?Buffer.from(t.base64,"base64").toString("utf8"):null;return{summary:o,dataset:{id:i.id,revision:i.revision,name:i.name,workspaceHash:e.workspace.contentHash},grader:r,taskCount:i.tasks.length,fixtures:{total:u.length,offset:a,items:u.slice(a,a+s),hasMore:a+s<u.length},files:t?[{path:t.path,contentHash:t.contentHash,sizeBytes:t.sizeBytes,content:p.slice(0,24e3),truncated:p.length>24e3}]:[]}}h(Xe,"localGraderInspection");async function Qe(e,o,c,a){let s=a?e.checks.find(l=>l.kind==="graders"&&l.revision===e.workspace.draft.revision&&l.workspaceHash===e.workspace.contentHash):void 0,i=s?.scopes?.filter(l=>l.graderId!==a&&o.taskset.graders.some(d=>d.id===l.graderId))??[],r=s?.issues.filter(l=>l.graderId&&i.some(d=>d.graderId===l.graderId))??[],u=e.workspace.draft.graderFixtures,t=i.reduce((l,d)=>l+d.checked,0),p=i.reduce((l,d)=>l+d.total,0),g=[...i];for(let l of o.taskset.graders){let d=u.filter(n=>!Array.isArray(n.metadata.graderIds)||n.metadata.graderIds.includes(l.id));if(a&&l.id!==a){i.some(n=>n.graderId===l.id)||(p+=d.length,g.push({graderId:l.id,checked:0,total:d.length,status:"unavailable"}),r.push({code:"grader_not_checked",message:"This grader has not been checked at the saved revision.",graderId:l.id}));continue}let k=t,I=r.length;p+=d.length,(!d.some(n=>n.label==="positive")||!d.some(n=>n.label==="negative"))&&r.push({code:"examples_missing",message:"Add known-good and known-bad examples before claiming qualification.",graderId:l.id});for(let n of d){c?.throwIfAborted();let P=o.taskset.tasks.find(w=>w.id===n.taskId);if(!P){r.push({code:"fixture_task_missing",message:`Example ${n.id} references a missing task.`,graderId:l.id,taskId:n.taskId});continue}try{let w=Ye(o,n),v={output:n.output,runtimeEventRefs:[],artifactRefs:w.map(E=>E.reference.id),artifacts:w,infrastructureError:n.infrastructureError},[S]=await me({task:P,graders:[l],purpose:"fixture_calibration",signal:c,evidence:v,customVerifier:h(async({grader:E,task:D,evidence:H})=>{let C=o.files.find(y=>y.asset.id===E.verifierRef.id);if(!C||f(C.asset)!==f(E.verifierRef))throw new Error("The exact verifier source is missing.");let T=E.runtime==="sandbox_process"?await F({packageValue:o,grader:E,task:D,evidence:{...H,artifacts:w},signal:c,authorize:h(async()=>{c?.throwIfAborted()},"authorize")}):await $({source:new TextDecoder("utf-8",{fatal:!0}).decode(q(C)),exportName:E.exportName,runtime:E.runtime,timeoutMs:E.timeoutMs,signal:c,value:{task:D,attempt:H,input:D.input,expectedOutput:D.expectedOutput,output:H.output,artifacts:w,infrastructureError:n.infrastructureError}});return{score:T.score,passed:T.passed,rewardEligible:E.rewardEligible,failureClass:null,feedback:[T.feedback],visibleEvidenceRefs:[],privilegedEvidenceRefs:T.evidenceRefs}},"customVerifier")});!S||S.score===null&&!n.infrastructureError||S.status==="pending"?r.push({code:"grader_unavailable",message:S?.feedback.join(" ")??"The grader returned no evidence.",graderId:l.id,taskId:P.id}):(t++,(S.passed!==n.expectedPassed||S.rewardEligible!==n.expectedRewardEligible)&&r.push({code:"example_mismatch",message:`Example ${n.id} did not match its expected pass/reward outcome. ${S.feedback.join(" ").slice(0,2e3)}`,graderId:l.id,taskId:P.id}))}catch(w){r.push({code:"grader_unavailable",message:w instanceof Error?w.message:"Example check failed.",graderId:l.id,taskId:P.id})}}let m=r.slice(I);g.push({graderId:l.id,checked:t-k,total:d.length,status:m.some(n=>n.code==="example_mismatch")?"failed":m.length?"unavailable":"passed"})}return o.taskset.graders.length||r.push({code:"graders_missing",message:"No graders are configured."}),{kind:"graders",revision:e.workspace.draft.revision,workspaceHash:e.workspace.contentHash,status:r.some(l=>l.code==="example_mismatch")?"failed":r.length?"unavailable":"passed",checked:t,total:p,scopes:g,issues:r,checkedAt:new Date().toISOString()}}h(Qe,"checkLocalDatasetGraders");var dt=new Set(["unknown","other"]);function Ze(e,o){return o?"approved":!e||dt.has(e.toLowerCase())?"review":"approved"}h(Ze,"approvedLicenseStatus");function pt(e,o){if(e.schemaVersion!=="openpond.huggingFaceDatasetSource.v1")throw new Error("Selected source checks require a captured Hugging Face sample.");let c=V(o);if(e.metadata.capturedSourceHash!==c||!e.sourceFileHashes.includes(c))throw new Error("The captured source bytes do not match their retained hash.");let a=new TextDecoder("utf-8",{fatal:!0}).decode(o),s=Te(a);return{...e,secretScanStatus:s.secretStatus,piiScanStatus:s.piiStatus,licensingStatus:Ze(e.declaredLicense,!1),metadata:{...e.metadata,privacyScanner:"openpond-evidence-v1",findings:s.findings,checkedSourceHash:c}}}h(pt,"checkCapturedHuggingFaceSource");function et(e){let o=0,c=e.draft.sourceRefs.map(a=>{if(a.schemaVersion!=="openpond.huggingFaceDatasetSource.v1"||typeof a.metadata.capturedSourcePath!="string")return a;let s=e.files.find(r=>r.path===a.metadata.capturedSourcePath);if(!s)throw new Error("The captured source file is missing.");let i=Buffer.from(s.base64,"base64");if(V(i)!==s.contentHash||i.byteLength!==s.sizeBytes)throw new Error("The captured source file failed integrity verification.");return o++,pt(a,i)});if(!o)throw new Error("This Dataset has no captured Hugging Face samples to check.");return c}h(et,"checkCapturedDatasetSources");function A(e){let{draft:o}=e.workspace,c=e.checks.filter(a=>a.workspaceHash===e.workspace.contentHash);return{kind:"dataset",id:o.id,revision:o.revision,name:o.name||"Untitled dataset",state:e.packageHash?"Runnable":"Saved draft",evaluationHash:e.workspace.contentHash,taskCount:o.datasetArtifact?.rowCount??o.tasks.length,graderCount:o.graders.length,checkState:c.length?c.map(a=>`${a.kind}: ${a.status} (${a.checked}/${a.total})`).join(" \xB7 "):e.checks.length?"Checks stale":"Not checked",syncState:e.sync?e.sync.paused?"Paused":e.sync.acknowledgedHash===e.workspace.contentHash&&e.sync.status==="synced"?"Synced":e.sync.status==="synced"?"Sync pending":e.sync.status:"Local",rows:o.tasks.slice(0,3).map(a=>({id:a.id,label:typeof a.input.prompt=="string"?a.input.prompt:JSON.stringify(a.input),detail:o.graders.map(s=>s.label).join(", ")}))}}h(A,"localDatasetSummary");function tt(e){async function o(r,u){let t=await e.store.readLocalDataset(r,u);if(!t||t.ownerId!==await e.store.localResourceOwnerId())throw new Error("Local Dataset was not found.");return t}h(o,"read");async function c(r,u){let t=await e.store.readLocalDatasetListing(r,u);if(!t||t.ownerId!==await e.store.localResourceOwnerId())throw new Error("Local Dataset was not found.");return t}h(c,"readListing");function a(r,u,t=r.workspace.contentHash){return _e({workspace:u?Me(r.workspace,u):r.workspace,sourceWorkspaceHash:t,maximumBytes:Number.POSITIVE_INFINITY,preparation:null,adapterId:"openpond-desktop-taskset-authoring-v1",now:r.workspace.draft.updatedAt})}h(a,"compile");async function s(r,u,t){if(t){let d=await e.store.readLocalDatasetProjection(r,t,{revision:u});if(!d||d.record.ownerId!==await e.store.localResourceOwnerId())throw new Error("Local Dataset was not found.");let k=a(d.record,void 0,d.sourceWorkspaceHash);return await O(e.home,k,Number.POSITIVE_INFINITY),{record:d.record,package:k}}let p=await o(r,u),g=a(p,t);await O(e.home,g,Number.POSITIVE_INFINITY);let l=await o(r);if(!t&&l.workspace.contentHash===p.workspace.contentHash&&l.packageHash!==g.contentHash)try{p=await e.store.updateLocalDatasetMetadata(r,f(l),d=>({...d,packageHash:g.contentHash}))}catch(d){if(!(d instanceof Error)||!d.message.startsWith("Dataset state changed."))throw d}return{record:p,package:g}}h(s,"packageDataset");async function i(r,u){let t=qe.parse(r),p=await e.store.localResourceOwnerId();if(t.action==="schema"){let m=x.enum(["task","grader","fixture","draft","file"]).parse(t.payload.kind??"task"),n=m==="task"?N.shape.tasks.unwrap().element:m==="grader"?N.shape.graders.unwrap().element:m==="fixture"?N.shape.graderFixtures.unwrap().element:m==="file"?J:N;return{kind:m,schema:x.toJSONSchema(n),...m==="grader"?{example:{id:"exact-answer",version:"1",label:"Exact answer",kind:"content",weight:1,hardGate:!0,rewardEligible:!1,privileged:!0,config:{operator:"final_answer_equals_expected"},metadata:{}}}:{}}}if(t.action==="list"){let m=(await e.store.listLocalDatasetListings()).filter(n=>n.ownerId===p);return t.payload.view==="catalog"?Ke(m,A):m.map(n=>({...A(n),projectId:n.projectId}))}if(t.action==="inspect_source"||t.action==="import_source"){if(!e.sourceAction)throw new Error("This Dataset source adapter is unavailable.");return e.sourceAction(t.action,t.payload,p)}if(t.action==="related_chats"){let m=t.payload.kind;if(m!==void 0&&!["dataset","grader","experiment"].includes(String(m)))throw new Error("Select a supported resource kind.");let n=await e.store.chatResourceLinks({kind:typeof m=="string"?m:"dataset",id:t.id}),P=[...new Set(n.map(w=>w.sessionId))];return(await Promise.all(P.map(w=>e.store.getSession(w)))).filter(w=>w&&!w.systemKind&&w.workspaceKind!=="sandbox").map(w=>({id:w.id,title:w.title}))}let g=f(t);if(["create","save","file","import","save_grader","check_sources"].includes(t.action)){if(!t.operationId)throw new Error("A stable operationId is required. Reuse it after an uncertain response.");let m=await e.store.recoverLocalDatasetOperation(t.operationId,g);if(m)return{record:m,summary:A(m),summaries:B(m)};let n=new Date().toISOString(),P;if(t.action==="create"||t.action==="import"){let v=`dataset-${f([p,t.operationId]).slice(0,40)}`,S;if(t.action==="import"){if(typeof t.payload.path!="string")throw new Error("Import requires a package folder path.");S=(await X({directory:t.payload.path,teamId:p,datasetId:v,expectedRevision:0,maximumBytes:Number.POSITIVE_INFINITY})).workspace}else{let E=Se({profileId:p,id:v,name:typeof t.payload.name=="string"?t.payload.name:"",now:n});S=U({schemaVersion:"openpond.tasksetDraftWorkspace.v1",draft:{...E,...t.payload.draft,id:v,profileId:p,modelScope:null,revision:1,status:"draft",publishedTasksetRef:null,createdAt:n,updatedAt:n},files:Array.isArray(t.payload.files)?t.payload.files:[]},Number.POSITIVE_INFINITY)}P=Ve.parse({schemaVersion:"openpond.localDataset.v1",ownerId:p,projectId:typeof t.payload.projectId=="string"?t.payload.projectId:null,workspace:S,checks:[],packageHash:null,sync:null})}else{if(!t.id||t.expectedRevision===void 0)throw new Error("Editing requires a Dataset ID and expectedRevision.");let v=await o(t.id),S=t.payload.draft;if(t.action==="check_sources"&&(S={sourceRefs:et(v.workspace)}),t.action==="save_grader"){let D=N.shape.graders.unwrap().element.parse(t.payload.grader),H=v.workspace.draft.graders.filter(T=>T.id!==D.id),C=v.workspace.draft.graders.findIndex(T=>T.id===D.id);H.splice(C<0?H.length:C,0,D),S={graders:H,...Array.isArray(t.payload.fixtures)?{graderFixtures:t.payload.fixtures}:{}}}let E;if(t.action==="save"&&typeof t.payload.path=="string"){if(v.workspace.draft.modelScope)throw new Error("Folder replacement requires an ordinary local Dataset.");let D=await X({directory:t.payload.path,teamId:p,datasetId:t.id,expectedRevision:t.expectedRevision,maximumBytes:Number.POSITIVE_INFINITY}),H=K({workspace:v.workspace,expectedDraftRevision:t.expectedRevision,draft:{...D.workspace.draft,id:v.workspace.draft.id,profileId:v.workspace.draft.profileId,modelScope:v.workspace.draft.modelScope,revision:v.workspace.draft.revision,status:v.workspace.draft.status,createdAt:v.workspace.draft.createdAt,publishedTasksetRef:v.workspace.draft.publishedTasksetRef},now:n,maximumBytes:Number.POSITIVE_INFINITY});E=U({schemaVersion:H.schemaVersion,draft:H.draft,files:D.workspace.files},Number.POSITIVE_INFINITY)}else E=t.action==="file"?be({workspace:v.workspace,mutation:J.parse({...t.payload,draftId:t.id,expectedDraftRevision:t.expectedRevision}),now:n,maximumBytes:Number.POSITIVE_INFINITY}):K({workspace:v.workspace,expectedDraftRevision:t.expectedRevision,draft:{...v.workspace.draft,...S},now:n,maximumBytes:Number.POSITIVE_INFINITY});P={...v,workspace:E,packageHash:null}}u?.throwIfAborted();let w=await e.store.saveLocalDataset({record:P,expectedRevision:t.action==="create"||t.action==="import"?0:t.expectedRevision,operationId:t.operationId,requestHash:g});return e.onSaved?.(w),{record:w,summary:A(w),summaries:B(w)}}if(!t.id)throw new Error("A Dataset ID is required.");if(t.action==="read"&&t.payload.view==="metadata"){let m=t.payload.revision===void 0?void 0:x.number().int().positive().parse(t.payload.revision),n=await c(t.id,m);return{record:n,summary:A(n)}}let l=await o(t.id,["read","read_grader","list_graders"].includes(t.action)&&t.expectedRevision?t.expectedRevision:void 0);if(t.action==="list_graders")return{summaries:B(l)};if(t.action==="read_grader"){let m=B(l).find(n=>n.graderId===t.payload.graderId||n.id===t.payload.graderId);if(!m)throw new Error("The saved grader was not found.");return t.payload.view==="inspection"?Xe(l,m,t.payload):{record:l,summary:m,grader:l.workspace.draft.graders.find(n=>n.id===m.graderId)}}if(t.action==="read")return{record:l,summary:A(l)};if(["upload","sync","pause_sync","disconnect_sync","publish"].includes(t.action)){if(t.expectedRevision!==l.workspace.draft.revision)throw new Error("Cloud actions require the exact current saved expectedRevision.");if(!e.syncAction)throw new Error("Cloud Dataset synchronization is unavailable.");let m=await e.syncAction(t.action,l,t.payload);return{record:m,summary:A(m)}}if(t.expectedRevision!==l.workspace.draft.revision)throw new Error("Checks and packaging require the exact saved expectedRevision.");if(t.action==="test_grader"&&!l.workspace.draft.graders.some(m=>m.id===t.payload.graderId))throw new Error("The saved grader was not found.");let d=null,k={kind:"structure",revision:l.workspace.draft.revision,workspaceHash:l.workspace.contentHash,status:"passed",checked:l.workspace.draft.tasks.length,total:l.workspace.draft.datasetArtifact?.rowCount??l.workspace.draft.tasks.length,checkedAt:new Date().toISOString(),issues:[]};try{d=a(l),await O(e.home,d,Number.POSITIVE_INFINITY)}catch(m){k={...k,status:"failed",issues:[{code:"package_invalid",message:m instanceof Error?m.message:"Package validation failed."}]}}if(["check_graders","test_grader"].includes(t.action)&&d){let m=[...new Set(l.workspace.draft.graderFixtures.map(n=>n.taskId))];k=await Qe(l,m.length?a(l,m):d,u,t.action==="test_grader"?t.payload.graderId:void 0)}let I=await e.store.updateLocalDatasetMetadata(t.id,f(l),m=>({...m,packageHash:d?.contentHash??null,checks:[...m.checks.filter(n=>n.kind!==k.kind),k]}));return{record:I,summary:t.action==="test_grader"?B(I).find(m=>m.graderId===t.payload.graderId):A(I),summaries:B(I),check:k,...t.action==="package"&&d?{package:d}:{}}}return h(i,"request"),{request:i,read:o,readListing:c,packageDataset:s,compile:a}}h(tt,"createLocalDatasetService");import{mkdtemp as ft,mkdir as ut,rm as mt}from"node:fs/promises";import ht from"node:os";import at from"node:path";var rt=new Set(["work_exec","work_save_output"]);function ot(e){let o=e.taskset,c=o.environment.kind==="text"&&o.tools.length===0,a=o.environment.kind==="work"&&o.environment.entrypoint==="openpond-work-v1"&&o.tools.every(s=>rt.has(s.name));return(c||a)&&o.policy.connectedAppScopes.length===0&&o.capabilities.every(s=>!s.required||s.id==="private-verifier"||s.id==="tools"&&s.scopes.every(i=>rt.has(i)&&o.tools.some(r=>r.name===i)))}h(ot,"supportsLocalProfileEnvironment");async function ba(){let e=await ft(at.join(ht.tmpdir(),"openpond-work-preflight-"));try{await ut(at.join(e,"outputs"));let o="local-work-preflight",a=await $e({authorize:h(async()=>({candidateId:o,candidateRevision:1,ownerId:o,sessionId:o,turnId:o,sourceRoot:e,layout:"profile_case",writablePaths:["outputs"]}),"authorize")})({candidateId:o,expectedRevision:1,sessionId:o,turnId:o,timeoutMs:5e3,command:`/runtime/node -e 'require("node:fs").writeFileSync("outputs/probe","ready");process.stdout.write("ready")'`});if(a.code!==0||a.timedOut||a.stdout!=="ready")throw new Error("The confined local Work executor is unavailable.")}finally{await mt(e,{recursive:!0,force:!0})}}h(ba,"assertLocalProfileWorkRuntime");function G(e){let o=Pe(e),c=e.modelResources?.rewards??(e.learningResources?ye(e.taskset).rewards:[]);if(o&&f(ge(o,c))!==f(e.taskset.graders))throw new R("local_grader_closure_conflict","The retained Reward closure differs from the released Dataset graders.",422);return e.taskset.graders.map(a=>{let s=o?.sources.find(r=>r.graderId===a.id),i=s&&c.find(r=>r.id===s.reward.id&&r.revision===s.reward.revision&&r.contentHash===s.reward.contentHash);return{id:a.id,version:a.version,contentHash:f(a),name:i?.name??("config"in a&&a.config.operator==="final_answer_equals_expected"?"Answer accuracy":`${a.kind.replaceAll("_"," ")} grader`),feedbackKey:i?he(i):`grader_${f(a.id).slice(0,24)}`,release:i?{id:i.id,revision:i.revision,contentHash:i.contentHash}:null}})}h(G,"localPackageGraders");function za(e,o){let c=G(e),a=o?o.map(s=>{let i=c.find(r=>r.id===s.id&&r.version===s.version&&r.contentHash===s.contentHash);if(!i)throw new R("local_grader_pin_unavailable","Select an exact grader from the retained Dataset package.",422);return{...i,mappings:s.mappings}}):c;try{return Le(a)}catch(s){throw new R("experiment_grader_feedback_conflict",s instanceof Error?s.message:"Grader selection conflicts.",422)}}h(za,"selectLocalPackageGraders");function Wa(e,o,c,a=!1,s=!1,i=!1){let r=L(o),u=e.configuration.request;if(r.contentHash!==e.packageHash||f(u.taskset)!==f({id:r.taskset.id,revision:r.taskset.revision,contentHash:r.taskset.contentHash}))throw new R("local_dataset_pin_conflict","Local execution requires the exact retained Dataset package.",422);if(u.policy.kind!=="hosted_chat"&&!(u.policy.kind==="hosted_harness"&&i))throw new R("local_target_not_qualified","This local execution path requires a qualified exact target owner.",422);let t=i&&u.policy.kind==="hosted_harness"&&ot(r);if(["claude-code","codex"].includes(e.model.providerId)&&!t&&(gt(r)||r.taskset.environment.kind!=="text"||r.taskset.tools.length))throw new R("native_text_environment_not_admitted","This native model adapter requires a text Dataset with no environment tools. Additional tool owners require explicit admission.",422);let p=u.policy.kind==="hosted_chat"?u.policy.harness:void 0;if(p&&!a)throw new R("local_harness_not_qualified","A released Harness must execute through its native turn owner.",422);let g=Y(r);if(r.taskset.policy.connectedAppScopes.length)throw new R("local_connected_scope_not_qualified","This Dataset requires connected scopes that have not been admitted for local execution.",422);for(let l of r.taskset.capabilities.filter(d=>d.required)){if(l.id==="tools"&&i&&l.scopes.every(k=>["work_exec","work_save_output"].includes(k)&&r.taskset.tools.some(I=>I.name===k)))continue;if(l.id!=="private-verifier")throw new R("local_capability_not_qualified","This Dataset requires capabilities not supplied by the local execution owner.",422);if((l.scopes.length?l.scopes:r.taskset.policy.hiddenGraderRefs).some(k=>!r.taskset.policy.hiddenGraderRefs.includes(k)||!r.taskset.graders.some(I=>I.id===k&&I.privileged&&I.kind!=="human")))throw new R("local_capability_not_qualified","The required private grader scope has no supported exact local grader owner.",422)}if(!g&&r.taskset.tools.length&&!i)throw new R("local_tool_target_not_qualified","This Dataset's tools require a released native target executor.",422);if(g?.execution.javascript.executionServices?.length&&!s)throw new R("local_prepared_environment_not_qualified","This Dataset requires prepared compute services that are not yet bound to the local execution owner.",422);if(r.taskset.environment.kind!=="text"&&!g&&!t)throw new R("local_environment_unavailable","The released Dataset has no supported local environment executor.",422);if(p&&(g||r.taskset.environment.kind!=="text"))throw new R("local_harness_environment_not_qualified","This native Harness requires a compatible text Dataset.",422);return u.population.map(l=>{let d=r.taskset.tasks.find(P=>P.id===l.taskId);if(!d)throw new R("local_population_unavailable","The selected task is absent from this immutable Dataset release.",422);let k=le(d);if((k.artifactRefs.length||d.requiredOutputs?.length)&&!(i&&u.policy.kind==="hosted_harness"))throw new R("local_work_target_not_qualified","This Dataset requires document input or Work output capabilities not supplied by this local model target.",422);let I=g?.assets.find(P=>P.id===g.execution.javascript.module.id),m=g?.assets.find(P=>P.id===d.privilegedContextRef);if(g&&(!I||!m))throw new R("local_environment_assets_missing","Private environment resources are missing from the retained package.",422);let n={kind:"model",id:`local-case-${f([c,l.receiptId]).slice(0,48)}`,taskId:d.id,model:e.model,...p?{harness:p}:{},instructions:Ee(r),input:k.input,policyVisibleContext:k.policyVisibleContext,timeoutMs:r.taskset.environment.defaultTimeoutMs,environment:g?{kind:"javascript",definition:g.execution.javascript,asset:I,initialState:JSON.parse(ve(m,m.asset)),seed:Number(l.seed)}:{kind:"text"}};return{receiptId:l.receiptId,taskId:l.taskId,seed:l.seed,request:Fe.parse({...n,admissionHash:f(n)})}})}h(Wa,"localExperimentAdmissions");function gt(e){return!!Y(e)}h(gt,"executionForClaude");import{readFile as kt}from"node:fs/promises";import wt from"node:path";async function st(e,o,c,a){let s=await e.getHarnessReleaseRecord(o.contentHash),i=s&&await e.getHarnessWorkspace(s.workspaceId);if(!s||!i||s.harnessRelease.id!==o.id||i.location!=="local"||i.metadata.sourceLayout!=="openpond.harnessSourceManifest.v1")throw new R("local_profile_source_unavailable","The exact Profile Harness is unavailable.",403);let r=i.metadata.profileExperimentOrigin!==void 0||i.metadata.experimentCandidateOrigin!==void 0;if(r){if(!a||!c)throw new R("local_profile_origin_access_denied","This source requires its authenticated origin.",403);await a(i,o,c)}else{if(i.ownerScope.kind!=="personal"||i.ownerScope.id!=="desktop-personal"||typeof s.harnessRelease.metadata.profileRepositoryId=="string"||typeof s.agentSnapshot.metadata.profileRepositoryId=="string")throw new R("local_profile_origin_access_denied","The Profile is not device-owned.",403);let d=s.harnessRelease.metadata.profile;if(c&&(c.source!=="local"||d?.id!==c.profileId||d.repositoryId&&d.repositoryId!==c.repositoryId))throw new R("local_profile_origin_access_denied","The retained Harness differs from this exact Profile reference.",403);if(i.metadata.selectionEligible===!1&&(!c||!d?.repositoryId||d.repositoryId!==c.repositoryId||i.id!==`${Oe}${f({ref:c,sourceRevision:d.sourceRevision}).slice(0,24)}`))throw new R("local_profile_origin_access_denied","This explicit Profile release requires its canonical accepted reference.",403)}let u=await Ne({workspace:i,release:s}),t=new Map;for(let d of s.harnessRelease.files)t.set(d.path,await kt(wt.join(s.bundlePath,"source",...d.path.split("/"))));let p=ie({agentSnapshot:s.agentSnapshot,harnessRelease:s.harnessRelease,files:t}),g=ke(s);ne({sourcePackage:p,expectedRelease:o,baseSystemPrompt:"",runtimeId:"openpond.native-profile-experiment.v1",maxContextCharacters:262144,tools:g.map(d=>({name:d.name,inputSchema:d.inputSchema,definition:{type:"function",function:{name:d.name,description:d.description,parameters:d.inputSchema}}}))});let l=await e.getHarnessWorkspace(i.id);if(!l||f(l.ownerScope)!==f(i.ownerScope)||f(l.metadata)!==f(i.metadata))throw new R("local_profile_origin_access_denied","Profile source ownership changed during admission.",403);return r&&await a(i,o,c),u}h(st,"resolveLocalProfileExperimentSource");var ee=x.object({id:b,revision:x.number().int().positive(),workspaceHash:_,taskIds:x.array(b).min(1).max(500),seed:x.string().trim().min(1).max(500).default("1")}).strict();function mr(e){let o=tt({store:e.store,home:e.storeDir});async function c(r){if(r.profileRef.source!=="local")throw new Error("Installation-local Datasets require an accepted local Profile.");if(!(await se()).profiles.some(l=>f(l.ref)===f(r.profileRef)))throw new Error("The local Dataset's Profile is no longer in this installation's accepted library.");let t=await st(e.store,r.harnessRelease,r.profileRef),p=await Je({store:e.store,ref:r.profileRef,sourceRevision:r.sourceRevision,harnessRelease:r.harnessRelease}),g=await Be({workspaceId:typeof t.release.agentSnapshot.metadata.workspaceId=="string"?t.release.agentSnapshot.metadata.workspaceId:t.release.workspaceId,sourceDir:vt.join(t.release.bundlePath,"source")});if(g.harnessRelease.contentHash!==r.harnessRelease.contentHash)throw new Error("The local Dataset's frozen Profile source changed.");return{catalog:p,protectedClosureHash:Ge(g).protectedClosureHash}}h(c,"profileAuthority");async function a(r,u,t){let p=await e.store.readLocalDatasetProjection(r,t,{workspaceHash:u});if(!p||p.record.ownerId!==await e.store.localResourceOwnerId())throw new Error("The exact installation-local Dataset workspace is unavailable to this owner.");return{record:p.record,packageValue:o.compile(p.record,void 0,p.sourceWorkspaceHash)}}return h(a,"savedPackage"),{prepareBinding:h(async(r,u,t)=>{let p=ee.parse(r);if((await o.readListing(p.id,p.revision)).workspace.contentHash!==p.workspaceHash)throw new Error("The selected local Dataset revision or workspace hash changed.");if(new Set(p.taskIds).size!==p.taskIds.length)throw new Error("Select each local Dataset task once.");let{package:l}=await o.packageDataset(p.id,p.revision,p.taskIds),d=p.taskIds.map(n=>l.taskset.tasks.find(P=>P.id===n));if(d.some(n=>!n)||d.some(n=>n.split!==d[0].split))throw new Error("Select existing local Dataset tasks from one exact split.");let{catalog:k,protectedClosureHash:I}=await c(u);if(!k.definitions.some(n=>f(n)===f(t)))throw new Error("The local Dataset target differs from the accepted Profile definition.");let m=G(l);return pe({schemaVersion:"openpond.profileExternalDatasetBinding.v1",dataset:{id:l.taskset.id,revision:l.taskset.revision,contentHash:l.taskset.contentHash},packageHash:l.contentHash,profileId:u.profileRef.profileId,target:t.target,declaredProfileCatalogHash:k.catalogHash,protectedProfileClosureHash:I,split:d[0].split,population:p.taskIds.map(n=>({taskId:n,seed:p.seed,fixtureId:null})),evaluators:m.map(n=>({release:n.release??{id:n.id,revision:n.version,contentHash:n.contentHash},feedbackKey:n.feedbackKey,configurationHash:f({graderHash:n.contentHash,mappings:[]}),output:"score",categories:[]})),fieldMappings:[],fieldMappingsHash:f([]),environmentHash:f(l.taskset.environment),privateDatasetClosureHash:f(l.files.filter(n=>n.asset.visibility!=="policy").map(n=>n.asset)),criterion:t.criterion})},"prepareBinding"),resolveExternalDataset:h(async(r,u)=>{let t;try{t=await W(e.storeDir,r.packageHash)}catch(n){if(n.code!=="ENOENT")throw n}let p=t?x.object({sourceTasksetId:b,sourcePackageHash:_}).passthrough().safeParse(t.taskset.metadata):null,g=p?.success?await e.store.readLocalDatasetListing(p.data.sourceTasksetId):null;if(!t||!p?.success||!g){if(!e.remote)throw new Error("This external Dataset has no installation-local owner.");return e.remote(r,u)}let l=p.data,d=t.contentHash,k=g.ownerId;async function I(){let n=[...new Set(r.population.map(S=>S.taskId))],{record:P,packageValue:w}=await a(l.sourceTasksetId,l.sourcePackageHash,n);if(P.ownerId!==k||w.contentHash!==d)throw new Error("The cached Dataset differs from its exact saved local source.");let v=await c(u);if(r.profileId!==u.profileRef.profileId||r.declaredProfileCatalogHash!==v.catalog.catalogHash||r.protectedProfileClosureHash!==v.protectedClosureHash)throw new Error("The local Dataset recipe changed its accepted Profile or protected evaluator closure.");return Ce({binding:r,packageValue:w,graders:G(w)})}h(I,"read");let m=await I();return{binding:r,packageValue:m,authorize:h(async()=>{if(f(await I())!==f(m))throw new Error("The local Dataset authority changed during execution.")},"authorize")}},"resolveExternalDataset")}}h(mr,"createInstallationLocalProfileDatasets");var yt=x.object({id:b,createdAt:ae,definitionId:b,externalDatasetBinding:de.optional(),localDataset:ee.optional(),profileRef:Ae.optional(),profileSource:x.object({sourceRevision:x.string().min(1).max(500),harnessRelease:x.object({id:b,contentHash:_}).strict()}).strict().optional(),modelRef:oe,hostModelConfigurationHash:_.optional(),hostArtifactHash:_.optional(),maximumSpendUsd:x.number().positive().max(1e4).optional(),expectedManifestHash:_.optional(),hostExperiment:x.object({definition:x.object({id:b,revision:x.number().int().positive(),contentHash:_}).strict().nullable(),configurationHash:_,project:x.object({id:b,revision:x.number().int().positive(),contentHash:_,targetId:b.nullable()}).strict().optional()}).strict().optional()}).strict();function Er(e){return async(o,c)=>{let a=yt.parse(o);if(c?.requireExpectedManifestHash&&!a.expectedManifestHash)throw new Error("Profile evaluation execution requires the reviewed manifest hash.");if(a.profileSource&&!a.profileRef)throw new Error("An exact Profile source requires its accepted Profile reference.");let s=c?.selectedWorkflows??await e.selectedWorkflows(a.profileRef,a.profileSource);if(a.profileRef&&f(a.profileRef)!==f(s.profileRef))throw new Error("Profile preparation did not resolve the explicitly selected Profile.");if(a.profileSource&&(s.sourceRevision!==a.profileSource.sourceRevision||f(s.harnessRelease)!==f(a.profileSource.harnessRelease)))throw new Error("Profile preparation changed its explicitly pinned source.");if(a.localDataset&&a.externalDatasetBinding)throw new Error("Select a local Dataset or an external recipe, not both.");let i=await e.loadCatalog({ref:s.profileRef,sourceRevision:s.sourceRevision,harnessRelease:s.harnessRelease}),r=a.localDataset?i.definitions.find(y=>y.id===a.definitionId):null;if(a.localDataset&&!r)throw new Error("Choose an existing accepted Profile definition as the local Dataset target.");let t=(a.localDataset&&r?await(e.prepareLocalDatasetBinding?e.prepareLocalDatasetBinding(a.localDataset,s,r):Promise.reject(new Error("This host has not qualified installation-local Profile Datasets."))):null)??(a.externalDatasetBinding?M(a.externalDatasetBinding):null),p=t?await(e.resolveExternalDataset?e.resolveExternalDataset(t,s):Promise.reject(new Error("This host has not qualified external Dataset Profile execution."))):null;if(p&&(await p.authorize(),f(M(p.binding))!==f(t)))throw new Error("External Dataset admission differs from the actual authorized recipe.");if(t&&t.declaredProfileCatalogHash!==i.catalogHash)throw new Error("The original Profile verifier catalog changed.");let g=t?Z(t):null;if(g&&!a.localDataset&&a.definitionId!==g.id)throw new Error("Use the external recipe's own definition identity.");let l={schemaVersion:"openpond.profileEvaluations.v1",definitions:g?[g]:i.definitions,suites:g?[]:i.suites},d=g??i.definitions.find(y=>y.id===a.definitionId);if(!d)throw new Error(`Evaluation ${a.definitionId} is absent from the selected Profile release.`);let k=d.target,I=k.kind==="workflow"?s.workflows.find(y=>y.binding.workflowId===k.workflowId)?.binding:ce.parse({schemaVersion:"openpond.profileComponentBinding.v1",profileId:s.profileRef.profileId,sourceRevision:s.sourceRevision,harnessRelease:s.harnessRelease,target:k});if(!I)throw new Error(`Evaluation workflow ${k.kind==="workflow"?k.workflowId:""} is absent from the selected Profile release.`);let m=L(p?.packageValue??await e.loadTasksetPackage(d,s.profileRef.profileId,s.harnessRelease)),n=m.taskset;if(n.id!==d.tasksetRelease.id||n.contentHash!==d.tasksetRelease.contentHash)throw new Error("Evaluation Taskset package differs from its released definition.");let P=n.environment.kind==="text"&&n.tools.length===0,w=n.environment.kind==="work"&&n.environment.entrypoint==="openpond-work-v1"&&n.tools.every(y=>["work_exec","work_save_output"].includes(y.name));if(!P&&!w)throw new Error("Profile evaluation supports text cases or Work cases with the built-in execution and output tools.");if(a.maximumSpendUsd!==void 0&&w){if(typeof e.boundedWorkComputeAvailable=="function")await e.boundedWorkComputeAvailable();else if(!e.boundedWorkComputeAvailable)throw new Error("This host has not admitted budgeted Work compute.")}if(n.tasks.some(y=>y.artifactRefs.length>Q.maxAttachments||y.artifactRefs.some(j=>j.visibility!=="policy"||j.mediaType!=="application/pdf"||j.sizeBytes>Q.maxAttachmentBytes)))throw new Error("Profile evaluation accepts only bounded policy-visible PDF task attachments.");if(!t&&!e.privateGradingPreflight&&(n.graders.some(y=>y.kind==="model_judge"||y.kind==="custom_verifier")||n.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?.(m);let v={adapterId:k.kind==="workflow"?"openpond.profile-workflow":"openpond.profile-component",placement:e.placement,runtimeVersion:"app-server-v1",capabilityReceipt:f({adapterId:k.kind==="workflow"?"openpond.profile-workflow":"openpond.profile-component",packageHash:m.contentHash,connectedAppScopes:n.policy.connectedAppScopes})},E={...ue({catalog:l,definitionId:d.id,profileId:s.profileRef.profileId,sourceRevision:s.sourceRevision,harnessRelease:s.harnessRelease,environmentHash:f({packageHash:m.contentHash,runtimeTarget:v})}),...t?{externalDatasetBinding:t}:{},...e.sourceCandidate?{sourceCandidate:e.sourceCandidate}:{}};if(t&&(t.packageHash!==m.contentHash||t.environmentHash!==f(n.environment)||t.privateDatasetClosureHash!==f(m.files.filter(y=>y.asset.visibility!=="policy").map(y=>y.asset))))throw new Error("External Dataset package/environment/private closure changed.");let D=re.parse({provider:a.modelRef.providerId,model:a.modelRef.modelId,revision:null,artifactHash:a.hostArtifactHash??null,tokenizerRevision:null,chatTemplateHash:null}),H=await e.modelConfigurationHash(a.modelRef,a),C=c?.modelSampling?f({ownerModelConfigurationHash:H,sampling:Ie.parse(c.modelSampling)}):H,T=xe({schemaVersion:"openpond.tasksetRunManifest.v1",id:a.id,tasksetRelease:d.tasksetRelease,packageHash:m.contentHash,execution:{kind:"harness",harnessRelease:s.harnessRelease},profileEvaluation:E,policy:{kind:"model",model:D,configurationHash:C},gradingRole:"evaluation",metricPolicy:Re(n),population:t?t.population.map(y=>({...y,receiptId:`evaluation-${f([a.id,y.taskId,y.seed,y.fixtureId]).slice(0,32)}`})):d.taskIds.flatMap(y=>d.seeds.map(j=>({receiptId:`evaluation-${f([a.id,y,j]).slice(0,32)}`,taskId:y,seed:j,fixtureId:null}))),runtimeTarget:v,limits:{maxTurns:128,timeoutMs:n.environment.defaultTimeoutMs,maxOutputBytes:25e7,maximumSpendUsd:a.maximumSpendUsd??null},createdAt:a.createdAt,metadata:{sourceTasksetId:n.metadata.sourceTasksetId??n.id,...s.profileRef.source==="openpond_git"?{profileRepositoryId:s.profileRef.repositoryId}:{},...a.hostExperiment?{experimentDefinition:a.hostExperiment.definition,experimentConfigurationHash:a.hostExperiment.configurationHash,...a.hostExperiment.project?{project:a.hostExperiment.project}:{}}:{}}});if(z(T,n,l),p&&await p.authorize(),a.expectedManifestHash&&T.contentHash!==a.expectedManifestHash)throw new Error("Profile evaluation setup changed since preview; prepare the run again.");return{manifest:T,taskset:n,profileRef:s.profileRef,binding:I,modelRef:a.modelRef,modelConfigurationHash:C}}}h(Er,"createProfileEvaluationRunPreparationService");async function xt(e,o){let c=L(e);for(let s of c.taskset.graders){if(s.kind==="model_judge"&&(!o||s.calibrationStatus!=="passed"))throw new Error("This Profile requires its current calibrated judge and bounded private provider owner.");let i="verifierRef"in s?s.verifierRef:"rubricRef"in s?s.rubricRef:null;i&&te(c,i)}let a=c.taskset.metrics?.customAggregator;if(a){let s=c.files.find(i=>i.asset.path===a.module);if(!s||s.asset.visibility==="policy"||V(q(s))!==a.contentHash)throw new Error("The authored aggregate metric is not its exact private release.");new TextDecoder("utf8",{fatal:!0}).decode(q(s))}}h(xt,"preflightProfilePrivateGrading");function te(e,o){let c=e.files.find(a=>a.asset.id===o.id);if(!c||c.asset.visibility==="policy"||f(c.asset)!==f(o))throw new Error("The exact private grader asset is unavailable.");return new TextDecoder("utf8",{fatal:!0}).decode(q(c))}h(te,"readPrivate");async function Ar(e){let o=L(e.packageValue);if(o.contentHash!==e.manifest.packageHash||o.taskset.contentHash!==e.manifest.tasksetRelease.contentHash)throw new Error("The private grading package changed its frozen Run identity.");await e.authorize(),await xt(o,!!e.executeBudgetedJudge),await e.authorize();let c=h(async({grader:i,task:r,evidence:u})=>{let t=e.signal;await e.authorize(),t?.throwIfAborted();let p={manifest:e.manifest,packageValue:o,grader:i,task:r,evidence:u,signal:t,authorize:e.authorize},g=e.executeSandboxVerifier?await e.executeSandboxVerifier(p):i.runtime==="sandbox_process"?await F(p):await $({source:te(o,i.verifierRef),exportName:i.exportName,runtime:i.runtime,timeoutMs:i.timeoutMs,signal:t,value:{task:r,attempt:u,input:r.input,output:u.output,artifacts:"artifacts"in u?u.artifacts:[],expectedOutput:r.expectedOutput,infrastructureError:u.infrastructureError??null}});return await e.authorize(),t?.throwIfAborted(),{score:g.score,passed:g.passed,rewardEligible:i.rewardEligible,failureClass:null,feedback:[g.feedback],visibleEvidenceRefs:[],privilegedEvidenceRefs:g.evidenceRefs}},"customVerifier"),a=o.taskset.metrics?.customAggregator,s=a?new TextDecoder("utf8",{fatal:!0}).decode(q(o.files.find(i=>i.asset.path===a.module))):void 0;return{authorize:e.authorize,customVerifier:c,...e.executeBudgetedJudge?{modelJudge:we({readRubric:h(async i=>{await e.authorize();let r=te(o,i);return await e.authorize(),r},"readRubric"),executeBudgeted:h(async(i,r)=>{await e.authorize(),r?.throwIfAborted();let u=await e.executeBudgetedJudge(i,r);return await e.authorize(),r?.throwIfAborted(),u},"executeBudgeted")})}:{},...s!==void 0?{metricSource:s,metricExecutor:h(async i=>{await e.authorize(),i.signal?.throwIfAborted();let r=await Ue(i);return await e.authorize(),i.signal?.throwIfAborted(),r},"metricExecutor")}:{}}}h(Ar,"createProfilePrivateGradingOwner");export{_t as a,lt as b,Bt as c,B as d,Ze as e,pt as f,A as g,tt as h,ot as i,ba as j,G as k,za as l,Wa as m,st as n,mr as o,Er as p,xt as q,Ar as r};
@@ -1,5 +1,5 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as pt}from"./chunk-IZ6DLEVY.js";import{a as ut}from"./chunk-SYUKES6H.js";import{b as se,m as mt,s as ft,t as ie,y as gt,z as ae}from"./chunk-YU3C6U5V.js";import{a as A,b as L}from"./chunk-KVTBX2UP.js";import{a as dt,d as Te}from"./chunk-U7D6Q744.js";import{$ as it,Ea as ct,ha as at,pa as Ie}from"./chunk-WXG3G2O6.js";import{e as st}from"./chunk-OQPJ7FJF.js";import{P as oe,R as lt}from"./chunk-OXRN2257.js";import{I as _e}from"./chunk-2MEOUS24.js";import{a as i,c as Re,e as Pn}from"./chunk-FTQLQJQV.js";var kt=Re((as,yt)=>{"use strict";var Cn=["||","&&",";;","|&","<(","<<<",">>",">&","<&","&",";","(",")","|","<",">"],ht=/[\n\r\u2028\u2029]/,En=/[\s#!"$&'():;<=>@\\^`|]/g;yt.exports=i(function(t){return t.map(function(n){if(n==="")return"''";if(n&&typeof n=="object"){if("op"in n&&n.op==="glob"){if(typeof n.pattern!="string")throw new TypeError("glob token requires a string `pattern`");if(ht.test(n.pattern))throw new TypeError("glob `pattern` must not contain line terminators");return n.pattern.replace(En,"\\$&")}if("op"in n&&typeof n.op=="string"){if(Cn.indexOf(n.op)<0)throw new TypeError("invalid `op` value: "+JSON.stringify(n.op));return n.op.replace(/[\s\S]/g,"\\$&")}if("comment"in n&&typeof n.comment=="string"){if(ht.test(n.comment))throw new TypeError("`comment` must not contain line terminators");return"#"+n.comment}throw new TypeError("unrecognized object token shape")}return/["\s\\]/.test(n)&&!/'/.test(n)?"'"+n.replace(/(['])/g,"\\$1")+"'":/["'\s]/.test(n)?'"'+n.replace(/(["\\$`!])/g,"\\$1")+'"':String(n).replace(/([A-Za-z]:)?([#!"$&'()*,:;<=>?@[\\\]^`{|}~])/g,"$1\\$2")}).join(" ")},"quote")});var Tt=Re((ls,It)=>{"use strict";var _t="(?:"+["\\|\\|","\\&\\&",";;","\\|\\&","\\<\\(","\\<\\<\\<",">>",">\\&","<\\&","[&;()|<>]"].join("|")+")",wt=new RegExp("^"+_t+"$"),bt="|&;()<> \\t",Mn="'([^']*?)'",Wn='"((\\\\"|[^"])*?)"',On=/^#$/,xt="'",Rt='"',ce="$",D="",qn=4294967296;for(ve=0;ve<4;ve++)D+=(qn*Math.random()).toString(16);var ve,jn=new RegExp("^"+D);function Bn(e,t){for(var n=t.lastIndex,r=[],o;o=t.exec(e);)r[r.length]=o,t.lastIndex===o.index&&(t.lastIndex+=1);return t.lastIndex=n,r}i(Bn,"matchAll");function $n(e,t,n){var r=typeof e=="function"?e(n):e[n];return typeof r>"u"&&n!=""?r="":typeof r>"u"&&(r="$"),typeof r=="object"?t+D+JSON.stringify(r)+D:t+r}i($n,"getVar");function Nn(e,t,n){n||(n={});var r=n.escape||"\\",o=n.splitUnquoted===!0?`
2
+ import{a as pt}from"./chunk-IZ6DLEVY.js";import{a as ut}from"./chunk-SYUKES6H.js";import{b as se,m as mt,s as ft,t as ie,y as gt,z as ae}from"./chunk-YU3C6U5V.js";import{a as A,b as L}from"./chunk-KVTBX2UP.js";import{a as dt,d as Te}from"./chunk-L5L3H6CI.js";import{$ as it,Ea as ct,ha as at,pa as Ie}from"./chunk-2THZ6GZY.js";import{e as st}from"./chunk-OQPJ7FJF.js";import{P as oe,R as lt}from"./chunk-OXRN2257.js";import{I as _e}from"./chunk-2MEOUS24.js";import{a as i,c as Re,e as Pn}from"./chunk-FTQLQJQV.js";var kt=Re((as,yt)=>{"use strict";var Cn=["||","&&",";;","|&","<(","<<<",">>",">&","<&","&",";","(",")","|","<",">"],ht=/[\n\r\u2028\u2029]/,En=/[\s#!"$&'():;<=>@\\^`|]/g;yt.exports=i(function(t){return t.map(function(n){if(n==="")return"''";if(n&&typeof n=="object"){if("op"in n&&n.op==="glob"){if(typeof n.pattern!="string")throw new TypeError("glob token requires a string `pattern`");if(ht.test(n.pattern))throw new TypeError("glob `pattern` must not contain line terminators");return n.pattern.replace(En,"\\$&")}if("op"in n&&typeof n.op=="string"){if(Cn.indexOf(n.op)<0)throw new TypeError("invalid `op` value: "+JSON.stringify(n.op));return n.op.replace(/[\s\S]/g,"\\$&")}if("comment"in n&&typeof n.comment=="string"){if(ht.test(n.comment))throw new TypeError("`comment` must not contain line terminators");return"#"+n.comment}throw new TypeError("unrecognized object token shape")}return/["\s\\]/.test(n)&&!/'/.test(n)?"'"+n.replace(/(['])/g,"\\$1")+"'":/["'\s]/.test(n)?'"'+n.replace(/(["\\$`!])/g,"\\$1")+'"':String(n).replace(/([A-Za-z]:)?([#!"$&'()*,:;<=>?@[\\\]^`{|}~])/g,"$1\\$2")}).join(" ")},"quote")});var Tt=Re((ls,It)=>{"use strict";var _t="(?:"+["\\|\\|","\\&\\&",";;","\\|\\&","\\<\\(","\\<\\<\\<",">>",">\\&","<\\&","[&;()|<>]"].join("|")+")",wt=new RegExp("^"+_t+"$"),bt="|&;()<> \\t",Mn="'([^']*?)'",Wn='"((\\\\"|[^"])*?)"',On=/^#$/,xt="'",Rt='"',ce="$",D="",qn=4294967296;for(ve=0;ve<4;ve++)D+=(qn*Math.random()).toString(16);var ve,jn=new RegExp("^"+D);function Bn(e,t){for(var n=t.lastIndex,r=[],o;o=t.exec(e);)r[r.length]=o,t.lastIndex===o.index&&(t.lastIndex+=1);return t.lastIndex=n,r}i(Bn,"matchAll");function $n(e,t,n){var r=typeof e=="function"?e(n):e[n];return typeof r>"u"&&n!=""?r="":typeof r>"u"&&(r="$"),typeof r=="object"?t+D+JSON.stringify(r)+D:t+r}i($n,"getVar");function Nn(e,t,n){n||(n={});var r=n.escape||"\\",o=n.splitUnquoted===!0?`
3
3
  `:typeof n.splitUnquoted=="string"?n.splitUnquoted:"",s="(\\"+r+`['"`+bt+`]|[^\\s'"`+bt+"])+",a=new RegExp(["("+_t+")","("+s+"|"+Wn+"|"+Mn+")+"].join("|"),"g"),d=Bn(e,a);if(d.length===0)return[];t||(t={});var c=!1;return d.map(function(l){var u=l[0];if(!u||c)return;if(wt.test(u))return{op:u};var p=!1,f=!1,m="",h=[],N=!1,R=null,V=!1,k;function tt(){k+=1;var I,X,be=u.charAt(k);if(be==="{"){if(k+=1,u.charAt(k)==="}")throw new Error("Bad substitution: "+u.slice(k-2,k+1));var re=1;for(I=k;re>0&&I<u.length;)u.charAt(I)==="{"&&u.charAt(I-1)==="$"?re+=1:u.charAt(I)==="}"&&(re-=1),I+=1;if(re!==0)throw new Error("Bad substitution: "+u.slice(k));I-=1,X=u.slice(k,I),k=I}else if(/[*@#?$!_-]/.test(be))X=be,k+=1;else{var xe=u.slice(k);I=xe.match(/[^\w\d_]/),I?(X=xe.slice(0,I.index),k+=I.index-1):(X=xe,k=u.length)}return $n(t,"",X)}i(tt,"parseEnvVar");function nt(){if(R!==null){if(R===0)m!==""&&(h[h.length]=m,m="");else{h[h.length]=m,m="";for(var I=1;I<R;I+=1)h[h.length]=""}R=null}}for(i(nt,"flushRun"),k=0;k<u.length;k++){var w=u.charAt(k);if(o&&w!==ce&&nt(),V=V||!p&&(w==="*"||w==="?"),f)m+=w,f=!1;else if(p)w===p?p=!1:p==xt?m+=w:w===r?(k+=1,w=u.charAt(k),w===Rt||w===r||w===ce?m+=w:m+=r+w):w===ce?m+=tt():m+=w;else if(w===Rt||w===xt)p=w,N=!0;else{if(wt.test(w))return{op:u};if(On.test(w)){c=!0;var rt={comment:e.slice(l.index+k+1)};return m.length?[m,rt]:[rt]}else if(w===r)f=!0;else if(w===ce){var ke=tt();if(!o)m+=ke;else for(var we=0;we<ke.length;we+=1){var W=ke.charAt(we);o.indexOf(W)<0?(nt(),m+=W):R===null?R=W===" "||W===" "||W===`
4
4
  `?0:1:W!==" "&&W!==" "&&W!==`
5
5
  `&&(R+=1)}}else m+=w}}if(V)return{op:"glob",pattern:m};if(o){if(R!==null&&R>0){h[h.length]=m,m="";for(var ot=1;ot<R;ot+=1)h[h.length]=""}return(m!==""||N&&h.length===0)&&(h[h.length]=m),h}return m}).reduce(function(l,u){return typeof u>"u"||[].concat(u).forEach(function(p){l[l.length]=p}),l},[])}i(Nn,"parseInternal");It.exports=i(function(t,n,r){var o=Nn(t,n,r);return typeof n!="function"?o:o.reduce(function(s,a){if(typeof a=="object")return s[s.length]=a,s;var d=a.split(RegExp("("+D+".*?"+D+")","g"));return d.length===1?(s[s.length]=d[0],s):(d.filter(Boolean).forEach(function(c){s[s.length]=jn.test(c)?JSON.parse(c.split(D)[1]):c}),s)},[])},"parse")});var vt=Re(Se=>{"use strict";Se.quote=kt();Se.parse=Tt()});var Mt=Pn(vt(),1);import{spawn as Ln}from"node:child_process";import{randomUUID as Dn}from"node:crypto";import Z from"node:path";import{mkdir as Fn}from"node:fs/promises";var Un=120,zn=3600,ue=6e4,St=2e4,Jn="Select a project to use this.";function Rs(e){let{upsertApproval:t,appendRuntimeEvent:n}=e,r=new Map,o=new Set;async function s(c){let l=c.command.trim();if(!l)return de(l,null,"Command is empty.",Pt(c.timeoutSeconds));let u=Pt(c.timeoutSeconds),p=A({session:c.session}),f=Yn({requestedCwd:c.cwd,session:c.session}),m=!f&&!c.session.workspaceKind&&!c.session.systemKind&&e.managedChatCwd;m&&(f=Z.join(m,c.session.id.replace(/[^a-zA-Z0-9_-]/g,"_")),await Fn(f,{recursive:!0}));let h=!!(c.cwd?.trim()&&Z.isAbsolute(c.cwd.trim()));if(p.target==="sandbox"||!f||p.target!=="local"&&!h&&!m)return de(l,f,Jn,u);let N=c.session.openPondCommandAccessMode??_e;if(N==="disabled")return de(l,f,"Command access is disabled for this chat.",u);let R=Hn(l);if(N==="ask"&&!o.has(At(c.session.id,R))){let k=await d({command:l,cwd:f,family:R,input:c,timeoutSeconds:u});if(k==="acceptForSession"&&o.add(At(c.session.id,R)),k!=="accept"&&k!=="acceptForSession")return de(l,f,k==="cancel"?"Command was cancelled.":"Command was not approved.",u)}let V=e.executionEnvironment?await e.executionEnvironment(c):{};return Zn({command:l,cwd:f,timeoutSeconds:u,signal:c.signal,env:V})}i(s,"executeCommand");async function a(c,l){let u=r.get(c);if(!u)return null;let p=it.parse(l);r.delete(c);let f=er(p.decision),m={...u.approval,status:f};return await t(m),await n(Te({sessionId:m.sessionId,turnId:m.turnId??void 0,name:"approval.resolved",source:"server",action:"command",status:f==="accepted"||f==="accepted_for_session"?"completed":"failed",output:m.title,data:{approvalId:c,status:f,decision:p.decision,family:u.family}})),u.resolve(p.decision),m}i(a,"resolveApproval");async function d(c){let l={id:`approval_${Dn()}`,sessionId:c.input.session.id,turnId:c.input.turnId??null,providerRequestId:c.input.providerRequestId??c.input.turnId??c.input.session.id,kind:"command",title:c.command,detail:JSON.stringify({command:c.command,cwd:c.cwd,timeoutSeconds:c.timeoutSeconds,source:c.input.source,mode:c.input.session.openPondCommandAccessMode??_e,risk:Xn(c.command),sessionApprovalFamily:{key:c.family.key,label:c.family.label,broad:c.family.broad,reason:c.family.reason}},null,2),status:"pending",createdAt:dt()},u,p=new Promise(f=>{u=f});r.set(l.id,{approval:l,family:c.family,resolve:u});try{await t(l),await n(Te({sessionId:c.input.session.id,turnId:c.input.turnId??void 0,name:"approval.requested",source:"server",action:"command",appId:c.input.session.appId,status:"pending",output:l.title,data:l}))}catch(f){throw r.delete(l.id),f}return p}return i(d,"requestCommandApproval"),{executeCommand:s,resolveApproval:a}}i(Rs,"createOpenPondCommandAccessService");function Wt(e){return JSON.stringify({ok:e.ok,action:"exec_command",output:Qn(e),data:{command:e.command,cwd:e.cwd,exitCode:e.exitCode,stdout:Et(e.stdout),stderr:Et(e.stderr),timedOut:e.timedOut,timeoutSeconds:e.timeoutSeconds,truncated:e.truncated,blockedReason:e.blockedReason}},null,2)}i(Wt,"commandResultForModel");function Hn(e){let t=Kn(e);if(!t)return le(e,"Could not safely parse shell command.");let n=Gn(t);if(n===-1)return le(e,"Could not find command executable.");if(Vn(t))return le(e,"Shell operators require exact-command session approval.");let r=t[n],o=t[n+1]??null;return r==="pwd"?Y("pwd","pwd","Allowlisted read-only command."):r==="ls"?Y("ls","ls","Allowlisted directory listing command."):r==="git"&&o==="status"?Y("git status","git status","Allowlisted git status family."):r==="docker"&&o==="system"?Y("docker system","docker system","Allowlisted Docker system inspection family."):r==="bun"&&o==="run"?Y("bun run","bun run","Allowlisted Bun script execution family."):le(e,"Command is not in the broad session-approval allowlist.")}i(Hn,"classifyCommandFamily");function Kn(e){try{let t=(0,Mt.parse)(e),n=[];for(let r of t){if(typeof r=="string"){n.push(r);continue}if(!r||typeof r!="object")return null;let o=r.op;if(typeof o=="string"){n.push(o);continue}return null}return n}catch{return null}}i(Kn,"safeShellTokens");function Gn(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(!/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(n))return t}return-1}i(Gn,"firstCommandTokenIndex");function Vn(e){return e.some(t=>/^(?:\||&&|\|\||;|&|<|>|\(|\)|\{|\})$/.test(t))}i(Vn,"hasUnsafeShellSyntax");function Y(e,t,n){return{key:e,label:t,broad:!0,reason:n}}i(Y,"broadFamily");function le(e,t){return{key:`exact:${e}`,label:e,broad:!1,reason:t}}i(le,"exactCommandFamily");function At(e,t){return`${e}:${t.key}`}i(At,"sessionFamilyKey");function Xn(e){let t=e.toLowerCase();return/\b(?:sudo|rm\s+-rf|mkfs|dd\s+if=|docker\s+(?:volume\s+rm|system\s+prune|container\s+rm)|kill(?:all)?)\b/.test(t)?"danger":/\b(?:npm|pnpm|yarn|bun)\s+(?:install|add|remove)|\bgit\s+(?:commit|push|reset|checkout|merge|rebase)|[>|]|\b(?:mv|cp|rm|touch|mkdir|docker\s+(?:run|build|compose))\b/.test(t)?"write":"read"}i(Xn,"commandRiskLabel");function Yn(e){let t=e.requestedCwd?.trim();return t?Z.isAbsolute(t)?Z.resolve(t):e.session.cwd?Z.resolve(e.session.cwd,t):null:e.session.cwd?.trim()||null}i(Yn,"resolveCommandCwd");function Pt(e){return Number.isFinite(e??NaN)?Math.max(1,Math.min(Math.floor(e),zn)):Un}i(Pt,"normalizedTimeout");function de(e,t,n,r){return{ok:!1,command:e,cwd:t,exitCode:null,stdout:"",stderr:n,timedOut:!1,timeoutSeconds:r,truncated:!1,blockedReason:n}}i(de,"blockedCommandResult");function Zn(e){return new Promise(t=>{let n=!1,r=!1,o="",s="",a=!1,d=null,c=ut(e.command),l=Ln(c.command,{cwd:e.cwd,shell:c.shell,env:{...process.env,PATH:pt(),...e.env},stdio:["ignore","pipe","pipe"],detached:process.platform!=="win32"}),u=i(h=>{n||(n=!0,clearTimeout(m),d&&clearTimeout(d),e.signal?.removeEventListener("abort",f),t(h))},"finish"),p=i((h,N)=>{let R=N.toString("utf8");h==="stdout"?o=Ae(o,R):s=Ae(s,R),o.length+s.length>=ue&&(a=!0)},"appendOutput"),f=i(()=>{Pe(l,"SIGTERM"),u({ok:!1,command:e.command,cwd:e.cwd,exitCode:null,stdout:o,stderr:s||"Command was interrupted.",timedOut:!1,timeoutSeconds:e.timeoutSeconds,truncated:a,blockedReason:"Command was interrupted."}),Ct(l)},"abort"),m=setTimeout(()=>{r=!0,Pe(l,"SIGTERM"),d=Ct(l)},e.timeoutSeconds*1e3);e.signal?.addEventListener("abort",f,{once:!0}),l.stdout?.on("data",h=>p("stdout",h)),l.stderr?.on("data",h=>p("stderr",h)),l.on("error",h=>{u({ok:!1,command:e.command,cwd:e.cwd,exitCode:null,stdout:o,stderr:h.message,timedOut:r,timeoutSeconds:e.timeoutSeconds,truncated:a,blockedReason:null})}),l.on("close",h=>{u({ok:!r&&(h??1)===0,command:e.command,cwd:e.cwd,exitCode:r?null:h??1,stdout:o,stderr:r?Ae(s,`
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as b}from"./chunk-WLQEONBF.js";import{b as P}from"./chunk-USTDWGR4.js";import{f as _}from"./chunk-VJYOKU3C.js";import{d as h}from"./chunk-U7D6Q744.js";import{x}from"./chunk-WXG3G2O6.js";import{h as T}from"./chunk-4V73I4OL.js";import{h as E,j as I,k as y}from"./chunk-HVM2GUM3.js";import{F as w}from"./chunk-2MEOUS24.js";import{a as l}from"./chunk-FTQLQJQV.js";function L(e){let a=e.result.proposal,d=a?.edits.find(t=>t.target!=="harness.json")??a?.edits[0]??null,c=e.result.outcome.metadata.routed===!0,n=a?e.result.applyReceipt?.decision==="applied"?"applied":"retained":c?"routed":"no_action",r=a?.baseHarnessRelease??e.trigger.harnessRelease,o=n==="applied"?e.result.advanceReceipt?.nextRelease??r:null;return{schemaVersion:"openpond.localHarnessRefinerActivityDisplay.v1",visibility:C(e.session)?"always":"material_only",state:"completed",workspaceId:e.result.workspace.id,result:n,decision:a?"propose":c?"route":"no_action",route:a?.route??g(e.result.outcome.metadata.route),operation:d?.operation??null,target:d?.target??null,summary:d?.summary??g(e.result.outcome.metadata.summary)??U(n,a?.route??g(e.result.outcome.metadata.route)),expectedOutcome:a?.expectedOutcome??g(e.result.outcome.metadata.expectedOutcome),reason:e.result.outcome.reason,evidenceBasis:B(e.result),critiqueStatus:a?"passed":"not_applicable",validationStatus:W(e.result),validationReceipts:e.result.validations.map(t=>({id:t.id,contentHash:t.contentHash,status:t.status,summary:t.summary})),edits:a?.edits.map(t=>({id:t.id,operation:t.operation,target:t.target,summary:t.summary,content:t.content}))??[],trigger:{id:e.trigger.id,contentHash:e.trigger.contentHash},outcome:{id:e.result.outcome.id,contentHash:e.result.outcome.contentHash},proposal:a?{id:a.id,contentHash:a.contentHash}:null,applyReceipt:e.result.applyReceipt?{id:e.result.applyReceipt.id,contentHash:e.result.applyReceipt.contentHash}:null,advanceReceipt:e.result.advanceReceipt?{id:e.result.advanceReceipt.id,contentHash:e.result.advanceReceipt.contentHash}:null,inputHarness:r,outputHarness:o}}l(L,"localHarnessRefinerActivityDisplay");function B(e){let a=e.proposal?.metadata.evidenceBasis??e.outcome.metadata.evidenceBasis,d=E.safeParse(a);return d.success?d.data:null}l(B,"evidenceBasisFromResult");function W(e){if(!e.proposal)return"not_applicable";let a=new Map(e.validations.map(c=>[c.validationId,c])),d=e.proposal.validationPlan.filter(c=>c.required);return d.some(c=>!a.has(c.id))?"pending":d.every(c=>a.get(c.id)?.status==="passed")?"passed":"failed"}l(W,"proposalValidationStatus");function C(e){return e.metadata?.automatedTasksetWorkAttempt===!0||typeof e.metadata?.tasksetId=="string"||typeof e.metadata?.benchmarkRuntime=="string"}l(C,"isEvaluationSession");function g(e){return typeof e=="string"&&e.trim()?e.trim():null}l(g,"stringMetadata");function U(e,a){return e==="no_action"?"No reusable change":e==="routed"?a?`${k(a)} issue routed`:"Issue routed":e==="applied"?a?`${k(a)} change`:"Harness change":a?`${k(a)} change`:"Harness change"}l(U,"resultSummary");function k(e){return e.length>0?`${e[0].toUpperCase()}${e.slice(1)}`:e}l(k,"titleCase");function G(e){let a=new Set,d=l((async function(n){if(q(n.session))return;let r=await b({store:e.store,...n});if(!r)return;let o=r.trigger;if(o.decision==="route_deterministically"&&o.deterministicRoute){let t=T({schemaVersion:"openpond.improvementRouteDecision.v1",id:`route-${o.contentHash.slice(0,24)}`,trigger:{id:o.id,contentHash:o.contentHash},route:o.deterministicRoute,authority:"runtime_service",automatic:!0,reason:o.reason,createdAt:o.createdAt,metadata:{}});await e.store.saveHarnessImprovementArtifact(n.turn.harnessSnapshot.workspaceId,"route_decision",t);return}o.decision==="queue_refiner"&&await c(n,o,!1)}),"processLocalHarnessImprovementBoundary");async function c(n,r,o){if(r.decision!=="queue_refiner")throw new Error("Only queued Harness Refiner triggers can be enqueued.");if(a.has(r.contentHash))return;a.add(r.contentHash);let t=Date.now();try{await e.appendRuntimeEvent(h({sessionId:n.session.id,turnId:n.turn.id,name:"harness.refiner.queued",source:"server",appId:n.session.appId,status:"pending",output:r.reason,data:{triggerId:r.id,timeoutMs:I,maxOutputTokens:y,execution:"public_package",recoveredAfterRestart:o,activity:{schemaVersion:"openpond.localHarnessRefinerActivityDisplay.v1",visibility:D(n.session),state:"running",summary:"Reviewing this Work for a reusable improvement"}}}))}catch(f){throw a.delete(r.contentHash),f}e.queue.enqueue({label:"Refine the Local Harness from a recovered execution detour",metadata:{key:r.contentHash,sessionId:n.session.id,turnId:n.turn.id,triggerId:r.id,recoveredAfterRestart:o}},async()=>{let f=0,p=Date.now(),u=null,i=null;try{await e.appendRuntimeEvent(h({sessionId:n.session.id,turnId:n.turn.id,name:"harness.refiner.started",source:"server",appId:n.session.appId,status:"started",data:{triggerId:r.id,queueWaitMs:Math.max(0,p-t),timeoutMs:I,maxOutputTokens:y,execution:"public_package",recoveredAfterRestart:o,activity:{schemaVersion:"openpond.localHarnessRefinerActivityDisplay.v1",visibility:D(n.session),state:"running",summary:"Reviewing this Work for a reusable improvement"}}})),await e.prepareReview?.(r);let s=await P({store:e.store,storeDir:e.storeDir,loadActiveRefinerRelease:e.loadActiveRefinerRelease,trigger:r,signal:new AbortController().signal,stream:l(async function*({messages:O,signal:S}){u===null&&(u=Date.now());let M=f++,A=`harness-refiner:${r.id}:${M}`,v=await _({session:n.session,turn:n.turn,provider:"openpond",model:w,requestId:A,requestOrdinal:M,requestKind:"harness_refiner",upsert:e.upsertModelUsageRecord});try{for await(let m of e.streamOpenPondHostedChatTurn({model:w,messages:O,requestId:A,reasoningEffort:"low",maxTokens:y,signal:S}))m.type==="text_delta"&&m.text?(v.observeDelta({text:m.text}),yield{text:m.text}):m.type==="reasoning_delta"&&m.text?v.observeDelta({reasoningText:m.text}):m.type==="usage"&&v.observeDelta({usage:m.usage});await v.complete(),i=Date.now()}catch(m){throw i=Date.now(),await v.fail(m,S.aborted?"interrupted":"failed"),m}},"stream")}),R=Date.now(),H=L({session:n.session,trigger:r,result:s});await e.appendRuntimeEvent(h({sessionId:n.session.id,turnId:n.turn.id,name:"harness.refiner.completed",source:"server",appId:n.session.appId,status:"completed",output:s.outcome.reason,data:{recoveredAfterRestart:o,trigger:{id:r.id,contentHash:r.contentHash},outcome:{id:s.outcome.id,contentHash:s.outcome.contentHash,decision:s.outcome.decision,routed:s.outcome.metadata.routed===!0,route:typeof s.outcome.metadata.route=="string"?s.outcome.metadata.route:null},proposal:s.proposal?{id:s.proposal.id,contentHash:s.proposal.contentHash}:null,workspaceAdvance:s.advanceReceipt?.decision??null,activity:H,timing:{queueWaitMs:Math.max(0,p-t),modelDurationMs:u===null||i===null?null:Math.max(0,i-u),materializationDurationMs:i===null?null:Math.max(0,R-i),totalJobDurationMs:Math.max(0,R-p)}}}))}catch(s){let R=Date.now();throw await e.appendRuntimeEvent(h({sessionId:n.session.id,turnId:n.turn.id,name:"harness.refiner.failed",source:"server",appId:n.session.appId,status:"failed",output:s instanceof Error?s.message:String(s),data:{triggerId:r.id,recoveredAfterRestart:o,activity:{schemaVersion:"openpond.localHarnessRefinerActivityDisplay.v1",visibility:D(n.session),state:"failed",summary:"Refiner review failed",reason:s instanceof Error?s.message:String(s)},timing:{queueWaitMs:Math.max(0,p-t),modelDurationMs:u===null||i===null?null:Math.max(0,i-u),totalJobDurationMs:Math.max(0,R-p)}}})).catch(()=>{}),s}finally{a.delete(r.contentHash)}})}return l(c,"enqueueTrigger"),d.reconcilePending=async()=>{let n=await e.store.listPendingHarnessRefinerTriggers(),r=0;for(let{workspaceId:o,trigger:t}of n){let[f,p]=await Promise.all([e.store.getSession(t.runRef),e.store.getTurn(t.turnId)]);if(!f||!p||p.sessionId!==f.id)throw new Error(`Pending Harness Refiner trigger ${t.id} references an unavailable session or turn.`);if(q(f))continue;let u=p;if(!u.harnessSnapshot){let[i,s]=await Promise.all([e.store.getHarnessWorkspace(o),e.store.getHarnessRunOverlay(t.runRef)]),R=!!(i&&s&&t.overlay&&s.id===t.overlay.id&&s.revision===t.overlay.revision&&s.contentHash===t.overlay.contentHash&&s.workspace.workspaceId===o&&s.workspace.revision===i.revision&&s.workspace.sourceRevision===i.sourceRevision&&s.workspace.channelRevision===i.currentChannel.revision&&s.baseHarnessRelease.id===t.harnessRelease.id&&s.baseHarnessRelease.contentHash===t.harnessRelease.contentHash);if(!i||!s||!t.overlay||!R)throw new Error(`Pending Harness Refiner trigger ${t.id} cannot reconstruct its missing Harness snapshot.`);u=await e.store.updateTurn(u.id,H=>x.parse({...H,harnessSnapshot:{schemaVersion:"openpond.harnessTurnSnapshot.v1",workspaceId:o,workspaceRevision:s.workspace.revision,sourceRevision:s.workspace.sourceRevision,channelName:i.currentChannel.name,channelRevision:s.workspace.channelRevision,harnessRelease:t.harnessRelease,overlay:t.overlay}}))??u}if(u.harnessSnapshot?.workspaceId!==o)throw new Error(`Pending Harness Refiner trigger ${t.id} no longer matches its Harness workspace.`);await c({session:f,turn:u},t,!0),r+=1}return r},d}l(G,"createLocalHarnessImprovementRuntime");function q(e){return e.metadata?.source==="experiment-improvement"&&typeof e.metadata.refinementCandidate=="object"?!0:e.metadata?.automatedTasksetWorkAttempt===!0&&typeof e.metadata.parentModelRunId=="string"&&e.metadata.parentModelRunId.trim().length>0}l(q,"parentModelRunOwnsRefinement");function D(e){return e.metadata?.automatedTasksetWorkAttempt===!0||typeof e.metadata?.tasksetId=="string"||typeof e.metadata?.benchmarkRuntime=="string"?"always":"material_only"}l(D,"refinerActivityVisibility");export{G as a};
2
+ import{a as b}from"./chunk-WLQEONBF.js";import{b as P}from"./chunk-CQRA5TXF.js";import{f as _}from"./chunk-6OD2FKUS.js";import{d as h}from"./chunk-L5L3H6CI.js";import{x}from"./chunk-2THZ6GZY.js";import{h as T}from"./chunk-4V73I4OL.js";import{h as E,j as I,k as y}from"./chunk-HVM2GUM3.js";import{F as w}from"./chunk-2MEOUS24.js";import{a as l}from"./chunk-FTQLQJQV.js";function L(e){let a=e.result.proposal,d=a?.edits.find(t=>t.target!=="harness.json")??a?.edits[0]??null,c=e.result.outcome.metadata.routed===!0,n=a?e.result.applyReceipt?.decision==="applied"?"applied":"retained":c?"routed":"no_action",r=a?.baseHarnessRelease??e.trigger.harnessRelease,o=n==="applied"?e.result.advanceReceipt?.nextRelease??r:null;return{schemaVersion:"openpond.localHarnessRefinerActivityDisplay.v1",visibility:C(e.session)?"always":"material_only",state:"completed",workspaceId:e.result.workspace.id,result:n,decision:a?"propose":c?"route":"no_action",route:a?.route??g(e.result.outcome.metadata.route),operation:d?.operation??null,target:d?.target??null,summary:d?.summary??g(e.result.outcome.metadata.summary)??U(n,a?.route??g(e.result.outcome.metadata.route)),expectedOutcome:a?.expectedOutcome??g(e.result.outcome.metadata.expectedOutcome),reason:e.result.outcome.reason,evidenceBasis:B(e.result),critiqueStatus:a?"passed":"not_applicable",validationStatus:W(e.result),validationReceipts:e.result.validations.map(t=>({id:t.id,contentHash:t.contentHash,status:t.status,summary:t.summary})),edits:a?.edits.map(t=>({id:t.id,operation:t.operation,target:t.target,summary:t.summary,content:t.content}))??[],trigger:{id:e.trigger.id,contentHash:e.trigger.contentHash},outcome:{id:e.result.outcome.id,contentHash:e.result.outcome.contentHash},proposal:a?{id:a.id,contentHash:a.contentHash}:null,applyReceipt:e.result.applyReceipt?{id:e.result.applyReceipt.id,contentHash:e.result.applyReceipt.contentHash}:null,advanceReceipt:e.result.advanceReceipt?{id:e.result.advanceReceipt.id,contentHash:e.result.advanceReceipt.contentHash}:null,inputHarness:r,outputHarness:o}}l(L,"localHarnessRefinerActivityDisplay");function B(e){let a=e.proposal?.metadata.evidenceBasis??e.outcome.metadata.evidenceBasis,d=E.safeParse(a);return d.success?d.data:null}l(B,"evidenceBasisFromResult");function W(e){if(!e.proposal)return"not_applicable";let a=new Map(e.validations.map(c=>[c.validationId,c])),d=e.proposal.validationPlan.filter(c=>c.required);return d.some(c=>!a.has(c.id))?"pending":d.every(c=>a.get(c.id)?.status==="passed")?"passed":"failed"}l(W,"proposalValidationStatus");function C(e){return e.metadata?.automatedTasksetWorkAttempt===!0||typeof e.metadata?.tasksetId=="string"||typeof e.metadata?.benchmarkRuntime=="string"}l(C,"isEvaluationSession");function g(e){return typeof e=="string"&&e.trim()?e.trim():null}l(g,"stringMetadata");function U(e,a){return e==="no_action"?"No reusable change":e==="routed"?a?`${k(a)} issue routed`:"Issue routed":e==="applied"?a?`${k(a)} change`:"Harness change":a?`${k(a)} change`:"Harness change"}l(U,"resultSummary");function k(e){return e.length>0?`${e[0].toUpperCase()}${e.slice(1)}`:e}l(k,"titleCase");function G(e){let a=new Set,d=l((async function(n){if(q(n.session))return;let r=await b({store:e.store,...n});if(!r)return;let o=r.trigger;if(o.decision==="route_deterministically"&&o.deterministicRoute){let t=T({schemaVersion:"openpond.improvementRouteDecision.v1",id:`route-${o.contentHash.slice(0,24)}`,trigger:{id:o.id,contentHash:o.contentHash},route:o.deterministicRoute,authority:"runtime_service",automatic:!0,reason:o.reason,createdAt:o.createdAt,metadata:{}});await e.store.saveHarnessImprovementArtifact(n.turn.harnessSnapshot.workspaceId,"route_decision",t);return}o.decision==="queue_refiner"&&await c(n,o,!1)}),"processLocalHarnessImprovementBoundary");async function c(n,r,o){if(r.decision!=="queue_refiner")throw new Error("Only queued Harness Refiner triggers can be enqueued.");if(a.has(r.contentHash))return;a.add(r.contentHash);let t=Date.now();try{await e.appendRuntimeEvent(h({sessionId:n.session.id,turnId:n.turn.id,name:"harness.refiner.queued",source:"server",appId:n.session.appId,status:"pending",output:r.reason,data:{triggerId:r.id,timeoutMs:I,maxOutputTokens:y,execution:"public_package",recoveredAfterRestart:o,activity:{schemaVersion:"openpond.localHarnessRefinerActivityDisplay.v1",visibility:D(n.session),state:"running",summary:"Reviewing this Work for a reusable improvement"}}}))}catch(f){throw a.delete(r.contentHash),f}e.queue.enqueue({label:"Refine the Local Harness from a recovered execution detour",metadata:{key:r.contentHash,sessionId:n.session.id,turnId:n.turn.id,triggerId:r.id,recoveredAfterRestart:o}},async()=>{let f=0,p=Date.now(),u=null,i=null;try{await e.appendRuntimeEvent(h({sessionId:n.session.id,turnId:n.turn.id,name:"harness.refiner.started",source:"server",appId:n.session.appId,status:"started",data:{triggerId:r.id,queueWaitMs:Math.max(0,p-t),timeoutMs:I,maxOutputTokens:y,execution:"public_package",recoveredAfterRestart:o,activity:{schemaVersion:"openpond.localHarnessRefinerActivityDisplay.v1",visibility:D(n.session),state:"running",summary:"Reviewing this Work for a reusable improvement"}}})),await e.prepareReview?.(r);let s=await P({store:e.store,storeDir:e.storeDir,loadActiveRefinerRelease:e.loadActiveRefinerRelease,trigger:r,signal:new AbortController().signal,stream:l(async function*({messages:O,signal:S}){u===null&&(u=Date.now());let M=f++,A=`harness-refiner:${r.id}:${M}`,v=await _({session:n.session,turn:n.turn,provider:"openpond",model:w,requestId:A,requestOrdinal:M,requestKind:"harness_refiner",upsert:e.upsertModelUsageRecord});try{for await(let m of e.streamOpenPondHostedChatTurn({model:w,messages:O,requestId:A,reasoningEffort:"low",maxTokens:y,signal:S}))m.type==="text_delta"&&m.text?(v.observeDelta({text:m.text}),yield{text:m.text}):m.type==="reasoning_delta"&&m.text?v.observeDelta({reasoningText:m.text}):m.type==="usage"&&v.observeDelta({usage:m.usage});await v.complete(),i=Date.now()}catch(m){throw i=Date.now(),await v.fail(m,S.aborted?"interrupted":"failed"),m}},"stream")}),R=Date.now(),H=L({session:n.session,trigger:r,result:s});await e.appendRuntimeEvent(h({sessionId:n.session.id,turnId:n.turn.id,name:"harness.refiner.completed",source:"server",appId:n.session.appId,status:"completed",output:s.outcome.reason,data:{recoveredAfterRestart:o,trigger:{id:r.id,contentHash:r.contentHash},outcome:{id:s.outcome.id,contentHash:s.outcome.contentHash,decision:s.outcome.decision,routed:s.outcome.metadata.routed===!0,route:typeof s.outcome.metadata.route=="string"?s.outcome.metadata.route:null},proposal:s.proposal?{id:s.proposal.id,contentHash:s.proposal.contentHash}:null,workspaceAdvance:s.advanceReceipt?.decision??null,activity:H,timing:{queueWaitMs:Math.max(0,p-t),modelDurationMs:u===null||i===null?null:Math.max(0,i-u),materializationDurationMs:i===null?null:Math.max(0,R-i),totalJobDurationMs:Math.max(0,R-p)}}}))}catch(s){let R=Date.now();throw await e.appendRuntimeEvent(h({sessionId:n.session.id,turnId:n.turn.id,name:"harness.refiner.failed",source:"server",appId:n.session.appId,status:"failed",output:s instanceof Error?s.message:String(s),data:{triggerId:r.id,recoveredAfterRestart:o,activity:{schemaVersion:"openpond.localHarnessRefinerActivityDisplay.v1",visibility:D(n.session),state:"failed",summary:"Refiner review failed",reason:s instanceof Error?s.message:String(s)},timing:{queueWaitMs:Math.max(0,p-t),modelDurationMs:u===null||i===null?null:Math.max(0,i-u),totalJobDurationMs:Math.max(0,R-p)}}})).catch(()=>{}),s}finally{a.delete(r.contentHash)}})}return l(c,"enqueueTrigger"),d.reconcilePending=async()=>{let n=await e.store.listPendingHarnessRefinerTriggers(),r=0;for(let{workspaceId:o,trigger:t}of n){let[f,p]=await Promise.all([e.store.getSession(t.runRef),e.store.getTurn(t.turnId)]);if(!f||!p||p.sessionId!==f.id)throw new Error(`Pending Harness Refiner trigger ${t.id} references an unavailable session or turn.`);if(q(f))continue;let u=p;if(!u.harnessSnapshot){let[i,s]=await Promise.all([e.store.getHarnessWorkspace(o),e.store.getHarnessRunOverlay(t.runRef)]),R=!!(i&&s&&t.overlay&&s.id===t.overlay.id&&s.revision===t.overlay.revision&&s.contentHash===t.overlay.contentHash&&s.workspace.workspaceId===o&&s.workspace.revision===i.revision&&s.workspace.sourceRevision===i.sourceRevision&&s.workspace.channelRevision===i.currentChannel.revision&&s.baseHarnessRelease.id===t.harnessRelease.id&&s.baseHarnessRelease.contentHash===t.harnessRelease.contentHash);if(!i||!s||!t.overlay||!R)throw new Error(`Pending Harness Refiner trigger ${t.id} cannot reconstruct its missing Harness snapshot.`);u=await e.store.updateTurn(u.id,H=>x.parse({...H,harnessSnapshot:{schemaVersion:"openpond.harnessTurnSnapshot.v1",workspaceId:o,workspaceRevision:s.workspace.revision,sourceRevision:s.workspace.sourceRevision,channelName:i.currentChannel.name,channelRevision:s.workspace.channelRevision,harnessRelease:t.harnessRelease,overlay:t.overlay}}))??u}if(u.harnessSnapshot?.workspaceId!==o)throw new Error(`Pending Harness Refiner trigger ${t.id} no longer matches its Harness workspace.`);await c({session:f,turn:u},t,!0),r+=1}return r},d}l(G,"createLocalHarnessImprovementRuntime");function q(e){return e.metadata?.source==="experiment-improvement"&&typeof e.metadata.refinementCandidate=="object"?!0:e.metadata?.automatedTasksetWorkAttempt===!0&&typeof e.metadata.parentModelRunId=="string"&&e.metadata.parentModelRunId.trim().length>0}l(q,"parentModelRunOwnsRefinement");function D(e){return e.metadata?.automatedTasksetWorkAttempt===!0||typeof e.metadata?.tasksetId=="string"||typeof e.metadata?.benchmarkRuntime=="string"?"always":"material_only"}l(D,"refinerActivityVisibility");export{G as a};