openpond 0.2.72 → 0.2.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app-server.js +1 -1
- package/dist/chunks/{acp-7A2UPCG5.js → acp-TBDNUDTR.js} +1 -1
- package/dist/chunks/{acp-agent-AGALGR6V.js → acp-agent-4PKMX52I.js} +1 -1
- package/dist/chunks/{app-layer-DUCNCJ2X.js → app-layer-4YIA53WX.js} +1 -1
- package/dist/chunks/{app-server-evaluations-SNWXULKD.js → app-server-evaluations-5JVNCET7.js} +1 -1
- package/dist/chunks/{app-server-harness-services-YNMGMKPK.js → app-server-harness-services-4E236TXE.js} +1 -1
- package/dist/chunks/{app-server-runtime-BKJ7L6JZ.js → app-server-runtime-CI2NTKX7.js} +1 -1
- package/dist/chunks/{apps-2OWE23BH.js → apps-APEPLFYU.js} +1 -1
- package/dist/chunks/chunk-2IECLXB2.js +2 -0
- package/dist/chunks/{chunk-V4VM2R6D.js → chunk-2IIVBBF5.js} +1 -1
- package/dist/chunks/{chunk-ENY24ZBB.js → chunk-3BIB6KKL.js} +1 -1
- package/dist/chunks/{chunk-DFSQ5HZ7.js → chunk-3V2XAYYA.js} +1 -1
- package/dist/chunks/{chunk-CHRED2FK.js → chunk-3XNUG4FO.js} +1 -1
- package/dist/chunks/{chunk-BUMCJHQP.js → chunk-4KG7GJ5O.js} +1 -1
- package/dist/chunks/chunk-5AV2EWFX.js +2 -0
- package/dist/chunks/{chunk-KTQWWCP2.js → chunk-5SVBY7NP.js} +6 -6
- package/dist/chunks/{chunk-MLLMLXKG.js → chunk-5VQK3CCJ.js} +1 -1
- package/dist/chunks/{chunk-4JKWCLTQ.js → chunk-645T6LH7.js} +1 -1
- package/dist/chunks/{chunk-X7ZMUWJO.js → chunk-6IKIGVJF.js} +1 -1
- package/dist/chunks/{chunk-X2MJFTLS.js → chunk-6KKWSUEW.js} +1 -1
- package/dist/chunks/{chunk-MQMMJKOZ.js → chunk-A4HLKWQD.js} +1 -1
- package/dist/chunks/{chunk-ZSWATWK2.js → chunk-AWUSAHXG.js} +1 -1
- package/dist/chunks/{chunk-T6ML5SCD.js → chunk-E5HDJCKK.js} +1 -1
- package/dist/chunks/{chunk-WMJEQK4G.js → chunk-E7SQBMYW.js} +1 -1
- package/dist/chunks/{chunk-VXFGSFIE.js → chunk-EAW5FHU4.js} +2 -2
- package/dist/chunks/{chunk-GPGXBKXU.js → chunk-EZ435RGA.js} +1 -1
- package/dist/chunks/{chunk-AITV76GO.js → chunk-F64TR23C.js} +1 -1
- package/dist/chunks/{chunk-FOAM3YZQ.js → chunk-FA3GXQYA.js} +1 -1
- package/dist/chunks/{chunk-2THZ6GZY.js → chunk-FCC24XUI.js} +1 -1
- package/dist/chunks/{chunk-L5L3H6CI.js → chunk-FDYWGE2Y.js} +1 -1
- package/dist/chunks/{chunk-CAYKEJJY.js → chunk-FRQYH4QD.js} +1 -1
- package/dist/chunks/{chunk-TR5UC5AF.js → chunk-G2P2PYEO.js} +1 -1
- package/dist/chunks/{chunk-MPXOPL7R.js → chunk-H2YQ4AA2.js} +1 -1
- package/dist/chunks/{chunk-KRJZ5CW3.js → chunk-H5EHSILL.js} +1 -1
- package/dist/chunks/{chunk-N5FT6PTI.js → chunk-HIPKU57Y.js} +1 -1
- package/dist/chunks/{chunk-JSDGOQ5U.js → chunk-IXMY4EKS.js} +1 -1
- package/dist/chunks/{chunk-ATI52WMB.js → chunk-JAIFVT3D.js} +1 -1
- package/dist/chunks/{chunk-HBGTHOOB.js → chunk-JG6JA7YT.js} +1 -1
- package/dist/chunks/{chunk-F3IEAU7O.js → chunk-KE5PYRJ6.js} +1 -1
- package/dist/chunks/{chunk-UZE3C2SF.js → chunk-KH42V27F.js} +1 -1
- package/dist/chunks/{chunk-KUEVP7WM.js → chunk-KOC74O7R.js} +1 -1
- package/dist/chunks/{chunk-VMBWCIGG.js → chunk-KOLVSUOS.js} +1 -1
- package/dist/chunks/{chunk-5TPJ5ECJ.js → chunk-KQ7RFPG5.js} +1 -1
- package/dist/chunks/{chunk-EHMA5XS7.js → chunk-LWF5MQJ4.js} +1 -1
- package/dist/chunks/{chunk-CQRA5TXF.js → chunk-MHSSPMLB.js} +1 -1
- package/dist/chunks/{chunk-TD5YYA5Z.js → chunk-MXDSB2C5.js} +1 -1
- package/dist/chunks/{chunk-W4JBPYGW.js → chunk-O6L4NO3M.js} +1 -1
- package/dist/chunks/{chunk-QKBMXL4D.js → chunk-OBMMO5NC.js} +3 -3
- package/dist/chunks/{chunk-MWPMYCYB.js → chunk-ODH5XGE6.js} +1 -1
- package/dist/chunks/{chunk-CX4U32VO.js → chunk-ONR2AKRI.js} +4 -4
- package/dist/chunks/{chunk-RWBP2H4M.js → chunk-OUOOKEU3.js} +1 -1
- package/dist/chunks/{chunk-6OD2FKUS.js → chunk-OVEQAEKR.js} +1 -1
- package/dist/chunks/{chunk-RIFWD5XM.js → chunk-OXUS4QOT.js} +1 -1
- package/dist/chunks/{chunk-LHTRQAPZ.js → chunk-SUILNZQJ.js} +1 -1
- package/dist/chunks/{chunk-SRK4WX7D.js → chunk-TP222CV2.js} +1 -1
- package/dist/chunks/{chunk-5WFKBZCU.js → chunk-TRXOE7TT.js} +1 -1
- package/dist/chunks/{chunk-5TTQCT3G.js → chunk-U73T66FP.js} +1 -1
- package/dist/chunks/{chunk-IA6CTX7A.js → chunk-WAWVFSIQ.js} +1 -1
- package/dist/chunks/{chunk-KOIXRLZZ.js → chunk-WBV6A6NS.js} +1 -1
- package/dist/chunks/{chunk-UCPD526R.js → chunk-WOYBWRRV.js} +1 -1
- package/dist/chunks/{chunk-S5ACNR5Y.js → chunk-X4CN3FIN.js} +1 -1
- package/dist/chunks/{chunk-PYPXP5R3.js → chunk-XN5BXPAT.js} +1 -1
- package/dist/chunks/{chunk-JALL5NPH.js → chunk-XSDWRRZP.js} +1 -1
- package/dist/chunks/{chunk-HA762QYM.js → chunk-YIZE3M5S.js} +1 -1
- package/dist/chunks/{cli-KXU5DNVV.js → cli-NHRYN2G3.js} +1 -1
- package/dist/chunks/{command-X35I53H3.js → command-54MMVWS2.js} +3 -3
- package/dist/chunks/{configuration-command-VJUK34UQ.js → configuration-command-SAGJMI3I.js} +1 -1
- package/dist/chunks/{connected-app-executor-JBFJF2H5.js → connected-app-executor-WJEDXUA4.js} +1 -1
- package/dist/chunks/{connected-evidence-CQ533AML.js → connected-evidence-EVZTMVHV.js} +1 -1
- package/dist/chunks/{connected-starting-assets-RL5X6LZ7.js → connected-starting-assets-F2DBUHV5.js} +1 -1
- package/dist/chunks/{continual-PHGIZFF6.js → continual-C2YWPEJZ.js} +1 -1
- package/dist/chunks/{core-commands-5DYMDWXY.js → core-commands-Z27A5ZPQ.js} +1 -1
- package/dist/chunks/{dataset-preparation-authoring-UDSX33YK.js → dataset-preparation-authoring-CH6Z4NE6.js} +1 -1
- package/dist/chunks/{datasets-BW4JFUUU.js → datasets-RZBRILIN.js} +1 -1
- package/dist/chunks/{desktop-test-RIG4CB2Z.js → desktop-test-UXOA4EON.js} +1 -1
- package/dist/chunks/{evaluation-coordination-6QJ6XTUX.js → evaluation-coordination-43DTVJFD.js} +1 -1
- package/dist/chunks/{experiment-improvements-2XF63AQ4.js → experiment-improvements-JBYCVRYR.js} +1 -1
- package/dist/chunks/{experiments-3S2BVNK6.js → experiments-5QAMBNB6.js} +1 -1
- package/dist/chunks/{experiments-signal-IRBHGGW5.js → experiments-signal-OIDQ5SNH.js} +1 -1
- package/dist/chunks/{help-Q2VMJVTR.js → help-ESZC6NHQ.js} +1 -1
- package/dist/chunks/{host-profile-evaluation-tools-5LZQHA32.js → host-profile-evaluation-tools-XMGGHVH3.js} +1 -1
- package/dist/chunks/{hosted-app-server-composition-AYZM2HY6.js → hosted-app-server-composition-U7WGMN5B.js} +1 -1
- package/dist/chunks/{hosted-experiment-improvement-SMZJYRJ7.js → hosted-experiment-improvement-VQN6PJKR.js} +1 -1
- package/dist/chunks/{hosted-harness-runtime-QWIFAITG.js → hosted-harness-runtime-O6E5LCGN.js} +1 -1
- package/dist/chunks/{hosted-profile-candidate-WOMWAE5N.js → hosted-profile-candidate-HQ544PNP.js} +1 -1
- package/dist/chunks/{hosted-profile-compiler-NZ2BXN32.js → hosted-profile-compiler-K4OACT7S.js} +1 -1
- package/dist/chunks/{hosted-profile-evaluation-control-3ECFFM7E.js → hosted-profile-evaluation-control-TKYM73YY.js} +1 -1
- package/dist/chunks/{hosted-profile-evaluation-inspection-TM7RKONG.js → hosted-profile-evaluation-inspection-HFCFUYQ4.js} +1 -1
- package/dist/chunks/{hosted-profile-evaluation-preparation-2MZIRT75.js → hosted-profile-evaluation-preparation-OJ6AR5P5.js} +1 -1
- package/dist/chunks/{human-review-PG4WWVWV.js → human-review-HTHWLUNA.js} +1 -1
- package/dist/chunks/{import-FAZAVZBF.js → import-IWDEDLM3.js} +1 -1
- package/dist/chunks/{local-harness-improvement-runtime-OYLTKMJU.js → local-harness-improvement-runtime-BWZBMOGL.js} +1 -1
- package/dist/chunks/{local-harness-taskset-review-I7YU4RZI.js → local-harness-taskset-review-JL2XNXML.js} +1 -1
- package/dist/chunks/{opchat-TCZA6373.js → opchat-RJINPBFB.js} +1 -1
- package/dist/chunks/{opchat-bounded-chat-GMYDXLWB.js → opchat-bounded-chat-WRXN7S52.js} +1 -1
- package/dist/chunks/{organizations-PYKGA2P2.js → organizations-AWMQ46PJ.js} +1 -1
- package/dist/chunks/{profile-GYYI555I.js → profile-VJDML6I7.js} +1 -1
- package/dist/chunks/{project-action-payload-FE6M2OXJ.js → project-action-payload-65MTQMQW.js} +1 -1
- package/dist/chunks/{project-agent-4ISJFMJD.js → project-agent-NI4EGNDI.js} +1 -1
- package/dist/chunks/{published-experiment-source-E2YAJCLM.js → published-experiment-source-L7BER6AE.js} +1 -1
- package/dist/chunks/{refiner-profile-service-LKGXD5WJ.js → refiner-profile-service-56776J7B.js} +1 -1
- package/dist/chunks/{runtime-UDLOZD4Y.js → runtime-GN2H2R7L.js} +2 -2
- package/dist/chunks/{sandbox-command-4J6DAY7T.js → sandbox-command-763SZPJ4.js} +1 -1
- package/dist/chunks/{sandbox-template-TSXWJMWG.js → sandbox-template-AVTZNKFZ.js} +1 -1
- package/dist/chunks/{saved-work-QTEBKVUB.js → saved-work-OMBDT3ZR.js} +1 -1
- package/dist/chunks/{send-turn-4MH4WMLW.js → send-turn-VQRLIHOE.js} +1 -1
- package/dist/chunks/{setup-IVT2FQSE.js → setup-C6673TJK.js} +1 -1
- package/dist/chunks/{src-TOSQX36I.js → src-HHFJIPL5.js} +1 -1
- package/dist/chunks/{src-DC7N2H7A.js → src-UHNSXT34.js} +2 -2
- package/dist/chunks/{store-chat-resources-QLXKKYYC.js → store-chat-resources-TYR7D2UP.js} +1 -1
- package/dist/chunks/{store-continual-support-reviews-4F2BOG3H.js → store-continual-support-reviews-63YCKG3P.js} +1 -1
- package/dist/chunks/{store-conversation-serving-EUD47W6X.js → store-conversation-serving-PDSBGL3E.js} +1 -1
- package/dist/chunks/{store-create-improve-QUOTNNIM.js → store-create-improve-RYASTT56.js} +1 -1
- package/dist/chunks/{store-datasets-ZUC7CNVO.js → store-datasets-PELTRO4A.js} +1 -1
- package/dist/chunks/{store-evaluation-results-LHHPHESK.js → store-evaluation-results-OUTNEMAY.js} +1 -1
- package/dist/chunks/{store-human-review-7WZWRJ6X.js → store-human-review-GIMAXCJQ.js} +1 -1
- package/dist/chunks/{store-learned-preference-migration-validation-MVNKBR4X.js → store-learned-preference-migration-validation-DHOSHA6C.js} +1 -1
- package/dist/chunks/{store-local-experiments-HB53QFLL.js → store-local-experiments-AH4Z6RWX.js} +1 -1
- package/dist/chunks/{store-model-batch-review-O3I6GIAA.js → store-model-batch-review-UUW6ZLDH.js} +1 -1
- package/dist/chunks/{store-model-configuration-CDIGNU6Q.js → store-model-configuration-4U5A6DU7.js} +1 -1
- package/dist/chunks/{store-model-project-preparation-QMQ2HMJV.js → store-model-project-preparation-MYHO43VH.js} +1 -1
- package/dist/chunks/{store-modification-recordings-W4VEZKKQ.js → store-modification-recordings-OZBLFYCT.js} +1 -1
- package/dist/chunks/{store-sidebar-file-bookmarks-KAEDHVVF.js → store-sidebar-file-bookmarks-NQ3ZLTGZ.js} +1 -1
- package/dist/chunks/{store-sidebar-preferences-QPBLTHY6.js → store-sidebar-preferences-L6J7J5WC.js} +1 -1
- package/dist/chunks/{store-subagents-ZELQP3MX.js → store-subagents-6FHGHQ6V.js} +1 -1
- package/dist/chunks/{store-task-inbox-4ZDQR2E7.js → store-task-inbox-M7YZNCRF.js} +1 -1
- package/dist/chunks/{store-task-inventory-CTIJDLYE.js → store-task-inventory-TTJQAM3T.js} +1 -1
- package/dist/chunks/{store-taskset-drafts-FRPBYLTW.js → store-taskset-drafts-4GVHDLJJ.js} +1 -1
- package/dist/chunks/{store-training-WQAYUT7B.js → store-training-MGGTGTV2.js} +1 -1
- package/dist/chunks/{store-training-jobs-O5EHGTH7.js → store-training-jobs-XKDUX4SV.js} +1 -1
- package/dist/chunks/{store-training-models-YSZMC66T.js → store-training-models-4S4ZT3BL.js} +1 -1
- package/dist/chunks/{taskset-OVYM4QMS.js → taskset-SLQSCYJI.js} +1 -1
- package/dist/chunks/{teams-bot-U2M3ORWR.js → teams-bot-PX7HUAQQ.js} +1 -1
- package/dist/chunks/{tool-learning-NXVR4YPA.js → tool-learning-25Z2JOBS.js} +1 -1
- package/dist/chunks/{training-EQ7G5FDY.js → training-2LUQ2IZM.js} +1 -1
- package/dist/chunks/{training-LQUAL4Y4.js → training-JA5ZQABE.js} +1 -1
- package/dist/chunks/{training-PEZYJ2SN.js → training-NL5GYZKU.js} +1 -1
- package/dist/chunks/training-hosted-NLXMISNL.js +2 -0
- package/dist/chunks/{training-hosted-alphaedit-VCOEYLKK.js → training-hosted-alphaedit-WGMJ3L2D.js} +1 -1
- package/dist/chunks/{training-hosted-decision-IKWWXA56.js → training-hosted-decision-66EUMUIW.js} +1 -1
- package/dist/chunks/{training-hosted-engram-3TOPPVSW.js → training-hosted-engram-QDXSJ77I.js} +1 -1
- package/dist/chunks/{training-hosted-modification-comparison-C6S4JFHW.js → training-hosted-modification-comparison-2MH5FZMZ.js} +1 -1
- package/dist/chunks/{training-hosted-neuron-training-EP2U4PHG.js → training-hosted-neuron-training-3QXKIEKT.js} +1 -1
- package/dist/chunks/{training-hosted-serving-report-KJMRZJLQ.js → training-hosted-serving-report-ZG75ACZK.js} +1 -1
- package/dist/chunks/{training-hosted-steering-I27DV6A2.js → training-hosted-steering-KFMTKCTX.js} +1 -1
- package/dist/chunks/{training-model-start-NWXNGRDC.js → training-model-start-NMQ55UHZ.js} +1 -1
- package/dist/chunks/{workspaces-FVQYJPOS.js → workspaces-ROFG76XK.js} +1 -1
- package/dist/cli.js +1 -1
- package/dist/skills/manifest.json +1 -1
- package/dist/web/assets/{App-QM6Y2Eod.js → App-CV1p0_Zy.js} +4 -4
- package/dist/web/assets/{AppDialog-C8um481a.js → AppDialog-DdGt7aU1.js} +1 -1
- package/dist/web/assets/{AppTerminalPanel-OwNr-bp6.js → AppTerminalPanel-B2p_tYh5.js} +2 -2
- package/dist/web/assets/{AppToastContext-BQ4iRFif.js → AppToastContext-D7z0w1PS.js} +1 -1
- package/dist/web/assets/{AppsView-mk8m_Cra.js → AppsView-B-Ts-M_V.js} +1 -1
- package/dist/web/assets/{AttachmentTypeIcon-SITPqTtF.js → AttachmentTypeIcon-BJ5i12im.js} +1 -1
- package/dist/web/assets/{BrowserSidebar-BghdIKTB.js → BrowserSidebar-BVHthjXU.js} +1 -1
- package/dist/web/assets/{CartesianChart-BdRx7q_O.js → CartesianChart-BuJ1wFS7.js} +1 -1
- package/dist/web/assets/{ChatTimelineEntry-BBOnAzJB.js → ChatTimelineEntry-CfiiTrK4.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-Beja-9s5.js → CollaborationTabs-1t9zAhDC.js} +1 -1
- package/dist/web/assets/{CommandMenu-CQtrSUpu.js → CommandMenu-DTB6xjGG.js} +1 -1
- package/dist/web/assets/{CommunityView-LPTAakS-.js → CommunityView-BjeZ56id.js} +1 -1
- package/dist/web/assets/{ComposerAttachments-DI-Gr7Zw.js → ComposerAttachments-C_K_05H9.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-CY5Uw1yc.js → ComposerCreateImproveStrip-A38jnNGd.js} +1 -1
- package/dist/web/assets/{ConversationImportsSettings-DFwhKERw.js → ConversationImportsSettings-jwaoKQZt.js} +1 -1
- package/dist/web/assets/{DatasetReviewImport-C9xraQk7.js → DatasetReviewImport-DZA1s3XG.js} +1 -1
- package/dist/web/assets/{ExperimentTrainingDataWorkspace-Cx58S6R_.js → ExperimentTrainingDataWorkspace-DowPuAXk.js} +2 -2
- package/dist/web/assets/{FilePagePreview-dlbmR8s8.js → FilePagePreview-11ZNRtdT.js} +2 -2
- package/dist/web/assets/{GetStartedView-BkTV_shK.js → GetStartedView-bLVKmjqg.js} +1 -1
- package/dist/web/assets/{GettingStartedDialog-DulDLYnr.js → GettingStartedDialog-BeimFLZh.js} +1 -1
- package/dist/web/assets/{HostedModelLearningReview--fXJEOfI.js → HostedModelLearningReview-DiFVb3WK.js} +1 -1
- package/dist/web/assets/{HostedModelLearningSettings-BEb7B_PC.js → HostedModelLearningSettings-DtUF5ejq.js} +1 -1
- package/dist/web/assets/{HtmlVisual-BS61T2qR.js → HtmlVisual-CgVTWr64.js} +1 -1
- package/dist/web/assets/{LabModelVersionDetailPage-CmzUIDbR.js → LabModelVersionDetailPage-BvinwnBN.js} +1 -1
- package/dist/web/assets/{LabModelWorkspace-DoAnQKWk.js → LabModelWorkspace-Q5DG2mLP.js} +1 -1
- package/dist/web/assets/{LabSkillSidebar-DJTm7ZQs.js → LabSkillSidebar-cmhZzr4f.js} +1 -1
- package/dist/web/assets/{LabsRoute-DNtBot4a.js → LabsRoute-DS_mlprv.js} +4 -4
- package/dist/web/assets/{LearningBatchesPage-C_oQjciE.js → LearningBatchesPage-Cm-btgWc.js} +1 -1
- package/dist/web/assets/{MainChatThread-D9e-to8e.js → MainChatThread-DbTn4Bag.js} +2 -2
- package/dist/web/assets/{MainPane-mWeD0M-f.js → MainPane-BtzUF6O_.js} +6 -6
- package/dist/web/assets/{ModelProjectPageHeader-BecKU_2p.js → ModelProjectPageHeader-C4mgVJGx.js} +1 -1
- package/dist/web/assets/{NativeSetupTerminal-DO0DN4fH.js → NativeSetupTerminal-bJpDkKk1.js} +2 -2
- package/dist/web/assets/{NativeSkillSidebar-jnxgQASC.js → NativeSkillSidebar-BuToZvK-.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-ByHR4vMf.js → NewProjectDialog-F0BPQy0S.js} +1 -1
- package/dist/web/assets/{OutputsPage-DZY4BUCy.js → OutputsPage-DC4g59_8.js} +1 -1
- package/dist/web/assets/{PageChrome-DjPuwWsn.js → PageChrome-ufq2jePD.js} +1 -1
- package/dist/web/assets/{ProjectsPage-DKbwhIM4.js → ProjectsPage-7mbOvMfO.js} +1 -1
- package/dist/web/assets/{RightChatPanelStack-BARH0XuL.js → RightChatPanelStack-sR9xN3RP.js} +1 -1
- package/dist/web/assets/RightSidebarHomePanel-joZavyR9.js +1 -0
- package/dist/web/assets/{ScheduledWorkPage-CElrmRz9.js → ScheduledWorkPage-s9CN6nR_.js} +1 -1
- package/dist/web/assets/{SettingsView-CsFSjE9s.js → SettingsView-CZNWYK-D.js} +3 -3
- package/dist/web/assets/{TasksetDraftEditorPrimitives-DJoYkvWq.js → TasksetDraftEditorPrimitives-BnMqzE-T.js} +1 -1
- package/dist/web/assets/{TeamChatView-D9Y4e98Y.js → TeamChatView-XthM6n4S.js} +1 -1
- package/dist/web/assets/{TerminalOverlay-CUO8yZjy.js → TerminalOverlay--HCFZaQW.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-_mnLQ1HA.js → TrainingCreationPanel-D2F6kPg_.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-CCqQTHo5.js → TrainingDraftPanel-BurWPp9F.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-CdWq5oYC.js → UsageSettingsSection-D7jdscDm.js} +1 -1
- package/dist/web/assets/WorkSidebarPanel-CmdXCmrZ.js +1 -0
- package/dist/web/assets/{WorkspaceDiffPanel-CdHr8bX6.js → WorkspaceDiffPanel-CPaCC1_p.js} +3 -3
- package/dist/web/assets/{WorkspaceEnvironmentMenu-BnUh4dg9.js → WorkspaceEnvironmentMenu-BZxu6mUS.js} +1 -1
- package/dist/web/assets/{WorkspaceFileLocation-VzrSq_Ki.js → WorkspaceFileLocation-C4K_D_yh.js} +1 -1
- package/dist/web/assets/{WorkspaceGitDialogs-nwvQOm9r.js → WorkspaceGitDialogs-C0Yf29V0.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-m3bCIpZe.js → WorkspaceMonacoEditor-BRPLaFZS.js} +3 -3
- package/dist/web/assets/{WorkspacePdfPreview-u6Iv0qr0.js → WorkspacePdfPreview-9wypyV6H.js} +2 -2
- package/dist/web/assets/{WorkspacePresentationPreview-CjvTjhUO.js → WorkspacePresentationPreview-C-Cn-9pj.js} +1 -1
- package/dist/web/assets/{bot-DiDSZBLn.js → bot-BuaAVlz6.js} +1 -1
- package/dist/web/assets/{chat-resources-CmBtWC5V.js → chat-resources-DMPHClhQ.js} +1 -1
- package/dist/web/assets/chevron-down-CkifKd_O.js +1 -0
- package/dist/web/assets/chevron-right-LsMXJ5SB.js +1 -0
- package/dist/web/assets/chevron-up-Dt5T2Sf5.js +1 -0
- package/dist/web/assets/{chunk-C3TS766N-DSA4vs-Y.js → chunk-C3TS766N-BXUEjt7d.js} +1 -1
- package/dist/web/assets/{client-_uDCFdg5.js → client-C-ZuakZR.js} +1 -1
- package/dist/web/assets/{client-choice-storage-CRKZpilL.js → client-choice-storage-DWIA0Vou.js} +1 -1
- package/dist/web/assets/{cloud-upload-CWamjPts.js → cloud-upload-B5LqiNCG.js} +1 -1
- package/dist/web/assets/{copy-B56YjDkW.js → copy-BYIypHbq.js} +1 -1
- package/dist/web/assets/{cssMode-BuC9qQvo.js → cssMode-ByypIqUN.js} +1 -1
- package/dist/web/assets/{external-link-BSn21e-y.js → external-link-Cv7TDVPT.js} +1 -1
- package/dist/web/assets/{folder-open-CaJGWSr2.js → folder-open-DlIP3g5o.js} +1 -1
- package/dist/web/assets/{folder-plus-eTUep-az.js → folder-plus-CXwFJqcY.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-Buk_hy6T.js → git-commit-horizontal-DMh_-WxU.js} +1 -1
- package/dist/web/assets/{htmlMode-D7kF2kDL.js → htmlMode-CQGeb-h5.js} +1 -1
- package/dist/web/assets/{icons-B4B5eUyR.js → icons-CYvTltSH.js} +1 -1
- package/dist/web/assets/{image--4h1aK2l.js → image-Ci1JxTQX.js} +1 -1
- package/dist/web/assets/{index-CCaTs7xt.js → index-CDtTBysF.js} +2 -2
- package/dist/web/assets/{info-DjMTH4sJ.js → info-EjyMkVzV.js} +1 -1
- package/dist/web/assets/{jsonMode-BVX_7KjE.js → jsonMode-Dm6YK6Dw.js} +1 -1
- package/dist/web/assets/loader-circle-AjP2mDJA.js +1 -0
- package/dist/web/assets/{lspLanguageFeatures-RBOb-3wX.js → lspLanguageFeatures-BjtOz-Ln.js} +1 -1
- package/dist/web/assets/{maximize-2-Cjg-f1xT.js → maximize-2-CvvoALtI.js} +1 -1
- package/dist/web/assets/{message-square-oIMQDMc3.js → message-square-CPtIPRtf.js} +1 -1
- package/dist/web/assets/{monaco.contribution-CIwt2mTE.js → monaco.contribution-ClH8Tmjq.js} +2 -2
- package/dist/web/assets/{monaco.contribution-CIbGU5-C.js → monaco.contribution-VSFFgrfZ.js} +2 -2
- package/dist/web/assets/{monaco.contribution-KRLNg324.js → monaco.contribution-e5DNaEix.js} +2 -2
- package/dist/web/assets/{monaco.contribution-Dd1cPdSS.js → monaco.contribution-wpC0-Kxw.js} +2 -2
- package/dist/web/assets/{monitor-BWaitd6I.js → monitor-BroZpIvk.js} +1 -1
- package/dist/web/assets/{paperclip-FYK6OySO.js → paperclip-DYZEL_Gi.js} +1 -1
- package/dist/web/assets/{pdf-DbwlsqZP.js → pdf-DkU37Bi0.js} +1 -1
- package/dist/web/assets/play-BrvX67t1.js +1 -0
- package/dist/web/assets/plus-DFjCZeRE.js +1 -0
- package/dist/web/assets/{presentation-B6MaAPC7.js → presentation-CddfsTzp.js} +1 -1
- package/dist/web/assets/{python-DRYJxjiM.js → python-CMdyfF2B.js} +1 -1
- package/dist/web/assets/{refresh-cw-DOVpqCfJ.js → refresh-cw-Cx_7Zlbl.js} +1 -1
- package/dist/web/assets/{save-BuyyyR4Q.js → save-BaeHeBBw.js} +1 -1
- package/dist/web/assets/{settings-lists-BeAdxSjx.js → settings-lists-CVg9h-5z.js} +1 -1
- package/dist/web/assets/square-Di5JBnVr.js +1 -0
- package/dist/web/assets/{square-terminal-DTOIZy6_.js → square-terminal-CBlQtWQw.js} +1 -1
- package/dist/web/assets/{submit-issue-command-V--K9lVQ.js → submit-issue-command-L5--gt9i.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-nNzCoE0h.js → toggleHighContrast-hftC_Rxs.js} +1 -1
- package/dist/web/assets/{training-DZgfVcI-.js → training-CGYukv2L.js} +1 -1
- package/dist/web/assets/{training-model-data-CWoTokkb.js → training-model-data-vvvphDlO.js} +1 -1
- package/dist/web/assets/{tsMode-BfVi5_FZ.js → tsMode-B0sZU1HD.js} +1 -1
- package/dist/web/assets/{upload-C2MnlWjj.js → upload-Bzt1ooBz.js} +1 -1
- package/dist/web/assets/{useAccountSettings-QwRbZIKu.js → useAccountSettings-BnxwetkP.js} +1 -1
- package/dist/web/assets/{useAgentInventory-B7xEgMCA.js → useAgentInventory-D_qS4ols.js} +1 -1
- package/dist/web/assets/{useChatContextSelection-O6wo4EqD.js → useChatContextSelection-D8aSVtCm.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules-DpHnOGoV.js → useLocalAgentSchedules-CUQ1MW4l.js} +1 -1
- package/dist/web/assets/{useQuery-CvZ8bzdW.js → useQuery-9SCnxwmR.js} +1 -1
- package/dist/web/assets/{wifi-off-B8d12Alh.js → wifi-off-DWtVm7W7.js} +1 -1
- package/dist/web/assets/{workers-sIVKxb8c.js → workers-B3jA6AOv.js} +1 -1
- package/dist/web/assets/x-EG07vYCF.js +1 -0
- package/dist/web/assets/{yaml-8-aLM3zj.js → yaml-BEUL30-5.js} +1 -1
- package/dist/web/index.html +1 -1
- package/docs/command-reference.md +4 -1
- package/package.json +1 -1
- package/dist/chunks/chunk-2Q2AWPP2.js +0 -2
- package/dist/chunks/chunk-AWD72O3G.js +0 -2
- package/dist/chunks/training-hosted-XKSUTMLQ.js +0 -2
- package/dist/web/assets/RightSidebarHomePanel-qKL8dZrN.js +0 -1
- package/dist/web/assets/WorkSidebarPanel-DRXaK-E6.js +0 -1
- package/dist/web/assets/chevron-down-CqxKXYPf.js +0 -1
- package/dist/web/assets/chevron-right-ClP6ukIq.js +0 -1
- package/dist/web/assets/chevron-up-DY7wpdJ1.js +0 -1
- package/dist/web/assets/loader-circle-DNHvEoaP.js +0 -1
- package/dist/web/assets/play-DieChKfF.js +0 -1
- package/dist/web/assets/plus-DkfcQyma.js +0 -1
- package/dist/web/assets/square-D0YnIVh6.js +0 -1
- package/dist/web/assets/x-BvVvVB-j.js +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{j as sr,v as Bt}from"./chunk-
|
|
2
|
+
import{j as sr,v as Bt}from"./chunk-G2P2PYEO.js";import{a as tt}from"./chunk-WLQEONBF.js";import{b as at}from"./chunk-MHSSPMLB.js";import{a as or}from"./chunk-Q3WXB465.js";import{a as nr}from"./chunk-FEAKTSRS.js";import{a as et}from"./chunk-TPOAAJKA.js";import{d as Ze}from"./chunk-KQ7RFPG5.js";import{b as Ye}from"./chunk-JVEIK4RH.js";import{a as tr,e as ar,f as rr}from"./chunk-ODH5XGE6.js";import{a as Mt}from"./chunk-IZ6DLEVY.js";import{a as Ga}from"./chunk-6YR5IYHH.js";import{c as Za,e as He}from"./chunk-XLZMSD5K.js";import{a as Ka,b as _e,c as Xa,d as Oe,g as Xe,l as Qe,m as se,n as Ya}from"./chunk-BQNU4HZW.js";import{a as Qa}from"./chunk-G4747MOW.js";import{a as er}from"./chunk-7KWD2I6W.js";import{c as la,y as ma}from"./chunk-OFJPOTES.js";import{d as he}from"./chunk-FDYWGE2Y.js";import{x as Be}from"./chunk-FCC24XUI.js";import{a as Ct}from"./chunk-BL3CZWWD.js";import{A as F,B as Ke,u as Ja,y as Ge}from"./chunk-OXRN2257.js";import{a as za,c as Se,d as Je,f as Ua,l as La,p as Va,r as Wa}from"./chunk-TOWY6Y23.js";import{b as ga,d as wa,e as va}from"./chunk-4V73I4OL.js";import{a as Le,e as ua,f as pa,g as fa,h as ha}from"./chunk-LE75SVEL.js";import{e as Ia}from"./chunk-LZPCA6DH.js";import{b as ca}from"./chunk-L3KS6MOV.js";import{f as $a}from"./chunk-Z6HWSTEP.js";import{Ca as Tt,Fa,aa as Na,ja as Da,wa as Me}from"./chunk-BYVE4TMU.js";import{f as qa}from"./chunk-LK77GI6M.js";import{k as ka}from"./chunk-HVM2GUM3.js";import{G as We,H as xa,L as Pa,R as Ta,S as Ca,T as Ma,ba as Ba,e as Ea,f as Ve,ga as _a,n as Aa,pa as Oa,ra as ja}from"./chunk-D6L6UNUQ.js";import{Eb as Ie,Fb as Ha,b as ya,ga as Sa}from"./chunk-ZY32SZ2P.js";import{r as Ra,s as ba}from"./chunk-OTDDXEQ6.js";import{Z as da}from"./chunk-SV7ZBEK2.js";import{M as sa}from"./chunk-2MEOUS24.js";import{i as oa,l as re,m as fe,n as v}from"./chunk-RCT3O3HQ.js";import{m as ia}from"./chunk-UGOK7VTC.js";import{A as M}from"./chunk-X2J2P5ZT.js";import{a as h}from"./chunk-FTQLQJQV.js";import{execFile as Wr}from"node:child_process";import{readFile as Jr}from"node:fs/promises";import{promisify as Gr}from"node:util";var Kr=5,Xr=20*1024*1024,ir=4e4,Ot=Gr(Wr);function Zn(e){return async({grader:t,task:a,attempt:n})=>{let s=[],o=0,i=await Qr({store:e.store,attempt:n}),d=n.modelRef?.providerId===t.judge.providerId&&n.modelRef.modelId===t.judge.modelId?sr(n.metadata.hostedTokenPricing)??void 0:void 0,g=await e.modelText({model:t.judge,hostedTokenPricing:d,signal:new AbortController().signal,requestId:`task-judge:${n.id}:${t.id}`,onUsage:h((m,r)=>{s.push(m),typeof r=="number"&&Number.isFinite(r)&&r>=0&&(o+=r)},"onUsage"),messages:[{role:"system",content:`Apply this rubric and return JSON only with score (0..1), passed, and feedback.
|
|
3
3
|
|
|
4
4
|
${t.rubric}`},{role:"user",content:JSON.stringify({input:a.input,expectedOutput:a.expectedOutput,output:n.output,artifactEvidence:i})}]}),f=rr(g);if(!f)throw new Error("Model judge returned invalid structured output.");return{...f,usage:s,...o>0?{costUsd:o}:{}}}}h(Zn,"createTaskAttemptModelJudge");async function Qr(e){let t=(await e.store.listTaskAttemptArtifacts({attemptId:e.attempt.id})).filter(a=>a.kind==="output_artifact").slice(0,Kr);return Promise.all(t.map(async a=>{let n={artifactId:a.id,mediaType:a.mediaType??null,sha256:a.sha256,sizeBytes:a.sizeBytes,requiredOutputPath:typeof a.metadata.requiredOutputPath=="string"?a.metadata.requiredOutputPath:null};if(a.sizeBytes>Xr)return{...n,extraction:"omitted",reason:"artifact exceeds inspection bound"};try{if(a.mediaType==="application/pdf"){let{stdout:s}=await Ot("pdftotext",[a.path,"-"],{env:{...process.env,PATH:Mt()},maxBuffer:8388608,timeout:15e3});return{...n,extraction:"pdf_text",content:_t(s)}}if(Zr(a.mediaType)){let s=await en(a.path,a.mediaType);return{...n,extraction:"open_xml_text",content:_t(s.content),structure:s.structure}}return Yr(a.mediaType)?{...n,extraction:"text",content:_t(await Jr(a.path,"utf8"))}:{...n,extraction:"metadata_only"}}catch(s){return{...n,extraction:"unavailable",reason:s instanceof Error?s.message.slice(0,500):String(s).slice(0,500)}}}))}h(Qr,"loadTaskAttemptGraderEvidence");function Yr(e){return!!(e?.startsWith("text/")||e==="application/json"||e==="application/javascript"||e==="application/sql"||e==="application/xml"||e==="application/yaml")}h(Yr,"isTextArtifact");function Zr(e){return e==="application/vnd.openxmlformats-officedocument.wordprocessingml.document"||e==="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"||e==="application/vnd.openxmlformats-officedocument.presentationml.presentation"}h(Zr,"isOpenXmlArtifact");async function en(e,t){let a={env:{...process.env,PATH:Mt()},maxBuffer:16777216,timeout:15e3},{stdout:n}=await Ot("unzip",["-Z1",e],a),s=n.split(/\r?\n/).filter(Boolean),o=tn(s,t).slice(0,250),i=[];for(let d of o){let{stdout:g}=await Ot("unzip",["-p",e,d],a),f=rn(g);f&&i.push(`[${d}]
|
|
5
5
|
${f}`)}return{content:i.join(`
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{b as f}from"./chunk-CX4T7I47.js";import{Z as c}from"./chunk-6I5AUTVO.js";import{C as w,D as I,z as g}from"./chunk-
|
|
2
|
+
import{b as f}from"./chunk-CX4T7I47.js";import{Z as c}from"./chunk-6I5AUTVO.js";import{C as w,D as I,z as g}from"./chunk-FCC24XUI.js";import{b as m}from"./chunk-FYWQWKVS.js";import{f as R}from"./chunk-ZY32SZ2P.js";import{A as r}from"./chunk-X2J2P5ZT.js";import{a as d}from"./chunk-FTQLQJQV.js";import n from"node:path";import{readFile as y}from"node:fs/promises";var A=r.object({profileId:r.string().min(1),sourceRevision:r.string().min(1),repositoryId:r.string().min(1),harnessRelease:r.object({id:r.string().min(1),contentHash:r.string().regex(/^[a-f0-9]{64}$/)}).strict(),hostExecution:r.object({conversationId:r.string().min(1),turnId:r.string().min(1)}).strict().optional(),workspaceId:r.string().min(1),assetsPath:r.string().min(1).refine(n.isAbsolute)}).strict();async function _(p,e){let t=A.parse(e),s=await f(p,t.harnessRelease);if(!s||n.resolve(s.release.bundlePath)!==n.resolve(t.assetsPath))throw new Error("Hosted Profile release changed after admission.");let o=s.release.harnessRelease.metadata.profile;if(!o||typeof o!="object"||o.id!==t.profileId||o.sourceRevision!==t.sourceRevision||o.repositoryId!==void 0&&o.repositoryId!==t.repositoryId)throw new Error("Hosted Profile provenance differs from admitted release.");return{profile:I(),profileLibrary:w()}}d(_,"loadHostedProfileStateAndLibrary");async function B(p,e){let t=A.parse(e),s=await f(p,t.harnessRelease);if(!s||n.resolve(s.release.bundlePath)!==n.resolve(t.assetsPath))throw new Error("Hosted Profile workflow release is unavailable.");let o=s.release.harnessRelease.metadata.profile;if(o?.id!==t.profileId||o.sourceRevision!==t.sourceRevision||o.repositoryId!==void 0&&o.repositoryId!==t.repositoryId)throw new Error("Hosted Profile workflow provenance changed.");let a=t.harnessRelease,l={source:"openpond_git",repositoryId:t.repositoryId,profileId:t.profileId};if(!s.release.harnessRelease.files.some(u=>u.path==="workflows/catalog.json"))return{profileRef:l,sourceRevision:t.sourceRevision,harnessRelease:a,workflows:[]};let i=n.join(s.release.bundlePath,"source","workflows"),v=R({agentSnapshot:s.release.agentSnapshot,harnessRelease:s.release.harnessRelease,catalogBytes:await y(n.join(i,"catalog.json")),actionBytes:await y(n.join(i,"actions.json"))});return{profileRef:l,sourceRevision:t.sourceRevision,harnessRelease:a,workflows:v.catalog.workflows.map(u=>({workflow:u,binding:{schemaVersion:"openpond.profileWorkflowBinding.v1",profileId:t.profileId,sourceRevision:t.sourceRevision,harnessRelease:a,catalogHash:v.catalogHash,workflowId:u.id}}))}}d(B,"listHostedProfileWorkflows");import{createHash as U,randomUUID as h}from"node:crypto";var b=r.object({approval:g,revision:r.number().int().positive()}).strict(),P=r.object({record:m}).strict(),x=r.object({startedAt:r.string().min(1),requestOrdinal:r.number().int().nonnegative(),id:r.string().min(1)}).strict(),k=r.object({records:r.array(m).max(200),nextBefore:x.nullable()}).strict(),H=1e4,S=class{constructor(e){this.client=e}client;static{d(this,"HostedApprovalStorage")}async readApproval(e){let t=await this.client.request({contractVersion:c,requestId:h(),operation:"approval/get",params:{approvalId:e}});return t===null?null:b.parse(t)}async getApproval(e){return(await this.readApproval(e))?.approval??null}async putApproval(e){let t=g.parse(e.approval);if(!e.requestId.trim())throw new Error("Approval mutation requires a stable request ID.");return b.parse(await this.client.request({contractVersion:c,requestId:e.requestId,operation:"approval/upsert",params:{approval:t,expectedRevision:e.expectedRevision}}))}},M=class{constructor(e){this.client=e}client;static{d(this,"HostedModelUsageStorage")}async upsertModelUsageRecord(e){let t=m.parse(e),s=U("sha256").update(JSON.stringify(t)).digest("hex"),o=await this.client.request({contractVersion:c,requestId:`usage:${s}`,operation:"usage/upsert",params:{record:t}}),a=P.parse(o).record;if(a.requestId!==t.requestId)throw new Error("Host usage upsert changed request identity.");return a}async getModelUsageRecordByRequestId(e){let t=await this.client.request({contractVersion:c,requestId:h(),operation:"usage/getByRequestId",params:{requestId:e}});return t===null?null:P.parse(t).record}async listModelUsageRecords(e={}){let t=e.limit===void 0||e.limit>=H,s=e.limit===void 0?H:Math.max(1,Math.min(1e4,Math.trunc(e.limit))),o={...e.sessionId?{sessionId:e.sessionId}:{},...e.turnId?{turnId:e.turnId}:{},...e.provider?{provider:e.provider}:{},...e.model?{model:e.model}:{},...e.startedAtFrom?{startedAtFrom:e.startedAtFrom}:{},...e.startedAtTo?{startedAtTo:e.startedAtTo}:{},...e.visibility&&e.visibility!=="all"?{visibility:e.visibility}:{},...e.status&&e.status!=="all"?{status:e.status}:{}},a=[],l=null;for(;a.length<s+(t?1:0);){let i=k.parse(await this.client.request({contractVersion:c,requestId:h(),operation:"usage/page",params:{query:o,before:l,limit:Math.min(200,s+(t?1:0)-a.length)}}));if(a.push(...i.records),a.length>s)throw new Error(`Hosted usage query exceeds ${s} rows; narrow its filters or use a streamed aggregation.`);if(i.nextBefore===null)break;if(i.records.length===0||JSON.stringify(i.nextBefore)===JSON.stringify(l))throw new Error("Host usage cursor did not advance.");l=i.nextBefore}return a}async listModelUsageRecordsComplete(e={}){return this.listModelUsageRecords(e)}};export{A as a,_ as b,B as c,S as d,M as e};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{c as h}from"./chunk-RFQD6B44.js";import{a as u,d as f}from"./chunk-
|
|
2
|
+
import{c as h}from"./chunk-RFQD6B44.js";import{a as u,d as f}from"./chunk-6IKIGVJF.js";import{d as w}from"./chunk-RPM4FDRX.js";import{c as l,f as c}from"./chunk-BSHAIAXY.js";import{c as a}from"./chunk-3M53YXEI.js";import{b as s}from"./chunk-GLUWATL5.js";import{a as i}from"./chunk-FTQLQJQV.js";import{readFile as p,stat as m}from"node:fs/promises";async function v(r,t=1048576){let o=a(r,"inputFile");if(!o)throw new Error("Provide --input-file with the exact reviewed request.");let e=await m(o);if(!e.isFile()||e.size>t)throw new Error(`The request must be a regular JSON file of at most ${t} bytes.`);let n=await p(o);if(n.byteLength>t)throw new Error("The request file grew beyond its byte allowance.");return JSON.parse(n.toString("utf8"))}i(v,"readEvaluationCommandInput");async function E(r){let t=a(r,"team");if(!t)throw new Error("Select --team for the evaluation owner.");if(r.local===!0||r.local==="true"){let e=new URL(a(r,"serverUrl")||u);if(e.protocol!=="http:"||!["localhost","127.0.0.1","[::1]"].includes(e.hostname)||e.username||e.password||e.search||e.hash||e.pathname!=="/")throw new Error("Local evaluation commands require an HTTP loopback server origin.");return{teamId:t,baseUrl:e.origin,apiKey:"local-capability",fetch:await f(e.origin)}}let o=await w();return{teamId:t,apiKey:await h(o,c(o)),baseUrl:l(r)??o.apiBaseUrl??s}}i(E,"evaluationCommandAccess");export{v as a,E as b};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{a as gc,b as hc,c as gi,d as hi}from"./chunk-MWPMYCYB.js";import{A as Kd,B as Vd,C as po,D as Jd,E as di,F as Gd,G as Xd,H as Qd,I as Yd,J as Zd,K as ec,L as ci,N as bc,d as vd,e as yd,f as kd,g as Sd,h as Id,i as Rd,j as xd,k as Sr,l as ii,m as ai,n as Nd,o as jd,p as Fd,q as li,r as qd,s as $d,t as Hd,u as Dd,w as Tr,y as zd,z as uo}from"./chunk-JALL5NPH.js";import{a as kc,b as yt,c as Sc,d as ln}from"./chunk-RHMULF56.js";import{b as wc}from"./chunk-UOFDKMRU.js";import{b as pt,c as Md,d as si}from"./chunk-AN525SPP.js";import{k as yr}from"./chunk-DNRC6TPJ.js";import{A as mi,C as lc,F as mc,G as fc,I as Lt,K as Gn,b as Ul,c as zl,e as kr,f as md,p as Tn,r as gd,t as hd,u as wd,w as Td,x as Pd,y as Bd,z as Vn}from"./chunk-6I5AUTVO.js";import{f as fd}from"./chunk-BQNU4HZW.js";import{a as yc}from"./chunk-N73MU2C3.js";import{E as sc,F as ic,I as pi,N as an,O as ac,c as Wd,d as Ir,e as Rr,f as xr,g as Jn,h as Ud,j as tc,k as ui,l as nc,q as rc}from"./chunk-RWBP2H4M.js";import{a as Ld}from"./chunk-DMFUEUAZ.js";import{a as Pr,d as oc,e as Cr}from"./chunk-GF55VEMR.js";import{a as cc,b as uc,d as pc}from"./chunk-FAKDGLZQ.js";import{c as vc}from"./chunk-GW766ZSO.js";import{c as mo,e as dc,f as fo}from"./chunk-6OD2FKUS.js";import{a as bd}from"./chunk-7KWD2I6W.js";import{a as oi,c as pd,i as Kn}from"./chunk-2ACX7IW5.js";import{B as Ll}from"./chunk-OFJPOTES.js";import{d as ri,k as Od}from"./chunk-ATI52WMB.js";import{B as Ed,b as Z,j as Cd,s as _d,t as Ad}from"./chunk-YU3C6U5V.js";import{h as fi}from"./chunk-MQMMJKOZ.js";import{a as co}from"./chunk-KVTBX2UP.js";import{a as Y,b as se,d as L}from"./chunk-L5L3H6CI.js";import{$ as wr,Ec as vr,Gc as ni,Hc as ud,Jb as br,K as td,M as Xs,Mb as id,Nb as Zs,Ob as ad,P as Dt,Pb as ld,Sb as zn,T as nd,Tb as vt,Ub as dd,c as Yl,d as Zl,g as ed,ha as od,ia as ge,ib as Ys,ja as sn,jc as ei,kc as lo,lc as cd,ma as rd,na as ct,oc as ti,pc as ut,qa as Qs,ra as sd,u as rn}from"./chunk-2THZ6GZY.js";import{a as Fl,c as ql,g as $l,h as Hl,k as Bs,m as Dl,n as Ws}from"./chunk-OQPJ7FJF.js";import{ef as Ql}from"./chunk-2Q2AWPP2.js";import{A as Vl,D as Gs,E as Jl,F as Gl,G as Xl,s as Ks,y as Js}from"./chunk-4JKWCLTQ.js";import{b as hr,c as Vs}from"./chunk-AITV76GO.js";import{j as Ht}from"./chunk-3VT2PPKW.js";import{G as zs}from"./chunk-OKKNDQJF.js";import{X as Kl,x as gr}from"./chunk-ZY32SZ2P.js";import{c as fr,e as jl,m as Us,n as Bl,o as Wl}from"./chunk-KUE46HTH.js";import{C as Tl,E as Al,F as El,c as io,e as ml,f as ar,fa as Ol,ha as Ml,ia as Nl,v as ur,x as pr}from"./chunk-SV7ZBEK2.js";import{A as kl,B as Rn,C as xn,E as lr,I as Ls,J as Sl,L as Il,O as dr,V as Rl,W as cr,X as ao,Z as xl,c as hl,f as wl,h as bl,j as vl,w as yl,y as et,z as ye}from"./chunk-2MEOUS24.js";import{e as fl,f as gl}from"./chunk-HNQPEOJD.js";import{l as Ds,m as In,n as Ue}from"./chunk-RCT3O3HQ.js";import{b as ul,c as Un,e as pl,f as on,h as Sn,i as Hs,r as Pl,s as Cl,t as mr,u as _l}from"./chunk-UGOK7VTC.js";import{A as P}from"./chunk-X2J2P5ZT.js";import{a as r}from"./chunk-FTQLQJQV.js";function Ic(e){let t,n,o=new Set;function s(i){if(n)return Promise.reject(new Error("Runtime service is closing"));t??=Promise.resolve().then(e);let a=t.then(l=>{if(n)throw new Error("Runtime service is closing");return i(l)});return o.add(a),a.then(()=>o.delete(a),()=>o.delete(a)),a}return r(s,"use"),{use:s,methods(i){return Object.fromEntries(i.map(a=>[a,(...l)=>s(u=>u[a].apply(u,l))]))},close(){return n??=Promise.resolve().then(async()=>{try{await(await t?.catch(()=>{}))?.close()}finally{await Promise.allSettled([...o])}})}}}r(Ic,"lazyRuntimeService");function xc(e){let t=Hg();for(let n of e)t.accept(n);return t.values()}r(xc,"activeFileOutputRefs");function Hg(e=Number.POSITIVE_INFINITY){let t=new Map,n=new Set;function o(s){let i=Pn(s.data);if(t.size+n.size+i.length>e)throw new Error("remote_output_reference_limit");if(s.action==="work_output_delete"&&s.status==="completed"){for(let a of i){let l=Rc(a);n.add(l),t.delete(l)}return}if(s.action!=="work_output_read")for(let a of i){let l=Rc(a);n.has(l)||t.set(l,a)}}return r(o,"accept"),{accept:o,values:r(()=>[...t.values()],"values")}}r(Hg,"createOutputReferenceAccumulator");function Rc(e){return`${e.sourceTaskId}:${e.id}:${e.revision}`}r(Rc,"fileOutputRevisionKey");function Pn(e,t=0){if(t>8||e==null)return[];let n=sn.safeParse(e);if(n.success)return[n.data];if(Array.isArray(e))return e.flatMap(s=>Pn(s,t+1));let o=Dg(e);return Object.values(o).flatMap(s=>Pn(s,t+1))}r(Pn,"fileOutputRefs");function Dg(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}r(Dg,"asRecord");import{createHash as ho,randomUUID as Cc}from"node:crypto";import{promises as nt}from"node:fs";import Ie from"node:path";function go(e){return!!(e.experience==="work"&&!e.workspaceKind&&!e.localProjectId&&!e.cloudProjectId&&e.metadata?.workspaceTarget==="local"&&e.cwd)}r(go,"isManagedLocalWorkSession");function pS(e){let t=Ie.join(e.storeDir,"work","outputs"),n=e.sandboxRequest??yr;async function o(m){let w=_r(m.suggestedName);if(m.bytes.byteLength>ct)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);let C=Qs[Ie.extname(w).toLowerCase()];if(!C)throw new Error(`${w} is not an advertised Work output format. Save it as a supported file type or keep it in scratch space.`);let S=Ug({bytes:m.bytes,contentType:C,title:w,supplied:m.validation,policy:m.validationPolicy}),R=await Tc({runtimeEventsForSession:e.runtimeEventsForSession,sessionId:m.session.id,title:w,...e.managedPersistence?{firstId:`hosted-${ho("sha256").update(`${m.session.id}\0${w}`).digest("hex")}`}:{}});if(e.managedPersistence){let b=await e.managedPersistence.sourceTurnStartedAt(m.session.id,m.sourceTurnId),f={id:R.id,title:w,contentType:C,sizeBytes:m.bytes.byteLength,sha256:ho("sha256").update(m.bytes).digest("hex"),sourceTaskId:m.session.id,sourceTurnId:m.sourceTurnId,revision:R.revision,createdAt:new Date(b).toISOString(),validation:S};return e.managedPersistence.save({sessionId:m.session.id,turnId:m.sourceTurnId,identity:f,bytes:m.bytes})}let g=Ie.join(t,Ar(m.session.id));await nt.mkdir(g,{recursive:!0,mode:448});let d=Ie.join(g,`${String(R.revision).padStart(3,"0")}-${Ar(R.id)}-${w}`),k=Ie.join(g,`.${Ie.basename(d)}.${Cc()}.tmp`);await nt.writeFile(k,m.bytes,{mode:384,flag:"wx"});try{await nt.rename(k,d)}catch(b){throw await nt.rm(k,{force:!0}),b}return{outputRef:sn.parse({kind:"file",id:R.id,title:w,contentType:C,sizeBytes:m.bytes.byteLength,sha256:ho("sha256").update(m.bytes).digest("hex"),sourceTaskId:m.session.id,sourceTurnId:m.sourceTurnId,revision:R.revision,createdAt:new Date().toISOString(),location:{kind:"local",path:d,deviceId:e.deviceId},validation:S}),artifact:{artifactRef:d,path:d,title:w,contentType:C,sizeBytes:m.bytes.byteLength}}}r(o,"persistWorkOutputBytes");async function s(m){if(m.session.experience!=="work")throw new Error("Only Work tasks can save Work outputs.");if(m.session.workspaceKind!=="sandbox"||!m.session.workspaceId)throw new Error("A running Work sandbox is required to save an output.");let w=Jg(m.sandboxPath),C=Xn(await n({type:"download_file",sandboxId:m.session.workspaceId,payload:{path:w,maxBytes:ct}})),S=Xn(C.file);if(S.truncated===!0)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);let R=typeof S.contentsBase64=="string"?S.contentsBase64:"";if(!R)throw new Error("Sandbox output download did not return file contents.");let g=Buffer.from(R,"base64"),d=Pc(S.totalSizeBytes)??Pc(S.sizeBytes);if(g.byteLength>ct||d!==null&&d>ct)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);if(d!==null&&g.byteLength!==d)throw new Error("Sandbox output download was incomplete.");return o({session:m.session,sourceTurnId:m.sourceTurnId,suggestedName:m.suggestedName||Ie.posix.basename(w),bytes:g,validation:m.validation??[],validationPolicy:m.validationPolicy??"strict"})}r(s,"saveWorkOutput");async function i(m){if(!go(m.session)||!m.session.cwd)throw new Error("A managed local Work task is required to save a local output.");let w=await nt.realpath(m.session.cwd),C=Ie.isAbsolute(m.localPath)?Ie.resolve(m.localPath):Ie.resolve(w,m.localPath),S=await nt.realpath(C);if(!_c(w,S))throw new Error("Local Work outputs must stay inside the managed task workspace.");let R=await nt.stat(S);if(!R.isFile())throw new Error("A local Work output must be a file.");if(R.size>ct)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);let g=await nt.readFile(S);return o({session:m.session,sourceTurnId:m.sourceTurnId,suggestedName:m.suggestedName??Ie.basename(S),bytes:g,validation:[],validationPolicy:"preserve"})}r(i,"saveLocalWorkOutput");async function a(m){if(go(m.session))return l(m);if(m.session.experience!=="work"||m.session.workspaceKind!=="sandbox"||!m.session.workspaceId)return[];let w=Xn(await n({type:"list_files",sandboxId:m.session.workspaceId,payload:{path:"outputs",recursive:!0,maxEntries:500}})),C=Array.isArray(w.files)?w.files:[],S=await e.runtimeEventsForSession(m.session.id),R=new Set(Pn(S).filter(d=>d.sourceTurnId===m.sourceTurnId).map(d=>d.title)),g=[];for(let d of C){let k=Xn(d);if(k.type!=="file"||typeof k.path!="string")continue;let v=k.path.replace(/^\/workspace\//,""),b=_r(Ie.posix.basename(v));if(!R.has(b)){if(e.managedPersistence){let f=await Tc({runtimeEventsForSession:e.runtimeEventsForSession,sessionId:m.session.id,title:b,firstId:`hosted-${ho("sha256").update(`${m.session.id}\0${b}`).digest("hex")}`}),_=await e.managedPersistence.sourceTurnStartedAt(m.session.id,m.sourceTurnId);g.push(await e.managedPersistence.saveSandboxFile({sessionId:m.session.id,turnId:m.sourceTurnId,identity:{id:f.id,title:b,sourceTaskId:m.session.id,sourceTurnId:m.sourceTurnId,revision:f.revision,createdAt:new Date(_).toISOString(),validation:[]},sandboxPath:v}))}else g.push(await s({session:m.session,sourceTurnId:m.sourceTurnId,sandboxPath:v,suggestedName:b,validationPolicy:"preserve"}));R.add(b)}}return g}r(a,"saveAllWorkOutputs");async function l(m){if(!m.session.cwd)return[];let w=await e.runtimeEventsForSession(m.session.id),C=w.filter(d=>d.turnId===m.sourceTurnId&&d.name==="assistant.delta"&&typeof d.output=="string").map(d=>d.output??"").join(""),S=await Lg({assistantText:C,workspaceRoot:m.session.cwd,declaredPaths:m.session.metadata?.profileEvaluationRun!==void 0?P.array(Kl).max(1e3).parse(m.session.metadata.profileEvaluationOutputs??[]).map(d=>d.path):[]}),R=new Set(Pn(w).filter(d=>d.sourceTurnId===m.sourceTurnId).map(d=>d.title)),g=[];for(let d of S){let k=_r(Ie.basename(d));R.has(k)||(g.push(await i({session:m.session,sourceTurnId:m.sourceTurnId,localPath:d,suggestedName:k})),R.add(k))}return g}r(l,"saveReferencedLocalWorkOutputs");async function u(m){if(m.experience!=="work")return[];let w=await e.runtimeEventsForSession(m.id),C=new Map;for(let S of Pn(w)){if(S.location.kind!=="local")continue;let R=C.get(S.title);(!R||S.revision>R.revision)&&C.set(S.title,S)}return[...C.values()].map(S=>({localPath:S.location.kind==="local"?S.location.path:"",storageName:`${Ar(S.id)}-${_r(S.title)}`,sha256:S.sha256,sizeBytes:S.sizeBytes}))}r(u,"workInputsForSession");async function c(m){let w=await Promise.all(m.filter(C=>C.experience==="work").map(async C=>xc(await e.runtimeEventsForSession(C.id))));return rd.parse({outputs:w.flat().sort((C,S)=>S.createdAt.localeCompare(C.createdAt))})}r(c,"listWorkOutputs");async function h(m){if(m.session.experience!=="work")throw new Error("Only Work tasks can access Work outputs.");let w=m.outputId.trim();if(!w)throw new Error("A Work output id is required.");let C=await e.runtimeEventsForSession(m.session.id),S=bi(C,w,m.revision);if(!S)throw new Error("Work output not found.");return p(m.session,S)}r(h,"resolveLocalOutput");function p(m,w){if(m.experience!=="work"||w.sourceTaskId!==m.id||w.location.kind!=="local")throw new Error("This Work output is not stored on this device.");let C=Ie.resolve(t,Ar(m.id)),S=Ie.resolve(w.location.path);if(S===C||!S.startsWith(`${C}${Ie.sep}`))throw new Error("Work output path is outside managed local storage.");return{outputRef:w,target:S}}r(p,"localOutputTarget");async function y(m){let{outputRef:w,target:C}=await h(m),S=await nt.rm(C).then(()=>!0).catch(R=>{if(R.code==="ENOENT")return!1;throw R});return{outputRef:w,deleted:S}}r(y,"deleteWorkOutput");async function x(m){let{outputRef:w}=await h(m);return T(m.session,w)}r(x,"readWorkOutput");async function T(m,w){let{target:C}=p(m,w),S=await nt.stat(C);if(S.size>ct||S.size!==w.sizeBytes)throw new Error("The saved Work output no longer matches its OutputRef.");let R=await nt.readFile(C);if(R.byteLength>ct)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);let g=ho("sha256").update(R).digest("hex");if(R.byteLength!==w.sizeBytes||g!==w.sha256)throw new Error("The saved Work output no longer matches its OutputRef.");return{outputRef:w,contentsBase64:R.toString("base64")}}return r(T,"readQualifiedWorkOutput"),{outputRoot:t,deleteWorkOutput:y,listWorkOutputs:c,readWorkOutput:x,readQualifiedWorkOutput:T,saveAllWorkOutputs:a,saveLocalWorkOutput:i,saveOwnedOutputBytes:o,saveWorkOutput:s,workInputsForSession:u}}r(pS,"createWorkOutputService");async function Lg(e){let t=await nt.realpath(e.workspaceRoot),n=new Set;for(let o of[...e.declaredPaths??[],...Bg(e.assistantText)]){let s=Wg(o);if(!s)continue;let i=Ie.isAbsolute(s)?Ie.resolve(s):Ie.resolve(t,s),a;try{if(a=await nt.realpath(i),!(await nt.stat(a)).isFile())continue}catch{continue}if(_c(t,a)&&Qs[Ie.extname(a).toLowerCase()]&&(n.add(a),n.size>=100))break}return[...n]}r(Lg,"resolveReferencedLocalFiles");function Bg(e){let t=[];for(let n=0;n<e.length;n+=1){let o=e[n]==="!"?n+1:n;if(e[o]!=="[")continue;let s=e.indexOf("]",o+1);if(s<0||e[s+1]!=="(")continue;let i=s+2;if(e[i]==="<"){let l=e.indexOf(">",i+1);l>=0&&e[l+1]===")"&&(t.push(e.slice(i+1,l)),n=l+1);continue}let a=0;for(let l=i;l<e.length;l+=1){let u=e[l];if(u==="\\"){l+=1;continue}if(u==="("){a+=1;continue}if(u!==")")continue;if(a>0){a-=1;continue}let c=e.slice(i,l).trim();c&&t.push(c),n=l;break}}return t}r(Bg,"markdownLinkTargets");function Wg(e){let t=e.trim().replace(/^['"`]+|['"`]+$/g,"");if(!t||/^(?:https?|data|mailto):/i.test(t))return null;if(t=t.replace(/^(?:workspace|sandbox):file:/i,""),/^file:\/\//i.test(t))try{t=decodeURIComponent(new URL(t).pathname)}catch{t=t.replace(/^file:\/\//i,"")}else try{t=decodeURIComponent(t)}catch{}return t.replace(/:\d+(?::\d+)?$/,"")}r(Wg,"normalizeLocalFileReference");function _c(e,t){let n=Ie.relative(e,t);return n!==""&&n!==".."&&!n.startsWith(`..${Ie.sep}`)&&!Ie.isAbsolute(n)}r(_c,"isPathInside");function Ug(e){let t=sd(e.contentType);if(!t)return e.supplied;let n=zg(e);if(n.status!=="passed")throw new Error(`Work output failed structural validation: ${n.detail}`);let o=[n,...e.supplied],s=t.validation.flatMap(i=>i==="visual"?["visual"]:i==="playback"||i==="browser"?["test"]:[]);for(let i of s)if(!o.some(a=>a.kind===i&&a.status==="passed")){if(e.policy==="strict")throw new Error(`${e.title} requires passed ${i} validation evidence before it can be saved as a completed Work output.`);o.push({kind:i,status:"not_run",label:`${e.title} ${i} validation was not run before automatic preservation`,detail:"The file was preserved automatically at turn completion; review this revision before relying on presentation or playback quality."})}return o}r(Ug,"validateWorkOutput");function zg(e){let t=Kg(e.bytes,e.contentType);return{kind:"structural",status:t?"passed":"failed",label:`Validated ${e.title} structure`,detail:t?`Content matches ${e.contentType}.`:`Content does not match ${e.contentType}.`}}r(zg,"structuralValidation");function Kg(e,t){if(e.byteLength===0)return!1;if(t.startsWith("text/")||t==="application/json"||t==="image/svg+xml"){let n;try{n=new TextDecoder("utf-8",{fatal:!0}).decode(e)}catch{return!1}if(t==="application/json")try{JSON.parse(n)}catch{return!1}return t==="text/html"?/<(?:!doctype\s+html|html|body)\b/i.test(n):t==="image/svg+xml"?/<svg\b/i.test(n):n.trim().length>0}if(t==="application/pdf")return e.subarray(0,5).toString("ascii")==="%PDF-"&&e.subarray(Math.max(0,e.byteLength-1024)).toString("ascii").includes("%%EOF");if(t.includes("wordprocessingml")||t.includes("spreadsheetml")||t.includes("presentationml")){let n=Vg(e),o=t.includes("wordprocessingml")?"word/document.xml":t.includes("spreadsheetml")?"xl/workbook.xml":"ppt/presentation.xml";return n.has("[Content_Types].xml")&&n.has("_rels/.rels")&&n.has(o)}return t==="image/png"?e.subarray(0,8).equals(Buffer.from([137,80,78,71,13,10,26,10])):t==="image/jpeg"?e[0]===255&&e[1]===216:t==="image/gif"?e.subarray(0,4).toString("ascii")==="GIF8":t==="image/webp"?e.subarray(0,4).toString("ascii")==="RIFF"&&e.subarray(8,12).toString("ascii")==="WEBP":t==="image/avif"?e.subarray(4,12).toString("ascii").includes("ftyp"):t==="audio/wav"?e.subarray(0,4).toString("ascii")==="RIFF"&&e.subarray(8,12).toString("ascii")==="WAVE":t==="audio/mpeg"?e.subarray(0,3).toString("ascii")==="ID3"||e[0]===255&&(e[1]&224)===224:t==="audio/mp4"||t==="video/mp4"||t==="video/quicktime"?e.subarray(4,12).toString("ascii").includes("ftyp"):t==="video/webm"?e.subarray(0,4).equals(Buffer.from([26,69,223,163])):!0}r(Kg,"structuralContentMatches");function Vg(e){let t=new Set;for(let n=0;n+46<=e.byteLength;){if(e.readUInt32LE(n)!==33639248){n+=1;continue}let o=e.readUInt16LE(n+28),s=e.readUInt16LE(n+30),i=e.readUInt16LE(n+32),a=n+46+o+s+i;if(a>e.byteLength)return new Set;let l=e.subarray(n+46,n+46+o).toString("utf8").replaceAll("\\","/").replace(/^\/+/,"");l&&t.add(l),n=a}return t}r(Vg,"zipCentralDirectoryEntries");function Jg(e){let t=e.trim().replaceAll("\\","/");if(!t||t.startsWith("/"))throw new Error("Work output path must be relative to /workspace.");let n=Ie.posix.normalize(t);if(n==="."||n===".."||n.startsWith("../")||!n.startsWith("outputs/")||n==="outputs/")throw new Error("Completed Work outputs must be inside /workspace/outputs.");return n}r(Jg,"normalizeOutputCandidatePath");async function Tc(e){let t=await e.runtimeEventsForSession(e.sessionId),n=null;for(let o of t){let s=wi(o.data);s?.kind!=="file"||s.title!==e.title||(!n||s.revision>n.revision)&&(n=s)}return{id:n?.id??e.firstId??Cc(),revision:(n?.revision??0)+1}}r(Tc,"nextOutputIdentity");function wi(e,t=0){if(t>6||e==null)return null;let n=sn.safeParse(e);if(n.success)return n.data;if(Array.isArray(e)){for(let s of e){let i=wi(s,t+1);if(i)return i}return null}let o=Xn(e);for(let s of Object.values(o)){let i=wi(s,t+1);if(i)return i}return null}r(wi,"findOutputRef");function bi(e,t,n,o=0){if(o>8||e==null)return null;let s=sn.safeParse(e);if(s.success&&s.data.id===t&&(n==null||s.data.revision===n))return s.data;if(Array.isArray(e)){let l=null;for(let u of e){let c=bi(u,t,n,o+1);c&&(!l||c.revision>l.revision)&&(l=c)}return l}let i=Xn(e),a=null;for(let l of Object.values(i)){let u=bi(l,t,n,o+1);u&&(!a||u.revision>a.revision)&&(a=u)}return a}r(bi,"findOutputRefById");function _r(e){let n=Ie.basename(e.trim()).replace(/[^a-zA-Z0-9._ -]+/g,"-").replace(/\s+/g," ").trim().slice(0,180);if(!n||n==="."||n==="..")throw new Error("A valid output file name is required.");return n}r(_r,"safeOutputName");function Ar(e){return e.replace(/[^a-zA-Z0-9._-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,100)||"item"}r(Ar,"safePathSegment");function Xn(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}r(Xn,"asRecord");function Pc(e){return typeof e=="number"&&Number.isFinite(e)?e:null}r(Pc,"numberValue");import{promises as Er}from"node:fs";import Gg from"node:path";async function Ac(e,t,n=Date.now()){let o=[];for(let i of await Er.readdir(e,{withFileTypes:!0})){if(!i.isFile()||!/\.log(?:\.\d+)?$/.test(i.name))continue;let a=Gg.join(e,i.name),l=await Er.lstat(a).catch(u=>{if(u.code==="ENOENT")return null;throw u});l?.isFile()&&o.push({file:a,size:l.size,modified:l.mtimeMs})}let s=o.reduce((i,a)=>i+a.size,0);for(let i of o.sort((a,l)=>a.modified-l.modified)){if(i.file===t||i.modified>=n-14*864e5&&s<=256*1024*1024)continue;let a=await Er.lstat(i.file).catch(()=>null);a?.isFile()&&a.size===i.size&&a.mtimeMs===i.modified&&(await Er.rm(i.file,{force:!0}),s-=i.size)}}r(Ac,"pruneLogs");import{promises as wo}from"node:fs";import Xg from"node:path";var Ec=1024*1024,Qg=5,vi=/authorization|api[_-]?key|token|session[_-]?token|secret|password/i,Yg=/Bearer\s+[A-Za-z0-9._~+/-]+=*/gi,Zg=/\b(?:https?|wss?):\/\/[^\s"'<>]+/gi;function eh(e){return{name:e.name,message:e.message,stack:e.stack}}r(eh,"serializeError");function Or(e){if(e instanceof Error)return Or(eh(e));if(typeof e=="string")return th(e);if(Array.isArray(e))return e.map(n=>Or(n));if(!e||typeof e!="object")return e;let t={};for(let[n,o]of Object.entries(e))t[n]=vi.test(n)?"[REDACTED]":Or(o);return t}r(Or,"redact");async function Oc(e,t){try{await wo.rm(t,{force:!0}),await wo.rename(e,t)}catch(n){if(n.code!=="ENOENT")throw n}}r(Oc,"renameIfExists");function th(e){return e.replace(Yg,"Bearer [REDACTED]").replace(Zg,t=>nh(t))}r(th,"redactString");function nh(e){let{url:t,suffix:n}=oh(e);try{let o=new URL(t);return(o.username||o.password)&&(o.username="[REDACTED]",o.password="[REDACTED]"),Mc(o.searchParams),o.hash&&(o.hash=rh(o.hash.slice(1))),`${o.toString()}${n}`}catch{return e}}r(nh,"redactUrl");function oh(e){let t=e,n="";for(;/[),.;!?]$/.test(t);)n=`${t.slice(-1)}${n}`,t=t.slice(0,-1);return{url:t,suffix:n}}r(oh,"splitUrlSuffix");function Mc(e){for(let t of Array.from(e.keys()))vi.test(t)&&e.set(t,"[REDACTED]")}r(Mc,"redactSearchParams");function rh(e){if(!e.includes("="))return vi.test(e)?"[REDACTED]":e;let t=new URLSearchParams(e.startsWith("?")?e.slice(1):e);return Mc(t),t.toString()}r(rh,"redactHash");function SS(e){let t=e.maxBytes??Ec,n=e.maxFiles??Qg,o=Xg.join(e.logDir,e.filename??`${e.channel}.log`),s=Promise.resolve(),i=0;async function a(u){let c=0;try{c=(await wo.stat(o)).size}catch(h){if(h.code!=="ENOENT")throw h}if(!(c+u<=t)){for(let h=n-1;h>=1;h-=1)await Oc(`${o}.${h}`,`${o}.${h+1}`);await Oc(o,`${o}.1`)}}r(a,"rotateIfNeeded");function l(u,c,h={}){let p={ts:new Date().toISOString(),level:u,channel:e.channel,message:c,pid:process.pid,platform:process.platform,...e.metadata??{},...h},y=`${JSON.stringify(Or(p))}
|
|
2
|
+
import{a as gc,b as hc,c as gi,d as hi}from"./chunk-ODH5XGE6.js";import{A as Kd,B as Vd,C as po,D as Jd,E as di,F as Gd,G as Xd,H as Qd,I as Yd,J as Zd,K as ec,L as ci,N as bc,d as vd,e as yd,f as kd,g as Sd,h as Id,i as Rd,j as xd,k as Sr,l as ii,m as ai,n as Nd,o as jd,p as Fd,q as li,r as qd,s as $d,t as Hd,u as Dd,w as Tr,y as zd,z as uo}from"./chunk-XSDWRRZP.js";import{a as kc,b as yt,c as Sc,d as ln}from"./chunk-RHMULF56.js";import{b as wc}from"./chunk-UOFDKMRU.js";import{b as pt,c as Md,d as si}from"./chunk-AN525SPP.js";import{k as yr}from"./chunk-DNRC6TPJ.js";import{A as mi,C as lc,F as mc,G as fc,I as Lt,K as Gn,b as Ul,c as zl,e as kr,f as md,p as Tn,r as gd,t as hd,u as wd,w as Td,x as Pd,y as Bd,z as Vn}from"./chunk-6I5AUTVO.js";import{f as fd}from"./chunk-BQNU4HZW.js";import{a as yc}from"./chunk-N73MU2C3.js";import{E as sc,F as ic,I as pi,N as an,O as ac,c as Wd,d as Ir,e as Rr,f as xr,g as Jn,h as Ud,j as tc,k as ui,l as nc,q as rc}from"./chunk-OUOOKEU3.js";import{a as Ld}from"./chunk-DMFUEUAZ.js";import{a as Pr,d as oc,e as Cr}from"./chunk-GF55VEMR.js";import{a as cc,b as uc,d as pc}from"./chunk-FAKDGLZQ.js";import{c as vc}from"./chunk-GW766ZSO.js";import{c as mo,e as dc,f as fo}from"./chunk-OVEQAEKR.js";import{a as bd}from"./chunk-7KWD2I6W.js";import{a as oi,c as pd,i as Kn}from"./chunk-2ACX7IW5.js";import{B as Ll}from"./chunk-OFJPOTES.js";import{d as ri,k as Od}from"./chunk-JAIFVT3D.js";import{B as Ed,b as Z,j as Cd,s as _d,t as Ad}from"./chunk-YU3C6U5V.js";import{h as fi}from"./chunk-A4HLKWQD.js";import{a as co}from"./chunk-KVTBX2UP.js";import{a as Y,b as se,d as L}from"./chunk-FDYWGE2Y.js";import{$ as wr,Ec as vr,Gc as ni,Hc as ud,Jb as br,K as td,M as Xs,Mb as id,Nb as Zs,Ob as ad,P as Dt,Pb as ld,Sb as zn,T as nd,Tb as vt,Ub as dd,c as Yl,d as Zl,g as ed,ha as od,ia as ge,ib as Ys,ja as sn,jc as ei,kc as lo,lc as cd,ma as rd,na as ct,oc as ti,pc as ut,qa as Qs,ra as sd,u as rn}from"./chunk-FCC24XUI.js";import{a as Fl,c as ql,g as $l,h as Hl,k as Bs,m as Dl,n as Ws}from"./chunk-OQPJ7FJF.js";import{ef as Ql}from"./chunk-2IECLXB2.js";import{A as Vl,D as Gs,E as Jl,F as Gl,G as Xl,s as Ks,y as Js}from"./chunk-645T6LH7.js";import{b as hr,c as Vs}from"./chunk-F64TR23C.js";import{j as Ht}from"./chunk-3VT2PPKW.js";import{G as zs}from"./chunk-OKKNDQJF.js";import{X as Kl,x as gr}from"./chunk-ZY32SZ2P.js";import{c as fr,e as jl,m as Us,n as Bl,o as Wl}from"./chunk-KUE46HTH.js";import{C as Tl,E as Al,F as El,c as io,e as ml,f as ar,fa as Ol,ha as Ml,ia as Nl,v as ur,x as pr}from"./chunk-SV7ZBEK2.js";import{A as kl,B as Rn,C as xn,E as lr,I as Ls,J as Sl,L as Il,O as dr,V as Rl,W as cr,X as ao,Z as xl,c as hl,f as wl,h as bl,j as vl,w as yl,y as et,z as ye}from"./chunk-2MEOUS24.js";import{e as fl,f as gl}from"./chunk-HNQPEOJD.js";import{l as Ds,m as In,n as Ue}from"./chunk-RCT3O3HQ.js";import{b as ul,c as Un,e as pl,f as on,h as Sn,i as Hs,r as Pl,s as Cl,t as mr,u as _l}from"./chunk-UGOK7VTC.js";import{A as P}from"./chunk-X2J2P5ZT.js";import{a as r}from"./chunk-FTQLQJQV.js";function Ic(e){let t,n,o=new Set;function s(i){if(n)return Promise.reject(new Error("Runtime service is closing"));t??=Promise.resolve().then(e);let a=t.then(l=>{if(n)throw new Error("Runtime service is closing");return i(l)});return o.add(a),a.then(()=>o.delete(a),()=>o.delete(a)),a}return r(s,"use"),{use:s,methods(i){return Object.fromEntries(i.map(a=>[a,(...l)=>s(u=>u[a].apply(u,l))]))},close(){return n??=Promise.resolve().then(async()=>{try{await(await t?.catch(()=>{}))?.close()}finally{await Promise.allSettled([...o])}})}}}r(Ic,"lazyRuntimeService");function xc(e){let t=Hg();for(let n of e)t.accept(n);return t.values()}r(xc,"activeFileOutputRefs");function Hg(e=Number.POSITIVE_INFINITY){let t=new Map,n=new Set;function o(s){let i=Pn(s.data);if(t.size+n.size+i.length>e)throw new Error("remote_output_reference_limit");if(s.action==="work_output_delete"&&s.status==="completed"){for(let a of i){let l=Rc(a);n.add(l),t.delete(l)}return}if(s.action!=="work_output_read")for(let a of i){let l=Rc(a);n.has(l)||t.set(l,a)}}return r(o,"accept"),{accept:o,values:r(()=>[...t.values()],"values")}}r(Hg,"createOutputReferenceAccumulator");function Rc(e){return`${e.sourceTaskId}:${e.id}:${e.revision}`}r(Rc,"fileOutputRevisionKey");function Pn(e,t=0){if(t>8||e==null)return[];let n=sn.safeParse(e);if(n.success)return[n.data];if(Array.isArray(e))return e.flatMap(s=>Pn(s,t+1));let o=Dg(e);return Object.values(o).flatMap(s=>Pn(s,t+1))}r(Pn,"fileOutputRefs");function Dg(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}r(Dg,"asRecord");import{createHash as ho,randomUUID as Cc}from"node:crypto";import{promises as nt}from"node:fs";import Ie from"node:path";function go(e){return!!(e.experience==="work"&&!e.workspaceKind&&!e.localProjectId&&!e.cloudProjectId&&e.metadata?.workspaceTarget==="local"&&e.cwd)}r(go,"isManagedLocalWorkSession");function pS(e){let t=Ie.join(e.storeDir,"work","outputs"),n=e.sandboxRequest??yr;async function o(m){let w=_r(m.suggestedName);if(m.bytes.byteLength>ct)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);let C=Qs[Ie.extname(w).toLowerCase()];if(!C)throw new Error(`${w} is not an advertised Work output format. Save it as a supported file type or keep it in scratch space.`);let S=Ug({bytes:m.bytes,contentType:C,title:w,supplied:m.validation,policy:m.validationPolicy}),R=await Tc({runtimeEventsForSession:e.runtimeEventsForSession,sessionId:m.session.id,title:w,...e.managedPersistence?{firstId:`hosted-${ho("sha256").update(`${m.session.id}\0${w}`).digest("hex")}`}:{}});if(e.managedPersistence){let b=await e.managedPersistence.sourceTurnStartedAt(m.session.id,m.sourceTurnId),f={id:R.id,title:w,contentType:C,sizeBytes:m.bytes.byteLength,sha256:ho("sha256").update(m.bytes).digest("hex"),sourceTaskId:m.session.id,sourceTurnId:m.sourceTurnId,revision:R.revision,createdAt:new Date(b).toISOString(),validation:S};return e.managedPersistence.save({sessionId:m.session.id,turnId:m.sourceTurnId,identity:f,bytes:m.bytes})}let g=Ie.join(t,Ar(m.session.id));await nt.mkdir(g,{recursive:!0,mode:448});let d=Ie.join(g,`${String(R.revision).padStart(3,"0")}-${Ar(R.id)}-${w}`),k=Ie.join(g,`.${Ie.basename(d)}.${Cc()}.tmp`);await nt.writeFile(k,m.bytes,{mode:384,flag:"wx"});try{await nt.rename(k,d)}catch(b){throw await nt.rm(k,{force:!0}),b}return{outputRef:sn.parse({kind:"file",id:R.id,title:w,contentType:C,sizeBytes:m.bytes.byteLength,sha256:ho("sha256").update(m.bytes).digest("hex"),sourceTaskId:m.session.id,sourceTurnId:m.sourceTurnId,revision:R.revision,createdAt:new Date().toISOString(),location:{kind:"local",path:d,deviceId:e.deviceId},validation:S}),artifact:{artifactRef:d,path:d,title:w,contentType:C,sizeBytes:m.bytes.byteLength}}}r(o,"persistWorkOutputBytes");async function s(m){if(m.session.experience!=="work")throw new Error("Only Work tasks can save Work outputs.");if(m.session.workspaceKind!=="sandbox"||!m.session.workspaceId)throw new Error("A running Work sandbox is required to save an output.");let w=Jg(m.sandboxPath),C=Xn(await n({type:"download_file",sandboxId:m.session.workspaceId,payload:{path:w,maxBytes:ct}})),S=Xn(C.file);if(S.truncated===!0)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);let R=typeof S.contentsBase64=="string"?S.contentsBase64:"";if(!R)throw new Error("Sandbox output download did not return file contents.");let g=Buffer.from(R,"base64"),d=Pc(S.totalSizeBytes)??Pc(S.sizeBytes);if(g.byteLength>ct||d!==null&&d>ct)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);if(d!==null&&g.byteLength!==d)throw new Error("Sandbox output download was incomplete.");return o({session:m.session,sourceTurnId:m.sourceTurnId,suggestedName:m.suggestedName||Ie.posix.basename(w),bytes:g,validation:m.validation??[],validationPolicy:m.validationPolicy??"strict"})}r(s,"saveWorkOutput");async function i(m){if(!go(m.session)||!m.session.cwd)throw new Error("A managed local Work task is required to save a local output.");let w=await nt.realpath(m.session.cwd),C=Ie.isAbsolute(m.localPath)?Ie.resolve(m.localPath):Ie.resolve(w,m.localPath),S=await nt.realpath(C);if(!_c(w,S))throw new Error("Local Work outputs must stay inside the managed task workspace.");let R=await nt.stat(S);if(!R.isFile())throw new Error("A local Work output must be a file.");if(R.size>ct)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);let g=await nt.readFile(S);return o({session:m.session,sourceTurnId:m.sourceTurnId,suggestedName:m.suggestedName??Ie.basename(S),bytes:g,validation:[],validationPolicy:"preserve"})}r(i,"saveLocalWorkOutput");async function a(m){if(go(m.session))return l(m);if(m.session.experience!=="work"||m.session.workspaceKind!=="sandbox"||!m.session.workspaceId)return[];let w=Xn(await n({type:"list_files",sandboxId:m.session.workspaceId,payload:{path:"outputs",recursive:!0,maxEntries:500}})),C=Array.isArray(w.files)?w.files:[],S=await e.runtimeEventsForSession(m.session.id),R=new Set(Pn(S).filter(d=>d.sourceTurnId===m.sourceTurnId).map(d=>d.title)),g=[];for(let d of C){let k=Xn(d);if(k.type!=="file"||typeof k.path!="string")continue;let v=k.path.replace(/^\/workspace\//,""),b=_r(Ie.posix.basename(v));if(!R.has(b)){if(e.managedPersistence){let f=await Tc({runtimeEventsForSession:e.runtimeEventsForSession,sessionId:m.session.id,title:b,firstId:`hosted-${ho("sha256").update(`${m.session.id}\0${b}`).digest("hex")}`}),_=await e.managedPersistence.sourceTurnStartedAt(m.session.id,m.sourceTurnId);g.push(await e.managedPersistence.saveSandboxFile({sessionId:m.session.id,turnId:m.sourceTurnId,identity:{id:f.id,title:b,sourceTaskId:m.session.id,sourceTurnId:m.sourceTurnId,revision:f.revision,createdAt:new Date(_).toISOString(),validation:[]},sandboxPath:v}))}else g.push(await s({session:m.session,sourceTurnId:m.sourceTurnId,sandboxPath:v,suggestedName:b,validationPolicy:"preserve"}));R.add(b)}}return g}r(a,"saveAllWorkOutputs");async function l(m){if(!m.session.cwd)return[];let w=await e.runtimeEventsForSession(m.session.id),C=w.filter(d=>d.turnId===m.sourceTurnId&&d.name==="assistant.delta"&&typeof d.output=="string").map(d=>d.output??"").join(""),S=await Lg({assistantText:C,workspaceRoot:m.session.cwd,declaredPaths:m.session.metadata?.profileEvaluationRun!==void 0?P.array(Kl).max(1e3).parse(m.session.metadata.profileEvaluationOutputs??[]).map(d=>d.path):[]}),R=new Set(Pn(w).filter(d=>d.sourceTurnId===m.sourceTurnId).map(d=>d.title)),g=[];for(let d of S){let k=_r(Ie.basename(d));R.has(k)||(g.push(await i({session:m.session,sourceTurnId:m.sourceTurnId,localPath:d,suggestedName:k})),R.add(k))}return g}r(l,"saveReferencedLocalWorkOutputs");async function u(m){if(m.experience!=="work")return[];let w=await e.runtimeEventsForSession(m.id),C=new Map;for(let S of Pn(w)){if(S.location.kind!=="local")continue;let R=C.get(S.title);(!R||S.revision>R.revision)&&C.set(S.title,S)}return[...C.values()].map(S=>({localPath:S.location.kind==="local"?S.location.path:"",storageName:`${Ar(S.id)}-${_r(S.title)}`,sha256:S.sha256,sizeBytes:S.sizeBytes}))}r(u,"workInputsForSession");async function c(m){let w=await Promise.all(m.filter(C=>C.experience==="work").map(async C=>xc(await e.runtimeEventsForSession(C.id))));return rd.parse({outputs:w.flat().sort((C,S)=>S.createdAt.localeCompare(C.createdAt))})}r(c,"listWorkOutputs");async function h(m){if(m.session.experience!=="work")throw new Error("Only Work tasks can access Work outputs.");let w=m.outputId.trim();if(!w)throw new Error("A Work output id is required.");let C=await e.runtimeEventsForSession(m.session.id),S=bi(C,w,m.revision);if(!S)throw new Error("Work output not found.");return p(m.session,S)}r(h,"resolveLocalOutput");function p(m,w){if(m.experience!=="work"||w.sourceTaskId!==m.id||w.location.kind!=="local")throw new Error("This Work output is not stored on this device.");let C=Ie.resolve(t,Ar(m.id)),S=Ie.resolve(w.location.path);if(S===C||!S.startsWith(`${C}${Ie.sep}`))throw new Error("Work output path is outside managed local storage.");return{outputRef:w,target:S}}r(p,"localOutputTarget");async function y(m){let{outputRef:w,target:C}=await h(m),S=await nt.rm(C).then(()=>!0).catch(R=>{if(R.code==="ENOENT")return!1;throw R});return{outputRef:w,deleted:S}}r(y,"deleteWorkOutput");async function x(m){let{outputRef:w}=await h(m);return T(m.session,w)}r(x,"readWorkOutput");async function T(m,w){let{target:C}=p(m,w),S=await nt.stat(C);if(S.size>ct||S.size!==w.sizeBytes)throw new Error("The saved Work output no longer matches its OutputRef.");let R=await nt.readFile(C);if(R.byteLength>ct)throw new Error(`Work output exceeds the ${ct.toLocaleString()} byte limit.`);let g=ho("sha256").update(R).digest("hex");if(R.byteLength!==w.sizeBytes||g!==w.sha256)throw new Error("The saved Work output no longer matches its OutputRef.");return{outputRef:w,contentsBase64:R.toString("base64")}}return r(T,"readQualifiedWorkOutput"),{outputRoot:t,deleteWorkOutput:y,listWorkOutputs:c,readWorkOutput:x,readQualifiedWorkOutput:T,saveAllWorkOutputs:a,saveLocalWorkOutput:i,saveOwnedOutputBytes:o,saveWorkOutput:s,workInputsForSession:u}}r(pS,"createWorkOutputService");async function Lg(e){let t=await nt.realpath(e.workspaceRoot),n=new Set;for(let o of[...e.declaredPaths??[],...Bg(e.assistantText)]){let s=Wg(o);if(!s)continue;let i=Ie.isAbsolute(s)?Ie.resolve(s):Ie.resolve(t,s),a;try{if(a=await nt.realpath(i),!(await nt.stat(a)).isFile())continue}catch{continue}if(_c(t,a)&&Qs[Ie.extname(a).toLowerCase()]&&(n.add(a),n.size>=100))break}return[...n]}r(Lg,"resolveReferencedLocalFiles");function Bg(e){let t=[];for(let n=0;n<e.length;n+=1){let o=e[n]==="!"?n+1:n;if(e[o]!=="[")continue;let s=e.indexOf("]",o+1);if(s<0||e[s+1]!=="(")continue;let i=s+2;if(e[i]==="<"){let l=e.indexOf(">",i+1);l>=0&&e[l+1]===")"&&(t.push(e.slice(i+1,l)),n=l+1);continue}let a=0;for(let l=i;l<e.length;l+=1){let u=e[l];if(u==="\\"){l+=1;continue}if(u==="("){a+=1;continue}if(u!==")")continue;if(a>0){a-=1;continue}let c=e.slice(i,l).trim();c&&t.push(c),n=l;break}}return t}r(Bg,"markdownLinkTargets");function Wg(e){let t=e.trim().replace(/^['"`]+|['"`]+$/g,"");if(!t||/^(?:https?|data|mailto):/i.test(t))return null;if(t=t.replace(/^(?:workspace|sandbox):file:/i,""),/^file:\/\//i.test(t))try{t=decodeURIComponent(new URL(t).pathname)}catch{t=t.replace(/^file:\/\//i,"")}else try{t=decodeURIComponent(t)}catch{}return t.replace(/:\d+(?::\d+)?$/,"")}r(Wg,"normalizeLocalFileReference");function _c(e,t){let n=Ie.relative(e,t);return n!==""&&n!==".."&&!n.startsWith(`..${Ie.sep}`)&&!Ie.isAbsolute(n)}r(_c,"isPathInside");function Ug(e){let t=sd(e.contentType);if(!t)return e.supplied;let n=zg(e);if(n.status!=="passed")throw new Error(`Work output failed structural validation: ${n.detail}`);let o=[n,...e.supplied],s=t.validation.flatMap(i=>i==="visual"?["visual"]:i==="playback"||i==="browser"?["test"]:[]);for(let i of s)if(!o.some(a=>a.kind===i&&a.status==="passed")){if(e.policy==="strict")throw new Error(`${e.title} requires passed ${i} validation evidence before it can be saved as a completed Work output.`);o.push({kind:i,status:"not_run",label:`${e.title} ${i} validation was not run before automatic preservation`,detail:"The file was preserved automatically at turn completion; review this revision before relying on presentation or playback quality."})}return o}r(Ug,"validateWorkOutput");function zg(e){let t=Kg(e.bytes,e.contentType);return{kind:"structural",status:t?"passed":"failed",label:`Validated ${e.title} structure`,detail:t?`Content matches ${e.contentType}.`:`Content does not match ${e.contentType}.`}}r(zg,"structuralValidation");function Kg(e,t){if(e.byteLength===0)return!1;if(t.startsWith("text/")||t==="application/json"||t==="image/svg+xml"){let n;try{n=new TextDecoder("utf-8",{fatal:!0}).decode(e)}catch{return!1}if(t==="application/json")try{JSON.parse(n)}catch{return!1}return t==="text/html"?/<(?:!doctype\s+html|html|body)\b/i.test(n):t==="image/svg+xml"?/<svg\b/i.test(n):n.trim().length>0}if(t==="application/pdf")return e.subarray(0,5).toString("ascii")==="%PDF-"&&e.subarray(Math.max(0,e.byteLength-1024)).toString("ascii").includes("%%EOF");if(t.includes("wordprocessingml")||t.includes("spreadsheetml")||t.includes("presentationml")){let n=Vg(e),o=t.includes("wordprocessingml")?"word/document.xml":t.includes("spreadsheetml")?"xl/workbook.xml":"ppt/presentation.xml";return n.has("[Content_Types].xml")&&n.has("_rels/.rels")&&n.has(o)}return t==="image/png"?e.subarray(0,8).equals(Buffer.from([137,80,78,71,13,10,26,10])):t==="image/jpeg"?e[0]===255&&e[1]===216:t==="image/gif"?e.subarray(0,4).toString("ascii")==="GIF8":t==="image/webp"?e.subarray(0,4).toString("ascii")==="RIFF"&&e.subarray(8,12).toString("ascii")==="WEBP":t==="image/avif"?e.subarray(4,12).toString("ascii").includes("ftyp"):t==="audio/wav"?e.subarray(0,4).toString("ascii")==="RIFF"&&e.subarray(8,12).toString("ascii")==="WAVE":t==="audio/mpeg"?e.subarray(0,3).toString("ascii")==="ID3"||e[0]===255&&(e[1]&224)===224:t==="audio/mp4"||t==="video/mp4"||t==="video/quicktime"?e.subarray(4,12).toString("ascii").includes("ftyp"):t==="video/webm"?e.subarray(0,4).equals(Buffer.from([26,69,223,163])):!0}r(Kg,"structuralContentMatches");function Vg(e){let t=new Set;for(let n=0;n+46<=e.byteLength;){if(e.readUInt32LE(n)!==33639248){n+=1;continue}let o=e.readUInt16LE(n+28),s=e.readUInt16LE(n+30),i=e.readUInt16LE(n+32),a=n+46+o+s+i;if(a>e.byteLength)return new Set;let l=e.subarray(n+46,n+46+o).toString("utf8").replaceAll("\\","/").replace(/^\/+/,"");l&&t.add(l),n=a}return t}r(Vg,"zipCentralDirectoryEntries");function Jg(e){let t=e.trim().replaceAll("\\","/");if(!t||t.startsWith("/"))throw new Error("Work output path must be relative to /workspace.");let n=Ie.posix.normalize(t);if(n==="."||n===".."||n.startsWith("../")||!n.startsWith("outputs/")||n==="outputs/")throw new Error("Completed Work outputs must be inside /workspace/outputs.");return n}r(Jg,"normalizeOutputCandidatePath");async function Tc(e){let t=await e.runtimeEventsForSession(e.sessionId),n=null;for(let o of t){let s=wi(o.data);s?.kind!=="file"||s.title!==e.title||(!n||s.revision>n.revision)&&(n=s)}return{id:n?.id??e.firstId??Cc(),revision:(n?.revision??0)+1}}r(Tc,"nextOutputIdentity");function wi(e,t=0){if(t>6||e==null)return null;let n=sn.safeParse(e);if(n.success)return n.data;if(Array.isArray(e)){for(let s of e){let i=wi(s,t+1);if(i)return i}return null}let o=Xn(e);for(let s of Object.values(o)){let i=wi(s,t+1);if(i)return i}return null}r(wi,"findOutputRef");function bi(e,t,n,o=0){if(o>8||e==null)return null;let s=sn.safeParse(e);if(s.success&&s.data.id===t&&(n==null||s.data.revision===n))return s.data;if(Array.isArray(e)){let l=null;for(let u of e){let c=bi(u,t,n,o+1);c&&(!l||c.revision>l.revision)&&(l=c)}return l}let i=Xn(e),a=null;for(let l of Object.values(i)){let u=bi(l,t,n,o+1);u&&(!a||u.revision>a.revision)&&(a=u)}return a}r(bi,"findOutputRefById");function _r(e){let n=Ie.basename(e.trim()).replace(/[^a-zA-Z0-9._ -]+/g,"-").replace(/\s+/g," ").trim().slice(0,180);if(!n||n==="."||n==="..")throw new Error("A valid output file name is required.");return n}r(_r,"safeOutputName");function Ar(e){return e.replace(/[^a-zA-Z0-9._-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,100)||"item"}r(Ar,"safePathSegment");function Xn(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}r(Xn,"asRecord");function Pc(e){return typeof e=="number"&&Number.isFinite(e)?e:null}r(Pc,"numberValue");import{promises as Er}from"node:fs";import Gg from"node:path";async function Ac(e,t,n=Date.now()){let o=[];for(let i of await Er.readdir(e,{withFileTypes:!0})){if(!i.isFile()||!/\.log(?:\.\d+)?$/.test(i.name))continue;let a=Gg.join(e,i.name),l=await Er.lstat(a).catch(u=>{if(u.code==="ENOENT")return null;throw u});l?.isFile()&&o.push({file:a,size:l.size,modified:l.mtimeMs})}let s=o.reduce((i,a)=>i+a.size,0);for(let i of o.sort((a,l)=>a.modified-l.modified)){if(i.file===t||i.modified>=n-14*864e5&&s<=256*1024*1024)continue;let a=await Er.lstat(i.file).catch(()=>null);a?.isFile()&&a.size===i.size&&a.mtimeMs===i.modified&&(await Er.rm(i.file,{force:!0}),s-=i.size)}}r(Ac,"pruneLogs");import{promises as wo}from"node:fs";import Xg from"node:path";var Ec=1024*1024,Qg=5,vi=/authorization|api[_-]?key|token|session[_-]?token|secret|password/i,Yg=/Bearer\s+[A-Za-z0-9._~+/-]+=*/gi,Zg=/\b(?:https?|wss?):\/\/[^\s"'<>]+/gi;function eh(e){return{name:e.name,message:e.message,stack:e.stack}}r(eh,"serializeError");function Or(e){if(e instanceof Error)return Or(eh(e));if(typeof e=="string")return th(e);if(Array.isArray(e))return e.map(n=>Or(n));if(!e||typeof e!="object")return e;let t={};for(let[n,o]of Object.entries(e))t[n]=vi.test(n)?"[REDACTED]":Or(o);return t}r(Or,"redact");async function Oc(e,t){try{await wo.rm(t,{force:!0}),await wo.rename(e,t)}catch(n){if(n.code!=="ENOENT")throw n}}r(Oc,"renameIfExists");function th(e){return e.replace(Yg,"Bearer [REDACTED]").replace(Zg,t=>nh(t))}r(th,"redactString");function nh(e){let{url:t,suffix:n}=oh(e);try{let o=new URL(t);return(o.username||o.password)&&(o.username="[REDACTED]",o.password="[REDACTED]"),Mc(o.searchParams),o.hash&&(o.hash=rh(o.hash.slice(1))),`${o.toString()}${n}`}catch{return e}}r(nh,"redactUrl");function oh(e){let t=e,n="";for(;/[),.;!?]$/.test(t);)n=`${t.slice(-1)}${n}`,t=t.slice(0,-1);return{url:t,suffix:n}}r(oh,"splitUrlSuffix");function Mc(e){for(let t of Array.from(e.keys()))vi.test(t)&&e.set(t,"[REDACTED]")}r(Mc,"redactSearchParams");function rh(e){if(!e.includes("="))return vi.test(e)?"[REDACTED]":e;let t=new URLSearchParams(e.startsWith("?")?e.slice(1):e);return Mc(t),t.toString()}r(rh,"redactHash");function SS(e){let t=e.maxBytes??Ec,n=e.maxFiles??Qg,o=Xg.join(e.logDir,e.filename??`${e.channel}.log`),s=Promise.resolve(),i=0;async function a(u){let c=0;try{c=(await wo.stat(o)).size}catch(h){if(h.code!=="ENOENT")throw h}if(!(c+u<=t)){for(let h=n-1;h>=1;h-=1)await Oc(`${o}.${h}`,`${o}.${h+1}`);await Oc(o,`${o}.1`)}}r(a,"rotateIfNeeded");function l(u,c,h={}){let p={ts:new Date().toISOString(),level:u,channel:e.channel,message:c,pid:process.pid,platform:process.platform,...e.metadata??{},...h},y=`${JSON.stringify(Or(p))}
|
|
3
3
|
`;Buffer.byteLength(y)>Math.max(Ec,t)&&(y=`${JSON.stringify({ts:p.ts,level:u,channel:e.channel,message:"Oversized log record omitted",originalBytes:Buffer.byteLength(y)})}
|
|
4
4
|
`),s=s.then(async()=>{await wo.mkdir(e.logDir,{recursive:!0}),await a(Buffer.byteLength(y,"utf8")),await wo.appendFile(o,y,{encoding:"utf8",mode:384}),Date.now()-i>=6e4&&(await Ac(e.logDir,o),i=Date.now())}).catch(x=>{console.error("OpenPond logger failed",x)})}return r(l,"write"),{debug:r((u,c)=>l("debug",u,c),"debug"),info:r((u,c)=>l("info",u,c),"info"),warn:r((u,c)=>l("warn",u,c),"warn"),error:r((u,c)=>l("error",u,c),"error"),flush:r(()=>s,"flush"),filePath:o}}r(SS,"createLogger");function yi(e){let t=e.environment??process.env;if(e.provider!=="openpond"||e.model!==t.OPENPOND_HOSTED_MODEL_ID?.trim())return null;let n=t.OPENPOND_HOSTED_MODEL_CONTEXT_WINDOW,o=t.OPENPOND_HOSTED_MODEL_OUTPUT_LIMIT;if(n===void 0&&o===void 0)return null;let s=r(i=>{if(i===void 0)return null;let a=Number(i);if(!/^\d+$/.test(i)||!Number.isSafeInteger(a)||a<=0)throw new Error("Hosted admitted model limit is invalid.");return a},"parse");return{contextWindow:s(n),outputLimit:s(o)}}r(yi,"admittedHostedModelLimits");var qc=4,sh=128e3,ih=8e3,Nc=8192,jc=1024;function Mr(e){return e==="openpond"?e:null}r(Mr,"hostedContextProvider");function Nr(e,t){let o=t.trim().toLowerCase().match(/(?:^|[-_])(\d+)\s*k(?:[-_]|$)/);return o?.[1]?Number.parseInt(o[1],10)*1e3:sh}r(Nr,"hostedContextLimit");function bo(e){let t=Math.min(ih,Math.ceil(e*.25)),n=Math.min(e-1,Math.max(t,Math.ceil(e*.08)));return Math.max(1,e-n)}r(bo,"usableHostedContextLimit");function dn(e){let t=e.model?.trim();if(!t)return null;let n=yi({provider:e.provider,model:t});if(n?.contextWindow)return n.contextWindow;let s=e.settings?.modelCaches[e.provider]?.models.find(a=>a.id===t);if(s?.contextWindow)return s.contextWindow;let i=Mr(e.provider);return i?Nr(i,t):null}r(dn,"trustedProviderContextLimit");function Si(e){let t=e.model?.trim();if(!t)return null;let n=yi({provider:e.provider,model:t});return n?.outputLimit?n.outputLimit:e.settings?.modelCaches[e.provider]?.models.find(s=>s.id===t)?.outputLimit??null}r(Si,"trustedProviderOutputLimit");function jr(e){let t=e.reduce((n,o)=>n+o.role.length+(o.name?.length??0)+(o.content?.length??0)+8,0);return Math.max(1,Math.ceil(t/qc)+e.length*4)}r(jr,"estimateHostedMessageTokens");function Fr(e){let t=ch(e.provider,e.model);if(!t)return{tokens:jr(e.messages),source:"heuristic",modelFamily:null};let n=e.messages.reduce((o,s)=>o+4+ki(s.role,t)+ki(s.name??"",t)+ki(s.content??"",t),1);return{tokens:Math.max(1,n),source:"model_family",modelFamily:t}}r(Fr,"estimateHostedMessageTokensForProvider");function Qn(e){let t=e.maxContextTokens?Math.max(256,Math.floor(e.maxContextTokens/8)):Nc,n=e.modelOutputLimit&&e.modelOutputLimit>0?Math.floor(e.modelOutputLimit):Number.MAX_SAFE_INTEGER;return Math.max(1,Math.min(e.requestedOutputTokens??Nc,t,n))}r(Qn,"hostedRequestedOutputTokens");function Cn(e){let t=e.maxContextTokens??null,n=Fr({provider:e.provider,model:e.model,messages:e.messages}),o=n.tokens,s=Fc(e.tools??[]),i=Fc(e.messages.flatMap(u=>{let c={};return u.continuation!==void 0&&(c.continuation=u.continuation),u.tool_calls!==void 0&&(c.tool_calls=u.tool_calls),u.tool_call_id!==void 0&&(c.tool_call_id=u.tool_call_id),Object.keys(c).length>0?[c]:[]})),a=Math.max(1,Math.floor(e.maxOutputTokens)),l=ah(e.provider,t);return{messageTokens:o,toolDefinitionTokens:s,continuationTokens:i,outputAllowanceTokens:a,safetyReserveTokens:l,projectedTokens:o+s+i+a+l,maxContextTokens:t,tokenSource:n.source,tokenModelFamily:n.modelFamily}}r(Cn,"estimateHostedRequestBudget");function Fc(e){if(Array.isArray(e)&&e.length===0)return 0;let t=JSON.stringify(e);return!t||t==="[]"||t==="{}"?0:Math.max(1,Math.ceil(t.length/qc))}r(Fc,"estimatedSerializedTokens");function ah(e,t){return t?Math.min(Math.max(1,Math.floor(t/8)),Math.max(jc,Math.ceil(t*.02))):jc*2}r(ah,"requestSafetyReserveTokens");function lh(e,t){if(!e||typeof e!="object")return null;let n=e;for(let o of t){let s=n[o];if(typeof s=="number"&&Number.isFinite(s)&&s>=0)return Math.round(s)}return null}r(lh,"numericUsageValue");function dh(e,t){let n=bd(e),o=n.promptTokens,s=n.completionTokens,i=lh(e,["total_tokens","totalTokens"]);return t?i!==null?i:o!==null&&s!==null?o+s:null:o??i}r(dh,"tokenCountFromUsage");function $c(e){let t=e.usage===void 0?null:dh(e.usage,!!e.includeCompletion),n=Fr({provider:e.provider,model:e.model,messages:e.messages}),o=t??n.tokens,s=e.maxContextTokens??dn({provider:e.provider,model:e.model});if(!s)throw new Error(`Cannot create context usage snapshot without a trusted context limit for ${e.provider}.`);let i=Math.min(100,Math.round(o/s*100));return dr.parse({provider:e.provider,model:e.model,usedTokens:o,maxContextTokens:s,usableContextTokens:bo(s),percentFull:i,source:t===null?n.source:"provider_usage",updatedAtEventId:e.updatedAtEventId})}r($c,"createContextUsageSnapshot");function ch(e,t){let n=`${e}/${t??""}`.toLowerCase();return/\b(?:gpt|o[1-9]|codex)\b/.test(n)?"openai_cl100k":n.includes("claude")||e==="anthropic"?"anthropic_claude":n.includes("deepseek")||n.includes("kimi")||n.includes("glm")?"multilingual_code":null}r(ch,"modelTokenFamily");function ki(e,t){if(!e)return 0;let n=[...e].filter(i=>/[\u3000-\u9fff\uf900-\ufaff]/u.test(i)).length,o=Math.max(0,e.length-n);return Math.max(1,n+Math.ceil(o/(t==="anthropic_claude"?3.85:t==="multilingual_code"?3.65:3.75)))}r(ki,"estimateModelFamilyTextTokens");import{randomUUID as uh}from"node:crypto";import{promises as Dc}from"node:fs";import qr from"node:path";var Hc=8e3;function Ii(e,t){if(!/^custom:[a-zA-Z0-9_-]+$/.test(t))throw new Error("Invalid custom personality identifier.");return qr.join(Sn(e).instructions,"personalities",`${t.slice(7)}.md`)}r(Ii,"personalityPath");function Ri(e,t){if(e.trim().length>Hc)throw new Un({code:"INVALID_INSTRUCTIONS",path:t??"personalization",message:`Personality text exceeds ${Hc} characters.`,action:"Shorten the personality text before using it."});return e.trim()}r(Ri,"validateText");async function ph(e){let t=qr.join(Sn(e).instructions,"personalities"),n=await Dc.readdir(t,{withFileTypes:!0}).catch(s=>{if(pl(s))return[];throw s}),o=[...ao];for(let s of n.sort((i,a)=>i.name.localeCompare(a.name))){if(!s.isFile()||!/^[a-zA-Z0-9_-]+\.md$/.test(s.name))continue;let i=qr.join(t,s.name),a=await io(i);a!==null&&o.push({id:`custom:${s.name.slice(0,-3)}`,name:s.name.slice(0,-3).replace(/[-_]+/g," "),source:"custom",description:"",content:Ri(a,i)})}return o}r(ph,"templatesWithFiles");async function mh(e,t){let{document:n}=await ur(t),o=await ph(t),s=n.personalization?.active??`builtin:${cr}`,i=s.startsWith("builtin:")?s.slice(8):s,a=o.find(u=>u.id===i);if(!a)throw new Un({code:"MISSING_PERSONALITY",path:s.startsWith("custom:")?Ii(t,s):Sn(t).config,message:`Selected personality ${s} is unavailable.`,action:"Restore its Markdown file or select an available personality in Settings."});let l=s.startsWith("custom:")?Ii(t,s):null;return xl.parse({activeTemplateId:i,customized:a.source==="custom",soul:n.personalization?.mode==="disabled"?"":a.content,soulPath:l,updatedAt:l?(await Dc.stat(l)).mtime.toISOString():null,templates:o})}r(mh,"loadPersonalizationSettings");async function qS(e,t,n){return await ar(qr.join(Sn(t).runtime,"personalization"),async()=>{let o=Ri(n.soul),s=ao.find(a=>a.id===n.activeTemplateId),i;if(!n.saveAsNew&&s&&o===s.content.trim())i=`builtin:${s.id}`;else{let a=n.templateName.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,56)||"custom";i=!n.saveAsNew&&n.activeTemplateId.startsWith("custom:")?n.activeTemplateId:`custom:${a}-${uh().slice(0,8)}`,await ml(Ii(t,i),`${o}
|
|
5
5
|
`)}await pr(t,a=>({...a,personalization:{...a.personalization,active:i}}))}),mh(e,t)}r(qS,"savePersonalizationSettings");function Lc(e,t){return[Ri(e),t.trim()].filter(Boolean).join(`
|
|
@@ -132,7 +132,7 @@ ${i}`,kind:"followup",reportingOnly:!0,idempotencyKey:`review:${o.turnId}:${o.ca
|
|
|
132
132
|
|
|
133
133
|
`)}r(Ss,"completionBody");var qk=2e4;function Ef(e){let t=e.requireSubagentDeps,n=e.sendTurn,o=e.getTurn,s=e.getPersistedRun,i=e.upsertPersistedRun,a=e.notifyRunStateChanged,l=e.latestTurnForSession,u=e.appendSubagentReceipt,c=e.subagentRuntimeDerivedProgress,h=e.subagentUsageAttribution,p=e.subagentUsageTotalsForRun,y=e.captureSubagentWorkspaceHandoff,x=e.applySubagentPatch,T=e.appendWorkspaceDiffEvent,m=e.uniqueSubagentRefs,w=e.notifyParentOfSubagentCompletion,C=e.commitCompletion,S={latestAssistantTextForSession:e.latestAssistantTextForSession},R=r(v=>new Promise(b=>setTimeout(b,v)),"delay");async function g(v){let b=t(),f=await b.getRun(v.run.id);if(f&&f.status!=="queued")return;let _=Y(),I=ye.parse({...f??v.run,status:"running",startedAt:_,progress:et.parse({...(f??v.run).progress??{},phase:"orient",latestMeaningfulActivity:"Child subagent turn started.",currentBlocker:null,updatedAt:_})});await b.upsertRun(I),await u({parentSession:v.parentSession,parentTurnId:v.parentTurnId,run:I,eventName:"subagent.started",status:"started",output:`${I.roleId} subagent is running.`}),await u({parentSession:v.parentSession,parentTurnId:v.parentTurnId,run:I,eventName:"subagent.progress",status:"pending",output:`${I.roleId} subagent is working in child conversation ${I.childSessionId??"unknown"}.`});let M=`failed_${I.id}`;try{let j=v.initialPrompt?.trim()||df({objective:v.run.objective,contextPack:v.contextPack});for(;;){let $=await d(v.childSession.id,v.run.id,{prompt:j,modelRef:v.run.modelRef??void 0,metadata:{subagentRunId:v.run.id,parentSessionId:v.parentSession.id,parentTurnId:v.parentTurnId,subagentRoleId:v.run.roleId,subagentPermissions:v.childTurnPermissions,usageAttribution:h(v.run)},usageAttribution:h(v.run),approvalPolicy:v.childTurnPermissions.approvalPolicy,sandbox:v.childTurnPermissions.sandbox,codexPermissionMode:v.childTurnPermissions.codexPermissionMode,codexReasoningEffort:v.childTurnPermissions.codexReasoningEffort},v.reservedTurnId),W=await k($);M=W.id;let U=await s(I.id);if(U?.status==="cancelled")return;if(I=U??I,W.status!=="completed")throw new Error(W.error||`Child turn ended with status ${W.status}.`);break}let N=Y(),q=await S.latestAssistantTextForSession(v.childSession.id),V=await p(v.run.id),B=await c({run:I,childSessionId:v.childSession.id,phase:"report",latestMeaningfulActivity:"Child conversation completed."}),z=await y(I),E=ve([...B.changedFiles,...z?.changedFiles??[]]),F=null;if(I=ye.parse({...I,status:"completed",completedAt:N,error:null,report:{summary:tt(q||"Child conversation completed.",qk),findings:[],artifacts:z?.artifacts??[],patchRef:z?.patchRef??null,diffRef:z?.diffRef??null,testsRun:B.validationAttempts.map($=>$.command),blockers:[],confidence:null,followUpNeeded:!1},progress:et.parse({...B,phase:"report",changedFiles:E,patchRefs:m([...B.patchRefs,z?.patchRef??null,z?.diffRef??null]),latestMeaningfulActivity:"Child conversation completed.",currentBlocker:null,updatedAt:N}),metadata:{...I.metadata,usage:V,...z?{workspaceHandoff:z.metadata}:{}}}),await i(I),z?.changed&&z.metadata.patchPath)try{let $=await x(I);$&&(I=ye.parse({...I,metadata:{...I.metadata,workspaceHandoff:{...z.metadata,applyResult:$}}}),await T(v.parentSession,v.parentTurnId).catch(()=>{}))}catch($){F=se($)||"Unable to apply the isolated child patch.",I=ye.parse({...I,status:"failed",error:F,report:{...I.report,blockers:[F],followUpNeeded:!0},progress:et.parse({...I.progress,latestMeaningfulActivity:"Child completed, but its isolated patch could not be integrated.",currentBlocker:F,updatedAt:Y()})})}await C(I,M),await u({parentSession:v.parentSession,parentTurnId:v.parentTurnId,run:I,eventName:F?"subagent.failed":"subagent.completed",status:F?"failed":"completed",output:F?`${I.roleId} child completed but integration failed: ${F}`:`${I.roleId} child completed.`}),await w({run:I,parentSession:v.parentSession,childSession:v.childSession,childTurnId:M,body:Ss(I),refs:m([...I.report?.artifacts??[],I.report?.patchRef??null,I.report?.diffRef??null])}),a?.(I)}catch(j){let N=await s(I.id).catch(()=>null);if(N&&N.status!=="running")return;let q=se(j)||"Subagent failed.",V=Y(),B=await y(I).catch(()=>null),z=!!(B?.changed||B?.artifacts.length),E=await c({run:I,childSessionId:v.childSession.id,phase:"report",latestMeaningfulActivity:z?"Child failed after producing recoverable artifacts.":"Child failed before producing a final report.",currentBlocker:q}),F=E.validationAttempts??[],$=ve([q,...E.currentBlocker?[E.currentBlocker]:[]]),W=ve([...E.changedFiles??[],...B?.changedFiles??[]]),U={summary:z?"Child conversation failed after producing recoverable artifacts.":"Child conversation failed before producing a final report.",findings:[],artifacts:B?.artifacts??[],patchRef:B?.patchRef??null,diffRef:B?.diffRef??null,testsRun:ve(F.map(te=>te.command)),blockers:$,confidence:"low",followUpNeeded:!0},J=et.parse({...E,phase:"report",changedFiles:W,patchRefs:m([...E.patchRefs??[],B?.patchRef??null,B?.diffRef??null]),latestMeaningfulActivity:z?"Child failed after producing recoverable artifacts.":"Child failed before producing a final report.",currentBlocker:q,updatedAt:V});I=ye.parse({...I,status:"failed",completedAt:V,error:q,report:U,progress:J,metadata:{...I.metadata??{},...B?{workspaceHandoff:B.metadata}:{}}}),await C(I,M),await u({parentSession:v.parentSession,parentTurnId:v.parentTurnId,run:I,eventName:"subagent.failed",status:"failed",output:z?`${I.roleId} subagent failed after producing recoverable artifacts: ${q}`:`${I.roleId} subagent failed: ${q}`}),await w({run:I,parentSession:v.parentSession,childSession:v.childSession,childTurnId:M,body:Ss(I),refs:m([...U.artifacts,U.patchRef,U.diffRef])}),a?.(I)}}r(g,"runSubagentChildTurn");async function d(v,b,f,_){let I=await l(v);return await new Promise((M,j)=>{let N=!1,q=null,V=r(E=>N||E.status==="in_progress"?!1:(N=!0,M(E),!0),"settleWithTurn"),B=r(E=>{N||(N=!0,j(E))},"fail");n(v,f,_).then(E=>{q=E.id,V(E)},B),r(async()=>{for(;!N;){let E=await l(v);if(N)return;let F=!!(E&&E.metadata?.subagentRunId===b&&(E.id!==I?.id||E.id===q));if(E&&F&&V(E))return;await R(250)}},"pollDurableTurn")().catch(B)})}r(d,"sendManagedSubagentTurn");async function k(v){let b=await Promise.race([l(v.sessionId),R(25).then(()=>null)]);if(b?.id===v.id&&b.status!=="in_progress")return b;if(v.status!=="in_progress")return v;let f=await o(v.id)??v;if(f.status!=="in_progress")return f;for(let _=0;_<200;_+=1)if(await R(250),f=await o(v.id)??f,f.status!=="in_progress")return f;return f}return r(k,"finalizedSubagentChildTurn"),{runSubagentChildTurn:g}}r(Ef,"createSubagentChildTurnRuntime");import{randomUUID as $k}from"node:crypto";function Of(e){let t=e.inbox,n=6e4,o=new Set,s=e.requireSubagentDeps,i=e.loadAppPreferences,a=e.getSession,l=e.appendSubagentReceipt,u=e.subagentWorkspaceTargetKeyForSession,c=e.subagentWorkspaceTargetKeyFromRun,h=e.subagentChildTurnPermissions,p=e.prepareSubagentWorkspaceIsolation,y=e.runSubagentChildTurn,x=e.subagentToolResultFromRun,T=e.subagentRoleLabel,m=e.interruptSessionTurn,w=e.cleanupSubagentRun,C=e.queueSubagentFollowupMessage,S=e.archiveSubagentChildSession,R=e.subagentLifecycleActionNextStep;async function g(I,M){if(I.session.subagentRunId)throw new Error("Child subagents cannot start additional subagents in this version.");let j=s(),N=await i();if(!N.subagents.enabled)throw new Error("Subagents are disabled in settings.");let q=N.subagents.roles.find(F=>F.id===M.roleId);if(!q?.enabled)throw new Error(`Subagent role ${M.roleId} is not enabled.`);let V=I.model?{providerId:I.provider,modelId:I.model}:null,B=q.modelRef??N.subagents.defaultModelRef??V??N.defaultChatModelRef??{providerId:N.defaultChatProvider,modelId:N.defaultChatModel},z=await u(I.session),E=q.toolPolicy!=="read_only";if(E&&o.has(z))throw new Error(`Another write-capable subagent is starting for ${z}.`);E&&o.add(z);try{let F=await j.listRuns({parentSessionId:I.session.id,status:["queued","running","needs_resume"],limit:1e3});if(F.length>=N.subagents.maxConcurrentRuns)throw new Error(`Subagent concurrency limit reached: ${F.length}/${N.subagents.maxConcurrentRuns} active child runs.`);let $=F.filter(Xe=>Xe.roleId===q.id);if($.length>=q.maxConcurrentRuns)throw new Error(`Subagent role ${q.id} concurrency limit reached: ${$.length}/${q.maxConcurrentRuns} active runs.`);let W=N.subagents.maxConcurrentRunsPerProvider;if(W!==null){let Xe=F.filter(_e=>_e.modelRef?.providerId===B.providerId);if(Xe.length>=W)throw new Error(`Subagent provider ${B.providerId} concurrency limit reached: ${Xe.length}/${W} active runs.`)}let U=N.subagents.maxConcurrentRunsPerWorkspaceTarget;if(U!==null&&E){let _e=(await j.listRuns({status:["queued","running","needs_resume"],limit:1e3})).filter(ke=>ke.toolPolicy!=="read_only"&&c(ke)===z);if(_e.length>=U)throw new Error(`Subagent workspace target concurrency limit reached: ${_e.length}/${U} active runs for ${z}.`)}let J=$k(),te=Y(),de=h(I.turnPermissions,q),ie=await p({parentSession:I.session,role:q,runId:J}),me=ie.sessionWorkspace??{},fe=M.context??null,we=lf({role:q,objective:M.objective,parentSession:I.session,contextPack:fe}),X={...G(me.metadata)??{},subagent:{runId:J,roleId:q.id,parentSessionId:I.session.id,parentTurnId:I.turnId,toolPolicy:q.toolPolicy,requestedIsolationMode:q.isolationMode,effectiveIsolationMode:ie.effectiveIsolationMode,workspace:ie.workspace,systemContext:we}},Ce=await j.createSession({experience:I.session.experience,provider:B.providerId,modelRef:B,openPondCommandAccessMode:I.session.openPondCommandAccessMode,hiddenFromDefaultSidebar:!0,parentSessionId:I.session.id,parentTurnId:I.turnId,subagentRunId:J,subagentRoleId:q.id,appId:I.session.appId,appName:I.session.appName,workspaceKind:me.workspaceKind??I.session.workspaceKind,workspaceId:me.workspaceId??I.session.workspaceId,workspaceName:me.workspaceName??I.session.workspaceName,localProjectId:me.localProjectId??I.session.localProjectId,cloudProjectId:me.cloudProjectId??I.session.cloudProjectId,cloudTeamId:me.cloudTeamId??I.session.cloudTeamId,currentProfile:I.session.currentProfile??null,cwd:ie.cwd??I.session.cwd,title:`${T(q)}: ${M.objective.slice(0,72)}`,metadata:X}),ae=ie.blocker,Fe=ye.parse({id:J,parentSessionId:I.session.id,parentTurnId:I.turnId,childSessionId:Ce.id,roleId:q.id,objective:M.objective,modelRef:B,isolationMode:q.isolationMode,toolPolicy:q.toolPolicy,background:q.background,peerMessages:q.peerMessages,status:ae?"failed":"queued",progress:et.parse({phase:ae?"report":"orient",currentBlocker:ae,latestMeaningfulActivity:ae?"Child failed before execution because isolation is unavailable.":"Child run created.",updatedAt:te}),createdAt:te,startedAt:null,completedAt:ae?te:null,error:ae,report:ae?{summary:"Child could not start because write-capable isolation is unavailable.",blockers:[ae],followUpNeeded:!0}:null,metadata:{context:fe,childTurnPermissions:de,concurrency:{providerId:B.providerId,providerMaxConcurrentRuns:W,workspaceTargetKey:z,workspaceTargetMaxConcurrentRuns:U},subagentWorkspace:ie.workspace}});return await j.upsertRun(Fe),await l({parentSession:I.session,parentTurnId:I.turnId,run:Fe,childSession:Ce,eventName:ae?"subagent.failed":"subagent.started",status:ae?"failed":"pending",output:ae?`Child ${q.id} failed to start: ${ae}`:`Started ${q.id} subagent.`}),!ae&&q.background&&j.queue.enqueue({label:`${q.id}: ${M.objective.slice(0,80)}`,metadata:{runId:J,childSessionId:Ce.id,parentSessionId:I.session.id}},()=>y({run:Fe,role:q,childSession:Ce,parentSession:I.session,parentTurnId:I.turnId,contextPack:fe,childTurnPermissions:de})),x(Fe,ae?"Open the child conversation or wait for workspace isolation support before retrying write-capable work.":"Subagent queued in its own child conversation. Continue useful parent work or wait for its completion notification.")}finally{E&&o.delete(z)}}r(g,"startSubagentFromModelTool");async function d(I,M){let j=s(),N=M.runId?[await j.getRun(M.runId)].filter(q=>!!q):await j.listRuns({parentSessionId:I.session.id,limit:50});for(let q of N)qo(I.session,q);return{runs:N.map(q=>x(q,"Subagent status loaded.")),nextStep:N.length===0?"No matching subagent runs.":`Loaded ${N.length} subagent run${N.length===1?"":"s"}.`}}r(d,"statusSubagentsFromModelTool");async function k(I,M){let j=s(),N=await j.getRun(M.runId);if(!N)throw new Error(`Subagent run ${M.runId} was not found.`);return qo(I.session,N),(M.inputId||N.status==="queued"||N.status==="running")&&N.childSessionId&&(await t.wait({sessionId:I.session.id,turnId:I.turnId,callId:I.callId,targetSessionId:N.childSessionId,targetInputId:M.inputId??void 0,timeoutMs:n,signal:I.signal}),N=await j.getRun(M.runId)??N),N.status!=="queued"&&N.status!=="running"&&(N=ye.parse({...N,metadata:{...N.metadata??{},completionConsumedByParent:{at:Y(),parentSessionId:I.session.id,parentTurnId:I.turnId,childCompletedAt:N.completedAt}}}),await j.upsertRun(N)),x(N,N.status==="completed"?"Child completed; use its final result or inspect the child conversation.":N.status==="queued"||N.status==="running"?"Child is still running. Do independent work, or wait again when blocked. Its completion report will arrive in the task inbox.":`Child ended with status ${N.status}; inspect its result before deciding the next action.`)}r(k,"joinSubagentFromModelTool");async function v(I,M){let j=s(),N=await j.getRun(M.runId);if(!N)throw new Error(`Subagent run ${M.runId} was not found.`);if(qo(I.session,N),N.status==="completed")return x(N,"Subagent already completed; no cancellation was applied.");if(N.status==="cancelled")return x(N,"Subagent was already cancelled.");let q=M.reason?.trim()||"Subagent cancelled by request.",V=Y(),B=ye.parse({...N,status:"cancelled",completedAt:V,error:q,report:{...N.report??{},summary:N.report?.summary||"Subagent cancelled before completion.",blockers:ve([...N.report?.blockers??[],q]),followUpNeeded:!1},metadata:{...N.metadata??{},cancellation:{reason:q,cancelledAt:V,requestedBySessionId:I.session.id,requestedByTurnId:I.turnId}}});await j.upsertRun(B);let z=null;if(N.childSessionId)try{let $=await m(N.childSessionId);z={status:$.status,turnId:$.id}}catch($){z={status:"not_active",error:se($)||"No active child turn to interrupt."}}let E=M.cleanupWorkspace===!1?{status:"skipped",reason:"cleanupWorkspace was false"}:null;if(M.cleanupWorkspace!==!1){let $=await w({run:B,parentSession:I.session,parentTurnId:I.turnId,reason:"cancel_requested",policy:"cancel_requested"});B=$.run,E=$.workspaceCleanup}B=ye.parse({...B,metadata:{...B.metadata??{},cancellation:{...G(B.metadata?.cancellation)??{},interruptResult:z,workspaceCleanup:E}}}),await j.upsertRun(B);let F=N.parentSessionId===I.session.id?I.session:await a(N.parentSessionId).catch(()=>I.session);return await l({parentSession:F,parentTurnId:N.parentTurnId??I.turnId,run:B,eventName:"subagent.cancelled",status:"failed",output:`${N.roleId} subagent cancelled: ${q}`}),x(B,E?.status==="removed"?"Subagent cancelled and isolated workspace cleanup completed.":"Subagent cancelled.")}r(v,"cancelSubagentFromModelTool");async function b(I,M){let N=await s().getRun(M.runId);if(!N)throw new Error(`Subagent run ${M.runId} was not found.`);if(qo(I.session,N),!N.childSessionId)throw new Error(`Subagent run ${N.id} has no child conversation.`);if(N.status==="cancelled")throw new Error(`Subagent run ${N.id} is ${N.status} and cannot receive a follow-up.`);let q=await C({context:I,run:N,body:M.message});return{...x(N,"Follow-up saved in the task inbox. Pass taskInputId as inputId when joining this assignment."),taskInputId:q.id}}r(b,"followupSubagentFromModelTool");async function f(I,M){let j=kl.parse(M),q=await s().getRun(I);if(!q)throw new Error(`Subagent run ${I} was not found.`);let V=await a(q.parentSessionId),B=j.reason??`Manual subagent ${j.action} requested.`,z=q,E=null,F=null;if(j.action==="cleanup"||j.action==="cleanup_and_archive"){let $=await w({run:z,parentSession:V,parentTurnId:z.parentTurnId??null,reason:B,policy:"manual_cleanup"});z=$.run,E=$.workspaceCleanup}if(j.action==="archive"||j.action==="cleanup_and_archive"){let $=await S({parentSession:V,parentTurnId:z.parentTurnId??null,run:z,reason:B,policy:"manual_archive"});z=$.run,F=$.sessionArchive}return{action:j.action,run:z,workspaceCleanup:E,sessionArchive:F,nextStep:R(j.action,E,F)}}r(f,"runSubagentLifecycleAction");async function _(I,M={}){let j=G(M)??{},q=await s().getRun(I);if(!q)throw new Error(`Subagent run ${I} was not found.`);let V=await a(q.parentSessionId),B=H(j,"checkedAt")??Y(),z=H(j,"reason")??`Retained subagent workspace retention expired at ${B}.`,E=await w({run:q,parentSession:V,parentTurnId:q.parentTurnId??null,reason:z,policy:"retention_expired"});return{action:"cleanup",run:E.run,workspaceCleanup:E.workspaceCleanup,sessionArchive:null,nextStep:R("cleanup",E.workspaceCleanup,null)}}return r(_,"cleanupExpiredRetainedSubagentWorkspace"),{cancelSubagentFromModelTool:v,cleanupExpiredRetainedSubagentWorkspace:_,followupSubagentFromModelTool:b,joinSubagentFromModelTool:k,runSubagentLifecycleAction:f,startSubagentFromModelTool:g,statusSubagentsFromModelTool:d}}r(Of,"createSubagentToolRuntime");function Mf(e){async function t(o){if(!o.run.childSessionId)return{run:o.run,sessionArchive:{status:"missing_child_session"}};let s;try{let l=await e.getSession(o.run.childSessionId);l.archived||await e.updateSession(l.id,{archived:!0}),s={status:l.archived?"already_archived":"archived",archivedAt:Y()}}catch(l){s={status:"failed",error:se(l)||"Failed to archive child conversation."}}let i=await e.getRun(o.run.id)??o.run,a=ye.parse({...i,metadata:{...i.metadata??{},childSessionArchive:{...s,reason:o.reason,policy:o.policy}}});return await e.upsertRun(a),await e.appendSubagentReceipt({parentSession:o.parentSession,parentTurnId:o.parentTurnId,run:a,eventName:"subagent.archived",status:s.status==="failed"?"failed":"completed",output:s.status==="failed"?`Failed to archive ${a.roleId} child conversation.`:`Archived ${a.roleId} child conversation.`}),{run:a,sessionArchive:s}}r(t,"archiveSubagentChildSession");function n(o,s,i){return o==="cleanup"?s?"Child workspace cleanup finished.":"No child workspace cleanup was needed.":o==="archive"?i?"Child conversation archive finished.":"No child conversation was available to archive.":"Child workspace cleanup and conversation archive finished."}return r(n,"subagentLifecycleActionNextStep"),{archiveSubagentChildSession:t,subagentLifecycleActionNextStep:n}}r(Mf,"createSubagentLifecycleRuntime");function Nf(e){function t(){return!!(e.createSession&&e.queue&&e.upsertRun&&e.getRun&&e.listRuns&&e.appendMessage&&e.listUsageRecords)}r(t,"available");async function n(i){if(!e.upsertRun)throw new Error("Subagent runtime dependencies are not available.");let a=await e.upsertRun(i);return e.notifyRunStateChanged?.(a),a}r(n,"upsertRunAndNotify");function o(){if(!e.createSession||!e.queue||!e.upsertRun||!e.getRun||!e.listRuns||!e.appendMessage||!e.listUsageRecords)throw new Error("Subagent runtime dependencies are not available.");return{createSession:e.createSession,queue:e.queue,upsertRun:n,getRun:e.getRun,listRuns:e.listRuns,appendMessage:e.appendMessage,listUsageRecords:e.listUsageRecords}}r(o,"requireDependencies");async function s(i){await e.appendRuntimeEvent(L({sessionId:i.parentSession.id,turnId:i.parentTurnId??void 0,name:i.eventName,source:"server",appId:i.parentSession.appId,status:i.status,output:i.output,data:{run:i.run,childSessionId:i.run.childSessionId,...i.childSession?{childSession:Hk(i.childSession)}:{}}}))}return r(s,"appendReceipt"),{appendReceipt:s,available:t,requireDependencies:o,upsertRunAndNotify:n}}r(Nf,"createSubagentRepositoryRuntime");function Hk(e){let{metadata:t,...n}=e;return n}r(Hk,"sessionShell");function jf(e,t){return{runId:e.id,childSessionId:e.childSessionId,roleId:e.roleId,status:e.status,modelRef:e.modelRef,isolationMode:e.isolationMode,toolPolicy:e.toolPolicy,background:e.background,peerMessages:e.peerMessages,progress:e.progress,report:e.report,nextStep:t}}r(jf,"subagentToolResultFromRun");function Ff(e){return e.id.slice(0,1).toUpperCase()+e.id.slice(1).replace(/[-_]+/g," ")}r(Ff,"subagentRoleLabel");function qf(e){let t=new Set,n=[];for(let o of e){if(!o)continue;let s=`${o.kind}:${o.id}`;t.has(s)||(t.add(s),n.push(o))}return n}r(qf,"uniqueSubagentRefs");function $f(e){return Dk(e)??Lk(e)}r($f,"authoringCommandRoute");function Hf(e){if(e.target.kind!=="agent"||e.operation!=="create"&&e.operation!=="improve")return null;let t=e.operation==="improve"?Lo(e.target.id??""):null;if(e.operation==="improve"&&!t)throw new Error("Agent improve requires an exact target Agent ID.");return{skillName:"openpond-agent-authoring",intent:{artifact:"agent",operation:e.operation,objective:e.objective.trim()||(e.operation==="create"?"Create a source-backed Profile Agent.":`Improve the Profile Agent ${t}.`),targetAgentId:t,source:"authoring_entry"}}}r(Hf,"authoringCommandRouteFromLegacyAgentRun");function Dk(e){let t=/^\/skill(?:\s+([\s\S]*))?$/i.exec(e.trim());if(!t)return null;let n=t[1]?.trim()??"";if(!n)return null;let[o="",...s]=n.split(/\s+/),i=o.toLowerCase();if(i==="list"||i==="help")return null;if(i==="edit"){let[u="",...c]=s,h=Lo(u.replace(/^\$/,""));if(!h)throw new Error("/skill edit requires an exact lowercase kebab-case Skill name.");return{skillName:"openpond-skill-authoring",intent:{artifact:"skill",operation:"edit",objective:c.join(" ").trim()||`Improve the Profile skill ${u||"selected by the user"}.`,targetSkillName:h,source:"slash_command"}}}let a=i==="create"?s.join(" ").trim():n,l=Bk(a);return{skillName:"openpond-skill-authoring",intent:{artifact:"skill",operation:"create",objective:l.objective||"Create a reusable Profile skill from the current conversation.",targetSkillName:l.name,source:"slash_command"}}}r(Dk,"skillAuthoringRoute");function Lk(e){let t=/^\/agent(?:\s+([\s\S]*))?$/i.exec(e.trim());if(!t)return null;let n=t[1]?.trim()??"",[o="",...s]=n.split(/\s+/),i=o.toLowerCase();if(i==="help"||i==="list")return null;if(i==="improve"||i==="edit"){let[l="",...u]=s,c=Lo(l);if(!c)throw new Error("/agent improve requires an exact lowercase kebab-case Agent ID.");return{skillName:"openpond-agent-authoring",intent:{artifact:"agent",operation:"improve",objective:u.join(" ").trim()||`Improve the Profile Agent ${l||"selected by the user"}.`,targetAgentId:c,source:"slash_command"}}}return{skillName:"openpond-agent-authoring",intent:{artifact:"agent",operation:"create",objective:(i==="create"?s.join(" ").trim():n)||"Create a source-backed Profile Agent from the current conversation.",targetAgentId:null,source:"slash_command"}}}r(Lk,"agentAuthoringRoute");function Bk(e){let t=e.trim(),n=/^--name\s+([a-z][a-z0-9-]*)\s+([\s\S]+)$/i.exec(t);if(n)return{name:Lo(n[1]??""),objective:n[2]?.trim()??""};let o=/^([a-z][a-z0-9-]*):\s*([\s\S]+)$/.exec(t);return o?{name:Lo(o[1]??""),objective:o[2]?.trim()??""}:{name:null,objective:t}}r(Bk,"splitOptionalSkillName");function Lo(e){let t=e.trim().toLowerCase();return/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/.test(t)?t:null}r(Lo,"normalizePackageId");function zk(e,t){return t?.interactionKind!=="steer"?e:["[Steering instruction for an interrupted response]","Change the response direction immediately. Treat the instruction below as a correction to the response that was in progress, not as an unrelated new request.",e].join(`
|
|
134
134
|
|
|
135
|
-
`)}r(zk,"promptWithSteeringContext");function gj(e){let{attachmentRootDir:t,store:n,resolveCreateImproveTaskset:o,gradeCreateImproveTaskAttempt:s,upsertApproval:i,createSession:a,getSession:l,updateSession:u,completeTurn:c,failTurn:h,interruptTurn:p,defaultSessionCwd:y,findOpenPondApp:x,resolveSessionWorkspaceCwd:T,ensureCodexRuntime:m,appendWorkspaceDiffEvent:w,workspaceDiffBaseline:C,appendRuntimeEvent:S,processHarnessImprovementBoundary:R,executeWorkspaceTool:g,forkSandboxForSubagent:d,cleanupSandboxForSubagent:k,finalizeWorkTurn:v,workInputsForSession:b,executeOpenPondCommand:f,executeProfileAction:_,executeProjectAction:I,executeChatResourceAction:M,executeDatasetBuilderAction:j,loadOpenPondProfileState:N,loadOpenPondProfileStateForRef:q,readOpenPondProfileSkill:V,loadSelectedHarnessRuntime:B,ensureHarnessRunOverlay:z,loadOpenPondExtensionCatalog:E,readOpenPondExtensionSkill:F,executeProfileSkillCommand:$,executeWebSearch:W,createScheduledWork:U,executeConnectedAppTool:J,htmlVisuals:te,browserToolExecutor:de,manageSidebarFile:ie,listIntegrationConnections:me,loadPersonalizationSoul:fe,loadAppPreferences:we=r(async()=>Rl.parse({}),"loadAppPreferences"),loadProviderSettings:X,maybeCreateScaffoldForTurn:Ce,hostedSystemPrompt:ae,appendAssistantText:Fe,appendHostedContextUsage:Xe,streamLocalByokChatTurn:_e,streamOpenPondHostedChatTurn:ke=Kn,runLocalCreatePipelineChecks:Bo,planCreateImprove:Gt,turnFollowUpQueue:hn,subagentQueue:Le,notifySubagentRunStateChanged:to,maxHostedWorkspaceToolRounds:Xt,maxRepeatedInvalidToolRequests:Qt}=e,Me=e.inboxStore??n,Dn=Bm(e.storageHome??t),rt=ma(e.hostedToolFlags),Qe=new bs,pe=Nm({prepareInputAttachments:ap({storageHome:e.storageHome??t,attachmentRootDir:t}),store:Me,getSession:l,listSessions:r(()=>n.sessionShells(),"listSessions"),getTurn:r(A=>n.getTurn(A),"getTurn"),latestTurn:r(A=>n.latestTurnForSession(A),"latestTurn"),recoverInterruptedTurn:r(async(A,Q)=>{(await n.getTurn(Q))?.status==="in_progress"&&await p(await l(A),Q,"The local app server restarted before this turn finished. Pending inputs are preserved. Review completed tool activity, then resume this chat to continue.")},"recoverInterruptedTurn"),getSubagentRun:r(A=>n.getSubagentRun?n.getSubagentRun(A):Promise.resolve(null),"getSubagentRun"),getActiveTurn:r(A=>Qe.get(A),"getActiveTurn"),appendRuntimeEvent:S,startFollowup:r(async(A,Q,oe,re)=>{let be=await l(A),D=Dt.parse(Q);if(!be.subagentRunId){if(re.senderKind==="user")return Vo(A,D,oe,re.payload.remoteDevice?{beforeExecute:r(async jt=>{pi(re,jt)},"beforeExecute")}:void 0);let Ct=await n.latestTurnForSession(A),lt=re.payload.localPonderExecutionPermissions??Ct?.metadata.taskExecutionPermissions??{approvalPolicy:"on-request",sandbox:"read-only",codexPermissionMode:"default"};return Vo(A,{...D,...lt,...gn(re)||re.payload.taskReportingOnly===!0?{sandbox:"read-only",approvalPolicy:"never",codexPermissionMode:"default"}:{}},oe,re.senderKind==="ponder"?{beforeExecute:r(async jt=>{ac(re,jt),await Oa(an.parse(re.payload.ponderDesktop).operation,jt,n,Dn),pi(re,jt)},"beforeExecute")}:re.payload.localPonderHostedResult?{beforeExecute:r(async()=>{if(!e.localPonderHosted)throw new Error("local_ponder_hosted_unavailable");await e.localPonderHosted.assertCompletionScope(re.payload.localPonderHostedResult)},"beforeExecute")}:re.payload.localPonderControlRevision!==void 0?{beforeExecute:r(async()=>{await Me.assertLocalPonderInput?.(re)},"beforeExecute")}:void 0)}let ee=await Ga({session:be,request:D,requestedTurnPermissions:Ko(D)});if(!ee||ee.run.status==="cancelled")throw new Error("Child follow-up is unavailable.");let at={...ee.run,status:"queued",completedAt:null,error:null,report:null,metadata:{...ee.run.metadata,completionConsumedByParent:null}};await Pt().upsertRun(at),await Xa({run:at,role:ee.role,childSession:be,parentSession:await l(at.parentSessionId),parentTurnId:at.parentTurnId??oe,contextPack:typeof at.metadata.context=="string"?at.metadata.context:null,childTurnPermissions:ee.turnPermissions,initialPrompt:D.prompt,reservedTurnId:oe});let O=await n.getTurn(oe);if(!O)throw new Error("Child follow-up did not start.");return O},"startFollowup"),dispatchFollowup:r(async(A,Q)=>{let oe=await hn.enqueue({label:"Task inbox follow-up",metadata:{sessionId:A}},Q).done;if(oe.status==="failed")throw new Error(oe.error??"Task follow-up failed.")},"dispatchFollowup"),yieldWhileWaiting:r(A=>hn.yieldWhileWaiting(()=>Le?Le.yieldWhileWaiting(A):A()),"yieldWhileWaiting")}),xt=Km(pe,{input:r(A=>Me.getTaskInput(A),"input"),readSource:r(async(A,Q,oe,re)=>{if(await Oa(A,Q,n,Dn),!A.workflow?.source)throw new Error("The verified workflow source is not available yet.");return Dn.inspect(A.workflow.source,oe,re)},"readSource")}),ue=[...e.localPonderHosted?ep(e.localPonderHosted):[],...tp(n),...op({store:Me,inbox:pe,createSession:a,createReservedSession:e.createReservedSession,projects:e.localPonderProjects,settings:e.localPonderProviderSettings??X,getSession:l,sessions:r(()=>n.sessionShells(),"sessions"),transcript:r(async(A,Q)=>{if(!n.runtimeEventPageRows)throw new Error("local_ponder_history_unavailable");let oe=await n.runtimeEventPageRows({sessionId:A,afterSequence:0,beforeSequence:Q??Number.MAX_SAFE_INTEGER,limit:100});return{turn:await n.latestTurnForSession(A),latestAssistantText:await n.latestAssistantTextForSession(A),events:oe.entries.map(re=>re.event),nextBeforeSequence:oe.remainingMatchingEvents>oe.entries.length?oe.entries[0]?.sequence??null:null}},"transcript"),stop:r(A=>xs(A),"stop")})],Ee=Kp({listIntegrationConnections:me,appendRuntimeEvent:S}),Ae=vs({upsert:n.upsertModelUsageRecord?A=>n.upsertModelUsageRecord(A):null,appendRuntimeEvent:S});async function Ne(A){if(!(!R||!A.turn.harnessSnapshot||A.session.metadata?.standaloneExperiment!==void 0||A.session.metadata?.localProfileExperiment!==void 0||A.session.metadata?.profileEvaluationRun!==void 0))try{await R(A)}catch(Q){await S(L({sessionId:A.session.id,turnId:A.turn.id,name:"diagnostic",source:"server",appId:A.session.appId,status:"failed",output:Q instanceof Error?Q.message:String(Q),data:{phase:"harness_improvement_boundary"}})).catch(()=>{})}}r(Ne,"processHarnessImprovementBoundarySafely");async function Tt(A){return n.getTurn(A)}r(Tt,"getStoredTurn");function Yt(A){return os(rt,A)}r(Yt,"nativeToolsEnabledForProvider");function st(A){return de?.available({sessionId:A.id,conversationId:A.id})??!1}r(st,"browserControlAvailable");function wn(A){return Yt(A)&&rt.dynamicActionTools?"native_tool":Vt(rt,A)==="full_text_fallback"?"text_fallback":"none"}r(wn,"actionCatalogInstructionModeForProvider");async function it(A){await n.insertTurn(A)}r(it,"insertStoredTurn");async function Nt(A,Q){return n.updateTurn(A,Q)}r(Nt,"updateStoredTurn");let{activeInProgressTurn:Ke,findInProgressTurn:Wo,interruptActiveTurn:Rs,interruptedError:Bf,interruptSessionTurn:xs,throwIfInterrupted:Zt,turnWasInterrupted:Wf}=rf({activeTurns:Qe,getSession:l,getTurn:Tt,latestTurnForSession:r((A,Q)=>n.latestTurnForSession(A,Q),"latestTurnForSession"),interruptTurn:p}),Uo=af({activeTurns:Qe,interruptActiveTurn:Rs,jobRegistries:[],queues:[hn,...Le?[Le]:[]]}),zo=Nf({createSession:a,queue:Le,upsertRun:n.upsertSubagentRun?A=>n.upsertSubagentRun(A):void 0,getRun:n.getSubagentRun?A=>n.getSubagentRun(A):void 0,listRuns:n.listSubagentRuns?A=>n.listSubagentRuns(A):void 0,appendMessage:n.appendSubagentMessage?A=>n.appendSubagentMessage(A):void 0,listUsageRecords:n.listModelUsageRecords?A=>n.listModelUsageRecords(A):void 0,notifyRunStateChanged:r(A=>{to?.(A),A.childSessionId&&pe.wake(A.childSessionId)},"notifyRunStateChanged"),appendRuntimeEvent:S}),za=zo.available,Pt=zo.requireDependencies,Uf=zo.upsertRunAndNotify,Ln=zo.appendReceipt,Ts=nf(e),Ka=Ic(async()=>{let[{createCreateImproveRuntime:A},{createCreateImproveTurnHandler:Q}]=await Promise.all([import("./runtime-UDLOZD4Y.js"),import("./send-turn-4MH4WMLW.js")]),oe=A({getSession:l,getTurn:Tt,updateTurn:Nt,getCreateImproveRun:r(re=>n.getCreateImproveRun(re),"getCreateImproveRun"),listCreateImproveRuns:r(re=>n.listCreateImproveRuns(re),"listCreateImproveRuns"),upsertCreateImproveRun:r(re=>n.upsertCreateImproveRun(re),"upsertCreateImproveRun"),mutateCreateImproveRun:r((re,be)=>n.mutateCreateImproveRun(re,be),"mutateCreateImproveRun"),getApproval:r(re=>n.getApproval(re),"getApproval"),upsertApproval:i,appendRuntimeEvent:S,ensureCodexRuntime:m,runLocalCreatePipelineChecks:Bo,planCreateImprove:Gt,turnFollowUpQueue:hn,streamLocalByokChatTurn:_e,streamOpenPondHostedChatTurn:ke,upsertModelUsageRecord:Ae,resolveTaskset:o,gradeTaskAttempt:s});return{...oe,handleCreateImproveTurn:Q({appendRuntimeEvent:S,completeTurn:c,planCreateImproveForTurn:oe.planCreateImproveForTurn,persistCreateImproveRun:oe.persistCreateImproveRun}),async close(){}}}),{applyCreateImproveActionPayload:zf,getCreateImproveRun:Kf,listCreateImproveRuns:Vf,persistCreateImprovePlanningFailure:Jf,resolveCreateImproveApproval:Gf,handleCreateImproveTurn:Xf}=Ka.methods(["applyCreateImproveActionPayload","getCreateImproveRun","listCreateImproveRuns","persistCreateImprovePlanningFailure","resolveCreateImproveApproval","handleCreateImproveTurn"]),Qf=of({appendRuntimeEvent:S,completeTurn:c}),{prepareHostedProviderRequest:Yf,closePonderHistory:Zf}=vm({ponderHistoryStore:n,sessionForPonderHistory:l,getPonderHistoryCredential:e.getPonderHistoryCredential,streamPonderHistorySummary:r(async function*(A){if(A.provider==="openpond"){let Q=await e.resolveSessionModelStream?.(A.session,A.turn)??ke;for await(let oe of Q({model:A.model,messages:A.messages,requestId:A.requestId,maxTokens:700,reasoningEffort:Oo({provider:A.provider,model:A.model,selected:void 0,settings:await(e.localPonderProviderSettings??X)?.()}),signal:A.signal}))oe.type==="text_delta"&&(yield{text:oe.text,raw:oe.raw}),oe.type==="usage"&&(yield{usage:oe.usage,raw:oe.raw}),oe.type==="finish"&&(yield{finishReason:oe.finishReason,raw:oe.raw})}else{if(!_e)throw new Error("ponder_history_provider_unavailable");for await(let Q of _e({providerId:A.provider,modelId:A.model,messages:A.messages,requestId:A.requestId,maxOutputTokens:700,expectedPonderHistoryCredential:A.expectedCredential,signal:A.signal??new AbortController().signal}))yield Q}},"streamPonderHistorySummary"),loadAppPreferences:we,appendRuntimeEvent:S,runtimeEventsForSession:r((A,Q)=>n.runtimeEventsForSession(A,Q),"runtimeEventsForSession"),streamOpenPondHostedChatTurn:ke,resolveSessionModelStream:e.resolveSessionModelStream,upsertModelUsageRecord:Ae,throwIfInterrupted:Zt,interruptedError:Bf}),{appendProfileSkillEvent:eg,executeNativeToolCalls:tg,explicitProfileSkillNames:ng,profileSkillBodyFromReadResult:og,readProfileSkillForModel:rg}=km({authorizeCandidateTool:e.authorizeCandidateTool,hasPendingSteering:r(async(A,Q)=>(await Me.pendingTaskInputs(A,Q)).some(oe=>oe.kind==="steer"),"hasPendingSteering"),maxRepeatedInvalidToolRequests:Qt,appendRuntimeEvent:S,throwIfInterrupted:Zt}),{loadProfileSkillRuntime:sg,preloadExplicitProfileSkills:ig,profileSkillInstructionModeForProvider:Ps}=Vm({loadProfileState:q?A=>q(A.currentProfile):N?()=>N():void 0,readProfileSkill:V,loadBuiltInSkills:e.loadBuiltInOpenPondSkills,readBuiltInSkill:e.readBuiltInOpenPondSkill,loadExtensionCatalog:E,readExtensionSkill:F,appendRuntimeEvent:S,nativeToolsEnabledForProvider:Yt,hostedToolFlags:rt,appendProfileSkillEvent:eg,explicitProfileSkillNames:ng,profileSkillBodyFromReadResult:og,throwIfInterrupted:Zt}),{runHostedToolLoop:Va}=Om({candidateAuthoringForTurn:e.candidateAuthoringForTurn,isolatedProfileEvaluationForTurn:e.isolatedProfileEvaluationForTurn,authorizeCandidateTool:e.authorizeCandidateTool,taskInbox:pe,inboxStore:Me,resolveModelTools:e.resolveModelTools,assertExecutionAllowed:r(A=>es(e.storageHome,A),"assertExecutionAllowed"),hostedToolFlags:rt,nativeToolsEnabledForProvider:Yt,createNativeModelToolDefinitions:Og,profileSkillInstructionModeForProvider:Ps,subagentToolsAvailable:za,runtimeEventsForSession:r((A,Q)=>n.runtimeEventsForSession(A,Q),"runtimeEventsForSession"),getSession:l,recordTurnToolCatalog:r(async({turnId:A,hash:Q,capabilities:oe})=>{let re=await Tt(A),be=re?(await n.runtimeEventsForSession(re.sessionId,{names:["session.compaction.completed"],limit:1e3,excludeReasoningDeltas:!0})).filter(ee=>ee.turnId===A).at(-1)??null:null,D=be?.data&&typeof be.data=="object"&&!Array.isArray(be.data)?be.data:null;await n.updateTurn(A,ee=>{let at=gd.parse({protocolVersion:kr,threadId:ee.sessionId,turnId:ee.id,harnessReleaseHash:ee.harnessSnapshot?.harnessRelease.contentHash??Tn({harnessRelease:null}),toolCatalogHash:Q,context:{stage:"tool_catalog_ready",provider:ee.modelRef?.providerId??null,model:ee.modelRef?.modelId??null,compaction:D?{eventId:be?.id??null,compactedThroughEventId:D.compactedThroughEventId??null,compactedThroughTurnId:D.compactedThroughTurnId??null,summaryHash:typeof D.summary=="string"?Tn(D.summary):null}:null},pendingInteraction:null,usage:{}});return{...ee,metadata:{...ee.metadata,toolCatalogHash:Q,toolCapabilities:oe,agentCheckpoint:at,agentCheckpointHash:hd(at)},harnessSnapshot:ee.harnessSnapshot?{...ee.harnessSnapshot,toolCatalogHash:Q}:ee.harnessSnapshot}})},"recordTurnToolCatalog"),getTaskset:n.getTaskset?A=>n.getTaskset(A):void 0,appendHostedContextUsage:Xe,maxHostedWorkspaceToolRounds:Xt,maxRepeatedInvalidToolRequests:Qt,appendRuntimeEvent:S,upsertModelUsageRecord:Ae,executeNativeToolCalls:tg,readProfileSkillForModel:rg,executeWorkspaceTool:g,appendAssistantText:Fe,prepareHostedProviderRequest:Yf,throwIfInterrupted:Zt}),{captureSubagentWorkspaceHandoff:ag,cleanupSubagentRun:Ja,prepareSubagentWorkspaceIsolation:lg,subagentWorkspaceTargetKeyForSession:dg,subagentWorkspaceTargetKeyFromRun:cg}=vf({attachmentRootDir:t,resolveSessionWorkspaceCwd:T,forkSandboxForSubagent:d,cleanupSandboxForSubagent:k,appendSubagentReceipt:Ln,requireSubagentPersistence:r(()=>({upsertRun:Pt().upsertRun}),"requireSubagentPersistence")}),{finalizeSubagentContinuationTurn:ug,markSubagentContinuationRunning:pg,prepareSubagentContinuationTurn:Ga,subagentChildTurnPermissions:mg,subagentRuntimeDerivedProgress:fg,subagentUsageAttribution:gg,subagentUsageTotalsForRun:hg,turnPermissionsFromSendTurnInput:Ko}=Cf({requireSubagentDeps:Pt,runtimeEventsForSession:n.persistedRuntimeEventsForSession?(A,Q)=>n.persistedRuntimeEventsForSession(A,Q):(A,Q)=>n.runtimeEventsForSession(A,Q),latestAssistantTextForSession:r(A=>n.latestAssistantTextForSession(A),"latestAssistantTextForSession"),loadAppPreferences:we,getTurn:Tt,getSession:l,appendSubagentReceipt:Ln}),{queueSubagentFollowupMessage:wg,sendSubagentMessageFromModelTool:bg}=_f({inbox:pe,requireSubagentDeps:Pt,appendRuntimeEvent:S}),{notifyParentOfSubagentCompletion:vg,recoverPendingCompletions:yg,close:kg}=Af({inbox:pe,store:Me,appendMessage:r(A=>Pt().appendMessage(A),"appendMessage"),getSession:l,appendRuntimeEvent:S}),{resolveSubagentPatchApplyApproval:Sg}=bf({getApproval:r(A=>n.getApproval(A),"getApproval"),getSubagentRun:n.getSubagentRun?A=>n.getSubagentRun(A):null,canPersistSubagentRun:!!n.upsertSubagentRun,getSession:l,upsertSubagentRunAndNotify:Uf,upsertApproval:i,appendRuntimeEvent:S,appendSubagentReceipt:Ln,appendWorkspaceDiffEvent:w,cleanupSubagentRun:Ja}),{runSubagentChildTurn:Xa}=Ef({requireSubagentDeps:Pt,sendTurn:Vo,getTurn:Tt,getPersistedRun:n.getPersistedSubagentRun?A=>n.getPersistedSubagentRun(A):A=>Pt().getRun(A),upsertPersistedRun:n.upsertPersistedSubagentRun?A=>n.upsertPersistedSubagentRun(A):A=>n.upsertSubagentRun(A),notifyRunStateChanged:r(A=>{to?.(A),A.childSessionId&&pe.wake(A.childSessionId)},"notifyRunStateChanged"),latestTurnForSession:r(A=>n.latestPersistedTurnForSession(A),"latestTurnForSession"),latestAssistantTextForSession:r(A=>n.latestAssistantTextForSession(A),"latestAssistantTextForSession"),appendSubagentReceipt:Ln,subagentRuntimeDerivedProgress:fg,subagentUsageAttribution:gg,subagentUsageTotalsForRun:hg,captureSubagentWorkspaceHandoff:ag,applySubagentPatch:qa,appendWorkspaceDiffEvent:w,uniqueSubagentRefs:qf,commitCompletion:r((A,Q)=>Me.commitSubagentCompletion(A,Q),"commitCompletion"),notifyParentOfSubagentCompletion:vg}),{archiveSubagentChildSession:Ig,subagentLifecycleActionNextStep:Rg}=Mf({getRun:r(A=>Pt().getRun(A),"getRun"),upsertRun:r(A=>Pt().upsertRun(A),"upsertRun"),getSession:l,updateSession:u,appendSubagentReceipt:Ln}),{cancelSubagentFromModelTool:xg,cleanupExpiredRetainedSubagentWorkspace:Tg,joinSubagentFromModelTool:Pg,followupSubagentFromModelTool:Cg,runSubagentLifecycleAction:_g,startSubagentFromModelTool:Ag,statusSubagentsFromModelTool:Eg}=Of({inbox:pe,requireSubagentDeps:Pt,loadAppPreferences:we,getSession:l,appendSubagentReceipt:Ln,subagentWorkspaceTargetKeyForSession:dg,subagentWorkspaceTargetKeyFromRun:cg,subagentChildTurnPermissions:mg,prepareSubagentWorkspaceIsolation:lg,runSubagentChildTurn:Xa,subagentToolResultFromRun:jf,subagentRoleLabel:Ff,interruptSessionTurn:xs,cleanupSubagentRun:Ja,queueSubagentFollowupMessage:wg,archiveSubagentChildSession:Ig,subagentLifecycleActionNextStep:Rg}),Qa=Qm({handlers:{startSubagent:Ag,statusSubagents:Eg,joinSubagent:Pg,cancelSubagent:xg,followupSubagent:Cg,sendSubagentMessage:bg,...ie?{manageSidebarFile:r((A,Q)=>ie({session:A.session,action:Q.action,path:Q.path}),"manageSidebarFile")}:{},...j?{runDatasetBuilder:r((A,Q,oe)=>j({session:A.session,turnId:A.turnId,callId:A.callId,signal:A.signal,provider:A.provider,model:A.model,action:Q,payload:oe}),"runDatasetBuilder")}:{}},subagentToolsAvailable:za,hostedToolFlags:rt,executeConnectedAppTool:J,htmlVisuals:te,browserToolExecutor:de,executeOpenPondCommand:f,executeWorkspaceTool:g,executeWebSearch:W,createScheduledWork:U,executeProfileAction:_,executeProjectAction:I,loadOpenPondProfileStateForRef:q,resolveCandidateProfile:e.resolveCandidateProfile,executeCandidateAgentCommand:e.executeCandidateAgentCommand,executeCandidateCommand:e.executeCandidateCommand,executeCandidateImage:e.executeCandidateImage}),Ya=Qu({resolveCwd:r(A=>T(A,{ensureOpenPond:!1}),"resolveCwd"),appendEvent:S});function Og(A,Q,oe,re,be={}){return be.candidateAuthoring?Qa(A,Q,oe,re,be):[...Qa(A,Q,oe,re,be),...ue,...be.trainingHarness?[]:Gu(),...xt,...be.trainingHarness?[]:[Ya],...!be.trainingHarness&&M?[ra(M)]:[],...e.harnessModelTools??[]].map(D=>({...D,enabled:r(ee=>(ee.session.systemKind!=="openpond.ponder"||ue.includes(D)||xt.includes(D))&&(D.enabled?.(ee)??!0),"enabled")}))}r(Og,"createNativeModelToolDefinitions");async function Vo(A,Q,oe,re,be){if(be&&(!Number.isSafeInteger(be.nativeTimeoutMs)||be.nativeTimeoutMs<1||be.nativeTimeoutMs>2147483647))throw new Error("Native execution timeout is invalid.");let D=Uo.beginSendTurn(),ee=oe??Df(),at=!1,O,Ct="failed";try{await Me.openTaskInboxTurn(A,ee,pe.ownerId),at=!0,O=setInterval(()=>{Me.renewTaskInboxTurn(A,ee,pe.ownerId).catch(jt=>{Qe.get(A)?.controller.abort(jt)})},2e4),O.unref();let lt=await Mg(A,Q,ee,re,be);return Ct=lt.status==="in_progress"?"failed":lt.status,lt}finally{O&&clearInterval(O),at&&await pe.settled(A,ee,Ct),D()}}r(Vo,"sendTurn");async function Mg(A,Q,oe,re,be){let D=Dt.parse(Q),ee=Ko(D);if(await Ke(A)??await Wo(A))throw new Error("A turn is already running for this chat.");let O=await l(A),Ct=await e.isRemoteAgentModel?.(D.modelRef?.providerId??O.modelRef?.providerId??O.provider,D.modelRef?.modelId??D.model??O.modelRef?.modelId??"")??!1;if(Ct&&(D.attachments?.length||D.mentionedConnectedApps?.length||D.mentionedAppIds?.length||D.createImproveRun||O.profileWorkflowBinding||O.profileComponentBinding||D.workflowInput!==void 0))throw new Error("This model accepts text messages only; attachments, connected apps, and local workflows are unavailable.");let lt=O.metadata?.source==="experiment-improvement"||O.metadata?.refinementCandidate!==void 0;if(lt&&(!re||O.experience!=="work"||O.profileWorkflowBinding||O.profileComponentBinding||D.createImproveRun||D.mentionedAppIds?.length||D.mentionedConnectedApps?.length||D.openPondActionCatalog?.length||D.attachments?.length||D.cwd))throw new Error("Candidate Work requires its private owner admission and isolated source context.");let jt=!!(D.modelRef||D.model),qe=!lt&&e.storageHome?await Ap(e.storageHome,O,D,Q):null;qe&&(ee.codexPermissionMode=qe.preferences.codexPermissionMode,ee.codexReasoningEffort=qe.preferences.codexReasoningEffort,ee.codexPermissionMode==="default"&&(ee.approvalPolicy="on-request",ee.sandbox==="danger-full-access"&&(ee.sandbox="workspace-write")));let Cs=!1;O={...O,experience:O.experience??rn};async function no(Se,wt){Cs||O.experience!=="work"||!v||(Cs=!0,O=await v({session:await l(A),turnId:Se,outcome:wt}))}r(no,"finalizeAttachedWorkSandbox");let _s=D.modelRef?.providerId??O.modelRef?.providerId??O.provider;if(e.executionHost==="embedded"&&(_s!=="openpond"||D.createImproveRun))throw new Error("Embedded Work requires the configured model adapter and native tool loop.");let Fg=(O.experience==="chat"||O.experience==="work")&&!O.systemKind&&M&&!["sandbox","sandbox_template","sandbox_app"].includes(O.workspaceKind??"");if(_s==="codex"&&!ze(O)&&!Fg)throw new Error("The Codex provider requires repository-aware Work or a local resource chat.");if(/^\/goal(?:\s|$)/i.test(D.prompt.trimStart())&&(_s!=="codex"||!ze(O)))throw new Error("/goal is only available in repository-aware Work with the Codex provider.");let en=Ct?null:O.currentProfile??null,gt=lt||!en||O.profileWorkflowBinding||O.profileComponentBinding?null:q?await q(en):N?await N():null,ce=!Ct&&!lt&&B?await B(O):null,Za=null;if(O.profileWorkflowBinding){let Se=ce?.workflow;if(!Se)throw new Error("Bound Profile workflow is unavailable for this turn.");let wt=jp({workflow:Se,value:D.workflowInput??(Se.invocation.kind==="instructions"?{}:void 0),prompt:D.prompt});ce.instructionContext=[ce.instructionContext,wt.instruction].join(`
|
|
135
|
+
`)}r(zk,"promptWithSteeringContext");function gj(e){let{attachmentRootDir:t,store:n,resolveCreateImproveTaskset:o,gradeCreateImproveTaskAttempt:s,upsertApproval:i,createSession:a,getSession:l,updateSession:u,completeTurn:c,failTurn:h,interruptTurn:p,defaultSessionCwd:y,findOpenPondApp:x,resolveSessionWorkspaceCwd:T,ensureCodexRuntime:m,appendWorkspaceDiffEvent:w,workspaceDiffBaseline:C,appendRuntimeEvent:S,processHarnessImprovementBoundary:R,executeWorkspaceTool:g,forkSandboxForSubagent:d,cleanupSandboxForSubagent:k,finalizeWorkTurn:v,workInputsForSession:b,executeOpenPondCommand:f,executeProfileAction:_,executeProjectAction:I,executeChatResourceAction:M,executeDatasetBuilderAction:j,loadOpenPondProfileState:N,loadOpenPondProfileStateForRef:q,readOpenPondProfileSkill:V,loadSelectedHarnessRuntime:B,ensureHarnessRunOverlay:z,loadOpenPondExtensionCatalog:E,readOpenPondExtensionSkill:F,executeProfileSkillCommand:$,executeWebSearch:W,createScheduledWork:U,executeConnectedAppTool:J,htmlVisuals:te,browserToolExecutor:de,manageSidebarFile:ie,listIntegrationConnections:me,loadPersonalizationSoul:fe,loadAppPreferences:we=r(async()=>Rl.parse({}),"loadAppPreferences"),loadProviderSettings:X,maybeCreateScaffoldForTurn:Ce,hostedSystemPrompt:ae,appendAssistantText:Fe,appendHostedContextUsage:Xe,streamLocalByokChatTurn:_e,streamOpenPondHostedChatTurn:ke=Kn,runLocalCreatePipelineChecks:Bo,planCreateImprove:Gt,turnFollowUpQueue:hn,subagentQueue:Le,notifySubagentRunStateChanged:to,maxHostedWorkspaceToolRounds:Xt,maxRepeatedInvalidToolRequests:Qt}=e,Me=e.inboxStore??n,Dn=Bm(e.storageHome??t),rt=ma(e.hostedToolFlags),Qe=new bs,pe=Nm({prepareInputAttachments:ap({storageHome:e.storageHome??t,attachmentRootDir:t}),store:Me,getSession:l,listSessions:r(()=>n.sessionShells(),"listSessions"),getTurn:r(A=>n.getTurn(A),"getTurn"),latestTurn:r(A=>n.latestTurnForSession(A),"latestTurn"),recoverInterruptedTurn:r(async(A,Q)=>{(await n.getTurn(Q))?.status==="in_progress"&&await p(await l(A),Q,"The local app server restarted before this turn finished. Pending inputs are preserved. Review completed tool activity, then resume this chat to continue.")},"recoverInterruptedTurn"),getSubagentRun:r(A=>n.getSubagentRun?n.getSubagentRun(A):Promise.resolve(null),"getSubagentRun"),getActiveTurn:r(A=>Qe.get(A),"getActiveTurn"),appendRuntimeEvent:S,startFollowup:r(async(A,Q,oe,re)=>{let be=await l(A),D=Dt.parse(Q);if(!be.subagentRunId){if(re.senderKind==="user")return Vo(A,D,oe,re.payload.remoteDevice?{beforeExecute:r(async jt=>{pi(re,jt)},"beforeExecute")}:void 0);let Ct=await n.latestTurnForSession(A),lt=re.payload.localPonderExecutionPermissions??Ct?.metadata.taskExecutionPermissions??{approvalPolicy:"on-request",sandbox:"read-only",codexPermissionMode:"default"};return Vo(A,{...D,...lt,...gn(re)||re.payload.taskReportingOnly===!0?{sandbox:"read-only",approvalPolicy:"never",codexPermissionMode:"default"}:{}},oe,re.senderKind==="ponder"?{beforeExecute:r(async jt=>{ac(re,jt),await Oa(an.parse(re.payload.ponderDesktop).operation,jt,n,Dn),pi(re,jt)},"beforeExecute")}:re.payload.localPonderHostedResult?{beforeExecute:r(async()=>{if(!e.localPonderHosted)throw new Error("local_ponder_hosted_unavailable");await e.localPonderHosted.assertCompletionScope(re.payload.localPonderHostedResult)},"beforeExecute")}:re.payload.localPonderControlRevision!==void 0?{beforeExecute:r(async()=>{await Me.assertLocalPonderInput?.(re)},"beforeExecute")}:void 0)}let ee=await Ga({session:be,request:D,requestedTurnPermissions:Ko(D)});if(!ee||ee.run.status==="cancelled")throw new Error("Child follow-up is unavailable.");let at={...ee.run,status:"queued",completedAt:null,error:null,report:null,metadata:{...ee.run.metadata,completionConsumedByParent:null}};await Pt().upsertRun(at),await Xa({run:at,role:ee.role,childSession:be,parentSession:await l(at.parentSessionId),parentTurnId:at.parentTurnId??oe,contextPack:typeof at.metadata.context=="string"?at.metadata.context:null,childTurnPermissions:ee.turnPermissions,initialPrompt:D.prompt,reservedTurnId:oe});let O=await n.getTurn(oe);if(!O)throw new Error("Child follow-up did not start.");return O},"startFollowup"),dispatchFollowup:r(async(A,Q)=>{let oe=await hn.enqueue({label:"Task inbox follow-up",metadata:{sessionId:A}},Q).done;if(oe.status==="failed")throw new Error(oe.error??"Task follow-up failed.")},"dispatchFollowup"),yieldWhileWaiting:r(A=>hn.yieldWhileWaiting(()=>Le?Le.yieldWhileWaiting(A):A()),"yieldWhileWaiting")}),xt=Km(pe,{input:r(A=>Me.getTaskInput(A),"input"),readSource:r(async(A,Q,oe,re)=>{if(await Oa(A,Q,n,Dn),!A.workflow?.source)throw new Error("The verified workflow source is not available yet.");return Dn.inspect(A.workflow.source,oe,re)},"readSource")}),ue=[...e.localPonderHosted?ep(e.localPonderHosted):[],...tp(n),...op({store:Me,inbox:pe,createSession:a,createReservedSession:e.createReservedSession,projects:e.localPonderProjects,settings:e.localPonderProviderSettings??X,getSession:l,sessions:r(()=>n.sessionShells(),"sessions"),transcript:r(async(A,Q)=>{if(!n.runtimeEventPageRows)throw new Error("local_ponder_history_unavailable");let oe=await n.runtimeEventPageRows({sessionId:A,afterSequence:0,beforeSequence:Q??Number.MAX_SAFE_INTEGER,limit:100});return{turn:await n.latestTurnForSession(A),latestAssistantText:await n.latestAssistantTextForSession(A),events:oe.entries.map(re=>re.event),nextBeforeSequence:oe.remainingMatchingEvents>oe.entries.length?oe.entries[0]?.sequence??null:null}},"transcript"),stop:r(A=>xs(A),"stop")})],Ee=Kp({listIntegrationConnections:me,appendRuntimeEvent:S}),Ae=vs({upsert:n.upsertModelUsageRecord?A=>n.upsertModelUsageRecord(A):null,appendRuntimeEvent:S});async function Ne(A){if(!(!R||!A.turn.harnessSnapshot||A.session.metadata?.standaloneExperiment!==void 0||A.session.metadata?.localProfileExperiment!==void 0||A.session.metadata?.profileEvaluationRun!==void 0))try{await R(A)}catch(Q){await S(L({sessionId:A.session.id,turnId:A.turn.id,name:"diagnostic",source:"server",appId:A.session.appId,status:"failed",output:Q instanceof Error?Q.message:String(Q),data:{phase:"harness_improvement_boundary"}})).catch(()=>{})}}r(Ne,"processHarnessImprovementBoundarySafely");async function Tt(A){return n.getTurn(A)}r(Tt,"getStoredTurn");function Yt(A){return os(rt,A)}r(Yt,"nativeToolsEnabledForProvider");function st(A){return de?.available({sessionId:A.id,conversationId:A.id})??!1}r(st,"browserControlAvailable");function wn(A){return Yt(A)&&rt.dynamicActionTools?"native_tool":Vt(rt,A)==="full_text_fallback"?"text_fallback":"none"}r(wn,"actionCatalogInstructionModeForProvider");async function it(A){await n.insertTurn(A)}r(it,"insertStoredTurn");async function Nt(A,Q){return n.updateTurn(A,Q)}r(Nt,"updateStoredTurn");let{activeInProgressTurn:Ke,findInProgressTurn:Wo,interruptActiveTurn:Rs,interruptedError:Bf,interruptSessionTurn:xs,throwIfInterrupted:Zt,turnWasInterrupted:Wf}=rf({activeTurns:Qe,getSession:l,getTurn:Tt,latestTurnForSession:r((A,Q)=>n.latestTurnForSession(A,Q),"latestTurnForSession"),interruptTurn:p}),Uo=af({activeTurns:Qe,interruptActiveTurn:Rs,jobRegistries:[],queues:[hn,...Le?[Le]:[]]}),zo=Nf({createSession:a,queue:Le,upsertRun:n.upsertSubagentRun?A=>n.upsertSubagentRun(A):void 0,getRun:n.getSubagentRun?A=>n.getSubagentRun(A):void 0,listRuns:n.listSubagentRuns?A=>n.listSubagentRuns(A):void 0,appendMessage:n.appendSubagentMessage?A=>n.appendSubagentMessage(A):void 0,listUsageRecords:n.listModelUsageRecords?A=>n.listModelUsageRecords(A):void 0,notifyRunStateChanged:r(A=>{to?.(A),A.childSessionId&&pe.wake(A.childSessionId)},"notifyRunStateChanged"),appendRuntimeEvent:S}),za=zo.available,Pt=zo.requireDependencies,Uf=zo.upsertRunAndNotify,Ln=zo.appendReceipt,Ts=nf(e),Ka=Ic(async()=>{let[{createCreateImproveRuntime:A},{createCreateImproveTurnHandler:Q}]=await Promise.all([import("./runtime-GN2H2R7L.js"),import("./send-turn-VQRLIHOE.js")]),oe=A({getSession:l,getTurn:Tt,updateTurn:Nt,getCreateImproveRun:r(re=>n.getCreateImproveRun(re),"getCreateImproveRun"),listCreateImproveRuns:r(re=>n.listCreateImproveRuns(re),"listCreateImproveRuns"),upsertCreateImproveRun:r(re=>n.upsertCreateImproveRun(re),"upsertCreateImproveRun"),mutateCreateImproveRun:r((re,be)=>n.mutateCreateImproveRun(re,be),"mutateCreateImproveRun"),getApproval:r(re=>n.getApproval(re),"getApproval"),upsertApproval:i,appendRuntimeEvent:S,ensureCodexRuntime:m,runLocalCreatePipelineChecks:Bo,planCreateImprove:Gt,turnFollowUpQueue:hn,streamLocalByokChatTurn:_e,streamOpenPondHostedChatTurn:ke,upsertModelUsageRecord:Ae,resolveTaskset:o,gradeTaskAttempt:s});return{...oe,handleCreateImproveTurn:Q({appendRuntimeEvent:S,completeTurn:c,planCreateImproveForTurn:oe.planCreateImproveForTurn,persistCreateImproveRun:oe.persistCreateImproveRun}),async close(){}}}),{applyCreateImproveActionPayload:zf,getCreateImproveRun:Kf,listCreateImproveRuns:Vf,persistCreateImprovePlanningFailure:Jf,resolveCreateImproveApproval:Gf,handleCreateImproveTurn:Xf}=Ka.methods(["applyCreateImproveActionPayload","getCreateImproveRun","listCreateImproveRuns","persistCreateImprovePlanningFailure","resolveCreateImproveApproval","handleCreateImproveTurn"]),Qf=of({appendRuntimeEvent:S,completeTurn:c}),{prepareHostedProviderRequest:Yf,closePonderHistory:Zf}=vm({ponderHistoryStore:n,sessionForPonderHistory:l,getPonderHistoryCredential:e.getPonderHistoryCredential,streamPonderHistorySummary:r(async function*(A){if(A.provider==="openpond"){let Q=await e.resolveSessionModelStream?.(A.session,A.turn)??ke;for await(let oe of Q({model:A.model,messages:A.messages,requestId:A.requestId,maxTokens:700,reasoningEffort:Oo({provider:A.provider,model:A.model,selected:void 0,settings:await(e.localPonderProviderSettings??X)?.()}),signal:A.signal}))oe.type==="text_delta"&&(yield{text:oe.text,raw:oe.raw}),oe.type==="usage"&&(yield{usage:oe.usage,raw:oe.raw}),oe.type==="finish"&&(yield{finishReason:oe.finishReason,raw:oe.raw})}else{if(!_e)throw new Error("ponder_history_provider_unavailable");for await(let Q of _e({providerId:A.provider,modelId:A.model,messages:A.messages,requestId:A.requestId,maxOutputTokens:700,expectedPonderHistoryCredential:A.expectedCredential,signal:A.signal??new AbortController().signal}))yield Q}},"streamPonderHistorySummary"),loadAppPreferences:we,appendRuntimeEvent:S,runtimeEventsForSession:r((A,Q)=>n.runtimeEventsForSession(A,Q),"runtimeEventsForSession"),streamOpenPondHostedChatTurn:ke,resolveSessionModelStream:e.resolveSessionModelStream,upsertModelUsageRecord:Ae,throwIfInterrupted:Zt,interruptedError:Bf}),{appendProfileSkillEvent:eg,executeNativeToolCalls:tg,explicitProfileSkillNames:ng,profileSkillBodyFromReadResult:og,readProfileSkillForModel:rg}=km({authorizeCandidateTool:e.authorizeCandidateTool,hasPendingSteering:r(async(A,Q)=>(await Me.pendingTaskInputs(A,Q)).some(oe=>oe.kind==="steer"),"hasPendingSteering"),maxRepeatedInvalidToolRequests:Qt,appendRuntimeEvent:S,throwIfInterrupted:Zt}),{loadProfileSkillRuntime:sg,preloadExplicitProfileSkills:ig,profileSkillInstructionModeForProvider:Ps}=Vm({loadProfileState:q?A=>q(A.currentProfile):N?()=>N():void 0,readProfileSkill:V,loadBuiltInSkills:e.loadBuiltInOpenPondSkills,readBuiltInSkill:e.readBuiltInOpenPondSkill,loadExtensionCatalog:E,readExtensionSkill:F,appendRuntimeEvent:S,nativeToolsEnabledForProvider:Yt,hostedToolFlags:rt,appendProfileSkillEvent:eg,explicitProfileSkillNames:ng,profileSkillBodyFromReadResult:og,throwIfInterrupted:Zt}),{runHostedToolLoop:Va}=Om({candidateAuthoringForTurn:e.candidateAuthoringForTurn,isolatedProfileEvaluationForTurn:e.isolatedProfileEvaluationForTurn,authorizeCandidateTool:e.authorizeCandidateTool,taskInbox:pe,inboxStore:Me,resolveModelTools:e.resolveModelTools,assertExecutionAllowed:r(A=>es(e.storageHome,A),"assertExecutionAllowed"),hostedToolFlags:rt,nativeToolsEnabledForProvider:Yt,createNativeModelToolDefinitions:Og,profileSkillInstructionModeForProvider:Ps,subagentToolsAvailable:za,runtimeEventsForSession:r((A,Q)=>n.runtimeEventsForSession(A,Q),"runtimeEventsForSession"),getSession:l,recordTurnToolCatalog:r(async({turnId:A,hash:Q,capabilities:oe})=>{let re=await Tt(A),be=re?(await n.runtimeEventsForSession(re.sessionId,{names:["session.compaction.completed"],limit:1e3,excludeReasoningDeltas:!0})).filter(ee=>ee.turnId===A).at(-1)??null:null,D=be?.data&&typeof be.data=="object"&&!Array.isArray(be.data)?be.data:null;await n.updateTurn(A,ee=>{let at=gd.parse({protocolVersion:kr,threadId:ee.sessionId,turnId:ee.id,harnessReleaseHash:ee.harnessSnapshot?.harnessRelease.contentHash??Tn({harnessRelease:null}),toolCatalogHash:Q,context:{stage:"tool_catalog_ready",provider:ee.modelRef?.providerId??null,model:ee.modelRef?.modelId??null,compaction:D?{eventId:be?.id??null,compactedThroughEventId:D.compactedThroughEventId??null,compactedThroughTurnId:D.compactedThroughTurnId??null,summaryHash:typeof D.summary=="string"?Tn(D.summary):null}:null},pendingInteraction:null,usage:{}});return{...ee,metadata:{...ee.metadata,toolCatalogHash:Q,toolCapabilities:oe,agentCheckpoint:at,agentCheckpointHash:hd(at)},harnessSnapshot:ee.harnessSnapshot?{...ee.harnessSnapshot,toolCatalogHash:Q}:ee.harnessSnapshot}})},"recordTurnToolCatalog"),getTaskset:n.getTaskset?A=>n.getTaskset(A):void 0,appendHostedContextUsage:Xe,maxHostedWorkspaceToolRounds:Xt,maxRepeatedInvalidToolRequests:Qt,appendRuntimeEvent:S,upsertModelUsageRecord:Ae,executeNativeToolCalls:tg,readProfileSkillForModel:rg,executeWorkspaceTool:g,appendAssistantText:Fe,prepareHostedProviderRequest:Yf,throwIfInterrupted:Zt}),{captureSubagentWorkspaceHandoff:ag,cleanupSubagentRun:Ja,prepareSubagentWorkspaceIsolation:lg,subagentWorkspaceTargetKeyForSession:dg,subagentWorkspaceTargetKeyFromRun:cg}=vf({attachmentRootDir:t,resolveSessionWorkspaceCwd:T,forkSandboxForSubagent:d,cleanupSandboxForSubagent:k,appendSubagentReceipt:Ln,requireSubagentPersistence:r(()=>({upsertRun:Pt().upsertRun}),"requireSubagentPersistence")}),{finalizeSubagentContinuationTurn:ug,markSubagentContinuationRunning:pg,prepareSubagentContinuationTurn:Ga,subagentChildTurnPermissions:mg,subagentRuntimeDerivedProgress:fg,subagentUsageAttribution:gg,subagentUsageTotalsForRun:hg,turnPermissionsFromSendTurnInput:Ko}=Cf({requireSubagentDeps:Pt,runtimeEventsForSession:n.persistedRuntimeEventsForSession?(A,Q)=>n.persistedRuntimeEventsForSession(A,Q):(A,Q)=>n.runtimeEventsForSession(A,Q),latestAssistantTextForSession:r(A=>n.latestAssistantTextForSession(A),"latestAssistantTextForSession"),loadAppPreferences:we,getTurn:Tt,getSession:l,appendSubagentReceipt:Ln}),{queueSubagentFollowupMessage:wg,sendSubagentMessageFromModelTool:bg}=_f({inbox:pe,requireSubagentDeps:Pt,appendRuntimeEvent:S}),{notifyParentOfSubagentCompletion:vg,recoverPendingCompletions:yg,close:kg}=Af({inbox:pe,store:Me,appendMessage:r(A=>Pt().appendMessage(A),"appendMessage"),getSession:l,appendRuntimeEvent:S}),{resolveSubagentPatchApplyApproval:Sg}=bf({getApproval:r(A=>n.getApproval(A),"getApproval"),getSubagentRun:n.getSubagentRun?A=>n.getSubagentRun(A):null,canPersistSubagentRun:!!n.upsertSubagentRun,getSession:l,upsertSubagentRunAndNotify:Uf,upsertApproval:i,appendRuntimeEvent:S,appendSubagentReceipt:Ln,appendWorkspaceDiffEvent:w,cleanupSubagentRun:Ja}),{runSubagentChildTurn:Xa}=Ef({requireSubagentDeps:Pt,sendTurn:Vo,getTurn:Tt,getPersistedRun:n.getPersistedSubagentRun?A=>n.getPersistedSubagentRun(A):A=>Pt().getRun(A),upsertPersistedRun:n.upsertPersistedSubagentRun?A=>n.upsertPersistedSubagentRun(A):A=>n.upsertSubagentRun(A),notifyRunStateChanged:r(A=>{to?.(A),A.childSessionId&&pe.wake(A.childSessionId)},"notifyRunStateChanged"),latestTurnForSession:r(A=>n.latestPersistedTurnForSession(A),"latestTurnForSession"),latestAssistantTextForSession:r(A=>n.latestAssistantTextForSession(A),"latestAssistantTextForSession"),appendSubagentReceipt:Ln,subagentRuntimeDerivedProgress:fg,subagentUsageAttribution:gg,subagentUsageTotalsForRun:hg,captureSubagentWorkspaceHandoff:ag,applySubagentPatch:qa,appendWorkspaceDiffEvent:w,uniqueSubagentRefs:qf,commitCompletion:r((A,Q)=>Me.commitSubagentCompletion(A,Q),"commitCompletion"),notifyParentOfSubagentCompletion:vg}),{archiveSubagentChildSession:Ig,subagentLifecycleActionNextStep:Rg}=Mf({getRun:r(A=>Pt().getRun(A),"getRun"),upsertRun:r(A=>Pt().upsertRun(A),"upsertRun"),getSession:l,updateSession:u,appendSubagentReceipt:Ln}),{cancelSubagentFromModelTool:xg,cleanupExpiredRetainedSubagentWorkspace:Tg,joinSubagentFromModelTool:Pg,followupSubagentFromModelTool:Cg,runSubagentLifecycleAction:_g,startSubagentFromModelTool:Ag,statusSubagentsFromModelTool:Eg}=Of({inbox:pe,requireSubagentDeps:Pt,loadAppPreferences:we,getSession:l,appendSubagentReceipt:Ln,subagentWorkspaceTargetKeyForSession:dg,subagentWorkspaceTargetKeyFromRun:cg,subagentChildTurnPermissions:mg,prepareSubagentWorkspaceIsolation:lg,runSubagentChildTurn:Xa,subagentToolResultFromRun:jf,subagentRoleLabel:Ff,interruptSessionTurn:xs,cleanupSubagentRun:Ja,queueSubagentFollowupMessage:wg,archiveSubagentChildSession:Ig,subagentLifecycleActionNextStep:Rg}),Qa=Qm({handlers:{startSubagent:Ag,statusSubagents:Eg,joinSubagent:Pg,cancelSubagent:xg,followupSubagent:Cg,sendSubagentMessage:bg,...ie?{manageSidebarFile:r((A,Q)=>ie({session:A.session,action:Q.action,path:Q.path}),"manageSidebarFile")}:{},...j?{runDatasetBuilder:r((A,Q,oe)=>j({session:A.session,turnId:A.turnId,callId:A.callId,signal:A.signal,provider:A.provider,model:A.model,action:Q,payload:oe}),"runDatasetBuilder")}:{}},subagentToolsAvailable:za,hostedToolFlags:rt,executeConnectedAppTool:J,htmlVisuals:te,browserToolExecutor:de,executeOpenPondCommand:f,executeWorkspaceTool:g,executeWebSearch:W,createScheduledWork:U,executeProfileAction:_,executeProjectAction:I,loadOpenPondProfileStateForRef:q,resolveCandidateProfile:e.resolveCandidateProfile,executeCandidateAgentCommand:e.executeCandidateAgentCommand,executeCandidateCommand:e.executeCandidateCommand,executeCandidateImage:e.executeCandidateImage}),Ya=Qu({resolveCwd:r(A=>T(A,{ensureOpenPond:!1}),"resolveCwd"),appendEvent:S});function Og(A,Q,oe,re,be={}){return be.candidateAuthoring?Qa(A,Q,oe,re,be):[...Qa(A,Q,oe,re,be),...ue,...be.trainingHarness?[]:Gu(),...xt,...be.trainingHarness?[]:[Ya],...!be.trainingHarness&&M?[ra(M)]:[],...e.harnessModelTools??[]].map(D=>({...D,enabled:r(ee=>(ee.session.systemKind!=="openpond.ponder"||ue.includes(D)||xt.includes(D))&&(D.enabled?.(ee)??!0),"enabled")}))}r(Og,"createNativeModelToolDefinitions");async function Vo(A,Q,oe,re,be){if(be&&(!Number.isSafeInteger(be.nativeTimeoutMs)||be.nativeTimeoutMs<1||be.nativeTimeoutMs>2147483647))throw new Error("Native execution timeout is invalid.");let D=Uo.beginSendTurn(),ee=oe??Df(),at=!1,O,Ct="failed";try{await Me.openTaskInboxTurn(A,ee,pe.ownerId),at=!0,O=setInterval(()=>{Me.renewTaskInboxTurn(A,ee,pe.ownerId).catch(jt=>{Qe.get(A)?.controller.abort(jt)})},2e4),O.unref();let lt=await Mg(A,Q,ee,re,be);return Ct=lt.status==="in_progress"?"failed":lt.status,lt}finally{O&&clearInterval(O),at&&await pe.settled(A,ee,Ct),D()}}r(Vo,"sendTurn");async function Mg(A,Q,oe,re,be){let D=Dt.parse(Q),ee=Ko(D);if(await Ke(A)??await Wo(A))throw new Error("A turn is already running for this chat.");let O=await l(A),Ct=await e.isRemoteAgentModel?.(D.modelRef?.providerId??O.modelRef?.providerId??O.provider,D.modelRef?.modelId??D.model??O.modelRef?.modelId??"")??!1;if(Ct&&(D.attachments?.length||D.mentionedConnectedApps?.length||D.mentionedAppIds?.length||D.createImproveRun||O.profileWorkflowBinding||O.profileComponentBinding||D.workflowInput!==void 0))throw new Error("This model accepts text messages only; attachments, connected apps, and local workflows are unavailable.");let lt=O.metadata?.source==="experiment-improvement"||O.metadata?.refinementCandidate!==void 0;if(lt&&(!re||O.experience!=="work"||O.profileWorkflowBinding||O.profileComponentBinding||D.createImproveRun||D.mentionedAppIds?.length||D.mentionedConnectedApps?.length||D.openPondActionCatalog?.length||D.attachments?.length||D.cwd))throw new Error("Candidate Work requires its private owner admission and isolated source context.");let jt=!!(D.modelRef||D.model),qe=!lt&&e.storageHome?await Ap(e.storageHome,O,D,Q):null;qe&&(ee.codexPermissionMode=qe.preferences.codexPermissionMode,ee.codexReasoningEffort=qe.preferences.codexReasoningEffort,ee.codexPermissionMode==="default"&&(ee.approvalPolicy="on-request",ee.sandbox==="danger-full-access"&&(ee.sandbox="workspace-write")));let Cs=!1;O={...O,experience:O.experience??rn};async function no(Se,wt){Cs||O.experience!=="work"||!v||(Cs=!0,O=await v({session:await l(A),turnId:Se,outcome:wt}))}r(no,"finalizeAttachedWorkSandbox");let _s=D.modelRef?.providerId??O.modelRef?.providerId??O.provider;if(e.executionHost==="embedded"&&(_s!=="openpond"||D.createImproveRun))throw new Error("Embedded Work requires the configured model adapter and native tool loop.");let Fg=(O.experience==="chat"||O.experience==="work")&&!O.systemKind&&M&&!["sandbox","sandbox_template","sandbox_app"].includes(O.workspaceKind??"");if(_s==="codex"&&!ze(O)&&!Fg)throw new Error("The Codex provider requires repository-aware Work or a local resource chat.");if(/^\/goal(?:\s|$)/i.test(D.prompt.trimStart())&&(_s!=="codex"||!ze(O)))throw new Error("/goal is only available in repository-aware Work with the Codex provider.");let en=Ct?null:O.currentProfile??null,gt=lt||!en||O.profileWorkflowBinding||O.profileComponentBinding?null:q?await q(en):N?await N():null,ce=!Ct&&!lt&&B?await B(O):null,Za=null;if(O.profileWorkflowBinding){let Se=ce?.workflow;if(!Se)throw new Error("Bound Profile workflow is unavailable for this turn.");let wt=jp({workflow:Se,value:D.workflowInput??(Se.invocation.kind==="instructions"?{}:void 0),prompt:D.prompt});ce.instructionContext=[ce.instructionContext,wt.instruction].join(`
|
|
136
136
|
|
|
137
137
|
`),D.prompt=wt.prompt,Za=wt.inputHash}else if(D.workflowInput!==void 0&&O.profileComponentBinding?.target.kind!=="agent_action")throw new Error("Workflow input requires a bound Profile workflow or Agent action session.");let Jo=ce&&z?await z({runId:O.id,workspace:ce.workspace,harnessRelease:{id:ce.release.harnessRelease.id,contentHash:ce.release.harnessRelease.contentHash},admittedAt:Y()}):null,oo=lt?null:await Ga({session:O,request:D,requestedTurnPermissions:ee});oo&&(ee=oo.turnPermissions);let Go=D.modelRef?.providerId??O.modelRef?.providerId??O.provider,el=D.modelRef?.modelId??D.model??O.modelRef?.modelId??null,As=qe?.preferences??await we(),Es=lt?null:cf(O,As),Ft=el?{providerId:Go,modelId:el}:D.modelRef??O.modelRef??null,tl=D.createImproveRun?Hf(D.createImproveRun):null,qt=$f(D.prompt)??tl;if(qt&&!Zc(O))throw new Error("Agent and Skill authoring are available in repository-aware Work.");let bn=tl?null:D.createImproveRun,nl=!Ct&&!re&&!qt&&Oi(O.experience)&&$?await $({prompt:D.prompt,profileRef:en}):null,Os=await n.runtimeEventsForSession(A,{excludeReasoningDeltas:!0}),Bn=Mp(D.metadata?.userQuestionResolution,Os),qg=Y(),ol=D.usageAttribution??oo?.usageAttribution??null,rl={...D.metadata?D.metadata:{},...O.profileWorkflowBinding?{profileWorkflowBinding:O.profileWorkflowBinding,profileWorkflowInputHash:Za}:{},...O.profileComponentBinding?{profileComponentBinding:O.profileComponentBinding}:{},taskExecutionPermissions:{...ee},...Es?{subagentDelegation:Es}:{},...ol?{usageAttribution:ol}:{},...bn?{createImproveRun:bn}:{},...qt?{authoringIntent:qt.intent,selectedProfileRef:en}:{}},K={id:oe,sessionId:A,providerTurnId:null,modelRef:Ft,prompt:D.prompt,startedAt:qg,completedAt:null,status:"in_progress",error:null,metadata:rl,createImproveRun:bn??null,profileSnapshot:(O.profileWorkflowBinding||O.profileComponentBinding)&&en?{ref:en,revision:(O.profileWorkflowBinding??O.profileComponentBinding).sourceRevision,sourceHash:(O.profileWorkflowBinding??O.profileComponentBinding).harnessRelease.contentHash}:en&>&>.mode!=="none"&&!gt.error?{ref:en,revision:gt.git?.head??null,sourceHash:Wk("sha256").update(JSON.stringify({profile:gt.activeProfile,revision:gt.git?.head??null,agents:gt.agents,skills:gt.skills.map(Se=>[Se.name,Se.sourceHash]),actions:gt.actionCatalog.map(Se=>Se.id)})).digest("hex")}:null,harnessSnapshot:ce?{schemaVersion:"openpond.harnessTurnSnapshot.v1",workspaceId:ce.workspace.id,workspaceRevision:ce.workspace.revision,sourceRevision:ce.workspace.sourceRevision,channelName:ce.workspace.currentChannel.name,channelRevision:ce.workspace.currentChannel.revision,harnessRelease:{id:ce.release.harnessRelease.id,contentHash:ce.release.harnessRelease.contentHash},overlay:Jo?{id:Jo.id,revision:Jo.revision,contentHash:Jo.contentHash}:null}:null};qe&&e.storageHome&&(Ep(e.storageHome,K.id,qe),K.metadata={...K.metadata,configuration:{effectiveRevision:qe.snapshot.effectiveRevision,sources:qe.snapshot.sources,instructionSources:qe.instructions.sources,diagnostics:qe.snapshot.diagnostics}}),await it(K),await Tp({session:O,turn:K,admission:re,failTurn:h});let xe=await e.isolatedProfileEvaluationForTurn?.(O,K)??!1,Te=await e.candidateAuthoringForTurn?.(O.id,K.id)??!1;if(lt&&!Te)throw await h(O,K.id,"The candidate Work owner did not admit this stored turn."),new Error("Candidate Work has no trusted authoring authority.");let sl=Te?O.cwd:(qt&>?.mode==="local"?gt.repoPath:null)??D.cwd??await T(O,{ensureOpenPond:!1})??O.cwd??(O.appId||Go==="codex"?y(O.appId):null);O=await u(A,{experience:O.experience,provider:Go,modelRef:jt?Ft:O.modelRef,status:"active",title:O.title==="New chat"?D.prompt.slice(0,64):O.title,cwd:sl});let $e=new AbortController,Ve={session:O,turn:K,controller:$e,...sf()};Uo.registerActiveTurn(A,Ve);let $g=Op(e.storageHome,K.id,qe?.snapshot.projectRoot??null,Se=>{Ve.interruptionReason=Se,$e.abort(),Ve.codexRuntime&&Ve.codexTurnId&&Ve.codexRuntime.client.interruptTurn({threadId:Ve.codexRuntime.threadId,turnId:Ve.codexTurnId}).catch(()=>{})});try{O.experience!=="chat"&&await pe.announcePresence(A,K.id).catch(async ne=>{await S(L({sessionId:A,turnId:K.id,name:"diagnostic",source:"server",status:"failed",output:`Peer presence notice unavailable: ${String(ne)}`}))}),await pg({context:oo,childTurnId:K.id});let Se=await Ir({storageHome:e.storageHome??t,attachmentRootDir:t,sessionId:A,turnId:K.id,attachments:D.attachments}),wt=O.experience==="work"?[...b?await b(O):[],...Se]:void 0,ro=xr(xe?Se.map(ne=>({...ne,localPath:`/workspace/work/inputs/${Uk.basename(ne.name)}`})):Se),Ye=Jn(zk(Np(D.prompt,Bn),D.metadata),ro),Re=typeof D.metadata?.taskInputId=="string"?await Me.getTaskInput(D.metadata.taskInputId):null;Ye+=Wm(Re),Re?.payload.taskReportingOnly===!0&&(Ye+=`
|
|
138
138
|
|
|
@@ -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-
|
|
2
|
+
import{a as Me,b as Be}from"./chunk-MHSSPMLB.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,3 +1,3 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
var e="127.0.0.1";var t="0.2.
|
|
2
|
+
var e="127.0.0.1";var t="0.2.66",n=["You are OpenPond Chat. Respond in the user's language. If the user's latest message is language-neutral, ambiguous, or only a short test, respond in English. Be concise and directly answer the latest request. Do not use emojis. Use Markdown when it improves scanability.","If you emit reasoning or thinking content, keep it sparse and user-readable: at most one short sentence for major progress, decisions, or blockers. Omit reasoning for routine searches, reads, tool calls, and obvious next steps. Do not restate the user request, narrate every action, or include code blocks, code excerpts, diffs, raw tool payloads, or markdown examples in reasoning. Put necessary code or exact snippets only in the final assistant answer.","When the user asks to show or preview an image that is available as a workspace path or signed image URL, use Markdown image syntax like  instead of a bare path or raw HTML.","Final responses:","- After substantial work, including research, analysis, document creation, and coding, finish with a concise, self-contained wrap-up. The user should understand the outcome without reading progress updates or tool output.","- Lead with the result and summarize the meaningful changes or findings. Link relevant deliverables and supporting sources when available, using links the user can open.","- Report what was actually checked and what the evidence establishes when verification matters. Distinguish completed work from anything unfinished, unverified, or still running; never imply that starting an operation confirms its success.","- If genuinely blocked, state what was completed, the blocker, and the specific input or action needed to continue. Continue authorized work until complete or genuinely blocked before giving the wrap-up.","- For code changes, explain what changed and why, reference important files when useful, and report relevant checks and their results. Use Changed Files or Verification sections only when they make the answer easier to read.","- Match the length and structure to the task and respect the user's requested output format. Simple questions and small actions need a direct answer, without a separate recap or fixed headings. Avoid repeating the work log or adding generic next steps.","Do not mention raw tool JSON, internal repo paths, or origin/remote URLs unless the user explicitly asks for them or they are necessary to explain a git/deploy failure."].join(`
|
|
3
3
|
`);export{e as a,t as b,n as c};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{a as D,b as J,c as q}from"./chunk-Q3WXB465.js";import{a as Y}from"./chunk-
|
|
2
|
+
import{a as D,b as J,c as q}from"./chunk-Q3WXB465.js";import{a as Y}from"./chunk-WOYBWRRV.js";import{a as L}from"./chunk-FEAKTSRS.js";import{na as F}from"./chunk-FCC24XUI.js";import{b as W}from"./chunk-L3KS6MOV.js";import{X as z,x as C}from"./chunk-ZY32SZ2P.js";import{m as N,n as j}from"./chunk-RCT3O3HQ.js";import{A as x}from"./chunk-X2J2P5ZT.js";import{a as i}from"./chunk-FTQLQJQV.js";import{createHash as se}from"node:crypto";function U(a){let d=a.replace(/^\/workspace\/outputs\//,"").replace(/^\/workspace\/work\/outputs\//,"").replace(/^outputs\//,"");if(!d||d.startsWith("/")||d.includes("\0")||d.split(/[\\/]/).some(g=>!g||g==="."||g===".."))throw new Error("Select one file inside this case's writable outputs.");return d}i(U,"confinedProfileOutputPath");var K=i(a=>`'${a.replaceAll("'","'\\''")}'`,"quote");async function V(a){let d=U(a.path),g="const f=require('fs'),p=require('path'),c=require('crypto'),a=JSON.parse(process.argv[1]),r=f.realpathSync('/workspace/work/outputs'),q=f.realpathSync(p.join(r,a.path));if(!q.startsWith(r+'/'))throw Error('Output path escapes the case');const s=f.statSync(q);if(!s.isFile()||s.size>10000000)throw Error('Output exceeds its bound');if(a.offset===undefined){const b=f.readFileSync(q);process.stdout.write(JSON.stringify({size:b.length,hash:c.createHash('sha256').update(b).digest('hex')}))}else{const h=f.openSync(q,'r'),b=Buffer.alloc(Math.min(524288,s.size-a.offset));try{const n=f.readSync(h,b,0,b.length,a.offset);process.stdout.write(b.subarray(0,n).toString('base64'))}finally{f.closeSync(h)}}";async function w(E){let y=await a.command(`/runtime/node -e ${K(g)} ${K(JSON.stringify({path:d,...E!==void 0?{offset:E}:{}}))}`);if(y.code!==0)throw new Error("The confined output could not be read.");return y.stdout}i(w,"read");let b=x.object({size:x.number().int().min(1).max(F),hash:x.string().regex(/^[a-f0-9]{64}$/)}).strict().parse(JSON.parse(await w())),P=[];for(let E=0;E<b.size;E+=524288){let y=await w(E);if(!/^[A-Za-z0-9+/]*={0,2}$/.test(y)||y.length>7e5)throw new Error("Output chunk exceeded its boundary.");let O=Buffer.from(y,"base64");if(O.length!==Math.min(524288,b.size-E))throw new Error("The output changed during readback.");P.push(O)}let R=Buffer.concat(P),k=se("sha256").update(R).digest("hex"),T=x.object({size:x.number(),hash:x.string()}).strict().parse(JSON.parse(await w()));if(k!==b.hash||T.hash!==k||T.size!==R.length)throw new Error("The output changed before immutable readback.");return{bytes:R,title:d.split("/").at(-1)}}i(V,"readConfinedProfileOutput");import l from"node:path";import{promises as m}from"node:fs";import M from"node:path";function X(a,d,g,w){let b=i(()=>new Error("This source file is outside the public policy closure."),"denied"),P;if(a==="context_read"){if(typeof d.path!="string")throw b();P=d.path}else{let R=typeof d.name=="string"?w.get(d.name.trim()):void 0;if(!R||!Object.hasOwn(g,R))throw b();if(d.path===void 0)return R;let k=d.path;if(typeof k!="string"||!k||k.includes("\\")||k.includes("\0")||M.posix.isAbsolute(k)||M.win32.isAbsolute(k)||k.split("/").includes(".."))throw b();P=M.posix.join(M.posix.dirname(R),k)}if(!Object.hasOwn(g,P))throw b();return P}i(X,"resolveProfilePolicySourcePath");var Z=String.raw`
|
|
3
3
|
const fs=require('node:fs'),p=require('node:path');
|
|
4
4
|
const a=JSON.parse(fs.readFileSync(0,'utf8'));
|
|
5
5
|
const roots={work:'outputs',inputs:'inputs',harness:'harness'};
|